chế độ số dòng lai trong emacs?


11

Có thể hiển thị số tuyệt đối của dòng hiện tại, thay vì "0", khi ở chế độ số dòng tương đối? Điều này đôi khi được gọi là "chế độ số dòng lai".

Như thế này:

 7                                                                                                      
  6          this.oscs[i].oscillator.start();                                                            
  5        }                                                                                             
  4                                                                                                      
  3        this.bindController();                                                                        
  2      };                                                                                              
  1                                                                                                      
252      factory.stop = function () {  <- current line number shows                                                                                       
  1        console.log('theremin: now in stop 2');                                                       
  2        this.leapController.disconnect();                                                             
  3        //this.leapController.removeListener('frame', factory.ctrlFrameHandler);                      
  4        //this.leapController.removeListener('frame', this.ctrlFrameHandler);                         
  5        this.leapController.removeListener('frame', this.leapController.listeners('frame')[0]); 

Đây là cách bạn làm điều đó trong vim .

Tôi đang chạy ác và kích hoạt chế độ số dòng tương đối trong .emacs của tôi như vậy:

(linum-mode)
(linum-relative-global-mode)

Tôi không thấy bất kỳ gói nào cho việc này, hoặc bất kỳ tùy chỉnh nào có sẵn cho nó trong các gói hiện có. Tôi hơi quen thuộc với elisp, vì vậy có thể tìm ra cách móc mã hiện tại, ví dụ như với lời khuyên, nhưng tôi muốn tránh đi theo con đường đó nếu có thể.

Cảm ơn nhiều.


linum-relative-global-modeđược cung cấp bởi evil?
phils

không, đó là một phần của gói emacs tiêu chuẩn 'lanhum-họ hàng'. Chạy tà có lẽ không liên quan gì đến câu hỏi này, ngoài thực tế là số dòng tương đối rất có thể hữu ích cho 'người dùng vi' tức là người chạy ác. Tôi chỉ nghĩ rằng tôi sẽ đề cập đến nó trong trường hợp nó có liên quan.
vt5491

Không có gói nào như vậy (cũng không phải "linum-Relative") trong repo tiêu chuẩn và không phải là thư viện mặc định. Bạn có thể có nghĩa là một trong những repos gói không chuẩn? Bạn phải luôn luôn cụ thể về bất kỳ thư viện không chuẩn nào mà bạn đề cập đến.
phils

github.com/coldnew/linum-relative . Theo "tiêu chuẩn", tôi không có ý ám chỉ một phần của cơ sở emacs, mà chỉ là một gói "tiêu chuẩn", ví dụ như "thông thường" theo melpa. Và tôi vâng, tôi đã viết sai chính tả - đó là 'họ hàng' không phải là 'họ hàng'. Xin lỗi vì sự nhầm lẫn.
vt5491

FWIW, Emacs 26 mang đến cách đánh số dòng gốc (đọc: nhanh), có thể được lai nếu bạn đặt display-line-numbersthành relativedisplay-line-numbers-current-absolutethành t(mặc định).
Basil

Câu trả lời:


10

Bạn có thể hiển thị số dòng hiện tại thay vì "0" bằng cách tùy chỉnh linum-relative-current-symbolbiến.

Bạn có thể thay đổi biến đó bằng một trong nhiều cách.

  • Mx RET nhóm tùy chỉnh RET linum

    Từ đó, tùy chỉnh biến "Biểu tượng hiện tại tương đối Linum" (có giá trị mặc định là 0). Nếu bạn nhấn vào liên kết "Khác", bên dưới liên kết đó, mô tả đầy đủ về biến sẽ đọc:

    Biểu tượng bạn muốn hiển thị trên dòng hiện tại, theo mặc định nó là 0.

    Bạn có thể sử dụng bất kỳ chuỗi nào như "->". Nếu biến này là chuỗi rỗng, linum-Rel sẽ hiển thị số dòng thực ở dòng hiện tại.

    Vì vậy, hãy đặt giá trị đó thành chuỗi trống, chỉ cần xóa giá trị đó 0và nhấn "Áp dụng và lưu".

  • Một cách khác là thêm phần bên dưới vào cấu hình emacs của bạn và đánh giá nó:

    (setq linum-relative-current-symbol "")

-1

Tôi đang chạy spacemacs và M-x linum-relative-modelàm điều này chính xác.

Bạn cũng có thể thêm:

(setq-default dotspacemacs-line-numbers 'relative)

đến dotspacemacs/user-configchức năng .spacemacsđể đặt số dòng theo kiểu này vĩnh viễn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.