• Vim
Vim
转载自 http://wiki.hotoo.me/Vim.html
-
Vim
-
简介
-
精准广告投放
-
教程
-
选项(Options)
-
编码(Encoding)
-
字体(fonts)
-
映射(Mapping)
-
外观(Theme,Color Scheme)
-
Syntax
-
Indent & Formats
-
插件(Plugins)
-
技巧 (Tips)
-
其他技巧 (Tips)
-
Cheat Sheet
-
集合
-
Vim 脚本开发
-
延伸阅读
-
原生 Vim
-
Vim Like
-
Vim Games
-
书籍(Books)
-
社区
-
简介
我是
Vim
爱好者(但不排斥
Emacs),这里收录一些Vim相关的文字。
Vim 是什么?如何下载、安装之类的本身很简单,而且网络上有诸多的介绍,这里不再赘述。至于为什么使用 Vim?我就不劝你了。
传说 Vim 的学习曲线很陡,确实如此。不过越是陡峭,只要持续付出,每前进一点,就越是有成倍的提升,这是好事。
这里是
我的个人 Vim 项目
,包含有配置文件、部分插件及根据自身习惯改写的资源文件。项目目录结构基本保持和vim安装目录一致,里面有一个 Addons 目录] ,主要用来放置和 Vim 有关,但不适合放在 Vim 安装目录中的资源或工具文件。
我的大部分设置及插件都可以从 vimrc 中看出端倪,另外也可以参考我的
Blog。
-
Vim7 的新功能
-
程序员的编辑器——VIM(zz) — (有一些不错的介绍和资源链接,有时间整理到本页) ^2^
-
EMACS 对 vi:永无止境的圣战
2
en
-
贫穷的VIM作者Bram Moolenaar
en
-
Vi-IMproved
-
Coming Home to Vim
精准广告投放
希望相互交流学习, *欢迎加入 Vim 的 GTalk 群*
另外我发起了一个 *”Vim 脚本
文档中文计划“* ,欢迎有热忱、有兴趣的朋友参与。
教程
选项(Options)
编码(Encoding)
字体(fonts)
-
My Settings
-
Windows下的Gvim使用微软雅黑字体
-
可以使用任何字体的gvim for windows
-
苹果的 Courier 字体不错
-
Windows 下 gVim 的雅黑字体配置
-
HOW TO:
使用 ClearType 增强屏幕字体
-
Vim 字体设置
Windows gvim 启动时默认激活最大化。
au GUIEnter * simalt ~x
参考
:h gui-win32-maximized
其他操作系统可以参考
在kde中让gvim自动最大化
和
在Gnome下让GVIM自动最大化
高亮光标所在行(我选择不改变前景和背景色,只加了一条下划线):
hi cursorline guibg=NONE gui=underline
-
Vim7 的新功能
让 Vim 的默认寄存器和系统剪贴板共享,可以在 vimrc 中加入:
由于 Vim 寄存器比系统剪贴板强大太多,为了避免共享时相互干扰,我自己没有这样做。
另外,我不推荐,但是如果你希望 Vim 启动时自动进入插入模式,可以在 vimrc 中加入:
普通模式,可视模式和选择模式下使用 <Tab> 和 <Shift-Tab> 键来缩进文本。在可视模式和选择模式下,可以自动恢复选中的文本。
” Normal Mode, Visual Mode, and Select Mode,
” use <Tab> and <Shift-Tab> to indent
” @see http://c9s.blogspot.com/2007/10/vim-tips.html
注意:normal 模式下 <Tab> 键默认用于跳转到跳转列表较新的位置,我已经取消了这个设置,毕竟 normal 模式下基本是使用
>>。
vnoremap * y/<C-R>=escape(@”, \’\\/.*$^~[]\’)<CR><CR>
vnoremap # y?<C-R>=escape(@”, \’\\/.*$^~[]\’)<CR><CR>
普通模式下使用空格键可以参考
gist:549200,这个脚本可以让你在 normal 模式下输入
[count]<Space>。
插入模式下使用 Meta 键(Windows下是Alt键)+自定义快捷键来移动光标。注意:灵格斯(Lingoes Translator)的热键可能会有冲突,禁用或这更换灵格斯的热键即可。
noremap! <M-j> <Down>
noremap! <M-k> <Up>
noremap! <M-h> <left>
noremap! <M-l> <Right>
使用 Windows Explorer 打开当前文件所在文件夹,并选中目标文件,可以参考
gist#482563,这个脚本同时支持文件和 NERD_tree。
快速启动命令行(cmd),并将默认目录设置为当前文件所在目录,可以参考
gist#482560,这个脚本同样支持文件和 NERD_tree。
切换 Quickfix 窗口的打开和关闭状态。
nmap <F4> :cw<CR>
默认隐藏菜单栏和工具栏,可以通过 <F12> 切换显示和隐藏。
” Toggle Menu and Toolbar
” @see http://liyanrui.is-programmer.com/articles/1791/gvim-menu-and-toolbar-toggle.html
set guioptions-=m
set guioptions-=T
map <silent> <F2> :if &guioptions =~# \’T\’ <Bar>
\set guioptions-=T <Bar>
\set guioptions-=m <bar>
\else <Bar>
\set guioptions+=T <Bar>
\set guioptions+=m <Bar>
\endif<CR>
在保存文件时自动去除无效空白,包括行尾空白和文件最后的空行。
” Remove trailing whitespace when writing a buffer, but not for diff files.
” From: Vigil
” @see http://blog.bs2.to/post/EdwardLee/17961
function RemoveTrailingWhitespace()
if &ft != “diff”
let b:curcol = col(“.”)
let b:curline = line(“.”)
silent! %s/\s\+$//
silent! %s/\(\s*\n\)\+\%$//
call cursor(b:curline, b:curcol)
endif
endfunction
autocmd BufWritePre * call RemoveTrailingWhitespace()
外观(Theme,Color Scheme)
-
隐藏 gvim 的工具栏和菜单
-
Vim for Windows 的全屏插件
-
Vim Color Scheme Test
-
Color Sampler Pick
-
VimTweak : The tweaking dll for GVim.exe.
半透明效果,Linux下可以在终端使用Vim。
-
Color Theme Generator – 随机生成Vim主题。
-
manuscript : Dark colorscheme
-
Darkburn : A darker mod of Zenburn – 在终端显示效果比GUI下要好。
-
The last Vim color scheme you\’ll ever need – 这是模仿针对 TextMate 的 IR_Blank 主题。
-
Ir_black vim/textmate custom color scheme in MonoDevelop
-
molokai : A port of the monokai scheme for TextMate
screenshort
Syntax
-
Doxygen注释
-
DoxygenToolkit.vim : Simplify Doxygen documentation in C, C++, Python.
-
doxygen-support.vim : Generate Doxygen comments from user defined templates
-
DoxyGen Syntax : DoxyGen Highlighting on top of c/c++/java
-
VIM 小技巧 (2): Doxygen Syntax
-
Doxygen syntax coloring in Vim
-
doxygen+VIM文档实用指南for C/C-liked Programmers
-
Doxygen
-
DoxygenToolkit.vim : Simplify Doxygen documentation in C, C++, Python.
-
HTML
Indent & Formats
-
Artistic Style(astyle)
project – for C, C++, C#, and Java Source Code.
-
Pythius
project
插件(Plugins)
-
Vim Plugins You Should Know About, Part I: surround.vim
-
TagList
-
Ctags
-
代码补全
-
Sparkup
-
Zen-Coding
-
surround^2^^Vim Plugins You Should Know About, Part I: surround.vim^
-
Vimwiki
- Org-mode : @vim.org
@github
-
Gundo
@github
@vim.org
-
TxtBrowser
-
VOOF
-
txtfmt
-
Python
-
Vim as Python IDE
-
vimpdb – Integrated Python debugging within Vim.
-
Vim as Python IDE
-
自动补全
-
xml
-
xmllint
-
使用 xmllint + schema 校验 xml 文档
-
xmledit : A filetype plugin to help edit XML, HTML, and SGML documents – 个人感觉太大,用不上这么多东西,而且第一次试用时中报没有设置 omni 之类的错误,编辑效率超低。
-
xmllint
-
CSS3
-
搜索(Search)
-
mark.vim – 较早版本,一直用着挺好。
-
Mark.vim – 传说的升级版本,试用中。
-
MultipleSearch : Highlight multiple searches at the same time, each with a different color. | MultipleSearch2.vim : Improve Multiple search – 这两个 Multiple Search 项目已经搁置,另外 mark.vim 是更好的选择。
-
mark.vim – 较早版本,一直用着挺好。
-
注释文档(Comments Docs)
-
Java
-
YUI
-
jQuery
-
Blog
-
输入法(IME)
-
数据库(Database)
-
Shell
-
conque – Run interactive commands inside a Vim buffer.
-
conque – Run interactive commands inside a Vim buffer.
-
其他
-
vim-sztool – Some python+vim mixed script to extend the function of vim. – shrek.wang 基于 Python 写的插件。
-
vim-sztool – Some python+vim mixed script to extend the function of vim. – shrek.wang 基于 Python 写的插件。
技巧 (Tips)
-
vimrc (仅供参考)
-
跳转(Jumps)
-
正则表达式:
-
文本对象 (Text Object)
- 杂项
打开、保存文件时,显示文件选择对话框,更多可以
:h browse。
:browse w<cr>
:bro e<cr>
-
Vim 实用技术,第 1 部分: 实用技巧
-
Vim 实用技术,第 2 部分: 常用插件
-
Vim 实用技术,第 3 部分: 定制 Vim
-
使用脚本编写 Vim 编辑器,第 1 部分: 变量、值和表达式
-
使用脚本编写 Vim 编辑器,第 2 部分: 用户定义函数
-
使用脚本编写 Vim 编辑器,第 3 部分: 内置列表
-
使用脚本编写 Vim 编辑器,第 4 部分: 字典
-
使用脚本编写 Vim 编辑器,第 5 部分: 事件驱动的脚本编写和自动化
-
神奇的VIM
-
技巧:Vimdiff 使用
-
Best of Vim Tips
中文
-
自動去除不必要的空白
-
面向前端开发者和TextMate粉丝的vim配置 – 混沌海狂想
-
进行有效编辑的七种习惯
-
手把手教你把Vim改装成一个IDE编程环境(图文)
其他技巧 (Tips)
-
Vim 技巧(tips)
-
Program
-
翻译取词
- PDF 利用 Vim 來編修 PDF 檔
Cheat Sheet
-
Vim Commands Cheat Sheet^2^
-
Graphical vi-vim Cheat Sheet and Tutorial – 非常非常好的Vim键图。
-
给程式设计师的Vim入门图解说明
集合
-
vim使用进阶 – 易水博客
-
碎碎念 (hashtags#vim)
-
Gracecode (hashtags#vim)
-
牧马志 (hashtags#vim)
-
善用佳软 (hashtags#gvim)
-
vim那点儿事儿
-
Vim编辑器vim编辑器的技巧、经验、资源等收集。
-
Fork of hallettj/jslint.vim
JSLint的Vim插件,支持高亮显示错误代码以及Quickfix模式。Fork过来打了个读取~/.jslintrc的小补丁。
JsLint Helper – 在 sign 栏显示验证状态。
-
maycode.com (linuxdevelop)
-
文章列表 – vim点滴
-
紅塵一隅間拾得 – vim
-
JDany\’\’s World (hashtags#vim)
-
searun的专栏 (hashtags#Hacking VIM)
-
星光居士的工作室 (hashtags#vim)
-
good coder code, great reuse (hashtags#vim)
-
Swaroop CH (hashtags#vim)
-
Windstorm(hashtags#vim)
-
Vi Vim Tips and Tricks
-
Vimer的程序世界
-
七星居(hashtags#vim)
-
Vi Lovers Home Page
Vim 脚本开发
延伸阅读
原生 Vim
-
Vim^2^ – 原生 Vim,包括Vim, gVim, gVim Easy. 支持 Windows, Linux, Mac 平台。
-
Win32 and Win64 releases of Vim (Vi IMproved)
-
-
继续补充vim配置技巧——上次的vimrc还不够强力 – 混沌海狂想
-
继续补充vim配置技巧——上次的vimrc还不够强力 – 混沌海狂想
-
vim-cocoa – A new branch of gvim to use Cocoa for GUI – 相当 macvim 较轻量级的 Mac 版本。
-
ViMate – a vi plugin for TextMate^2^
Vim Like
-
Eclipse | NetBeans
-
Mozilla-Firefox | Google-Chrome | Opera | Vimprobable WWW browser
-
PDF
-
即时通讯(IM)
-
Email
-
Office
-
File Manager
-
Player
-
Develop
- The Go Programming Language
-
go.vim^vimscript#2854^
-
Vimacs (gvim里设置配色方案、字体、使用tabs以及模拟Emacs的键绑定)
Vim Games
-
TeTrIs.vim : A tetris game in pure vim^2^ – Vim 中的俄罗斯方块游戏。
-
Mines : Play Mines with vim
-
sokoban.vim : Sokoban Game for Vim! – 推箱子。
-
Nibble : Nibble or Snake game for Vim.
-
Mastermind board game : The board game
-
Tower of Hanoi : Tower of Hanoi game for Vim
-
matrix.vim : Matrix screensaver for VIM – 模仿黑客帝国的屏保。
-
rubikscube.vim : a rubik\’s cube game in vim script
-
NetHack^NetHack – Falcon\’s Eye如果妳一生祇打算做一件事的話,玩 NetHack^
Vim Cookbook – by Steve Oualline Vim Recipes
社区
-
Vim-cn | Vim-Taiwan
-
豆瓣Vim小组
-
水木社区VIM版
- vimcn@chatterous.com – GTalk,Email,Web,SMS,Twitter等多种通讯方式,参考
欢迎加入 Vim 的 GTalk 群
- QQ 群:Vim 草堂(28971390) – 撇开腾讯不说,这个群的氛围是非常不错,卧虎藏龙,而且都很热心。
-
Vimer
幽默 & 文化
via: Vim vs. Emacs
via: REAL PROGRAMMERS
请在 Vim 中输入命令:
:help!
或使用缩写
:h!
请在 Vim 中输入命令:
:h 42
探索生命的意义。
请在 Vim 中输入命令:
:h howto
并看文档的最后。
世界上的程序员分三种,
一种使用 Emacs,
一种使用 Vim,
剩余的是其它。
给人一条 Vim 命令,
他能折腾一晚上;
告诉他怎么自定义 Vim 命令,
他能捣腾一辈子.
— Emacs
《大腕》编辑器版:
..周围同事不是用 Vim 就是 Emacs , 你要是用一 UltraEdit,你都不好意思跟人家打招呼…
什么插件呀,语法高亮呀,拼写检查呀,能给它开的都给它开着,就是一个字儿:酷。
你说这么牛B一东西,怎么着学会也得小半年吧。
半年!入门都远着呢,能学会移动光标就不错了,你还别说耗不起,就这还只是左右移动
对我来说 Vi 是禅,
使用 Vi 就是使用禅。
每个命令都是心印,
这对用户来说是深奥的,
对未入门者来说是无法了解的。
每次使用它你都能发现真理。
–Satish Reddy
商业化产品可能是有用的,
但最好的东西往往是免费的,
空气,水,Vim。