summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Whitton <spwhitton@spwhitton.name>2016-12-04 11:19:40 -0700
committerSean Whitton <spwhitton@spwhitton.name>2016-12-04 11:19:40 -0700
commit6bfc81aefcda27b8232515baf57cd7a4c5a92d44 (patch)
treed995d745de8a5216299790b9db031a23b4799c82
parent359be0adedaeee4181618ff69067a8bdf6d80edc (diff)
parent2fca3400574e5f2666c942c674ce0f8e6ca6b232 (diff)
Merge tag 'v2.3.3'
Version 2.3.3
-rw-r--r--README.md2
-rw-r--r--helm-adaptive.el2
-rw-r--r--helm-apt.el2
-rw-r--r--helm-bookmark.el47
-rw-r--r--helm-buffers.el2
-rw-r--r--helm-color.el2
-rw-r--r--helm-command.el2
-rw-r--r--helm-config.el2
-rw-r--r--helm-core-pkg.el2
-rw-r--r--helm-dabbrev.el2
-rw-r--r--helm-easymenu.el2
-rw-r--r--helm-elisp.el2
-rw-r--r--helm-elscreen.el2
-rw-r--r--helm-eshell.el2
-rw-r--r--helm-eval.el2
-rw-r--r--helm-external.el2
-rw-r--r--helm-files.el2
-rw-r--r--helm-font.el2
-rw-r--r--helm-grep.el61
-rw-r--r--helm-help.el2
-rw-r--r--helm-id-utils.el2
-rw-r--r--helm-imenu.el2
-rw-r--r--helm-info.el2
-rw-r--r--helm-lib.el29
-rw-r--r--helm-locate.el6
-rw-r--r--helm-man.el2
-rw-r--r--helm-misc.el2
-rw-r--r--helm-mode.el2
-rw-r--r--helm-multi-match.el2
-rw-r--r--helm-net.el2
-rw-r--r--helm-org.el2
-rw-r--r--helm-pkg.el4
-rw-r--r--helm-regexp.el2
-rw-r--r--helm-ring.el2
-rw-r--r--helm-semantic.el2
-rw-r--r--helm-source.el2
-rw-r--r--helm-sys.el2
-rw-r--r--helm-tags.el18
-rw-r--r--helm-types.el2
-rw-r--r--helm-utils.el10
-rw-r--r--helm.el22
41 files changed, 163 insertions, 100 deletions
diff --git a/README.md b/README.md
index a2c96dc2..b391e4c3 100644
--- a/README.md
+++ b/README.md
@@ -11,6 +11,8 @@
or [![Support via Gratipay](https://cdn.rawgit.com/gratipay/gratipay-badge/2.3.0/dist/gratipay.png)](https://gratipay.com/emacs-helm/)
+or with [Bitcoins](https://www.strongcoin.com/?ref=1HyxLfpdJL81rnk2n6dPmbCkaozk4zzPRh)
+
<!-- markdown-toc start - Don't edit this section. Run M-x markdown-toc-generate-toc again -->
**Table of Contents**
diff --git a/helm-adaptive.el b/helm-adaptive.el
index e76a61d7..a8335035 100644
--- a/helm-adaptive.el
+++ b/helm-adaptive.el
@@ -226,7 +226,7 @@ candidate can be in (DISPLAY . REAL) format."
(provide 'helm-adaptive)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-apt.el b/helm-apt.el
index a0e331ce..3e2dee46 100644
--- a/helm-apt.el
+++ b/helm-apt.el
@@ -292,7 +292,7 @@ With a prefix arg reload cache."
(provide 'helm-apt)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-bookmark.el b/helm-bookmark.el
index ebb3010b..299d92e9 100644
--- a/helm-bookmark.el
+++ b/helm-bookmark.el
@@ -519,7 +519,7 @@ than `w3m-browse-url' use it."
;;; Addressbook.
;;
;;
-(defun helm-bookmark-addressbook-search-fn (pattern)
+(defun helm-bookmark--addressbook-search-mail (pattern)
(helm-awhile (next-single-property-change (point) 'email)
(goto-char it)
(end-of-line)
@@ -530,6 +530,17 @@ than `w3m-browse-url' use it."
(cl-return
(+ (point) (match-end 0))))))
+(defun helm-bookmark--addressbook-search-group (pattern)
+ (helm-awhile (next-single-property-change (point) 'group)
+ (goto-char it)
+ (end-of-line)
+ (when (string-match pattern
+ (get-text-property
+ 0 'group (buffer-substring
+ (point-at-bol) (point-at-eol))))
+ (cl-return
+ (+ (point) (match-end 0))))))
+
(defclass helm-bookmark-addressbook-class (helm-source-in-buffer)
((init :initform (lambda ()
(require 'addressbook-bookmark nil t)
@@ -537,15 +548,24 @@ than `w3m-browse-url' use it."
(helm-init-candidates-in-buffer
'global
(cl-loop for b in (helm-bookmark-addressbook-setup-alist)
- collect (propertize
- b 'email (bookmark-prop-get
- b 'email))))))
- (search :initform 'helm-bookmark-addressbook-search-fn)
+ collect (propertize b
+ 'email (bookmark-prop-get b 'email)
+ 'group (bookmark-prop-get b 'group))))))
+ (search :initform '(helm-bookmark--addressbook-search-group
+ helm-bookmark--addressbook-search-mail))
(persistent-action :initform
(lambda (candidate)
(let ((bmk (helm-bookmark-get-bookmark-from-name
candidate)))
- (bookmark--jump-via bmk 'switch-to-buffer))))
+ (if (and (get-buffer-window addressbook-buffer-name 'visible)
+ (string= bmk (with-current-buffer addressbook-buffer-name
+ (save-excursion
+ (search-forward "^Name: " nil t)
+ (car (addressbook-get-contact-data))))))
+ (kill-buffer addressbook-buffer-name)
+ (when (buffer-live-p (get-buffer addressbook-buffer-name))
+ (kill-buffer addressbook-buffer-name))
+ (bookmark--jump-via bmk 'switch-to-buffer)))))
(persistent-help :initform "Show contact - Prefix with C-u to append")
(mode-line :initform (list "Contact(s)" helm-mode-line-string))
(filtered-candidate-transformer :initform
@@ -771,7 +791,7 @@ e.g prepended with *."
(defun helm-filtered-bookmarks ()
"Preconfigured helm for bookmarks (filtered by category).
Optional source `helm-source-bookmark-addressbook' is loaded
-only if external library addressbook-bookmark.el is available."
+only if external addressbook-bookmark package is installed."
(interactive)
(helm :sources helm-bookmark-default-filtered-sources
:prompt "Search Bookmark: "
@@ -779,10 +799,21 @@ only if external library addressbook-bookmark.el is available."
:default (list (thing-at-point 'symbol)
(buffer-name helm-current-buffer))))
+;;;###autoload
+(defun helm-addressbook-bookmarks ()
+ "Preconfigured helm for addressbook bookmarks.
+Need addressbook-bookmark package as dependencie."
+ (interactive)
+ (helm :sources 'helm-source-bookmark-addressbook
+ :prompt "Search Contact: "
+ :buffer "*helm addressbook*"
+ :default (list (thing-at-point 'symbol)
+ (buffer-name helm-current-buffer))))
+
(provide 'helm-bookmark)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-buffers.el b/helm-buffers.el
index 6c10180f..ec401c17 100644
--- a/helm-buffers.el
+++ b/helm-buffers.el
@@ -913,7 +913,7 @@ displayed with the `file-name-shadow' face if available."
(provide 'helm-buffers)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-color.el b/helm-color.el
index 73f6e3d0..ce845ce2 100644
--- a/helm-color.el
+++ b/helm-color.el
@@ -162,7 +162,7 @@
(provide 'helm-color)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-command.el b/helm-command.el
index 3b2fe051..f5deeb16 100644
--- a/helm-command.el
+++ b/helm-command.el
@@ -286,7 +286,7 @@ You can get help on each command by persistent action."
(provide 'helm-command)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-config.el b/helm-config.el
index 89632094..693342c7 100644
--- a/helm-config.el
+++ b/helm-config.el
@@ -162,7 +162,7 @@
(provide 'helm-config)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-core-pkg.el b/helm-core-pkg.el
index 98800d28..3fcc6947 100644
--- a/helm-core-pkg.el
+++ b/helm-core-pkg.el
@@ -1,6 +1,6 @@
;;; helm-core-pkg.el --- define helm-core for package.el
-(define-package "helm-core" "2.3.2"
+(define-package "helm-core" "2.3.3"
"Development files for Helm"
'((emacs "24.4")
(async "1.9"))
diff --git a/helm-dabbrev.el b/helm-dabbrev.el
index 21d54f7d..1f923758 100644
--- a/helm-dabbrev.el
+++ b/helm-dabbrev.el
@@ -319,7 +319,7 @@ but the initial search for all candidates in buffer(s)."
(provide 'helm-dabbrev)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-easymenu.el b/helm-easymenu.el
index 9ab3580c..5e9e1a10 100644
--- a/helm-easymenu.el
+++ b/helm-easymenu.el
@@ -82,7 +82,7 @@
(provide 'helm-easymenu)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-elisp.el b/helm-elisp.el
index 77759e21..c9e896a4 100644
--- a/helm-elisp.el
+++ b/helm-elisp.el
@@ -920,7 +920,7 @@ i.e the `symbol-name' of any existing symbol."
(provide 'helm-elisp)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-elscreen.el b/helm-elscreen.el
index 44ac52cd..179bda06 100644
--- a/helm-elscreen.el
+++ b/helm-elscreen.el
@@ -94,7 +94,7 @@
(provide 'helm-elscreen)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-eshell.el b/helm-eshell.el
index 5dc0788b..c2546dfb 100644
--- a/helm-eshell.el
+++ b/helm-eshell.el
@@ -264,7 +264,7 @@ The function that call this should set `helm-ec-target' to thing at point."
(provide 'helm-eshell)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-eval.el b/helm-eval.el
index 21594390..5806d504 100644
--- a/helm-eval.el
+++ b/helm-eval.el
@@ -196,7 +196,7 @@ Should take one arg: the string to display."
(provide 'helm-eval)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-external.el b/helm-external.el
index d384d0cf..0fe2d758 100644
--- a/helm-external.el
+++ b/helm-external.el
@@ -205,7 +205,7 @@ You can set your own list of commands with
(provide 'helm-external)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-files.el b/helm-files.el
index a0fd0920..d4eaf8d3 100644
--- a/helm-files.el
+++ b/helm-files.el
@@ -3770,7 +3770,7 @@ It allows additionally to delete more than one connection at once."
(provide 'helm-files)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-font.el b/helm-font.el
index c88e3ba9..3e3abe8c 100644
--- a/helm-font.el
+++ b/helm-font.el
@@ -193,7 +193,7 @@ Only math* symbols are collected."
(provide 'helm-font)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-grep.el b/helm-grep.el
index 7f4f1e9d..42aa48ee 100644
--- a/helm-grep.el
+++ b/helm-grep.el
@@ -486,6 +486,13 @@ It is intended to use as a let-bound variable, DON'T set this globaly.")
;; Use pipe only with grep, zgrep or git-grep.
(process-connection-type (and (not zgrep) (helm-grep-use-ack-p)))
(tramp-verbose helm-tramp-verbose)
+ (start-time (float-time))
+ (proc-name (if helm-grep-use-zgrep
+ "Zgrep"
+ (capitalize
+ (if helm-grep-in-recurse
+ (helm-grep-command t)
+ (helm-grep-command)))))
non-essential)
;; Start grep process.
(helm-log "Starting Grep process in directory `%s'" default-directory)
@@ -493,7 +500,7 @@ It is intended to use as a let-bound variable, DON'T set this globaly.")
(concat ">>> " (propertize cmd-line 'face 'helm-grep-cmd-line) "\n\n"))
(prog1 ; This function should return the process first.
(start-file-process-shell-command
- "grep" helm-buffer cmd-line)
+ proc-name helm-buffer cmd-line)
;; Init sentinel.
(set-process-sentinel
(get-buffer-process helm-buffer)
@@ -514,17 +521,12 @@ It is intended to use as a let-bound variable, DON'T set this globaly.")
(propertize helm-grep-last-cmd-line
'face 'helm-grep-cmd-line)))
(setq mode-line-format
- '(" " mode-line-buffer-identification " "
+ `(" " mode-line-buffer-identification " "
(:eval (format "L%s" (helm-candidate-number-at-point))) " "
(:eval (propertize
(format
"[%s process finished - (no results)] "
- (if helm-grep-use-zgrep
- "Zgrep"
- (capitalize
- (if helm-grep-in-recurse
- (helm-grep-command t)
- (helm-grep-command)))))
+ ,proc-name)
'face 'helm-grep-finish))))))
((or (string= event "finished\n")
(and noresult
@@ -532,26 +534,26 @@ It is intended to use as a let-bound variable, DON'T set this globaly.")
;; that exit with code 1
;; after a certain amount of results.
(with-helm-buffer (not (helm-empty-buffer-p)))))
+ (helm-log "%s process finished with %s results in %fs"
+ proc-name
+ (helm-get-candidate-number)
+ (- (float-time) start-time))
(with-helm-window
(setq mode-line-format
- '(" " mode-line-buffer-identification " "
+ `(" " mode-line-buffer-identification " "
(:eval (format "L%s" (helm-candidate-number-at-point))) " "
(:eval (propertize
(format
- "[%s process finished - (%s results)] "
- (if helm-grep-use-zgrep
- "Zgrep"
- (capitalize
- (if helm-grep-in-recurse
- (helm-grep-command t)
- (helm-grep-command))))
+ "[%s process finished in %.2fs - (%s results)] "
+ ,proc-name
+ ,(- (float-time) start-time)
(helm-get-candidate-number))
'face 'helm-grep-finish))))
(force-mode-line-update)))
;; Catch error output in log.
(t (helm-log
"Error: %s %s"
- (if helm-grep-use-zgrep "Zgrep" "Grep")
+ proc-name
(replace-regexp-in-string "\n" "" event))))))))))
(defun helm-grep-collect-candidates ()
@@ -1377,15 +1379,17 @@ if available with current AG version."
(defun helm-grep-ag-init (directory &optional type)
"Start AG process in DIRECTORY maybe searching only files of type TYPE."
(let ((cmd-line (helm-grep-ag-prepare-cmd-line
- helm-pattern directory type)))
+ helm-pattern directory type))
+ (start-time (float-time))
+ (proc-name (helm-grep--ag-command)))
(set (make-local-variable 'helm-grep-last-cmd-line) cmd-line)
(helm-log "Starting %s process in directory `%s'"
- (helm-grep--ag-command) directory)
+ proc-name directory)
(helm-log "Command line used was:\n\n%s"
(concat ">>> " cmd-line "\n\n"))
(prog1
(start-process-shell-command
- "ag" helm-buffer cmd-line)
+ proc-name helm-buffer cmd-line)
(set-process-sentinel
(get-buffer-process helm-buffer)
(lambda (process event)
@@ -1403,23 +1407,28 @@ if available with current AG version."
(:eval (propertize
(format
"[%s process finished - (no results)] "
- (upcase (helm-grep--ag-command)))
+ (upcase proc-name))
'face 'helm-grep-finish))))))
((string= event "finished\n")
+ (helm-log "%s process finished with %s results in %fs"
+ proc-name
+ (helm-get-candidate-number)
+ (- (float-time) start-time))
(with-helm-window
(setq mode-line-format
- '(" " mode-line-buffer-identification " "
+ `(" " mode-line-buffer-identification " "
(:eval (format "L%s" (helm-candidate-number-at-point))) " "
(:eval (propertize
(format
- "[%s process finished - (%s results)] "
- (upcase (helm-grep--ag-command))
+ "[%s process finished in %.2fs - (%s results)] "
+ ,(upcase proc-name)
+ ,(- (float-time) start-time)
(helm-get-candidate-number))
'face 'helm-grep-finish))))
(force-mode-line-update)))
(t (helm-log
"Error: %s %s"
- (helm-grep--ag-command)
+ proc-name
(replace-regexp-in-string "\n" "" event))))))))))
(defclass helm-grep-ag-class (helm-source-async)
@@ -1534,7 +1543,7 @@ With a prefix arg ARG git-grep the whole repository."
(provide 'helm-grep)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-help.el b/helm-help.el
index e39e502e..d8c5d383 100644
--- a/helm-help.el
+++ b/helm-help.el
@@ -1116,7 +1116,7 @@ f1/f2/f-n:NthAct \
(provide 'helm-help)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-id-utils.el b/helm-id-utils.el
index ee51cb3a..1058ba27 100644
--- a/helm-id-utils.el
+++ b/helm-id-utils.el
@@ -125,7 +125,7 @@ See <https://www.gnu.org/software/idutils/>."
(provide 'helm-id-utils)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-imenu.el b/helm-imenu.el
index d12cf70b..55649599 100644
--- a/helm-imenu.el
+++ b/helm-imenu.el
@@ -279,7 +279,7 @@ or it have an association in `helm-imenu-all-buffer-assoc'."
(provide 'helm-imenu)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-info.el b/helm-info.el
index e63b3f1c..8c378da9 100644
--- a/helm-info.el
+++ b/helm-info.el
@@ -239,7 +239,7 @@ With a prefix-arg insert symbol at point."
(provide 'helm-info)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-lib.el b/helm-lib.el
index 42c306cd..48b24ea1 100644
--- a/helm-lib.el
+++ b/helm-lib.el
@@ -357,17 +357,26 @@ Default is `eq'."
unless (gethash elm cont)
collect (puthash elm elm cont)))
+(defsubst helm--string-join (strings &optional separator)
+ "Join all STRINGS using SEPARATOR."
+ (mapconcat 'identity strings separator))
+
+(defun helm--concat-regexps (regexp-list)
+ "Return a regexp which matches any of the regexps in REGEXP-LIST."
+ (if regexp-list
+ (concat "\\(?:" (helm--string-join regexp-list "\\)\\|\\(?:") "\\)")
+ "\\<\\>")) ; Match nothing
+
(defun helm-skip-entries (seq black-regexp-list &optional white-regexp-list)
"Remove entries which matches one of REGEXP-LIST from SEQ."
- (cl-loop for i in seq
- unless (and (cl-loop for re in black-regexp-list
- thereis (and (stringp i)
- (string-match-p re i)))
- (null
- (cl-loop for re in white-regexp-list
- thereis (and (stringp i)
- (string-match-p re i)))))
- collect i))
+ (let ((black-regexp (helm--concat-regexps black-regexp-list))
+ (white-regexp (helm--concat-regexps white-regexp-list)))
+ (cl-loop for i in seq
+ unless (and (stringp i)
+ (string-match-p black-regexp i)
+ (null
+ (string-match-p white-regexp i)))
+ collect i)))
(defun helm-boring-directory-p (directory black-list)
"Check if one regexp in BLACK-LIST match DIRECTORY."
@@ -923,7 +932,7 @@ as emacs-25 version of `ansi-color-apply' is partially broken."
(provide 'helm-lib)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-locate.el b/helm-locate.el
index a0f4c408..8409ef4c 100644
--- a/helm-locate.el
+++ b/helm-locate.el
@@ -269,7 +269,9 @@ See also `helm-locate'."
(shell-quote-argument (car args)) " "
;; Possible locate args added
;; after pattern, don't quote them.
- (mapconcat 'identity (cdr args) " ")))))
+ (mapconcat 'identity (cdr args) " "))))
+ (default-directory (if (file-directory-p default-directory)
+ default-directory "/")))
(helm-log "Starting helm-locate process")
(helm-log "Command line used was:\n\n%s"
(concat ">>> " (propertize cmd 'face 'font-lock-comment-face) "\n\n"))
@@ -402,7 +404,7 @@ Where db_path is a filename matched by
(provide 'helm-locate)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-man.el b/helm-man.el
index 987624f6..5cb517a2 100644
--- a/helm-man.el
+++ b/helm-man.el
@@ -107,7 +107,7 @@ With a prefix arg reinitialize the cache."
(provide 'helm-man)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-misc.el b/helm-misc.el
index 96d42964..e5fa4643 100644
--- a/helm-misc.el
+++ b/helm-misc.el
@@ -338,7 +338,7 @@ Default action change TZ environment variable locally to emacs."
(provide 'helm-misc)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-mode.el b/helm-mode.el
index 003141fa..d97c2054 100644
--- a/helm-mode.el
+++ b/helm-mode.el
@@ -1197,7 +1197,7 @@ Note: This mode is incompatible with Emacs23."
(provide 'helm-mode)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-multi-match.el b/helm-multi-match.el
index 383d88a9..19182ee4 100644
--- a/helm-multi-match.el
+++ b/helm-multi-match.el
@@ -360,7 +360,7 @@ e.g \"bar foo\" will match \"barfoo\" but not \"foobar\" contrarily to
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-net.el b/helm-net.el
index fd8464ab..2522dd4d 100644
--- a/helm-net.el
+++ b/helm-net.el
@@ -513,7 +513,7 @@ NOTE: Probably not supported on some systems (e.g Windows)."
(provide 'helm-net)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-org.el b/helm-org.el
index 4c619830..c20fab79 100644
--- a/helm-org.el
+++ b/helm-org.el
@@ -331,7 +331,7 @@ current heading."
(provide 'helm-org)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-pkg.el b/helm-pkg.el
index 5a42ba87..33641288 100644
--- a/helm-pkg.el
+++ b/helm-pkg.el
@@ -1,11 +1,11 @@
;;; helm-pkg.el --- define helm for package.el
-(define-package "helm" "2.3.2"
+(define-package "helm" "2.3.3"
"Helm is an Emacs incremental and narrowing framework"
'((emacs "24.4")
(async "1.9")
(popup "0.5.3")
- (helm-core "2.3.2"))
+ (helm-core "2.3.3"))
:url "https://emacs-helm.github.io/helm/")
;; Local Variables:
diff --git a/helm-regexp.el b/helm-regexp.el
index b69de856..25fe0ebb 100644
--- a/helm-regexp.el
+++ b/helm-regexp.el
@@ -637,7 +637,7 @@ The prefix arg can be set before calling
(provide 'helm-regexp)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-ring.el b/helm-ring.el
index ece33354..acdd6392 100644
--- a/helm-ring.el
+++ b/helm-ring.el
@@ -461,7 +461,7 @@ This command is useful when used with persistent action."
(provide 'helm-ring)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-semantic.el b/helm-semantic.el
index 5baa00ae..f6640d45 100644
--- a/helm-semantic.el
+++ b/helm-semantic.el
@@ -215,7 +215,7 @@ Fill in the symbol at point by default."
(provide 'helm-semantic)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-source.el b/helm-source.el
index 29846dbc..072e09ab 100644
--- a/helm-source.el
+++ b/helm-source.el
@@ -999,7 +999,7 @@ Args ARGS are keywords provided by `helm-source-in-file'."
(provide 'helm-source)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-sys.el b/helm-sys.el
index 7a13bab2..2e93e87a 100644
--- a/helm-sys.el
+++ b/helm-sys.el
@@ -441,7 +441,7 @@ Show actions only on line starting by a PID."
(provide 'helm-sys)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-tags.el b/helm-tags.el
index 166a6b65..b81eb18c 100644
--- a/helm-tags.el
+++ b/helm-tags.el
@@ -250,16 +250,24 @@ If no entry in cache, create one."
(defvar find-tag-marker-ring)
+(defsubst helm-etags--file-from-tag (fname)
+ (cl-loop for ext in
+ (cons "" (remove "" tags-compression-info-list))
+ for file = (concat fname ext)
+ when (file-exists-p file)
+ return file))
+
(defun helm-etags-action-goto (switcher candidate)
"Helm default action to jump to an etags entry in other window."
(require 'etags)
(helm-log-run-hook 'helm-goto-line-before-hook)
(let* ((split (helm-grep-split-line candidate))
(fname (cl-loop for tagf being the hash-keys of helm-etags-cache
- for f = (expand-file-name
- (car split) (file-name-directory tagf))
- when (file-exists-p f)
- return f))
+ for f = (expand-file-name
+ (car split) (file-name-directory tagf))
+ ;; Try to find an existing file, possibly compressed.
+ when (helm-etags--file-from-tag f)
+ return it))
(elm (cl-caddr split))
(linum (string-to-number (cadr split))))
(if (null fname)
@@ -333,7 +341,7 @@ Create with etags shell command, or visit with `find-tag' or `visit-tags-table'.
(provide 'helm-tags)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-types.el b/helm-types.el
index 03146719..edf81008 100644
--- a/helm-types.el
+++ b/helm-types.el
@@ -275,7 +275,7 @@
(provide 'helm-types)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm-utils.el b/helm-utils.el
index fc4e17f0..47986cad 100644
--- a/helm-utils.el
+++ b/helm-utils.el
@@ -198,6 +198,9 @@ In this case last position is added to the register
("&shy;" . 173)) ;; ­
"Table of html character entities and values.")
+
+(defvar helm-find-many-files-after-hook nil
+ "Hook that run at end of `helm-find-many-files'.")
;;; Faces.
;;
@@ -768,8 +771,11 @@ directory, open this directory."
(find-file remote-path))))
(defun helm-find-many-files (_ignore)
+ "Simple action that run `find-file' on marked candidates.
+Run `helm-find-many-files-after-hook' at end"
(let ((helm--reading-passwd-or-string t))
- (mapc 'find-file (helm-marked-candidates))))
+ (mapc 'find-file (helm-marked-candidates))
+ (helm-log-run-hook 'helm-find-many-files-after-hook)))
(defun helm-read-repeat-string (prompt &optional count)
"Prompt as many time PROMPT is not empty.
@@ -823,7 +829,7 @@ When unable to decode ENTITY returns nil."
(provide 'helm-utils)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End:
diff --git a/helm.el b/helm.el
index 5fe0a2a2..7b3b370b 100644
--- a/helm.el
+++ b/helm.el
@@ -579,7 +579,7 @@ The default is to enable this by default and then toggle
:type 'boolean)
(defcustom helm-echo-input-in-header-line nil
- "Send current input in header-line."
+ "Send current input in header-line when non-nil."
:group 'helm
:type 'boolean)
@@ -3796,18 +3796,14 @@ mode and header lines."
'(space :width left-fringe)
(propertize
"->"
- 'face 'helm-header-line-left-margin))))
- (pos (- (point) beg)))
+ 'face 'helm-header-line-left-margin)))))
(with-helm-buffer
- (setq header-line-format (concat pref cont " "))
- (put-text-property
- ;; Increment pos to handle the space before prompt (i.e `pref').
- (1+ pos) (+ 2 pos)
- 'face ;don't just use 'cursor; this can hide the current character
- (list :inverse-video t
- :foreground (face-background 'cursor)
- :background (face-background 'default))
- header-line-format)
+ (setq header-line-format
+ (concat pref (replace-regexp-in-string "%" "%%" cont)
+ (propertize
+ " " 'face (list :inverse-video t
+ :foreground (face-background 'cursor)
+ :background (face-background 'default)))))
(when update (force-mode-line-update))))))
(defun helm--update-header-line ()
@@ -5518,7 +5514,7 @@ It may appear after first results popup in helm buffer."))
(provide 'helm)
;; Local Variables:
-;; byte-compile-warnings: (not cl-functions obsolete)
+;; byte-compile-warnings: (not obsolete)
;; coding: utf-8
;; indent-tabs-mode: nil
;; End: