scriptencoding utf-8 " vim:set ts=8 sts=2 sw=2 tw=0: (この行に関しては:help modelineを参照) " " An example for a Japanese version gvimrc file. " 日本語版のデフォルトGUI設定ファイル(gvimrc) - Vim 8.1 " " Last Change: 26-Feb-2024. " Maintainer: MURAOKA Taro " " 解説: " このファイルにはVimの起動時に必ず設定される、GUI関連の設定が書かれていま " す。編集時の挙動に関する設定はvimrcに書かかれています。 " " 個人用設定は_gvimrcというファイルを作成しそこで行ないます。_gvimrcはこの " ファイルの後に読込まれるため、ここに書かれた内容を上書きして設定することが " 出来ます。_gvimrcは$HOMEまたは$VIMに置いておく必要があります。$HOMEは$VIM " よりも優先され、$HOMEでみつかった場合$VIMは読込まれません。 " " 管理者向けに本設定ファイルを直接書き換えずに済ませることを目的として、サイ " トローカルな設定を別ファイルで行なえるように配慮してあります。Vim起動時に " サイトローカルな設定ファイル($VIM/gvimrc_local.vim)が存在するならば、本設 " 定ファイルの主要部分が読み込まれる前に自動的に読み込みます。 " " 読み込み後、変数g:gvimrc_local_finishが非0の値に設定されていた場合には本設 " 定ファイルに書かれた内容は一切実行されません。デフォルト動作を全て差し替え " たい場合に利用して下さい。 " " 参考: " :help gvimrc " :echo $HOME " :echo $VIM " :version "--------------------------------------------------------------------------- " サイトローカルな設定($VIM/gvimrc_local.vim)があれば読み込む。読み込んだ後 " に変数g:gvimrc_local_finishに非0な値が設定されていた場合には、それ以上の設 " 定ファイルの読込を中止する。 if 1 && filereadable($VIM . '/gvimrc_local.vim') source $VIM/gvimrc_local.vim if exists('g:gvimrc_local_finish') && g:gvimrc_local_finish != 0 finish endif endif "--------------------------------------------------------------------------- " ユーザ優先設定($HOME/.gvimrc_first.vim)があれば読み込む。読み込んだ後に変 " 数g:gvimrc_first_finishに非0な値が設定されていた場合には、それ以上の設定 " ファイルの読込を中止する。 if 1 && exists('$HOME') && filereadable($HOME . '/.gvimrc_first.vim') unlet! g:gvimrc_first_finish source $HOME/.gvimrc_first.vim if exists('g:gvimrc_first_finish') && g:gvimrc_first_finish != 0 finish endif endif "--------------------------------------------------------------------------- " Bram氏の提供する設定例をインクルード (別ファイル:vimrc_example.vim)。これ " 以前にg:no_gvimrc_exampleに非0な値を設定しておけばインクルードしない。 if 1 && (!exists('g:no_gvimrc_example') || g:no_gvimrc_example == 0) source $VIMRUNTIME/gvimrc_example.vim endif "--------------------------------------------------------------------------- " カラー設定: colorscheme slate " 端末モード関連の色設定 highlight Terminal guifg=lightgrey guibg=grey20 "--------------------------------------------------------------------------- " フォント設定: " if has('win32') " Windows用 set guifont=MS_Gothic:h12:cSHIFTJIS "set guifont=MS_Mincho:h12:cSHIFTJIS " 行間隔の設定 set linespace=1 " 一部のUCS文字の幅を自動計測して決める if has('kaoriya') set ambiwidth=auto endif elseif has('mac') set guifont=Osaka-等幅:h14 elseif has('xfontset') " UNIX用 (xfontsetを使用) set guifontset=a14,r14,k14 endif "--------------------------------------------------------------------------- " ウインドウに関する設定: " " ウインドウの幅 set columns=80 " ウインドウの高さ set lines=25 " コマンドラインの高さ(GUI使用時) set cmdheight=2 " 画面を黒地に白にする (次行の先頭の " を削除すれば有効になる) "colorscheme evening " (GUI使用時) "--------------------------------------------------------------------------- " 日本語入力に関する設定: " if has('multi_byte_ime') || has('xim') " IME ON時のカーソルの色を設定(設定例:紫) highlight CursorIM guibg=Purple guifg=NONE " 挿入モード・検索モードでのデフォルトのIME状態設定 " (8.0.1114 でデフォルトになったが念のため残してある) "set iminsert=0 imsearch=0 " 挿入モードでのIME状態を記憶させない場合、次行のコメントを解除 "inoremap :set iminsert=0 endif "--------------------------------------------------------------------------- " マウスに関する設定: " " 解説: " mousefocusは幾つか問題(一例:ウィンドウを分割しているラインにカーソルがあっ " ている時の挙動)があるのでデフォルトでは設定しない。Windowsではmousehide " が、マウスカーソルをVimのタイトルバーに置き日本語を入力するとチラチラする " という問題を引き起す。 " " どのモードでもマウスを使えるようにする set mouse=a " マウスの移動でフォーカスを自動的に切替えない (mousefocus:切替る) set nomousefocus " 入力時にマウスポインタを隠す (nomousehide:隠さない) set mousehide " ビジュアル選択(D&D他)を自動的にクリップボードへ (:help guioptions_a) "set guioptions+=a "--------------------------------------------------------------------------- " メニューに関する設定: " " 解説: " "M"オプションが指定されたときはメニュー("m")・ツールバー("T")供に登録され " ないので、自動的にそれらの領域を削除するようにした。よって、デフォルトのそ " れらを無視してユーザが独自の一式を登録した場合には、それらが表示されないと " いう問題が生じ得る。しかしあまりにレアなケースであると考えられるので無視す " る。 " if &guioptions =~# 'M' let &guioptions = substitute(&guioptions, '[mT]', '', 'g') endif "--------------------------------------------------------------------------- " その他、見栄えに関する設定: " " 検索文字列をハイライトしない(_vimrcではなく_gvimrcで設定する必要がある) "set nohlsearch "--------------------------------------------------------------------------- " 印刷に関する設定: " " 注釈: " 印刷はGUIでなくてもできるのでvimrcで設定したほうが良いかもしれない。この辺 " りはWindowsではかなり曖昧。一般的に印刷には明朝、と言われることがあるらし " いのでデフォルトフォントは明朝にしておく。ゴシックを使いたい場合はコメント " アウトしてあるprintfontを参考に。 " " 参考: " :hardcopy " :help 'printfont' " :help printing " " 印刷用フォント if has('printer') if has('win32') set printfont=MS_Mincho:h12:cSHIFTJIS "set printfont=MS_Gothic:h12:cSHIFTJIS endif endif " Copyright (C) 2009-2018 KaoriYa/MURAOKA Taro " 「日本語入力固定モード」の動作モード let IM_CtrlMode = 4 " 「日本語入力固定モード」切替キー inoremap =IMState('FixMode') let cmdheight=4 " 起動時に最大化 au GUIEnter * simalt ~x "半角文字の設定 set guifont=MS_Gothic:h17 "全角文字の設定 set guifontwide=MS_Gothic:h17 "行間の設定 set linespace=20 " カラー設定: colorscheme industry "文字コードの設定 set encoding=utf-8 set fileencodings=utf-8,iso-2022-jp,euc-jp,sjis set fileformats=unix,dos,mac "Vimをタブエディタ化する set showtabline=1 " 日時を挿入→ノーマルモード nmap o=strftime("%Y-%m-%d_%H:%M") "Vimが変なファイルを作るようになった→完全に無効化する。 :set noundofile "ヤンク,カット操作によるクリップボードの操作 set clipboard=unnamed,autoselect "自動的にquickfix-windowを開く autocmd QuickFixCmdPost *grep* cwindow "メニューバーを非表示にする set guioptions-=m "ツールバーを非表示にする set guioptions-=T "左右のスクロールバーを非表示にする set guioptions-=r set guioptions-=R set guioptions-=l set guioptions-=L "水平スクロールバーを非表示にする set guioptions-=b "--- 引用符付き貼り付け nmap i""hp "*.swp ファイル無効化 :set noswapfile "*~ (チルダ)ファイル無効化 :set nobackup ".viminfo ファイル無効化 :set viminfo= "*.un~ ファイル無効化 :set noundofile "フォントを指定する set guifont=Consolas:h17 "ステータスラインを非表示にする。 :set laststatus=0 "自動スクロールをoffにする。 :set scrolloff=0 "折り返し表示の際にも表示行単位で移動する nnoremap j gj nnoremap k gk vnoremap j gj vnoremap k gk "左右のカーソル移動で行を跨いで移動 :set whichwrap=b,s,h,l,<,>,[,],~ "Shift + h で左端、 Shift + lで右端にカーソル移動。 noremap ^ noremap $ "ノーマルモードでもリターンキーで改行 nnoremap A "外部でファイルに変更がされた場合は読みなおす set autoread " カーソルを点滅させない set guicursor=a:blinkon0 "ビープ音すべてを無効にする set visualbell t_vb= "エラーメッセージの表示時にビープを鳴らさない set noerrorbells "画面右下のカーソル位置、非表示 set noruler set iminsert=2 "Escapeキー3回で全選択 inoremap inoremap ggVG nnoremap ggVG vnoremap ggVG