[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/kiwix aa4ac22 023/192: improve interactive function
From: |
Stefan Monnier |
Subject: |
[elpa] externals/kiwix aa4ac22 023/192: improve interactive function |
Date: |
Sat, 19 Dec 2020 00:41:25 -0500 (EST) |
branch: externals/kiwix
commit aa4ac221279c792c1ef98cb88a0e259522a7647d
Author: stardiviner <numbchild@gmail.com>
Commit: stardiviner <numbchild@gmail.com>
improve interactive function
---
kiwix.el | 37 +++++++++++++++++++++++++++----------
1 file changed, 27 insertions(+), 10 deletions(-)
diff --git a/kiwix.el b/kiwix.el
index e138aa6..6167158 100644
--- a/kiwix.el
+++ b/kiwix.el
@@ -34,11 +34,16 @@
:type 'string
:group 'kiwix)
-(defcustom kiwix-default-data-path "8ip89lik.default"
+(defcustom kiwix-default-data-profile-name "8ip89lik.default"
"Specify the default Kiwix data profile path."
:type 'string
:group 'kiwix)
+(defcustom kiwix-default-data-path (shell-quote-argument (concat (getenv
"HOME") "/.www.kiwix.org/kiwix/" kiwix-default-data-profile-name))
+ "Specify the default Kiwix data path."
+ :type 'string
+ :group 'kiwix)
+
(defcustom kiwix-default-library "wikipedia_en_all_2016-02"
"Specify the default Kiwix library you want to search."
:type 'string
@@ -59,6 +64,9 @@
:type 'boolean
:group 'kiwix)
+(defvar kiwix-libraries (directory-files (concat kiwix-default-data-path
"/data/content/") nil "\.zim")
+ "A list of Kiwix libraries.")
+
;; launch Kiwix server
;;;###autoload
(defun kiwix-launch-server ()
@@ -68,7 +76,7 @@
(let ((library "--library ")
(port (concat "--port=" kiwix-server-port " "))
(daemon "--daemon ")
- (library-path (shell-quote-argument (concat (getenv "HOME")
"/.www.kiwix.org/kiwix/" kiwix-default-data-path "/data/library/library.xml")))
+ (library-path (concat kiwix-default-data-path
"/data/library/library.xml"))
)
(async-shell-command
(concat kiwix-server-command library port daemon library-path))))
@@ -83,15 +91,24 @@
(browse-url url)))
;;;###autoload
-(defun kiwix-at-point (&optional input)
- "Search for the symbol at point with `kiwix-query' with `INPUT'."
+(defun kiwix-at-point (&optional interactively)
+ "Search for the symbol at point with `kiwix-query'.
+
+Or When prefix argument `INTERACTIVELY' specified, then prompt
+for query string and library interactively."
(interactive "P")
- (let* ((query-string (if mark-active
- (buffer-substring (region-beginning) (region-end))
- (thing-at-point 'symbol))))
- (kiwix-query (if (or input (null query-string))
- (read-string "Kiwix search: " query-string-input)
- query-string))))
+ (let* ((query-string (if interactively
+ (read-string "Kiwix Search: "
+ (if mark-active
+ (buffer-substring
+ (region-beginning) (region-end))
+ (thing-at-point 'symbol)))))
+ (library (when interactively
+ (completing-read "Kiwix Library: "
+ (mapcar #'(lambda (var)
+ (replace-regexp-in-string
"\.zim" "" var))
+ kiwix-libraries)))))
+ (kiwix-query query-string library)))
;;; Support Org-mode
;; [[wiki:]]
- [elpa] externals/kiwix 6e85607 066/192: validate query is english or non-english., (continued)
- [elpa] externals/kiwix 6e85607 066/192: validate query is english or non-english., Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix c325402 012/192: fix add kiwix link abbrev to org-mode list, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix 5f60967 013/192: use browse-url to replace custom browser custom, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix 53f2b72 008/192: add file kiwix-at-point.el, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix 06ad0af 009/192: remove duplicate function names, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix 6d7bc71 010/192: change default Kiwix library, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix 126b172 015/192: update defgroup and defcustom, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix 7413397 019/192: add options to whether add org-mode link support, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix 9c9d784 020/192: fix cl-lib dependent issue, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix 5d25121 021/192: fix alias function name, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix aa4ac22 023/192: improve interactive function,
Stefan Monnier <=
- [elpa] externals/kiwix d684140 024/192: Quote path argument each time it's used, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix f43e006 028/192: add Kiwix installation commentary, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix e527614 032/192: Merge branch 'release/v0.2.1', Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix 00c5a17 033/192: Merge tag 'v0.2.1' into develop, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix 164cf9c 034/192: disable Wikipedia_Local link abbrev, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix c3e2d85 038/192: fix query is chinese string issue, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix c5df1ac 042/192: Merge branch 'release/v0.3.0', Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix fb92b4f 043/192: Merge tag 'v0.3.0' into develop, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix 1ddddc1 044/192: improve library fragment, Stefan Monnier, 2020/12/19
- [elpa] externals/kiwix b84a5ff 047/192: Merge branch 'release/v0.4.0', Stefan Monnier, 2020/12/19