From b86f38f343a11ca3824c0b357d0d58d97b96383c Mon Sep 17 00:00:00 2001 From: stardiviner Date: Sun, 18 Aug 2024 12:28:11 +0800 Subject: [PATCH] display org-tag-eldoc text on sideline left for better view indentation --- org-tag-eldoc.el | 36 ++++++++++++++++++++++++++++-------- 1 file changed, 28 insertions(+), 8 deletions(-) diff --git a/org-tag-eldoc.el b/org-tag-eldoc.el index f217641..9651473 100644 --- a/org-tag-eldoc.el +++ b/org-tag-eldoc.el @@ -76,6 +76,12 @@ :safe #'symbolp :group 'org-tag-eldoc) +(defcustom org-tag-eldoc-sideline-display-side 'left + "Display sideline text on left or right side." + :type 'symbol + :safe #'symbolp + :group 'org-tag-eldoc) + (defcustom org-tag-eldoc-tag-explanations-alist '(("Linux" . "Linux (/ˈlɪnʊks/ LIN-uuks) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds.") ("Emacs" . "Emacs /ˈiːmæks/ ⓘ, originally named EMACS (an acronym for \"Editor Macros\"), is a family of text editors that are characterized by their extensibility. The manual for the most widely used variant, GNU Emacs, describes it as \"the extensible, customizable, self-documenting, real-time display editor\". Development of the first Emacs began in the mid-1970s, and work on GNU Emacs, directly descended from the original, is ongoing; its latest version is 29.2, released January 2024.") @@ -176,8 +182,13 @@ Argument COMMAND is required in sideline backend." ;; TODO: use `pre-command-hook' to implement another child-frame popup displayer function. (cl-case org-tag-eldoc-display-backend (sideline - (make-local-variable 'sideline-backends-right) - (add-to-list 'sideline-backends-right '(org-tag-eldoc-sideline . up)) ; or `org-tag-eldoc-sideline-async' + (pcase org-tag-eldoc-sideline-display-side + ('left + (make-local-variable 'sideline-backends-left) + (add-to-list 'sideline-backends-left '(org-tag-eldoc-sideline . up))) ; or `org-tag-eldoc-sideline-async' + ('right + (make-local-variable 'sideline-backends-right) + (add-to-list 'sideline-backends-right '(org-tag-eldoc-sideline . up)))) (sideline-mode 1)) (eldoc (eldoc-mode 1) @@ -192,12 +203,21 @@ Argument COMMAND is required in sideline backend." (remove-hook 'eldoc-documentation-functions #'org-tag-eldoc-function) (cl-case org-tag-eldoc-display-backend (sideline - (setq-local sideline-backends-right - (delq (assoc 'org-tag-eldoc-sideline sideline-backends-right) - sideline-backends-right)) - (setq-local sideline-backends-right - (delq (assoc 'org-tag-eldoc-sideline-async sideline-backends-right) - sideline-backends-right)) + (pcase org-tag-eldoc-sideline-display-side + ('left + (setq-local sideline-backends-left + (delq (assoc 'org-tag-eldoc-sideline sideline-backends-left) + sideline-backends-left)) + (setq-local sideline-backends-left + (delq (assoc 'org-tag-eldoc-sideline-async sideline-backends-left) + sideline-backends-left))) + ('right + (setq-local sideline-backends-right + (delq (assoc 'org-tag-eldoc-sideline sideline-backends-right) + sideline-backends-right)) + (setq-local sideline-backends-right + (delq (assoc 'org-tag-eldoc-sideline-async sideline-backends-right) + sideline-backends-right)))) (sideline-mode -1)) (eldoc (remove-hook 'eldoc-documentation-functions #'org-tag-eldoc-function) -- 2.11.4.GIT