Cài đặt tối ưu để tự động hoàn thành để viết bài / văn xuôi bằng ngôn ngữ tự nhiên?


9

Như câu hỏi gợi ý, tôi đang cố gắng thiết lập auto-completegói để viết bài. Tôi cũng đã cài đặt ac-ispell. Cho đến nay nó dường như ít nhiều vô dụng, chủ yếu là vì nó quá chậm . Gợi ý mất vài giây để xuất hiện.

Dưới đây là các dòng có liên quan mà tôi hiện có trong init của mình, được dựa trực tiếp vào các khuyến nghị trong tài liệu cho hai gói này:

(require 'auto-complete-config)
(ac-config-default)
(add-to-list 'ac-modes '(org-mode text-mode LaTeX-mode))

(custom-set-variables
 '(ac-ispell-requires 4)
 '(ac-ispell-fuzzy-limit 2))

(eval-after-load "auto-complete"
  '(progn
     (ac-ispell-setup)))

(add-hook 'git-commit-mode-hook 'ac-ispell-ac-setup)
(add-hook 'mail-mode-hook 'ac-ispell-ac-setup)
(add-hook 'org-mode-hook 'ac-ispell-ac-setup)
(add-hook 'text-mode-hook 'ac-ispell-ac-setup)
(add-hook 'LaTeX-mode-hook 'ac-ispell-ac-setup)

(global-auto-complete-mode t)

Trong trường hợp này giúp, giá trị kết quả cho ac-sources(ac-source-ispell ac-source-ispell-fuzzy ac-source-abbrev ac-source-dictionary ac-source-words-in-same-mode-buffers).

Nếu bạn đã có may mắn hơn với điều này thì tôi có, xin vui lòng giúp đỡ!


Bây giờ tôi đã mở một vấn đề cho chế độ công ty với một phiên bản rất dài và chi tiết của câu hỏi này. Nếu tôi nhận được một giải pháp tốt, tôi sẽ đăng nó như một câu trả lời ở đây.
Brian Z

Câu trả lời:


2

Chế độ dự đoán tuyên bố là những gì bạn đang tìm kiếm, mặc dù tôi không chắc nó so sánh với các khung hoàn thành hiện đại hơn như chế độ công ty như thế nào .


1
Tôi chưa thử chúng, nhưng chúng trông giống như những lựa chọn đầy hứa hẹn, cảm ơn!
Brian Z

2

giả sử bạn sử dụng chế độ công ty và bạn chỉ muốn sử dụng nó ở chế độ văn bản. Chế độ org kế thừa từ chế độ văn bản, vì vậy bạn không cần thiết lập cho cả hai:

(require 'company)
(add-hook 'after-init-hook 'global-company-mode)

(defun text-mode-hook-setup ()
  ;; make `company-backends' local is critcal
  ;; or else, you will have completion in every major mode, that's very annoying!
  (make-local-variable 'company-backends)

  ;; company-ispell is the plugin to complete words
  (add-to-list 'company-backends 'company-ispell)

  ;; OPTIONAL, if `company-ispell-dictionary' is nil, `ispell-complete-word-dict' is used
  ;;  but I prefer hard code the dictionary path. That's more portable.
  (setq company-ispell-dictionary (file-truename "~/.emacs.d/misc/english-words.txt")))

(add-hook 'text-mode-hook 'text-mode-hook-setup)

"english-words.txt" chỉ là một tệp văn bản đơn giản trong đó các dòng được sắp xếp theo thứ tự abc. Mỗi dòng là một từ. (Từ điển văn bản thuần được yêu cầu bởi ispell, xem https://emacs.stackexchange.com/a/42526/ để biết chi tiết kỹ thuật).

Đây là một tệp mẫu: https://github.com/redguardtoo/emacs.d/raw/master/misc/english-words.txt

Đã thử nghiệm với Emacs24.3, 24.4, chế độ công ty 0.8.12

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.