vi使用
vim
: [email protected]
vim , , , . vim
, . ,
.
vim. vi unix/linux ,
. vi , . vim
. vim Vi IMproved , vi. (
Emacs , ). , vim
, , html , word .
vim , , , vim
, ( ): http://vcd.gro.clinux.org/
, , ,
.
:
xxx xxx
:xxx xxx
.
.
1.
/xxx(?xxx) xxx , / , ?
. xxx , .
, ,
:set ignorecase
, n , N .
*(#) ,
( ) . , n , N
.
g*(g#) , ,
.
gd ,
.
% , () [] {}
f(F)x , ( ) x .
:
;
,
2.
vi , , ,
. .
w(e) .
b .
0 .
^ .
$ .
H .
M .
L .
gg .
G .
c-f ( ctrl f ) page down.
c-b ( ctrl b , ) page up.
'' , , gd, *
, .
'. , .
`. , .
3. ,
vi y , d , p .
, .
yw .
dw .
y0 .
d0 .
y$ .
d$ .
yfa a .
dfa a .
:
yy .
dd .
D .
, , .
4.
vi ,
. :
5fx 5 x .
5w(e) .
5yy 5 .
5dd 5 .
y2fa a .
:12,24y 12 24 .
:12,y 12 .
:,24y 24 . .
5.
vi , , .
linux/unix ,
TAB , .
( windows ). vi , .
c-p(c-n) , vi ( )
, .
vim .
c-x-l , ,
.
c-x-f , . :
/usr/local/tom :
/usr/local/tomcat/
abbr . ,
. java System.out.println,
, . :
:abbr sprt System.out.println
sprt , System.
out.println
6.
vi , . .
:s/aa/bb/g aa aa bb
:s//<aa/>/bb/g aa bb, aa
:%s/aa/bb/g aa aa bb
:12,23s/aa/bb/g 12 23 aa aa bb
:12,23s/^/#/ 12 23 #
:%s= *$==
:g/^/s*$/d ( ) .
7.
vim .
:sp(:vsp) vim ( ) , .
vim6.0 , , , vim
,
, O , ?
.
:e vim , , .
c-w-w vim ?
.
:ls vim ,
:
1 %a "usevim.html" 162
2 # "xxxxxx.html" 0
:
1 , .
%a , % ,
#
"usevim.html" .
162 .
:b ( ) ( ) , ( )
:ls .
:set diff ,
:vsp filename
, ,
.
8.
vi abbr , . ,
<F1>-<F12> , . ~/.vimrc
(windows $VIM/_vimrc) , .
:nmap <F2> :nohls<cr>
:nmap <F9> <C-W>w
:imap <F9> <ESC><F9> <F9>
:nmap <F12> :%s= *$==<cr> .
:imap <F12> <ESC><F12>
:java : ( , java , ,
)
:nmap <F3> :comp javac<CR>:mak -d . %<CR>
javac java , .
javac.vim $VIM/compiler , javac.vim :
setlocal makeprg=javac
setlocal errorformat=%A%f:%l:/ %m,%-Z%p^,%-C%.%#
:nmap <F4> :comp ant<CR>:mak<CR>
ant java , . ,
vim compiler/ant.vim , .
build.xml , ant .
:nmap <F5> :cl<CR> .
:imap <F5> <ESC><F5>
:nmap <F6> :cc<CR> .
:imap <F6> <ESC><F6>
:nmap <F7> :cn<CR> .
:imap <F7> <ESC><F7>
:nmap <F8> :cp<CR> .
:imap <F8> <ESC><F8>
:nmap <F11> :JavaBrowser<cr>
, java ,
, , JCreator .
? . , , ctags .
:imap <F11> <ESC><F11>
9. TAB
TAB , .
<< tab.
>> tab.
5>> 5 tab.
:12,24> 12 14 tab.
:12,24>> 12 14 tab.
tab ? 8 , 4 , 2 .
tab , tab tab. , vim
. , .
:set shiftwidth=4 4 , .
:set sts=4 softtabstop 4. tab 4 .
:set tabstop=4 tab 4 , 8 .
:set expandtab tab , vim tab.
10. autocmd
, ;
. ~/.vimrc
. , , , .
:autocmd! .
autocmd FileType java source ~/.vim/files/java.vim
autocmd FileType java source ~/.vim/files/jcommenter.vim
java .
autocmd BufNewFile *.java 0r ~/.vim/files/skeletons/java.skel
java java.skel .
autocmd BufNewFile *.java normal gnp
java gnp ,
, java __date__ .
11.
vim.sf.net (script), .
:
jcommenter.vim javadoc .
JBrowser.vim . C, C++ Tlist
, checkstyle.vim , jad.vim
.class .
12.
~/.vimrc . ,
autocmd . :
set suffixes=.bak,~,.o,.h,.info,.swp,.aux,.bbl,.blg,.dvi,.lof,.log,.lot,.ps,.toc
vim , tab .
set nu
set ai
map Y y$ Y D , Y yy .
13.
, .
. .
:g/^/exec "s/^/".strpart(line(".")." ", 0, 4)
:runtime! syntax/2html.vim txt html,