
Kate で長い HTML 文書を編集していますが、現在作業していない部分を「閉じる」ことができればよいのですが。しかし、これは新しい文書であり、最高レベルのモジュール化ではsection
ではなくを使用します。これは HTML タグであり、私の Kate (バージョン 3.8.4) はこれを認識しません。やその他の古い要素div
では問題なく動作します。div
Kate でこのサポートを得る方法があるかどうか、調べ始めました。私のバージョンは古い (Debian 安定版に付属していたもの) ことは想像できますが、新しいバージョンが本当に HTML5 をサポートしていない限り、アップグレードしたくありません。奇妙なことに、必要なドキュメントがほとんど見つかりません。Kate の「最新機能」のリストも、どの番号が最新バージョンであるかの情報さえありません。
Kate の最新バージョンは HTML5 をサポートしていますか? サポートしている場合、ソースからインストールすることをお勧めしますか? 結局のところ、リポジトリから取得したプログラムの多くは、Kile など Kate に依存しています。また、HTML5 をサポートしていない場合、何らかのプラグインなどを使用して、それを取得する別の方法はありますか?
答え1
Kate 3.13.2 をインストールしていますが、説明されているのと同じ動作が見られます。ただし、Kate が使用する HTML 構文スキーマを編集することで、Kate を希望の動作に変更できます。
まず、KateのHTML構文ファイルを見つけます。私のインストールでは、これは次の場所にあります。
/usr/share/apps/katepart/syntax/html.xml
このファイルの先頭近くには、領域を定義するタグのリストがあり、これらの領域が折りたたみ可能です。このリストに追加するには、開始タグと終了タグの行をコピーして貼り付け、適切に編集するだけです。以下は、私が追加した部分とその両側の数行を示す差分です。
*** html.xml.orig 2014-06-25 19:40:40.000000000 +0000
--- html.xml 2014-06-25 19:41:08.000000000 +0000
***************
*** 23,28 ****
--- 23,29 ----
<RegExpr attribute="Element" context="JS" String="<script\b" insensitive="TRUE" beginRegion="script" />
<RegExpr attribute="Element" context="El Open" String="<pre\b" insensitive="TRUE" beginRegion="pre" />
<RegExpr attribute="Element" context="El Open" String="<div\b" insensitive="TRUE" beginRegion="div" />
+ <RegExpr attribute="Element" context="El Open" String="<section\b" insensitive="TRUE" beginRegion="section" />
<RegExpr attribute="Element" context="El Open" String="<table\b" insensitive="TRUE" beginRegion="table" />
<RegExpr attribute="Element" context="El Open" String="<ul\b" insensitive="TRUE" beginRegion="ul" />
<RegExpr attribute="Element" context="El Open" String="<ol\b" insensitive="TRUE" beginRegion="ol" />
***************
*** 30,35 ****
--- 31,37 ----
<RegExpr attribute="Element" context="El Open" String="<&name;" />
<RegExpr attribute="Element" context="El Close" String="</pre\b" insensitive="TRUE" endRegion="pre" />
<RegExpr attribute="Element" context="El Close" String="</div\b" insensitive="TRUE" endRegion="div" />
+ <RegExpr attribute="Element" context="El Close" String="</section\b" insensitive="TRUE" endRegion="section" />
<RegExpr attribute="Element" context="El Close" String="</table\b" insensitive="TRUE" endRegion="table" />
<RegExpr attribute="Element" context="El Close" String="</ul\b" insensitive="TRUE" endRegion="ul" />
<RegExpr attribute="Element" context="El Close" String="</ol\b" insensitive="TRUE" endRegion="ol" />
Kate を再度ロードして HTML ファイルを開くと、セクション タグで折りたたむことができるようになります。これで HTML5 の完全なサポートが追加されるわけではありませんが、このタグで折りたたむというニーズは満たされます。また、この編集済みファイルは、次回 Kate が更新されたときに上書きされる可能性が高いため、バックアップを保存しておくことをお勧めします。
結果: