Vim练级笔记(持续更新)

漫漫练级路...作为一个VS重度依赖患者,又加上visual assist X 这种懒人必备的神级插件,转投vim门下,真是各种疼...

vim用着用着就有拿鼠标去点的冲动,有木有啊!

不过经过一段时间的使用,慢慢感受到vim那深不可测的强大....

?

(emacs什么鬼,,,)

下面就说说我的练级历程,

?

第一课,

先从一个非常好的资料开始?简明Vim练级攻略, 英文原版在这里Learn Vim Progressively. 非常好的资料,介绍了vim最基础最常用的功能,就像文章说的, 先存活下来...

  • i → Insert 模式,按 ESC 回到 Normal 模式.
  • x → 删当前光标所在的一个字符。
  • :wq → 存盘 + 退出 (:w 存盘, :q 退出) ??可以直接用:x,如果打开了多个窗口可以使用:qa或者:xa
  • dd → 删除当前行,并把删除的行存到剪贴板里
  • p → 粘贴剪贴板
  • 推荐:
  • hjkl (强例推荐使用其移动光标,但不必需) →你也可以使用光标键 (←↓↑→). 注: j 就像下箭头。
  • a → 在光标后插入
  • o → 在当前行后插入一个新行
  • O → 在当前行前插入一个新行
  • cw → 替换从光标所在位置后到一个单词结尾的字符
  • 0 → 数字零,到行头
  • ^ → 到本行第一个不是blank字符的位置(所谓blank字符就是空格,tab,换行,回车等)
  • $ → 到本行行尾
  • g_ → 到本行最后一个不是blank字符的位置。
  • /pattern → 搜索 pattern 的字符串(陈皓注:如果搜索出多个匹配,可按n键到下一个)
  • P → 粘贴
  • yy → 拷贝当前行当行于 ddP
  • u → undo
  • <C-r> → redo
  • :e <path/to/file> → 打开一个文件
  • :w → 存盘
  • :saveas <path/to/file> → 另存为 <path/to/file>
  • :x, ZZ 或 :wq → 保存并退出 (:x 表示仅在需要时保存,ZZ不需要输入冒号并回车)
  • :q! → 退出不保存 :qa! 强行退出所有的正在编辑的文件,就算别的文件有更改。
  • :bn 和 :bp → 你可以同时打开很多文件,使用这两个命令来切换下一个或上一个文件。(陈皓注:我喜欢使用:n到下一个文件)
  • NG → 到第 N 行 (陈皓注:注意命令中的G是大写的,另我一般使用 : N 到第N行,如 :137 到第137行)
  • gg → 到第一行。(陈皓注:相当于1G,或 :1)
  • G → 到最后一行。
  • :sp 将当前文件分为上下两栏(两栏中显示的是同一个文件, 方便长文件的编辑)
  • :vnew 竖直分栏,分为左右两栏,并在另一个分栏中新建一个文件
  • <C-w>加j/k/h/l 切换到窗口上/下/左/右 (多窗口的操作)

这些是目前掌握的和常用的功能.

NerdTree命令

  • ctrl+w+h ?光标focus左侧树形目录,ctrl+w+l 光标focus右侧文件显示窗口。多次摁 ctrl+w,光标自动在左右侧窗口切换
  • s ? ? ? vsplit 一个新窗口打开选中文件,并跳到该窗口

?

关于vim配置

插件

参考了这篇文章将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相),非常详细,非常强大!

后面自己安装了SuperTab(就像名字说的那样,,,), c.vim(c++文件常用功能),?delimitMate(自动配对),?vim-surround(添加配对符号<,[,{,(等等),?vim-color-solarized(经典配色主题),?YouCompleteMe(超级强大的自动补全插件,就是配置有点复杂)

?

?

vim键映射

http://www.cnblogs.com/softwaretesting/archive/2011/09/28/2194515.html

?

用:make命令 调用cmake/wmake

在.vimrc插入

?

:set makeprg=wmake

?

?

?

?

?

?

?

?

?

?

时间: 2024-10-14 21:16:31

Vim练级笔记(持续更新)的相关文章

BLE资料应用笔记 -- 持续更新

BLE资料应用笔记 -- 持续更新 BLE 文档 小书匠 蓝牙 4.0 ●分Single mode与Dual mode. ●Single mode只能与BT4.0互相传输无法向下兼容(与3.0/2.1/2.0无法相通);Dual mode可以向下兼容可与BT4.0传输也可以跟3.0/2.1/2.0传输 ●超低的峰值.平均和待机模式功耗,覆盖范围增强,最大范围可超过60米. ●速度:支持1Mbps数据传输率下的超短数据包,最少8个八组位,最多27个.所有连接都使用蓝牙2.1加入的减速呼吸模式(sn

Sqlserver 笔记 持续更新

1.sp_spaceused : sp_spaceused table_name --------------------------------------------------------------------------------------------- name  rows  reserved  data  index_size  unused table_name 16470592  36315696KB  35796160KB  519432KB  104KB name  -

IAP(In-App Purchase) 集成笔记-持续更新

IAP(In-App Purchase) 集成笔记-持续更新 IAP的集成已经有很多教程,包括apple官方的说明,足够详细,但其过程中一些坑免不了要遇到,总结一些经验,避免绕弯路.和apple打交道的模式永远不是技术为主,而是如何了解规则,应对规则 我的App该不该集成IAP? 大多数App不需要集成IAP,除非类似游戏道具,金币.或者App的功能的全部或者部分依赖于其他虚拟服务和商品,或者硬件,而这些如果需要购买,必须集成IAP.除了游戏类,特定设备的客户端,比如某个支持认证的WiFi热点A

【阅读笔记】计算机网络 第五版 阅读笔记(持续更新)

计算机网络 第五版阅读笔记 第一章 概述 1.因特网的组成 边缘部分:由所有连接在因特网上的主机组成 核心部分:由大量网络和连接这些网络的路由器组成 2.计算机之间的通信方式 客户服务器端方式(C/S模式):客户端是服务请求方,服务器端是服务提供方 对等方式(P2P模式):平等,对等连接通信,每一个主机既是客户又是服务器. 3.电路交换,分组交换和报文交换 3.1 电路交换:建立连接(占用通信资源)->通话(一直占用)->释放连接(释放通信资源). 优点:在通话的全部时间内,通话的两个用户始终

Git学习笔记(持续更新)

强制同步为远程的代码 远程仓库回退了commit的情况下(第2条描述之情况),强制同步远程的代码到本地 #更新远程最新的所有代码,但是不merge或者rebase git fetch --all #直接reset到master,也就把刚才fetch的更新了 git reset --hard origin/master 回退版本 #回退本地版本git reset --hard <commit_id>#强制提交到服务器 git push origin HEAD --force 新建分支和远程分支

H5填坑笔记--持续更新

最近一直在做移动端的页面,发现很多的坑,这里做一下总结,填填坑…… css常见的问题(一) 一.iOS键盘首字母自动大写 IOS的机子,默认英文输入法状态下,首字母是自动大写的,有时候挺烦人的. 在iOS中,默认情况下键盘是开启首字母大写的功能的,如果业务不想出现首字母大写,可以这样: <input type="text" autocapitalize="off" /> 二.iOS输入框默认内阴影和样式问题 在iOS上,输入框默认有内部阴影,但无法使用

web前端开发随手笔记 - 持续更新

本文仅为个人常用代码整理,供自己日常查阅 html 浏览器内核 <!--[if IE]><![endif]--> <!--[if IE 6]><![endif]--> <!--[if gte IE 7]><![endif]--> <!--[if lte IE 7]><![endif]--> <!--[if !IE]><![endif]--> <!--[if !(lte IE 7)]

vim 命令总结(持续更新)

工作三年,一直处在半命令行,半IDE的状态,慢慢的总结一部分,便于以后使用. [基本] 1. tab 在新标签中打开文件 :tabedit filename vim 从 vim7 开始加入了多标签切换的功能, 相当于多窗口. :tabnew 打开新的tab(Ctrl+N新建标签页,Ctrl+T在新标签页中打开选定的文件) :tabclose 关闭当前的tab(Ctrl+W) :tabonly 关闭所有其他的tab(Ctrl+Shift+W ) vim不区分ctrl+shift+字母和ctrl+字

读《Oracle从入门到精通》笔记--持续更新中

第一章 Oracle 11g概述 1.6节 启动与关闭数据库实例 启动数据库: Startup [nomount|mount|open|force][resetrict][pfile=filename] 解释:nomount ---> 表示启动实例不加载数据库 mount ---> 表示启动实例.加载数据库并保持数据库的关闭状态 open ---> 表示启动实例.加载并打开数据库(默认选项) force ---> 表示终止实例并重新启动数据库 resetrict  --> 用