Tag: vim

ma6174/vim所包含的插件

在用了几天的spf13-vim这个配置之后,觉得很不顺手,重新换回了这个配置文件 https://github.com/ma6174/vim 。它所包含的插件如下:

gmarik/vundle

这个不用说。。。

tpope/vim-fugitive

a Git wrapper so awesome, it should be illegal

https://github.com/tpope/vim-fugitive

rstacruz/sparkup

Sparkup lets you write HTML code faster.

https://github.com/rstacruz/sparkup/

Yggdroot/indentLine

L9

FuzzyFinder

command-t

git://github.com/wincent/command-t.git

Auto-Pairs

python-imports.vim

CaptureClipboard

ctrlp-modified.vim

last_edit_marker.vim

synmark.vim

SQLComplete.vim

Javascript-OmniCompletion-with-YUI-and-j

jslint.vim

pangloss/vim-javascript

Vim-Script-Updater

ctrlp.vim

tacahiroy/ctrlp-funky

jsbeautify

The-NERD-Commenter

django_templates.vim

Django-Projects

vim实用技巧之快速移动与跳转

动作命令是vim操作中最重要的一些命令。不仅可以实现快速移动,还能与操作符进行配合使用。

READ MORE

vim实用技巧-模式2

第三章:可视模式

  • 深入理解可视模式

:h Select-mode :选择模式(特殊的可视模式)

<C-g> 在可视模式和选择模式之间切换(提示栏不同)

  • 选择高亮选区

v, V, <C-v>, gv(重选上次的高亮选区),o(激活高亮选区的活动端)

  • 重复执行面向行的可视命令 .
  • 尽量使用操作符命令,而不是可视命令

可视模式下,. 号命令可能会有异常表现。如 vitUgUit (后者是普通模式的命令)

  • 操作表格数据
  1. 列:<C-v>3jr|
  2. 行:yypVr-
  • 修改列文本

<C-v>jjeC{new text}<Esc>

  • 在行尾添加文本

<C-v>jj$A;:可视模式下,a与i无法进入插入模式

READ MORE

书籍:vim实用技巧-模式

第二章:普通模式

  • 停顿时请离开画笔
  • 构造可撤销块

u命令:撤销最新修改

一次修改:

  1. 普通模式,可视模式和命令行模式中所触发的修改命令
  2. 插入模式: i{some text}<Esc>

段落完时,可用:<Esc>o

  • 构造可重复修改块

例如在单词结尾处怎么删除单词:dbx,bdx,daw(最好)

  • 用次数做简单的运算

<C-a><C-x> :加与减

  • 能够重复就别用次数

连续删除两个单词:d2w, 2dw, dw.(可重复,避免算错数)

  • 操作 = 操作符 + 动作命令

操作符:c(修改),d,y,g~(反转大小写),gU,gu(小写),>(增加缩进),<(减少缩进),=(自动缩进)

READ MORE

书籍:vim实用技巧

以思维的速度来编辑文本!

《vim实用技巧》看了几天,今天终于看完了第一部分 模式 ,感觉收益良多,很多以前困惑的或者不懂的,有种豁然开朗的感觉。

READ MORE

在markdown中快速进行表格对齐

在markdown中的表格格式对齐是比价麻烦的,有了tabular这个vim插件之后,简单了许多,用法如下:

1
:45,67 Tab /|

这样就可以将表格按竖线进行对齐了,比较简单。不过经常修改表格时,每次都要输入这样一个命令还是挺麻烦的,故实现成快捷键的形式,如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
" align
" markdown table align by "|"
nmap tab\| :call CyyAlignBy("\|")<CR>
nmap tab, :call CyyAlignBy(",")<CR>
nmap tab= :call CyyAlignBy("=")<CR>
nmap tab=> :call CyyAlignBy("=>")<CR>
" 根据某字符串对齐
func CyyAlignBy(string)
let __lineno = line('.')
let __begin_ln = __lineno
let __end_ln = __lineno
" 向前搜索,直到空行
while "" != getline(__begin_ln)
let __begin_ln -= 1
if __begin_ln < 1
break
endif
endwhile
" 向后搜索,直到空行
while "" != getline(__end_ln)
let __end_ln += 1
endwhile
let __exec = printf('%d,%d Tab /%s', __begin_ln, __end_ln, a:string)
echo __exec
exec __exec
endfunction

说明:

vim插件

华丽的powerline

下载插件:

1
2
cd ~/.vim/bundle/
git clone https://github.com/Lokaltog/vim-powerline

修改vim的配置文件:vim ~/.vimrc,加入下面几行:

1
2
3
4
" powerline插件
set t_Co=256
let g:Powerline_symbols = 'unicode'
set encoding=utf8

效果如下:

vim-powerline

vimscript问题汇总

source时提示“E484: 无法打开文件”

1
source '/home/code/github/code/vim/cyy.vim'

应该去掉路径中的单引号,如下:

1
source /home/code/github/code/vim/cyy.vim

vim脚本vimscript

Vim的脚本语言被称为Vimscript,是典型的动态式命令语言,提供一些常用的语言特征:变量、表达式、控制结构、内置函数、用户自定义函数、一级字符串、列表、字典、终端、文件IO、正则表达式模式匹配、异常和集成调试器等。
在学习Vimscript时,你可以学习Vim自带的Vimscript文档,打开Vim自带的Vimscript很简单,只需在Vim内部执行:help vim-script-intro(Normal模式下)

READ MORE

vim的模式

通常模式(n)

在其它任何一个模式下,用ESC或者 ctrl+c 键可以退到通常模式

插入模式(i)

在这个模式下,vim像一个常见的编辑器.在通常模式下,用i或者a可以进行本模式,当然,还有一些其它命令也可以.

可视模式(v)

在这个模式下,可以使用hjkl进行选择.然后进行copy,paste或者其它操作. 在通常模式下,用 v or shift+v 命令进行可视模式.

列块操作模式(V)

这是块操作模式. 在通常模式下,用 ctrl+v 进入本模式.

例如注释多行代码等( I, #, ESC

还有 行尾列块操作模式

1
gg, ctrl+v, G, $, A

修改模式(R)

这是改写的模式.很多软件法用insert键来完成这个切换.在vim中,从通常模式用R即可进入改写模式.