Unternehmensmodus beschleunigen?


10

Ich habe vor einiger Zeit von erhabenem Text zu Emacs gewechselt, und obwohl ich der Meinung bin, dass Emacs viel schöner ist, mangelt es der automatischen Vervollständigung wirklich an Reaktionsfähigkeit. Ich habe die Firma so angepasst, dass sie nach der Eingabe von zwei Zeichen zu vervollständigen versucht. Die Verzögerung betrug also nur 0,1 Sekunden, aber sie wird nicht zur Hälfte angezeigt, und wenn dies der Fall ist, ist sie wirklich nicht nützlich. Hat es jemand anderem gelungen, das Unternehmen so reaktionsschnell wie erhabenes / visuelles Studio / Sonnenfinsternis zu machen? Jede andere IDE wirklich.


2
Mit welcher Sprache arbeiten Sie?
Abo-Abo

Haben Sie versucht, automatisch zu vervollständigen ? Ich passe es ohne Probleme an, das Benutzerhandbuch ist wirklich umfassend.
Carlo Rodríguez

1
Ich schlage vor, Sie machen eine tatsächliche M-x report-emacs-bugmit reproduzierbaren Rezepten.
Stefan

Antworten:


13

Ich hatte am Anfang auch schlechte Erfahrungen mit der Firma, aber in meinem Setup habe ich nur diese Zeilen eingefügt.

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

Die erste Variable wird verwendet, um den Fall zu überspringen, den das Unternehmen mit den Variablen macht, die ich automatisch vervollständige, die zweite, von der ich glaube, dass Sie sie bereits haben.

(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)

Diese Zeilen sind auch nützlich, um den Abschluss durch Drücken der gewünschten Taste auszulösen.


Schätzen Sie es, aber ich habe jetzt Emacs ausgeschaltet: p. Ich benutze immer noch die Tastenkombinationen.
m0meni

4
"(setq company-idle-delay 0)" Tun Sie das nicht, Sie verschwenden auf diese Weise eine Menge CPU-Takte.
Dmitry

Bei Verwendung Ihrer tab-indent-or-completeFunktion wird "Der Wert des Symbols als Variable ist ungültig: do-yas-expand" angezeigt .
SergiyKolesnikov
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.