vi(vim)で XML 編集
vi(vim)には、プログラムなどの文法をチェックするプラグインが存在する。また、多くのディストリビューションでは総合的な文法チェッカープラグインがデフォルトでインストールされている。そこで今回は、XML の編集で確認したいと思う。
- 文法チェッカーのインストール
総合的な文法チェッカー「vim-syntastic」と XML の「vim-syntastic-xml」をインストールします。$ sudo dnf install vim-syntastic vim-syntastic-xml
※ dnfdragora で確認しています。
文法チェッカーには「python」「sh」「java」「json」用など様々なモノがあります。
- XML の編集
通常は拡張子で判断しますが、拡張子が「.xml」でない場合は vi(vim)に通知する必要があります。
「:set ft=xml」と入力
これで XML として認識されます。
- vi(vim)の便利なコマンド
コマンド 説明 :set number 行番号を表示 :set nu 行番号を表示 :1 先頭に移動(行番号指定) G 末尾に移動 Ctrl + f 次のページに Ctrl + b 前のページに Ctrl + g 編集中のファイル名表示 :next 次の編集ファイルに :prev 前の編集ファイルに :mark a カーソルのある行を「a」というタグで登録 :’a 「a」というタグの行に移動 3yy 3行ヤンク(バッファにコピー) 4dd 4行消去(バッファにコピー) p(小文字) カーソル位置の後にバッファの内容をペースト P(大文字) カーソル位置の前にバッファの内容をペースト x(小文字) 1文字削除 cw ワードを変更 ~ 大文字 ⇔ 小文字 の変換 u アンドゥ :/xyz$ 末尾が「xyz」で終わる行を検索(正規表現) :2,10s/abc/def/g 2行目から10行目までの「abc」を「def」に置き換え :1,$s/hij/klm/g 1行目から末尾までの「hij」を「klm」に置き換え :1,’as/opq/rst/g 1行目から「a」というタグまでの「opq」を「rst」に置き換え :split 上下に表示を分割(1つのファイルの離れた場所を見るのに便利) :close 「:split」で分割した1つを閉じる Ctrl + ww 「:split」で分割したウインドウの切り替え :wq 書き込み修了 :wq! 書き込み修了(強制) :q! 書き込まずに修了