aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars Ingebrigtsen2022-09-30 19:38:25 +0200
committerLars Ingebrigtsen2022-09-30 19:38:36 +0200
commit63f033c2214db4baabf9f85b2a44cd3a9118b709 (patch)
tree830137674fdd2cb78de1deb2144d51669ecd5116
parentf270a9859d66078953dfeb2cbb064770e9a0749b (diff)
downloademacs-63f033c2214db4baabf9f85b2a44cd3a9118b709.tar.gz
emacs-63f033c2214db4baabf9f85b2a44cd3a9118b709.zip
Further with-locale-environment refresh fixes
* lisp/international/mule-cmds.el (set-display-table-and-terminal-coding-system): Allow inhibiting refresh. (set-locale-environment): Inhibit refresh in more paths (bug#58193).
-rw-r--r--lisp/international/mule-cmds.el12
1 files changed, 8 insertions, 4 deletions
diff --git a/lisp/international/mule-cmds.el b/lisp/international/mule-cmds.el
index 51147943dc2..8bece9a3ee6 100644
--- a/lisp/international/mule-cmds.el
+++ b/lisp/international/mule-cmds.el
@@ -1909,8 +1909,11 @@ The default status is as follows:
1909 1909
1910(reset-language-environment) 1910(reset-language-environment)
1911 1911
1912(defun set-display-table-and-terminal-coding-system (language-name &optional coding-system display) 1912(defun set-display-table-and-terminal-coding-system (language-name
1913 "Set up the display table and terminal coding system for LANGUAGE-NAME." 1913 &optional coding-system
1914 display inhibit-refresh)
1915 "Set up the display table and terminal coding system for LANGUAGE-NAME.
1916If INHIBIT-REFRESH, don't redraw the current frame."
1914 (let ((coding (get-language-info language-name 'unibyte-display))) 1917 (let ((coding (get-language-info language-name 'unibyte-display)))
1915 (if (and coding 1918 (if (and coding
1916 (or (not coding-system) 1919 (or (not coding-system)
@@ -1923,7 +1926,8 @@ The default status is as follows:
1923 (when standard-display-table 1926 (when standard-display-table
1924 (dotimes (i 128) 1927 (dotimes (i 128)
1925 (aset standard-display-table (+ i 128) nil)))) 1928 (aset standard-display-table (+ i 128) nil))))
1926 (set-terminal-coding-system (or coding-system coding) display))) 1929 (set-terminal-coding-system (or coding-system coding) display
1930 inhibit-refresh)))
1927 1931
1928(defun set-language-environment (language-name) 1932(defun set-language-environment (language-name)
1929 "Set up multilingual environment for using LANGUAGE-NAME. 1933 "Set up multilingual environment for using LANGUAGE-NAME.
@@ -2811,7 +2815,7 @@ See also `locale-charset-language-names', `locale-language-names',
2811 (set-language-environment language-name)) 2815 (set-language-environment language-name))
2812 2816
2813 (set-display-table-and-terminal-coding-system 2817 (set-display-table-and-terminal-coding-system
2814 language-name coding-system frame) 2818 language-name coding-system frame inhibit-refresh)
2815 2819
2816 ;; Set the `keyboard-coding-system' if appropriate (tty 2820 ;; Set the `keyboard-coding-system' if appropriate (tty
2817 ;; only). At least X and MS Windows can generate 2821 ;; only). At least X and MS Windows can generate