リモートサーバ上で効率的にAnsibleを書くためにvimをカスタマイズする ( NERDTreeとvim-ansible-vault導入 )
vimのプラグイン管理ツールをインストールする(NEOBUNDLE)
$ curl https://raw.githubusercontent.com/Shougo/neobundle.vim/master/bin/install.sh | sh
■ Githubのプラグインも利用する(vim-ansible-yaml
)
NeoBundle 'chase/vim-ansible-yaml'
■ vimrcを編集する
if has('vim_starting') set nocompatible set runtimepath+=~/.vim/bundle/neobundle.vim/ endif set number imap <C-j> <esc> nnoremap <silent><C-e> :NERDTreeToggle<CR> call neobundle#begin(expand('~/.vim/bundle/')) NeoBundleFetch 'Shougo/neobundle.vim' NeoBundle 'Shougo/neosnippet.vim' NeoBundle 'Shougo/neosnippet-snippets' NeoBundle 'tpope/vim-fugitive' NeoBundle 'kien/ctrlp.vim' NeoBundle 'flazz/vim-colorschemes' NeoBundle 'scrooloose/nerdtree' NeoBundle 'Shougo/vimshell', { 'rev' : '3787e5' } NeoBundle 'chase/vim-ansible-yaml' NeoBundle 'vim-ansible-vault' call neobundle#end() filetype plugin indent on NeoBundleCheck
■ vim .vimrc
を開くと下記のようにインストールが始まるので y
と入力
Not installed bundles: ['vimshell', 'ctrlp.vim', 'vim-..., 'vim-fugitive', 'neosnippet.vim', 'neosnippet-snippets'] Install bundles now? (y)es, [N]o:
ansible-vaultをvimコマンドで利用する
秘密情報を暗号化するには
$ ansible-vault encrypt --vault-password-file=~/.vault_password vault.yaml
のコマンドが必要で打つのが結構しんどい..
めっちゃ便利ツールがあった..!ので導入。
vim-ansible-vault
を利用
.vimrc
に以下を追加NeoBundle 'vim-ansible-vault'
- ※ 上記の
.vimrc
ファイルには定義済み
vaultパスワードを記載したファイルを作成
~/.vault_password
暗号化するvimコマンド
:AnsibleVaultEncrypt
■ 結果
- 復号するvimコマンド
:AnsibleVaultDecrypt
■ 結果
ショートカット
コマンド | 説明 |
---|---|
Ctr+ww | タブを移動する |
Ctr+e | NEDRTreeモードにする |
Ctr+j | ESCボタン |
Ctr+wh | カーソルを左のウィンドウに移動する |
Ctr+wj | カーソルを下のウィンドウに移動する |
Ctr+wk | カーソルを上のウィンドウに移動する |
Ctr+wl | カーソルを右のウィンドウに移動する |
ファイル操作
コマンド | 説明 |
---|---|
o | ファイルオープンする |
t | タブでオープンする |
i | 水平分割でファイルをオープン |
s | 垂直分割でオープンする |
gt | 画面タブを移動する |
コマンドモード
コマンド | 説明 |
---|---|
:sh | シェルを実行してから戻ってこれる(vimが開いている状態になる) |
※ vimのショートカットメモは適宜更新します
まとめ
Ansibleをリモートサーバ上のvimを利用するときに効率的にコーディングするためにセットアップを紹介しました。 その他のvimの設定は以下の記事に記載しています。