LiveReload
最近のほとんどのWeb開発者は、この驚くべき拡張なしに自分の人生を想像することはほとんどできません。 WebStorm、Sublime Textなどのエディターにあり、LiveReloadをサポートしないエディター用の個別のアプリケーションとして存在します。 残念ながら、Vimはそれらのエディターの1つです。 拡張機能はありますが、古くなっており、最新のLiveReload 2プロトコルをサポートしていません。
幸いなことに、python-livereloadと呼ばれる優れたコンソールユーティリティがあります。 このユーティリティの大きな利点のうち、Google Chrome、Firefoxなどのプラグインをインストールする必要はありませんが、ユーティリティは無料です。 ソースはgithub.com/lepture/python-livereloadから入手できます。pipまたはeasy_installでインストールできます。
pip install livereload
編集を開始する前に、通常のPythonスクリプトであるGuardfileを作成する必要があります。
#!/usr/bin/env python from livereload.task import Task Task.add('css/*.css') Task.add('*.html')
次に、現在のディレクトリで次のコマンドを使用してLiveReloadサーバーを起動できます。
livereload -p 8000
Python-livereloadは、less、coffee、uglifyjs、slimmerもサポートしています。 livereload.compilerモジュールから対応する関数をインポートするだけで十分です。次に例を示します。
#!/usr/bin/env python from livereload.task import Task from livereload.compiler import lessc, coffee Task.add('css/*.css') Task.add('*.html') Task.add('css/style.less', lessc('style.less', 'style.css') Task.add('js/main.coffee', coffee('main.coffee', 'main.js')
基本的なvimエディター設定
次に、将来コードを快適に操作するのに役立つ基本設定について説明します。 まず、リーダーキーを設定しましょう。
mapleader = "、"を設定します
リーダーキーを使用すると、エディターに既に存在する標準の組み合わせを損なうことなく、独自の組み合わせを作成できます。 リーダーキーとして、「、」の組み合わせを設定します。他の設定も可能です。
エディターから余分なものをすべて削除しようとしました(GUIのタブを除く)。 これを行うには、次の設定を使用します
if has('gui_running') " GUI Vim set guioptions-=m " " set guioptions-=e " GUI set guioptions-=T " set guioptions-=r " set guioptions-=L " set background=light " set guioptions-=R set guioptions-=l endif
コメントアウトされた行セットguioptions- = eに注意してください。 有効にすると、タブはコンソールウィンドウに表示されます。
エディタウィンドウを区切るダッシュ間のインデントは削除できるため、
set fillchars=stl:\ ,stlnc:\ ,vert:│
次に、表示できない文字を設定します。これらには、空白文字、改行、タブが含まれます。 次の設定を使用します
if has('multi_byte') if version >= 700 " set listchars=tab:»\ ,trail:·,eol:¶,extends:→,precedes:←,nbsp:× set listchars=tab:▸\ ,eol:¬ # TextMate else set listchars=tab:»\ ,trail:·,eol:¶,extends:>,precedes:<,nbsp:_ endif endif nmap <leader>l :set list!<CR>
リーダー+ lの組み合わせを結び付けて、非表示文字を常にオンおよびオフにします。これらは常に必要なわけではなく、編集を妨げることさえあります。
ヒント:エディターにテキストを挿入するときに、フォーマットが保存されず、エディターにゴミが表示されることがあります。 これを回避するには、 set paste行をvimrcに追加するか、コマンドを入力します。テキストを挿入する前にset paste
バンドル
Vundleは、拡張機能のインストールと更新を簡単にします。 記事の後半で、このプラグインを使用して拡張機能をインストールします。 のインストールには時間がかかりますので、すぐにインストールしましょう。
git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle
ここで、次の行を.vimrcに追加する必要があります。
set nocompatible filetype off set rtp+=~/.vim/bundle/vundle/ call vundle#rc() " filetype plugin indent on " vim
拡張機能をインストールするには、次の形式を使用します
Bundle 'tpope/vim-fugitive' " Github Bundle 'FuzzyFinder' " vim-scripts Bundle 'git://git.wincent.com/command-t.git' " Git
電力線
vimのステータス行は鈍くandいように見えます。 幸いなことに、より有益で美しいプラグインがあります。 ステータスバーの表示例
インストール:バンドル「Lokaltog / vim-powerline」
現在のgitリポジトリのブランチを表示するには、現在のディレクトリにバンドル「tpope / vim-fugitive」を追加してインストールします。 Powerlineが正しく機能するためには、修正されたフォントをここからダウンロードし、インストールして、エディターに登録する必要があります。 例:
set guifont=Menlo\ Regular\ for\ Powerline:h12
Command-t
Command-Tは、ファイルを名前ですばやく開き、バッファまたはタグを切り替えることができる優れた拡張機能です。
インストール:バンドル「wincent / Command-T」
次に、command-t拡張ディレクトリに移動して、rake makeを実行します。
cd .vim/bundle/command-t rake make
キーボードショートカットは次のように構成できます。
map <leader>f :CommandT<CR> map <leader>b :CommandTBuffer<CR>
リーダー+ fでCommand-Tが開き、リーダー+ bで開いているバッファーのリストが開きます。
パイトンモード
Pythonモードでは、エディターからほぼ完全なIDEを作成できます。 python-modeでできること:
1. pyflakes、pep8、pylint、mccable、pep257による強調表示エラー
2. Ropeの完全サポート(RopeCompletion、RopeGotoDefinition、RopeRename、RopeAutoImportなど)
3. virtualenvをサポート
Pythonモード設定の例
" Rope let g:pymode_rope = 1 " linting let g:pymode_lint = 1 " let g:pymode_lint_checker = "pyflakes,pep8" " , let g:pymode_lint_cwindow = 0 " virtualenv let g:pymode_virtualenv = 1 " let g:pymode_syntax = 1 let g:pymode_syntax_all = 1 let g:pymode_syntax_indent_errors = g:pymode_syntax_all let g:pymode_syntax_space_errors = g:pymode_syntax_all " let g:pymode_folding = 0 " let g:pymode_breakpoint = 1 " leader + e let g:pymode_breakpoint_key = '<leader>e'
キーボードショートカット:
組み合わせ | 説明 |
---|---|
Ccg | 定義に移動 |
Cスペース | ロープのオートコンプリート |
Ccd | ロープショーのドキュメント |
Ccf | ロープ検索オカレンス |
ロープのオートコンプリートでは、リーダーとcの組み合わせを構成しました。 そのように点灯します
imap <leader>c <CR>=RopeCodeAssistInsertMode()<CR>
github.com/aliev/vimに詳細なコメントが記載されたVim設定ファイルを見ることができます。
その他の便利なvim拡張機能
マッチタグ
バンドル「gregsexton / MatchTag」
ペアのhtml、xmlタグの強調表示
終わりに
バンドル「tpope / vim-endwise」
Rubyのブロックを自動的に閉じることを可能にする、rubistsの優れた拡張機能
エメット
バンドル「mattn / emmet-vim」
私は非常に長い間、この延長を待っていました。 Emmetサポート(Zen Codingに改名)
Tコメント
バンドル「tomtom / tcomment_vim」
自動言語検出によるコードブロックのコメント化