Làm cách nào tôi có thể ngăn số hoàn thành chế độ công ty?


7

Trong chế độ org, khi tôi nhập một số số, công ty luôn bật lên hoàn thành số như:

20
20001 ----------- 1
200111 ---------- 2

Những con số này đến từ các tập tin chế độ org của tôi.

Tôi muốn tắt hoàn thành số công ty. Tôi có thể làm cái này như thế nào?

Câu trả lời:


4

Điều này có lẽ đến từ phần cuối của dabbrev. Bạn có thể loại bỏ nó như thế này:

(delete 'company-dabbrev company-backends)

8

Điều này có thể được giải quyết bằng cách sửa đổi máy biến áp của công ty với mã sau:

(push (apply-partially #'cl-remove-if
                      (lambda (c)
                        (or (string-match-p "[^\x00-\x7F]+" c)
                            (string-match-p "[0-9]+" c)
                            (if (equal major-mode "org")
                                (>= (length c) 15)))))
             company-transformers)

Với mã này:

  1. loại bỏ những ứng cử viên không ANSII.
  2. loại bỏ bất kỳ hoàn thành có chứa số.
  3. xóa bất kỳ ứng cử viên nào dài hơn 15 ở chế độ org.

Tất cả các loại điều có thể được tùy chỉnh.

Hi vọng điêu nay co ich!


Mặc dù câu trả lời này là tốt, tôi nghĩ rằng việc chia sẻ đoạn trích emacs sẽ dễ dàng hơn rất nhiều nếu họ chỉ làm một việc, và cụ thể là điều được yêu cầu. Tôi có thể có thể xóa tất cả mã mà tôi không cần, nhưng vì một người không thành thạo và không quan tâm nhiều đến việc chia sẻ một phương pháp sạch hơn, nhắc lại sự phức tạp của .emacs của tôi
rien333

-1

Bạn có thể đặt company-dabbrev-other-buffersthành nil, vì vậy công ty chỉ tìm kiếm trong bộ đệm hoạt động:

(setq company-dabbrev-other-buffers nil)
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.