_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
"スワップファイルはいらない
set noswapfile
"バックアップファイルもいらない
set nobackup
"undoファイルも作らない
"set noundofile
"表示タブ幅
set tabstop=4
"挿入タブ幅
set shiftwidth=4
"タブをスペースに展開しない
set noexpandtab
"行番号表示
set number
"長い行の折り返しをしない
set nowrap
"指定文字数を超えた場合、空白の跡で折り返さない
set textwidth=0
"カーソル行の色を変える
set cursorline
"ウィンドウの上下端でカーソル先の視界をいくつ確保するか
set scrolloff=8
"ウィンドウの左右端でカーソル先の司会をいくつ確保するか
set sidescrolloff=16
"左右端でスクロールが発生したときに何文字スクロールさせるか
set sidescroll=1
"インクリメント/デクリメントを0埋めされてても10進数として増減させる
set nf=
"日付の挿入
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
endfunction
if has('syntax')
augroup WideSpace
autocmd!
autocmd ColorScheme * call WideSpace()
"autocmd VimEnter,WinEnter,BufRead * let w:m1=matchadd('WideSpace' , ' ')
autocmd VimEnter,WinEnter,BufRead * match WideSpace / /
augroup END
call WideSpace()
endif
NeoBundle追加分
"===============================================================================
"NEOBUNDLEの設定
"===============================================================================
" vim起動時のみruntimepathにneobundle.vimを追加
if has('vim_starting')
set nocompatible
set runtimepath+=~/.vim/neobundle/neobundle.vim
endif
" 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) else goto INITIALIZE
:INITIALIZE
type nul > _vimrc
:APPEND
echo ^"Generate VimSetup.Bat @KORYUOH >>_vimrc
echo ^"Generate By %DATE% >>_vimrc
echo.>>_vimrc
echo ^"スワップファイルはいらない >>_vimrc
echo set noswapfile >>_vimrc
echo ^"バックアップファイルもいらない >>_vimrc
echo set nobackup >>_vimrc
echo ^"undoファイルも作らない >>_vimrc
echo ^"set noundofile >>_vimrc
echo. >>_vimrc
echo ^"表示タブ幅 >>_vimrc
echo set tabstop=4 >>_vimrc
echo ^"挿入タブ幅 >>_vimrc
echo set shiftwidth=4 >>_vimrc
echo ^"タブをスペースに展開しない >>_vimrc
echo set noexpandtab >>_vimrc
echo ^"行番号表示 >>_vimrc
echo set number >>_vimrc
echo ^"長い行の折り返しをしない >>_vimrc
echo set nowrap >>_vimrc
echo ^"指定文字数を超えた場合、空白の跡で折り返さない >>_vimrc
echo set textwidth=0 >>_vimrc
echo ^"カーソル行の色を変える >>_vimrc
echo set cursorline >>_vimrc
echo. >>_vimrc
echo ^"ウィンドウの上下端でカーソル先の視界をいくつ確保するか >>_vimrc
echo set scrolloff=8 >>_vimrc
echo ^"ウィンドウの左右端でカーソル先の司会をいくつ確保するか >>_vimrc
echo set sidescrolloff=16 >>_vimrc
echo ^"左右端でスクロールが発生したときに何文字スクロールさせるか >>_vimrc
echo set sidescroll=1 >>_vimrc
echo.>>_vimrc
echo ^"インクリメント/デクリメントを0埋めされてても10進数として増減させる >>_vimrc
echo set nf= >>_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 autocmd ColorScheme * call WideSpace() >>_vimrc
echo ^"autocmd VimEnter,WinEnter,BufRead * let w:m1=matchadd('WideSpace' , ' ') >>_vimrc
echo autocmd VimEnter,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.vim
cd ../..
echo ^"=============================================================================== >>_vimrc
echo ^"NEOBUNDLEの設定 >>_vimrc
echo ^"=============================================================================== >>_vimrc
echo ^" vim起動時のみruntimepathにneobundle.vimを追加 >>_vimrc
echo if has('vim_starting') >>_vimrc
echo set nocompatible >>_vimrc
echo set runtimepath+=~/.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