如何用bash-support插件将Vim编辑器打造成编写Bash脚本的IDE

IDE(集成开发环境)就是这样一个软件,它为了最大化程序员生产效率,提供了很多编程所需的设施和组件。 IDE 将所有开发工作集中到一个程序中,使得程序员可以编写、修改、编译、部署以及调试程序。

在这篇文章中,我们会介绍如何通过使用 bash-support vim 插件将 Vim 编辑器安装和配置 为一个编写 Bash 脚本的 IDE。

什么是 bash-support.vim 插件?

bash-support 是一个高度定制化的 vim 插件,它允许你插入:文件头、补全语句、注释、函数、以及代码块。它也使你可以进行语法检查、使脚本可执行、一键启动调试器;而完成所有的这些而不需要关闭编辑器。

它使用快捷键(映射),通过有组织地、一致的文件内容编写/插入,使得 bash 脚本编程变得有趣和愉快。

插件当前版本是 4.3,4.0 版本 重写了之前的 3.12.1 版本,4.0 及之后的版本基于一个全新的、更强大的、和之前版本模板语法不同的模板系统。

如何在 Linux 中安装 Bash-support 插件

用下面的命令下载最新版本的 bash-support 插件:


  1. $ cd Downloads 
  2. $ curl http://www.vim.org/scripts/download_script.php?src_id=24452 >bash-support.zip 

按照如下步骤安装;在你的主目录创建 .vim 目录(如果它不存在的话),进入该目录并提取 bash-support.zip 内容:


  1. $ mkdir ~/.vim 
  2. $ cd .vim 
  3. $ unzip ~/Downloads/bash-support.zip 

下一步,在 .vimrc 文件中激活它:


  1. $ vi ~/.vimrc 

并插入下面一行:


  1. filetype plug-in on    
  2. set number   # 可选,增加这行以在 vim 中显示行号 

如何在 Vim 编辑器中使用 Bash-support 插件

为了简化使用,通常使用的结构和特定操作可以分别通过键映射来插入/执行。 ~/.vim/doc/bashsupport.txt 和 ~/.vim/bash-support/doc/bash-hotkeys.pdf 或者 ~/.vim/bash-support/doc/bash-hotkeys.tex 文件中介绍了映射。

重要:

  1. 所有映射(\+字符 组合)都是针对特定文件类型的:为了避免和其它插件的映射冲突,它们只适用于 sh 文件。
  2. 使用键映射的时候打字速度也有关系,引导符 \ 和后面字符的组合要在特定短时间内才能识别出来(很可能少于 3 秒 - 基于假设)。

下面我们会介绍和学习使用这个插件一些显著的功能:

如何为新脚本自动生成文件头

看下面的示例文件头,为了要在你所有的新脚本中自动创建该文件头,请按照以下步骤操作。

脚本示例文件头选项

首先设置你的个人信息(作者名称、作者参考、组织、公司等)。在一个 Bash 缓冲区(像下面这样打开一个测试脚本)中使用映射 \ntw 启动模板设置向导。

选中选项 1 设置个性化文件,然后按回车键。


  1. $ vi test.sh 

在脚本文件中设置个性化信息

之后,再次输入回车键。然后再一次选中选项 1 设置个性化文件的路径并输入回车。

设置个性化文件路径

设置向导会把目标文件 .vim/bash-support/rc/personal.templates 拷贝到 .vim/templates/personal.templates,打开并编辑它,在这里你可以输入你的信息。

按 i 键像截图那样在单引号中插入合适的值。

在脚本文件头添加信息

一旦你设置了正确的值,输入 :wq 保存并退出文件。关闭 Bash 测试脚本,打开另一个脚本来测试新的配置。现在文件头中应该有和下面截图类似的你的个人信息:


  1. $ vi test2.sh 

自动添加文件头到脚本

添加 Bash-support 插件帮助信息

为此,在 Vim 命令行输入下面的命令并按回车键,它会创建 .vim/doc/tags 文件:


  1. :helptags $HOME/.vim/doc/ 

在 Vi 编辑器添加插件帮助

如何在 Shell 脚本中插入注释

要插入一个块注释,在普通模式下输入 \cfr:

添加注释到脚本

如何在 Shell 脚本中插入语句

下面是一些用于插入语句的键映射(n – 普通模式, i – 插入模式,v 可视模式):

  1. \sc – case in … esac (n, i)
  2. \sei – elif then (n, i)
  3. \sf – for in do done (n, i, v)
  4. \sfo – for ((…)) do done (n, i, v)
  5. \si – if then fi (n, i, v)
  6. \sie – if then else fi (n, i, v)
  7. \ss – select in do done (n, i, v)
  8. \su – until do done (n, i, v)
  9. \sw – while do done (n, i, v)
  10. \sfu – function (n, i, v)
  11. \se – echo -e "…" (n, i, v)
  12. \sp – printf "…" (n, i, v)
  13. \sa – 数组元素, ${.[.]} (n, i, v) 和其它更多的数组功能。

插入一个函数和函数头

输入 \sfu 添加一个新的空函数,然后添加函数名并按回车键创建它。之后,添加你的函数代码。

在脚本中插入新函数

为了给上面的函数创建函数头,输入 \cfu,输入函数名称,按回车键并填入合适的值(名称、介绍、参数、返回值):

在脚本中创建函数头

更多关于添加 Bash 语句的例子

下面是一个使用 \si 插入一条 if 语句的例子:

在脚本中插入语句

下面的例子显示使用 \se 添加一条 echo 语句:

在脚本中添加 echo 语句

如何在 Vi 编辑器中使用运行操作

下面是一些运行操作键映射的列表:

  1. \rr – 更新文件,运行脚本(n, i)
  2. \ra – 设置脚本命令行参数 (n, i)
  3. \rc – 更新文件,检查语法 (n, i)
  4. \rco – 语法检查选项 (n, i)
  5. \rd – 启动调试器(n, i)
  6. \re – 使脚本可/不可执行(*) (n, i)

使脚本可执行

编写完脚本后,保存它然后输入 \re 和回车键使它可执行。

使脚本可执行

如何在 Bash 脚本中使用预定义代码片段

预定义代码片段是为了特定目的包含了已写好代码的文件。为了添加代码段,输入 \nr 和 \nw 读/写预定义代码段。输入下面的命令列出默认的代码段:


  1. $ .vim/bash-support/codesnippets/ 

代码段列表

为了使用代码段,例如 free-software-comment,输入 \nr 并使用自动补全功能选择它的名称,然后输入回车键:

添加代码段到脚本

创建自定义预定义代码段

可以在 ~/.vim/bash-support/codesnippets/ 目录下编写你自己的代码段。另外,你还可以从你正常的脚本代码中创建你自己的代码段:

选择你想作为代码段的部分代码,然后输入 \nw 并给它一个相近的文件名。

要读入它,只需要输入 \nr 然后使用文件名就可以添加你自定义的代码段。

在当前光标处查看内建和命令帮助

要显示帮助,在普通模式下输入:

  1. \hh – 内建帮助
  2. \hm – 命令帮助

查看内建命令帮助

更多参考资料,可以查看文件:


  1. ~/.vim/doc/bashsupport.txt  #在线文档的副本 
  2. ~/.vim/doc/tags 
  • 访问 Bash-support 插件 GitHub 仓库:https://github.com/WolfgangMehner/bash-support
  • 在 Vim 网站访问 Bash-support 插件:http://www.vim.org/scripts/script.php?script_id=365

就是这些啦,在这篇文章中,我们介绍了在 Linux 中使用 Bash-support 插件安装和配置 Vim 为一个 Bash-IDE 的步骤。快去发现这个插件其它令人兴奋的功能吧,一定要在评论中和我们分享哦。

作者:Aaron Kili

来源:51CTO

时间: 2024-11-05 12:07:21

如何用bash-support插件将Vim编辑器打造成编写Bash脚本的IDE的相关文章

如何用 bash-support 插件将 Vim 编辑器打造成编写 Bash 脚本的 IDE

IDE(集成开发环境)就是这样一个软件,它为了最大化程序员生产效率,提供了很多编程所需的设施和组件. IDE 将所有开发工作集中到一个程序中,使得程序员可以编写.修改.编译.部署以及调试程序. 在这篇文章中,我们会介绍如何通过使用 bash-support vim 插件将 Vim 编辑器安装和配置 为一个编写 Bash 脚本的 IDE. 什么是 bash-support.vim 插件? bash-support 是一个高度定制化的 vim 插件,它允许你插入:文件头.补全语句.注释.函数.以及代

Linux系统Vim编辑器如何安装YouCompleteMe插件?

Linux系统Vim编辑器如何安装YouCompleteMe插件?  编译配置选项: /configure --with-features=huge --enable-pythoninterp --enable-python3interp --enable-luainterp --enable-multibyte --enable-sniff --enable-fontset 在我的机器上装有python2.7.5 和 python3.3, 但加了enable-python3interp参数依然

Vim编辑器的兼容模式

目前,在我们讲述 Vim 的教程中,讨论过编辑器的模式行(Modeline)功能以及怎样用插件来扩展 Vim 的功能集.可正如我们所知,Vim 提供了非常多的内置功能:因此在本教程中更进一步,我们来谈谈在该编辑器启动时的可用模式. 但在我们开始之前,请注意在本教程中提及的所有例子.命令及用法说明都是在 Ubuntu 14.04 上测试的,我们测试用的 Vim 版本是 7.4 . Vim 中的兼容模式与不兼容模式 为了更好理解上述的 Vim 模式,你有必要先去了解下此编辑器初始化过程的一个重要方面

Vim 编辑器的兼容模式

目前,在我们讲述 Vim 的教程中,讨论过编辑器的模式行Modeline功能以及怎样用插件来扩展 Vim 的功能集.可正如我们所知,Vim 提供了非常多的内置功能:因此在本教程中更进一步,我们来谈谈在该编辑器启动时的可用模式. 但在我们开始之前,请注意在本教程中提及的所有例子.命令及用法说明都是在 Ubuntu 14.04 上测试的,我们测试用的 Vim 版本是 7.4 . Vim 中的兼容模式与不兼容模式 为了更好理解上述的 Vim 模式,你有必要先去了解下此编辑器初始化过程的一个重要方面.

iOS - Mac Vim 编辑器

Mac Vim 编辑器 1)vi 文本编辑器 1.打开一个文件:vi 文件名 按住 shift 连按两次 z 键( :q )退出 vi 编辑器 2.vi 两种模式:第一是命令模式(按 esc 进入命令模式),第二是编辑模式(按 i 进入编辑模式) 3.保存文件:在命令模式下输入':w'回车 4.光标移动:命令模式下 h 左移 j 下移 k 上移 l 右移 w 下一个单词的词首 $ 行尾 ^ 行首 gg 文件第一行的头部 G (shift + g) 文件最后一行的头部 5.文件编辑:命令模式下 y

WordPress插件百度UEdito编辑器

  UEdito百度旗下出品的一款编辑器,功能异常强大,支持任何类型的编辑复制,所见即所得.UEdito支持wordpress 4.0以上的版本.就UEdito的功能来说,目前已经超越了市场上其它的所有编辑插件.而我们默认的wordpress的编辑器在这款UEdito插件面前简直寒酸的惨不忍睹. 下图是wordpress默认编辑器和百度UEdito编辑器的对比.   wordpress编辑器   wordpress编辑插件 UEdito简介: UEditor编辑器 For WordPress插件

鸟哥的linux私房菜-vim编辑器学习笔记

 为什么使用vim编辑器: 所有的Unix Like 系统都会内建vi 文书编辑器,其他的文书编辑器则不一定会存在: 很多个别软件的编辑接口都会主动呼叫vi (例如未来会谈到的 crontab, visudo, edquota 等指 令): vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计: 因为程序简单,编辑速度相当快速.     vim编辑器的用法总结: 一般模式: vi aa : 如果aa文档存在,则如图所示 如果aa文档不存在,则会提示NEW i:插入模式(

Linux shell 基础之Vim编辑器

vim编辑器在内存缓冲区中处理数据,如在启动vim时未指定文件名,或者这个文件不存在,vim会开辟一段新的缓冲区域来编辑. 如果你在命令行下指定了一个已有文件的名字,vim会将文件的整个内容都读到一块缓冲区域来准备编辑 # 当文件不存在时,会新建一个文件并把缓冲区的内容保存到新创建的文件中 vim mytest # 下面会提示New File # vim编辑器有两种模式,插入模式和普通模式 # 普通模式键入i就可以切换到插入模式 # 插入模式下键入esc键可以退回普通模式 # 如果想放弃对对缓冲

从windows 上复制代码paste到linux虚拟机里vim编辑器 带注释的行会花掉

问题描述 从windows 上复制代码paste到linux虚拟机里vim编辑器 带注释的行会花掉 大家有解决办法吗 解决方案 字符节不同,你好好看看你设置的字符集 解决方案二: 中文字体支持的原因吧,导致字符乱码了