[点滴积累]vim使用(1)(FromQQ)
2)viminfo信息中保存了命令行历史(history)、搜索字符串历史(search)、输入行历史、非空的寄存器内容(register)、文件的位置标记(mark)、最近搜索/替换的模式、缓冲区列表、全局变量等信息。
打开这些文件之后,想要下次启动vim的时候保持现在这个状态,不用一个一个重新载入了,一个比较笨
: cd src "切换到/home/easwy/src/vim70/src目录
: set sessionoptions-=curdir "在session option中去掉curdir
:set sessionoptions+=sesdir "在session option中加入sesdir
: mksession vim70.vim "创建一个会话文件
: wviminfo vim70.viminfo "创建一个viminfo文件
:qa "退出vim
下次启动的时候,任意vi f1,然后
: source ~/src/vim70/src/vim70.vim '载入会话文件
: rviminfo vim70.viminfo '读入viminfo文件
CTRL-T "跳到标签栈中较早的标签,相当于“后退”的功能,退回到hello.h文件处
:tags "显示标签栈
netrw.vim是vim的标准插件,它已经伴随vim而发行,不需要安装。
我们现在试一下vim文件功能,当你使用vim尝试打开目录时,vim会自动调用netrw.vim插件打开该目录(从操作系统的视角来看,目录其实是一种特殊的文件)。例如,我们在vim中执行命令”:e ~/src
这个窗口类似于文件管理器,你可以创建、删除、改名文件或目录;在目录上按回车时,会进入该目录;在文件上按回车时,会使用vim打开该文件;可以更改排序方式、排序风格;隐藏目录或文件(使之不在上述窗口中显示)等等。
<F1> 显示帮助<cr> 如果光标下为目录,则进入该目录;如果光标下是文件,则用vim打开该文件- 返回上级目录c 切换vim的当前工作目录为正在浏览的目录d 创建目录D 删除文件或目录i 切换显示方式R 改名文件或目录s 选择排序方式x 定制浏览方式,使用你指定的程序打开该文件
2、输入“:Sexplore!”会令垂直打开一个窗口显示当前文件所在目录(没有感叹号则水平)类似:
:vnew(在新窗口创建文件),:vsplit xxx(要打开的文件名),:split xxx(要打开的文件名)这里文件都可以是目录。
3、输入“:ls”显示当前缓冲区中得文件,按N ctrl^或者“:buffer N”可以切换成第N个缓冲
##########20090312############
1,quickfixQuickfix模式的主要思想是保存一个位置列表,然后提供一系列命令,实现在这个位置列表中跳转。对大多数使用Makefile的项目来说,vim的缺省设置”make“已经可以满足要求了。如果你的项目需要用一个特殊的程序进行编译,就需要修改’makeprg‘选项的值。例如对于hello.c,设置执行make时的命令,注意需要空格转义,
":set makeprg=gcc/ -Wall/ -ohello/ hello.c ",设置之后执行":make",就可以编译了。vim会自
动调用’makeprg‘选项定义的命令进行编译,并把编译输出重定向到一个临时文件中,当编译出现错误时,
vim会从上述临时文件中读出错误信息,根据这些信息形成quickfix列表,并跳转到第一个错误出现的地方。
可以输入”:cc“命令,vim会更次显示此信息,或者干脆使用”:cw“命令,打开一个quickfix窗口,
把所有的出错信息显示出来。
在quickfix模式里经常用到的命令有:
:cc 显示详细错误信息 ( :help :cc ):cp 跳到上一个错误 ( :help :cp ):cn 跳到下一个错误 ( :help :cn )或者在Quickfix List对应行上输入回车:cl 列出所有错误 ( :help :cl ):cw 如果有错误列表,则打开quickfix窗口 ( :help :cw ):col 到前一个旧的错误列表 ( :help :col ):cnew 到后一个较新的错误列表 ( :help :cnew )
更多的命令,以及这些命令更详细的解释,请参见手册。
如果你希望跳转到出错的文件时,使用一个分隔的窗口打开,请参阅’switchbuf‘选项的值
2、关于自动补全:
除智能补全外,最常用的补全方式应该是CTRL-N和CTRL-P补全了。它们会在当前缓冲区、其它缓冲区,以及
当前文件所包含的头文件中查找以光标前关键字开始的单词。智能补全不能对局部变量进行补全,而CTRL-N和
CTRL-P补全则可以很好的胜任。 例子,输出字符”pa”,然后按CTRL-P,vim会在下拉菜单中列出所有的匹
配功能供选择,此时再按一下CTRL-P,就选中了第一个项目,也就是我想输入的”parmp”。我们第一次输入
CTRL-P的是进行补全,第二次输入的CTRL-P是在下拉菜单中向上选择,二者的含义是不同的。 我们知道,
CTRL-P一般的含义是向上,因此CTRL-P补全是向上查找以进行补全,而CTRL-N是向下查找以进行补全,在不
同场合使用不同的快捷键可以加速补全的速度。使用CTRL-N和CTRL-P补全时,由’complete‘选项控制vim
从哪些地方查找补全的内容。例如,对于比较大的软件项目,文件包含关系复杂,如果CTRL-N和CTRL-P补全
时查找所包含的头文件,耗时会比较久。此时,可以在’complete‘选项中去掉’i‘标记,这样CTRL-N和
CTRL-P补全就不在头文件中查找了,速度会快很多;当然,弊端就是你无法对头文件中出现的某些内容进行补
全了。vim中其它的补全方式包括:
整行补全 CTRL-X CTRL-L根据当前文件里关键字补全 CTRL-X CTRL-N根据字典补全 CTRL-X CTRL-K根据同义词字典补全 CTRL-X CTRL-T根据头文件内关键字补全 CTRL-X CTRL-I根据标签补全 CTRL-X CTRL-]补全文件名 CTRL-X CTRL-F补全宏定义 CTRL-X CTRL-D补全vim命令 CTRL-X CTRL-V用户自定义补全方式 CTRL-X CTRL-U拼写建议 CTRL-X CTRL-S
例如,当我们按下”CTRL-X CTRL-F“时,vim就会弹出下拉菜单,显示出当前目录下的可选目录和文件。
############20090314###############
移动:
1,上下左右移动窗口位置的命令,是CTRL-W H/J/K/L (:help CTRL-W_H, …)。注意,这里的H, J, K, L是大写的
2,在vim中翻页,同样可以使用PageUp和PageDown,我们通常使用CTRL-B和CTRL-F来进行翻页,CTRL-B和
CTRL-F前也可以加上数字,来表示向上或向下翻多少页
3,跳转:命令“gg”移动到文件的第一行,而命令“G”则移动到文件的最后一行。 跳转到文件的第1234行,只需输入
“1234G”或者“:1234”
还可以按百分比来跳转,例如,想跳到文件的正中间,输入“50%”;如果想跳到75%处,输入“75%”。
迷失自己的位置,这时使用“CTRL-G”命令,查看一下自己位置以及文件等。
4,行内快速移动,可以使用f, t, F, T命令.例如,"fx",会把移动到光标右边的第一个'x'字符上。"F"命
令则反方向查找,也就是移动到光标左边的指定字符上,"tx"会移动到光标右边第一个'x'字符的前面。"T"命
令是"t"命令的反向版本,它移动到光标右边的指定字符之后,可以在命令前面使用数字,"3fx"表示移动到光
标右边的第3个'x'字符上.";"命令重复前一次输入的f, t, F, T命令,而","命令会反方向重复前一次输入
的f, t, F, T命令。这两个命令前也可以使用数字来表示倍数。
在vim中,移动到行首的命令非常简单,就是"0",这个是数字0,而不是大写字母O。移动到行尾的命令是"$" 另外还有一个命令"^",用它可以移动到行首的第一个非空白字符。 使用H/M/L这三个键,可以让光标跳到当前窗口的顶部、中间、和底部,停留在第一个非空字符上。加一个数 字,是指距窗口顶部、底部的行数 相对于光标的翻页:光标所在行移动窗口的顶端、中间或底部:"zt"、"zz"和"zb"。 5,查找:直接在Normal模式下输入"/",然后输入你想查询的字符串,回车,就跳转到第一个匹配的地方了。 "?"进行反方向查找。命令"n"重复上一次的查找命令,而命令"N"也重复上一次的查找命令,只不过它按 相反方向查找。使用"q/"和"q?"命令,在vim窗口最下面打开一个新的窗口,这个窗口会列出你的查找历 史记录####################20090316#################关于替换1.输入 :s/thee/the <回车> 。请注意该命令只改变光标所在行的第一个匹配串。 2. 输入 :s/thee/the/g 则是替换全行的匹配串3.输入 :#,#s/old/new/g 替换两行之间出现的每个匹配串(#,#代表的是两行的行号)。4.输入 :%s/old/new/g 则是替换整个文件中的每个匹配串。5.进行全文替换时询问用户确认每个替换需添加 c 选项,请输入 :%s/old/new/gc其余的不重复说了。6.查找时,设置 ic 选项(ic就是英文忽略大小写Ignore Case的首字母缩写词),即输入:set ic
[点滴积累]vim使用(1)(FromQQ)相关推荐
- 源于十年来的点滴积累——《变革中的思索》印行出版
源于归国十年来的点滴积累, 集结成书的<变革中的思索>,日前由电子工业出版社刊印出版. 这本书共有五个章节,分别是解码创新.中国智造.管理心得.我和微软.心灵记忆--前三章偏重技术,更多理 ...
- Vue项目开发中的点滴积累系列文章
题记 -- 严于律己,精于行动,点滴积累,着眼未来,你也许不负青春 Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的渐进式框架 本文章 记录从基础入门到实际项目开发中的点点 ...
- 【mysql】点滴积累
一,replace mysql 中的replace 函数直接替换mysql 数据库中某字段中的特定字符串,不再需要自己写函数去替换,用起来很方便 格式:UPDATE table_name set f ...
- 2022年终总结:点滴积累让我不再迷茫
今年是开始写作的第二年,如果说第一年是起步的话,今年就是开始有了一些小收获了,通过点滴积累让我知道积累的充实感,通过一点一点粉丝或阅读量的积累,增加写作的自信. 今年的收获 首先看一下今年的阅读量和粉 ...
- 点滴积累-从object中取值
问题 很多人在编程中可能会遇到这样的问题,返回一个object对象,怎么取其中的值 解决方案 一般获得的值都需要转换成字符串对象.如果Object中只有一个值,直接转换就可以.多个值的情况下怎么获取呢 ...
- MyBatis点滴积累
MyBatis在使用中不知不觉积累了很多经验 1.#和$ MyBatis/Ibatis中#和$的区别 1. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号.如:order by #us ...
- 点滴积累--工作总结
工作又进入到一个新的阶段,开始新的启程,再次接触新的报表,熟悉新的开发流程,一点一点的积累在报表上的开发线路. 其实现在回想,过去的这四个月很充实,但乐在其中,每天早饭后直接步行到公司,按着前一天规划 ...
- oracle以查询多括号报错,oracle点滴积累
文章已移至新博客:http://www.youzitool.com/index/detail/id/24.html 本文主要对oracle的一些常用或易犯错的知识点进行积累总结,根据工作情况将不断更新 ...
- 点滴积累【C#】---检验编号在本表中自动生成,与其他表无关
检验编号在本表中自动生成,与其他表无关 效果: 描述:在本表中自动生成编号,与其他表无关. 调用: 1 protected void Page_Load(object sender, EventArg ...
最新文章
- bash 运行程序 下一步_怎样用 Bash 编程:语法和工具
- Linux-NFS原理介绍
- 原生JS DOM操作方法汇总
- 线程:方法join的使用
- 一个xmltojson类
- linux重启sshd命令,重启sshd服务
- HDU1231(DP)
- Python pip install 包后,pycharm仍然提示No module named(提示 No module named ‘pip‘)
- 微信小程序物联网应用_简化物联网应用程序入门的提示
- 阿里 mysql cluster_MySQL Cluster集群安装及使用-阿里云开发者社区
- OkHttp之ConnectInterceptor简单分析
- 连续竞价java_Java 方法method
- 树莓派蜂鸣器唱歌c语言,关于蜂鸣器唱歌程序
- python找电影资源_python一键电影搜索与下载
- Android WebApp NativeApp 适配测试自动化平台GoGo实现 东海陈光剑
- [ CTF ]天格战队WriteUp-首届数字空间安全攻防大赛(初赛)
- T40之小黑不能充电记
- Java计算一个时间段与当前时间的进度百分比
- xtrabackup全量、增量备份恢复mysql数据库
- 2018上海交大计算机考研,2018上海交大学硕考研经验贴