PHPテンプレートファイルでPHPブロックを折り畳みたい。
<html>
<?php
$bar = foo();
エコー$バー;
?>
<h1><?php echo $title; ?></h1>
</html>
>>>>へ
<html>
{{PHP}}
<h1>{{PHP}}</h1>
</html>
まず、font-lock-add-keywords を使用しようとしましたが、失敗しました。@Gilles に感謝します (サポート? アドバイス? どの単語をここに入れるべきかわかりません、申し訳ありません)。
(eval-after-load 'php-mode
'(プログン
(setq font-lock-multiline t)
(font-lock-add-keywords
'php-mode `(("\\(<?php .* ?>\\)("
(0 (progn (compose-region (マッチ開始 1)
(試合終了 1) "の")
なし))))))))
次に、以下を試します。動作します。
(defun lot/php-hide ()
「バッファにphpブロックを作成」
(相互の作用)
(バッファの先頭)
(while (re-search-forward "\\(<\\?php\\(.\\|\n\\)*?\\?>\\)" nil t)
;; (make-overlay (マッチ開始 0) (マッチ終了 0))
;; (非表示領域非表示)
;; 'hide-region-hide' が機能しないので、compose-region を試してください
(compose-region (match-beginning 0)
(試合終了 0)
;; "{{PHP}}" ; 言葉を完璧に使うことはできません。
「の」
)
)
)
エラーがある場合は表示してください。ありがとう XD