emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

completion-cycle-threshold and a suggestion


From: Leo
Subject: completion-cycle-threshold and a suggestion
Date: Fri, 21 May 2010 21:43:03 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux)

Hello Stefan,

Thank you for adding more features to completion.

I have started using this completion-cycle-threshold. Incidentally I
have written a pcompletion for git and I have this function:

;; (pcmpl-git-string-lessp "word" "word-")  ; => nil
;; (pcmpl-git-string-lessp "words" "word-") ; => t
(defun pcmpl-git-string-lessp (s1 s2)
  "Compare strings S1 and S2 but treat '-' specially."
  (let ((res (compare-strings s1 0 nil s2 0 nil))
        c1 c2)
    (if (eq res t) (setq res 0))
    (ignore-errors
      ;; the following setq could trigger errors
      (setq c1 (aref s1 (1- (abs res)))
            c2 (aref s2 (1- (abs res))))
      (if (or (= c1 ?-) (= c2 ?-)) (setq res (- res))))
    (if (> res 0) nil t)))

to address the sorting of things like:

remote
remote-ftp
remote-ftps
remote-http
remote-https

i.e. when I 'git rem<TAB>' I want to see remote first before seeing the
rest.

The current completion cycle has this issue, for example, assume there
are two possible completions 'feature' and 'feature-old', feature-old is
seen first. This is counter-intuitive to the behaviour without
completion cycle.

Best wishes,

Leo




reply via email to

[Prev in Thread] Current Thread [Next in Thread]