esv.el: add esv-arguments variable
This commit is contained in:
parent
c57c38444a
commit
3638d0f22a
1 changed files with 9 additions and 3 deletions
12
esv.el
12
esv.el
|
@ -56,6 +56,9 @@
|
||||||
:type 'string
|
:type 'string
|
||||||
:group 'esv)
|
:group 'esv)
|
||||||
|
|
||||||
|
(defvar esv-arguments '()
|
||||||
|
"List of additional arguments passed to `esv-program'.")
|
||||||
|
|
||||||
(define-derived-mode esv-mode text-mode "ESV-Bible"
|
(define-derived-mode esv-mode text-mode "ESV-Bible"
|
||||||
"Major mode used for reading the Bible with `esv'."
|
"Major mode used for reading the Bible with `esv'."
|
||||||
:group 'esv
|
:group 'esv
|
||||||
|
@ -69,13 +72,16 @@ The result will be redirected to a buffer specified by `esv-buffer'.
|
||||||
Requires the esv command line tool to be in the system's PATH.
|
Requires the esv command line tool to be in the system's PATH.
|
||||||
esv can be acquired at <https://sr.ht/~jeremy/esv>."
|
esv can be acquired at <https://sr.ht/~jeremy/esv>."
|
||||||
(interactive "MBook: \nMVerses: ")
|
(interactive "MBook: \nMVerses: ")
|
||||||
(let ((buffer (concat book " " verses)))
|
(let
|
||||||
|
((buffer (concat book " " verses))
|
||||||
|
(arg-list (append esv-arguments
|
||||||
|
(list (format "-l%d" esv-columns)))))
|
||||||
(catch 'buffer-exists
|
(catch 'buffer-exists
|
||||||
(when (get-buffer buffer)
|
(when (get-buffer buffer)
|
||||||
(message "Buffer `%s' already exists" buffer)
|
(message "Buffer `%s' already exists" buffer)
|
||||||
(throw 'buffer-exists nil))
|
(throw 'buffer-exists nil))
|
||||||
(call-process esv-program nil buffer t
|
(apply #'call-process esv-program nil buffer t
|
||||||
(format "-l%d" esv-columns) book verses)
|
(append arg-list (list book) (list verses)))
|
||||||
(display-buffer buffer)
|
(display-buffer buffer)
|
||||||
(with-current-buffer buffer
|
(with-current-buffer buffer
|
||||||
(esv-mode)
|
(esv-mode)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue