⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vi文本编辑器的使用.txt

📁 LINUX下的安装声卡等操作和技巧介绍
💻 TXT
字号:
作者:何志强
email: hhzqq@chinaweal.com
日期:1999-12-26 下午 10:41:01
1、规则
   vi中命令的规则如下:
      [n] command
   n表示命令重复次数
2、切换模式
   vi有两种模式:插入模式和命令模式。
   在插入模式下,你所键入的字符(除Esc)都将插入到正在编辑的文件中,直到你键入Esc退出插入模式。
   在命令模式下,你可以剪切、粘贴、移动光标、搜索、删除文字、修改文字等,直到你键入i(在光标所在位置插入字符)或a(在光标所在位置后插入字符)进入插入模式。
3、文件操作命令(命令模式)
   :q                            退出(注意必须是对文件没有做任何修改)
   :q!                            不保存最近一次保存后对文件的任何修改并退出
   :w                            保存最近一次保存后对文件的任何修改
   :wq                            保存最近一次保存后对文件的任何修改并退出
   :w <filename>                另存为<filename>(注意<filename>必须不存在)
   :w! <filename>                强制性地另存为<filename>
   :w >> <filename>                追加到<filename>(注意<filename>必须存在)
   :w! >> <filename>            强制性地追加到<filename>
4、光标移动命令(命令模式)
   [n]h                            光标向左移一[n]个字符(不能越过本行)
   [n]Backspace、[n]ctrl-h        光标向左移一[n]个字符(能越过本行)
   [n]l                            光标向右移一[n]个字符(不能越过本行)
   [n]空格                        光标向右移一[n]个字符(能越过本行)
   [n]j、[n]回车、[n]+            光标向下移一[n]行
   [n]k、[n]-、[n]ctrl-p        光标向上移一[n]行
   0、^                            光标移动到本行的第一个字符上
   $                            光标移动到本行的最后一个字符上
   [n]H                            光标移动到本屏幕第1[n]行的第一个字符上
   [n]L                            光标移动到本屏幕从后往前第1[n]行的第一个字符上
   M                            光标移动到本屏幕中间一行的第一个字符上
   :<n>、<n>G                    光标移动到文件的第<n>行的第一个字符上
   [n]|                            光标移动到当前行的第1[n]列
   :$、G                        光标移动到文件的最后一行的第一个字符上
   [n]b、[n]B                    光标移动到光标前一个位置所在的第1[n]个词的第一个字符上
   [n]e、[n]E                    光标移动到光标后一个位置所在的第1[n]个词的最后一个字符上
   [n]w、[n]W                    光标移动到光标所在的下1[n]个词的第一个字符上
   [n](                            光标移动到上1[n]句的第一个字符上
   [n])                            光标移动到下1[n]句的第一个字符上
   [n]{                            光标移动到上1[n]段落的第一个字符上
   [n]}                            光标移动到下1[n]段落的第一个字符上
   [n]ctrl-b                    回到上1[n]页,光标移动到上1[n]页最后一行的第一个字符上
   [n]ctrl-f                    往下滚1[n]页,光标移动到下1[n]页第一行的第一个字符上
   [n]ctrl-d                    若有n则往下滚n行,光标不动,并且设置向下滚的缺省行数为n行,若无n则往下滚动缺省行
   [n]ctrl-e                    往下滚1[n]行,光标不动
   [n]ctrl-u                    若有n则往上滚n行,光标不动,并且设置向上滚的缺省行数为n行,若无n则往上滚动缺省行
   [n]ctrl-y                    往上滚1[n]行,光标不动
