[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/org-remark 2e14b95d65 147/173: feat: minor-mode menu &
From: |
ELPA Syncer |
Subject: |
[elpa] externals/org-remark 2e14b95d65 147/173: feat: minor-mode menu & mouse context-menu (>= Emacs 28) |
Date: |
Fri, 28 Jan 2022 16:58:10 -0500 (EST) |
branch: externals/org-remark
commit 2e14b95d653a4a18044de1b4dbcdeaa9186d7300
Author: Noboru Ota <me@nobiot.com>
Commit: Noboru Ota <me@nobiot.com>
feat: minor-mode menu & mouse context-menu (>= Emacs 28)
Menu-bar entry added. For custom pens, the macro adds them in in the create
macro. If Emacs is version 28 or onwards, you can turn on context-menu-mode
on. The minor-mode menu is autoamtically available when minor-mode function
is
enabled for the context menu (default)
---
org-remark.el | 64 ++++++++++++++++++++++++++++++++++++++++++-----------------
1 file changed, 46 insertions(+), 18 deletions(-)
diff --git a/org-remark.el b/org-remark.el
index c819811209..0aeeebdd46 100644
--- a/org-remark.el
+++ b/org-remark.el
@@ -6,7 +6,7 @@
;; URL: https://github.com/nobiot/org-remark
;; Version: 0.1.0
;; Created: 22 December 2020
-;; Last modified: 17 January 2022
+;; Last modified: 19 January 2022
;; Package-Requires: ((emacs "27.1") (org "9.4"))
;; Keywords: org-mode, annotation, writing, note-taking, marginal-notes
@@ -139,8 +139,7 @@ property drawer from the highlighter pen. To do this,
prefix
property names with \"org-remark-\" or use \"CATEGORY\"."
(if (not label) `(user-error "org-remark-create: Label is missing")
`(progn
- (add-to-list 'org-remark-available-pens
- (intern (format "org-remark-mark-%s" ,label)))
+ ;; Define custom pen function
(defun ,(intern (format "org-remark-mark-%s" label))
(beg end &optional id)
,(format "Apply the following face to the region selected by BEG and
END.
@@ -163,22 +162,16 @@ highlight. In this case, no new ID gets generated."
(or face "`org-remark-highlighter'") properties)
(interactive (org-remark-region-or-word))
(org-remark-single-highlight-mark
- beg end id ,label ,face ,properties)))))
+ beg end id ,label ,face ,properties))
-;; Don't use category (symbol) as a property -- it's a special one of text
-;; properties. If you use it, the value also need to be a symbol; otherwise,
you
-;; will get an error. You can use CATEGORY (symbol and all uppercase).
-(when org-remark-create-default-pen-set
- ;; Create default pen set.
- ;; They are rather meant to be a starter pack and examples
- ;; They can be overridden, or set `org-remark-create-default-pen-set' to nil
- ;; so that Org-remark will not create them.
- (org-remark-create "red-line"
- '(:underline (:color "dark red" :style wave))
- '(CATEGORY "review" help-echo "Review this"))
- (org-remark-create "yellow"
- '(:underline "gold" :background "lemon chiffon")
- '(CATEGORY "important")))
+ ;; Register to `org-remark-available-pens'
+ (add-to-list 'org-remark-available-pens
+ (intern (format "org-remark-mark-%s" ,label)))
+
+ ;; Add custom pens to the minor-mode menu
+ (define-key-after org-remark-mode-map
+ [menu-bar org-remark Highlight ,(format "mark-%s" label)]
+ '(,(format "%s pen" label) . ,(intern (format "org-remark-mark-%s"
label)))))))
;;;; Commands
@@ -238,6 +231,32 @@ recommended to turn it on as part of Emacs initialization.
(remove-hook 'after-save-hook #'org-remark-save t)
(remove-hook 'kill-buffer-hook #'org-remark-tracking-save t))))
+
+;;;; Org-remark Menu
+(easy-menu-define org-remark-menu org-remark-mode-map "Org-remark menu."
+ `("Org-remark"
+ ("Highlight"
+ ["default pen" org-remark-mark])))
+
+(define-key-after org-remark-mode-map
+ [menu-bar org-remark open]
+ '("Open" . org-remark-open))
+
+(define-key-after org-remark-mode-map
+ [menu-bar org-remark view]
+ '("View" . org-remark-view))
+
+(define-key-after org-remark-mode-map
+ [menu-bar org-remark change]
+ '("Change" . org-remark-change))
+
+(define-key-after org-remark-mode-map
+ [menu-bar org-remark remove]
+ '("Remove" . org-remark-remove))
+
+
+;;;; Other Commands
+
(add-to-list 'org-remark-available-pens #'org-remark-mark)
;;;###autoload
(defun org-remark-mark (beg end &optional id)
@@ -266,6 +285,15 @@ to the database."
(org-remark-single-highlight-mark beg end id nil nil
(list "org-remark-label" "nil")))
+(when org-remark-create-default-pen-set
+ ;; Create default pen set.
+ (org-remark-create "red-line"
+ '(:underline (:color "dark red" :style wave))
+ '(CATEGORY "review" help-echo "Review this"))
+ (org-remark-create "yellow"
+ '(:underline "gold" :background "lemon chiffon")
+ '(CATEGORY "important")))
+
(defun org-remark-load ()
"Visit `org-remark-notes-file' & load the saved highlights onto current
buffer.
If there is no highlights or annotations for current buffer,
- [elpa] externals/org-remark 75698160aa 098/173: fix: for name change, (continued)
- [elpa] externals/org-remark 75698160aa 098/173: fix: for name change, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark c946340b50 096/173: intrnl: refactor & docstrings, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark 92d3b17bf3 099/173: change name org-hana to org-remark, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark 9fd5ef5b74 105/173: doc: NOTICE on name change proposal, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark 3bb5f40e59 121/173: intrnl: refactor. mark saves; load only loads with no save, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark c03ce7b590 123/173: fix: save and line-num for ID., ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark d07f158dfe 125/173: add:refactor: org-remark-source-path, org-remark-notes-track-file, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark 1b2482cf7c 133/173: fix:org-remark-mark API; refactor org-remark-load, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark 76e5a4f915 136/173: docs: WIP, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark 6aaba8acdb 142/173: docs: resolving custom_id link, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark 2e14b95d65 147/173: feat: minor-mode menu & mouse context-menu (>= Emacs 28),
ELPA Syncer <=
- [elpa] externals/org-remark d9e305837b 149/173: docs: README update for ascii output used by ELPA, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark 2b4692abbf 150/173: docs: NEWS for v0.1.0, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark 41b0997c3f 151/173: fix: remove/delete remove only one highlihgt at a time, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark 84d50976df 156/173: chg: Menu label from "Remark" to "Org-remark", ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark 697a990a34 158/173: revert f6c3f36 The screen jerking was not OS or version; setup issue, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark 5e55f8757d 159/173: chg: menu squence; docs: add menu and context menu to user manual, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark 0db912919a 163/173: docs: update Makefile, README and user manual, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark 82a4afbee0 169/173: add: delete with confirmation promt etc., ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark a1ff9033c1 170/173: add: org-remark-delete, ELPA Syncer, 2022/01/28
- [elpa] externals/org-remark dc162bc8ec 172/173: fix: window management for open and remove/delete, ELPA Syncer, 2022/01/28