设为首页 加入收藏

TOP

some settings for spacemacs golang
2018-10-30 14:08:46 】 浏览:47
Tags:some settings for spacemacs golang

spacemacs 中的 golang配置

spacemacs 中的 golang layer 已经有很多默认的配置了, 但是都是针对在 GOPATH 下的配置.
如果你的项目不再默认 的 GOPATH 下, 每次都把自己的项目加入到 GOPATH 也很麻烦, 所以我构造了一些函数, 可以动态的配置 GOPATH

配置

GOPATH 相关配置

  (setq default-gopath (getenv "GOPATH"))
  (setq current-gopath "")

  (defun set-gopath (relative-path)
    (interactive
     (list (read-string "relative path: " "." nil nil nil)))
    (setq current-gopath (file-truename relative-path))
    (setenv "GOPATH" (concat current-gopath  ":" (getenv "GOPATH"))))

  (defun get-gopath ()
    (interactive)
    (message (getenv "GOPATH")))

  (defun reset-gopath ()
    (interactive)
    (setenv "GOPATH" default-gopath)
    (setq current-gopath ""))

golang 编译配置

  (setq default-go-package "")

  (defun go-install (&optional pkg)
    (interactive
     (list (read-string (format "Package Name[%s]: " default-go-package) nil nil "")))

    (if (not (string= pkg ""))
        (setq default-go-package pkg))

    (projectile-with-default-dir current-gopath
      (projectile-run-compilation (concat "export GOPATH=" current-gopath " && " "go install" " " default-go-package))))

  (spacemacs/set-leader-keys-for-major-mode 'go-mode
    "gi" 'go-install)

使用方法

打开到项目文件后, 通过 set-gopath 动态当前项目的 GOPATH
切换项目时, 可以先通过 reset-gopath 恢复默认的 GOPATH, 然后在 set-gopath 设置新的 GOPATH

设置好 GOPATH 之后, 就可以通过 go-install 来编译工程了(有对应的快捷键 gi)
第一次编译时, 需要输入packege名称, 就是对应 src 目录下的想要编译的文件夹名称.


编程开发网
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Go基础系列:函数(2)——回调函数.. 下一篇Go基础系列:函数(1)

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

array(4) { ["type"]=> int(8) ["message"]=> string(24) "Undefined variable: jobs" ["file"]=> string(32) "/mnt/wp/cppentry/do/bencandy.php" ["line"]=> int(214) }