热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

使用sublime模板加快编码效率

这是使用模板系列的最后一篇了,也是最实用的方法。前面提到的,插入文件的方法,适合计算机水平一般的初学者;而用TCL脚本的&#

这是使用模板系列的最后一篇了,也是最实用的方法。

前面提到的,插入文件的方法,适合计算机水平一般的初学者;而用TCL脚本的,则适合喜欢自定义各种奇特功能的专业人士。

那么,本次介绍的配置编辑器的方法,就更适合绝大多数码农了。

1、安装Sublime Text 2。

Sublime Text 3是收费的,也可以破解,这里以Sublime Text 2为例。

在官网http://www.sublimetext.com/上面可以下载到这个编辑器,安装过程就不说了,你可以一直试用,也可以破解它(自己百度吧)。

2、下载插件。

因为Sublime还不支持verilog,所以得在github上面下载插件(VHDL也有插件,可以自行搜索)。

https://github.com/search?utf8=%E2%9C%93&q=verilog+sublime

要注册个账号才可以下载的。

其中要下载三个插件,如下图所示。

点击下图所示,就可以下载了,是个ZIP文件。

然后全部解压,把里面的文件(如下图所示),全部放到C:\Users\lenovo\AppData\Roaming\Sublime Text 2\Packages\User里面。

3、enjoy yourself。

现在打开Sublime。在View->syntax下可以看到

好了,现在用Sublime打开一个verilog文件,就能看到语法高亮了,代码提示功能也是非常强的。

除此之外,它还能自动生成模板。

如:always,if,else,module,case,for甚至连状态机都可以自动生成。

生成的模板,还能用TAB键,自动跳转,非常方便。

如果你不喜欢这些插件生成的模板,还可以修改它。

4、Sublime的快捷键。

ctrl+/,注释和取消注释。

ctrl+D,向下选词。

ctrl+J,合并行。

ctrl+F,查找。

ctrl+U,软撤消。

ctrl+L,选择行。

其它的快捷键,可以自己百度,也可以在Sublime上面找到。

5、自动对齐代码。(注:X86版才有 Code Alignment ,X64版是Alignment不能用Ctrl + =实现输入任意字符或字母匹配)

这个功能也要安装插件。

首先要安装Package Control。

在Sublime,用快捷键Ctrl+`(反引号),打开控制台。(如果控制台的快捷键冲突了,输入快捷键会没反应)

也可以在View下面打开。

然后把官网https://packagecontrol.io/installation#st2,先点击红色箭头所指的标签,再把红色方框里面的代码copy到控制台,回车。

重新启动Sublime,就可以在Preference下面看到Package Control了。

进入Package Control,点击Install Package,然后搜索code alignment以安装插件。

重新启动Sublime,就有对齐代码的功能了。

下面示范一下,首先有下面一段代码。

用Ctrl+L选择这几行,然后点Ctrl+=,左下角会出现如下提示。

然后输入:,即以:为基准对齐代码,效果如下:

多余的空格,可以使用块选择删掉。

更详细的用法,可以在http://www.codealignment.com/ForSublimeText.html上面看到。

6、自动生成文件头注释。

用快捷键Shift+F9,可以生成文件头注释。

每次保存文件时,红色箭头所指的日期都会跟着改变,这样总能知道最后一次修改的时间。

此外,你还能配置其它参数,如:Author,Company,Email等。点击下图所示以配置参数。

{
    "Author":"LeaderHuang",
    "Company":"",
    "Email":""
}
这样就能在文件头注释增加Author了。

如果你想添加其它注释,可以修改Verilog Automatic.py文件,在第339行附近。

7、修改模板。

如果你觉得自动生成的模板不符合自己的编码习惯,还可以修改它。

用Sublime打开,刚才插件里面的always.tmSnippet。修改成如下示例。

其中,$1,$2这些,是生成模板之后,点TAB键,会按照由小到大的顺序自动跳转的地方。

而{1:negedge}意思就是点第一次TAB键时,会跳到这里,同时选择negedge。

也有些文件写成${1}其实是跟$1一样的,只是推荐写成前者。

上图中,出现两次$2,意思是点第二次TAB键时,同时跳到这两个地方,也就能同时修改这两个地方,如下图所示。

修改这些Snippet文件时,只要在Sublime上面保存就可以直接生效,不需要重新启动Sublime的。

此外,Snippet不一定只用来补全代码,还能当成help(帮助文档)来使用。如下图所示,列出系统函数。

8、支持中文。

刚装好的sublime是不支持中文的,需要安装插件。在Preference下面打开Package Control。

点Install Package,然后,等一会,在弹出的窗口中输入gbk,安装第一个插件,GBK Encoding Support,重新打开Sublime就能正常显示中文了。

9、块操作。

Shift+鼠标右键或者鼠标中键,可以选择块。选择了某块之后,可以点ctrl+鼠标中键,添加块。

10、增加quartus编译系统。

新建一个qiiCompile.sublime-build文件,注意后缀名,不能搞错。

然后用sublime打开它,添加以下内容。


      "cmd": ["D:/altera/13.0sp1/quartus/bin64/quartus_map.exe", "--read_settings_files=on", "--write_settings_files=off",
      "${file_path}/${file_name}", "-c", "${file_path}/${file_name}"],
      "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
      "selector": "source.qpf, source.QPF"
}

其中D:/altera/13.0sp1/quartus/bin64/quartus_map.exe,是我安装的quartus目录下的编译工具,根据自己的quartus安装目录进行修改就可以了,其它不变。

保存在程序包里面,也就是Sublime Text 2\Packages\User,就可以在tools->编译系统下,找到qiiCompile了。

在编译之前,还是需要使用quartus新建工程的,建好之后,可以关闭。

然后在sublime下,新建顶层的.v文件,每次编译都在顶层文件下,输出ctrl + B即可。

注意:顶层文件名必须跟工程名相同,否则会编译出很多工程。

此外,若要使用此编译方法,最好全部使用.v文件,而不用原理图。而且编译之后,不能双击错误定位到.v,而只能由提示的行号,自己定位。

编译效果如下:

11、增加ISE编译系统。

具体步骤跟上面一样,但是文件内容不同。

iseCompile.sublime-build文件内容如下。


      "cmd": ["C:/Xilinx/14.7/ISE_DS/ISE/bin/nt64/xst.exe", "-intstyle", "ise", "-ifn",
      "${file_path}/${file_base_name}.xst", "-ofn", "${file_path}/${file_base_name}.stx"],
      "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
      "selector": "source.xst, source.XST"
}

此外,还需要在ISE编译过一次之后,生成了.xst文件,才能用sublime编译。

12、利用编译系统做其它事情。

上面所说的编译系统,其实就是点ctrl+B,调用某个命令而已。这个命令不一定是编译用的。

那么这些命令从哪里来?

细心的读者会发现,使用quartus编译的时候,有提示。

上面command一行,就是前面所调用命令了。如果你会调用modelsim的编译命令,也一样能用ctrl+B调用它。

13、添加全文件补全功能。

如上图,添加一个all autocomplete插件,让代码补全功能从所有打开的文件里去匹配,而不是只在当前文件里匹配。

14、让单引号不再自动补全。

sublime自带的单引号补全,让我们在写1'b1的时候,带来麻烦,所以要取消此功能。

进入默认的键绑定,把以下内容注释掉。

15、增加ctags的导航功能。

先在sublime下,安装好ctags插件。

下载ctags.exe,网址:http://prdownloads.sourceforge.net/ctags/ctags58.zip

把这个ctags58.zip解压在Sublime的安装目录下,我这里是D:\Sublime Text 2\ctags58

请注意,ctags.exe的目录,不能搞错

此外,sublime需要使用ctags插件来调用ctags.exe,而程序包里面是ctags插件,上面的网址下载的是ctags.exe,这是两个不同的东西。

我这里是D:\Sublime Text 2\ctags58\ctags.exe

然后在sublime下,Preferences->浏览程序包,进入ctags目录,打开CTags.sublime-settings

把command一行,修改成如下图所示。

然后,参照上面的qii编译系统一例,生成一个ctags编译系统,ctags.sublime-build文件内容如下:

{
    "cmd": ["D:\\Sublime Text 2\\ctags58\\ctags.exe" ,"-R", "-f" ,"$file_path/.tags"],
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "selector": "source.v, source.V, source.VT, source.vt"
}

在你的.v文件,使用ctags编译系统,ctrl+B,这样在你的.v文件的目录下,会生成.tags文件。

接下来,在你的.v文件下,就可以使用Navigate to Defination。

这样,可以导航到该变量的定义处。

16、自动生成例化文件。

这个功能需要两个插件,ctags和Verilog Automatic。

其中Verilog Automatic,就是能够一键生成文件注释头的插件,此外还有个autoinst的功能。

先打开你的.v文件,使用ctags编译系统,ctrl+B,这样在你的.v文件的目录下,会生成.tags文件。

在module内部输入/*autoinst*/

然后把鼠标的光标移动到BIN2BCD的任一字符,输入Shift+F7,就生成如下图所示。

其中,你可以写个snippet,生成补全/*autoinst*/。

17、修改大小写快捷键。

大小切换也比较常用,但是ctrl+K ctrk+U,确实比较麻烦,所以也改一下。

打开,Preferences->键绑定-默认,修改成如下图所示。

然后,输入ctrl+u,可以切换到大写;ctrl+o可以切换到小写。

18、让sublime关联.vt文件。

使用quartus生成的testbench模板,是.vt文件,而我们的verilog插件没有关联的.vt文件,导致无法使用语法高亮。

Preferences->浏览程序包,进入user目录,打开Verilog.tmLanguage文件。

增加上图所示,白色方框内容,保存,即可关联.vt和.VT文件了。

19、vi模式。

sublime自带vi模式,在package enable选中vintage即可。另外,需要安装VintageEx、sublimeblockcursor插件。

vi模式,不影响代码片段等功能。

20、可移植性。

在windows下配置好的sublime,只要把Packages文件夹copy到linux或者mac下的sublime安装目录,所有插件都齐全了。

21.文本快捷切换。

Sublime Text 2 里只需按下 Ctrl+P(Win) 或 Shift+Command+P(Mac) 即可调出文件切换面板,接着你只需输入文件名,回车后即可瞬间切换过去!并且它支持模糊匹配,只需输入你记得的一部分即可,譬如我想要找一个“www.iplaysoft.com.php”的文件来编辑,那么你只需要输入“ipl”或者是”ips.c”这样的字符都能匹配出来,这个特性非常非常的棒!(引自:https://www.iplaysoft.com/sublimetext.html)

转载自:http://blog.csdn.net/k331922164/article/details/48092291



推荐阅读
  • Ubuntu下Sublime Text 2的安装
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • MacSublimeText3配置汉化、主题、插件等功能,Go语言社区,Golang程序员人脉社 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 本文介绍了如何通过conda安装Selenium的wheel文件,包括查看环境、卸载旧版本、下载新版本的wheel文件以及安装操作的步骤。同时提供了使用清华源的方法。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 深度学习中的Vision Transformer (ViT)详解
    本文详细介绍了深度学习中的Vision Transformer (ViT)方法。首先介绍了相关工作和ViT的基本原理,包括图像块嵌入、可学习的嵌入、位置嵌入和Transformer编码器等。接着讨论了ViT的张量维度变化、归纳偏置与混合架构、微调及更高分辨率等方面。最后给出了实验结果和相关代码的链接。本文的研究表明,对于CV任务,直接应用纯Transformer架构于图像块序列是可行的,无需依赖于卷积网络。 ... [详细]
  • IOS开发之短信发送与拨打电话的方法详解
    本文详细介绍了在IOS开发中实现短信发送和拨打电话的两种方式,一种是使用系统底层发送,虽然无法自定义短信内容和返回原应用,但是简单方便;另一种是使用第三方框架发送,需要导入MessageUI头文件,并遵守MFMessageComposeViewControllerDelegate协议,可以实现自定义短信内容和返回原应用的功能。 ... [详细]
  • 程序员如何选择机械键盘轴体?红轴和茶轴对比
    本文介绍了程序员如何选择机械键盘轴体,特别是红轴和茶轴的对比。同时还介绍了U盘安装Linux镜像的步骤,以及在Linux系统中安装软件的命令行操作。此外,还介绍了nodejs和npm的安装方法,以及在VSCode中安装和配置常用插件的方法。最后,还介绍了如何在GitHub上配置SSH密钥和git的基本配置。 ... [详细]
  • VG浏览器是免费的吗 VG浏览器常见问题汇总
    VG浏览器是免费的吗VG浏览器常见问题汇总。现在,不少人都在使用VG浏览器。但是,有些用户在使用VG浏览器过程中,也是碰到不少问题。今天,小编给大家带来VG浏览器常见问题大汇总。想 ... [详细]
  • linux qt打开常用文件格式,设置Linux Qt文件默认打开方式为QtCreator
    Linux自定义文件打开方式也可参照文本抱歉,本文前段时间写的ubuntu下的Qt工程文件默认打开方式是不好用的,因为其他的文本文件也会受到影响,强迫症患者,每次打开Qt工程都是先 ... [详细]
  • pc电脑如何投屏到电视?DLNA主要步骤通过DLNA连接,使用WindowsMediaPlayer的流媒体播放举例:电脑和电视机都是连接的 ... [详细]
  • 媒介本文的前身是源自github上的项目awesome-github-vue,但由于该项目上次更新时候为2017年6月12日,许多内容早已逾期或是许多近期优异组件未被收录,所以小肆 ... [详细]
  • php文件怎么打卡(php打卡源码)
    导读:很多朋友问到关于php文件怎么打卡的相关问题,本文编程笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!本文目录一览: ... [详细]
  • SublimeText2(后面简称为subl)是一个很强大的跨平台代码编辑器,要让它更强大起来还需要一番配置。本文涉及的配置如下:设置subl支持命令行启动安装PackageCon ... [详细]
  • 编辑器VSCode使用心得
    工欲善其事必先利其器,趁手的工具会使我们开发事半功倍。市面上的编辑器我用过许多,编辑器使用经历Notepad++,(开源)这个应该是最轻量级的吧,查看代码还好,编辑代码就算了官网地 ... [详细]
author-avatar
qq2304944703
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有