5、编辑命令(命令模式)
   a                            从光标下一个位置插入字符
   A                            从光标所在行未插入字符
   i                            从光标所在位置插入字符
   I                            从光标所在行首插入字符
   o                            在光标当前行后插入一新行
   O                            在光标当前行前插入一新行
   [n]dd                        删除从光标所在行开始往下的1[n]行
   [n]D、[n]d$                    删除从光标所在位置开始往下1[n]行
   d^                            删除光标所在前一个位置到行首的字符
   [n]x                            删除从光标所在位置开始向右的1[n]个字符
   [n]X                            删除从光标所在前一个位置开始向左的1[n]个字符
   [n]dw、[n]dW                    删除从光标所在位置开始向右的1[n]个词
   [n]C                            修改从光标所在位置开始向下1[n]行
   [n]cw、[n]cW                    修改从光标所在位置开始向右1[n]个词
   [n]u                            取消前1[n]次所作的修改
   U                            取消对光标所在行的所有修改
   [n]p                            将最近删除的字符或行粘贴到光标所在字符或行后1[n]遍
   [n]P                            将最近删除的字符或行粘贴到光标所在字符或行前1[n]遍
   [n]J                            将光标所在行的下1[n]行移动到光标所在行未
   r<c>                            用<c>代替光标所在位置字符
   R<c...>                        用<c...>代替光标所在位置及其后的若干字符
   s<c...>                        用<c...>代替光标所在位置字符
   S<c...>                        用<c...>代替光标所在行
   [n]xp                        将从光标所在位置开始向右1[n]个字符与后面的字符交换位置
   [n]yw                        将从光标所在位置开始向右1[n]词拷贝到缓冲区
   [n]Y                            将从光标所在行开始向下1[n]行拷贝到缓冲区
   .                            重复上一个修改命令
   [n]:co <n>                    将从光标所在行开始向下1[n]行拷贝到第<n>行后
   [n]:m <n>                    将从光标所在行开始向下1[n]行移动到第<n>行后
   :r <filename>                将文件<filename>插入到当前行后
   [n]<<                        将从光标所在行开始向下1[n]行左移(移动的字符数用:set shiftwidth=<n>来设置)
   [n]<                            将从光标所在行开始向下或上1[n]行左移(移动的字符数用:set shiftwidth=<n>来设置,由Down或Up键来确定向下或上)
   [n]>>                        将从光标所在行开始向下1[n]行右移(移动的字符数用:set shiftwidth=<n>来设置)
   [n]>                            将从光标所在行开始向下或上1[n]行右移(移动的字符数用:set shiftwidth=<n>来设置,由Down或Up键来确定向下或上)
   ~                            切换光标所在字符的大小写
6、搜索命令(命令模式)
   /<pattern>                    在全文范围内向下搜索
   ?<pattern>                    在全文范围内向上搜索
   n                            重复上一个/或?搜索,方向不变
   N                            重复上一个/或?搜索,但方向相反
   f<c>、t<c>                    在当前行中向下搜索一个字符<c>
   F<c>、T<c>                    在当前行中向上搜索一个字符<c>
   ;                            重复上一个f、F、t或T搜索,方向不变
   ,                            重复上一个f、F、t或T搜索,但方向相反
   :<n1>,<n2>g/<pattern>/p        列出<n1>和<n2>行之间符合条件的所有行,:1,$g/compiler/p将列出包含compiler的所有行
   :<n1>,<n2>s/<pat1>/<pat2>/g    用pat2代替<n1>和<n2>行之间符合<pat1>的<pat1>
   :set ignorecase                不匹配大小写
   :set noignorecase            匹配大小写
7、特殊字符(用于搜索)
   ^                            行首(放在一个搜索表达式前)
   $                            行未(放在一个搜索表达式后)
   .                            匹配一个字符
   *                            匹配任何字符
   [...]                        匹配或不匹配一组表达式,如/f[iae]t将匹配fit、fat、fet,而/a[^bcd]将不匹配ab、ac、ad
   \<、\>                        例/\<the\>将匹配the,但不匹配there、other等
8 、其他命令
   ctrl-l                        刷新当前页面
   ctrl-g                        显示当前行号、列号和总行数等信息
   :set、:set all                显示配置信息
   :set nu                        在每一行前显示行号
   :set nonu                    在每一行前不显示行号
   :set list                    显示文件中的特殊字符
   :set nolist                    不显示文件中的特殊字符
   :set shiftwidth=<n>            设置<<(左移)和>>(右移)字符数

参考资料:
   vi Basics
      http://www.msn.fullfeed.com/faq/vi.help
   A Beginner's guide to vi and ex
      http://www.cs.umr.edu/unixinfo/general/packages/viguide.html
   Mastering the VI editor
      http://www.eng.hawaii.edu/Tutor/vi.html
   the VI editor faq
      http://www.edu.physics.uch.gr/~danalis/manuals/vi/faq_frames.html
   VI Lovers Home Page
      http://www.cs.vu.nl/~tmgil/vi.html
   VI Tutorial
      http://ecn.www.ecn.purdue.edu/ECN/Documents/VI/
   vi Reference
      http://www.cs.wustl.edu/~jxh/vi.html
   the VI editor
      http://www.edu.physics.uch.gr/~danalis/manuals/vi/vi_front.html 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -