Vim的三种工作模式

  • 命令行模式
  • 插入模式
  • 底行模式

Vim 的命令行模式

命令行模式是进入vim后的初始模式,在该模式下主要是使用方向键来移动光标的位置,并通过相应的命令来进行文字的编辑。
切换方法:
在插入模式下按Esc键,或是在底行模式下按Esc键,或是在底行模式下执行了错误的命令,vim都会自动回到命令行模式。

命令行模式中常用的操作命令

  • 移动光标的常用命令

    命令 操作说明
    h 向左移动光标
    l 向右移动光标
    j 向下移动光标
    k 向上移动光标
    ^ 将光标移动到该行的开头(指第一个非空字符上)
    $ 将光标移动到该行行尾,与键盘上的End间功能相同
    0 将光标移动到该行行首,与键盘上的home键功能相同
    G 将光标移动到文档最后一行的开头(第一个非空字符)
    nG 将光标移动到文档的第n行的开头(第一个非空字符)
    g 将光标移动到文档的第1行的开头(第一个非空字符)
    w 将光标向后移动一个字(单词)
    nw 将光标向后移动n个字(单词),n为正整数
    b 将光标向前移动一个字(单词)
    nb 将光标向前移动n个字(单词),n为正整数
    e 将光标移动到本单词的最后一个字符,如果光标所在的位置为本单词的最后一个字符,则跳到下一个单词的最后一个字符
    { 将光标移动到前面的“{”处,C语言编程时很实用
    } 将光标移动到后面的“}”处
    Ctrl + b 向上翻一页,相当于Page Up
    Ctrl + f 向下翻一页,相当于Page Down
    Ctrl + u 向上移动半页
    Ctrl + d 向下移动半页
    Ctrl + e 向下翻一行
    Ctrl + y 向上翻一行
  • 复制粘贴的常用命令

    命令 操作说明
    yy 复制光标所在行的整行内容
    yw 复制光标所在单词的内容
    nyy 复制从光标所在行开始 向下的n行内容,n为正整数,表示复制的行数
    nyw 复制从光标所在的字开始向后的n个字,n为正整数,表示复制的字数
    p 粘贴,将复制的内容粘贴在光标所在的位置
  • 删除文本的常用命令

    命令 操作说明
    x 删除光标所在位置的字符,同键盘上的Delete键
    X 删除光标所在位置前的一个字符
    nx 删除光标所在位置及其之后的n-1个字符,n为正整数
    nX 删除光标所在位置及其之前的n-1个字符,n为正整数
    dw 删除光标所在位置的单词
    ndw 删除光标所在位置及其之后的n-1个单词,n为正整数
    d0 删除当前行光标所在位置之前的所有字符
    d$ 删除当前行光标所在位置之后的所有字符
    dd 删除光标所在行
    ndd 删除光标所在行及其向下的n-1行,n为正整数
    nd + 上方向键 删除光标所在行及其向上的n行,n为正整数
    nd + 下方向键 删除光标所在行及其向下的n行,n为正整数
  • 其他常用命令

    命令 操作说明
    r 替换光标坐在位置的字符,例如 rx 是指将光标所在位置的字符替换为x
    R 替换光标所到之处的字符,直到按下Esc键为止
    u 表示恢复功能,即撤销上一次操作
    U 取消对当前行所做的所有改变
    . 重复执行上一次的命令
    ZZ 保存文档后退出vim编辑器
    % 符号匹配功能,在编辑时若输入“%(”,系统会自动匹配相应的“)”

Vim 的插入模式

命令行模式切换至插入模式的命令

命令 操作说明
i 从光标所在位置开始插入新的字符
I 从光标所在行的行首开始插入新的字符
a 从光标所在位置的下一个字符开始插入新的输入字符
A 从光标所在行的行尾开始插入新的字符
o 新增加一行,并将光标移动到下一行的开头,并在此开始插入字符
O 在当前行的上面新增加一行,并将光标移动到上一行的开头,并在此开始插入字符

Vim的底行模式

在命令行模式下输入冒号“:”,或者是使用“?” 和 “/”键,就可以进入底行模式了。

底行模式下的常用命令

命令 操作说明
q 退出vim程序,如果对文件进行过修改,则必须先保存文件
q! 强制退出vim而不保存文件
x (exit) 保存文件并退出vim
x! 强制保存文件并退出vim
w (write) 保存文件,但不退出vim
w! 对于只读文件,强制保存修改的内容,但不退出vim
wq 保存文件并推出vim, 同x

