Vimで自動折りたたみを有効にするには?
2023-08-16 20:49:01
質問
Vim で自動折りたたみを有効にするにはどうすればよいですか。
set foldmethod=syntax
はあまり何もしないようです。
どのように解決するのですか?
構文に基づく折り返しを許可するには、次のようなものを
.vimrc
:
set foldmethod=syntax
set foldlevelstart=1
let javaScript_fold=1 " JavaScript
let perl_fold=1 " Perl
let php_folding=1 " PHP
let r_syntax_folding=1 " R
let ruby_fold=1 " Ruby
let sh_fold_enabled=1 " sh
let vimsyn_folding='af' " Vim script
let xml_syntax_folding=1 " XML
構文に基づく折りたたみは、言語の構文ファイルで定義されます。
$VIM/syntax
または
/usr/share/vim/vimXX/syntax/
. しかし、Pythonのように、構文ファイルに折りたたみ規則が組み込まれていない言語もあります。 そのような言語では、以下のサイトから何かをダウンロードする必要があります。
http://vim.sf.net
からダウンロードする必要があります。 そうでない場合は、インデントに基づいたフォールドを使用する必要があります。 これを効果的に行うには、おそらく以下のものを
.vimrc
ファイルに追加することになるでしょう。
set foldmethod=indent
set foldnestmax=2
その他の折りたたみの種類
折りの種類は6種類あります。
manual manually define folds
indent more indent means a higher fold level
expr specify an expression to define folds
syntax folds defined by syntax highlighting
diff folds for unchanged text
marker folds defined by markers in the text
個人的には、私はシンタックスフォールドしか使いません。 通常、私はメソッドを折りたたむだけで、すべてのインデントレベルを折りたたむわけではありません。 仕事場では一貫性のないインデントや奇妙な形式のレガシー コードが、インデント フォールドを難しくしたり、不可能にしたりすることがよくあります。 文書にマークを追加するのは面倒ですし、Vim を使わない人は文書を編集するときにマークを維持することはありません。 手動での字下げは、誰かがソース管理でコードを編集し、すべての字下げが間違った場所に配置されるまでは、とてもうまくいきます。
もっと読む
-
参照
:help fold-methods
を参照してください。 -
参照
:help folding
を参照し、折り目を操作するためのキーボードコマンドを学んでください。 -
参照
:help folds
を参照してください。
関連
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] jQueryで要素が非表示になっているかどうかを確認するには?
-
[解決済み] JavaScriptで文字列が部分文字列を含むかどうかを確認する方法は?
-
[解決済み] Vimエディタを終了するにはどうすればよいですか?
-
[解決済み] Vimで文字を改行で置き換える方法
-
[解決済み] Vim 直前の検索ハイライトをクリアする
-
[解決済み] Vimで大文字小文字を区別しない検索をする方法
-
[解決済み] vimにテキストをペーストする際の自動インデントをオフにする
-
[解決済み】別のウェブページにリダイレクトするにはどうすればいいですか?
-
[解決済み] 変異を伴わないオブジェクトからの値の削除
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ジェスト あるクラスの特定のメソッドをモックする方法
-
[解決済み] JavaScript で範囲を作成する - 奇妙な構文
-
[解決済み] 文字列がすべて同じ部分文字列で構成されているかどうかを調べるにはどうすればよいですか?
-
[解決済み] なぜ "use strict "はパフォーマンスを10倍向上させるのか?
-
[解決済み] JavaScriptを使用してHTML要素に属性を追加/更新するには?
-
[解決済み] ECMAScriptとは?
-
[解決済み] JavaScript で `throw` の後に `return` をする必要がありますか?
-
[解決済み] Chrome拡張機能:popup.htmlを強制終了させる
-
[解決済み] JavaScriptデータフォーマット/プリティプリンタ
-
Mac OS Xで大きなファイルを編集する [終了しました]。