vim常见操作

复制

yank, y

  • yy:复制整行 nyy/yny

  • y^/y0:复制当前行到行头的内容

  • y$:复制当前到行尾的内容

  • yw:复制一个word nyw/ynw 复制n个word

  • yG:复制到文档结尾 nyG/ynG :删除当前光标所在行到第n行

剪切(删除)

delete, d

操作类似于复制,此处不赘述

  • dd

  • dj/dk:删除上/下一行

  • d^/d0

  • d$=D

  • dw

  • daw:删除当前字符所在单词

  • dG

  • x:删除当前光标所在字符,相当于delete

    X:删除光标前一个字符,相当于backspace

    nx/nX

粘贴

put, p

  • p:小写p代表贴至游标后,整行复制贴在游标下行

  • P:大写P代表贴至游标上,整行复制贴在游标上方

tips:

u:撤回上一个动作

ctrl + r:恢复上一个动作

.:重复上一个动作

选择

v:按行选择

ctrl+v:按块选择

全选:ggvG/ggVG (gg是为了回到文档第一行)

选中之后可按y复制或者d剪切,然后p粘贴

移动光标

  • ctrl + f:向下移动一页

  • ctrl + b:向上移动一页

  • 0/home:移动到本行最前面

  • $/end:移动到本行行尾

  • G:移动到文档最后一行

  • gg:移动到文档第一行

  • nG:n为数字,移动到文档的第n行

  • n<enter>:n为数字,光标向下移动n行

  • h/j/k/l 左/上/下/右移动

  • nh/j/k/l n为数字

搜索替换

  • /<word>:向光标之下搜索字符串<word>

  • ?<word>:向光标之上寻找字符串<word>

  • *:向后(下)寻找游标所在处的单词

  • #:向前(上)寻找游标所在处的单词

  • fx 找到光标后第一个为x的字符 3fd 找到光标后第三个为d的字符

    F 同f,反向查找。

    tips:

    • 配合n/N使用向上/下继续查找要搜索的word

    • :set ignorecase 不区分大小写 :set smartcase:区分大小写

    • 若想只在查找某个字符串时忽略大小写,只需在字符串前加\c,如:/\cword;大小写铭感则是/\Cword

    • /word\>表示只匹配以word为结尾的单词;/\<word表示只匹配以word为开头的单词;/\<word\>表示匹配完整的word这个单词

  • cc:替换本行,即删除当前行并在此行插入

  • cw:替换本单词,即删除当前单词并在此插入

  • ~:反转游标所在字母的大小写

  • :s/word1/word2/ 替换当前行第一个 word1为 word2

    :s/word1/word2/g 替换当前行所有 word1为 word2

  • :n1,n2s/word1/word2/:在n1-n2行搜索,,每一行的第一个word1用word2替代

    :n1,n2s/word1/word2/g:在n1-n2行搜索,所有word1用word2替代

  • :%s/word1/word2/(等同于 :g/word1/word2/) 替换每一行的第一个 word1为 word2

    :%s/word1/word2/g(等同于 :g/word1/word2/g) 替换每一行中所有 word1为 word2

  • :.,+ns/word1/word2/g:n为数字,表示在当前行以及+n中进行替换

  • :1,$s/word1/word2/g或者:%s/word1/word2/g:第一行到最后一行搜索word1并用word2替代

  • :1,$s/word1/word2/gc或者:%s/word1/word2/gc:第一行到最后一行搜索word1并用word2替代,替代前需要用户确认是否替换

conclusion:

g 放在命令末尾,表示对搜索字符串的每次出现进行替换;不加 g,表示只对搜索字符串的首次出现进行替换;g 放在命令开头,表示对文档中所有包含搜索字符串的行进行替换操作。

vim 环境调整

  • :set nu/number 显示行号

  • :set nonu 不显示行号

  • :set smartindent 自动缩进

vim的常见操作的更多相关文章

  1. 超级编辑器--VIM的常见操作

    如下,都是我常用的 删除单词:  d + w 关闭vim窗口:   :q   或者 shift + zz 全部向左移: shift + v  --->  shift + <   ---&g ...

  2. Linux常见操作

    前面的话 本文将详细介绍Linux常见操作 基本概念 Linux严格区分大小写,所有内容以文件形式保存,包括硬件 Linux没有扩展名的概念,不靠扩展名来区分文件类型.但有一些约定俗成的扩展名 压缩包 ...

  3. mongodb数据库安装及常见操作

    客户端和服务端的安装 # rpm -ivh mongo-10gen-2.4.6-mongodb_1.x86_64.rpm mongo-10gen-server-2.4.6-mongodb_1.x86_ ...

  4. github常见操作和常见错误及其解决办法

    一.常见操作 1. 使用git在本地创建一个项目的过程 $ makdir ~/hello-world //创建一个项目hello-world $ cd ~/hello-world //打开这个项目 $ ...

  5. vim 常用的操作指令

    vim(vi improve).命令行下的一些常见操作: 移动光标: 0:将光标移动到该行的最前面: $:将光标移动到该行的最后面: G:移动到最后一行的开头: {/}:将光标移动到前面或者后面的{/ ...

  6. 动态单链表的传统存储方式和10种常见操作-C语言实现

    顺序线性表的优点:方便存取(随机的),特点是物理位置和逻辑为主都是连续的(相邻).但是也有不足,比如:前面的插入和删除算法,需要移动大量元素,浪费时间,那么链式线性表 (简称链表) 就能解决这个问题. ...

  7. C#路径/文件/目录/I/O常见操作汇总

    文件操作是程序中非常基础和重要的内容,而路径.文件.目录以及I/O都是在进行文件操作时的常见主题,这里想把这些常见的问题作个总结,对于每个问题,尽量提供一些解决方案,即使没有你想要的答案,也希望能提供 ...

  8. X-Cart 学习笔记(四)常见操作

    目录 X-Cart 学习笔记(一)了解和安装X-Cart X-Cart 学习笔记(二)X-Cart框架1 X-Cart 学习笔记(三)X-Cart框架2 X-Cart 学习笔记(四)常见操作 五.常见 ...

  9. 转:jQuery 常见操作实现方式

    http://www.cnblogs.com/guomingfeng/articles/2038707.html 一个优秀的 JavaScript 框架,一篇 jQuery 常用方法及函数的文章留存备 ...

随机推荐

  1. Spring源码阅读 之 bean的注册

    在前面我们已经学习了配置的加载,读取,解析.现在我们已经能够将一份配置转变成对应的一个个beandefinition了,我们知道Spring是一个IOC的容器,那么我们如何将这个一个个beandefi ...

  2. 手把手教你进行Scrapy中item类的实例化操作

    接下来我们将在爬虫主体文件中对Item的值进行填充. 1.首先在爬虫主体文件中将Item模块导入进来,如下图所示. 2.第一步的意思是说将items.py中的ArticleItem类导入到爬虫主体文件 ...

  3. README.md编写

    一.标题写法: 第一种方法: 1.在文本下面加上 等于号 = ,那么上方的文本就变成了大标题.等于号的个数无限制,但一定要大于0个哦.. 2.在文本下面加上 下划线 - ,那么上方的文本就变成了中标题 ...

  4. threading模块—Python多线程编程

    Threading 模块 threading 模块除了提供基本的线程和锁定支持外,还提供了更高级别.功能更全面的线程管理.threading 模块支持守护线程,其工作方式是:守护线程一般是一个等待客户 ...

  5. mysql连表查空,查询第二张表中没有第一张表中的数据

    select consumer_id,user_name,mobile,invite_code from csr_consumer where invite_count<(select coun ...

  6. mysql计算

    select @csum := 0;select create_time,merchant_id,award as 奖励,total_count as 数量,(@csum := @csum + awa ...

  7. Spring Boot 之 Spring Batch 批处理实践

    实践内容 从 MariaDB 一张表内读 10 万条记录,经处理后写到 MongoDB . 具体实现 1.新建 Spring Boot 应用,依赖如下: <!-- Web 应用 --> & ...

  8. 题解 P4296 【[AHOI2007]密码箱】

    由题意有 \(x^2\equiv 1\;mod\;n\) 对题目的公式进行变形 \(x^2-1=k\times n\) \((x+1)(x-1)=k\times n\) 由唯一分解定理,我们构造\(a ...

  9. javascript----放大模式

    放大模式 1.介绍:放大模式降低模块之间直接的联系,降低耦合,当一个模块出现错误,不会影响另一个模块的功能

  10. 【雕爷学编程】MicroPython动手做(07)——零基础学MaixPy之机器视觉

    机器视觉 machine vision机器视觉是人工智能正在快速发展的一个分支.机器视觉作为生产过程中关键技术之一,在机器或者生产线上,机器视觉可以检测产品质量以便将不合格的产品剔除,或者指导机器人完 ...