summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2015-08-14 15:50:35 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2015-08-14 15:55:58 -0700
commit6af5aad26411ffe21c3fe4bc5438347110910111 (patch)
tree2fdf4b741c5025f60924c902123bb31536eca511 /src
parent244c801689d2f7a80480d83cd7d092d4762ebe08 (diff)
downloademacs-6af5aad26411ffe21c3fe4bc5438347110910111.tar.gz
emacs-6af5aad26411ffe21c3fe4bc5438347110910111.tar.bz2
emacs-6af5aad26411ffe21c3fe4bc5438347110910111.zip
Prefer ‘format’ to ‘substitute-command-keys’
* src/character.h (uLSQM, uRSQM): Move here ... * src/doc.c (uLSQM, uRSQM): ... from here. * src/doc.c (Fsubstitute_command_keys): * src/syntax.c (Finternal_describe_syntax_value): * lisp/cedet/mode-local.el (mode-local-print-binding) (mode-local-describe-bindings-2): * lisp/cedet/srecode/srt-mode.el (srecode-macro-help): * lisp/cus-theme.el (describe-theme-1): * lisp/descr-text.el (describe-text-properties-1, describe-char): * lisp/emacs-lisp/cl-extra.el (cl--describe-class): * lisp/emacs-lisp/cl-generic.el (cl--generic-describe): * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor): * lisp/emacs-lisp/package.el (describe-package-1): * lisp/faces.el (describe-face): * lisp/help-fns.el (help-fns--key-bindings) (help-fns--compiler-macro, help-fns--parent-mode) (help-fns--obsolete, help-fns--interactive-only) (describe-function-1, describe-variable): * lisp/help.el (describe-mode): Prefer ‘format’ to ‘substitute-command-keys’ when either will do to implement quoting style. This generally makes the code simpler.
Diffstat (limited to 'src')
-rw-r--r--src/character.h5
-rw-r--r--src/doc.c11
-rw-r--r--src/syntax.c7
3 files changed, 13 insertions, 10 deletions
diff --git a/src/character.h b/src/character.h
index 0b2c419de99..67d4bca4a23 100644
--- a/src/character.h
+++ b/src/character.h
@@ -78,6 +78,11 @@ enum
OBJECT_REPLACEMENT_CHARACTER = 0xFFFC,
};
+/* UTF-8 encodings. Use \x escapes, so they are portable to pre-C11
+ compilers and can be concatenated with ordinary string literals. */
+#define uLSQM "\xE2\x80\x98" /* U+2018 LEFT SINGLE QUOTATION MARK */
+#define uRSQM "\xE2\x80\x99" /* U+2019 RIGHT SINGLE QUOTATION MARK */
+
/* Nonzero iff C is a character that corresponds to a raw 8-bit
byte. */
#define CHAR_BYTE8_P(c) ((c) > MAX_5_BYTE_CHAR)
diff --git a/src/doc.c b/src/doc.c
index 9f0ddbc5260..977953d53e5 100644
--- a/src/doc.c
+++ b/src/doc.c
@@ -687,8 +687,6 @@ the same file name is found in the `doc-directory'. */)
/* Curved quotation marks. */
static unsigned char const LSQM[] = { uLSQM0, uLSQM1, uLSQM2 };
static unsigned char const RSQM[] = { uRSQM0, uRSQM1, uRSQM2 };
-#define uLSQM "\xE2\x80\x98"
-#define uRSQM "\xE2\x80\x99"
/* Return the current effective text quoting style. */
enum text_quoting_style
@@ -922,14 +920,13 @@ Otherwise, return a new string. */)
if (NILP (tem))
{
name = Fsymbol_name (name);
- insert1 (Fsubstitute_command_keys
- (build_string ("\nUses keymap "uLSQM)));
+ insert1 (CALLN (Fformat, build_string ("\nUses keymap "uLSQM)));
insert_from_string (name, 0, 0,
SCHARS (name),
SBYTES (name), 1);
- insert1 (Fsubstitute_command_keys
- (build_string
- (uRSQM", which is not currently defined.\n")));
+ insert1 (CALLN (Fformat,
+ (build_string
+ (uRSQM", which is not currently defined.\n"))));
if (start[-1] == '<') keymap = Qnil;
}
else if (start[-1] == '<')
diff --git a/src/syntax.c b/src/syntax.c
index d45936b2b28..d543a5f9823 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -1333,9 +1333,10 @@ DEFUN ("internal-describe-syntax-value", Finternal_describe_syntax_value,
insert_string (" (nestable)");
if (prefix)
- insert1 (Fsubstitute_command_keys
- (build_string
- (",\n\t is a prefix character for `backward-prefix-chars'")));
+ insert1 (CALLN (Fformat,
+ (build_string
+ (",\n\t is a prefix character for "
+ uLSQM"backward-prefix-chars"uRSQM))));
return syntax;
}