root/dotfiles/.vimrc

Revision 550, 4.3 KB (checked in by sasata299, 3 years ago)

mac用に設定を一部変更した

  • Property svn:executable set to *
Line 
1
2" vi互換OFF(vimの独自拡張機能も使うため)
3set nocompatible
4
5"set ambiwidth=double
6
7let g:github_user  = "sasata299"
8let g:github_token = "xxxxxxxxx"
9
10let twitvim_login = "sasata299:xxxxxxxxx"
11let twitvim_count = 100
12
13syntax on
14filetype plugin indent on
15
16" # の行で改行したときなどに # をつけないように
17autocmd FileType * setlocal formatoptions-=r
18autocmd FileType * setlocal formatoptions-=o
19
20" 前回開いた場所を記憶する
21if has("autocmd")
22    autocmd BufReadPost *
23    \ if line("'\"") > 0 && line ("'\"") <= line("$") |
24    \   exe "normal! g'\"" |
25    \ endif
26endif
27
28" ファイルを開くたびに、そのファイルのディレクトリに移動する
29autocmd BufEnter * execute ":lcd " . expand("%:p:h")
30
31set tags=~/.tags
32set ignorecase
33set smartcase
34set wildmenu
35set hidden
36set expandtab
37set tabstop=4
38set shiftwidth=4
39set softtabstop=0
40set smartindent
41set history=50
42set backspace=indent,eol,start
43set hlsearch
44set directory-=.
45
46" 対応する括弧のやつが邪魔なのでこれで消しとく
47let g:loaded_matchparen = 1
48
49" 編集中のファイルのファイル名を変更
50command! -nargs=1 -complete=file Rename f <args>|call delete(expand('#'))
51
52augroup SkeletonAu
53    autocmd!
54    autocmd BufNewFile *.pl 0r $HOME/.vim/template/skel.pl
55    autocmd BufNewFile *.PL 0r $HOME/.vim/template/skel.PL
56    autocmd BufNewFile *.t 0r $HOME/.vim/template/skel.t
57    autocmd BufNewFile *.html 0r $HOME/.vim/template/skel.html
58augroup END
59
60" for Java
61let java_highlight_all=1
62let java_highlight_function="style"
63let java_allow_cpp_keywords=1
64
65" autocomplpop.vim の設定
66autocmd FileType perl :set dictionary=/usr/share/vim/vim71/syntax/perl.vim
67autocmd FileType ruby :set dictionary=/usr/share/vim/vim71/syntax/ruby.vim
68autocmd FileType java :set dictionary=/usr/share/vim/vim71/syntax/java.vim
69autocmd FileType html :set dictionary=/usr/share/vim/vim71/syntax/html.vim
70autocmd FileType javascript :set dictionary=/usr/share/vim/vim71/syntax/javascript.vim
71highlight Pmenu ctermbg=8 ctermfg=6
72highlight PmenuSel ctermbg=4 ctermfg=2
73highlight PmenuSbar ctermbg=4
74"highlight Pmenu ctermbg=7 ctermfg=7
75"highlight PmenuSel ctermbg=2 ctermfg=7
76"highlight PmenuSbar ctermbg=2
77
78
79" rails.vim の設定
80let g:rails_level=4
81let g:rails_default_file="app/controllers/application.rb"
82let g:rails_default_database="mysql"
83
84" surround.vim の設定
85let g:surround_103 = "('\r')"  " 103 = g
86let g:surround_71 = "(\"\r\")" " 71 = G
87
88" 括弧を挿入する
89nmap gs cs'g
90nmap gd cs"G
91
92nmap qds cs"'
93nmap qsd cs'"
94
95" ステータスラインの設定
96set encoding=utf8
97set fileencodings=utf8,euc-jp,cp932,sjis
98set laststatus=2
99set statusline=%<%f\%=\%m%r%h%w%{'['.(&fenc!=''?&fenc:&enc).']['.&ff.']'}[line:%l][%p%%]
100hi StatusLine term=NONE cterm=NONE ctermfg=white ctermbg=red
101
102autocmd FileType xml  imap <BUFFER> << </<C-x><C-o>
103autocmd FileType html imap <BUFFER> << </<C-x><C-o>
104autocmd FileType perl :map <C-n> <ESC>:!perl -cw %<CR>
105autocmd FileType perl :map <C-e> <ESC>:!perl %<CR>
106autocmd FileType ruby :map <C-n> <ESC>:!ruby -cW %<CR>
107autocmd FileType ruby :map <C-e> <ESC>:!ruby %<CR>
108autocmd FileType ruby setlocal ts=2 sw=2 sts=0
109
110" 画面分割したときに、サイズを自動調整
111nmap <C-w>w <C-w>w:call <SID>good_width()<CR>
112function! s:good_width()
113  "if winheight(0) < 40
114  "  resize 40
115  if winwidth(0) < 80
116    vertical resize 80
117  endif
118endfunction
119
120" normal mode
121nmap j gj
122nmap k gk
123nmap ; :
124nmap U <C-r>
125nmap T dt
126nmap t ct
127nmap tt yiw
128nmap O :<C-u>call append(expand('.'), '')<CR>j
129nmap <space>, :<C-u>edit $MYVIMRC<CR>
130
131" visual mode
132vmap j gj
133vmap k gk
134vmap ; :
135
136" 選択範囲のみ検索
137vmap / /\%V
138vmap ? ?\%V
139
140" command mode
141cmap qq q!
142cmap AA Align=
143
144" insert mode(CR = Enter)
145imap <C-j> <C-[>
146imap <C-k> <C-m>
147imap { {}<LEFT>
148imap [ []<LEFT>
149imap ( ()<LEFT>
150imap <C-l> <RIGHT>
151
152
153" -------------------------------
154"  Tips
155" -------------------------------
156" f? で特定の単語まで移動できる
157" dt? で特定の単語まで削除
158" 数字の上で Ctrl-a でインクリメント、Crtl-x でデクリメント
159" :%s//aaa/ で最後に検索した文字を aaa に置換
160" :set fenc=*** でファイルエンコードを変更
161" :e ++enc=*** でファイルエンコードを変更して開き直し
162" :e! でファイルを開きなおす
163" w で単語単位で進む。b で単語単位で戻る。
164
Note: See TracBrowser for help on using the browser.