首页 > 代码库 > Vim编辑器
Vim编辑器
vi共分为三种模式,一般模式,编辑模式,指令列命令模式。一般模式:以vi打开一个档案就直接进入一般模式了(这是默认模式)。在这个模式中,你可以使用上下做哟按键来移动光标,你也可以使用删除字符或删除整行来处理档案内容,也可以使用复制贴上来处理你的文件数据;编辑模式:在一般模式中可以进行删除、复制、贴上等等的动作,但是却无法编辑文件内容的。要等你按下i、I,o,o,O,a,A,r,R等任何一个字母之后才会进入编辑模式。如果要回到一般模式时,则必须按下Esc这个案件即可退出编辑模式;指令列命令模式:在一般模式当中,输入:/?三个中的任何一个按钮,就可以将光标移动到最底下那一行。在这个模式当中,可以提供你搜索资料的动作,而读取,存盘,大量取代字符,离开vi,显示行号等等的动作则时在此模式中达成的。退出该模式也通过Esc来实现。
一般模式下的快捷键:
l hjkl分别对应左,下,上,右四个方向,如果向下移动30行可以使用30j或30↓即可;
l ctr+f、ctr+b,ctr+d、ctr+u分别对应向下、向上移动一页,向下、向上移动半页;
l +、-分别代表光标移动到非空格符的下一列、上一列;
l 按下数字再按空格光标会向右移动这一行的n个字符;
l 0或Home、$或End分别表示移动到这一行的最前面、最后面字符处;
l H、M、L分别代表光标移动到这个屏幕的最上方、中间、最下方的那一行第一个字符;
l G:移动到这个档案的最后一行,数字+G:移动到这个档案的第该数字行,gg:光标移动到这个档案的第一行;
l n<Enter>光标向下移动n行;
l /word、?word分别代表向光标下、上搜索word字符串;
l n、N分别表示重复前一个搜索动作、反向进行前一个搜索动作,类似下一个,上一个的功能;
l :n1,n2s/word1/word2/g:n1与n2行之间寻找word1这个字符串,并将该字符串取代为word2;1,$s/word1/word2/g:从第一行到最后一行之间寻找word1这个字符串,并将该字符串取代为word2;1,$s/word1/word2/gc:从第一行到最后一行之间寻找word1这个字符串,并将该字符串取代为word2,且在取代前显示提示符给用户确认是否取代;
l x、X分别表示向后、向前删除一个字符
l nx:连续向后删除n个字符
l dd:删除游标所在的那一整列
l ndd:删除光标所在的向下n列
l d1G:删除光标所在到第一行的所有数据
l dG:删除光标所在到最后一行的所有数据
l d$:删除光标所在处,到该行的最后一个字符
l d0:删除游标所在处,到该行的最前面一个字符。
l yy:复制游标所在的那一行
l nyy:复制光标所在的向下n列
l y1G:复制光标所在列到第一列的所有数据
l yG:复制光标所在列到最后一列的所有数据
l y0:复制光标所在的那个字符到该行行尾的所有数据
l y$:复制光标所在的那个字符到该行行尾的所有数据
l p、P:p为将已复制的数据在光标下一行贴上,P为在上一行。
l J:将光标所在列与下一列的数据结合成同一列
l c:重复多个数据
l u:复原前一个动作
l ctr+r:重做上一个动作
以上,红色部分为常用的快捷键。
3.指令列模式下的快捷键:
l :w,将编辑的数据写入硬盘档案中
l :w!,若文件属性俄日只读,强制写入该档案。不过,到底能不能写入,还是跟你对该档案的档案权限有关啊
l :q离开vi
l :q!:若曾修改过档案,又不想存储,使用!为强制离开不存储档案,!在vi中常有强制的意思
l :wq存储后离开,若为:wq!,贼为强制存储后离开
l ZZ,若档案没有变动,则不存储离开,若档案被更改,则储存后离开
l :w [filename]:将编辑储存成另一个档案(类似另存新档)
l :r[filename]:在编辑的数据中,读入另一个档案的数据,亦即将filename这个档案内容加到游标所在行的后面
l :n1,n2 w[filename]:将n1到n2的内容存储成filename这个档案
l :! command暂时离开vi到指令列模式下执行command的显示结果
l :set nu:显示行号,设定之后,会在每一行的前缀显示该行的行号
l :set nonu:取消行号
4.区块选择的意义:v,字符选择,会将光标经过的地方反白选择;V,会将光标经过的行反白选择;ctr+V,区块选择可以用长方形的方式选择资料;y,将反白的地方复制起来;d,将反白的地方删除。
5.多档案编辑,:n,编辑下一个档案;:N,编辑上一个档案;:files,列出目前这个vim的开启的所有档案。
6.多窗口下的按键,:sp [filename] 开启一个新窗口。如果有加filename,表示在新窗口开启一个新档案,否则表示两个窗口为同一个档案内容(同步表示);ctr+w+j,ctr+w+↓:先按住ctr不放,再按下w后放开所有的按键,然后再按下j或向下箭头,则光标可移动到下方的窗口;ctr+w+k,ctr+w+↑:同上,光标移到上一个窗口;ctr+w+q:结束下方的窗口。
7.~/.viminfo用来记录用户编辑的文档信息,使得用户在此启用同一个文档时可以记住上次的操作。
:setall:用来查阅当前vim设定的环境设定参数。
vim:的环境设定参数:
l :set nu、:setnonu,设定或取消行号
l :set hlsearch、setnohlsearch,高亮搜索。这个就是设定是否将搜索的字符串反白的设定值。默认值时hlsearch
l :set autoindent、:setnoautoindent,是否自动缩排
l :set backup、:setnobackup,是否自动备份,一般是nobackup的,如果设定backup的话,那么当你更动任何一个档案时,则原档案会被另存为filename~档案,
l :set ruler,显示不显示右下角的一些状态栏信息。
l :set showmode,是否显示—INSERT—之类的字眼在左下角的状态栏
l :setbackspace=(012),当设定backspace为2时可以在编辑模式下可以删除任意字符,当为0或1时则只能删除刚刚输入的字符
l :set all,显示目前所有的环境变量参数设定值
l :set,显示与系统默认值不同的设定参数
l :syntax on、syntax off,是否依据相关语法显示不同的颜色
l :set bg=dark、set bg=light,可以显示不同的颜***调,预设是light
8.unix2dos和dos2unix这两个指令可以用来将dos下的文本和linux下的文本相互转换
9.将文档转码的指令:
本文出自 “虎哥的博客” 博客,请务必保留此出处http://7613577.blog.51cto.com/7603577/1582650
Vim编辑器