Tăng tốc chế độ công ty?


10

Tôi đã chuyển từ văn bản siêu phàm sang emacs một lúc trước và trong khi tôi cảm thấy emacs đẹp hơn nhiều, thì tính năng tự động hoàn thành của nó thực sự thiếu khả năng phản hồi. Tôi đã đi và tùy chỉnh công ty để nó sẽ cố gắng hoàn thành sau khi hai ký tự đã được nhập và do đó độ trễ chỉ là 0,1 giây, nhưng nó không hiển thị một nửa thời gian và khi đó, nó thực sự không hữu ích. Có ai khác đã thành công trong việc khiến công ty trở nên nhạy bén như phòng thu / hình ảnh siêu phàm không? Bất kỳ IDE nào khác thực sự.


2
Bạn đang làm việc với ngôn ngữ nào
abo-abo

Bạn đã thử tự động hoàn thành ? Tôi tùy chỉnh nó mà không có vấn đề, hướng dẫn sử dụng là thực sự toàn diện.
Carlo Rodríguez

1
Tôi đề nghị bạn thực hiện M-x report-emacs-bugvới công thức nấu ăn tái tạo.
Stefan

Câu trả lời:


13

Tôi cũng đã có một trải nghiệm tồi tệ với công ty ngay từ đầu, nhưng trong thiết lập của tôi, tôi chỉ đặt những dòng này.

(setq company-dabbrev-downcase 0)
(setq company-idle-delay 0)

Biến đầu tiên được sử dụng để bỏ qua chữ hoa mà công ty thực hiện với các biến tôi tự động hoàn thành, biến thứ hai tôi nghĩ bạn đã có.

(defun tab-indent-or-complete ()
  (interactive)
  (if (minibufferp)
      (minibuffer-complete)
    (if (or (not yas-minor-mode)
            (null (do-yas-expand)))
        (if (check-expansion)
            (company-complete-common)
          (indent-for-tab-command)))))

(global-set-key [backtab] 'tab-indent-or-complete)

Ngoài ra những dòng này rất hữu ích để kích hoạt hoàn thành nhấn phím bạn muốn.


Đánh giá cao nó, nhưng tôi đã tắt emacs ngay bây giờ: p. Tôi vẫn sử dụng các phím bấm mặc dù.
m0meni

4
"(setq company-idle-delay 0)" Đừng làm vậy, bạn đang lãng phí rất nhiều đồng hồ CPU theo cách này.
Dmitry

Tôi nhận được "Giá trị của biểu tượng là biến là void: do-yas-extend" khi sử dụng tab-indent-or-completechức năng của bạn .
SergiyKolesnikov
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.