文档章节

VIM基本用法

小-roc
 小-roc
发布于 2015/11/21 22:09
字数 1031
阅读 17
收藏 0
vim

vim编辑器

vi:Visual Interface
vim: VI improved

全屏编辑器,模式化编辑器

#vim /path/to/somefile

vim模式:
    编辑模式(命令模式) 键入的命令是对整个文档操作
    输入模式             键入的字符写入到文档中
    末行模式    

模式转换:
    编辑模式->输入模式
        i:在当前光标所在字符的前面,转为输入模式
        a:在当前光标所在字符的后面,转为输入模式    
        o:在当前光标所在行的下方,新建一行,并转为输入模式
        
        I:在当前光标所在行的行首,转为输入模式
        A:在当前光标所在行的行尾,转为输入模式
        O:在当前光标所在行的上方,新建一行,并转为输入模式    

    输入模式->编辑模式
        ESC键

    编辑模式->末行模式(在编辑模式下进入末行模式要输入":")
        ":"

    末行模式->编辑模式
        ESC键

一、打开文件
    vim +#:打开文件让光标处于#行
        vim +12 inittab
    vim +filename:打开文件光标处于文件最后一行
        vim + inittab
    vim +/PATTERN:打开文件定位至第一次被PATTERN匹配到的行的行首
        vim +/oot inittab

    打开文件默认处于编辑模式

二、关闭文件
    1、在末行模式下关闭文件
        :q  不保存退出
        :wq(=:x) 保存并退出
        :q! 强行退出
        :w  保存
        :w! 强行退出

    2、在编辑模式下退出
        ZZ(两个大写的Z):保存退出

三、移动光标(编辑模式下)

    1、逐字符移动光标
        h:向左移动
        l:向右移动
        j:向下移动
        k:向上移动
        #h:移动指定数目的字符

    2、逐单词移动
        w:移动到下一个单词的词首
        e:移动到当前单词或下一个单词的词尾
        b:移动到当前或前一个单词的词首
        #w:移动指定数目的字符

    3、行内跳转
        0:跳到行首(绝对行首)
        ^:跳到行首,行首的第一个非空白字符
        $:跳到行尾(绝对行尾)

    4、行间跳转
        #G:跳转至第#行上
        G:最后一行

        末行模式下,直接给出行号即可跳转

四、翻屏操作
    
    ctrl+f:向下翻一屏
    ctrl+b:向上翻一屏
    ctrl+d:向下翻半屏
    ctrl+u:向上翻半屏

五、删除单个字符
    x:删除光标所在处的单个字符
    #x:删除光标所在处及向后的共#个字符

六、删除命令:d
    
    d命令跟跳转命令配合使用
    #d跳转符:删除跳转符的#个字符或单词
    dd:删除当前光标所在行
    #dd:删除当前光标所在行在内的#行

    末行模式下:
        startADD,EndADDd
        .:表示当前行
        $:表示最后一行
        +#:向下的#行
        $-1:倒数第二行

七、粘贴命令:p
    p:如果删除或复制的为整行内容,则粘贴至光标所在行的下方,如果复制或删除的内容为非整行,则粘贴至光标所在字符的后面
    P:如果删除或复制的为整行内容,则粘贴至光标所在行的上方,如果复制或删除的内容为非整行,则粘贴至光标所在字符的前面

八、复制命令:y
    用法同d

九、修改:先删除内容再转换为输入模式
    c:同d 命令

十、替换命令:r
    R:进入替换模式,ESC退出替换模式

十一、撤销编辑操作 undo
    u:撤销前一次编辑操作
        连续u命令可撤销此前的n次操作,最多50次
    #u:撤销最近的#次编辑操作

    撤销最近一次的撤销:ctrl+r

十二、重复前一次的编辑操作
    .:重复前一次的编辑操作

十三、可视化模式
    v:按字符选取
    V:按矩形块选取

十四、查找替换
    /PATTERN
    ?PATTERN
        n:下一个
        N:上一个

十五、查找并替换
    在末行模式下使用s命令 :跟sed命令一样
    ADDR1,ADDR2s@PATTERN@string @gi

© 著作权归作者所有

共有 人打赏支持
上一篇: bash特性
小-roc
粉丝 1
博文 5
码字总数 2777
作品 0
昌平
私信 提问
vimdb

vimdb 是一个用来模拟单个数据库的Vim 插件。 增加你精确查找vim的元素的速度以及对vim的一些了解:keys(keybindings)、可选项、命令。vimdb是vim默认的items,一个在你的vimrc,一个在插件里。...

匿名
2012/03/13
467
0
vim vi IMPROVED

tutorial: 基本操作 更快的编辑 查找 文本块和多类型文件 窗口 基本可视化模式、 程序命令 基本缩略词,键盘地图和初始化文件 基本的命令模式的命令 基本的界面用法 处理文本文件 自动完成 ...

jackdongting
2017/07/31
0
0
HTML代码简写法:Emmet和Haml

HTML代码写起来很费事,因为它的标签多。 一种解决方法是采用模板, 在别人写好的骨架内,填入自己的内容。还有一种就是我今天想要介绍的方法----简写法。 常用的简写法,目前主要是Emmet和H...

阮一峰
2013/06/11
0
0
vim 使用mark插件高亮显示多个单词

Mark 插件用来同时对文本中的多个字串以不同的颜色高亮显示。vim默认的搜索功能也能对字串进行高亮显示,但是只能针对一个字串。该插件有两个版本,一个是Yuheng Xie写的(之后没有更新),另外...

樂天
2014/01/14
0
0
sed学习笔记

vi vim nano属于屏幕编辑器 sed属于流编辑器 sed基本格式: sed 范围 命令 文件 用法1 d删除 删除最后一行 使用$d 用法2 用正则表达式来指明范围 必须用// 用法3 用,隔开表示多行 用法4 用/...

香胖
2015/12/03
33
0

没有更多内容

加载失败,请刷新页面

加载更多

Yearning基于Inception的开源SQL审核平台

基础环境: python3 nodejs vuejs mysql python-ldap pymysql mysql 新建数据库 create database Yearning DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; Navicat导入初始化数据 : ......

以谁为师
13分钟前
0
0
flutter Expanded用法

使用的地方:一个分类,类似京东的,左右两边都可以滑动 Widget build(BuildContext context) { return Row(children: [ Column( children: <Widget>[ Ex......

大灰狼wow
18分钟前
2
0
Java8 Map中新增的方法使用总结

前言 得益于 Java 8 的 default 方法特性,Java 8 对 Map 增加了不少实用的默认方法,像 getOrDefault, forEach, replace, replaceAll, putIfAbsent, remove(key, value), computeIfPresent,......

kaixin_code
27分钟前
1
0
@TransactionConfiguration

@TransactionConfiguration过时与替代写法 @TransactionConfiguration 替代写法

miaojiangmin
29分钟前
0
0
浅谈Vue响应式(数组变异方法)

很多初使用Vue的同学会发现,在改变数组的值的时候,值确实是改变了,但是视图却无动于衷,果然是因为数组太高冷了吗? 查看官方文档才发现,不是女神太高冷,而是你没用对方法。 看来想让女...

开元中国2015
31分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部