Allow 'completion-preview-require-minimum-symbol-length' to be nil
With some completion backends, completion preview is useful not only after a partial symbol, but also after punctuation and other non-symbol characters. For example, in C code it's helpful to display the completion preview for struct members when point is after 'foo->'. Provide an option to skip the check for minimum symbol length at point in order to support this use case. * lisp/completion-preview.el (completion-preview-minimum-symbol-length): Mention possible nil value in type and docstring. (completion-preview-require-minimum-symbol-length): Skip check if 'completion-preview-minimum-symbol-length' is nil.
This commit is contained in:
parent
b2ed1ed1d8
commit
c11fe94006
1 changed files with 10 additions and 5 deletions
|
@ -90,8 +90,12 @@ first candidate, and you can cycle between the candidates with
|
|||
:version "30.1")
|
||||
|
||||
(defcustom completion-preview-minimum-symbol-length 3
|
||||
"Minimum length of the symbol at point for showing completion preview."
|
||||
:type 'natnum
|
||||
"Minimum length of the symbol at point for showing completion preview.
|
||||
|
||||
If this is nil rather than a number of characters, show the preview also
|
||||
after non-symbol characters, such as punctuation or whitespace."
|
||||
:type '(choice (natnum :tag "Minimum number of symbol characters")
|
||||
(const :tag "Disable minimum symbol length requirement" nil))
|
||||
:version "30.1")
|
||||
|
||||
(defcustom completion-preview-message-format
|
||||
|
@ -195,9 +199,10 @@ Completion Preview mode avoids updating the preview after these commands.")
|
|||
(defun completion-preview-require-minimum-symbol-length ()
|
||||
"Check if the length of symbol at point is at least above a certain threshold.
|
||||
`completion-preview-minimum-symbol-length' determines that threshold."
|
||||
(let ((bounds (bounds-of-thing-at-point 'symbol)))
|
||||
(and bounds (<= completion-preview-minimum-symbol-length
|
||||
(- (cdr bounds) (car bounds))))))
|
||||
(or (null completion-preview-minimum-symbol-length)
|
||||
(let ((bounds (bounds-of-thing-at-point 'symbol)))
|
||||
(and bounds (<= completion-preview-minimum-symbol-length
|
||||
(- (cdr bounds) (car bounds)))))))
|
||||
|
||||
(defun completion-preview-hide ()
|
||||
"Hide the completion preview."
|
||||
|
|
Loading…
Add table
Reference in a new issue