vim 使用、设置笔记
一、设置.vimrc( windows下通常为_vimrc)
1、设置vim中tab的缩进
set ts=4 (注:ts是tabstop的缩写,设TAB宽4个空格)
set expandtab (注:用4个空格代替一个TAB, 不设置的话就是一个宽为4的TAB)
二、插件
1、Vundle 插件安装器,http://github.com/VundleVim/Vundle.Vim
2、NERDTree 树形目录,https://github.com/scrooloose/nerdtree
3、NERDCommenter 注释插件,https://github.com/scrooloose/nerdcommenter
4、delimitMate 引号、括号等补全,https://github.com/Raimondi/delimitMate
5、cppcomplete c/c++代码补全,http://www.vim.org/scripts/script.php?script_id=527
6、taglist 符号列表插件,需同ctags生成的tags一起工作,https://github.com/vim-scripts/taglist.vim
7、AutoComplPop 补全时自动弹出窗口,https://github.com/vim-scripts/AutoComplPop
8、CtrlP 文件查找,https://github.com/kien/ctrlp.vim
9、EasyGrep 全局搜索,https://github.com/dkprice/vim-easygrep
三、使用
1、缩进
< 或 > 注:一个向左缩进,一个向右缩进
= 注:自动缩进(默认使用c-indenting或lisp函数来格式化)
例子:gg=G (gg:回到文本首部,=:缩进, G:文本尾部, 整体意思,全文缩进)
具体的使用看vim的手册, :help < 或 :help > 或 :help =
2、快速注释/反注释
注释: ctrl + v 进入块可视化模式, 选择要注释行的第一个字符, I 进入向前插入模式,插入注释符号,如//, 此时再按一下Esc,即完成选中行的注释
反注释: ctrl + v 进入块可视化模式,选择要删除的注释符,再 x,即可删除所有
注:使用辅助插件,如:NERD_commenter
参考文章:http://blog.csdn.net/xiajun07061225/article/details/8488210
3、设置窗口大小
set lines=35 columns=118
set lines=999 columns=999 "表示全屏
vim中窗口宽用columns, 高用lines
参考文章:http://lemoncyb.iteye.com/blog/1615983
4、gvim中设置配置方案
colorscheme industry
参考文章:http://lemoncyb.iteye.com/blog/1615983
5、gf 命令
goto file
Edit the file whose name is under or after the cursor.
可以跳转到光标下的文件中,前提是这个文件在搜索路径path中
详细请参考:help gf, help path
6、宏录制
q{0-9a-zA-Z} 开始宏录制, help q 查看
q 结束录制
@{0-9a-zA-Z} 播放宏
例子:
比如要在以下3行字符串的后面分别加一个分号
hello, one
hello, two
hello, three
正常模式下输入 qa, (q表示开始录制, 存放的寄存器名为a)
正常模式下输入 A (A表示在行尾追加)
输入;
正常模式下输入 j (j表示光标移到下一行)
q (结束录制)
播放宏:光标移到第一行, 在正常模式下输入3@a
7、多窗口大小的调整
resize +2 "高度增加2,使用头号就减少2
vertical resize +2 “宽度增加2,使用减号就减少2
使用按键映射则可在配置文件中加入以下配置:
" 调整窗口大小
"nnoremap <C-7> <C-w>+
"nnoremap <C-8> <C-w>-
nnoremap <C-7> :resize +2<CR>
nnoremap <C-8> :resize -2<CR>
nnoremap <C-9> :vertical resize +2<CR>
nnoremap <C-0> :vertical resize -2<CR>
此时Ctrl+7: 表示高度加2,其它的类同
8、Session\View保存加载
mksession 保存当前会话
vim -S Session.vim 加载会话
mkview 1 保存视图1
:loadview 1 加载视图1
具体的请看:help mksession 及help mkview
9、vim 设置编码
set fileencodings=ucs-bom,utf-8,cp936
set fileencoding=utf-8
具体参见:http://www.cnblogs.com/jaiho/archive/2011/08/24/2056375.html
或help fileencodings 查看相关说明
vim 使用、设置笔记的更多相关文章
- Vim 配色设置与配色脚本语法
几个给tag加颜色的插件 https://github.com/octol/vim-cpp-enhanced-highlight:基于tag的c family语法高亮 https://github.c ...
- iconv内容,convmv文件名,unix2dos,dos2unix文件格式转换,od/cut/wc/dd/diff/uniq/nice/du等命令,linux文件名乱码,文件名,文件内容,vim编码设置
1.enconv文件名编码转换,比如要将一个GBK编码的文件转换成UTF-8编码,操作如下 enconv -L zh_CN -x UTF-8 filename enconv -L GB2312 -x ...
- Sublime Text 3设置笔记
Sublime Text 3设置笔记 Sublime Text 3设置指南 1. 安装package control 下载package control源码安装包,并解压: http://yun.ba ...
- vim高亮设置
vim高亮设置 前提: 查看vim是否完整安装 rpm -qa | grep vim 若完整安装,则会出现如下相关信息 vim-filesystem-7.4.629-5.el6.x86_64 vim- ...
- 学习 Vim —— Vimtutor 总结笔记
Lesson 2 2.1-2.3 删除 [dw] 删除从光标开始处至下一词开始前的部分,光标停在下一词的词首. [de] 删除从光标开始处至词尾的部分. [d$] 删除从光标开始处至行末的部分. 2. ...
- vim折叠设置(转载)
vim折叠设置(转载) set foldmethod=indent "set default foldmethod"zi 打开关闭折叠"zv 查看此行zm 关闭折叠zM ...
- vim tab设置为4个空格
为了vim更好的支持python写代码,修改tab默认4个空格有两种设置方法: 1. vim /etc/vimrc 1 set ts=4 2 set sw=4 2. vim /etc/vimrc 1 ...
- Linux:vim环境设置
vim环境设置 vim的环境设置在/etc/vimrc的这个文件中,不过不建议直接修改该配置文件.但是可以修改~/.vimrc文件,默认是不存在的,要手动创建并写入设置值. set hlsearch ...
- vim编码设置
转载于:http://www.cnblogs.com/freewater/archive/2011/08/26/2154602.html vim 编码方式的设置和所有的流行文本编辑器一样,Vim 可以 ...
- vim搜索设置高亮
vim搜索设置高亮 linux vim打开文档搜索字符串时,设置被搜索到字符串高亮显示. 有两种方法: 1.暂时设置:vim打开文档-->命令行形式输入set hlsearch. 缺点:关闭文档 ...
随机推荐
- mac 安装scrapy
https://jingyan.baidu.com/article/14bd256e748346bb6d2612be.html 1.安装Python 安装完了记得配置环境,将python目录和pyth ...
- POJ2503字典树
此代码原始出处:http://blog.csdn.net/cnyali/article/details/47367403 #include<stdio.h> #include<str ...
- makefile 与android.mk中加信息打印
makefile里面加打印: [table]@echo ' zImage - Compressed kernel image' android.mk里面加信息打印: $(warning TEXT... ...
- golang map to struct
http://stackoverflow.com/questions/26744873/converting-map-to-struct func SetField(obj interface{}, ...
- flex操作XML,强力总结帖
初始化XML对象 XML对象可以代表一个XML元素.属性.注释.处理指令或文本元素.在ActionScript 3.0中我们可以直接将XML数据赋值给变量: var myXML:XML = &l ...
- Django开发微信公众平台
处理微信发来的信息,实际上就是处理xml的过程.先写xml工具类 # -*- coding:utf-8 -*- from xml.dom import minidom from Web.model.W ...
- C99_变长结构体实现
/************************************************************************* > File Name: C99_lengt ...
- cocos2d0基础篇笔记二
1.菜单的使用: CCMenuItemimage*image=CCMenuItemImage*create("xxx.png", "xxx,png", &quo ...
- kubernetes故障现场一之Orphaned pod
系列目录 问题描述:周五写字楼整体停电,周一再来的时候发现很多pod的状态都是Terminating,经排查是因为测试环境kubernetes集群中的有些节点是PC机,停电后需要手动开机才能起来.起来 ...
- iOS移动开发周报-第20期
iOS移动开发周报-第20期iOS移动开发周报-第20期 [摘要]:本期iOS移动开发周报带来如下内容:iOS 通知中心扩展制作入门,iOS APP可执行文件的组成,objc非主流代码技巧等. 教程 ...