Vim 的常用操作

一. vim中的查找替换

  • 修改当前行

    :s/str1/str2/
    

    修改当前行的第一个str1为str2

    :s/str1/str2/g
    

    修改当前行的所有str1为str2

  • 修改第n行到第m行
    :n,ms/str1/str2/
    

    修改第n行到第m行的第一个str1为str2

    :n,.s/str1/str2/
    

    修改第n行到当前行的第一个str1为str2

    :.,ms/str1/str2/
    

    修改当前行到第m行的第一个str1为str2

    :n,$s/str1/str2/
    

    修改第n行到最后一行的第一个str1为str2

ps: 如果是修改行的所有str1str2,后面加g即可

  • 替换每一行

    :%s/str1/str2/
    

    修改每一行的第一个str1为str2

    :1,$s/str1/str2/
    

    修改每一行的第一个str1为str2

ps: 如果是修改行的所有str1str2,后面加g即可

  • vim的替换命令的完整形式

    :[range]s/from/to/[flags]
    

ranges: 上面已经提到了
from: 可以用正则表达式
to: 要替换成的字符创
flags: 如下所示,这几个可以组合使用

无      :  只对指定范围内的第一个匹配项进行替换。
g       :  对指定范围内的所有匹配项进行替换。
c       :  在替换前请求用户确认。
e       :  忽略执行过程中的错误。

二. vim的常用快捷键

  • 跳转

1. 基本的上下左右
j: 上
k: 下
h: 左
l: 右

2. 翻一页
ctrl + f:向前翻一页(forward)
ctrl + b:向后翻一页(backward)

3. 翻半页
ctrl + u:向前翻半页(up)
ctrl + d:向后翻半页(down)

4. 翻一行
ctrl + e: 向下翻一行
ctrl + y: 向上翻一行

5. 跳转到函数和变量的定义处
[ + ctrl + i: 跳到定义处
[ + ctrl + d: 跳到#define处

6. 光标的跳转
ctrl + i: 往前跳
ctrl + o: 往后跳

7. 函数体内的跳转
[{: 跳到函数体首部
]}: 跳到函数体尾部
[[, ]], {{, }}, 调转函数体

8. 跳转单词
b: go to the [b]eginnig of this word
e: go to the [e]nd of this word
w: go to the start of the following word

  • 选中

1. ctrl + v的选中,通过上下左右命令的调整的选中

2. shift + v模式下的选中
vi( : 选中小括号中的内容,不包括小括号
va( : 选中小括号中的内容,包括小括号,下同
vi[
va[
vi{
va{
vi‘
va‘
vi"
va"

*:first-child {
margin-top: 0 !important;
}

body>*:last-child {
margin-bottom: 0 !important;
}

/* BLOCKS
=============================================================================*/

p, blockquote, ul, ol, dl, table, pre {
margin: 15px 0;
}

/* HEADERS
=============================================================================*/

h1, h2, h3, h4, h5, h6 {
margin: 20px 0 10px;
padding: 0;
font-weight: bold;
-webkit-font-smoothing: antialiased;
}

h1 tt, h1 code, h2 tt, h2 code, h3 tt, h3 code, h4 tt, h4 code, h5 tt, h5 code, h6 tt, h6 code {
font-size: inherit;
}

h1 {
font-size: 28px;
color: #000;
}

h2 {
font-size: 24px;
border-bottom: 1px solid #ccc;
color: #000;
}

h3 {
font-size: 18px;
}

h4 {
font-size: 16px;
}

h5 {
font-size: 14px;
}

h6 {
color: #777;
font-size: 14px;
}

body>h2:first-child, body>h1:first-child, body>h1:first-child+h2, body>h3:first-child, body>h4:first-child, body>h5:first-child, body>h6:first-child {
margin-top: 0;
padding-top: 0;
}

a:first-child h1, a:first-child h2, a:first-child h3, a:first-child h4, a:first-child h5, a:first-child h6 {
margin-top: 0;
padding-top: 0;
}

h1+p, h2+p, h3+p, h4+p, h5+p, h6+p {
margin-top: 10px;
}

/* LINKS
=============================================================================*/

a {
color: #4183C4;
text-decoration: none;
}

a:hover {
text-decoration: underline;
}

/* LISTS
=============================================================================*/

ul, ol {
padding-left: 30px;
}

ul li > :first-child,
ol li > :first-child,
ul li ul:first-of-type,
ol li ol:first-of-type,
ul li ol:first-of-type,
ol li ul:first-of-type {
margin-top: 0px;
}

ul ul, ul ol, ol ol, ol ul {
margin-bottom: 0;
}

dl {
padding: 0;
}

dl dt {
font-size: 14px;
font-weight: bold;
font-style: italic;
padding: 0;
margin: 15px 0 5px;
}

dl dt:first-child {
padding: 0;
}

dl dt>:first-child {
margin-top: 0px;
}

dl dt>:last-child {
margin-bottom: 0px;
}

dl dd {
margin: 0 0 15px;
padding: 0 15px;
}

dl dd>:first-child {
margin-top: 0px;
}

dl dd>:last-child {
margin-bottom: 0px;
}

/* CODE
=============================================================================*/

pre, code, tt {
font-size: 12px;
font-family: Consolas, "Liberation Mono", Courier, monospace;
}

code, tt {
margin: 0 0px;
padding: 0px 0px;
white-space: nowrap;
border: 1px solid #eaeaea;
background-color: #f8f8f8;
border-radius: 3px;
}

pre>code {
margin: 0;
padding: 0;
white-space: pre;
border: none;
background: transparent;
}

pre {
background-color: #f8f8f8;
border: 1px solid #ccc;
font-size: 13px;
line-height: 19px;
overflow: auto;
padding: 6px 10px;
border-radius: 3px;
}

pre code, pre tt {
background-color: transparent;
border: none;
}

kbd {
-moz-border-bottom-colors: none;
-moz-border-left-colors: none;
-moz-border-right-colors: none;
-moz-border-top-colors: none;
background-color: #DDDDDD;
background-image: linear-gradient(#F1F1F1, #DDDDDD);
background-repeat: repeat-x;
border-color: #DDDDDD #CCCCCC #CCCCCC #DDDDDD;
border-image: none;
border-radius: 2px 2px 2px 2px;
border-style: solid;
border-width: 1px;
font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
line-height: 10px;
padding: 1px 4px;
}

/* QUOTES
=============================================================================*/

blockquote {
border-left: 4px solid #DDD;
padding: 0 15px;
color: #777;
}

blockquote>:first-child {
margin-top: 0px;
}

blockquote>:last-child {
margin-bottom: 0px;
}

/* HORIZONTAL RULES
=============================================================================*/

hr {
clear: both;
margin: 15px 0;
height: 0px;
overflow: hidden;
border: none;
background: transparent;
border-bottom: 4px solid #ddd;
padding: 0;
}

/* TABLES
=============================================================================*/

table th {
font-weight: bold;
}

table th, table td {
border: 1px solid #ccc;
padding: 6px 13px;
}

table tr {
border-top: 1px solid #ccc;
background-color: #fff;
}

table tr:nth-child(2n) {
background-color: #f8f8f8;
}

/* IMAGES
=============================================================================*/

img {
max-width: 100%
}
-->

时间: 2024-10-09 17:15:50

Vim 的常用操作的相关文章

vim编辑器常用操作

vim文件编辑器常用操作总结: 复制 yy 复制一行 10yy 复制从当前光标所在行到下面的10行 y1G 复制光标所在行至第一行的所有数据 yG  复制光标所在行至最后一行的所有数据 粘贴 p(小写) 粘贴到光标所在行的下一行 P(大写)粘贴到光标所在行的上一行 删除行 dd 删除光标所在的行 10dd 删除光标所在的行到下面10行 删除字符 x(小写) 删除光标所在位置后面的一个字符 x(大写) 删除光标所在位置前面的一个字符 合并行 J(大写) 将当前光标所在行合并到下一行 光标跳转 gg

vim(vi)常用操作及记忆方法

vi(vim)可以说是linux中用得最多的工具了,不管你配置服务也好,写脚本也好,总会用到它.但是,vim作为一个“纯字符”模式下的工具,它的操作和WINDOWS中的文本编辑工具相比多少有些复杂.这里,我根据自己个人的使用经验,整理了一套vim的操作以及记忆的方法,希望对大家的学习有所帮助. VI的三种模式 1,命令模式   2,输入模式   3,末行模式 命令         执行的操作                 记忆方法 :q           退出                

Vim/Vi常用操作(第二版)

周围同事不是用vim就是Emacs,你要是用一ultraedit,你都不好意思跟人家打招呼;什么插件呀,语法高亮呀,拼写检查呀,能给它开的都给它开着,就是一个字儿:酷. 你说这么牛B一东西,怎么着学会也得小半年吧.半年!入门都远着呢,能学会移动光标就不错了,你还别说耗不起,就这还只是左右移动!!! Vim/Vi简介 所有的Linux/UNIX都会默认安装Vi,现在主流的Linux都会给默认安装vim. Vim/Vi是一个功能强大的全屏幕文本编辑器, 是Linux/UNIX上最常用的文本编辑器, 

vim编辑器——常用操作整理

注意:以下的操作都是在命令状态下进行的,不要进入插入状态了 1.删除 dd       删除一行 ndd    删除以当前行开始的n行dw    删除以当前字符开始的一个字符ndw   删除以当前字符开始的n个字符d$.D 删除以当前字符开始的一行字符d)     删除到下一句的开始d}    删除到下一段的开始d回车      删除2行 2.复制粘贴 vi设置自动缩进:set smartindentvi设置显示行号:set number 或 set nu set nonu为取消行号 co:co

vim的常用操作

vim的几种编辑模式 正常模式:可以使用快捷键命令,或按:输入命令行. 插入模式:可以输入文本,在正常模式下,按i.a.o等都可以进入插入模式. 可视模式:正常模式下按v可以进入可视模式, 在可视模式下,移动光标可以选择文本.按V进入可视行模式, 总是整行整行的选中.ctrl+v进入可视块模式. 替换模式:正常模式下,按R进入. 移动 h或退格: 左移一个字符: l或空格: 右移一个字符: j: 下移一行: k: 上移一行: e 后移一个单词 停留在末尾 b 前移一个单词 停留在末尾 ^: 移动

Linux Shell脚本与Vim常用操作笔记

本篇笔记记录最最基本的vim和shell操作. ShellScript能干什么 Shellscript类似与Windows的批处理,可以把很多指令汇总到一起,于是可以很容易地通过一个操作执行多个命令.很轻量,有效率. 在Vim中编写 Vim/Vi编辑器很强大,功能非常多,快捷键.指令更多,只需要知道最常用的就够了. Vi有3种工作模式 1.命令模式 进去之后的默认模式就是命令模式.能接受命令,但是不明文显示. 2.输入模式 命令模式按下a键就进入输入模式(还能按i.o.s等等).按Esc返回命令

vim常用操作和使用技巧

vi是linux与unix下的常用文本编辑器,其运行稳定,使用方便,本文将分两部分对其常用操作技巧和配置进行阐述,其中参考了网上的一些文章,对作者表示感谢 PART1 操作技巧 说明: 以下的例子中 xxx 表示在命令模式下输入 xxx 并回车 以下的例子中 :xxx 表示在扩展模式下输入 xxx 并回车 ()中的命令表示相关命令.[]表示命令等同 在编辑模式或可视模式下输入的命令会另外注明. 移动光标 在 vi 中, 移动光标和编辑是两件事, 正因为区分开来, 所以可以很方便的进行光标定 位和

Linux之——Vim常用操作

Linux之——Vim常用操作 插入命令: 命令 作用 a 在光标所在的字符后插入 A 在光标所在行尾插入 i 在光标所在字符前插入 I 在光标所在行前插入 o 在光标下插入新行 O 在光标上插入新行 定位命令: 命令 作用 :set nu 设置行号 :set nonu 取消行号 gg 到第一行 G 到最后一行 nG 到第n行 :n 到第n行 $ 移动至行尾 0 移动至行首 删除命令: 命令 作用 x 删除光标所在处字符 nx 删除光标所在处后的n个字符 dd 删除光标所在的行,ndd删除n行

VIM常用操作手册

1.多行操作,多行注释,多行取消注释 https://jingyan.baidu.com/article/9c69d48f43ed6d13c8024e7b.html 2.常用操作 https://www.cnblogs.com/Bonker/p/4252340.html 原文地址:https://www.cnblogs.com/Netsharp/p/11562816.html