emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[elpa] master e1cdb29 37/67: counsel.el: Add Clojure completion at point


From: Oleh Krehel
Subject: [elpa] master e1cdb29 37/67: counsel.el: Add Clojure completion at point
Date: Sun, 22 Mar 2015 17:34:02 +0000

branch: master
commit e1cdb297d931205c713a25157fe652ae210cc932
Author: Oleh Krehel <address@hidden>
Commit: Oleh Krehel <address@hidden>

    counsel.el: Add Clojure completion at point
---
 counsel.el |   16 +++++++++++++++-
 1 files changed, 15 insertions(+), 1 deletions(-)

diff --git a/counsel.el b/counsel.el
index ecb183b..c647888 100644
--- a/counsel.el
+++ b/counsel.el
@@ -35,12 +35,26 @@
 (defun counsel ()
   "Elisp completion at point."
   (interactive)
+  (counsel--generic
+   (lambda (str) (all-completions str obarray))))
+
+(defun couns-clj ()
+  "Clojure completion at point."
+  (interactive)
+  (counsel--generic
+   (lambda (str)
+     (mapcar
+      #'cl-caddr
+      (cider-sync-request:complete str ":same")))))
+
+(defun counsel--generic (completion-fn)
+  "Complete thing at point with COMPLETION-FN."
   (let* ((bnd (bounds-of-thing-at-point 'symbol))
          (str (if bnd
                   (buffer-substring-no-properties
                    (car bnd) (cdr bnd))
                 ""))
-         (candidates (all-completions str obarray))
+         (candidates (funcall completion-fn str))
          (ivy-height 7)
          (res (ivy-read (format "pattern (%s): " str)
                         candidates)))



reply via email to

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