vim 脚本——插件
:help usr_41.txt
查看vim默认可添加插件的路径
:set runtimepath? 查看vim系统插件与脚本位置
:echo $VIMRUNTIME
:echo $VIM 查看所有插件的目录路基
:scriptnames 或者在vim下使用:help syntax.txt,自己看
查看vim的内置函数
:help functions
测试一款颜色设置
:runtime dir_path/colortest.vim
==============================================================================
如何添加插件??
与全局plugin所在的目录一样,通过查看这个plugin是否提到了某个文件类型,可以判断出该plugin是全局的还是专用于某种文件类型的,在$VIMRUNTIM/macros目录下的脚本是全局的,而在$VIMRUNTIME/ftplugin目录下的则是专用于特定文件类型的。
我们自己添加的plugin应放在何处?在vim中运行
:set runtimepath?
显示:
runtimepath=~/.vim,/var/lib/vim/addons,/usr/share/vim/vimfiles,/usr/share/vim/vim73,/usr/share/vim/vimfiles/after,/var/lib/vim/addons/after,~/.vim/after
所以可以添加在~/.vim 或者 ~/.vim/after下
新建目录
mkdir -p ~/.vim/{plugin,ftplugin,doc}
其中:
~/.vim/plugin目录下存放全局的plugin
~/.vim/ftplugin目录下存放特定文件类型的plugin
~/.vim/doc目录下存放帮助文件
对于全局的plugin
mv pluginname ~/.vim/plugin
对于特定文件类型的plugin,例如“stuff”文件类的plugin
方法一:
mv pluginname ~/.vim/ftplugin/stuff.vim 方法二:
mv pluginname ~/.vim/ftplugin/stuff_anysuffix.vim 方法三:
mv pluginname ~/.vim/ftplugin/stuff/anysuffix.vim
安装号插件后,有时需要安装帮助文件(有些用法可能会忘记,需要查询)
、mv helpfile ~/.vim/doc
、在vim中键入
:helptags ~/.vim/doc
此后就可以通过在vim中键入
:help local-additons
查看自己添加的帮助文件列表,以及其中的各种用法
==============================================================================
变量:变量类型有两种,整数和字符串,在第一次赋值之前都不能使用。变量名除了可使用常规的字母、下划线和数字外,还可以使用几种特殊的前缀:
“b:”——只对当前缓冲区(buffer)有效的变量;
“w:”——只对当前编辑窗口(window)有效的变量。
“g:”——全局变量(在函数中访问全局变量必须使用该前缀,不加前缀的话则认为是函数内的局部变量);
“s:”——变量名只在当前脚本中有效;
“a:”——函数的参数;
“v:”——Vim 内部预定义的特殊变量(参见“:help vim-variable”)。 下面三个前缀用来访问特殊的数值,由于行为和变量较为相似(可以读取和修改),也放在这儿一起讲:
“$”——访问环境变量;
“&”——访问 Vim 选项;
“@”——访问寄存器
Vim 中使用如下的语法对变量进行赋值(创建变量): let 变量名 = 数值 当变量不再使用时,可以使用“unlet 变量名”删除变量。
==============================================================================
表达式:
可以使用变量和常量,可以使用括号,可以调用函数(“函数名(...)”),支持加法(“+”)、减法(“-”)、乘法(“*”)、除法(“/”)和取模 (“%”),支持逻辑操作(“&&”、“||”和“!”),支持三元条件表达式(“a ? b : c”)。
Vim 的字符串常量有双引号和单引号两种方式。使用单引号的话,单引号间的任何字符都是字符串的一部分,其中不能再包含单引号。使用双引号的话,则可以使用 “\”产生换码序列(具体可参考“:help expr-quote”),如“\n”代表换行符,“\"”代表双引号,“\\”代表反斜杠本身,等等。
可以使用“.”进行字符串拼接;可使用“==”、“<=”等进行字符串大小比较,可使用“=~”和“!~”进行正则表达式匹配,而且可以在比较操作符后面添加“#”或“?”来强制进行大小写敏感或不敏感的比较(缺省受 Vim 选项 ignorecase 影响)
显示一个表达式的结果,可以使用“:echo 表达式”显示到状态栏上,或者在插入模式下使用“Ctrl-R=表达式”插入到缓冲区的文本中。
双引号除了可以表示字符串常量外,还可以表示注释。行首的“"”,以及表达式中出现的成单的“"”,都表示“"”后面的部分全部是注释。
runtimepath=~/.vim,/var/lib/vim/addons,/usr/share/vim/vimfiles,/usr/share/vim/vim73,/usr/share/vim/vimfiles/after
,/var/lib/vim/addons/after,~/.vim/after,~/.vim/vim_latex
vim 脚本——插件的更多相关文章
- 【vim】插件管理及代码智能提示与补全环境的配置
1. 引言 可以使用脚本/插件来给vim添加各种神奇的功能,从更换颜色主题.到代码智能提示,甚至项目管理.无数开发者通过开源社区贡献自己开发的插件,使得vim有可能变得无比强大.这儿http://vi ...
- vim插件的安装方式 -- vim注释插件和doxygen函数注释生成插件-ctrlp插件-tabular等号对齐 插件
使用unzip的时候 指定 -d选项, 是说明解压到的 目标地址. 这个参数还是比较方便的, 比直接unzip到当前目录, 然后在去拷贝到目标目录, 然后再删除当前目录中的解压文件夹, 方便多了. 使 ...
- vim利用插件管理工具-管理配置文件
目前被广泛应用的2各插件管理工具Pathogen和Vunble,我先说Pathogen Pathogen Pathogen完全用vim脚本编写,不用其他的代码(Vunble就用了python),所以安 ...
- vim 添加插件
vim 的功能可以通过向它添加plugin得以扩展.所谓的plugin不过是一个vim会自动载入执行的脚本.把一个脚本放到你的plugin目录就可以了,非常容易. plugin基本上分为两类: 全局 ...
- vim脚本语言
转自:http://man.chinaunix.net/newsoft/vi/doc/usr_41.html#usr_41.txt Vim 脚本语言在很多地方用到,包括 vimrc 文件, 语法文件, ...
- (转)Vim 脚本语言
2012 年 10 月 20 日 by name5566 Categories: Computer Science, Tools 参考文献列表: http://vimdoc.sourceforge.n ...
- 出售Illustrator脚本插件面板(包含面板源码,以及面板上所有的功能源码)
出售Illustrator脚本插件面板(包含面板源码,以及面板上所有的功能源码) 购买后可提供相应的小修改,以及教你使用往这个多列面里再加上按钮功能! 这套源码可作为工作使用,也可用为新手学习AI脚面 ...
- 在ubuntu上搭建开发环境6---安装和使用vim及其插件(Pathogen和NERDTree)
2015.09.08 更为详细的配置vim的方法,请参见我的新整理的文章:http://segmentfault.com/a/1190000003722928 Vim安装 命令: sudo apt-g ...
- Vim Vundle 插件管理器
/********************************************************************** * Vim Vundle 插件管理器 * 说明: * 话 ...
随机推荐
- 429. N叉树的层序遍历
429. N叉树的层序遍历 题意 给定一个 N 叉树,返回其节点值的层序遍历. (即从左到右,逐层遍历). 解题思路 和二叉树的层次遍历的思想一样: 实现 class Solution(object) ...
- Pyinstaller安装以及参数使用
一.安装 pip install pyinstaller (注:win7系统安装有pywin32依赖包,先按pywin32在进行以上的步骤) 二.参数说明(这里要注意大小写) -F 表示生成单个可 ...
- 移动端tap与click的区别 && 点透事件
移动端的问题 移动端的主要问题是click会有300ms的延迟,主要原因是苹果手机在设计时,考虑到用户在浏览网页时需要放大,所以,在用户点击的300ms之后,才触发click,如果300ms之内还有c ...
- Oracle 拼接列数据的方法
select wm_concat(fphone) phone from dq_phone_ndtbdxz wm_concat(列名):把多列值,合并成一列,用,隔开.
- C#高级编程9 第18章 部署
C#高级编程9 第18章 部署 使用 XCopy 进行部署 本主题演示如何通过将应用程序文件从一台计算机复制到另一台计算机来部署应用程序. 1.将项目中生成的程序集复制到目标计算机,生成的程序集位于项 ...
- 使用 IntraWeb (36) - TIWServerControllerBase
每个应用须有且只有一个 Server Controller. TIWServerControllerBase 所在单元及继承链: IWServerControllerBase.TIWServerCon ...
- PPPOE
本质上,它是一个允许在以太网广播域中的两个以太网接口间创建点对点隧道的协议. PPPoE(英语:Point-to-Point Protocol Over Ethernet),以太网上的点对点协议,是将 ...
- redis 基本信息查询
在客户端可以用telnet命令 telnet ip port 再输入info 返回如下信息:
- 《Unix&Linux大学教程》学习笔记6——Unix文件系统
1:Unix文件类型——3种 普通文件(常规文件):文本文件(纯文本.脚本.源程序.配置文件.html等).二进制文件(多媒体文件.数据库等) 目录:用于组织文件 伪文件:不存储数据,目的是提供一种服 ...
- phpBB3.2开发环境配置
从Github导出项目 如果只是查看代码, 可以直接clone官方的git https://github.com/phpbb/phpbb.git . 如果需要开发, 就fork一下再从自己的Git里c ...