ฉันจะแสดงหมายเลขบรรทัดใน emacs ได้อย่างไร (ไม่ใช่ในโหมดบรรทัด)


27

ฉันรู้วิธีแสดงหมายเลขบรรทัด (และคอลัมน์) ในโหมดบรรทัด แต่ฉันต้องการให้ emacs แสดงหมายเลขบรรทัดสำหรับทุกบรรทัดทางด้านซ้าย ฉันเคยเห็นสิ่งนี้ทำในกลุ่มและแก้ไขข้อความอื่น ๆ ฉันจะทำสิ่งนี้เพื่อ emacs ได้อย่างไร


คำตอบ:


30

ในฐานะที่เป็น @ eric M-x linum-modeน้ำตาลพูดถึงคุณสามารถใช้

ความคิดที่ดีอีกข้อหนึ่งคือใช้(add-hook 'prog-mode-hook 'linum-mode)ใน init.el ของคุณเพื่อเปิดใช้งานโหมด linum โดยอัตโนมัติในโหมดการเขียนโปรแกรมทั้งหมด

สำหรับรุ่น Emacs> = 26 คุณสามารถใช้หรือdisplay-line-numbers-modeglobal-display-line-numbers-mode

ดูEmacsWiki


display-line-numbers-modeคำตอบนี้ล้าสมัยดูคำตอบโดยใช้
ideasman42

คุณอาจพบว่า(global-display-line-numbers-mode)มีประโยชน์
Lorem Ipsum

10

M-x linum-modeจะทำเคล็ดลับ หากคุณต้องการทำสิ่งนี้ให้กับบัฟเฟอร์ทั้งหมดแล้วM-x global-linum-modeจะทำเช่นนี้


คุณรู้วิธีที่ฉันสามารถทำให้ถาวรหรือไม่
ลุค

1
(ตามคำแนะนำของ nispio และ mgoszcz2) การเพิ่มใน(global-linum-mode)ไฟล์. emacs.d / init.el ของคุณจะทำให้มันถาวร ฉันพบว่าโหมดทั่วโลกของลินุกซ์นั้นค่อนข้างมากเกินไปและคำแนะนำของ mgoszcz2 สำหรับการเปิดใช้งานเฉพาะในบางโหมดก็เป็นโหมดที่ดี
Eric Brown

7

หากคุณกำลังใช้ Emacs 26 display-line-numbers-modeหรือใหม่กว่าคุณสามารถใช้

จากetc/NEWS.26:

** ตอนนี้ Emacs รองรับการแสดงตัวเลขบรรทัดในบัฟเฟอร์ สิ่งนี้คล้ายกับ 'โหมด linum' ที่ให้ แต่เร็วกว่ามากและไม่ใช้ระยะขอบจอแสดงผลสำหรับหมายเลขบรรทัด ปรับแต่งตัวแปร buffer-local 'display-line-numbers' เพื่อเปิดใช้งานการแสดงผลเพิ่มเติมนี้ หรือคุณสามารถใช้โหมดย่อย 'display-line-numbers-mode' หรือ 'global-display-line-numbers-mode' เมื่อใช้โหมดเหล่านี้ให้ปรับแต่ง 'display-line-numbers-type' ด้วยค่าเดียวกับที่คุณจะใช้กับ 'display-line-numbers'


4

nlinum-modeเป็นอีกทางเลือกหนึ่ง มันมีอินเทอร์เฟซเหมือนlinum-modeกันดังนั้นคุณสามารถใช้ hooks ตัวเดียวกันได้ แต่ใช้เทคโนโลยีที่แตกต่างกันเพื่อให้มีประสิทธิภาพมากขึ้น อ้างอิงจากnlinum.el:

;; นี่เป็นโหมด linum แต่ใช้ jit-lock เพื่อ (หวังว่า) จะมีประสิทธิภาพมากขึ้น

คุณสามารถติดตั้งผ่านทาง GNU Elpa list-packagesผ่านทางตามปกติ

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


1

แน่นอนว่าlinum-modeเป็นทางเลือกที่ดี หากคุณไม่ต้องการเห็นหมายเลขบรรทัดเช่นฉันคุณสามารถใช้เคล็ดลับนี้จากสุดยอดWhat theemacs.d !? บล็อก

นี่เป็นการชั่วคราวช่วยให้เมื่อคุณเรียกใช้linum-modegoto-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)))
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.