|
|
@@ -481,7 +481,7 @@ See `bible--display-lemma-hebrew'."
|
|
|
(defvar bible--commentary-buffers nil
|
|
|
"List of commentary buffers.")
|
|
|
|
|
|
-(defvar-local associated-buffer nil
|
|
|
+(defvar-local bible-associated-buffer nil
|
|
|
"Buffer associated with a given commentary buffer---used for
|
|
|
chasing cross-references.")
|
|
|
|
|
|
@@ -784,10 +784,11 @@ starting verse reference for the buffer. If no optional location
|
|
|
arguments are supplied, Genesis 1:1 is used."
|
|
|
(interactive)
|
|
|
(let ((old-buffer (current-buffer)))
|
|
|
+ (unless old-buffer (error "No current buffer! How did this happen!"))
|
|
|
(with-current-buffer (or buffer (get-buffer-create "*commentary*"))
|
|
|
(bible)
|
|
|
(when module (setq-default bible-commentary module))
|
|
|
- (setq-local associated-buffer old-buffer)
|
|
|
+ (setq-local bible-associated-buffer old-buffer)
|
|
|
(setq-local bible-text (default-value 'bible-commentary))
|
|
|
(setq-local mode-name (concat "Commentary " bible-text))
|
|
|
(bible--set-location
|
|
|
@@ -890,7 +891,10 @@ Use optional argument MODULE as commentary if given."
|
|
|
(interactive)
|
|
|
(let ((item (or module (get-text-property (point) 'module))))
|
|
|
(setq-local bible-commentary item)
|
|
|
- (commentary-open nil bible--current-book-name bible--current-chapter 1 item)))
|
|
|
+ (split-window-right)
|
|
|
+ (balance-windows)
|
|
|
+ (other-window 1)
|
|
|
+ (commentary-open (generate-new-buffer "*commentary*") bible--current-book-name bible--current-chapter 1 item)))
|
|
|
|
|
|
(defun bible-select-text ()
|
|
|
"Ask user for a new text module for the current `bible' buffer."
|
|
|
@@ -964,6 +968,8 @@ or `multiword'. `lucene' is the default search.
|
|
|
(let ((searchmode (completing-read "Search Mode: " '("lucene" "phrase" "regex" "multiword") nil t "lucene")))
|
|
|
(bible--open-search query searchmode (buffer-local-value 'bible-text (current-buffer))))))
|
|
|
|
|
|
+(defvar-local bible-search-reference-buffer nil)
|
|
|
+
|
|
|
(defun bible-follow-verse ()
|
|
|
"Follow the hovered verse in a bible search mode buffer.
|
|
|
Create a new `bible' buffer positioned at the selected verse."
|
|
|
@@ -980,14 +986,16 @@ Create a new `bible' buffer positioned at the selected verse."
|
|
|
(setq chapter (substring (match-string 0 text) 0 (1- (length (match-string 0 text)))))
|
|
|
(string-match ":[0-9]?[0-9]?[0-9]?" text)
|
|
|
(setq verse (substring (match-string 0 text) 1))
|
|
|
- (bible-open associated-buffer
|
|
|
+ (unless bible-search-reference-buffer
|
|
|
+ (setq-local bible-search-reference-buffer (generate-new-buffer "*bible*")))
|
|
|
+ (bible-open bible-search-reference-buffer
|
|
|
(string-trim book)
|
|
|
(string-to-number chapter)
|
|
|
(string-to-number verse)
|
|
|
bible-text))))
|
|
|
|
|
|
(defun bible-follow-xref ()
|
|
|
- "Follow the hovered verse in a bible term buffer.
|
|
|
+ "Follow the hovered verse in a bible term or commentary buffer.
|
|
|
Create a new `bible' buffer positioned at the specified verse.
|
|
|
Handle abbreviations."
|
|
|
(interactive)
|
|
|
@@ -1011,7 +1019,7 @@ Handle abbreviations."
|
|
|
(car verse-ref)))
|
|
|
(chapter (car chapter-verse))
|
|
|
(verse (cadr chapter-verse)))
|
|
|
- (bible-open associated-buffer
|
|
|
+ (bible-open bible-associated-buffer
|
|
|
(string-trim book)
|
|
|
(string-to-number chapter)
|
|
|
(string-to-number verse)
|
|
|
@@ -1757,7 +1765,7 @@ If optional argument VERSE is supplied, set cursor at verse."
|
|
|
"No results found."
|
|
|
(when (equal searchmode "lucene")
|
|
|
" Verify index has been build with mkfastmod.")))
|
|
|
- (with-current-buffer (generate-new-buffer-name "*bible-search*")
|
|
|
+ (with-current-buffer (generate-new-buffer "*bible-search*")
|
|
|
(bible-search-mode)
|
|
|
(bible--display-search results module)
|
|
|
(setq-local bible-search-word-this-query query
|