Як відображати номери рядків у emacs (не в рядку режиму)?


27

Я знаю, як відображати номери рядків (і стовпці) у рядку режиму, але я хотів би, щоб у Emacs відображалися номери ліній для всіх ліворуч ліворуч. Я бачив це в редакторах vim та інших текстових редакторів. Як це зробити для emacs?


Відповіді:


30

Як згадується @ eric-brown, ви можете використовувати M-x linum-mode.

Ще однією гарною ідеєю є використання (add-hook 'prog-mode-hook 'linum-mode)у вашому init.el для автоматичного включення linum-режиму у всіх режимах програмування.

Для версії Emacs> = 26 ви можете використовувати display-line-numbers-modeабо global-display-line-numbers-mode.

Див. EmacsWiki


Ця відповідь застаріла, див. Відповідь із використанням display-line-numbers-mode.
ideaman42

Ви також можете знайти (global-display-line-numbers-mode)корисне.
Лорем Іпсум

10

M-x linum-modeзробить трюк. Якщо ви хочете зробити це для всіх буферів, тоді M-x global-linum-modeце зробите.


Чи знаєте ви, як я можу зробити це постійним?
Лука

1
(за пропозицією nispio та mgoszcz2) додавання (global-linum-mode)до вашого .emacs.d / init.el файлу зробить його постійним. Я вважаю, що режим global-linum є трохи надмірним, і пропозиція mgoszcz2 щодо включення його лише в певних режимах є хорошою.
Ерік Браун

7

Якщо ви використовуєте Emacs 26 або новішу версію, ви можете використовувати display-line-numbers-mode.

від etc/NEWS.26:

** Emacs тепер підтримує необов'язкове відображення номерів рядків у буфері. Це схоже на те, що забезпечує "linum-режим", але набагато швидше і не узурпує межу відображення рядків. Налаштуйте локальну змінну "буфер-номери рядків" для активації цього додаткового відображення. Крім того, ви можете використовувати мінорний режим "відображення рядків-рядків чисел" або глобальний режим "глобальний показ-рядок-рядки-числа". Використовуючи ці режими, налаштуйте 'display-line-numbers-type' з тим самим значенням, яке ви б використовували для 'display-line-numbers'.


4

nlinum-modeінший варіант. Він має той же інтерфейс linum-mode, що і ви можете використовувати ті самі гачки, але для ефективнішої роботи використовується інша технологія. Цитата від nlinum.el:

;; Це як у linum-режимі, але використовує jit-lock, щоб бути (сподіваємось) більш ефективним.

Ви можете встановити його через GNU Elpa через звичайний list-packages.

http://elpa.gnu.org/packages/nlinum.html


1

Звичайно linum-mode, це вдалий вибір. Якщо ви не завжди хочете бачити номери рядків, як я, ви можете використовувати цей трюк із відмінного What the .emacs.d !? блог.

Це тимчасово вмикається linum-modeпід час запуску goto-line.

Ось код з його блогу:

(global-set-key [remap goto-line] 'goto-line-with-feedback)

(defun goto-line-with-feedback ()   "Show line numbers temporarily, while prompting for the line number input"   (interactive)   (unwind-protect
      (progn
        (linum-mode 1)
        (goto-line (read-number "Goto line: ")))
    (linum-mode -1)))
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.