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

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

[elpa] master 074c4d8 05/12: Merge pull request #11 from TheBB/optional-


From: Artur Malabarba
Subject: [elpa] master 074c4d8 05/12: Merge pull request #11 from TheBB/optional-current-name
Date: Wed, 14 Oct 2015 11:49:13 +0000

branch: master
commit 074c4d824b161c08373ef4a3a4172ae389535c58
Merge: 7252f2e 40f43e6
Author: Artur Malabarba <address@hidden>
Commit: Artur Malabarba <address@hidden>

    Merge pull request #11 from TheBB/optional-current-name
    
    Make discovery of current name optional
    
    Copyright-paperwork-exempt: yes
---
 nameless.el |   32 ++++++++++++++++++++------------
 1 files changed, 20 insertions(+), 12 deletions(-)

diff --git a/nameless.el b/nameless.el
index 8b7ce95..e971afb 100644
--- a/nameless.el
+++ b/nameless.el
@@ -82,6 +82,13 @@ variable.")
                       x)
                 safe))))
 
+(defcustom nameless-discover-current-name t
+  "If non-nil, discover package name automatically.
+If nil, `nameless-current-name' must be set explicitly, or left as nil,
+in which case only namespaces from `nameless-global-aliases' and
+`nameless-aliases' are used."
+  :type 'boolean)
+
 (defface nameless-face
   '((t :inherit font-lock-type-face))
   "Face used on `nameless-prefix'")
@@ -242,18 +249,19 @@ Return S."
 (define-minor-mode nameless-mode
   nil nil " :" `((,(kbd "C-c C--") . nameless-insert-name))
   (if nameless-mode
-      (if (or nameless-current-name
-              (ignore-errors (string-match "\\.el\\'" (lm-get-package-name))))
-          (progn
-            (unless nameless-current-name
-              (setq nameless-current-name (replace-regexp-in-string 
"\\(-mode\\)?\\.[^.]*\\'" "" (lm-get-package-name))))
-            (add-function :filter-return (local 
'filter-buffer-substring-function)
-                          #'nameless--filter-string)
-            (apply #'nameless--add-keywords
-                   `((nil . ,nameless-current-name)
-                     ,@nameless-global-aliases
-                     ,@nameless-aliases)))
-        (nameless-mode -1))
+      (progn
+        (when (and (not nameless-current-name)
+                   nameless-discover-current-name
+                   (ignore-errors (string-match "\\.el\\'" 
(lm-get-package-name))))
+          (setq nameless-current-name
+                (replace-regexp-in-string "\\(-mode\\)?\\.[^.]*\\'" "" 
(lm-get-package-name))))
+        (add-function :filter-return (local 'filter-buffer-substring-function)
+                      #'nameless--filter-string)
+        (apply #'nameless--add-keywords
+               `(,@(when nameless-current-name
+                     `((nil . ,nameless-current-name)))
+                 ,@nameless-global-aliases
+                 ,@nameless-aliases)))
     (remove-function (local 'filter-buffer-substring-function)
                      #'nameless--filter-string)
     (setq nameless-current-name nil)



reply via email to

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