我的第一篇博客,凌晨2点加班不想睡,随便写点。本人菜鸟一个,努力学习,争取成为大神。。

第一篇写点什么东西呢,我目前是搞运维的,俗话说"工欲善其事必先利其器",Vim作为最基本的工具,正好这两天整理了一下,就写点关于vim的吧。

标题叫做原生态vim,原生态什么意思呢,就是说不安装任何插件的意思。。。。好了,废话不说了,上干货!!!!

原文相关链接:

1.http://coolshell.cn/articles/1679.html vim分屏使用相关介绍

2.http://coolshell.cn/articles/11312.html 无插件vim编程技巧

3.http://coolshell.cn/articles/5426.html/comment-page-9#comments vim练级攻略

vim练级攻略中将vim使用分成的四个阶段,因此本次文档也将按照这个四个阶段进行梳理,四个阶段分别是:

1.存活(初级入门);

2.感觉良好;

3.觉得更好,更强,更快;

4.使用VIM的超能力;

一.存活(初级入门)

1.vim模式介绍

  1) Normal模式, 启动vim以后自动进入Normal模式
2) Insert模式, 按下i键进入insert模式,此时屏幕左下角出现 -- INSERT -- 字样。在此模式下你可以像用"笔记本"那样,
ESC键返回Normal模式
2.快捷键介绍 i -> insert模式, 按ESC返回Normal模式
x -> 删除当前光标所在的一个字符
:wq -> 保存并退出
dd -> 剪切光标所在的行
p -> 粘贴剪贴板 推荐:
hjkl在Normal模式下,使用hjkl分别代表←, ↓, ↑,方向键进行光标移动。
:help <command> -> 显示相关命令的帮助。你也可以就输入:help而不跟命令,使用:q退出

二.感觉良好阶段

本阶段介绍的命令全部都在Normal模式下使用。若果你不知道什么是Normal模式,请看第一阶段,或者多按几次ESC键

1.各种插入模式快捷键
a -> 在光标后插入
A -> 在光标行最后插入
o -> 在当前行后插入新的一行
O -> 在当前行前插入新的一样
I -> 在当前行的最前面插入
cw -> 替换从光标所在位置后到一个单词结尾的字符 2.简单的移动光标
0 -> 数字零, 到行头
^ -> 到本行第一个不是blank字符的位置(所谓blank字符就是空格, tab, 换行, 回车等)
$ -> 到本行行尾
g_ -> 到本行最后一个不是blank字符的位置
/pattern -> 搜索pattern的字符串(如果搜索出多个匹配, 可按n键到下一个, N键到上一个) 3.拷贝/黏贴
P -> 粘贴,当前光标行的上一行
p -> 粘贴,当前光标行的下一行
yy -> 拷贝当前行

三.更好,更强,更快

1.更好
. -> 小数点,可以重复上一次的命令
N<command> -> 重复某个命令N次 2.更强
NG -> 到第N行,也可以使用:N,比如:3,跳到第三行
gg -> 到第一行
G -> 到最后一行
w -> 到下一个单词的开头
e -> 到下一个单词的结尾
如果你认为单词是默认方式,那就么就用小写e和w。默认上来说,一个单词有字母,数字和下划线组成
如果认为单词是由blank字符分隔, 那么你需要使用大写的E和W
*和# -> 匹配光标当前行所在的单词, 移动光标到下一个(或上一个)匹配单词 3.更快
一定要记住光标的移动,因为很多命令都可以和这些移动光标的命令连动。
<start position><command><end position>
例如: 0y$命令意味着
0 -> 先到行头
y$ -> 从这里开始拷贝, 到本行最后一个字符结束
ye -> 从当前位置拷贝到本单词的最后一个字符
y$ -> 从当前位置拷贝到本行最后一个字符
v$ -> 选中当前位置到本行最后一个字符
gU -> 选中的字符变大写
gu -> 选中的字符边小写 字符含义介绍:
d -> 删除
v -> 可视化的选择

四.Vim超能力

1.在当前行上移动光标: 0, ^, $, f, F, t, T
0 -> 数字零, 到行头
^ -> 到本行第一个不是blank字符的位置(所谓blank字符就是空格, tab, 换行, 回车等)
$ -> 到本行行尾
fa -> 到下一个为a的字符处, 你也可以fs到下一个为s的字符
t, -> 到逗号前的第一个字符。逗号也可以是其他字符
3fa -> 在当前行查找出第三个出现的a
F和T -> 和f和t作用是一样,只不过光标移动的方向相反
dtd ->删除所有的内容,直至遇到d字符 2.区域选择<action>a<object>或<action>i<object>
action可以是任何的命令,如d(删除), y(拷贝), v(可视化模式选择)
object可能是: w一个单词, W一个以空格为分隔的单词, s一个句子, p一个段落, 也可以是一个特别的字符 )、]、}等 假设你有一个字)符串(map (+) ("foo")). 而光标键在第一个o的位置.
vi" -> 会选择foo "
va" -> 会选择"foo" "
vi) -> 会选择 "foo"
va) -> 会选择 ("foo")
v2i) -> 会选择 map (+) ("foo")
v2a) -> 会选择 (map (+) ("foo")) 3.块操作
典型的块操作: 0 Ctrl+v Ctrl+d I 进入Insert模式 ESC 4.自动提示
Ctrl+N 和 Ctrl+P
在Insert模式下,你可以输入一个单词的开头,然后按Ctrl+N或者是Ctrl+p, 自动补齐功能就出现了. 5.vim分屏操作
1)分屏启动
a.使用大写的O参数来垂直分屏
vim -On file1 file2 file3 ...
b.使用小写的o参数来水平分屏
vim -on file1 file2 file3 ...
注释: n是数字, 表示分成几个屏幕
2)关闭分屏
Ctrl+W c
3)分屏
a.上下分割当前打开的文件
Ctrl+W s
b.上下分割,并打开一个新的文件
:sp filename
c.左右分割当前打开的文件
Ctrl+W v
d.左右分割,并打开一个新的文件
:vsp filename
4)移动光标
a.把光标移到右边的屏幕
Ctrl+W h
b.把光标移到左边的屏幕
Ctrl+W l
c.把光标移到上面的屏幕
Ctrl+W k
d.把光标移到下面的屏幕
Ctrl+W j
5)分屏同步移动
要让两个分屏中的文件同步移动,很简单,你需要同步移动的两个屏中都输入如下命令
:set scb
如果你需要解开,那么输入下面的命令
:set scb! 6.vim操作一个目录
直接vim一个目录,你会进入一个页面,通过j,k键进行上下移动,进入一个目录或者打开一个文件。
- -> 到上一级目录
D -> 删除文件(大写)
R -> 改在文件名(大写)
s -> 对文件排序
x -> 执行文件
:cd <dir> -> 改变当前目录
:pwd -> 查看当前目录 7.保存会话
如果你打开了好些个文件,还设置了各种滚屏同步,或者是行号等等,那么,你可以用下面的命令来保存会话:
:mksession ~/.mysession.vim
如果文件重复,vim默认会报错,如果你想强行写入的话,你可以在mksession后面加上!
:mksession! ~/.mysession.vim
于是下次,你可以这样打开这个会话:
vim -S ~/.mysession.vim 差不多上面这些掌握了使用vim就很流畅了,不建议一次性全记住,可以每天学习2个快捷键。
下一篇,准备介绍tmux这个运维神器。

原生态Vim使用快捷键的更多相关文章

  1. vim使用快捷键

    vim使用快捷键 索引 1. 关于Vim 1.1 Vim的几种模式 2. 启动Vim 3. 文档操作 4. 光标的移动 4.1 基本移动 4.2 翻屏 4.3 标记 5. 插入文本 5.1 基本插入 ...

  2. Vim命令快捷键(网摘)

    Vim命令快捷键(网摘) 原文出处:[?---->home]

  3. 一些常用的vim编辑器快捷键:

    一些常用的vim编辑器快捷键: h」.「j」.「k」.「l」,分别控制光标左.下.上.右移一格. 按「ctrl」+「b」:屏幕往“后”移动一页. 按「ctrl」+「f」:屏幕往“前”移动一页. 按「c ...

  4. VIM常用快捷键(转载)

    移动光标 h,j,k,l 上,下,左,右 ctrl-e 移动页面 ctrl-f 上翻一页 ctrl-b 下翻一页 ctrl-u 上翻半页 ctrl-d 下翻半页 w 跳到下一个字首,按标点或单词分割 ...

  5. Mac下Vim编辑快捷键小结(移动光标)

    Mac下Vim编辑快捷键小结(移动光标) 1.移动到行尾"$",移动到行首"0"(数字),移动到行首第一个字符处"^" 2.移动到段首&qu ...

  6. [转贴] VIM 常用快捷键 --一直记不住

    vim 常用快捷键  原帖地址: https://www.cnblogs.com/tianyajuanke/archive/2012/04/25/2470002.html 1.vim ~/.vimrc ...

  7. vim的快捷键

    vim的快捷键 (〇)3中模式之间的切换 默认在命令模式. i键,从命令模式,进入插入模式. 冒号(:)键,从命令模式,进入末行模式. Esc键,从插入模式.末行模式,进入命令模式. (一)命令模式下 ...

  8. [转帖]VIM常用快捷键

    VIM常用快捷键 https://www.cnblogs.com/markleaf/p/7808817.html 快捷键能够显著的提高工作效率 一.移动光标 h,j,k,l 上,下,左,右ctrl-e ...

  9. vs 中 vim vax 快捷键

    高效率移动 在插入模式之外 基本上来说,你应该尽可能少的呆在插入模式里面,因为在插入模式里面VIM就像一个“哑巴”编辑器一样.很多新手都会一直呆在插入模式里面,因为这样易于使用.但VIM的强大之处在于 ...

随机推荐

  1. tenserflow models包的安装 123

    1.下载 models包 https://github.com/tensorflow/models 2.将models包拷贝到本机Python包的安装地址即可,本机Python包的安装地址的查看方式可 ...

  2. Java实现GUI计算器【代码】

    这几天用java写了一个计算器程序,开始写的时候原本只是想实现一下GUI(这个是直接读三个字母还是什么“固椅”的发音)界面,熟悉一下Java GUI 编程,为Java期末大作业练练手,本以为代码不会很 ...

  3. Fly Vim, First-Class

    http://corner.squareup.com/2013/08/fly-vim-first-class.html Engineers at Square use a wide variety o ...

  4. MVC3 之asp.net 与vb.net 互转练习

    vb.net mvc3相关教程http://www.asp.net/mvc/overview/older-versions/getting-started-with-aspnet-mvc3/vb/ad ...

  5. 数据库 update select 多列操作

    最常用的update语法是:  UPDATE <table_name>  SET <column_name1> = <value>, SET <column_ ...

  6. halcon之共线连接union_collinear_contours_xld

    union_collinear_contours_xld 很多时候当我们用edges_sub_pix, threshold_sub_pix  等算子得到边缘后,因为有噪声.物体本身断裂等原因 很多边缘 ...

  7. scrollTop和scrollLeft属性

    外层元素的高度值是200px,内层元素的高度值是300px.很明显,“外层元素中的内容”高过了“外层元素”本身.当向下拖动滚动条时,有部分内容会隐没在“外层元素的上边界”之外,scrollTop就等于 ...

  8. nginx详细应用

    一.nginx的基本功能 基本Http服务,可以作为Http代理服务器和反向代理服务器,支持通过缓存加速访问,可以完成简单的负载均衡和容错,支持包过滤功能,支持SSL 高级Http服务,可以进行自定义 ...

  9. Http协议——Header说明

    下图是我用IE的开发人员工具截取的一个Http Request请求的Header. 下图是我用IE的开发人员工具截取的一个Http Response的Header. header常用指令 header ...

  10. RF/GBDT/XGBoost/LightGBM简单总结(完结)

    这四种都是非常流行的集成学习(Ensemble Learning)方式,在本文简单总结一下它们的原理和使用方法. Random Forest(随机森林): 随机森林属于Bagging,也就是有放回抽样 ...