半年以上前だしメモを残さなかったので素晴らしく参考になったsiteが正確にはどこだったか分からなくなってしまった。
確かなことは...
kaoriya 様の日本語ヘルプドキュメントと
github.com に公開されていた達人の方々の .vimrc と
Google にて vim noplugins や vim shebang
とか検索した結果のいくつかのサイト
などを参考にさせていただきました。
" --------------------
/usr/bin/vim (OS X に最初から入ってるvim) を起動する際、自動的にロードされてしまう標準プラグインを "ロードしない" ようにした上で実現したいこと...大きくわけて2つ。
mission 1 :)
% vim aaa.rb で新しいファイルを作ると
#!/usr/bin/ruby
# coding: utf-8
この2行が予め記入され、入力するとインデントかかり、class とか def とかそういった文字に色がつく。
インデントかかるっていうのは例えば...
def a [return-key] if [return-key] end
とキーボードを打つと自動的に
4 def a
5 if
6 end
になったり
begin [return-key] a [return-key] rescue
とキーボードをたたくと自動的に
5 begin
6 a
7 rescue
こうなるっ。
mission 2 :)
% vim aaa.txt で開いたテキストファイルを編集する際
# を入力すると以降の文字列(改行まで)は青色になり
-- で始まる行はシアン色?に。
http や https で始まる行もシアンに。
行中にある <http://...> や <https://...> もシアンになるっ。
% cat test.vimrc
set nocompatible
set number
set backspace=indent,eol,start
" -------------------- Status
set laststatus=2
set statusline=%n\:%y%F\ \|%{(&fenc!=''?&fenc:&enc).'\|'.&ff.'\|'}%m%r%=<%-10(%3l,%02c%03V%)>
" -------------------- HighLight
highlight StatusLine term=NONE cterm=NONE ctermfg=gray ctermbg=darkcyan
highlight IncSearch ctermfg=gray ctermbg=cyan
highlight Search ctermfg=yellow ctermbg=darkcyan
highlight LineNr ctermfg=lightcyan ctermbg=NONE
highlight Visual term=NONE cterm=NONE ctermfg=NONE ctermbg=gray
highlight ModeMsg ctermfg=lightcyan ctermbg=NONE
" -------------------- tab
set shiftwidth=2
set tabstop=2
set expandtab
set ts=2 sw=2 expandtab
" -------------------- Plugins
" :help noloadplugins
set noloadplugins
" :help :filetype-off, :filetype-overview
filetype off
" :help :filetype-plugin-off
filetype plugin off
" :help :filetype-indent-on
filetype indent on
" /usr/share/vim/vim72/syntax/syntax.vim
syntax enable
" syntax on
" debag
" set verbose=9
autocmd! filetypedetect
" autocmd! BufWrite
if has("autocmd")
"echo 'Hello!01'
augroup MyVim
autocmd!
autocmd BufRead,BufNewFile *.txt setlocal filetype=txt
autocmd BufRead,BufNewFile *.rb setlocal filetype=ruby
autocmd BufRead,BufNewFile *.vimrc setlocal filetype=vim
"autocmd BufRead,BufNewFile *.vim setlocal filetype=vim
"autocmd BufRead,BufNewFile *.py setlocal filetype=python
"autocmd BufRead,BufNewFile *.sh setlocal filetype=sh
"autocmd BufRead,BufNewFile *.html setlocal filetype=html
autocmd FileType txt syn match Comment /\#.*/
augroup content
autocmd!
autocmd BufNewFile *.rb
\ 0put = '#!/usr/bin/ruby' |
\ 1put = '# coding: utf-8' |
autocmd FileType txt
\ :highlight MyGroup ctermfg=darkcyan ctermbg=NONE |
\ :match MyGroup /^\--.*\|<http.*>\|^http.*/ |
" autocmd BufNewFile *.py
" \ 0put = '#!/usr/bin/python' |
" \ 1put = '#-*- coding: utf-8 -*-' |
" \ $put = '' |
" \ $put = '' |
augroup END
endif
" -------------------- Last
" http://github.com/kana/config/
set secure " must be written at the last. see :help 'secure'.
テストファイルを指定して vim 起動
vim -i "NONE" -u test.vimrc aaa.rb
vim のコマンド結果
:filetype
# =>
filetype detection:ON plugin:OFF indent:ON
:autocmd
# =>
--- Auto-Commands ---
MyVim BufNewFile
*.txt setlocal filetype=txt
*.rb setlocal filetype=ruby
*.vimrc setlocal filetype=vim
content BufNewFile
*.rb 0put = '#!/usr/bin/ruby' | 1put = '# coding\: utf-8' |
MyVim BufRead
*.txt setlocal filetype=txt
*.rb setlocal filetype=ruby
*.vimrc setlocal filetype=vim
filetypeindent FileType
* call s:LoadIndent()
syntaxset FileType
* exe "set syntax=" . expand("<amatch>")
MyVim FileType
txt syn match Comment /\#.*/
content FileType
txt :highlight MyGroup ctermfg=darkcyan ctermbg=NONE | :match MyGroup /^\--.*\|<http.*>\|^http.*/ |
Syntax
* call s:SynSet()
cpp if (exists('b:load_doxygen_syntax') && b:load_doxygen_syntax)^I|| (exists('g:load_doxygen_syntax') && g:load_doxygen_syntax) | runtime! syntax/doxygen
.vim | endif
c if (exists('b:load_doxygen_syntax') && b:load_doxygen_syntax)^I|| (exists('g:load_doxygen_syntax') && g:load_doxygen_syntax) | runtime! syntax/doxygen
.vim | endif
idl if (exists('b:load_doxygen_syntax') && b:load_doxygen_syntax)^I|| (exists('g:load_doxygen_syntax') && g:load_doxygen_syntax) | runtime! syntax/doxygen
.vim | endif
Press ENTER or type command to continue
# 現在の vim バージョン(OS X 10.6.6)
% vim --version
VIM - Vi IMproved 7.2 (2008 Aug 9, compiled Aug 10 2010 22:09:22)
...
[memo]
python のインデントはこのままだとうまくいかない。
[2011-02-19]
'# coding\: utf-8'
になってた。
'# coding: utf-8'
に修正
0 件のコメント:
コメントを投稿