IDE(集成开发环境)就是这样一个软件,它为了最大化程序员生产效率,提供了很多编程所需的设施和组件。 IDE 将所有开发工作集中到一个程序中,使得程序员可以编写、修改、编译、部署以及调试程序。
在这篇文章中,我们会介绍如何通过使用 bash-support vim 插件将 Vim 编辑器安装和配置 为一个编写 Bash 脚本的 IDE。
bash-support 是一个高度定制化的 vim 插件,它允许你插入:文件头、补全语句、注释、函数、以及代码块。它也使你可以进行语法检查、使脚本可执行、一键启动调试器;而完成所有的这些而不需要关闭编辑器。
它使用快捷键(映射),通过有组织地、一致的文件内容编写/插入,使得 bash 脚本编程变得有趣和愉快。
插件当前版本是 4.3,4.0 版本 重写了之前的 3.12.1 版本,4.0 及之后的版本基于一个全新的、更强大的、和之前版本模板语法不同的模板系统。
用下面的命令下载最新版本的 bash-support 插件:
$ cd Downloads
$ curl http://www.vim.org/scripts/download_script.php?src_id=24452 >bash-support.zip
按照如下步骤安装;在你的主目录创建 .vim
目录(如果它不存在的话),进入该目录并提取 bash-support.zip 内容:
$ mkdir ~/.vim
$ cd .vim
$ unzip ~/Downloads/bash-support.zip
下一步,在 .vimrc
文件中激活它:
$ vi ~/.vimrc
并插入下面一行:
filetype plug-in on
set number # 可选,增加这行以在 vim 中显示行号
为了简化使用,通常使用的结构和特定操作可以分别通过键映射来插入/执行。~/.vim/doc/bashsupport.txt
和 ~/.vim/bash-support/doc/bash-hotkeys.pdf
或者 ~/.vim/bash-support/doc/bash-hotkeys.tex
文件中介绍了映射。
重要:
\+字符
组合)都是针对特定文件类型的:为了避免和其它插件的映射冲突,它们只适用于sh
文件。\
和后面字符的组合要在特定短时间内才能识别出来(很可能少于 3 秒 - 基于假设)。下面我们会介绍和学习使用这个插件一些显著的功能:
看下面的示例文件头,为了要在你所有的新脚本中自动创建该文件头,请按照以下步骤操作。
脚本示例文件头选项
首先设置你的个人信息(作者名称、作者参考、组织、公司等)。在一个 Bash 缓冲区(像下面这样打开一个测试脚本)中使用映射 \ntw
启动模板设置向导。
选中选项 1 设置个性化文件,然后按回车键。
$ vi test.sh
在脚本文件中设置个性化信息
之后,再次输入回车键。然后再一次选中选项 1 设置个性化文件的路径并输入回车。
设置个性化文件路径
设置向导会把目标文件 .vim/bash-support/rc/personal.templates
拷贝到.vim/templates/personal.templates
,打开并编辑它,在这里你可以输入你的信息。
按 i
键像截图那样在单引号中插入合适的值。
在脚本文件头添加信息
一旦你设置了正确的值,输入 :wq
保存并退出文件。关闭 Bash 测试脚本,打开另一个脚本来测试新的配置。现在文件头中应该有和下面截图类似的你的个人信息:
$ vi test2.sh
自动添加文件头到脚本
为此,在 Vim 命令行输入下面的命令并按回车键,它会创建 .vim/doc/tags
文件:
:helptags $HOME/.vim/doc/
在 Vi 编辑器添加插件帮助
要插入一个块注释,在普通模式下输入 \cfr
:
添加注释到脚本
下面是一些用于插入语句的键映射(n
– 普通模式, i
– 插入模式,v
可视模式):
\sc
– case in … esac
(n, i)\sei
– elif then
(n, i)\sf
– for in do done
(n, i, v)\sfo
– for ((…)) do done
(n, i, v)\si
– if then fi
(n, i, v)\sie
– if then else fi
(n, i, v)\ss
– select in do done
(n, i, v)\su
– until do done
(n, i, v)\sw
– while do done
(n, i, v)\sfu
– function
(n, i, v)\se
– echo -e "…"
(n, i, v)\sp
– printf "…"
(n, i, v)\sa
– 数组元素, ${.[.]}
(n, i, v) 和其它更多的数组功能。输入 \sfu
添加一个新的空函数,然后添加函数名并按回车键创建它。之后,添加你的函数代码。
在脚本中插入新函数
为了给上面的函数创建函数头,输入 \cfu
,输入函数名称,按回车键并填入合适的值(名称、介绍、参数、返回值):
在脚本中创建函数头
下面是一个使用 \si
插入一条 if
语句的例子:
在脚本中插入语句
下面的例子显示使用 \se
添加一条 echo
语句:
在脚本中添加 echo 语句
下面是一些运行操作键映射的列表:
\rr
– 更新文件,运行脚本(n, i)\ra
– 设置脚本命令行参数 (n, i)\rc
– 更新文件,检查语法 (n, i)\rco
– 语法检查选项 (n, i)\rd
– 启动调试器(n, i)\re
– 使脚本可/不可执行(*) (n, i)编写完脚本后,保存它然后输入 \re
和回车键使它可执行。
使脚本可执行
预定义代码片段是为了特定目的包含了已写好代码的文件。为了添加代码段,输入 \nr
和 \nw
读/写预定义代码段。输入下面的命令列出默认的代码段:
$ .vim/bash-support/codesnippets/
代码段列表
为了使用代码段,例如 free-software-comment,输入 \nr
并使用自动补全功能选择它的名称,然后输入回车键:
添加代码段到脚本
可以在 ~/.vim/bash-support/codesnippets/
目录下编写你自己的代码段。另外,你还可以从你正常的脚本代码中创建你自己的代码段:
\nw
并给它一个相近的文件名。\nr
然后使用文件名就可以添加你自定义的代码段。要显示帮助,在普通模式下输入:
\hh
– 内建帮助\hm
– 命令帮助查看内建命令帮助
更多参考资料,可以查看文件:
~/.vim/doc/bashsupport.txt #在线文档的副本
~/.vim/doc/tags
就是这些啦,在这篇文章中,我们介绍了在 Linux 中使用 Bash-support 插件安装和配置 Vim 为一个 Bash-IDE 的步骤。快去发现这个插件其它令人兴奋的功能吧,一定要在评论中和我们分享哦。
原文发布时间为:2017-05-02
本文来自云栖社区合作伙伴“Linux中国”