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

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

[elpa] master 8136370 4/4: Merge commit '512b2ace3db9bf64e16f949ed90b78e


From: Artur Malabarba
Subject: [elpa] master 8136370 4/4: Merge commit '512b2ace3db9bf64e16f949ed90b78eb86c7fdda'
Date: Sun, 06 Sep 2015 16:33:56 +0000

branch: master
commit 813637076abefc77477bb86eb506a12607dc7a74
Merge: 65b46b7 512b2ac
Author: Artur Malabarba <address@hidden>
Commit: Artur Malabarba <address@hidden>

    Merge commit '512b2ace3db9bf64e16f949ed90b78eb86c7fdda'
---
 packages/nameless/README.org  |    4 ++--
 packages/nameless/nameless.el |   25 +++++++++++++++++++------
 2 files changed, 21 insertions(+), 8 deletions(-)

diff --git a/packages/nameless/README.org b/packages/nameless/README.org
index 6644e15..d427342 100644
--- a/packages/nameless/README.org
+++ b/packages/nameless/README.org
@@ -1,7 +1,7 @@
 #+OPTIONS: toc:nil num:nil
 
-* Nameless
-Hide package namespace in your emacs-lisp code.
+* Nameless --- /less is more/
+*Hide package namespaces in your emacs-lisp code.*
 
 Simply put, turn on this minor mode, and you’ll see this
 [[file:example-nameless-on.png]]\\
diff --git a/packages/nameless/nameless.el b/packages/nameless/nameless.el
index 2ebdb8a..eb595a3 100644
--- a/packages/nameless/nameless.el
+++ b/packages/nameless/nameless.el
@@ -4,8 +4,8 @@
 
 ;; Author: Artur Malabarba <address@hidden>
 ;; Keywords: convenience, lisp
-;; Version: 0.2
-;; Package-Requires: ((emacs "24.2"))
+;; Version: 0.3
+;; Package-Requires: ((emacs "24.4"))
 
 ;; This program is free software; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by
@@ -96,9 +96,10 @@ for it to take effect."
 (defun nameless--compose-as (display)
   "Compose the matched region and return a face spec."
   (when nameless-mode
-    (let ((compose (and nameless-affect-indentation-and-filling
-                        (or (not (eq nameless-affect-indentation-and-filling 
'outside-strings))
-                            (not (nth 3 (syntax-ppss))))))
+    (let ((compose (save-match-data
+                     (and nameless-affect-indentation-and-filling
+                         (or (not (eq nameless-affect-indentation-and-filling 
'outside-strings))
+                             (not (nth 3 (syntax-ppss)))))))
           (dis (concat display nameless-prefix)))
       (when compose
         (compose-region (match-beginning 1)
@@ -171,7 +172,8 @@ configured, or if `nameless-current-name' is nil."
           (unless noerror
             (user-error "No name for alias `%s', see `nameless-aliases'" 
alias))))
     (if nameless-current-name
-        (insert nameless-current-name "-")
+        (progn (insert nameless-current-name "-")
+               t)
       (unless noerror
         (user-error "No name for current buffer, see 
`nameless-current-name'")))))
 
@@ -190,6 +192,13 @@ configured, or if `nameless-current-name' is nil."
   "Return a regexp of the current name."
   (concat "\\_<@?\\(" (regexp-quote name) "-\\)\\(\\s_\\|\\sw\\)"))
 
+(defun nameless--filter-string (s)
+  "Remove from string S any disply or composition properties.
+Return S."
+  (let ((length (length s)))
+    (remove-text-properties 0 length '(composition nil display nil) s)
+    s))
+
 
 ;;; Minor mode
 ;;;###autoload
@@ -201,11 +210,15 @@ configured, or if `nameless-current-name' is nil."
           (progn
             (unless nameless-current-name
               (setq nameless-current-name (replace-regexp-in-string 
"\\.[^.]*\\'" "" (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))
+    (remove-function (local 'filter-buffer-substring-function)
+                     #'nameless--filter-string)
     (setq nameless-current-name nil)
     (nameless--remove-keywords)))
 



reply via email to

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