Generate buffer name based on URL or current buffer name
This commit is contained in:
parent
e59fa41dda
commit
8db0c71163
1 changed files with 22 additions and 6 deletions
28
kagi.el
28
kagi.el
|
@ -314,9 +314,25 @@ Returns a formatted string to be displayed by the shell."
|
||||||
|
|
||||||
;;; Summarizer
|
;;; Summarizer
|
||||||
|
|
||||||
(defun kagi--summary-buffer-name ()
|
(defun kagi--get-domain-name (url)
|
||||||
"Generate an alternative name for the summary based on the given BUFFER-NAME."
|
"Return the domain name of the given URL."
|
||||||
(format "%s (summary)" (buffer-name)))
|
(string-match
|
||||||
|
(rx (seq bos
|
||||||
|
(? (seq "http"
|
||||||
|
(? "s")
|
||||||
|
"://"))
|
||||||
|
(? "www.")
|
||||||
|
;; the domain name
|
||||||
|
(group (seq (+ (not ".")) "." (+ alpha)))))
|
||||||
|
url)
|
||||||
|
|
||||||
|
(if-let ((domain-name (match-string 1 url)))
|
||||||
|
domain-name
|
||||||
|
"URL"))
|
||||||
|
|
||||||
|
(defun kagi--summary-buffer-name (hint)
|
||||||
|
"Generate a name for the summary buffer, HINT will be part of the name."
|
||||||
|
(format "%s (summary)" hint))
|
||||||
|
|
||||||
;;;###autoload
|
;;;###autoload
|
||||||
(defun kagi-summarize-buffer (buffer)
|
(defun kagi-summarize-buffer (buffer)
|
||||||
|
@ -325,7 +341,7 @@ Returns a formatted string to be displayed by the shell."
|
||||||
(with-current-buffer buffer
|
(with-current-buffer buffer
|
||||||
(kagi--display-summary
|
(kagi--display-summary
|
||||||
(lambda () (kagi--call-text-summarizer (buffer-string)))
|
(lambda () (kagi--call-text-summarizer (buffer-string)))
|
||||||
(kagi--summary-buffer-name))))
|
(kagi--summary-buffer-name (buffer-name)))))
|
||||||
|
|
||||||
;;;###autoload
|
;;;###autoload
|
||||||
(defun kagi-summarize-region (begin end)
|
(defun kagi-summarize-region (begin end)
|
||||||
|
@ -335,7 +351,7 @@ Shows the summary in a new window."
|
||||||
(interactive "r")
|
(interactive "r")
|
||||||
(kagi--display-summary
|
(kagi--display-summary
|
||||||
(lambda () (kagi--call-text-summarizer (buffer-substring begin end)))
|
(lambda () (kagi--call-text-summarizer (buffer-substring begin end)))
|
||||||
(kagi--summary-buffer-name)))
|
(kagi--summary-buffer-name (buffer-name))))
|
||||||
|
|
||||||
;;;###autoload
|
;;;###autoload
|
||||||
(defun kagi-summarize-url (url)
|
(defun kagi-summarize-url (url)
|
||||||
|
@ -354,7 +370,7 @@ supported:
|
||||||
(interactive "sURL: ")
|
(interactive "sURL: ")
|
||||||
(kagi--display-summary
|
(kagi--display-summary
|
||||||
(lambda () (kagi--call-url-summarizer url))
|
(lambda () (kagi--call-url-summarizer url))
|
||||||
"*URL summary*"))
|
(kagi--summary-buffer-name (kagi--get-domain-name url))))
|
||||||
|
|
||||||
(provide 'kagi)
|
(provide 'kagi)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue