background preloader

The ultimate Vim configuration - vimrc

The ultimate Vim configuration - vimrc

简明 Vim 练级攻略 vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的。下面的文章翻译自《Learn Vim Progressively》,我觉得这是给新手最好的VIM的升级教程了,没有列举所有的命令,只是列举了那些最有用的命令。非常不错。 ——————————正文开始—————————— 你想以最快的速度学习人类史上最好的文本编辑器VIM吗?你先得懂得如何在VIM幸存下来,然后一点一点地学习各种戏法。 Vim the Six Billion Dollar editor Better, Stronger, Faster. 学习 vim 并且其会成为你最后一个使用的文本编辑器。 我建议下面这四个步骤: 存活感觉良好觉得更好,更强,更快使用VIM的超能力 当你走完这篇文章,你会成为一个vim的 superstar。 在开始学习以前,我需要给你一些警告: 学习vim在开始时是痛苦的。 第一级 – 存活 安装 vim启动 vim什么也别干! 当你安装好一个编辑器后,你一定会想在其中输入点什么东西,然后看看这个编辑器是什么样子。 启 动Vim后,vim在 Normal 模式下。 现在,你知道如何在 Insert 和 Normal 模式下切换了。 i → Insert 模式,按 ESC 回到 Normal 模式.x → 删当前光标所在的一个字符。 你能在vim幸存下来只需要上述的那5个命令,你就可以编辑文本了,你一定要把这些命令练成一种下意识的状态。 当是,在你进入第二级时,需要再说一下 Normal 模式。 标记: 下面的文字中,如果是 Ctrl-λ我会写成 <C-λ>.以 : 开始的命令你需要输入 <enter>回车,例如 — 如果我写成 :q 也就是说你要输入 :q<enter>. 第二级 – 感觉良好 上面的那些命令只能让你存活下来,现在是时候学习一些更多的命令了,下面是我的建议:(陈皓注:所有的命令都需要在Normal模式下使用,如果你不知道现在在什么样的模式,你就狂按几次ESC键) 花点时间熟悉一下上面的命令,一旦你掌握他们了,你就几乎可以干其它编辑器都能干的事了。 第三级 – 更好,更强,更快 先恭喜你! 更好 下面,让我们看一下vim是怎么重复自己的: . → (小数点) 可以重复上一次的命令N<command> → 重复某个命令N次 更强 更快 结束语

vim7.2中文乱码解决方法 - YY哥 这个问题困扰我几天了。网上查了许久,由于说得不到位,一直没解决,今天又折腾了一下,终于搞定。 1、下载 可到 2、安装 编译之前,先要configure --help查看一下配置选项, --enable-multibyte Include multibyte editing support. 支持多字节编码,这一步很重要。 然后,[root@localhost wbl]# vim --version | grep multi-mouse_jsbterm -mouse_netterm -mouse_sysmouse +mouse_xterm +multi_byte+multi_lang -mzscheme +netbeans_intg -osfiletype +path_extra -perl +postscript查看配置是否起作用。 3、配置 编辑~/.vimrc文件,加上如下几行: set fileencodings=gb2312,gb18030,utf-8set termencoding=utf-8set encoding=prc 即可搞定。 附(Vim编码详细介绍): Vim和所有的流行文本编辑器一样,Vim 可以很好的编辑各种字符编码的文件,这当然包括 UCS-2、UTF-8 等流行的 Unicode 编码方式。 Vim 有四个跟字符编码方式有关的选项,encoding、fileencoding、fileencodings、termencoding (这些选项可能的取值请参考 Vim 在线帮助 :help encoding-names),它们的意义如下:(1)encoding: Vim 内部使用的字符编码方式,包括 Vim 的 buffer (缓冲区)、菜单文本、消息文本等。 来看看 Vim 的多字符编码方式支持是如何工作的。 由于 Unicode 能够包含几乎所有的语言的字符,而且 Unicode 的 UTF-8 编码方式又是非常具有性价比的编码方式 (空间消耗比 UCS-2 小),因此建议 encoding 的值设置为 utf-8。

拼装的艺术:vim之IDE进化实录 - a byte of free HTML版本停止更新,最新版仅提供PDF( 更新时间2012-9-5,最新版本0.3,更新记录: 完善“一键编译及运行”部分,增加如何查看链接错误。 KenThompson告诉我们——“一个程序只实现一个功能,且做到极致,多个程序协作实现复杂任务”——这是unix。 这个时代,上规模的软件项目已不可能用简单的文本编辑器完成,IDE是必然选择。 linux上存在两种编辑器:神之编辑器—emacs,编辑器之神—vim。 对于vim的喜爱,我无法用言语表述,献上一首vi的湿哥哥(-_-#)以表景仰之情: 我心之禅如同vi之大道, vi之漫路即为禅修, vi之命令如禅之心印, 未得此道者视之怪诞, 与之为伴者洞其真谛, 长修此道者巨变人生。 ——作者:reddy@lion.austin.com, 译作:yangyang.gnu@gmail.com OK,言归正传,说说vim用于代码编写提供了哪些直接和间接功能支撑。 我是个“目标驱动”的信奉者,本文内容,我会先给出优秀IDE应具备哪些功能,再去探索如何通过vim的操作或插件来达到目标。 (图0:图形环境下IDE总揽) (图1:纯字符模式下IDE总揽) 在介绍功能IDE应具备的功能之前,先说说vim插件相关事宜。 vim插件目前分为两类:*.vim和*.vba。 vimsomeplugin.vba :so% :q 另外,后面涉及到的各类插件,只介绍了我常用的操作,有时间,建议看看它们的帮组文档(:hsomeplugin)。 [-注释与反注释-] 注释时到每行代码前输入//,取消注释时再删除//,这种方式不是现代人的行为。 插件名:c-support.vim常用操作:\cc,用CPP语法风格注释掉选中文本块或当前行\co,取消选中文本块或当前行的CPP语法风格注释注意:由于C风格注释有“嵌套注释”风险,我都用CPP风格注释。 此外,有时需要asciiart风格注释,推荐如下插件: 插件名:DrawIt.vim常用操作::DIstart,开始绘制结构化字符图形 :Distop,停止绘制结构化字符图形空格,绘制或擦出字符 (图2:asciiart风格注释) [-全能补全-] 提升编码效率的王牌功能就是智能补全。 对于第一类补全,也可以借助c-support.vim实现。 \pd #define

Vim常用操作动画演示 - 李恺的明天 vaw select a word viw select inner word va{ select a block 其中花括号{ 可以替换成 '、"、[、]、(、)等 vi{ select inner block 其中花括号{ 可以替换成 '、"、[、]、(、)等 vab select a block 只作用于()内 vib select inner block 只作用于()内 vaB select a block 只作用于{}内 viB select inner block 只作用于{}内 vat select a tag block vit select inner tag daw delete a word diw delete inner word dgn delete next search result dab delete a block ( dib delete inner block ( daB delete a block { diB delete inner block { dVG delete to last line from current line [( go to previous 其中括号(可替换成{ [{ go to previous 如上 surround.vim surround.vim在normal mode时主要就下面三种操作 ysiw' 添加单引号 其中引号'可替换为任何标签比如常用的"、(、[等 cs'" 修改单引号为双引号 其中引号'可替换为任何标签比如常用的"、(、[等 ds" 删除双引号 其中引号"可替换为任何标签比如常用的'、(、[等 surround.vim html标签操作演示 cst\<em\> 修改标签为em dst 删除标签 surround.vim在insert mode和visual mode下 insert mode下surround.vim提供了<C+S>快捷键用于插入标签,终端下是<C+S>g visual mode下按大写S对选中内容插入标签 最后你可以fork我的vim配置

Avoid the escape key This tip discusses how to exit from insert mode without needing to press Esc. The Vi editor was originally written on an ADM-3A terminal, which had the Escape key positioned where the Tab key occurs on most modern keyboards. Many touch typists appreciate the fact that they can leave their hands on the keyboard home row while using Vim, so there are several ideas for avoiding the Esc key at its current location (pressing Esc generally requires stretching to the top of the keyboard). No utility programs or operating system tweaks are required for this tip. For other suggestions involving mapping keys with the operating system or utilities, see Map caps lock to escape in XWindows (for Unix-based systems), or Map caps lock to escape in Windows (for Windows). Some of the suggestions involve more than avoiding escape; topics also discussed include using the CapsLock key for Ctrl, and avoiding irritations from accidental use of CapsLock. Avoiding the Esc key Edit Mappings :imap jj <Esc> Edit Edit <!

我的vim配置及说明【k-vim】 - wklken的笔记 这是倒数第二篇文章了,新博客即将完成 折腾整理了下,自己的vim配置,托管github,支持一键部署 有插件说明,截图及动态gif展示 点击直达 以下为README.md,供参考,希望有帮助 vim插件分类及快捷键 给人一条Vim 命令,他能折腾一晚上;告诉他怎么自定义Vim 命令,他能捣腾一辈子生命不息,折腾不止 写在前面 用vim,将近两年,用原生的用了很长一段时间,后来也折腾过几次,用过网上流行的配置,但总感觉很多地方不能满足需求. PS: 这个vim配置是我的linux_config下一个一部分,如果需要,可以参考,主要是一键配置环境 vim基本用法 初学者: vim训练稿两年前的三月份,第一次开始使用vim,后来整理了一份,对着敲几遍 推荐: 耗子叔的 简明vim练级攻略 或者,玩游戏 vim大冒险 使用说明 使用原生vim,最好先熟悉了再来看插件,插件之所以为插件,辅助性质以下插件,仅介绍用途优点等,详细配置可以在github中搜索查看详细用途和配置当前vim使用配置,在vimrc中查看快捷键为插件默认/或者当前配置vimrc定义的,如果需要修改,查看vimrc中对插件配置进行修改 [sd]为自定义 [d]为默认有什么问题,先看插件文档说明->代码选项->github上的issues->google it相信我,你遇到的问题,一定别人也遇到了,大部分可解决,少部分无解….二八定律,关注可以最大提升自身生产力的那20%插件,如何配置,还需要自己去亲自实践由于平时会使用python和golang,所以语言方面的配置偏向于这两个其它的可以参照网上配置(通用的插件可以配置,具体语言插件需要自己去研究)fork一份搞一份符合自己习惯的vim配置,当然,欢迎推荐好用更酷的插件配置:)我的配置也会不定期更新 配置步骤 截图 solarized主题 molokai主题 自定义快捷键说明 以下快捷键中== F1 关掉,防止跳出帮助 F2 set nu/nonu F3 set list/nolist F4 set wrap/nowrap F5 set paste/nopaste F6 syntax on/off 空格 /开启查找 Y =y$ 复制到行尾 w!! 插件及其快捷键说明 图片有点多,展示有点慢,截得不是很专业,耐心看完:) 插件管理 导航及搜索

CentOS6.4之文本编辑器Vi/Vim - 王乾De技术博客 - 51CTO技术博客 Vim/Vi 简介 Vim/Vi是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最常用的文本编辑器,它的作用是建立、编辑、显示文本文件。 Vim/Vi 没有菜单,只有命令。 插入命令 定位命令 删除命令 复制和剪切命令 替换和取消命令 搜索和替换命令 :%s/IRCU/ircu/g :9127,9131s/ircu/IRCU/g (不询问替换) :9127,9131s/ircu/IRCU/c (询问替换) 保存和退出命令 应用实例 ? ? ? 前两者结合使用 ? 范例: : map ^P I#<ESC> : map ^B 0x ? ^尖角号表示行首 :n1,n2s/^#//g 去掉行首注释 :n1,n2s/#//g 去掉所选行全部#号注释 :n1,n2s/^/\/\//g “\”转义符 ? 取消替换 unab 51blog

Related: