zoukankan      html  css  js  c++  java
  • 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 目录下的想要编译的文件夹名称.

  • 相关阅读:
    许可管理工具
    浅谈MapControl控件和PageLayoutControl控件
    通过Bresenham算法实现完成矢量线性多边形向栅格数据的转化
    四叉树算法原理与实现
    OC系列foundation Kit基础-NSNumber
    OC系列foundation Kit基础-NSdictionary
    OC系列foundation Kit基础-NSMutableArray
    OC系列foundation Kit基础-NSArray
    OC系列foundation Kit基础-NSMutableString
    OC系列foundation Kit基础-NSString
  • 原文地址:https://www.cnblogs.com/wang_yb/p/9876308.html
Copyright © 2011-2022 走看看