• vim程序编辑器


    1、vim编辑器的特点:

      a. 所有的UNIX Like 系统度会内置vi文本编辑器,其他的文本编辑器,其他的文本编辑器则不一定会存在。

      b. 很多软件的编辑接口都会主动调用vi;

      c. vim具有程序编辑能力, 可以主动以字体颜色辨别语法的正确性,方便程序设计,vim可以视作vi的高级版本, 可以用颜色或底线等方式来显示一些特殊的信息。

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

    2、 vim的三种模式:

      a. 一般模式

        以vi打开一个文件就直接进入一般模式(默认的模式)。可以上下移动光标,删除字符或删除整行,也可以复制、粘贴你的文件数据,但无法编辑文件内容。

      b. 编辑模式

        按下“i ,I,o,O,a,A,r,R”等任一个字母之后才会进入编辑模式, 界面的左下方会出现INSERT或REPLACE的字样。再按下【Esc】按键即可退出编辑模式,回到一般模式

      c、命令行模式

        输入“:,/,?”3个中的任一个按钮,就可以将光标移动到最下面那一行

        此模式中,可以提供你的查找数据的操作,而读取、保存大量替换字符、离开vi、显示行号等的操作则是在此模式中完成的。

      一般模式可用的按钮说明, 光标移动,复制粘贴,查找替换:

        

    移动光标的方法
    h或<- 向左移动一个字符
    j或向下箭头键 向下移动一个字符
    k或向上箭头键

    向上移动一个字符

    l或向右箭头键 光标向右移动一个字符
    [ctrl]+f  向下移动一页
    [ctrl]+b 向上移动一页

    [ctrl]+d

    向下移动半页
    [ctrl]+ u 向上移动半页
    + 光标移动到非空格符的下一行
    - 光标移动到非空格符的上一行
    n<space> 那个n表示“数字”,例如20.按下数字键再按空格键,光标会向右移动这一行的n个字符
    0或功能键[Home] 数字“0”:移动到这一行的最前面字符处
    $或功能键[End] 移动到这一行的最后面字符处
    H 光标移动到这个屏幕的最上方那一行的第一个字符
    M 光标移动到这个屏幕的中央那一行的第一个字符
    L 光标移动到这个屏幕的最下方的那一行的第一个字符
    G 移动到这个文件的最后一行
    nG n为数字。移动到这个文件的第n行。
    gg 移动到文件的第一行,相当于1G
    N[Enter] n为数字。光标向下移动n行
       
    查找与替换
    /word 向下寻找一个名称为Word的字符串
    ?word 向上寻找一个名为word的字符串
    n 重复前一个查找的操作
    N 为“”反向“进行前一个查找操作”
    :n1, n2s/word1/word2/g

    n1与n2为数字。在第n1与n2行之间寻找word1这个字符串,并将该字符串替换为word2.

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

                              

    删除、复制与粘贴
    x,X 在一行字当中,x为向后删除一个字符(相当于[Del]按键),X为向前删除一个字符(相当于[Backspace])
    nx n为数字,连续向后删除n个字符。
    dd 删除光标所在的那一整行
    ndd

    n为数字。删除光标所在的向下n行

    d1G 删除光标所在到第一行的所有数据
    dG 删除从光标所在到最后一行的所有数据
    d$ 删除从光标所在处到该行的最后一个字符
    d0 那个是数字的0,删除从光标所在处到该行的最前面一个字符
    yy 复制光标所在的那一行
    nyy

    n为数字。复制光标所在的向下n行。

    y1G 复制光标所在行到第一行的所有数据
    yG 复制光标所在行到最后一行的所有数据
    y0 复制光标所在的那个字符到该行行首的所有数据
    y$ 复制光标所在的那个字符到该行行尾的所有数据
    p,P p为将已复制的数据在光标下一行粘贴,P则为粘贴在光标上一行
    J 将光标所在行与下一行的数据结合成同一行
    c 重复删除多个数据,例如向下删除10行,【10cj】
    u 复原前一个操作
    【ctrl】+r 重做上一个操作
    . 小数点.  重复前一个操作的意思。

      一般模式切换到编辑模式的可用的按钮说明:

        

    进入插入或替换的编辑模式
    i,I

    进入插入模式(insert mode):

      i为从目前光标所在处插入, I为在目前所在行的第一个非空格符处开始插入

    a,A

    进入插入模式(insert mode):

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

    o,O

    进入插入模式:

      o为在目前光标所在的下一行处插入新的一行;O为在目前光标所在处的上一行插入新的一行

    r,R

    进入替换模式:

      r只会替换光标所在的那一个字符一次;R会一直替换光标所在的文字,直到按下[ESC]键为止

    [ESC] 退出编辑模式,回到一般模式

        一般模式切换到命令行模式的可用的按钮说明:

      

    命令行的保存、离开等命令
    :w 将编辑的数据写入硬盘文件中
    :w! 若文件属性为“只读”时,强制写入该文件。不过,到底能不能写入,还是跟你对该文件的文件权限有关啊
    :q 离开vi
    :q! 强制离开vi不保存文件
    !在vi当中经常具有“强制”的意思
    :wq 保存后离开
    ZZ 若文件没有变动,则不保存离开,若文件已经被更动过,则保存后离开
    :w[filename] 将编辑的数据保存到另一个文件里
    :r[filename] 在编辑的数据中,读入另一个文件的数据,即将“filename”这个文件内容加到光标所在行后面
    :n1,n2 w [filename] 将n1行至n2行的内容保存成filename这个文件
    :! command 暂时离开vi到命令模式下执行command的显示结果。例如“:! ls/home” 即可在vi当中查看/home下面以ls输出的文件信息。
    :set nu 显示行号
    :set nonu 取消行号

    3、块选择(Visual Block)

        

    块选择的按键意义
    v 字符选择,会将光标经过的地方反白选择
    V 行选择,会将光标经过的行反白选择
    [Ctrl]+v 块选择,可以用长方形的方式选择数据
    将反白的地方复制起来
    d 将反白的地方删除

    4、多文件编辑

      

    多文件编辑的按键
    :n 编辑下一个文件
    "N 编辑上一个文件
    :files 列出目前这个vim的打开的所有文件

    5、多窗口功能

      

    多窗口情况下的按键功能
    :sp[filename] 打开一个新窗口,如果有加filename,表示在新窗口打开一个新文件,否则再按下两个窗口为同一个文件内容(同步显示)

    [ctrl]+w+j

    [ctrl]+w+down键

    按键的按法:先按下[ctrl]不放,再按下w后放开所有的按钮,然后再按下j(或向下箭头键),则光标可移动到下方的窗口

    [ctrl]+w+k

    [ctrl]+w+up键

    同上,不过光标移动到上面的窗口
    [ctrl]+w+q 其实就是:q结束离开。举例来说,如果我想要结束下方的窗口,那么利用[ctrl]+w+down键移动到下方窗口后,按下:q即可离开,也可以按下[ctrl]+w+q

    6、vim 环境设置与记录: ~/.vimrc, ~/.viminfo

      整体vim的设置值一般是放置在/etc/vimrc这个文件中,不过

    vim的环境设置参数

    :set nu

    :set nonu

    就是设置与取消行号

    :set hlsearch

    :set hlsearch

    是否将查找的字符串反白的设置值

    :set autoiindent

    :set noautoindent

    是否自动缩排,autoindent就是自动缩排
    :set backup 表示是否自动保存备份文件,一般是nobackup的,如果设置backup的话,那么当你改动任何一个文件时,则原文件会被另存成一个文件名为filename~的文件
    :set ruler 显示或不显示状态栏说明
    :set showmode 是否显示--INSERT--之类的字眼在左下角的状态栏
    :set backspace=(012) 当backspace为2时,就是可以删除任意值;为0或1时,仅可删除刚才输入的字符,而无法删除原本就已经存在的文字了
    :set all 显示目前所有的环境参数设置值
    :set 显示与系统默认值不同的设置参数,一般来说就是你有自行变动过的设置参数

    :syntax on

    :syntax off

    表示是否依据程序相关语法显示不同颜色。

    :set bg=dark

    :set bg=light

    可以以显示不同的颜色色调,默认是light。

    7、语系编码转换

        iconv  --list

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

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

        -f: form, 后接原本的编码格式

        -t: to, 即后来的新编码要是什么格式

        -o file: 如果需要保留原本的文件, 那么使用-o 新文件名, 可以建立新编码文件。

  • 相关阅读:
    Could not resolve com.android.support:appcompat-v7:28.0.0 错误处理
    解决 Could not resolve com.android.tools.build:gradle:3.1.3
    https://maven.google.com 连接不上的解决办法(转)
    jquery操作select(取值,设置选中)
    django 使用 request 获取浏览器发送的参数
    jquery下载,实时更新jquery1.2到最新3.3.1所有版本下载
    myeclipse 8.5反编译插件失效
    再探java基础——对面向对象的理解(2)
    庖丁解牛FPPopover
    去大连
  • 原文地址:https://www.cnblogs.com/SamLXW/p/6113585.html
Copyright © 2020-2023  润新知