_vimrcファイルを書き出すbatファイル
ついでにNeoBundleもインストールさせてみるテスト
結論から言うと「こんなもの書かずにgitで管理しろ」って言うのが正解。
動作
実行すると%userprofile%(たぶん7だとC:\Users\ユーザー名)に_vimrcファイルを作成
追加でNeoBundleをインストール可能(要git)
もともと_vimrcがあった場合は消さずに一番下に追加していく対応
動作対象はWin7
Mac?知らない
生成される_vimrcはこんな感じ
NeoBundleもインストールするとその下にNeoBundleの設定も追加する。
追加で書いてあるスクリプトは
- 全角スペースの可視化
- 日付の挿入
- 時刻の挿入
になってます
_vimrc
"Generate VimSetup.Bat @KORYUOH "Generate By 2014/10/18 "スワップファイルはいらない setnoswapfile"バックアップファイルもいらない setnobackup"undoファイルも作らない "set noundofile "表示タブ幅 settabstop=4"挿入タブ幅 setshiftwidth=4"タブをスペースに展開しない setnoexpandtab"行番号表示 setnumber"長い行の折り返しをしない setnowrap"指定文字数を超えた場合、空白の跡で折り返さない settextwidth=0"カーソル行の色を変える setcursorline"ウィンドウの上下端でカーソル先の視界をいくつ確保するか setscrolloff=8"ウィンドウの左右端でカーソル先の司会をいくつ確保するか setsidescrolloff=16"左右端でスクロールが発生したときに何文字スクロールさせるか setsidescroll=1"インクリメント/デクリメントを0埋めされてても10進数として増減させる setnf="日付の挿入
nmap <F5><ESC>a<C-R>=strftime("%Y/%m/%d")<CR><ESC>"時間の挿入
nmap <F6><ESC>a<C-R>=strftime("%H:%M")<CR><ESC>"全角スペースの表示 function! WideSpace()highlight WideSpace cterm=underline ctermfg=lightblue guibg=darkgray
endfunctionif has('syntax')
augroup WideSpace
autocmd!autocmdColorScheme * call WideSpace() "autocmd VimEnter,WinEnter,BufRead * let w:m1=matchadd('WideSpace' , ' ') autocmdVimEnter,WinEnter,BufRead * match WideSpace / /
augroup END
call WideSpace()endif
NeoBundle追加分
"=============================================================================== "NEOBUNDLEの設定 "=============================================================================== " vim起動時のみruntimepathにneobundle.vimを追加 if has('vim_starting')setnocompatiblesetruntimepath+=~/.vim/neobundle/neobundle.vimendif" neobundle.vimの初期化 call neobundle#begin(expand('~/.vim/neobundle'))" NeoBundleを更新するための設定
NeoBundleFetch 'Shougo/neobundle.vim'" neobundle.vimの初期化終了 call neobundle#end()" 読み込むプラグインを記載
NeoBundle 'Shougo/unite.vim'
NeoBundle 'itchyny/lightline.vim'
NeoBundle 'ujihisa/unite-colorscheme'
NeoBundle 'mattn/flappyvird-vim'" 読み込んだプラグインも含め、ファイルタイプの検出、ファイルタイプ別プラグイン/インデントを有効化する filetype plugin indent on" インストールのチェック
NeoBundleCheck
実装
それでは中身
VimSetUp.bat
@echo off
rem _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
rem @brief vimrcファイルを作成してついでにNeoBundleもインストールするbat
rem @author KORYUOH
rem @Create 2014/10/18
rem @Update 2014/10/18
rem @Version 1.00
rem _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
title VimSetup
echo _vimrcを生成します。
echo 追加でNEOBUNDLE をインストールしますか?(y/n)set /p pushKey=""cd %userprofile%
if exist _vimrc (goto APPEND)elsegoto INITIALIZE
:INITIALIZE
type nul > _vimrc
:APPEND
echo ^"Generate VimSetup.Bat @KORYUOH >>_vimrc
echo ^"Generate By %DATE% >>_vimrc
echo.>>_vimrc
echo ^"スワップファイルはいらない >>_vimrc
echo setnoswapfile>>_vimrc
echo ^"バックアップファイルもいらない >>_vimrc
echo setnobackup>>_vimrc
echo ^"undoファイルも作らない >>_vimrc
echo ^"set noundofile >>_vimrc
echo. >>_vimrc
echo ^"表示タブ幅 >>_vimrc
echo settabstop=4>>_vimrc
echo ^"挿入タブ幅 >>_vimrc
echo setshiftwidth=4>>_vimrc
echo ^"タブをスペースに展開しない >>_vimrc
echo setnoexpandtab>>_vimrc
echo ^"行番号表示 >>_vimrc
echo setnumber>>_vimrc
echo ^"長い行の折り返しをしない >>_vimrc
echo setnowrap>>_vimrc
echo ^"指定文字数を超えた場合、空白の跡で折り返さない >>_vimrc
echo settextwidth=0>>_vimrc
echo ^"カーソル行の色を変える >>_vimrc
echo setcursorline>>_vimrc
echo. >>_vimrc
echo ^"ウィンドウの上下端でカーソル先の視界をいくつ確保するか >>_vimrc
echo setscrolloff=8>>_vimrc
echo ^"ウィンドウの左右端でカーソル先の司会をいくつ確保するか >>_vimrc
echo setsidescrolloff=16>>_vimrc
echo ^"左右端でスクロールが発生したときに何文字スクロールさせるか >>_vimrc
echo setsidescroll=1>>_vimrc
echo.>>_vimrc
echo ^"インクリメント/デクリメントを0埋めされてても10進数として増減させる >>_vimrc
echo setnf=>>_vimrc
echo. >>_vimrc
echo ^"日付の挿入 >>_vimrc
echo nmap ^<F5^> ^<ESC^>a^<C-R^>=strftime(^"%%Y/%%m^/%%d^")^<CR^>^<ESC^>>>_vimrc
echo. >>_vimrc
echo ^"時間の挿入 >>_vimrc
echo nmap ^<F6^> ^<ESC^>a^<C-R^>=strftime(^"%%H:%%M^")^<CR^>^<ESC^>>>_vimrc
echo. >>_vimrc
echo ^"全角スペースの表示 >>_vimrc
echo function! WideSpace()>>_vimrc
echo highlight WideSpace cterm=underline ctermfg=lightblue guibg=darkgray >>_vimrc
echo endfunction>>_vimrc
echo. >>_vimrc
echo if has('syntax')>>_vimrc
echo augroup WideSpace >>_vimrc
echo autocmd!>>_vimrc
echo autocmdColorScheme * call WideSpace()>>_vimrc
echo ^"autocmdVimEnter,WinEnter,BufRead * letw:m1=matchadd('WideSpace',' ')>>_vimrc
echo autocmdVimEnter,WinEnter,BufRead * match WideSpace / />>_vimrc
echo augroup END >>_vimrc
echo call WideSpace()>>_vimrc
echo endif>>_vimrc
echo. >>_vimrc
if"%pushkey%"=="y"goto NEOBUNDLE
if"%pushkey%"=="Y"goto NEOBUNDLE
if"%pushkey%"=="yes"goto NEOBUNDLE
if"%pushkey%"=="YES"goto NEOBUNDLE
goto EOF
:NEOBUNDLE
mkdir".vim/neobundle"cd".vim/neobundle"
git clone git://github.com/Shougo/neobundle.vimcd ../..
echo ^"===============================================================================>>_vimrc
echo ^"NEOBUNDLEの設定 >>_vimrc
echo ^"===============================================================================>>_vimrc
echo ^" vim起動時のみruntimepathにneobundle.vimを追加 >>_vimrc
echo if has('vim_starting')>>_vimrc
echo setnocompatible>>_vimrc
echo setruntimepath+=~/.vim/neobundle/neobundle.vim>>_vimrc
echo endif>>_vimrc
echo. >>_vimrc
echo ^" neobundle.vimの初期化 >>_vimrc
echo call neobundle#begin(expand('~/.vim/neobundle'))>>_vimrc
echo ^" NeoBundleを更新するための設定 >>_vimrc
echo NeoBundleFetch 'Shougo/neobundle.vim'>>_vimrc
echo ^" neobundle.vimの初期化終了 >>_vimrc
echo call neobundle#end()>>_vimrc
echo. >>_vimrc
echo ^" 読み込むプラグインを記載 >>_vimrc
echo NeoBundle 'Shougo/unite.vim'>>_vimrc
echo NeoBundle 'itchyny/lightline.vim'>>_vimrc
echo NeoBundle 'ujihisa/unite-colorscheme'>>_vimrc
echo NeoBundle 'mattn/flappyvird-vim'>>_vimrc
echo. >>_vimrc
echo ^" 読み込んだプラグインも含め、ファイルタイプの検出、ファイルタイプ別プラグイン/インデントを有効化する >>_vimrc
echo filetype plugin indent on>>_vimrc
echo. >>_vimrc
echo ^" インストールのチェック >>_vimrc
echo NeoBundleCheck >>_vimrc
goto EOF
:EOF