From: Kaushal Modi <kaushal.modi@gmail.com>
To: Paul Eggert <eggert@cs.ucla.edu>
Cc: Kyle Meyer <kyle@kyleam.com>, emacs-org list <emacs-orgmode@gnu.org>
Subject: Re: [PATCH] Fix the single quote printed in the message printed by org-table-edit-formulas
Date: Thu, 10 Mar 2016 22:22:41 -0500 [thread overview]
Message-ID: <CAFyQvY2Ob9hHSh3KRc-qfAKx3qSOrTf87y3v_W9LFDi57mV33g@mail.gmail.com> (raw)
In-Reply-To: <56E221EA.4080106@cs.ucla.edu>
[-- Attachment #1: Type: text/plain, Size: 5975 bytes --]
On Thu, Mar 10, 2016 at 8:39 PM, Paul Eggert <eggert@cs.ucla.edu> wrote:
> Help strings are considered documentation, so you need to escape special
> characters in help-echo property strings the same way you'd escape them in
> doc strings. Something like this:
>
> (let* ((str1 "\nhello")
> (echo-str1 "left single quote (`) right single quote (') grave
> accent (\\=`) apostrophe (\\=') kill-region (\\[kill-region])")
> ov)
> (let* ((b (+ 1 (point)))
> (e (+ b (string-width str1))))
> (insert str1)
> (setq ov (make-overlay b e)))
> (overlay-put ov 'help-echo echo-str1))
>
Thanks Paul. That was very educational. So it turns out that we do not need
substitute-command-keys at all for help-echo text.
Below is now the latest patch = previous patch + help-echo straight quote
fix.
From a897b6e37708cd836ea9576b43006075af80e062 Mon Sep 17 00:00:00 2001
From: Kaushal Modi <kaushal.modi@gmail.com>
Date: Thu, 10 Mar 2016 22:12:44 -0500
Subject: [PATCH] Display quotes in key-bindings as straight quotes
* lisp/org-agenda.el (org-agenda-show-the-flagging-note):
* lisp/org-footnote.el (org-footnote-goto-definition):
* lisp/org-table.el (org-table-edit-formulas):
(org-table-align): Straight quote fix
* lisp/org-protocol.el (org-protocol-create-for-org):
* lisp/org-table.el (org-table-sum): Minor reformatting
http://thread.gmane.org/gmane.emacs.orgmode/105594
Fix the quote style displayed when key-bindings are shown in
the echo via (message .. (substitute-command-keys ..)).
Starting from emacs 25.1, a straight quote is rendered as a right-curly
quote by default.
So below will render that single quote as curly.
(message "C-c '")
The fix is to print that quote verbatim using the "%s" modifier:
(message "%s" "C-c '")
Also an help-echo text property value was fixed in org-table-align.
substitute-command-keys should not be used in that. Instead \\[COMMAND]
should be used directly in the string.
---
lisp/org-agenda.el | 5 +++--
| 7 +++----
lisp/org-protocol.el | 2 +-
lisp/org-table.el | 17 +++++++----------
4 files changed, 14 insertions(+), 17 deletions(-)
diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
index 876ea44..cd69c74 100644
--- a/lisp/org-agenda.el
+++ b/lisp/org-agenda.el
@@ -10107,8 +10107,9 @@ tag and (if present) the flagging note."
(replace-match "\n" t t))
(goto-char (point-min))
(select-window win)
- (message (substitute-command-keys "Flagging note pushed to kill
ring. \
-Press \\[org-agenda-show-the-flagging-note] again to remove tag and
note")))))
+ (message "%s" (substitute-command-keys "Flagging note pushed to \
+kill ring. Press \\[org-agenda-show-the-flagging-note] again to remove \
+tag and note")))))
(defun org-agenda-remove-flag (marker)
"Remove the FLAGGED tag and any flagging note in the entry."
--git a/lisp/org-footnote.el b/lisp/org-footnote.el
index e80685a..a847326 100644
--- a/lisp/org-footnote.el
+++ b/lisp/org-footnote.el
@@ -531,10 +531,9 @@ value if point was successfully moved."
(goto-char (match-end 0))
(org-show-context 'link-search)
(when (derived-mode-p 'org-mode)
- (message
- (substitute-command-keys
- "Edit definition and go back with `\\[org-mark-ring-goto]' or, if \
-unique, with `\\[org-ctrl-c-ctrl-c]'.")))
+ (message "%s" (substitute-command-keys
+ "Edit definition and go back with \
+`\\[org-mark-ring-goto]' or, if unique, with `\\[org-ctrl-c-ctrl-c]'.")))
t))
(defun org-footnote-goto-previous-reference (label)
diff --git a/lisp/org-protocol.el b/lisp/org-protocol.el
index a249c9e..6510733 100644
--- a/lisp/org-protocol.el
+++ b/lisp/org-protocol.el
@@ -669,7 +669,7 @@ delegates most of the work to `org-protocol-create'."
(require 'org-publish)
(let ((all (or (org-publish-get-project-from-filename
buffer-file-name))))
(if all (org-protocol-create (cdr all))
- (message "Not in an org-project. Did mean %s?"
+ (message "Not in an org-project. Did you mean `%s'?"
(substitute-command-keys"\\[org-protocol-create]")))))
(defun org-protocol-create (&optional project-plist)
diff --git a/lisp/org-table.el b/lisp/org-table.el
index 488c912..df81944 100644
--- a/lisp/org-table.el
+++ b/lisp/org-table.el
@@ -795,9 +795,8 @@ When nil, simply write \"#ERROR\" in corrupted fields.")
(org-add-props x nil
'help-echo
(concat
- (substitute-command-keys
- "Clipped table field, use \\[org-table-edit-field]
to \
-edit. Full value is:\n")
+ "Clipped table field, use \\[org-table-edit-field] \
+to edit. Full value is:\n"
(substring-no-properties x)))
(let ((l (length x))
(f1 (min fmax
@@ -2136,11 +2135,10 @@ If NLAST is a number, only the NLAST fields will
actually be summed."
s diff)
(format "%.0f:%02.0f:%02.0f" h m s))))
(kill-new sres)
- (if (org-called-interactively-p 'interactive)
- (message "%s"
- (substitute-command-keys
- (format "Sum of %d items: %-20s (\\[yank] will insert result
into buffer)"
- (length numbers) sres))))
+ (when (org-called-interactively-p 'interactive)
+ (message "%s" (substitute-command-keys
+ (format "Sum of %d items: %-20s \
+(\\[yank] will insert result into buffer)" (length numbers) sres))))
sres))))
(defun org-table-get-number-for-summing (s)
@@ -3591,8 +3589,7 @@ Parameters get priority."
(when (eq org-table-use-standard-references t)
(org-table-fedit-toggle-ref-type))
(org-goto-line startline)
- (message
- (substitute-command-keys "\\<org-mode-map>\
+ (message "%s" (substitute-command-keys "\\<org-mode-map>\
Edit formulas, finish with `\\[org-ctrl-c-ctrl-c]' or
`\\[org-edit-special]'. \
See menu for more commands.")))))
--
2.6.0.rc0.24.gec371ff
--
Kaushal Modi
[-- Attachment #2: Type: text/html, Size: 12183 bytes --]
next prev parent reply other threads:[~2016-03-11 3:23 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-09 16:18 [PATCH] Fix the single quote printed in the message printed by org-table-edit-formulas Kaushal Modi
2016-03-10 9:25 ` Nicolas Goaziou
2016-03-10 15:33 ` Kaushal Modi
2016-03-10 16:05 ` Paul Eggert
2016-03-10 16:00 ` Kyle Meyer
2016-03-10 16:38 ` Kyle Meyer
2016-03-10 16:41 ` Kaushal Modi
2016-03-10 17:47 ` Kaushal Modi
2016-03-10 18:24 ` Kaushal Modi
2016-03-11 1:39 ` Paul Eggert
2016-03-11 3:22 ` Kaushal Modi [this message]
2016-03-11 4:30 ` Kyle Meyer
2016-03-11 4:55 ` Kaushal Modi
2016-03-11 5:12 ` Kyle Meyer
2016-03-11 17:44 ` Kaushal Modi
2016-03-11 18:47 ` Kyle Meyer
2016-03-11 19:16 ` Kyle Meyer
2016-03-12 4:01 ` Kyle Meyer
2016-03-12 4:57 ` Kaushal Modi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.orgmode.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAFyQvY2Ob9hHSh3KRc-qfAKx3qSOrTf87y3v_W9LFDi57mV33g@mail.gmail.com \
--to=kaushal.modi@gmail.com \
--cc=eggert@cs.ucla.edu \
--cc=emacs-orgmode@gnu.org \
--cc=kyle@kyleam.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).