vim腳本
『壹』 vim 如何運行程序
在 vim 里執行外部程序是用 ! 加命令名,最簡單的比如:
:!ls
或者用 ctrl-z 把 vim 推到後台再執行 shell 命令。
如果想用 vim 執行 vim 的腳本,可以用:
:sourcea_vim_script
『貳』 怎樣學習 Vim 腳本編程
題意不清:分割為來理解
1、學習vim的使用方法,vim作為編輯器之神,最為出色的莫過於各種便利的快捷鍵,而學習vim等價於學習這些快捷鍵,以下是我實際使用中經常使用的。
模式:i/s進入insert模式,此模式下可以像notepad一樣使用
esc進入命令模式
v/V進入visual模式
復制粘貼:
命令模式下yy復制一行,yny復制n行
:n,m y復制第n到m行
命令模式下p粘貼
剪切:
命令模式下c剪切一行
移動
:n,m mo r 剪切第n到m行到r行
附上vim的配置文件:
setlocal noswapfile
set bufhidden=hide
set nocompatible
syntax on
"colorscheme evening
set number
set cursorline
set ruler
set shiftwidth=4
set softtabstop=4
set tabstop=4
set nobackup
set autochdir
filetype plugin indent on
set backup=yes
set ignorecase smartcase
set incsearch
set hlsearch
set noerrorbells
set novisualbell
set t_vb=
set showmatch
set matchtime=2
set magic
set hidden
set smartindent
set backspace=indent,eol,start
set cmdheight=1
set laststatus=2
set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&fileformat}\ %{&encoding}\ Ln\ %l,\ Col\ %c/%L%)
set foldenable
set foldmethod=syntax
set foldcolumn=0
setlocal foldlevel=1
nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR>
腳本編程:選擇一種腳本,搜索教程。
『叄』 怎樣學習 Vim 腳本編程
1、學習vim的使用方法,vim作為編輯器之神,最為出色的莫過於各種便利的快捷鍵,而學習vim等價於學習這些快捷鍵,以下是我實際使用中經常使用的。
模式:i/s進入insert模式,此模式下可以像notepad一樣使用
esc進入命令模式
v/V進入visual模式
復制粘貼:
命令模式下yy復制一行,yny復制n行
:n,m y復制第n到m行
命令模式下p粘貼
剪切:
命令模式下c剪切一行
移動
:n,m mo r 剪切第n到m行到r行
附上vim的配置文件:
setlocal noswapfile
set bufhidden=hide
set nocompatible
syntax on
"colorscheme evening
set number
set cursorline
set ruler
set shiftwidth=4
set softtabstop=4
set tabstop=4
set nobackup
set autochdir
filetype plugin indent on
set backup=yes
set ignorecase smartcase
set incsearch
set hlsearch
set noerrorbells
set novisualbell
set t_vb=
set showmatch
set matchtime=2
set magic
set hidden
set smartindent
set backspace=indent,eol,start
set cmdheight=1
set laststatus=2
set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&fileformat}\ %{&encoding}\ Ln\ %l,\ Col\ %c/%L%)
set foldenable
set foldmethod=syntax
set foldcolumn=0
setlocal foldlevel=1
nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR>
腳本編程:選擇一種腳本,搜索教程。
『肆』 在vim中用什麼命令運行vim腳本!~
source可以執行.vim格式的文件
如:source $VIMRUNTIME/vimrc_example.vim
其中¥VIMRUNTIME為vim文件安裝目錄!
『伍』 在linux的vim裡面編寫了腳本如何執行
"首先腳本需要有執行許可權:chmod u x file.sh;執行腳本有三種方法:1. ./file.sh:特點:開啟bash子進程來執行,也就是開啟額外的進程來進行,不影響原進程的變數、配置等2. bash file.sh特點:和./file.sh相同 3. source file.sh 或者 . file....
『陸』 vim腳本中,游標位置怎麼設置
用 cursor() 或者 setpos() 這兩個函數可以控制游標的位置。具體用法和示例可以查手冊。
『柒』 windows下gvim能否執行vim自己的腳本
可以的。
比如有 file.vim
%s/ABC/abc/g
wq
然後在 cmd 里執行:
vim-esSfile.vimmyfile.txt就行了。
-S 後面跟的是那個腳本的名字。後面的 myfile.txt 就是想操作的文件。
如果想批量操作多個文件,可以考慮在腳本里使用 argdo 命令。
『捌』 關於 vim 腳本的問題!
是沒用還是報錯??
感覺貌似不需要加那個冒號, 直接寫那句就行.
總之我的在_vimrc裡面添加上那句就ok.
『玖』 如何寫Vim腳本
vim 1.sh #!/bin/bash#filename:1.shecho "Hello World!"給腳本增加執行許可權: chmod +x 1.sh 或者直接bash 1.sh
『拾』 如何讓vim寫shell腳本自動縮進
vim 自帶了寫 bash 腳本的語法著色,縮進之類的功能。
要想啟用它們,在 .vimrc 里加上:
setnocompatible
filetypepluginindenton
如果你還沒有自己的 vimrc,下面這個是 vim 推薦的例子:
"Anexampleforavimrcfile.
"
"Maintainer:BramMoolenaar<[email protected]>
"Lastchange:2008Dec17
"
"Touseit,itto
"forUnixandOS/2:~/.vimrc
"forAmiga:s:.vimrc
"forMS-DOSandWin32:$VIM\_vimrc
"forOpenVMS:sys$login:.vimrc
"Whenstartedas"evim",evim..
ifv:progname=~?"evim"
finish
endif
"UseVimsettings,ratherthanVisettings(muchbetter!).
"Thismustbefirst,.
setnocompatible
"
setbackspace=indent,eol,start
ifhas("vms")
setnobackup"donotkeepabackupfile,useversionsinstead
else
setbackup"keepabackupfile
endif
sethistory=50"
setruler"
setshowcmd"displayincompletecommands
setincsearch"doincrementalsearching
"ForWin32GUI:remove't'flagfrom'guioptions':notearoffmenuentries
"let&guioptions=substitute(&guioptions,"t","","g")
"Don'tuseExmode,useQforformatting
mapQgq
"CTRL-Uininsertmodedeletesalot.UseCTRL-Gutofirstbreakundo,
"sothatyoucanundoCTRL-Uafterinsertingalinebreak.
inoremap<C-U><C-G>u<C-U>
",thusenableit.
ifhas('mouse')
setmouse=a
endif
"Switchsyntaxhighlightingon,whentheterminalhascolors
".
if&t_Co>2||has("gui_running")
syntaxon
sethlsearch
endif
".
ifhas("autocmd")
"Enablefiletypedetection.
"Usethedefaultfiletypesettings,sothatmailgets'tw'setto72,
"'cindent'isoninCfiles,etc.
"Alsoloadindentfiles,toautomaticallydolanguage-dependentindenting.
filetypepluginindenton
"Puttheseinanautocmdgroup,sothatwecandeletethemeasily.
augroupvimrcEx
au!
"Foralltextfilesset'textwidth'to78characters.
=78
"Wheneditingafile,.
"Don'
"().
"Alsodon',thatisthedefault
"positionwhenopeningafile.
autocmdBufReadPost*
ifline("'"")>1&&line("'"")<=line("$")|
exe"normal!g`""|
endif
augroupEND
else
setautoindent"alwayssetautoindentingon
endif"has("autocmd")
"
"fileitwasloadedfrom,thusthechangesyoumade.
".
if!exists(":DiffOrig")
commandDiffOrigvertnew|setbt=nofile|r#|0d_|diffthis
|wincmdp|diffthis
endif