Daily Archive for September 22nd, 2007

Efficient Editing With vim

我在这里发现了这篇关于VIM操作的文章,感觉不错,所以转载了过来。

This article has been translated into French by Geoffrey Bachelet. You can read the French version here: L’dition efficace avec vim.



“To me, vi is Zen.
To use vi is to practice zen.
Every command is a koan.
Profound to the user,
unintelligible to the uninitiated.
You discover truth every time you use it.”

[email protected]

This tutorial assumes a basic knowledge of vim — insert mode, command mode, loading and saving files, etc. It is intended to help vi novices develop their skills so that they can use vi efficiently.

In this tutorial, <C-X> means Ctrl-X — that is, hold down the Ctrl key and codess X. You can get help on most of the commands used here by typing :help command in vim, where command is what you need help on.

Moving efficiently

Stay out of insert mode

In general, you want to spend as little of your time in vim’s insert mode as possible, because in that mode it acts like a dumb editor. This is why most vim novices spend so much time in insert mode — it makes vim easy to use. But vim’s real power lies in command mode! You’ll find that the better you know vim, the less time you will spend in insert mode.

Use h, j, k, and l

The first step to efficient editing in vim is to wean yourself from the arrow keys. One of the the advantages of vim’s modal design is that you do not need to constantly move your hands back and forth between the arrow keys and the letter keys; when you are in command mode, the letters h, j, k and l correspond to the directions left, down, up, and right, respectively. It takes some practice to get used to, but you will notice the speed difference once you’re used to it.

When you are editing e-mail or other paragraph-formatted text, you might notice that the direction keys skip more lines than you expect. This is because your paragraphs appear as one long line to vim. Type g before h, j, k or l to move by screen lines instead of virtual lines.

Use motions to move the cursor in the current line

Most editors have only simple commands for moving the cursor (left, up, right, down, to beginning/end of line, etc). vim has very advanced commands for moving the cursor; these commands are referred to as motions. When the cursor moves from one point in the text to another, the text between the points (and including the points themselves) is considered to be “moved over.” (This will be important later.)

Continue reading ‘Efficient Editing With vim’

Share

rxvt-unicode 配置

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
Xft.dpi:96

!!========================================================
!! RXVT-unicode setting
!!========================================================
URxvt.inheritPixmap:    False
URxvt.visualBell:       true
URxvt.insecure:         true
URxvt.saveLines:        3000
URxvt.scrollBar:        True
URxvt.scrollBar_right:  True
URxvt.scrollstyle:      plain
URxvt.secondaryScroll:  true
URxvt.underlineColor:   yellow
URxvt.termName:         xterm
!標籤功能
URxvt.perl-ext-common: default,tabbed
URxvt.tabbed.tab-fg: 12
URxvt.tabbed.tab-bg: 0
URxvt.tabbed.tabbar-fg: 4

!colors
URxvt.background:black
URxvt.foreground:grey
URxvt.colorBD:yellow
URxvt.colorUL:Green

URxvt.color0: #000000
URxvt.color1: #CC0000
URxvt.color2: #4E9A06
URxvt.color3: #C4A000
URxvt.color4: #3465A4
URxvt.color5: #75507B
URxvt.color6: #06989A
URxvt.color7: #D3D7CF
URxvt.color8: #555753
URxvt.color9: #EF2929
URxvt.color10: #8AE234
URxvt.color11: #FCE94F
URxvt.color12: #729FCF
URxvt.color13: #AD7FA8
URxvt.color14: #34E2E2
URxvt.color15: #EEEEEC

!字型
URxvt.font:xft:Bitstream Vera Sans Mono:pixelsize=15, \
           xft:AR PL New Sung Mono:antialias=false

!URxvt.font:xft:Monospace:pixelsize=15:antialias=false

!輸入法
inputMethod:gcin                
!輸入法樣式可選:Root(置底) OverTheSpot(跟隨)
URxvt.codeeditType:Root

urxvtd

urxvtd -q -f -o

啟動背景程式,然後用urxvtc來啟動客戶端。

tab功能
記得加入:

URxvt.perl-ext-common: default,tabbed

shift+down:新增tab
shif+left:左移
shift+right:右移

Continue reading ‘rxvt-unicode 配置’

Share