初学Go必备的vscode插件及最常用快捷键和代码自动补全

 更新时间:2023年07月07日 10:21:32   作者:Chris liu  
这篇文章主要给大家介绍了关于初学vscode写Go必备的vscode插件及最常用快捷键和代码自动补全的相关资料,由于vscode是开源免费的,而且开发支持vscode的插件相对比较容易,更新速度也很快,需要的朋友可以参考下

初学vscode写go的必会操作和常见编译错误

写在前面:

go 1.18和1.19已经不需要手动配置环境变量了,安装后即自动配置。vscode安装教程和go语言环境配置网上相关教程文档非常多,非常简单!

1. vscode必备插件

1.Go、Code Runner

不解释,运行必备

2.Markdown All in One、Markdown Preview Enhanced、Paste Image

为进行Markdown文档编写提供很多快捷键和自动补全功能,使vscode可以完全代替Typora(学生党拒绝付费!且不用切换app,写代码和文档都可以在vscode)

边写边看到Markdown渲染之后的样子,在 Preview 界面按住鼠标右键可以打开功能栏,选择Open in Browser可以将文件在浏览器打开,还可以选择生成HTML或者PDF等

在Markdown中快捷插入图片,复制图片后在文档中 ctrl + alt + v 粘贴后图片自动添加到文件夹目录下;
也可以将图片手动添加到文件夹,将图片拖到需要插入图片的位置同时按 shift;

也可以直接输入 ![]() 后括号内会自动出现所含图片名称,上下选择即可

3. vscode-icons

不同的文件展示不同的图标,方便快速识别文件类型,非常好用!效果如下图:

2. vscode最常用快捷键

  • 行注释 ctrl + /
  • 块注释 shift + alt + a (按习惯可修改为 ctrl + shift + /)
  • 删除行 直接 ctrl + x 和剪切一样且不用选中整行(正常为 ctrl + shift + k)
  • 向下向上复制行 shift + alt + up/down
  • 多行批量缩进
    ctrl + ] 或 tab //向右缩进
    ctrl + [ 或 shift + tab //向左缩进
  • 向上/向下移动行(也可理解为交换该行与上/下一行) alt+ up/down
  • 查找、替换 ctrl + f / ctrl + h
  • 移动到行首/尾 home / end

3. vscode快速生成golang代码片段

pkgm:生成main包+main主函数

package main
func main() {
} 

ff:格式化输出

fmt.Printf("", var)

fp:Println换行输出

fmt.Println("")

a.Print!(输入a.p第一个就是,直接回车即可):格式化输出变量a:

a := 1
fmt.Printf("a: %v\n", a)

for:for循环

for i := 0; i < count; i++ {
}

forr:for range

for _, v := range v {
}

tys:快捷构建结构体

type name struct {
}

4. 常见编译错误

1. expected 'package', found 'EOF'

  • 运行文件未保存, ctrl + s 即可
  • 项目文件存在空文件,将空文件移除,保存即可(常见由于多个main报错后将整个文档注释)
  • 忘记在文件的首行写package包会报expected 'package', found 'import'

2. main redeclared in this block(不影响运行)

同一个目录下面不能有多个 main,调整或者创建多个文件夹分别放入对应的文件下执行即可

3. *expected ';', found 'EOF'(不影响运行)

  1. 这种错误是 gopls 自身的 bug,好久了,一直没有解决,所以直接重新加载 vscode,然后就正常了
    ‘EOF’`(不影响运行)
  2. 这种错误是 gopls 自身的 bug,好久了,一直没有解决,所以直接重新加载 vscode,然后就正常了
  3. 打开go项目时,重新 Install/Update gopls 这样在整个项目过程中,就不会出现只要一新建go文件就报上面的错误了。但是重新打开还是会出现,这个问题一直是官方gopls的问题

总结

到此这篇关于初学Go必备的vscode插件及最常用快捷键和代码自动补全的文章就介绍到这了,更多相关初学go必会操作内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详解Go语言中make和new的区别

    详解Go语言中make和new的区别

    Go语言中,有两个比较雷同的内置函数,分别是new和make方法,那他们有什么区别呢?本文将通过一些示例为大家详细介绍一下,感兴趣的可以了解一下
    2023-02-02
  • Go语言Grpc Stream的实现

    Go语言Grpc Stream的实现

    本文主要介绍了Go语言Grpc Stream的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • Go语言开发快速学习CGO编程

    Go语言开发快速学习CGO编程

    这篇文章主要为大家介绍了Go语言开发之快速学习CGO编程,看了本文你就会发现CGO编程其实没有想象的那么难,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • Go语言LeetCode题解682棒球比赛

    Go语言LeetCode题解682棒球比赛

    这篇文章主要为大家介绍了Go语言LeetCode题解682棒球比赛示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • go install/build生成的文件命名和路径操作

    go install/build生成的文件命名和路径操作

    这篇文章主要介绍了go install/build生成的文件命名和路径操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • Golang中基于HTTP协议的网络服务

    Golang中基于HTTP协议的网络服务

    HTTP协议是基于TCP/IP协议栈的,并且它也是一个面向普通文本的协议。这篇文章主要详细介绍了Golang中基于HTTP协议的网络服务,感兴趣的小伙伴可以借鉴一下
    2023-04-04
  • Go语言实现基于websocket浏览器通知功能

    Go语言实现基于websocket浏览器通知功能

    这篇文章主要介绍了Go语言实现基于websocket浏览器通知功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • golang json性能分析详解

    golang json性能分析详解

    json格式可以算我们日常最常用的序列化格式之一了,Go语言作为一个由Google开发,号称互联网的C语言的语言,自然也对JSON格式支持很好。下面这篇文章主要给大家详细分析介绍了golang json性能的相关资料,需要的朋友可以参考下。
    2018-02-02
  • 解决golang在import自己的包报错的问题

    解决golang在import自己的包报错的问题

    这篇文章主要介绍了解决golang在import自己的包报错的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • 如何有效控制Go线程数实例探究

    如何有效控制Go线程数实例探究

    这篇文章主要为大家介绍了如何有效控制 Go 线程数的问题探究,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01

最新评论