记录vim中常用的几个操作

入门指南

$ vimtutor
  1. vim中是区分大小写

  2. vim中移动光标

     h  向左移动
    j 向下移动
    k 向上移动
    l 向右移动

    其实使用方向键也是能移动的,但是熟悉后再一些其他的编辑器或者浏览器中也能使用

  3. vim 中删除

     x 删除光标所在的字母
    dw 删除完整的单词不包括后面的标点
    dd 删除整行
    D 删除整行

    2018-4-25

  4. vim中移动行

     :m 12     如果当前行数为第10行,则将当前行移动到第12行
    如果当前行数为第20行,则将当前行移动到第13行 :m 0 将当前行移动到第一行前面 :m $ 将当前行移动到最后一行后面
    :m0 后面的空格可以省略不写
  5. vim中移动多行

     :m5,7m 21 将第5,6,7行移动到第21行
    
     :m5,7m 0 将第5,6,7行移动到第一行前面
    
     :m5,7m $ 将第5,6,7行移动到最后一行后面
    
     :.,.+4m 21 将从当前行开始的5行,移动到21行位置
    
     :,+4m21 和上个命令一样,可以省略.和空格
  6. vim中撤销上一个操作

     u 撤销

    2018-04-26

  7. vim跳到最后一行或者第一行

     G 跳到最后一行
    
     gg 跳到第一行

    2018-04-29

  8. vim跳到指定行

     :6 + 回车  跳到第6行
    
     6G    跳到第6行
    
     6gg   跳到第6行

    2018-05-17

  9. vim进入insert模式

     o 在当前行下方新建一行,并进入insert模式
    
     O 在当前行上方新建一行,并进入insert模式
    
     a 光标移动到当前行行首,并进入insert模式
    
     A 光标移动到在当前行行末,并进入insert模式
  10. vim删除多行

    :[start_line_no],[end_line_no]d
    
    :14d 删除第14行
    
    :3,5d 删除第3到第5行

    2018-05-19

  11. vim复制行 y => yanked

    + yy 或者 Y 复制当前行 
    
    + y[n]w 复制光标后的下一个或n个单词
    
    + y[n]l 复制光标右边下一个或n个字符
    
    + y[n]h 复制光标左边下一个或n个字符
    
    + y$ 复制从光标当前位置到行尾的所有字符
    
    + y0 复制从光标当前位置前一个到行首的所有字符
    
    + :m,ny 复制从第m到第n行
    
    + :my  复制第m行
    
    + y1G 或者 y1gg 复制光标之上所有行
    
    + yG 复制光标之下所有行
  12. vim粘贴

    + p 在当前行下一行粘贴
    + P 在当前行上一行粘贴
  13. vim按单词移动

    + W/w 下一个单词
    + B/b 上一个单词

    2018-06-09

  14. vim快速退出

    + ZQ 快速不保存退出
    + ZZ 快速保存退出

待续...

