1

Aquamacs 2.4 で init.el を定義しまし(global-linum-mode 1)た。(global-whitespace-mode t)行番号付けは断続的であり、空の行に続く行番号の表示をスキップします。空白を無効にすると問題が解決します。すべての行に行番号を表示し、空白を有効にする方法はありますか?

おそらく、linum.el に代わるもので、非常によく似たものがあるのではないでしょうか?

次の例では、ドル記号はテキストのない空の行です。

1  First line.
2  Second line.
3  $
   Fourth line.
5  $
   Sixth Line.
7  Seventh line.
8  $
   Ninth line.
4

1 に答える 1

0

解決策 # 1 -- http://www.emacswiki.org/LineNumbers (Michael Hoffman を引用) から - 別の理由でそこに投稿されましたが、私の問題も解決します:

(eval-after-load 'linum
  '(progn
     (defface linum-leading-zero
       `((t :inherit 'linum
            :foreground ,(face-attribute 'linum :background nil t)))
       "Face for displaying leading zeroes for line numbers in display margin."
       :group 'linum)

     (defun linum-format-func (line)
       (let ((w (length
                 (number-to-string (count-lines (point-min) (point-max))))))
         (concat
          (propertize (make-string (- w (length (number-to-string line))) ?0)
                      'face 'linum-leading-zero)
          (propertize (number-to-string line) 'face 'linum))))

     (setq linum-format 'linum-format-func)))

解決策 2:

(setq linum-format "%d")

参考までに:

さまざまな空白の配色 (および/または現在の行を強調表示) が行番号付けのために予約されている左側のマージンに侵入する関連の問題を解決する方法を知りたい人は、その領域の背景色を設定すると問題が修正されます。行番号の前景および/または背景は、ユーザーが定義できます。上記のソリューション番号 1 は、5 行目の単語の後に色の定義を追加することによっても変更できます。foregroundたとえば、:foreground "red", ... 次のスニペットは、ソリューション番号 1 で述べた回避策全体の前または後にある別の行であり、任意の色で変更されます。ユーザーが望む:

(custom-set-faces '(linum ((t (:foreground "red" :background "white" :height 120 :family "Courier")))) )

0参考 # B:先頭のゼロを見るのに慣れておらず、このスレッドで説明されている最初の問題の解決策を探していたので、ソリューション番号 1 の 13 行目を削除して通常の古いスペースに置き換えました。ソリューション番号 2 はフラッシュ左に表示され、ソリューション番号 1 はフラッシュ右に表示されます。個人的な好みの問題です。linum-formatを 内で定義された動的デフォルト以外に変更する可能性は他にもいくつかあることは間違いありませんlinum.el

于 2013-04-20T20:13:35.487 に答える