Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

【ネタ】_vimrcを書き出すバッチファイル

$
0
0

_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

Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>