dhlin-vim-wiki的更多相关文章

  1. Ubuntu下VIM的安装及其配置——Linux篇

    一.Ubuntu系统默认内置: 实际上ubuntu默认没有安装老版本的vi,只装了vim.vi是vim.tiny(vim的最小化版本,不含 GUI,并且仅含有一小部分功能,并且默认与vi兼容.此软件包 ...

  2. 将vim打造成php的IDE开发环境

    将vim打造成IDE开发环境 本文主要介绍将vim打造成IDE开发环境,如代码补全,高亮显示,函数跳转,函数自动注释等 首先介绍2款VIM插件管理器:Vbundle,Pathogen 本文中的vim插 ...

  3. Ubuntu 16.04 Vim安装及配置【转】

    转自:http://www.cnblogs.com/ace-wu/p/6273031.html 安装VIM 默认已经安装了VIM-tiny acewu@acewu-computer:~$ locate ...

  4. Ubuntu 16.04 Vim安装及配置

    安装VIM 默认已经安装了VIM-tiny acewu@acewu-computer:~$ locate vi | grep 'vi$' |xargs ls -al lrwxrwxrwx 1 root ...

  5. vim学习之git for windows

    这是我在博客园的第二篇文章,今晚是在线的特殊日子,应小编的要求不想多讲,喝了点酒,感觉到压力和挑战性,抽了几根烟,现在有点飘飘欲仙的感觉.在长江大学11教的6楼,是长大在线的办公室,这个晚上总是不关灯 ...

  6. vim插件的安装方式 -- vim注释插件和doxygen函数注释生成插件-ctrlp插件-tabular等号对齐 插件

    使用unzip的时候 指定 -d选项, 是说明解压到的 目标地址. 这个参数还是比较方便的, 比直接unzip到当前目录, 然后在去拷贝到目标目录, 然后再删除当前目录中的解压文件夹, 方便多了. 使 ...

  7. VIM - visual selection 模式下的简单操作

    1. 概述 vim 的 visual selection 模式下的简单操作 2. visual selection 模式 概述 可视化选择 可视化选择 vim 的一种专门用来选择的模式 可以提供相对于 ...

  8. vim markdown

    vim 安装vundle插件管理器 https://github.com/VundleVim/Vundle.vim Vundle for windows https://github.com/Vund ...

  9. 学会了 Vim 还有必要用 GitHub Atom 或者 Sublime Text 么?

    亦俊 ,90后,Vim 专栏作者 563 人赞同 Vim 知乎专栏:http://zhuanlan.zhihu.com/hack-vim 用过 [ Visual Studio 2015 ] [ Sub ...

  10. vim 安装

    Ubuntu 16.04 下 Vim安装及配置 默认已经安装了VIM-tiny linuxidc@linuxidc:~$ locate vi | grep 'vi$' |xargs ls -al lr ...

随机推荐

  1. 4 Template层-CSRF

    1.csrf 全称Cross Site Request Forgery,跨站请求伪造 某些恶意网站上包含链接.表单按钮或者JavaScript,它们会利用登录过的用户在浏览器中的认证信息试图在你的网站 ...

  2. MySQL基础9-主键约束、外键约束、等值连接查询、一对一和多对多关系

    1.主键约束和外键约束 外键约束 * 外键必须是另一表的主键的值(外键要引用主键!) * 外键可以重复 * 外键可以为空 * 一张表中可以有多个外键! 概念模型在数据库中成为表 数据库表中的多对一关系 ...

  3. luoguT30204 偷上网

    \(n=1\) 时特判四角,其余时刻圆的面积和必小于正方形面积,随机点出来判断就行了. stm 随机算法-- #include <iostream> #include <cstdli ...

  4. loj2046 「CQOI2016」路由表

    大傻逼trie树,更傻逼的是我这都没独立想出来,以后要少看题解,多多思考 #include <algorithm> #include <iostream> #include & ...

  5. IOS开发---菜鸟学习之路--(二十一)-利用正则表达式解析URL获取其中的参数

    因为项目需要解析URL当中参数的部分,在网上搜索了一下都没有相关的资料. 然后就自己写了一个 其实我就是通过正则表达式来处理URL 进行解析的 好了直接上代码吧 也是非常的简单,大家拷贝过去就可以使用 ...

  6. 程序集链接器(AL.exe)

    AL.exe使用程序可以生成一个EXE文件或者DLL PE文件(其中只包含对其他模块中的类型进行描述的一个清单). 不要在普通的命令行窗口中编译,请先打开C:\ProgramData\Microsof ...

  7. 简单实现nodejs爬虫工具

    约30行代码实现一个简单nodejs爬虫工具,定时抓取网页数据. 使用npm模块 request---简单http请求客户端.(轻量级) fs---nodejs文件模块.   index.js var ...

  8. Oracle 分析函数--Row_Number()

    row_number() over ([partition by col1] order by col2) ) as 别名 表示根据col1分组,在分组内部根据 col2排序 而这个“别名”的值就表示 ...

  9. @SpringBootApplication的扫描范围

    在公共类自定义一个全局异常类,实现全局捕获异常,在另一个服务中调用的时候,发现没有生效 因此我添加了一个@ComponentScan("com.wuhen.jwt.common") ...

  10. 查找docker log久远数据方法

    问题描述: 同事发现几天前运行的一个文件id存在错误,需要查看docker log,但是使用docker logs -f container_id 上下翻很耗费时间. 解决思路: 每条对应的log都会 ...