• vi编辑器的学习使用(十七)


    在Vim编辑器有着相当丰富的命令和设置.有许多的命令设置可以说我们是根本就不会用到的.下面的只是简要的介绍一些这样的命令和设置的方法.
    命令cscope可以检查C或是C++程序文件并产生一个含有程序中函数和变量信息的数据库.我们可以使用Cscope程序来查看这个数据库从而可以得函数定义和使用的一些信息.Cscope可以从下处得到:
    http://cscope.soureforge.net
    我们可以使用下面的命令来得一些详细的帮助信息:
    :help cscope
    Cscope一些相关的命令如下:
    :cs arguments
    :cscope argument
    处理一些与Cscope程序相关联的活动
    :cstag procedure
    定位到Cscope数据库中名为procedure的函数标记处
    :set csprg=program
    :set cscopeprg=program
    定义CScope程序名(默认为Cscope)
    :set cst
    :set cscopetag
    :set nocst
    :set nocscopetag
    如果设置了cscopetag选项就可以在使用Cscope数据中使用命令(:tags,CTRL-])来浏览标记
    :set csto=flag
    :set cscopetagorder=flag
    这个选项设置了CScope标记查询命令的查询顺序.如果是默认的0,那么会先查Cscope数据库,然后是标记;如果是1,则首先查在标记中查找.
    :set csverb
    :set cscopeverbose
    :set nocsverb
    :set nocopeverbose
    如果设置了cscopeverbose选项,那么在Vim查找Cscope数据库并且查找失败时给出错误信息,而Vim默认的设置为nocscopeverbose
    OLE系统是运行在Windows下面的程序彼此之间进行通信的方法.而Vim编辑器可以来扮演一个OLE服务器的角色.这就意味着我们可以来编写Window程序并与Vim通信.我们可以用下面的命令来得到更详细的帮助信息:
    :help ole-interface
    与Perl的接口可以使得我们在Vim中执行perl命令,同时可以提供给Perl程序一个接口,使得他可以访问Vim的功能.我们可以使用下面的命令来得一些更详细的帮助信息:
    :help perl
    Perl的一些接口命令如下:
    :pe command
    :perl command    执行单一的perl命令
    :range perld command
    :range perldo command    在几行上执行perl命令
    与Perl相类似是Python.我们可以用命令:help python得到更详细的帮助信息.
    Python的一些接口命令如下:
    :range py statement
    :range python statement    执行单一的Python命令描述
    :range pyf file
    :range pyfile file    执行文件中的Python程序
    Sniff+的一些接口命令如下:
    :sni command
    :sniff command    通过与Sniff+的接口来执行命令.如果没有提供命令,则会显示出当前连接信息.
    同样我们可以通过命令:help sniff来得到Vim提供的帮助信息.
    Tcl的一些接口命令:
    :tc command
    :tcl command    执行单一的Tcl命令
    :range tcld command
    :range tcldo command
    在所列出的行中每行执行一次Tcl命令
    :tclf file
    :tclfile file    在给定的文件中执行Tcl脚本
    Vim编辑器可以处理各种不同的语言.在这里列出我们一些常用字的用其他语言来编辑文件的命令.如果我们要想得到一些更详细的说明,则要查阅Vim文档或是我们的系统文档了.
    下面的是一个固定的常用的命令:
    <F8>    在从左到右和从右到左两种模式间切换
    :set rl
    :set rightleft
    :set norl
    :set norightleft
    通过这些选项的设置我们可以选择是从左到右的模式还是从右到左的模式
    :set ari
    :set allowrevins
    :set noari
    :set noallowrevins
    通过设置这些选项我们可以通过CTRL-_来设置revins选项.这个可以使得我们选择语言的输入的是从左到右还由右至左.
    :set ri
    :set revins
    :set nori
    :set norevins
    通过这些选项设置,我们可以选择在插入模式下是由左至右还是由右至左.如果设置了allowrevins选项我们可通过CTRL-_来在这几个选项间进行切换.
    :set gfs=f1,f2
    :set guifontset=f1,f2
    定义英语使用f1字体,而另一种语言使用f2字体
    这个选项只有在我们编译Vim编辑器时允许进行字体设置并且是只在UNIX系统才可以正常的工作.
    :set lmap=ch1ch2,ch1ch2
    :set langmap=ch1ch2,ch1ch2
    为外文本设置键盘映射
    Vim编辑器对汉字的输入支持由左到右,由右到左几种模式.他还支持传统的中文和简体中文.与中文相关的命令如下:
    :set fe=encodning
    :set fileencoding=encoding
    设置文件的编码.对于中文这个选项可以是对于传统中文的taiwan或是对于简体中文的pre.
    如果我们要编辑Vim编辑器时打开了Farsi的支持,我们就可以在用这种语言来编辑文件了.可以用-F选项在启动Vim时进入Farsi模式:
    $ vim -F file.txt
    我们可以得到更详细的信息:
    :help farsi
    与Farsi相关的命令如下:
    :set fk
    :set fkmap
    :set nofk
    :set nofkmap
    通过这些选项的设置我们可以告诉Vim我们正在使用Farsi键盘
    :set akm
    :set altkeymap
    :set noakm
    :set noaltkeymap
    通过设置这些选项我们可以告诉vim编辑器键盘映射是Farsi还是Hebrew
    CTRL-_    在Farsi和正常模式下进行切换
    <F9>    在标准的ISIP-3342编码和扩展的ISIR-3342编码之间进行切换
    Hebrew是由右到左的另一种语言.采用Hebrew模式进行编辑可以使用下面的命令:
    $ vim -H file.txt
    :help hebrew可以使得我们得到更多的帮助信息.
    与Hebrew相关的一些命令:
    :set hk
    :set hkmap
    :set nohk
    :set nohkmap
    通过这些选项我们可以打开或是关闭Hebrew键盘映射
    :set hkp
    :set hkmappp
    :set nohkp
    :set nohkmapp
    通过这些选项我们可以告诉Vim编辑器我们正在使用Hebrew键盘还是标准的英语键盘(默认为nohkmapp,即标准的英语键盘)
    CTRL-_    这个命令可以使得我们在Hebrew或是正常插入状态下进行切换
    :set akm
    :set altkeymap
    :set noakm
    :set noaltkeymap
    如果设置了altkeymap选项,那么与其交换的键盘映射为Farsi.如果设置了noaltkeymap选项,那么则是Hebrew键盘映射.(默认为noaltkeymap)
    Vim编辑器还可以支持日文,与日文相关的一些命令如下:
    :set fe=japan
    :set fileencoding-japan
    告诉Vim编辑器当前文件采用日文编码.
    我们可以通过命令:help hangul得到更多的韩文帮助信息.与韩文相关的命令如下:
    :set fe=korea
    :set fileencoding=korea
    告诉Vim编辑器当前的文本采用韩文的编码.
    我们还可以使用Vim编辑器来编辑二进制文件,相关的命令如下:
    :set bin
    :set binary
    :set nobin
    :set nobianary
    如果我们设置了insertmode选项,那么Vim默认的便为插入模式.我们可以通过命令CTRL-O切换到正常模式.相关的命令如下:
    :set im
    :set insertmode
    :set noim
    :set noinsertmode
    CTRL-L    如果设置了insertmode选项,则保留这种设置

  • 相关阅读:
    bzoj 3027 [Ceoi2004]Sweet——生成函数
    bzoj 3028 食物——生成函数
    JZOJ 5461 购物 —— 贪心
    JZOJ 1003 [ 东莞市选 2007 ] 拦截导弹 —— 递推
    JZOJ 1667 ( bzoj 1801 ) [ AHOI 2009 ] 中国象棋 —— DP
    洛谷 P2055 [ ZJOI 2009 ] 假期的宿舍 —— 二分图匹配
    洛谷 P3398 仓鼠找sugar —— 树链剖分
    洛谷 P1083 [ NOIP 2012 ] 借教室 —— 线段树 / 二分差分数组
    bzoj 3895 取石子 —— 博弈论
    洛谷 P1312 [ NOIP 2011 ] Mayan游戏 —— 搜索+模拟
  • 原文地址:https://www.cnblogs.com/dyllove98/p/2462157.html
Copyright © 2020-2023  润新知