鸟哥私房菜 第十章 vim程序编辑器

vim程序编辑器

 

为什么要学vim

        所有的Unix Like系统都会内置vi文本编辑器;

        所有软件的编辑接口都会主动调用vi

        vim具有程序编辑的能力;

        程序简单,编辑速度相当快。

 

vi的使用

        一般vi共分为3个模式:一般指令模式、编辑模式和命令行模式。

        一般指令模式:以vi打开一个文件就直接进入一般指令模式了(默认的),这个模式中你可以移动光标,删除字符或整行,也可以复制、粘贴文件数据。

                常用的按键说明:

                        h,j,k,l分别和左下上右键相同:光标向左,下,上,右移动一个字符;

                        Ctrl+fPage Down:屏幕向下移动一页;

                        Ctrl+bPageUp:屏幕向上移动一页;

                        0Home:移动到这一行最前面的字符处;

                        $End:移动到这一行最后免得字符处;

                        G:移动到文件最后一行;

                        gg:移动到这个文件的第一行,相当于1G

                        n+Entern为数字,光标向下移动n行;

                        :n1,n2s/word1/word2/gn1,n2为数字。在第n1n2行之间寻找word1这个字符串,并将该字符串替换为word2

                        :1,$s/word1/word2/gc:从第一行到最后一行查找word1字符串,并将该字符串替换为word2;且在替换前显示提示字符给用户确认;

                        x,X:在一行字当中,xDel为向后删除一个字符,XBackspace为向前删除一个字符;

                        dd:删除光标所在那一整行;

                        n+ddn为数字,向光标所在位置后连续删除n行;

                        yy:复制光标所在那一行;

                        PpP将已复制的数据粘贴在光标上一行,p为在光标下一行粘贴;

                        u:复原前一个操作;

                        Ctr+r:重做上一个操作。

 

        编辑模式:在一般模中可以进行删除、复制和粘贴等操作,但没有办法编辑文件内容。要按下‘i,I,o,O,a,A,r,R’等任何一个字母之后才能进入编辑模式,左下方出现INSERTREPLACE等字样。按ESC可退出编辑模式。

        一般命令模式切换到编辑模式的按钮说明:

                I,I:进入插入模式,i为从光标当前位置插入,I为在目录所在行的第一个非空格符处开始插入;

               a,A:进入插入模式,a为从目前光标所在的下一个字符处开始插入,A为从光标所在行的最后一个字符处开始插入;

               o,O:进入插入模式,o为在目标光标所在的下一行处插入新的一行,O为在目标光标所在处的上一行插入新的一行;

               r,R:进入替换模式,r只会替换光标所在位置的字符一次,R会一直替换光标所在的文字,直到按下Esc键为止。

        命令行模式:在一般模式输入‘: ,/ ,?’3个中任何一个按钮就可以将光标移到最下面一行。再这个模式下你就可以做例如保存、显示行号或者离开vi等操作了。

                :w:将编辑的数据写入硬盘中;

                :q:离开vi

                :q!:强制离开vi,不保存文件;

                :wq:保存后离开,若为wq’则为强制保存后离开;

                :set nu:显示行号;

                :set nonu:取消行号。

                为防止系统宕机或者发生意外导致vim文件没有保存,当我们在使用vim的时候,vim会在被编辑文件的目录下新建一个名为filename.swp文件。

vim的功能

        块选择的按键意义

                v:字符选择,会将光标经过的地方反色选择;

                V:行选择;

               Ctrl+v:块选择,可以用长方形的方式来选择数据;

                y:将反色的地方复制下来;

                d:将反色的地方删除。

        多文件编辑的按键

                :n:编辑下一个文件;

                :N:编辑上一个文件;

                :files:列出目前这个vim的打开的所有文件。

        多窗口功能

                如果想要在新窗口启动另一个文件,就加入文件名,否则仅输入:sp时,出现的则是同一文件在两个窗口间。

                多窗口情况下的按键功能:

                         :sp [filename]:打开一个新窗口;

                         Ctrl+w+j:先按下Ctrl不放,再按下w后放开所有按键,然后再按下j(或下箭头),则光标可移动到下方的窗口;

                         Ctrl+w+k:同上,不过光标可移动到上方窗口;

                         Ctrl+w+q:结束离开。

        vim的环境设置可以写入~/.vimrc文件中。

        可以使用iconv进行文件语系编码的转换。

                iconv --list 

                iconv -f 原本编码 -t 新编码 filename [-o newfile]

                        --list:列出iconv支持的语系数据;

                        -ffrom,后接原本的编码格式;

                        -tto,新编码要什么格式;

       使用dos2UNIXUNIX2dos可以变更文件每一行的行尾断行字符。

                dos2UNIX [-kn] file [newfile]

                UNIX2dos [-kn] file [newfile]

                        -k:保留该文件原本的mtime时间格式;

                        -n:保留原文件,将转换后的内容输出到新文件。

 

你可能感兴趣的:(鸟哥私房菜,读书笔记)