Neulinge sind neu bei Vim. Ich hoffe, Sie können einige Einführungs-Tutorials empfehlen. Jetzt verwende ich Vim einfach als normalen Editor. Es scheint etwas mühsam zu sein, zum normalen Modus zurückzukehren Gibt es eine einfache Möglichkeit? Zunächst einmal vielen Dank!
用vim 快两年了 看过教程也不少,总的来说还是得自己多练习,当自己觉得有需要的时候,再添加功能。这里分享个看过的最好的教程,出自贴吧的某个朋友,写的很好
零
学会盲打
壹
配置文件先从最简开始,在 伍级 前别考虑配置插件,千万别硬背命令,千万别直接取用别人的配置文件
基本还是长时间待在 insert mode 下,会觉得 vim 也不过尔尔,也不好用,
这个时候,编辑效率可能比用原来的一般编辑器还低,别人问使用什麼编辑器时,
多半会回答:vim 再配一个 nano, kate, kwrite, gedit, geany 或其他 IDE 之类的
贰
养成习惯待在 normal mode(normal 不是白叫的),只有输入时才进入 insert mode,输入完马上 <ESC>
学习 normal mode 下的移动命令,这个时候输入文字标准流程:
这个时候,编辑效应会恢复到和你之前用的普通编辑器一样,甚至有少量提高
叄
学习什麼是 operator(命令 d y c 等),什麼是 motion(所有能移动光标的命令,h j k l w e f t / ? 等等),
学习 operator + motion 的方式,如 ct. (将当前光标到 . (点) 之间的内容删除并进入 insert mode 准备修改)
学习基础的 Ex 命令,:s 什麼的
这个时候,编辑效率开始明显提高,在用其他一般编辑器时,会开始觉得不习惯和低效率
肆
学习 text-objects,知道 operator + text-objects 的方法,可进行手术般精准的定位和修改,
既然你主要用在 c/c++,举一些在这个情况下有用的例子:
ci" (由 change operator 和 text-object i" 组成)
yaB (由 yank operator 和 text-object aB 组成)
gUiw (由 make uppercase operator 和 text-object iw 组成)
这个时候,开始知道为什麼 vim 精确高效,而且并不是因为全键盘无需鼠标
伍
习惯 operator + motion 后,发现 . 命令很好用,多注意使用可重复的命令组合
练习使用书签定位,q 记录宏,使用多个 register,使用 args,使用 buffer
使用其他的 Ex 命令
这个时候,想不起没用 vim 之前的日子是怎麼过来的
陆
开始 map 经常反覆使用的命令,开始写 vimscript,开始知道自己需要什麼样的插件
试推荐几个:
pathogen 或 vundle,tagbar, CtrlP, Gundo, UltiSnips,surround,Syntastic,Conque,ack.vim,vim-commentary,fugitive(如果是 git 用户)
还有不少,但多对 c/c++ 没直接帮助,就不提了
这个时候,对其他编辑器提不起兴趣,或许 emacs 除外
柒
拥有完全个人化的 vimrc,基本进入化境,成为江湖上的传说
常有旁人观察你编辑后,激起雄心壮志想要学 vim,尝试几个小时候因为觉得热键太不"人性化”而放弃,
但偶尔会向人提起他见过江湖上有你这麼一号人物
我使用vim有一年了.日前正要写一个vim的cheat sheet,就提前在这里写下吧。
首先 vim != gvim
1.怎么编辑
任何时候按下ESC键会进入普通模式.普通模式下可以按下: 来输入命令.
普通模式按下i或a 进入插入模式,这时你可以编辑文本。
2.简单编辑
3.更快的编辑
现在你可以用vim写东西了.
我们需要更快的编辑
1.快速的定位光标:
2. 快速的编辑:
在普通模式下:
3. 更精细的粘贴复制:
4. 搜索
普通模式下按下 / 向下搜索, 按下?向上搜索
5.对齐
gg=G 快速对齐整个文件
6.标签操作
7. 切割窗口操作
4.让vim更懂你
有没有注意到我们以上一直没有提到vimrc和插件。
现在到时候了。
比如,我们coding时喜欢显示行号:命令模式下:set nu或者 :set number
关于vimrc, 有很多值得研究商讨的地方,你可以参考下我的vimrc, 我都进行了详细的中文注释
5.关于插件和主题
vim 的配色有三个比较出名,solarized , molokai , badwolf
关于vim 的插件,只有这么几句需要说:
好了,吃饭去。。到此。
无他,唯手熟耳。
另外,
Ctrl-[
也可以退出编辑模式。嗨!我提供一個非常棒的方法:
玩 vim 遊戲!
如果你是使用 Ubuntu 系統,請輸入:
或者透過一個很酷的網頁 vim 遊戲:
vim 冒險家
http://vim-adventures.com/
hey~! 我实在是不知道怎么用 vim, 只有我的手知道. (熟能生巧)
不喜欢用 esc 可以用 <c-c> 或者 <c-[> 效果一样.
多看 vim tips, 多学学各种 vim 插件.
话说回来了, 人家只是个文字编辑器而已, 别本末倒置了.
分割线顺便推荐一个 vim 的插件集合, 叫做 Janus, 它对自己的定义是 Janus: Vim Distribution. 它提供了一个完整的, 必需的 vim 基本设置和大多数人都需要的插件, 以及继续自定义 vim 的解决方案. 多说无益, RTFM.
用vim主要是自己定义各种功能,使用各种插件。 主要是配置vimrc, 你可以参考别人的vimrc,在github上搜索vimrc,比如https://github.com/search?q=vimrc&ref... ,看看别人是怎么配置的,改成自己的就ok了。
esc可以用jj 或者 jk 代替。
看完自带的教程(有中文的,下载链接,下载需要翻墙),但是不用死记硬背,只要记住有哪些功能就可以了。
遇到似乎可以用到这些功能的地方就开始查阅教程,然后慢慢的你查的会越来越少,越来越少,慢慢的你就会了。
举个例子:
如果你想删除foobar ,那么你可以用
ffdw
这个组合命令(f是在一行内查询,后面那个f就是foober 的首字母,这是命令的第一部分,将光标移到foobar这个单词上面,d是删除,w是选中一个词,组合起来就是删除一个词),非常快捷,而且都是简单命令的组合。然后如果你想要处理比较复杂的场景,比如
只把前面的foo 删掉,留下那个bar,这时候虽然vim提供了处理的功能,但是我们不用管,用宏录制的功能(能保存你的操作,你可以简单的重复)把简单的命令组合起来,就可以做很多很复杂的工作了
比如上面这个例子(手头暂时没有Vim,凭记忆可能有错),
这就解决了。
Vim 根本不难,原因在于90%的状况都只要很简单的一些命令的灵活搭配。
剩下10%的状况查教程也很容易知道。你让一个会用Vim的人默写命令,在对比所有的命令,会发现人家只知道很小一部分。
上面的人说的都很详细了,不过对于esc键建议用改键之类的换成Caps Lock这样按起来要方便很多。
据说RMS写Emacs的时候的键盘是这样的
很明显Esc和Control的距离要很舒服的,如果有钱也入一块HHKB吧。
http://vim-adventures.com/
根据vim操作写的小游戏,游戏同时练习vim操作。