效果



VIM
最开始的想法是最简配置实现最高效的使用。 前几年基本只用了2个插件NERDTree,BufferExplorer。最近觉得是时候给它“升级”一下了,但尽量精简,使用频率不高的功能还是没有必要通过插件搞。
主要增加:
- Vundle。 插件管理。插件一多还是用她管理方便一些,主要是升级、部署新的开发环境是都更加方便。
- ack。 一直用rgrep, 但是身边同事都推荐ack, 试了下起码没有比原来差。
- vim-airline。 多功能statusline,不仅漂亮了一点点,还有很多方便的提示,比如git分支、光标所在位置方法名、文件编码、光标位置百分比,末尾空格提示等等。
几个有用的配置
set list listchars=tab:→\ ,trail:·显示空格和tab。set hlsearch incsearch smartcase ignorecase搜索增强,忽略大小写匹配,从同事在服务器上的配置学到的。-
cmap w!! w !sudo tee % > /dev/null老是忘记sudo vim又记不住tee怎么用,保存没有写权限的文件,干脆写到vim配置得了。 -
ctrlp搜索太慢,这样忽略掉不需要的目录和权限即可。
let g:ctrlp_custom_ignore = {
\ 'dir': 'vendor/bundle/*\|vendor/cache/*\|public\|spec',
\ 'file': '\v\.(exe|so|dll|swp|log|jpg|png|json)$',
\ }
autocmd FileType go,c,java,sh set ts=4 sw=4 sts=4 etc,java 等代码用4个空格缩进。autocmd BufNewFile,BufRead *.json set filetype=javascript打开json时,用javascript的语法进行高亮显示。- 使用airline后,nerdtree不显示工作目录问题。
~/.vim/bundle/vim-airline/autoload/airline/extensions.vim:23改为
'nerdtree': [ '%{exists("b:NERDTreeRoot")?b:NERDTreeRoot.path.str():""}', '' ],让NERDTree的status line继续显示当前工作目录,尤其是有时需要打开多个不同项目的vim时,这个提示很有用。
tmux
服务器上保持会话、恢复会话非常好用的工具,其实很多人也用来做终端的窗口管理,而且比起tab来说操作更舒服一些。配置也可以更自由
setw -g mode-keys vitmux中翻页复制时,用vim的快捷键。- 打开新的window或者分屏时,当前目录默认为新建window或者分屏前所处的目录。
bind s split-window -h -c "#{pane_current_path}"
bind v split-window -v -c "#{pane_current_path}"
bind-key c new-window -c "#{pane_current_path}"
set -g base-index 1如果觉得tmux状态栏的名字从0编号不习惯的话可以设置从1开始。set -g history-limit 5000跟终端的历史行数一个意思,设置大一些方便回查。bind-key a send-prefix默认情况终端都是emacs快捷键,比如ctrl r找历史操作命令、ctrl p上一条命令、ctrl n下一条命令、ctrl e光标到行尾、ctrl a到行首,但是如果tmux的prefix是C-a的话,这条配置可以通过ctrl+a a移动光标到行首。set -g status-justify centre状态栏中间显示window的名字。
更多配置
https://github.com/anvyzhang/dotfiles
本文介绍如何通过Vim插件管理和个性化配置提升编辑效率,包括Vundle插件管理器、ack搜索工具、vim-airline状态栏美化等功能。同时分享了tmux的配置技巧,如快捷键自定义及会话管理等。
406

被折叠的 条评论
为什么被折叠?



