]> code.delx.au - gnu-emacs-elpa/blobdiff - company-yasnippet.el
company-etags-find-table: fix fallback tags file expansion
[gnu-emacs-elpa] / company-yasnippet.el
index 4730b211b7989e09d2639155a511b1154d79ccf6..f0a7c380d9d4c9a69599bf9c9a87131aebd5892b 100644 (file)
 
 ;;; Code:
 
+(require 'company)
 (require 'cl-lib)
-(require 'yasnippet)
+
+(declare-function yas--table-hash "yasnippet")
+(declare-function yas--get-snippet-tables "yasnippet")
+(declare-function yas-expand-snippet "yasnippet")
+(declare-function yas--template-content "yasnippet")
+(declare-function yas--template-expand-env "yasnippet")
 
 (defun company-yasnippet--candidates (prefix)
-  (mapcan
+  (cl-mapcan
    (lambda (table)
      (let ((keyhash (yas--table-hash table))
            res)
@@ -80,9 +86,12 @@ shadow back-ends that come after it.  Recommended usages:
     (prefix
      ;; Should probably use `yas--current-key', but that's bound to be slower.
      ;; How many trigger keys start with non-symbol characters anyway?
-     (and yas-minor-mode
+     (and (bound-and-true-p yas-minor-mode)
           (company-grab-symbol)))
-    (annotation (concat " -> " (get-text-property 0 'yas-annotation arg)))
+    (annotation
+     (concat
+      (unless company-tooltip-align-annotations " -> ")
+      (get-text-property 0 'yas-annotation arg)))
     (candidates (company-yasnippet--candidates arg))
     (post-completion
      (let ((template (get-text-property 0 'yas-template arg)))