Linux中的代码编辑器vim的更多相关文章

  1. Linux常用命令——文本编辑器Vim

    Linux常用命令--文本编辑器Vim Linux  Vim常用操作 插入命令 a 在光标所在字符后插入 A 在光标所在行尾插入 i 在光标所在字符前插入 I 在光标所在行首插入 o 在光标下插入新行 ...

  2. 本机修改虚拟机linux中的代码文件

    最近在研究swoole这个框架,好不容易装了一个swoole,为了开发方面,需要早宿主机和虚拟机之间文件共享,一开始使用vmware tool可以实现共享,但是只能在linux中看到win共享的文件, ...

  3. 自学Linux Shell10.1-使用编辑器vim

    点击返回 自学Linux命令行与Shell脚本之路 10.1-使用编辑器vim 所有的 Unix系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在.但是目前我们使用比较多的是 vim 编辑 ...

  4. Linux中 SonarQube代码质量管理平台以及C++插件安装

    SonarQube是管理代码质量一个开源平台,可以快速的定位代码中潜在的或者明显的错误. SonarQube安装 1.环境准备 (1)sonarQube 下载地址https://www.sonarqu ...

  5. linux中的vi编辑器(一)

    1.在linux中如果两个用户都在打开一个文件进行编辑,那么文件最后将以最后保存的版本为主. 2.vi仅仅是一个文本编辑器,相当于windows中的记事本,vi的工作模式, 命令模式:在该模式下,在键 ...

  6. 【Linux】中默认文本编辑器 vim 的入门与进阶

    Linux 基本操作 vim 篇 vim 简介 vim 是 Linux 上最基本的文本编辑工具,其地位像是 Windows 自带的记事本工具,还要少数的 Linux 系统自带 leafpad 编辑器, ...

  7. linux 学习5 文本编辑器 vim

    vim 没有菜单,只有命令 //root用户既可以用vi,也可以用vim, 无实质性区别,vim是vi的升级版//粘贴用shift+insert , 要在insert模式下粘贴,否则粘贴不全// ^ ...

  8. LINUX中,Vi编辑器的几种模式及保存、退出等命令

    vi编辑器有三种模式: 命令模式,编辑模式,末行模式 打开vi后首先是命令模式,用i,o,a等进入编辑模式,按esc退出编辑模式,回到命令模式. 在命令模式下输入:wq表示保存退出,:wq!强制保存退 ...

  9. Linux中 SonarQube代码质量管理平台安装

    SonarQube是管理代码质量一个开源平台,可以快速的定位代码中潜在的或者明显的错误. SonarQube安装 1.环境准备 (1)sonarQube 下载地址https://www.sonarqu ...

随机推荐

  1. MVC execl 导入导出

    MVC execl 导入导出 <input id="xls" name="xls" type="file" style="w ...

  2. 学习.NET好书推荐

    我之前看过很多书,最近也买了些新书,无论已经看过的,还是正准备要看的,我都做了收藏.这些书涉及面较为广泛,都是平时看社区文章和技术杂志时收藏的,全部来自技术达人和架构师们的推荐,经过我的综合评估(销量 ...

  3. iOS中MD5加密字符串实现

    1.MD5加密 Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护.该算法的文件号为RFC 1321 ...

  4. css 引入方式以及css的选择器

    一.css的引入方式: 1.行内样式 <div> <p style="color: red">我是一个段落</p> </div> 2 ...

  5. jQueryMobile(三)

    五].jQueryMobile工具栏 头部.尾部的定位:data-position='inline' 默认data-position='fixed' 固定在头部/尾部data-fullscreen=' ...

  6. 将Android工程打成jar包之后对资源的调用。

    Android工程不能完整的打包成jar包.这个主要是R文件导致的,但是我们可以将除了资源文件中的所有东西都打到jar包中.Activity.View等等类. 提供jar包的同时,还需要提供资源文件. ...

  7. 夜色的 cocos2d-x 开发笔记 00

    第一次写博客,本人还是大二学生,纯新手,无论是文章的技术性,还是参考性,都不高,但却是根据我的经历,开发过的真实过程,对自己记载一些备忘的笔记,更希望也能帮到一些人. 本人用的win7 + vs201 ...

  8. python模块详解 hashlib

    hashlib模块 用于加密相关的操作,在python3中替代了md5和sha模块,主要提供SHA和MD5算法. MD5 import hashlib m = hashlib.md5() #调用md5 ...

  9. MyEclipse 相关配置操作、问题处理及快捷键说明

    MyEclipse傻瓜式安装不做介绍,试用期结束后破解操作见博客:MyEclipse 2014 破解补丁及激活步骤 以下为安装完MyEclipse后一般需要进行的一些配置,写来自己参考用.比较简陋,望 ...

  10. 用yum rpm 快速安装zabbix agent

    用yum 快速安装zabbix agent. wget http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.2-1.el7 ...