]> code.delx.au - gnu-emacs-elpa/blobdiff - company-files.el
Support the keyword :with
[gnu-emacs-elpa] / company-files.el
index 6b34d57a013cca4aede1ee31e776054e540c98ee..b897e3d3751404b358652bfa00f6b3ed247a0816 100644 (file)
@@ -1,6 +1,6 @@
-;;; company-files.el --- company-mode completion back-end for file names
+;;; company-files.el --- company-mode completion back-end for file names
 
-;; Copyright (C) 2009-2011  Free Software Foundation, Inc.
+;; Copyright (C) 2009-2011, 2013  Free Software Foundation, Inc.
 
 ;; Author: Nikolaj Schumacher
 
         (when (file-directory-p file)
           ;; Add one level of children.
           (dolist (child (company-files-directory-files file ""))
-            (push (concat file child) candidates))))
+            (push (concat file
+                          (unless (eq (aref file (1- (length file))) ?/) "/")
+                          child) candidates))))
       (setq company-files-completion-cache (cons dir (nreverse candidates))))
-    (cdr company-files-completion-cache)))
+    (all-completions prefix
+                     (cdr company-files-completion-cache))))
 
 ;;;###autoload
 (defun company-files (command &optional arg &rest ignored)
-  "`company-mode' completion back-end existing file names."
+  "`company-mode' completion back-end existing file names."
   (interactive (list 'interactive))
   (case command
     (interactive (company-begin-backend 'company-files))