aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGlenn Morris2018-08-10 11:28:40 -0700
committerGlenn Morris2018-08-10 11:28:40 -0700
commitcaa4d9c4e7205cc62a9f414903e965494a703763 (patch)
treee2c7d913de302f0c5c1c497fe1e76d9f133fe0cb
parent243b68f73ff7cbb4d89a3f4a15a1cd38cfc14fae (diff)
parent5afbf62674e741b06c01216fe37a5439e9d42307 (diff)
downloademacs-caa4d9c4e7205cc62a9f414903e965494a703763.tar.gz
emacs-caa4d9c4e7205cc62a9f414903e965494a703763.zip
Merge from origin/emacs-26
5afbf62 Fix emacsclient check for term.el buffer (Bug#21041) 5132a58 Improve documentation of 'set-fontset-font' cd90325 Improve documentation of M-? 155a885 Reinterpret Esperanto characters in iso-transl as iso-8859-3. a0ef733 Fix Flyspell mode when several languages are mixed in a buffer
-rw-r--r--doc/emacs/maintaining.texi11
-rw-r--r--doc/lispref/display.texi14
-rw-r--r--lib-src/emacsclient.c4
-rw-r--r--lisp/international/iso-transl.el24
-rw-r--r--lisp/progmodes/xref.el6
-rw-r--r--lisp/textmodes/flyspell.el37
-rw-r--r--src/fontset.c27
7 files changed, 83 insertions, 40 deletions
diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi
index b31cacf998a..5c3017a3883 100644
--- a/doc/emacs/maintaining.texi
+++ b/doc/emacs/maintaining.texi
@@ -1987,9 +1987,14 @@ Restart one of the last 2 commands above, from the current location of point.
1987 1987
1988@kindex M-? 1988@kindex M-?
1989@findex xref-find-references 1989@findex xref-find-references
1990 @kbd{M-?} finds all the references for the identifier at point. If 1990 @kbd{M-?} finds all the references for the identifier at point,
1991there's no identifier at point, or when invoked with a prefix 1991prompting for the identifier as needed, with completion. Depending on
1992argument, the command prompts for the identifier, with completion. It 1992the current backend (@pxref{Xref}), the command may prompt even if it
1993finds a valid identifier at point. When invoked with a prefix
1994argument, it always prompts for the identifier. (If you want it to
1995prompt always, customize the value of the variable
1996@code{xref-prompt-for-identifier} to @code{t}; or set it to @code{nil}
1997to prompt only if there's no usable identifier at point.) The command
1993then presents the @file{*xref*} buffer with all the references to the 1998then presents the @file{*xref*} buffer with all the references to the
1994identifier, showing the file name and the line where the identifier is 1999identifier, showing the file name and the line where the identifier is
1995referenced. The XREF mode commands are available in this buffer, see 2000referenced. The XREF mode commands are available in this buffer, see
diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi
index fef51881977..ea9a305ae2a 100644
--- a/doc/lispref/display.texi
+++ b/doc/lispref/display.texi
@@ -3498,11 +3498,15 @@ cons @code{(@var{from} . @var{to})}, where @var{from} and @var{to} are
3498character codepoints. In that case, use @var{font-spec} for all the 3498character codepoints. In that case, use @var{font-spec} for all the
3499characters in the range @var{from} and @var{to} (inclusive). 3499characters in the range @var{from} and @var{to} (inclusive).
3500 3500
3501@var{character} may be a charset. In that case, use 3501@var{character} may be a charset (@pxref{Character Sets}). In that
3502@var{font-spec} for all character in the charsets. 3502case, use @var{font-spec} for all the characters in the charset.
3503 3503
3504@var{character} may be a script name. In that case, use 3504@var{character} may be a script name (@pxref{Character Properties}).
3505@var{font-spec} for all character in the charsets. 3505In that case, use @var{font-spec} for all the characters belonging to
3506the script.
3507
3508@var{character} may be @code{nil}, which means to use @var{font-spec}
3509for any character which no font-spec is specified.
3506 3510
3507@var{font-spec} may be a font-spec object created by the function 3511@var{font-spec} may be a font-spec object created by the function
3508@code{font-spec} (@pxref{Low-Level Font}). 3512@code{font-spec} (@pxref{Low-Level Font}).
@@ -3512,7 +3516,7 @@ where @var{family} is a family name of a font (possibly including a
3512foundry name at the head), @var{registry} is a registry name of a font 3516foundry name at the head), @var{registry} is a registry name of a font
3513(possibly including an encoding name at the tail). 3517(possibly including an encoding name at the tail).
3514 3518
3515@var{font-spec} may be a font name string. 3519@var{font-spec} may be a font name, a string.
3516 3520
3517@var{font-spec} may be @code{nil}, which explicitly specifies that 3521@var{font-spec} may be @code{nil}, which explicitly specifies that
3518there's no font for the specified @var{character}. This is useful, 3522there's no font for the specified @var{character}. This is useful,
diff --git a/lib-src/emacsclient.c b/lib-src/emacsclient.c
index 739e6d5949e..4fe3a588b19 100644
--- a/lib-src/emacsclient.c
+++ b/lib-src/emacsclient.c
@@ -1117,7 +1117,9 @@ find_tty (const char **tty_type, const char **tty_name, int noabort)
1117 } 1117 }
1118 } 1118 }
1119 1119
1120 if (strcmp (type, "eterm") == 0) 1120 const char *inside_emacs = egetenv ("INSIDE_EMACS");
1121 if (inside_emacs && strstr (inside_emacs, ",term:")
1122 && strprefix ("eterm", type))
1121 { 1123 {
1122 if (noabort) 1124 if (noabort)
1123 return 0; 1125 return 0;
diff --git a/lisp/international/iso-transl.el b/lisp/international/iso-transl.el
index 1af5c64a485..0856b4f6fbc 100644
--- a/lisp/international/iso-transl.el
+++ b/lisp/international/iso-transl.el
@@ -234,18 +234,18 @@ sequence VECTOR. (VECTOR is normally one character long.)")
234;; Language-specific translation lists. 234;; Language-specific translation lists.
235(defvar iso-transl-language-alist 235(defvar iso-transl-language-alist
236 '(("Esperanto" 236 '(("Esperanto"
237 ("C" . [?Æ]) 237 ("C" . [?Ĉ])
238 ("G" . [?Ø]) 238 ("G" . [?Ĝ])
239 ("H" . [?¦]) 239 ("H" . [?Ĥ])
240 ("J" . [?¬]) 240 ("J" . [?Ĵ])
241 ("S" . [?Þ]) 241 ("S" . [?Ŝ])
242 ("U" . [?Ý]) 242 ("U" . [?Ŭ])
243 ("c" . [?æ]) 243 ("c" . [?ĉ])
244 ("g" . [?ø]) 244 ("g" . [?ĝ])
245 ("h" . [?]) 245 ("h" . [?ĥ])
246 ("j" . [?¼]) 246 ("j" . [?ĵ])
247 ("s" . [?þ]) 247 ("s" . [?ŝ])
248 ("u" . [?ý])) 248 ("u" . [?ŭ]))
249 ("French" 249 ("French"
250 ("C" . [?Ç]) 250 ("C" . [?Ç])
251 ("c" . [?ç])) 251 ("c" . [?ç]))
diff --git a/lisp/progmodes/xref.el b/lisp/progmodes/xref.el
index 7bd1668cf4e..c85fe676da2 100644
--- a/lisp/progmodes/xref.el
+++ b/lisp/progmodes/xref.el
@@ -869,7 +869,11 @@ buffer where the user can select from the list."
869;;;###autoload 869;;;###autoload
870(defun xref-find-references (identifier) 870(defun xref-find-references (identifier)
871 "Find references to the identifier at point. 871 "Find references to the identifier at point.
872With prefix argument, prompt for the identifier." 872This command might prompt for the identifier as needed, perhaps
873offering the symbol at point as the default.
874With prefix argument, or if `xref-prompt-for-identifier' is t,
875always prompt for the identifier. If `xref-prompt-for-identifier'
876is nil, prompt only if there's no usable symbol at point."
873 (interactive (list (xref--read-identifier "Find references of: "))) 877 (interactive (list (xref--read-identifier "Find references of: ")))
874 (xref--find-xrefs identifier 'references identifier nil)) 878 (xref--find-xrefs identifier 'references identifier nil))
875 879
diff --git a/lisp/textmodes/flyspell.el b/lisp/textmodes/flyspell.el
index 69bba100922..f6a809b18ee 100644
--- a/lisp/textmodes/flyspell.el
+++ b/lisp/textmodes/flyspell.el
@@ -1424,10 +1424,20 @@ determined by `flyspell-large-region'."
1424The list of incorrect words should be in `flyspell-external-ispell-buffer'. 1424The list of incorrect words should be in `flyspell-external-ispell-buffer'.
1425\(We finish by killing that buffer and setting the variable to nil.) 1425\(We finish by killing that buffer and setting the variable to nil.)
1426The buffer to mark them in is `flyspell-large-region-buffer'." 1426The buffer to mark them in is `flyspell-large-region-buffer'."
1427 (let (words-not-found 1427 (let* (words-not-found
1428 (ispell-otherchars (ispell-get-otherchars)) 1428 (flyspell-casechars (flyspell-get-casechars))
1429 (buffer-scan-pos flyspell-large-region-beg) 1429 (ispell-otherchars (ispell-get-otherchars))
1430 case-fold-search) 1430 (ispell-many-otherchars-p (ispell-get-many-otherchars-p))
1431 (word-chars (concat flyspell-casechars
1432 "+\\("
1433 (if (not (string= "" ispell-otherchars))
1434 (concat ispell-otherchars "?"))
1435 flyspell-casechars
1436 "+\\)"
1437 (if ispell-many-otherchars-p
1438 "*" "?")))
1439 (buffer-scan-pos flyspell-large-region-beg)
1440 case-fold-search)
1431 (with-current-buffer flyspell-external-ispell-buffer 1441 (with-current-buffer flyspell-external-ispell-buffer
1432 (goto-char (point-min)) 1442 (goto-char (point-min))
1433 ;; Loop over incorrect words, in the order they were reported, 1443 ;; Loop over incorrect words, in the order they were reported,
@@ -1457,11 +1467,18 @@ The buffer to mark them in is `flyspell-large-region-buffer'."
1457 ;; Move back into the match 1467 ;; Move back into the match
1458 ;; so flyspell-get-word will find it. 1468 ;; so flyspell-get-word will find it.
1459 (forward-char -1) 1469 (forward-char -1)
1460 (flyspell-get-word))) 1470 ;; Is this a word that matches the
1471 ;; current dictionary?
1472 (if (looking-at word-chars)
1473 (flyspell-get-word))))
1461 (found (car found-list)) 1474 (found (car found-list))
1462 (found-length (length found)) 1475 (found-length (length found))
1463 (misspell-length (length word))) 1476 (misspell-length (length word)))
1464 (when (or 1477 (when (or
1478 ;; Misspelled word is not from the
1479 ;; language supported by the current
1480 ;; dictionary.
1481 (null found)
1465 ;; Size matches, we really found it. 1482 ;; Size matches, we really found it.
1466 (= found-length misspell-length) 1483 (= found-length misspell-length)
1467 ;; Matches as part of a boundary-char separated 1484 ;; Matches as part of a boundary-char separated
@@ -1483,13 +1500,21 @@ The buffer to mark them in is `flyspell-large-region-buffer'."
1483 ;; backslash) and none of the previous 1500 ;; backslash) and none of the previous
1484 ;; conditions match. 1501 ;; conditions match.
1485 (and (not ispell-really-aspell) 1502 (and (not ispell-really-aspell)
1503 (not ispell-really-hunspell)
1504 (not ispell-really-enchant)
1486 (save-excursion 1505 (save-excursion
1487 (goto-char (- (nth 1 found-list) 1)) 1506 (goto-char (- (nth 1 found-list) 1))
1488 (if (looking-at "[\\]" ) 1507 (if (looking-at "[\\]" )
1489 t 1508 t
1490 nil)))) 1509 nil))))
1491 (setq keep nil) 1510 (setq keep nil)
1492 (flyspell-word nil t) 1511 ;; Don't try spell-checking words whose
1512 ;; characters don't match CASECHARS, because
1513 ;; flyspell-word will then consider as
1514 ;; misspelling the preceding word that matches
1515 ;; CASECHARS.
1516 (or (null found)
1517 (flyspell-word nil t))
1493 ;; Search for next misspelled word will begin from 1518 ;; Search for next misspelled word will begin from
1494 ;; end of last validated match. 1519 ;; end of last validated match.
1495 (setq buffer-scan-pos (point)))) 1520 (setq buffer-scan-pos (point))))
diff --git a/src/fontset.c b/src/fontset.c
index 6ca64068717..e72354078ca 100644
--- a/src/fontset.c
+++ b/src/fontset.c
@@ -1442,23 +1442,26 @@ DEFUN ("set-fontset-font", Fset_fontset_font, Sset_fontset_font, 3, 5, 0,
1442 doc: /* 1442 doc: /*
1443Modify fontset NAME to use FONT-SPEC for TARGET characters. 1443Modify fontset NAME to use FONT-SPEC for TARGET characters.
1444 1444
1445NAME is a fontset name string, nil for the fontset of FRAME, or t for 1445NAME is a fontset name (a string), nil for the fontset of FRAME,
1446the default fontset. 1446or t for the default fontset.
1447 1447
1448TARGET may be a single character to use FONT-SPEC for. 1448TARGET may be a single character to use FONT-SPEC for.
1449 1449
1450Target may be a cons (FROM . TO), where FROM and TO are characters. 1450Target may be a cons (FROM . TO), where FROM and TO are characters.
1451In that case, use FONT-SPEC for all characters in the range FROM 1451In that case, use FONT-SPEC for all the characters in the range
1452and TO (inclusive). 1452between FROM and TO (inclusive).
1453 1453
1454TARGET may be a script name symbol. In that case, use FONT-SPEC for 1454TARGET may be a script symbol. In that case, use FONT-SPEC for
1455all characters that belong to the script. 1455all the characters that belong to the script. See the variable
1456`script-representative-chars' for the list of known scripts.
1456 1457
1457TARGET may be a charset. In that case, use FONT-SPEC for all 1458TARGET may be a charset. In that case, use FONT-SPEC for all
1458characters in the charset. 1459the characters in the charset. See `list-character-sets' and
1460`list-charset-chars' for the list of character sets and their
1461characters.
1459 1462
1460TARGET may be nil. In that case, use FONT-SPEC for any characters for 1463TARGET may be nil. In that case, use FONT-SPEC for any character for
1461that no FONT-SPEC is specified. 1464which no font-spec is specified.
1462 1465
1463FONT-SPEC may one of these: 1466FONT-SPEC may one of these:
1464 * A font-spec object made by the function `font-spec' (which see). 1467 * A font-spec object made by the function `font-spec' (which see).
@@ -1468,11 +1471,11 @@ FONT-SPEC may one of these:
1468 * A font name string. 1471 * A font name string.
1469 * nil, which explicitly specifies that there's no font for TARGET. 1472 * nil, which explicitly specifies that there's no font for TARGET.
1470 1473
1471Optional 4th argument FRAME is a frame or nil for the selected frame 1474Optional 4th argument FRAME is a frame, or nil for the selected frame,
1472that is concerned in the case that NAME is nil. 1475to be considered in the case that NAME is nil.
1473 1476
1474Optional 5th argument ADD, if non-nil, specifies how to add FONT-SPEC 1477Optional 5th argument ADD, if non-nil, specifies how to add FONT-SPEC
1475to the font specifications for TARGET previously set. If it is 1478to the previously set font specifications for TARGET. If it is
1476`prepend', FONT-SPEC is prepended. If it is `append', FONT-SPEC is 1479`prepend', FONT-SPEC is prepended. If it is `append', FONT-SPEC is
1477appended. By default, FONT-SPEC overrides the previous settings. */) 1480appended. By default, FONT-SPEC overrides the previous settings. */)
1478 (Lisp_Object name, Lisp_Object target, Lisp_Object font_spec, Lisp_Object frame, Lisp_Object add) 1481 (Lisp_Object name, Lisp_Object target, Lisp_Object font_spec, Lisp_Object frame, Lisp_Object add)