[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/eev b2c738a 02/10: Added `find-epackage-links'.
From: |
Stefan Monnier |
Subject: |
[elpa] externals/eev b2c738a 02/10: Added `find-epackage-links'. |
Date: |
Thu, 7 Nov 2019 23:21:47 -0500 (EST) |
branch: externals/eev
commit b2c738ab528f9e5a4e2c6567f1388c8ea76fd520
Author: Eduardo Ochs <edrx@circe.birdland>
Commit: Eduardo Ochs <edrx@circe.birdland>
Added `find-epackage-links'.
---
ChangeLog | 11 ++++++++++
VERSION | 4 ++--
eev-edit.el | 5 +++--
eev-elinks.el | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
eev-intro.el | 4 ++--
5 files changed, 83 insertions(+), 9 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 800f1b2..d7a1dd5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2019-09-27 Eduardo Ochs <address@hidden>
+
+ * eev-elinks.el (ee-file-name-nondirectory-slash): new function.
+ (ee-file-expand-wildcards-slash): new function.
+ (ee-find-epackage-links0): new function.
+ (find-epackage-links): new function.
+ (ee-find-epackage-links): use `ee-find-epackage-links0'.
+
+ * eev-edit.el (ee-tag-re-utf-8): new variable.
+ (ee-tag-re): use `ee-tag-re-utf-8'.
+
2019-09-26 Eduardo Ochs <address@hidden>
* eev-intro.el (find-eev-quick-intro): small changes.
diff --git a/VERSION b/VERSION
index 2937e33..c213c09 100644
--- a/VERSION
+++ b/VERSION
@@ -1,2 +1,2 @@
-Thu Sep 26 05:57:22 GMT 2019
-Thu Sep 26 02:57:22 -03 2019
+Fri Sep 27 05:51:18 GMT 2019
+Fri Sep 27 02:51:18 -03 2019
diff --git a/eev-edit.el b/eev-edit.el
index 53bc716..218467f 100644
--- a/eev-edit.el
+++ b/eev-edit.el
@@ -19,7 +19,7 @@
;;
;; Author: Eduardo Ochs <address@hidden>
;; Maintainer: Eduardo Ochs <address@hidden>
-;; Version: 2019aug29
+;; Version: 2019sep27
;; Keywords: e-scripts
;;
;; Latest version: <http://angg.twu.net/eev-current/eev-edit.el>
@@ -138,7 +138,8 @@ With a prefix argument run
`ee-copy-preceding-tag-to-kill-ring' instead."
;; Experimental, 2019aug29
;; (defun ee-tag-re () (ee-tolatin1 "«\\([!-~]+\\)»"))
-(defun ee-tag-re () "«\\([!-~]+\\)»")
+(defvar ee-tag-re-utf-8 "«\\([!-~]+\\)»")
+(defun ee-tag-re () ee-tag-re-utf-8)
(defun ee-copy-preceding-tag-to-kill-ring ()
"Copy the preceding tag to the kill ring and highlight (\"flash\") it.
diff --git a/eev-elinks.el b/eev-elinks.el
index 50dd5f5..42ccd4a 100644
--- a/eev-elinks.el
+++ b/eev-elinks.el
@@ -19,7 +19,7 @@
;;
;; Author: Eduardo Ochs <address@hidden>
;; Maintainer: Eduardo Ochs <address@hidden>
-;; Version: 2019aug06
+;; Version: 2019sep27
;; Keywords: e-scripts
;;
;; Latest version: <http://angg.twu.net/eev-current/eev-elinks.el>
@@ -73,6 +73,7 @@
;; «.ee-hyperlink-prefix» (to "ee-hyperlink-prefix")
;; «.find-eface-links» (to "find-eface-links")
;; «.find-color-links» (to "find-color-links")
+;; «.find-epackage-links» (to "find-epackage-links")
;; «.find-here-links» (to "find-here-links")
;; «.find-here-links-beginner» (to "find-here-links-beginner")
@@ -1093,6 +1094,68 @@ This needs a temporary directory; see:
(find-prepared-intro)"
+;;; __ _ _ _
_
+;;; / _(_)_ __ __| | ___ _ __ __ _ ___| | ____ _ __ _ ___ |
|
+;;; | |_| | '_ \ / _` |_____ / _ \ '_ \ / _` |/ __| |/ / _` |/ _` |/ _ \_____|
|
+;;; | _| | | | | (_| |_____| __/ |_) | (_| | (__| < (_| | (_| | __/_____|
|
+;;; |_| |_|_| |_|\__,_| \___| .__/ \__,_|\___|_|\_\__,_|\__, |\___|
|_|
+;;; |_| |___/
+;;
+;; «find-epackage-links» (to ".find-epackage-links")
+;; Tests: (find-epackage-links "eev")
+;; (find-estring (ee-find-epackage-links0 "0x0"))
+;; (find-estring (ee-find-epackage-links0 "eev"))
+;;
+(defun find-epackage-links (&optional pkgname &rest pos-spec-list)
+"Visit a temporary buffer containing hyperlinks for an Emacs package."
+ (interactive)
+ (setq pkgname (or pkgname "{pkgname}"))
+ (apply 'find-elinks
+ `((find-epackage-links ,pkgname ,@pos-spec-list)
+ ;; Convention: the first sexp always regenerates the buffer.
+ (find-efunction 'find-epackage-links)
+ (find-elpafile "")
+ ""
+ ,(ee-find-epackage-links0 pkgname)
+ )
+ pos-spec-list))
+
+(defun ee-find-epackage-links0 (pkgname)
+ "This is an internal function used by `find-epackage-links'."
+ (let* ((spkgname (format "\n %s " pkgname))
+ (pattern (format "%s%s-*" ee-elpadir pkgname))
+ (fnames (ee-file-expand-wildcards-slash pattern))
+ (sexps (mapcar (lambda (s) (list 'find-elpafile s)) fnames))
+ (sexps (reverse sexps))
+ (lines (mapconcat 'ee-HS sexps "\n"))
+ )
+ (ee-template0 "\
+# (find-epackages {(ee-S spkgname)})
+# (find-epackage '{pkgname})
+{lines}
+
+# http://elpa.gnu.org/packages/{pkgname}.html
+# http://melpa.org/#/{pkgname}
+")))
+
+
+(defun ee-file-name-nondirectory-slash (fname)
+ "Like `file-name-nondirectory', but appends a / to FNAME if it is a
directory.
+This is an internal function used by `ee-find-epackage-links'."
+ (concat (file-name-nondirectory fname)
+ (if (file-directory-p fname) "/" "")))
+
+(defun ee-file-expand-wildcards-slash (pattern)
+ "Like `file-expand-wildcards' but with `ee-file-name-nondirectory-slash' &
sort.
+This is an internal function used by `ee-find-epackage-links'."
+ (let* ((fnames0 (file-expand-wildcards pattern))
+ (fnames1 (mapcar 'ee-file-name-nondirectory-slash fnames0))
+ (fnames2 (sort fnames1 'string<)))
+ fnames2))
+
+
+
+
;;; __ _ _ _ _ _ _
;;; / _(_)_ __ __| | | |__ ___ _ __ ___ | (_)_ __ | | _____
@@ -1176,8 +1239,7 @@ This needs a temporary directory; see:
(find-prepared-intro)"
(defun ee-epackage-bufferp () (ee-buffer-help ee-epackage-re 1))
(defun ee-find-epackage-links ()
(let ((p (ee-epackage-bufferp)))
- `((find-epackages ,(format "\n %s " p) t)
- (find-epackage ',p))))
+ (list (ee-find-epackage-links0 p))))
;; By buffer name (when the mode is man)
(defvar ee-man-re "^\\*Man \\(.*\\)\\*$")
diff --git a/eev-intro.el b/eev-intro.el
index dd704a8..6b8adeb 100644
--- a/eev-intro.el
+++ b/eev-intro.el
@@ -4710,8 +4710,8 @@ sexp `(shell)' by running it in a certain way.
-2.3. `(eepitch)'
-----------------
+2.3. `eepitch'
+--------------
The documentation for `eepitch' says:
(eepitch CODE)
- [elpa] externals/eev updated (793b495 -> 8bc3bde), Stefan Monnier, 2019/11/07
- [elpa] externals/eev b2c738a 02/10: Added `find-epackage-links'.,
Stefan Monnier <=
- [elpa] externals/eev 9462fc5 07/10: Added `brwget'., Stefan Monnier, 2019/11/07
- [elpa] externals/eev a50e1c5 08/10: Rewrote `find-org-intro'., Stefan Monnier, 2019/11/07
- [elpa] externals/eev eb2b752 01/10: Rewrote `(find-eepitch-intro)'., Stefan Monnier, 2019/11/07
- [elpa] externals/eev 6e40458 03/10: Added eev-testblocks.el and a section about it in (find-eepitch-intro)., Stefan Monnier, 2019/11/07
- [elpa] externals/eev fa0b485 09/10: Updated the version in eev.el, Stefan Monnier, 2019/11/07
- [elpa] externals/eev 6dddb0e 06/10: Several small changes in intros and docs., Stefan Monnier, 2019/11/07
- [elpa] externals/eev b3c6ddb 04/10: Rewrote most of `(find-eev-install-intro)'., Stefan Monnier, 2019/11/07
- [elpa] externals/eev dc5e6c5 05/10: Added several new sections to `(find-brxxx-intro)'., Stefan Monnier, 2019/11/07
- [elpa] externals/eev 8bc3bde 10/10: Merge remote-tracking branch 'eev/UTF-8' into externals/eev, Stefan Monnier, 2019/11/07