web-dev-qa-db-ja.com

VIMをHTMLエディターとして使用する

Notepad ++にこの機能があり、タグ(たとえば)をクリックすると、終了タグ()も自動的に強調表示されることをご存知ですか?それは何と呼ばれていますか?また、この機能を使用するためにVIMをどのように調整しますか?

そして、VIMを強力で効率的なHTMLエディターに変える方法は他にありますか?

28
user149135

私はすべてのHTML編集をvimで行います。 vimでHTMLとXMLを編集するのに最も役立つと思う3つのプラグインは、matchit、surround、および allml です。

Matchitを使用すると、「%」を使用して開始/終了タグにジャンプできます。サラウンドを使用すると、周囲のタグを簡単に追加、削除、および変更できます。 Allmlは、(X)HTMLおよびXMLを編集するための優れたマッピングセットを提供します。

13
Bryan

選択したテキストをタグでラップします。

    function! VisualTagsWrap()
        if !exists('g:tags_to_wrap')
            let g:tags_to_wrap=[]
        endif
        let g:tags_to_wrap=split(input('space separated tags to wrap block: ', join(g:tags_to_wrap, ' ')), '\s\+')
        if len(g:tags_to_wrap)>0
            execute 'normal! `>a</'.join(reverse(g:tags_to_wrap), '></').'>'
            execute 'normal! `<i<'.join(reverse(g:tags_to_wrap), '><').'>'
        endif
    endfunction


vnoremap <silent>,w <ESC>:call VisualTagsWrap()<CR>

タグの閉じ括弧を強調表示します。

set matchpairs+=<:>

ダミーテキスト(挿入モードで「lorem」と入力):

inoreabbrev lorem Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.
6

タグを照合するには:

matchit プラグインをご覧ください。 Vim 6以降matchit.vimは、標準ディストリビューションでパッケージ化されています。 matchitをインストールするには、:help matchit-installをお読みください。

filetype plugin onがvimrcにあることを確認してください。

インストールしたら、%を使用して開始/終了タグを一致させます。 :help matchit-intro詳細については。

3
shoban

Fedora 15では、matchit.vimvim-commonパッケージで提供されます。次に、これを~/.vimrcに追加して、機能させます。

source /usr/share/vim/vim73/macros/matchit.vim

次に、Shift+5(別名%)を押して、一致するタグにジャンプします。

.htmlサフィックスのないhtmlファイルを編集する場合は、次のコマンドを使用します。

:set filetype=html

matchitマクロをアクティブにします。

1
Leif Gruenwoldt

調べてください このリンク

バグレポートとそれを修正する可能性のあるパッチについて説明します。

set matchpairs+=<:>
set showmatch
set matchtime=3
0
pavium