Ⅰ. 插件描述
JavaScript用オブジェクト指向矯正ギプス的な何かⅡ. 基本信息
|
Ⅲ. 安装方法
使用Vundle管理器安装
在你的.vimrc下添加:Plugin 'atsushim/oop-js-vim'
… 然后在Vim中运行以下命令:
:source %
:PluginInstall
对于Vundle版本 < 0.10.2,请用上面的Bundle替换Plugin。
使用NeoBundle管理器安装
在你的.vimrc下添加:NeoBundle 'atsushim/oop-js-vim'
… 然后在Vim中运行以下命令:
:source %
:NeoBundleInstall
使用VimPlug管理器安装
在你的.vimrc下添加:Plug 'atsushim/oop-js-vim'
… 然后在Vim中运行以下命令:
:source %
:PlugInstall
使用Pathogen管理器安装
在终端中运行以下命令:cd ~/.vim/bundle
git clone https://github.com/atsushim/oop-js.vim
Ⅳ. 文档说明
JavaScriptでのコーディング時、厳しい制約を課すことで
オブジェクト脳への矯正を行うプラグインです。
jslint, gjslintとの併用をおすすめします。
!制約の内容は変更可能ですが、
!デフォルトではかなりマゾヒスティックな内容になっています。
!ご注意ください。
" コマンド
:OOPJSCheck
現在ファイルに対して制約のチェックを行います。
デフォルトでのチェック内容は
・1ファイル50行以内(小クラス主義)
・1ファイル内でvar宣言は5個(クラスが持ち得る状態のパターンを減らす)
・1行で使える.(ドット)は3個(なるべく直接のプロパティにのみアクセスすることで分かりやすさを向上)
・1ファイル中のifは5個(ifを少なくすることでのネストの排除 & 小クラス化の促進)
・1ファイル中のelseは1個(elseを少なくすることで早期returnの推奨)
・1ファイル中のswitchは1個(switchを少なくすることで小クラス化の促進)
・1ファイル中のforは3個(forを少なくすることでネストの排除 & 小クラス化の促進)
・1ファイル中のwhileは3個(whileを少なくすることでネストの排除 & 小クラス化の促進)
・1ファイル中のdoは1個(doの使用を制限)
・1ファイル内の無名関数は5個(1クラスあたりのメソッドの個数を制限し小クラス化を促進)
・1ファイル内の名前付き関数は5個(メンバ関数の乱立を抑止)
となっています。
" 設定
" 自動チェック(拡張子がjsのファイルを保存した場合チェックを自動実行)
let g:oopjs_autocheck = 0 "自動実行無し
let g:oopjs_autocheck = 1 "自動実行有り
" 無視するファイル名を指定(正規表現OK)
let g:oopjs_ignorecheckfile = ['test.js', 'min.js', 'combine.js', 'lib/.+.js']
" 1ファイルの限界行数
let g:oopjs_linelimitnum = 50
" 1ファイル内のvar宣言の限界数
let g:oopjs_varlimitnum = 5
" 1行で使える.(ドット)の数
let g:oopjs_dotlimitnum = 3
" 1ファイル中で使えるifの個数
let g:oopjs_iflimitnum = 5
" 1ファイル中で使えるelseの個数
let g:oopjs_elselimitnum = 1
" 1ファイル中で使えるswitchの個数
let g:oopjs_switchlimitnum = 1
" 1ファイル中のforの個数
let g:oopjs_forlimitnum = 3
" 1ファイル中のwhileの個数
let g:oopjs_whilelimitnum = 3
" 1ファイル中のdoの個数
let g:oopjs_dolimitnum = 1
" 1ファイル内の無名関数の個数
let g:oopjs_anonymousfunctionlimitnum = 5
" 1ファイル中の名前付き関数の個数
let g:oopjs_namedfunctionlimitnum = 5