-
Notifications
You must be signed in to change notification settings - Fork 0
/
.vimrc
executable file
·139 lines (102 loc) · 3.53 KB
/
.vimrc
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
"VimをなるべくVi互換にする
set nocompatible
""""""""""" メモ """""""""""{{{
" 現在のファイルとのvimdiff
" :vertical diffsplit {差分を見たい対象ファイル名}
"
" 水平分割 C-W C-W で移動
" :split
"
" 自動インデントの各段階に使われる空白の数
" :set shiftwidth=2
"
" コピー&ペーストモード
" :set paste
"
"}}}
""""""""""" Vimの基本的な設定 """""""""""{{{
" バックスペースキーの動作を決定する
" 2:indent,eol,startと同じ
set backspace=2
" 行数表示
set number
" 検索で小文字なら大文字を無視、大文字なら無視しない設定
set smartcase
" (no)検索をファイルの末尾まで検索したら、ファイルの先頭へループする
set nowrapscan
" インクリメンタルサーチを行う
set incsearch
" 閉じ括弧が入力されたとき、対応する括弧を表示する
set showmatch
" カーソルが何行目の何列目に置かれているかを表示する
set ruler
" 保存しないで他のファイルを表示することが出来るようにする
set hidden
" カレントバッファ内のファイルの文字エンコーディングを設定する
set fileencoding=utf-8
" タブを4スペースに置き換える
set expandtab
" ファイル内の <Tab> が対応する空白の数
set tabstop=4
" 自動インデントの各段階に使われる空白の数
set shiftwidth=4
" 行頭の余白内で Tab を打ち込むと、'shiftwidth' の数だけインデントする
set smarttab
" 新しい行を開始したときに、新しい行のインデントを現在行と同じ量にする
set autoindent
" 新しい行を作ったときに高度な自動インデントを行う
set smartindent
" 強調表示(色付け)のON/OFF設定
syntax on
" 空白文字の可視化
set list
" 検索文字をハイライト
set hls
" ハイライトを消す設定
nmap <Esc><Esc> :nohl<CR>
" 空白文字の可視化設定
set listchars=tab:>-,trail:.
" ステータスラインを表示するウィンドウを設定する
" 2:常にステータスラインを表示する
set laststatus=2
" ステータス行の表示内容を設定する
set statusline=%<%f\ %m%r%h%w%{'['.(&fenc!=''?&fenc:&enc).']['.&ff.']'}G8%=%l,%c%V%8P
" vimのバックアップファイルとスワップファイル
set nobackup
set noswapfile
set noundofile
" ビープ音をオフに設定
set vb t_vb=
"自動改行オフ
set tw=0
"gdb利用のための:Termdebug
packadd termdebug
let g:termdebug_wide = 163
" マウスモード有効
set mouse=a
" xtermとscreen対応
set ttymouse=xterm2
" MacVimやGVimを利用する際にIMEがモードの切替でオフとなる設定
set imdisable
" UTF-8文字化け対応
set termencoding=utf-8
set encoding=utf-8
set fileencoding=utf-8
set fileencodings=utf-8,cp932
" 256色対応
set t_Co=256
" txtファイルを自動改行しない
autocmd FileType text setlocal textwidth=0
" cppファイルをF4でコンパイルする
autocmd filetype cpp nnoremap <F4> :!g++ % -std=gnu++1y -O2 -o %:r <CR>
" cppファイルをF5でコンパイルして実行までする
autocmd filetype cpp nnoremap <F5> :!g++ % -std=gnu++1y -O2 -o %:r ; ./%:r <CR>
" F6で実行だけする
autocmd filetype cpp nnoremap <F6> :!./%:r <CR>
" cppファイルをF7でコピペしやすいようにコンソールにコードを表示
autocmd filetype cpp nnoremap <F7> :!cat % <CR>
" c cpp py hs js tsファイルの末尾スペースを除去
aug space
au!
autocmd BufWritePre *.c,*.cpp,*.py,*.hs,*.js,*.ts :%s/\s\+$//e
aug END