summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2015-09-01 12:06:00 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2015-09-01 12:06:25 -0700
commit183ad9d59757314f93aed8a9fe512c8fb48a2ed1 (patch)
treec1412a43161cd296505f587be5f50a6f1b081cc6
parent1a3518e7c361a9ceaa017c1334a83d14e0651a4e (diff)
downloademacs-183ad9d59757314f93aed8a9fe512c8fb48a2ed1.tar.gz
terminal-init-w32console mimicks command-line
Problem reported by Eli Zaretskii. * lisp/startup.el (startup--setup-quote-display): New function, refactored from a part of ‘command-line’. (command-line): Use it. * lisp/term/w32console.el (terminal-init-w32console): Use it, so that this function stays consistent with ‘command-line’.
-rw-r--r--lisp/startup.el17
-rw-r--r--lisp/term/w32console.el7
2 files changed, 11 insertions, 13 deletions
diff --git a/lisp/startup.el b/lisp/startup.el
index 3e2973981ec..2f90c8d861a 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -803,6 +803,15 @@ to prepare for opening the first frame (e.g. open a connection to an X server)."
(defvar server-name)
(defvar server-process)
+(defun startup--setup-quote-display ()
+ "If curved quotes don't work, display ASCII approximations."
+ (dolist (char-repl '((?‘ . ?\`) (?’ . ?\') (?“ . ?\") (?” . ?\")))
+ (when (not (char-displayable-p (car char-repl)))
+ (unless standard-display-table
+ (setq standard-display-table (make-display-table)))
+ (aset standard-display-table (car char-repl)
+ (vector (make-glyph-code (cdr char-repl) 'shadow))))))
+
(defun command-line ()
"A subroutine of `normal-top-level'.
Amongst another things, it parses the command-line arguments."
@@ -1017,13 +1026,7 @@ please check its value")
'("no" "off" "false" "0")))))
(setq no-blinking-cursor t))
- ;; If curved quotes don't work, display ASCII approximations.
- (dolist (char-repl '((?‘ . ?\`) (?’ . ?\') (?“ . ?\") (?” . ?\")))
- (when (not (char-displayable-p (car char-repl)))
- (or standard-display-table
- (setq standard-display-table (make-display-table)))
- (aset standard-display-table (car char-repl)
- (vector (make-glyph-code (cdr char-repl) 'shadow)))))
+ (startup--setup-quote-display)
(setq internal--text-quoting-flag t)
;; Re-evaluate predefined variables whose initial value depends on
diff --git a/lisp/term/w32console.el b/lisp/term/w32console.el
index 2df137839d0..58856858502 100644
--- a/lisp/term/w32console.el
+++ b/lisp/term/w32console.el
@@ -68,12 +68,7 @@
(if oem-o-cs-p oem-code-page-output-coding oem-code-page-coding))
;; Since we changed the terminal encoding, we need to repeat
;; the test for Unicode quotes being displayable.
- (dolist (char-repl
- '((?‘ . [?\`]) (?’ . [?\']) (?“ . [?\"]) (?” . [?\"])))
- (when (not (char-displayable-p (car char-repl)))
- (or standard-display-table
- (setq standard-display-table (make-display-table)))
- (aset standard-display-table (car char-repl) (cdr char-repl))))))
+ (startup--setup-quote-display)))
(let* ((colors w32-tty-standard-colors)
(color (car colors)))
(tty-color-clear)