Add fix for last two patches by patch utf8-names-fix-boo1135326.patch

OBS-URL: https://build.opensuse.org/package/show/editors/emacs-auctex?expand=0&rev=42
This commit is contained in:
Dr. Werner Fink 2019-06-21 13:12:23 +00:00 committed by Git OBS Bridge
parent 7170e304ba
commit 5a1e257cac
3 changed files with 121 additions and 2 deletions

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Fri Jun 21 13:08:00 UTC 2019 - Dr. Werner Fink <werner@suse.de>
- Fix the two last upstream commits by adding patch
utf8-names-fix-boo1135326.patch which is kind of a backport for
bug boo#1135326
-------------------------------------------------------------------
Wed Jul 25 08:47:45 UTC 2018 - werner@suse.de

View File

@ -1,7 +1,7 @@
#
# spec file for package emacs-auctex
#
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -12,7 +12,7 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
@ -47,6 +47,7 @@ Url: http://www.gnu.org/software/auctex
Patch0: dvips.patch
Patch10: utf8-names-3b1ffcd8.patch
Patch11: utf8-names-a8ea1273.patch
Patch12: utf8-names-fix-boo1135326.patch
BuildArch: noarch
%description
@ -71,6 +72,7 @@ you cannot use this package for XEmacs.
%patch0
%patch10
%patch11
%patch12
%build
unset ${!LC_*}

View File

@ -0,0 +1,110 @@
--- tex-buf.el
+++ tex-buf.el 2019-06-21 13:02:03.572805297 +0000
@@ -555,7 +555,6 @@ without further expansion."
pos ;;FIXME: Should this be dynamically scoped?
entry TeX-command-text TeX-command-pos
(orig-file file)
- (file #'TeX--master-or-region-file-with-extra-quotes)
expansion-res case-fold-search string expansion arguments)
(setq list (cons
(list "%%" (lambda nil
@@ -563,6 +562,17 @@ without further expansion."
"%"))
(or list (TeX-expand-list)))
pat (regexp-opt (mapcar #'car list)))
+ ;; `TeX-command-expand' is called with `file' argument being one
+ ;; of `TeX-master-file', `TeX-region-file' and
+ ;; `TeX-active-master'. The return value of these functions
+ ;; sometimes needs suitable "decorations" for an argument for
+ ;; underlying shell or latex executable, or both, when the
+ ;; relavant file name involves some special characters such as
+ ;; space and multibyte characters. Hence embed that function in a
+ ;; template prepared for that purpose.
+ (setq file (apply-partially
+ #'TeX--master-or-region-file-with-extra-quotes
+ file))
(while (setq pos (string-match pat command pos))
(setq string (match-string 0 command)
entry (assoc string list)
@@ -594,24 +604,29 @@ without further expansion."
command)
(defun TeX--master-or-region-file-with-extra-quotes
- (&optional extension nondirectory ask extra)
+ (file-fn &optional extension nondirectory ask extra)
"Return file name with quote for shell.
-Wrapper for `TeX-master-file' or `TeX-region-file' to be used in
-`TeX-command-expand'.
-It is assumed that `orig-file' has dynamic binding of the value of
-`TeX-master-file' or `TeX-region-file'. Pass EXTENSION, NONDIRECTORY
-and ASK to that function as-is, and arrange the returned file name for
-use with command shell.
-Enclose the file name with space within quotes `\"' first when
-\" \\input\" is supplemented (indicated by dynamically binded
-variable `TeX-command-text' having string value.)
-Enclose the file name within \\detokenize{} when the following three
+Helper function of `TeX-command-expand'.
+
+This is a kind of template. How to use:
+Fix, by `apply-partially', the first argument FILE-FN as one of
+the three functions `TeX-master-file', `TeX-region-file' or
+`TeX-active-master'. Then the result is just a wrapper for that
+function suitable in `TeX-command-expand'.
+
+As a wrapper described above, it passes EXTENSION, NONDIRECTORY
+and ASK to the \"bare\" function as-is, and arranges the returned
+file name for use with command shell. I.e. it encloses the file
+name with space within quotes `\"' first when \" \\input\" is
+supplemented (indicated by dynamically binded variable
+`TeX-command-text' having string value.) It also encloses the
+file name within \\detokenize{} when the following three
conditions are met:
1. compiling with standard (pdf)LaTeX or upLaTeX
2. \" \\input\" is supplemented
3. EXTRA is non-nil. (default when expanding \"%T\")"
(shell-quote-argument
- (let* ((raw (funcall orig-file extension nondirectory ask))
+ (let* ((raw (funcall file-fn extension nondirectory ask))
;; String `TeX-command-text' means that the file name is
;; given through \input command.
(quote-for-space (if (and (stringp TeX-command-text)
@@ -2031,14 +2046,22 @@ command."
(with-current-buffer TeX-command-buffer
(TeX-process-buffer (TeX-active-master)))))
-(defun TeX-active-master (&optional extension nondirectory)
+(defun TeX-active-master (&optional extension nondirectory _ignore)
"The master file currently being compiled.
If optional argument EXTENSION is non-nil, add that file extension to
the name. Special value t means use `TeX-default-extension'.
If optional second argument NONDIRECTORY is non-nil, do not include
-the directory."
+the directory.
+
+The compatibility argument IGNORE is ignored."
+ ;; The third argument `_ignore' is kept for symmetry with
+ ;; `TeX-master-file's third argument `ask'. For example, it's used
+ ;; in `TeX--master-or-region-file-with-extra-quotes', where we don't
+ ;; know which function has to be called. Keep this in mind should
+ ;; you want to use another argument here.
+ ;; See also the similar comment in `TeX-region-file'.
(if TeX-current-process-region-p
(TeX-region-file extension nondirectory)
(TeX-master-file extension nondirectory)))
--- tex.el
+++ tex.el 2019-06-21 12:58:20.442057420 +0000
@@ -545,7 +545,11 @@ string."
(setq pos (+ pos (length TeX-command-text) 9))
(concat TeX-command-text " \"\\input\""))
"")))
- ("%T" TeX--master-or-region-file-with-extra-quotes t t nil t)
+ ;; The fourth argument of t is actually for wrapper function
+ ;; provided by `TeX--master-or-region-file-with-extra-quotes'.
+ ;; See its doc string as well as the comments in
+ ;; `TeX-command-expand'.
+ ("%T" file t t nil t)
("%n" TeX-current-line)
("%d" file "dvi" t)
("%f" file "ps" t)