Ἐνσωματωμένο UI καὶ ὕφη συμπλήρωσης τοῦ Ἤμαξ 30

Σημειώσεις βίντεο:

  • Ὅταν λέω «completions τοῦ Ἤμαξ», ἐννοῶ Completion Styles & UI
  • Συχνὰ βασιζόμουν σὲ πακέτα τρίτων γιὰ νὰ μιμηθῶ δυνατότητες ἄλλων κειμενοεπεξεργαστῶν. Γιὰ παράδειγμα χρησιμοποιοῦσα γιὰ καιρὸ vertico, corfu καὶ orderless.
    • Παρόλο ποὺ ἀκόμα συνιστῶ αὐτὰ τὰ πακέτα, μὲ ἐνδιέφερε νὰ χρησιμοποιήσω τὸν Ἤμαξ χωρὶς ἐξάρτηση ἀπὸ ἐπιλογὲς τρίτων.
    • Ἡ τρέχουσα διάταξή μου προσπαθεῖ νὰ μιμηθεῖ τὴ ροὴ ἐργασίας μου μὲ τὰ παραπάνω πακέτα.
  • Ὁ καταλύτης ποὺ μὲ ὤθησε νὰ δοκιμάσω τὸ ἐνσωματωμένο completion ἦταν ἡ προσθήκη τοῦ completion-preview-mode στὸν Ἤμαξ 30.

Completions τοῦ mini-buffer

  • Ὁ Ἤμαξ δὲν ἐνεργοποιεῖ «κατακόρυφα» completions γιὰ τὸ mini-buffer ἐξ ὁρισμοῦ, ἀλλὰ μπορεῖς νὰ ἐνεργοποιήσεις τὸ fido-vertical-mode ποὺ ἔρχεται ἐνσωματωμένο.
    • Τὸ fido-mode εἶναι βελτιωμένο icomplete-mode ποὺ μιμεῖται τὸ ido-mode, ἀλλιῶς γνωστὸ καὶ ὡς fake ido-mode.

Completion Styles

  • Παράδειγμα ἀλλαγῆς completion-styles:
(setf completion-styles '(basic flex))
  • Ὑπάρχει πληθώρα completion styles· τὰ ἐνσωματωμένα περιλαμβάνουν flex, ποὺ προσφέρει «fuzzy» completions.

Completion UI & completions κώδικα

  • Τὰ ἐνσωματωμένα completions τοῦ Ἤμαξ ἔχουν ἰδιαίτερη προσέγγιση.
  • Ἀντὶ γιὰ popup στὸ σημεῖο, ἐμφανίζεται νέο buffer Completions ὅταν καλεῖς completion-at-point.

Παράδειγμα διαμόρφωσης:

(setf completion-styles '(basic flex)
      completion-auto-select t ;; Show completion on first call
      completion-auto-help 'visible ;; Display *Completions* upon first request
      completions-format 'one-column ;; Use only one column
      completions-sort 'historical ;; Order based on minibuffer history
      completions-max-height 20 ;; Limit completions to 15 (completions start at line 5)
      completion-ignore-case t)