summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac4
-rw-r--r--doc/emacs/abbrevs.texi4
-rw-r--r--doc/emacs/text.texi11
-rw-r--r--lisp/composite.el5
-rw-r--r--lisp/files.el54
-rw-r--r--lisp/gnus/message.el8
-rw-r--r--lisp/pixel-scroll.el20
-rw-r--r--src/font.c23
-rw-r--r--test/lisp/net/tramp-tests.el6
9 files changed, 82 insertions, 53 deletions
diff --git a/configure.ac b/configure.ac
index 469ad00eaaa..b773e3b7f0c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -702,7 +702,9 @@ case "${canonical}" in
## QNX Neutrino
*-nto-qnx* )
opsys=qnxnto
+ test -z "$CC" && CC=qcc
CFLAGS="$CFLAGS -D__NO_EXT_QNX"
+ LDFLAGS="-N2MB $LDFLAGS"
;;
## Intel 386 machines where we don't care about the manufacturer.
@@ -2218,7 +2220,7 @@ test "$CANNOT_DUMP" = yes ||
case "$opsys" in
## darwin ld insists on the use of malloc routines in the System framework.
darwin | mingw32 | nacl | sol2-10) ;;
- cygwin | qnxto | freebsd)
+ cygwin | qnxnto | freebsd)
hybrid_malloc=yes
system_malloc= ;;
*) test "$ac_cv_func_sbrk" = yes && system_malloc=$emacs_cv_sanitize_address;;
diff --git a/doc/emacs/abbrevs.texi b/doc/emacs/abbrevs.texi
index 117d07e2814..5f400a2399a 100644
--- a/doc/emacs/abbrevs.texi
+++ b/doc/emacs/abbrevs.texi
@@ -62,8 +62,8 @@ definition for the current major mode overrides a global definition.
You can define abbrevs interactively during the editing session,
irrespective of whether Abbrev mode is enabled. You can also save
-lists of abbrev definitions in files, which you can the reload for use
-in later sessions.
+lists of abbrev definitions in files, which you can then reload for
+use in later sessions.
@node Defining Abbrevs
@section Defining Abbrevs
diff --git a/doc/emacs/text.texi b/doc/emacs/text.texi
index c5967f8cf65..7aa859d1772 100644
--- a/doc/emacs/text.texi
+++ b/doc/emacs/text.texi
@@ -2814,9 +2814,14 @@ high, the table is 67 characters wide and 16 lines high with 2 columns
and 3 rows, and a total of 5 cells.
@findex table-insert-sequence
- @kbd{M-x table-insert-sequence} inserts a string into each cell.
-Each string is a part of a sequence i.e., a series of increasing
-integer numbers.
+ @kbd{M-x table-insert-sequence} traverses the cells of a table
+inserting a sequence of text strings into each cell as it goes. It
+asks for the base string of the sequence, and then produces the
+sequence by ``incrementing'' the base string, either numerically (if
+the base string ends in numerical characters) or in the
+@acronym{ASCII} order. In addition to the base string, the command
+prompts for the number of elements in the sequence, the increment, the
+cell interval, and the justification of the text in each cell.
@cindex table for HTML and LaTeX
@findex table-generate-source
diff --git a/lisp/composite.el b/lisp/composite.el
index 72b0ffc8f48..7293d7c15cd 100644
--- a/lisp/composite.el
+++ b/lisp/composite.el
@@ -337,8 +337,9 @@ When Automatic Composition mode is on, this function also finds a
chunk of text that is automatically composed. If such a chunk is
found closer to POS than the position that has `composition'
property, the value is a list of FROM, TO, and a glyph-string
-that specifies how the chunk is to be composed. See the function
-`composition-get-gstring' for the format of the glyph-string."
+that specifies how the chunk is to be composed; DETAIL-P is
+inored in this case. See the function `composition-get-gstring'
+for the format of the glyph-string."
(let ((result (find-composition-internal pos limit string detail-p)))
(if (and detail-p (> (length result) 3) (nth 2 result) (not (nth 3 result)))
;; This is a valid rule-base composition.
diff --git a/lisp/files.el b/lisp/files.el
index 25746094d2a..a5a268195f5 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -4653,25 +4653,41 @@ The function `find-backup-file-name' also uses this."
;; "/drive_x".
(or (file-name-absolute-p file)
(setq file (expand-file-name file))) ; make defaults explicit
- ;; Replace any invalid file-name characters (for the
- ;; case of backing up remote files).
- (setq file (expand-file-name (convert-standard-filename file)))
- (if (eq (aref file 1) ?:)
- (setq file (concat "/"
- "drive_"
- (char-to-string (downcase (aref file 0)))
- (if (eq (aref file 2) ?/)
- ""
- "/")
- (substring file 2)))))
- ;; Make the name unique by substituting directory
- ;; separators. It may not really be worth bothering about
- ;; doubling `!'s in the original name...
- (expand-file-name
- (subst-char-in-string
- ?/ ?!
- (replace-regexp-in-string "!" "!!" file))
- backup-directory))
+ (cond
+ ((file-remote-p file)
+ ;; Remove the leading slash, if any, to prevent
+ ;; expand-file-name from adding a drive letter.
+ (and (memq (aref file 0) '(?/ ?\\))
+ (setq file (substring file 1)))
+ ;; Replace any invalid file-name characters.
+ (setq file (convert-standard-filename file))
+ ;; Replace slashes to make the file name unique, and
+ ;; prepend backup-directory.
+ (expand-file-name
+ (subst-char-in-string
+ ?/ ?!
+ (replace-regexp-in-string "!" "!!"
+ (concat "/" file)))
+ backup-directory))
+ (t
+ ;; Replace any invalid file-name characters.
+ (setq file (expand-file-name (convert-standard-filename file)))
+ (if (eq (aref file 1) ?:)
+ (setq file (concat "/"
+ "drive_"
+ (char-to-string (downcase (aref file 0)))
+ (if (eq (aref file 2) ?/)
+ ""
+ "/")
+ (substring file 2))))
+ ;; Make the name unique by substituting directory
+ ;; separators. It may not really be worth bothering about
+ ;; doubling `!'s in the original name...
+ (expand-file-name
+ (subst-char-in-string
+ ?/ ?!
+ (replace-regexp-in-string "!" "!!" file))
+ backup-directory)))))
(expand-file-name (file-name-nondirectory file)
(file-name-as-directory abs-backup-directory))))))
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el
index 8e3d299ee80..0f99cb697dc 100644
--- a/lisp/gnus/message.el
+++ b/lisp/gnus/message.el
@@ -1433,7 +1433,7 @@ starting with `not' and followed by regexps."
(:foreground "MidnightBlue" :bold t))
(t
(:bold t :italic t)))
- "Face used for displaying From headers."
+ "Face used for displaying To headers."
:group 'message-faces)
;; backward-compatibility alias
(put 'message-header-to-face 'face-alias 'message-header-to)
@@ -1463,7 +1463,7 @@ starting with `not' and followed by regexps."
(:foreground "navy blue" :bold t))
(t
(:bold t)))
- "Face used for displaying subject headers."
+ "Face used for displaying Subject headers."
:group 'message-faces)
;; backward-compatibility alias
(put 'message-header-subject-face 'face-alias 'message-header-subject)
@@ -1478,7 +1478,7 @@ starting with `not' and followed by regexps."
(:foreground "blue4" :bold t :italic t))
(t
(:bold t :italic t)))
- "Face used for displaying newsgroups headers."
+ "Face used for displaying Newsgroups headers."
:group 'message-faces)
;; backward-compatibility alias
(put 'message-header-newsgroups-face 'face-alias 'message-header-newsgroups)
@@ -1493,7 +1493,7 @@ starting with `not' and followed by regexps."
(:foreground "steel blue"))
(t
(:bold t :italic t)))
- "Face used for displaying newsgroups headers."
+ "Face used for displaying other headers."
:group 'message-faces)
;; backward-compatibility alias
(put 'message-header-other-face 'face-alias 'message-header-other)
diff --git a/lisp/pixel-scroll.el b/lisp/pixel-scroll.el
index 9bfe5c91f57..f64a4392b49 100644
--- a/lisp/pixel-scroll.el
+++ b/lisp/pixel-scroll.el
@@ -110,11 +110,11 @@ This is an alternative of `scroll-up'. Scope moves downward."
pixel-resolution-fine-flag
(frame-char-height))
(pixel-line-height))))
- (if (pixel-eob-at-top-p) ; when end-of-the-buffer is close
- (scroll-up 1) ; relay on robust method
- (while (pixel-point-at-top-p amt) ; prevent too late (multi tries)
- (vertical-motion 1)) ; move point downward
- (pixel-scroll-pixel-up amt))))) ; move scope downward
+ (while (pixel-point-at-top-p amt) ; prevent too late (multi tries)
+ (vertical-motion 1)) ; move point downward
+ (if (pixel-eob-at-top-p) ; when end-of-the-buffer is close
+ (scroll-up 1) ; relay on robust method
+ (pixel-scroll-pixel-up amt))))) ; move scope downward
(defun pixel-scroll-down (&optional arg)
"Scroll text of selected window down ARG lines.
@@ -127,11 +127,11 @@ This is and alternative of `scroll-down'. Scope moves upward."
pixel-resolution-fine-flag
(frame-char-height))
(pixel-line-height -1))))
- (if (or (pixel-bob-at-top-p amt) ; when beginning-of-the-buffer is seen
- (pixel-eob-at-top-p)) ; for file with a long line
- (scroll-down 1) ; relay on robust method
- (while (pixel-point-at-bottom-p amt) ; prevent too late (multi tries)
- (vertical-motion -1))
+ (while (pixel-point-at-bottom-p amt) ; prevent too late (multi tries)
+ (vertical-motion -1)) ; move point upward
+ (if (or (pixel-bob-at-top-p amt) ; when beginning-of-the-buffer is seen
+ (pixel-eob-at-top-p)) ; for file with a long line
+ (scroll-down 1) ; relay on robust method
(pixel-scroll-pixel-down amt)))))
(defun pixel-bob-at-top-p (amt)
diff --git a/src/font.c b/src/font.c
index f7cebdce78c..441652b0951 100644
--- a/src/font.c
+++ b/src/font.c
@@ -3794,19 +3794,26 @@ font_range (ptrdiff_t pos, ptrdiff_t pos_byte, ptrdiff_t *limit,
int c;
Lisp_Object font_object = Qnil;
- if (NILP (string))
+ if (!face)
{
- if (! face)
+ struct frame *f = XFRAME (w->frame);
+ int face_id;
+
+ if (NILP (string))
+ face_id = face_at_buffer_position (w, pos, &ignore, *limit,
+ false, -1);
+ else
{
- int face_id;
+ face_id =
+ NILP (Vface_remapping_alist)
+ ? DEFAULT_FACE_ID
+ : lookup_basic_face (f, DEFAULT_FACE_ID);
- face_id = face_at_buffer_position (w, pos, &ignore,
- *limit, false, -1);
- face = FACE_FROM_ID (XFRAME (w->frame), face_id);
+ face_id = face_at_string_position (w, string, pos, 0, &ignore,
+ face_id, false);
}
+ face = FACE_FROM_ID (f, face_id);
}
- else
- eassert (face);
while (pos < *limit)
{
diff --git a/test/lisp/net/tramp-tests.el b/test/lisp/net/tramp-tests.el
index 044ab9329ff..5699ab4b237 100644
--- a/test/lisp/net/tramp-tests.el
+++ b/test/lisp/net/tramp-tests.el
@@ -4624,15 +4624,13 @@ process sentinels. They shall not disturb each other."
(ignore-errors (cancel-timer timer))
(ignore-errors (delete-directory tmp-name 'recursive)))))))
+;; This test is inspired by Bug#29163.
(ert-deftest tramp-test42-auto-load ()
"Check that Tramp autoloads properly."
- (skip-unless (tramp--test-enabled))
- (skip-unless (not (tramp--test-mock-p)))
-
(let ((default-directory (expand-file-name temporary-file-directory))
(code
(format
- "(message \"Tramp loaded: %%s\" (consp (file-attributes %S)))"
+ "(message \"Tramp loaded: %%s\" (and (file-remote-p %S) t))"
tramp-test-temporary-file-directory)))
(should
(string-match