@@ -283,27 +283,35 @@ DEPRECATED: please use `cider-enable-cider-completion-style' instead."
283
283
(interactive )
284
284
(cider-enable-cider-completion-style))
285
285
286
- (defun cider-enable-cider-completion-style ()
287
- " Enables `cider' completion style for CIDER in all buffers.
286
+ (defun cider-enable-cider-completion-style (&optional arg )
287
+ " Enables or disables `cider' completion style for CIDER in all buffers.
288
288
289
289
This style supports non-prefix completion candidates returned by the
290
- completion backend. Only affects the `cider' completion category."
290
+ completion backend. Only affects the `cider' completion category. If ARG
291
+ is `1' or `nil' , enables the custom completion style; if `-1' , disables it."
291
292
(interactive )
292
- (let* ((cider (assq 'cider completion-category-overrides))
293
- (found-styles (assq 'styles cider))
294
- (new-styles (if found-styles
295
- (cons 'styles (cons 'cider (cdr found-styles)))
296
- '(styles cider basic)))
297
- (new-cider (if cider
298
- (cons 'cider
299
- (cons new-styles
300
- (seq-remove (lambda (x ) (equal 'styles (car x)))
301
- (cdr cider))))
302
- (list 'cider new-styles)))
303
- (new-overrides (cons new-cider
304
- (seq-remove (lambda (x ) (equal 'cider (car x)))
305
- completion-category-overrides))))
306
- (setq completion-category-overrides new-overrides)))
293
+ (if (= arg -1 )
294
+ (setq completion-category-overrides
295
+ (assq-delete-all 'cider completion-category-overrides))
296
+ (let* ((cider (assq 'cider completion-category-overrides))
297
+ (found-styles (assq 'styles cider))
298
+ (new-styles (if found-styles
299
+ (cons 'styles (cons 'cider (cdr found-styles)))
300
+ '(styles cider basic)))
301
+ (new-cider (if cider
302
+ (cons 'cider
303
+ (cons new-styles
304
+ (seq-remove (lambda (x ) (equal 'styles (car x)))
305
+ (cdr cider))))
306
+ (list 'cider new-styles)))
307
+ (new-overrides (cons new-cider
308
+ (seq-remove (lambda (x ) (equal 'cider (car x)))
309
+ completion-category-overrides))))
310
+ (setq completion-category-overrides new-overrides))))
311
+
312
+ ; ; Enable cider-completion-style by default. Users can opt out of this by
313
+ ; ; running (cider-enable-cider-completion-style -1)
314
+ (cider-enable-cider-completion-style 1 )
307
315
308
316
(make-obsolete 'cider-company-enable-fuzzy-completion 'cider-enable-cider-completion-style " 1.17.0" )
309
317
@@ -312,8 +320,6 @@ completion backend. Only affects the `cider' completion category."
312
320
313
321
Only affects the `cider' completion category.`"
314
322
(interactive )
315
- (when (< emacs-major-version 27 )
316
- (user-error " `cider-enable-flex-completion' requires Emacs 27 or later" ))
317
323
(let ((found-styles (when-let ((cider (assq 'cider completion-category-overrides)))
318
324
(assq 'styles cider)))
319
325
(found-cycle (when-let ((cider (assq 'cider completion-category-overrides)))
0 commit comments