「ibuffer」で列幅を設定する


16

の列の幅をカスタマイズする方法はありますibufferか?具体的には、「名前」列を広げて、バッファー名が切り捨てられる前に読み取れるようにします。私は試しましたBuffer-menu-name-widthが、Buffer-menu変数はによって使用されていないようですibuffer。私も試してみましたM-x customize-group RET ibuffer RETが、関連するものはありませんでした。

回答:


17

@Sigmaの答えにあるように、カスタマイズする必要がありますibuffer-formats。docstringは、手動で変更する方法について多くの詳細を提供します。また、customize機械を使用して調整することもできます。elispアプローチを好む場合は、デフォルトの設定を好みに合わせて調整できnameます。リストのコンポーネントの後の数字は、列の最小幅と最大幅を示します。したがって、名前フィールドの範囲の列をデフォルトの18から30に変更するには、次のようにします。

;; nearly all of this is the default layout
(setq ibuffer-formats 
      '((mark modified read-only " "
              (name 30 30 :left :elide) ; change: 30s were originally 18s
              " "
              (size 9 -1 :right)
              " "
              (mode 16 16 :left :elide)
              " " filename-and-process)
        (mark " "
              (name 16 -1)
              " " filename)))

customizeインターフェースを使用しても、カスタマイズを行うためにelispフォームを作成(または変更)することになります。
nispio 14年

5

をカスタマイズibuffer-formatsできます。これにより、とりわけ列の幅を定義できます。また、いくつかのフォーマットを定義することもできます。これは、常に表示したくないものに便利です。


2

バッファ名列全体を見たい場合、具体的にはibuffer-switch-format、にバインドされたを使用して、何も「カスタマイズ」せずに行うことができ`ますibuffer

この関数は、で指定された選択肢を切り替えますibuffer-formats。デフォルトでibuffer-formatsは、2つのオプションがあります。

((mark modified read-only locked " "
       (name 18 18 :left :elide)
       " "
       (size 9 -1 :right)
       " "
       (mode 16 16 :left :elide)
       " " filename-and-process)
 (mark " "
       (name 16 -1)
       " " filename))

2番目は名前列の幅を制限しません。

一般的な場合、SigmaおよびDanのcustomize回答で指定されているように、が必要です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.