master 44879847: Adjust ConTeXt options (bug#70399)
branch: master commit 44879847609f0ac14a18841a363012e5e979b8ca Author: Ikumi Keita Commit: Ikumi Keita Adjust ConTeXt options (bug#70399) * tex.el (TeX-command-list): Remove obsolete option "--texutil". * context.el (ConTeXt-expand-options): Use "repeat" for synctex option for the latest ConTeXt. Don't add nonstop option when synctex option exists. * doc/changes.texi: Mention the above changes. --- context.el | 9 +++-- doc/changes.texi | 14 ++ tex.el | 2 +- 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/context.el b/context.el index 29bbccd6..0d5b9adb 100644 --- a/context.el +++ b/context.el @@ -1747,8 +1747,13 @@ Use `ConTeXt-Mark-version' to choose the command." ((string= ConTeXt-Mark-version "IV") (concat (if TeX-source-correlate-mode - "--synctex=1 ") - (unless TeX-interactive-mode + "--synctex=repeat ") + ;; Omit nonstop option when we set synctex option. According to + ;; Jim in bug#70399 report, + ;; "if context is called with "--nonstopmode" (or "--nonstop") + ;; the "--synctex=..." request to create a synctex file is + ;; over-ridden." + (unless (or TeX-interactive-mode TeX-source-correlate-mode) ConTeXt-texexec-option-nonstop))) ;; In any other case fall back on Mark II. (t diff --git a/doc/changes.texi b/doc/changes.texi index 098195ac..cae91aa2 100644 --- a/doc/changes.texi +++ b/doc/changes.texi @@ -187,6 +187,20 @@ In Fold mode, the original source text is revealed when you click the folded portion by mouse. You can customize the detailed behavior by new customize option @code{TeX-fold-auto-reveal}. +@item +@AUCTeX{} adjusts @ConTeXt{} option. +@itemize @minus +@item +Obsolete option @option{--texutil} was removed. +@item +Now synctex option is @option{--synctex=repeat} instead of +@option{--synctex=1} for @ConTeXt{}. +@item +@AUCTeX{} omits @option{--nonstop} option when +@code{TeX-source-correlate-mode} is enabled because @command{context} +ignores @option{--synctex} option if @option{--nonstop} is present. +@end itemize + @item @AUCTeX{} now requires GNU Emacs 27.1 or higher. @end itemize diff --git a/tex.el b/tex.el index 2ab35875..985cb71e 100644 --- a/tex.el +++ b/tex.el @@ -211,7 +211,7 @@ If nil, none is specified." TeX-run-TeX nil (AmSTeX-mode) :help "Run AMSTeX") ;; support for ConTeXt --pg ;; first version of ConTeXt to support nonstopmode: 2003.2.10 -("ConTeXt" "%(cntxcom) --once --texutil %(extraopts) %(execopts)%t" +("ConTeXt" "%(cntxcom) --once %(extraopts) %(execopts)%t" TeX-run-TeX nil (ConTeXt-mode) :help "Run ConTeXt once") ("ConTeXt Full" "%(cntxcom) %(extraopts) %(execopts)%t" TeX-run-TeX nil
master 195bceed: Supplement documentation
branch: master commit 195bceed828c7a16bed9c63a2db08ec1667a8264 Author: Ikumi Keita Commit: Ikumi Keita Supplement documentation * doc/preview-latex.texi (The Emacs interface): * preview.el.in (preview-leave-open-previews-visible): Adjust and enhance the explanation of the new customize option. --- doc/preview-latex.texi | 7 ++- preview.el.in | 8 +++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/doc/preview-latex.texi b/doc/preview-latex.texi index 0c1fb730..0bce9747 100644 --- a/doc/preview-latex.texi +++ b/doc/preview-latex.texi @@ -674,7 +674,12 @@ current point should be temporarily opened. Default value is @code{nil}. @item preview-leave-open-previews-visible This boolean variable determines whether to leave preview images visible -(above their generating TeX code) when they are opened. +when they are opened. + +There is a side effect in enabling this option. The preview image doesn't +turn into construction sign temporarily when you edit the underlying +@LaTeX{} code and regenerate the preview; it is just replaced by updated +image when ready. This behavior suppresses flicker in the appearance. @end vtable diff --git a/preview.el.in b/preview.el.in index 1f65f728..a2c0235d 100644 --- a/preview.el.in +++ b/preview.el.in @@ -1213,7 +1213,13 @@ is located." (defcustom preview-leave-open-previews-visible nil "Whether to leave previews visible when they are opened. If nil, then the TeX preview icon is used when the preview is opened. -If non-nil, then the preview image is moved above the text." +If non-nil, then the preview image remains visible. In either case, the +TeX code appears either below or to the right of the displayed graphic. + +If you enable this option, the preview image doesn't turn into +construction sign temporarily when you edit the underlying LaTeX code +and regenerate the preview; it is just replaced by updated image when +ready. This behavior suppresses flicker in the appearance." :group 'preview-appearance :type 'boolean)
Re: [can't compile the main branch]
Hi Uwe, >>>>> Uwe Brauer writes: > Thanks I applied the patch and run make EMACSBIN=/opt/emacs29/bin/emacs > Result: > fatal: not a git repository (or any of the parent directories): .git > sed -e 's|@lisppackagelispdir@|(file-name-directory load-file-name)|'\ > -e 's|@lisppackagedatadir@|(file-name-directory load-file-name)|'\ > -e 's|@lispautodir@|(if (file-writable-p "/usr/local/var/auctex") > "/usr/local/var/auctex" "~/.emacs.d/auctex")|'\ > -e 's|@AUCTEXVERSION@|14.0.4.2024-04-24_08:10:19|'\ > -e 's|@AUCTEXDATE@|2024-04-24_08:10:19|'\ > tex-site.el.in >tex-site.el > make: *** No rule to make target 'ChangeLog', needed by 'doc/version.texi'. > Stop. > Sorry, still does not work The GNUmakefile uses perl script build-aux/gitlog-to-auctexlog to generate Changelog, and that script calls git internally. Thus Changelog isn't generated without running git binary. Hence either 1) Uwe installs git 2) AUCTeX implements fallback in build-aux/gitlog-to-auctexlog is necessary to have Changelog. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: [can't compile the main branch]
>>>>> Uwe Brauer writes: >>>> "SM" == Stefan Monnier writes: >>> Hence either >>> 1) Uwe installs git >> He does have Git installed. He's just working in a directory that's not >> under Git's control. > That is correct. I prefer to clone the auctex devel repo with mercurial, > since I am much more acquainted with mercurial, and therefore it is > easier for me to make a new branch for testing, than it is with git. I'm sorry, I was wrong about it. Uwe uses hg-git and the local repository doesn't contain .git directory. I don't remember well what hg-git does, but isn't there the "real" .git direcotry in the .hg directory? In other words, I suspect the directory structure is repo-dir -+- .hg -+- .git | | +- bib-cite.el +- FILES_FOR_MERCURIAL_REPO +- ... +- ... If this is correct, making symbolic link by ln -s .hg/.git . might be another mean to make gitlog-to-auctexlog work. > I tried out also the repository that I cloned with git and encounter > other problems, since my Emacs-repository-version is > "7bf17ceee8c2d347917541e143ce25609e90ebbb" > Even though emacs-version tells me 29.0.50 > And therefore too old. This is another problem. I suggest to use master branch and stay away from main branch until Uwe can use emacs 29.1 or newer. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: [can't compile the main branch]
Hi all, Hmm, build-aux/gitlog-to-auctexlog is not a perl script, actually is a Bourne shell script. I was looking at gitlog-to-changelog 😵 >>>>> Arash Esbati writes: > Hmm, build-aux/gitlog-to-auctexlog contains[1]: > # If this is not a Git repository, just generate an empty ChangeLog. > test -d .git || { >> "$output" > exit > } > Maybe Uwe has a .git directory in his setup, but it isn't a real .git > directory as Git would expect? It seems that the script bails out before reaching that line, here: new_origin=`git log --pretty=format:%H 'HEAD^!'` || exit ^^^ Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: [can't compile the main branch]
>>>>> Uwe Brauer writes: > So I am confused now, shall I try out to make a symbolic link or not? You can try either way. Try one of the symblic link or this patch: diff --git a/build-aux/gitlog-to-auctexlog b/build-aux/gitlog-to-auctexlog index 808597d5..944d90ff 100755 --- a/build-aux/gitlog-to-auctexlog +++ b/build-aux/gitlog-to-auctexlog @@ -60,6 +60,12 @@ fi gen_origin=$2 } +# If this is not a Git repository, just generate an empty ChangeLog. +test -d .git || { + >"$output" + exit +} + # Get the new value for gen_origin from the latest version in the repository. new_origin=`git log --pretty=format:%H 'HEAD^!'` || exit @@ -68,12 +74,6 @@ if [ -f "$output" ]; then rm -f "$output" || exit 1 fi -# If this is not a Git repository, just generate an empty ChangeLog. -test -d .git || { - >"$output" - exit -} - # Use Gnulib's packaged ChangeLog generator. # Maybe we should skip all "Merge branch 'master'" messages. ./build-aux/gitlog-to-changelog \ Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
master 36590b04: Fix preview bug involving long common suffixes
branch: master commit 36590b044f86a546b1a0b21e89e301ed29408be4 Author: Paul Nelson Commit: Ikumi Keita Fix preview bug involving long common suffixes * preview.el.in (preview-parse-messages): Fix it. --- preview.el.in | 8 1 file changed, 8 insertions(+) diff --git a/preview.el.in b/preview.el.in index a2c0235d..12500011 100644 --- a/preview.el.in +++ b/preview.el.in @@ -3340,6 +3340,7 @@ call, and in its CDR the final stuff for the placement hook." (let (TeX-error-file TeX-error-offset snippet box counters file line (lsnippet 0) lstart (lfile "") lline lbuffer lpoint + lpos lcounters string after-string offset @@ -3610,6 +3611,12 @@ name(\\([^)]+\\))\\)\\|\ (car preview-current-region)) (goto-char (car preview-current-region))) + ;; Make sure that we don't accidentally match + ;; something earlier in the search that follows. + (and (eq (current-buffer) lbuffer) + (= lline line) + (goto-char (max (point) (- (1+ lpos) (length string) + (cond ((search-forward (concat string after-string) (line-end-position) t) @@ -3645,6 +3652,7 @@ name(\\([^)]+\\))\\)\\|\ string (line-end-position) t (setq lline line + lpos (point) lbuffer (current-buffer)) (if box (progn
master 0e315c7f: Support indirect buffer
branch: master commit 0e315c7fbeed081addf369fd42e7206d83580bc5 Author: Vangelis Evangelou Commit: Ikumi Keita Support indirect buffer * tex.el (TeX-buffer-file-name): New wrapper function for `buffer-file-name'. It returns base buffer's file name in indirect buffer. (TeX-master-file, TeX-normal-mode): Wrap the body in `with-current-buffer' in case called in indirect buffer. Omit an unused return value in `save-excursion' form. (TeX-master-directory): Omit redundant optional argument for `expand-file-name'. * bib-cite.el: * latex.el: * preview.el.in: * style/catchfilebetweentags.el: * style/pdfsync.el: * tex-info.el: * tex.el: * toolbar-x.el: Replace call to `buffer-file-name' and reference to `buffer-file-name' with call to `TeX-buffer-file-name' (or equivalent form). Copyright-paperwork-exempt: yes --- bib-cite.el | 2 +- doc/changes.texi | 12 +++ latex.el | 4 +- preview.el.in | 8 +- style/catchfilebetweentags.el | 2 +- style/pdfsync.el | 2 +- tex-info.el | 2 +- tex.el| 223 ++ toolbar-x.el | 6 +- 9 files changed, 142 insertions(+), 119 deletions(-) diff --git a/bib-cite.el b/bib-cite.el index 5a7de98f..7b425cac 100644 --- a/bib-cite.el +++ b/bib-cite.el @@ -1903,7 +1903,7 @@ If no master file, then return current default." ;; rather than\input file (re-search-forward "^[ \t]*\\(include\\|input\\){" nil t - (buffer-file-name)) + (TeX-buffer-file-name)) (t nil (cond diff --git a/doc/changes.texi b/doc/changes.texi index cae91aa2..0d57a654 100644 --- a/doc/changes.texi +++ b/doc/changes.texi @@ -11,6 +11,18 @@ @heading News in 14.1 @itemize @bullet +@item +@AUCTeX{} can be used with indirect buffers cloned from buffers visiting a +file. This feature allows having different perspectives of the same +buffer (narrowing, folding, previewing, etc). The indirect buffer has the +same master file as its base buffer. + +In indirect buffer, @previewlatex{} works naturally for region preview +such as @code{preview-region} (@kbd{C-c C-p C-r}), but document preview +@code{preview-document} (@kbd{C-c C-p C-d}) puts preview images in the +base buffer, not in the indirect buffer itself. We expect this behavior +doesn't matter because of the users' intent. + @item @AUCTeX{} changes major mode names. Its primary purpose is to avoid conflicts with Emacs built-in @TeX{} major modes. It also improves diff --git a/latex.el b/latex.el index c5965b05..9e769e97 100644 --- a/latex.el +++ b/latex.el @@ -2569,7 +2569,7 @@ string." Initial input is the name of the file being visited in the current buffer, with extension. If OPTIONAL is non-nil, insert it as an optional argument. Use PROMPT as the prompt string." - (let ((name (file-name-nondirectory buffer-file-name))) + (let ((name (file-name-nondirectory (TeX-buffer-file-name (TeX-argument-insert (TeX-read-string (TeX-argument-prompt optional @@ -2590,7 +2590,7 @@ current buffer, without extension. If OPTIONAL is non-nil, insert it as an optional argument. Use PROMPT as the prompt string." (let ((name (file-name-sans-extension - (file-name-nondirectory buffer-file-name + (file-name-nondirectory (TeX-buffer-file-name) (TeX-argument-insert (TeX-read-string (TeX-argument-prompt optional diff --git a/preview.el.in b/preview.el.in index 12500011..7b59a3de 100644 --- a/preview.el.in +++ b/preview.el.in @@ -3079,8 +3079,8 @@ pp") #'desktop-buffer-preview-misc-data) (add-hook 'pre-command-hook #'preview-mark-point nil t) (add-hook 'post-command-hook #'preview-move-point nil t) - (when buffer-file-name -(let* ((filename (expand-file-name buffer-file-name)) + (when (TeX-buffer-file-name) +(let* ((filename (expand-file-name (TeX-buffer-file-name))) format-cons) (when (string-match (concat "\\." TeX-default-extension "\\'") filename) @@ -4128,8 +4128,8 @@ The function bound to this variable will be called inside (if preview-preprocess-function (funcall preview-preprocess-function str) str)) - (if buffer-file-name - (file-name-nondirectory buffer-file-name) + (if (TeX-buffer-file-name) + (file-name-nondirectory (TeX-buffer-file-name)) "")
Re: [can't compile the main branch]
Hi all, >>>>> Stefan Monnier writes: >> And I like the way the manual is formatted. Compare this: >> https://www.gnu.org/software/auctex/manual/auctex.html >> with this: >> https://elpa.gnu.org/devel/doc/auctex.html > Hmm... nice. FWIW, the elpa rendering is the same as that of > https://www.gnu.org/software/emacs/manual/html_node/emacs/index.html > not sure why https://www.gnu.org/software/auctex/manual/auctex.html is > not as nice. The reason must be that the traditional AUCTeX html manuals are generated with texi2html, not makeinfo. A while ago, I noticed that the preview-latex html manual lacks its contents in the FAQ section[1] and am preparing to propose the attached change to use makeinfo rather than texi2html, so that others can test it. But it seems it's no longer necessary :-) [1] all nodes below https://www.gnu.org/software/auctex/manual/preview-latex/Frequently-Asked-Questions.html Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW >From 37a225843d9995b308a36942f3d38fdfbaec9a46 Mon Sep 17 00:00:00 2001 From: Ikumi Keita Date: Thu, 18 Apr 2024 22:18:24 +0900 Subject: [PATCH] Immigrate from texi2html to makeinfo * gendocs.sh.patch: New file. Copy from gendocspatch branch and arrange for use with makeinfo. * Makefile.in (www-doc): Arrange options for gendocs.sh for makeinfo. Change URL to retrieve gendocs.sh.patch from master branch. --- Makefile.in | 12 - gendocs.sh.patch | 67 2 files changed, 73 insertions(+), 6 deletions(-) create mode 100644 gendocs.sh.patch diff --git a/Makefile.in b/Makefile.in index bc2ea951..c2c8bf83 100644 --- a/Makefile.in +++ b/Makefile.in @@ -605,17 +605,17 @@ www-doc: check-tag $(CP) auctex-$(TAG)/doc/*.texi $(WWWDIR)/manual cd $(WWWDIR)/manual \ && wget -O gendocs.sh 'https://cvs.savannah.gnu.org/viewvc/%2acheckout%2a/texinfo/texinfo/util/gendocs.sh' \ - && wget -O gendocs.sh.patch 'https://git.savannah.gnu.org/gitweb/?p=auctex.git;a=blob_plain;f=gendocs.sh.patch;hb=gendocspatch' \ + && wget -O gendocs.sh.patch 'https://git.savannah.gnu.org/gitweb/?p=auctex.git;a=blob_plain;f=gendocs.sh.patch;hb=master' \ && patch https://cvs.savannah.gnu.org/viewvc/%2acheckout%2a/texinfo/texinfo/util/gendocs_template' \ && sed -i -e 's/html_node\/index\.html/%%PACKAGE%%\/index.html/' gendocs_template \ && mkdir .texinfo \ - && echo -e "emacs split https://www.gnu.org/software/emacs/manual/html_node/emacs/\nemacs mono https://www.gnu.org/software/emacs/manual/html_mono/emacs.html\nreftex split https://www.gnu.org/software/auctex/manual/reftex/\nreftex mono https://www.gnu.org/software/auctex/manual/reftex.html\n"; > .texinfo/htmlxref.cnf \ - && ./gendocs.sh --email bug-auc...@gnu.org --texi2html \ - --html --use-nodes auctex "AUCTeX Manual" \ - && ./gendocs.sh --email bug-auc...@gnu.org --texi2html \ - --html --use-nodes preview-latex "preview-latex Manual" + && echo -e "emacs node https://www.gnu.org/software/emacs/manual/html_node/emacs/\nemacs mono https://www.gnu.org/software/emacs/manual/html_mono/emacs.html\nreftex node https://www.gnu.org/software/auctex/manual/reftex/\nreftex mono https://www.gnu.org/software/auctex/manual/reftex.html\n"; > .texinfo/htmlxref.cnf \ + && ./gendocs.sh --email bug-auc...@gnu.org \ + auctex "AUCTeX Manual" \ + && ./gendocs.sh --email bug-auc...@gnu.org \ + preview-latex "preview-latex Manual" preview-ball: check-tag test ! -d $(PREVIEW_BUILD_DIR) || rm -r $(PREVIEW_BUILD_DIR) diff --git a/gendocs.sh.patch b/gendocs.sh.patch new file mode 100644 index ..3c3967ce --- /dev/null +++ b/gendocs.sh.patch @@ -0,0 +1,67 @@ +--- gendocs.sh.orig 2014-10-29 14:25:47.404620794 +0100 gendocs.sh 2014-10-29 14:35:45.812600075 +0100 +@@ -320,9 +320,9 @@ + tar -czf "$abs_outdir/${PACKAGE}.html_$1.tar.gz" -- *.html + ) + eval html_$1_tgz_size=`calcsize "$outdir/${PACKAGE}.html_$1.tar.gz"` +- rm -f "$outdir"/html_$1/*.html +- mkdir -p "$outdir/html_$1/" +- mv ${split_html_dir}/*.html "$outdir/html_$1/" ++ rm -f "$outdir"/${PACKAGE}/*.html ++ mkdir -p "$outdir/${PACKAGE}/" ++ mv ${split_html_dir}/*.html "$outdir/${PACKAGE}/" + rmdir ${split_html_dir} + } + +@@ -351,9 +351,9 @@ + ) + eval \ + html_${split}_tgz_size=`calcsize "$outdir/$PACKAGE.html_$split.tar.gz"` +- rm -rf "$outdir/html_$split/" +- mv $split_html_dir "$outdir/html_$split/" +- du -s "$outdir/html_$split/" ++ rm -rf "$outdir/${PACKAGE}/" ++ mv $split_html_dir "$outdir/${PACKAGE}/" ++ du -s "$outdir/${PA
master 255da611: Add function TeX-master-output-file
branch: master commit 255da61131a20b1f72ce656bec5d4cf8ccf0f0ac Author: Paul Nelson Commit: Ikumi Keita Add function TeX-master-output-file * tex.el (TeX-master-output-file): New function. --- tex.el | 10 ++ 1 file changed, 10 insertions(+) diff --git a/tex.el b/tex.el index 9fb533ff..d2864b5f 100644 --- a/tex.el +++ b/tex.el @@ -2608,6 +2608,16 @@ ARGNAME is prepended to the quoted output directory. If (concat argname "\"" out-dir "\"") ""))) +(defun TeX-master-output-file (extension) + "Return the output file with given EXTENSION. +If `TeX-output-dir' is nil, then defer to `TeX-master-file'. Otherwise, +return the file of the same name, but in the build directory specified by +`TeX-output-dir'." + (let ((master (TeX-master-file extension))) +(if-let ((output-dir (TeX--master-output-dir (TeX-master-directory) t))) +(concat output-dir (file-name-nondirectory master)) + master))) + (defcustom TeX-style-local "style" "Directory containing hand generated TeX information.
main 56b5dab1: Recover compatibility with non-GNU sed
branch: main commit 56b5dab16630ea31dbcec239f10b04a3748c5408 Author: Ikumi Keita Commit: Ikumi Keita Recover compatibility with non-GNU sed * GNUmakefile (LASTVERSION): Avoid syntax invalid for non-GNU sed. --- GNUmakefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/GNUmakefile b/GNUmakefile index 507d69fd..4f90cd07 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -101,7 +101,8 @@ AUCTEXDATE:=$(shell (git log -n1 --pretty=tformat:"%ci" 2>/dev/null \ THISVERSION:=$(shell git show HEAD -- auctex.el 2>/dev/null \ | sed -nre 's/[+];; Version: ([0-9]+.[0-9]+.[0-9]+)/\1/p') # Extract the last released version number from `auctex.el`. -LASTVERSION:=$(shell sed -nre '/Version:/{s/;; Version: ([0-9]+.[0-9]+.[0-9]+)/\1/p;q}' auctex.el) +LASTVERSION:=$(shell grep "^;; Version:" auctex.el \ + | sed -nre 's/;; Version: ([0-9]+.[0-9]+.[0-9]+)/\1/p;q') AUCTEXVERSION:=$(if $(THISVERSION),$(THISVERSION),$(LASTVERSION).$(AUCTEXDATE)) tex-site.el: tex-site.el.in
Re: [PATCH] fix delete-property handling
Hi Artem, >>>>> Artem Yurchenko writes: > I haven't seen any objections, so I moved on with restoring the old > behaviour. Thank you for your cooperation. >>> +(define-obsolete-variable-alias 'TeX-refuse-unmatched-dollar >>> + 'TeX-refuse-nested-math "13.4" >> The next AUCTeX version would be 14. (The ELPA releases already reached >> 14.) So the version should be "14" or "14.1". > Since I've restored the old behaviour, it makes sense to preserve the > old variable name. OK. >> In general, an elisp function whose name ends with "-mode" is a major or >> minor mode function, or is expected to do something related to major or >> minor modes, at least within AUCTeX source. Thus I'd like you to change >> this name `TeX-insert-dollar-mode' to `TeX-insert-dollar-action' or >> something like that for coherency. (Since it can be considered as a >> private helper function, you might as well assign it a name >> "TeX--insert-..."; but that isn't much important.) > Done. However, I don't want to make it private, since the helper could > be useful to other electric modes, which can enable or disable > features based on the operation mode. OK. >> In addition, I'd request to provide appropriate patches for >> doc/auctex.texi and doc/changes.texi, too. :-) > Done. Thanks. I'll add one minor modification, in addition to some trivial adjustments: -- (defun TeX-insert-dollar-electric () "Perform electric math symbol insertion. See `TeX-electric-math'." (if (and (TeX-active-mark) (/= (point) (mark))) (TeX-insert-dollar-electric-region) (insert (car TeX-electric-math)) (save-excursion (insert (cdr TeX-electric-math (TeX-math-input-method-off)) <-- CHANGED -- I moved the call to `TeX-math-input-method-off' out of the `if' form in my local repository so that it's called always when `TeX-insert-dollar-electric' runs, because this is the current behavior of `TeX-insert-dollar'. Now I think AUCTeX can incorporate your patches. Did your copyright assignment process finish? If not, I'll push the change to the git repo after you notify us the completion of the process. Best regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
master 77497418: Fix compilation on Emacs 27
branch: master commit 774974185a1a49db4ff0d48121c33b77e0546a04 Author: Ikumi Keita Commit: Ikumi Keita Fix compilation on Emacs 27 * tex.el (require): Require subr-x for `if-let' introduced in `TeX-master-output-file'. --- tex.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tex.el b/tex.el index e13c02ce..749037b5 100644 --- a/tex.el +++ b/tex.el @@ -34,7 +34,8 @@ (require 'custom) (require 'tex-site) (eval-when-compile - (require 'cl-lib)) + (require 'cl-lib) + (require 'subr-x)) (require 'texmathp) ;; seq.el is preloaded in Emacs 29, so the next form can be removed ;; once 29 is the minimum required Emacs version
Re: [PATCH] fix delete-property handling
Hi Artem, >>>>> Artem Yurchenko writes: >> I moved the call to `TeX-math-input-method-off' out of the `if' form in >> my local repository so that it's called always when >> `TeX-insert-dollar-electric' runs, because this is the current behavior >> of `TeX-insert-dollar'. > While it is indeed the current behaviour, it didn't seem right. When > we call electric math on a region, we end up /outside/ of math > mode. For example: > point bla-bla mark → press $ → $bla-bla$ point. > So, if we're outside of math, why turn off the input methods? Indeed! I'll revert it and let it be as you proposed again. Thank you. >> Now I think AUCTeX can incorporate your patches. Did your copyright >> assignment process finish? If not, I'll push the change to the git repo >> after you notify us the completion of the process. > It's been more than a month since I've sent my signed papers, and > still no progress :( I have signed them though, I can send them here > too. It's just the FSF signature that is missing. Hmm, that's a pity. Arash, Tassilo, Mosè and David, what do you think about it? Best regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
master 970787f9: Improve paragraph commands management for ConTeXt mode (bug#70811)
branch: master commit 970787f92d21447296c474bee954ac1ac3e0b8de Author: Ikumi Keita Commit: Ikumi Keita Improve paragraph commands management for ConTeXt mode (bug#70811) * context.el (ConTeXt-paragraph-commands): New customize option similar to LaTeX counterpart. (ConTeXt-extra-paragraph-commands): Provide proper defvar. (ConTeXt-paragraph-commands-regexp-make): Rename from `ConTeXt-paragraph-commands-regexp' for consistency with latex.el. Include `ConTeXt-paragraph-commands' to generate the regexp. (ConTeXt-paragraph-commands-regexp): Add alias for backward compatibility. (ConTeXt-set-paragraph-start): Factor out following latex.el. (ConTeXt-paragraph-commands-add-locally): New convinience function similar to LaTeX counterpart. (ConTeXt-mode-cleanup): Use new functions. --- context.el | 63 +++--- 1 file changed, 48 insertions(+), 15 deletions(-) diff --git a/context.el b/context.el index 0d5b9adb..8b0c88ee 100644 --- a/context.el +++ b/context.el @@ -53,9 +53,6 @@ (require 'latex) ; for functions like `TeX-look-at' and `LaTeX-split-long-menu' (require 'plain-tex) ; for `plain-TeX-common-initialization' -;; Silence the compiler: -(defvar ConTeXt-extra-paragraph-commands) - (defgroup ConTeXt-macro nil "Special support for ConTeXt macros in AUCTeX." :prefix "TeX-" @@ -1121,18 +1118,59 @@ If OPTIONAL, only insert it if not empty, and then use square brackets." (defvar ConTeXt-item-list () "List of macro's considered items.") -(defun ConTeXt-paragraph-commands-regexp () - "Return a regexp matching macros that should have their own line." +(defvar ConTeXt-extra-paragraph-commands nil + "List of default ConTeXt macros that should begin their own line. +Unlike `ConTeXt-paragraph-commands', each entry should be a regular +expression without leading backslash. +Updated in language-specific initialization.") + +(defcustom ConTeXt-paragraph-commands nil + "List of user ConTeXt macros that should begin their own line. +The list should contain macro names without the leading backslash. + +If you change this variable, its value is reflected to only new buffers +created afterwards; existing ConTeXt mode buffers aren't affected." + :group 'ConTeXt-macro + :type '(repeat (string))) + +(defun ConTeXt-paragraph-commands-regexp-make () + "Return a regexp matching macros that should begin their own line." (concat - (regexp-quote TeX-esc) "\\(" + (regexp-quote TeX-esc) "\\(?:" "[][]\\|" ; display math delimitors (is this applicable to ConTeXt??) (ConTeXt-environment-start-name) "\\|" (ConTeXt-environment-stop-name) "\\|" (mapconcat #'car ConTeXt-numbered-section-list "\\b\\|") "\\b\\|" (mapconcat #'car ConTeXt-unnumbered-section-list "\\b\\|") "\\b\\|" + (mapconcat #'identity ConTeXt-paragraph-commands "\\b\\|") "\\b\\|" (mapconcat #'identity ConTeXt-extra-paragraph-commands "\\b\\|") "\\b\\|" (mapconcat #'identity ConTeXt-item-list "\\b\\|") "\\b\\)")) +;; Backward compatibility. +(defalias 'ConTeXt-paragraph-commands-regexp + #'ConTeXt-paragraph-commands-regexp-make) + +(defun ConTeXt-set-paragraph-start () + "Set `paragraph-start'." + (setq paragraph-start +(concat + "[ \t]*\\(?:" + LaTeX-paragraph-commands-regexp "\\|" + "\\$\\$\\|" ; Plain TeX display math + "$\\)"))) + +(defun ConTeXt-paragraph-commands-add-locally (commands) + "Make COMMANDS be recognized as paragraph commands. +COMMANDS can be a single string or a list of strings which will be added +to `ConTeXt-extra-paragraph-commands'. Additionally +`LaTeX-paragraph-commands-regexp' will be updated. +This is mainly a convenience function which can be used in style files." + (unless (listp commands) (setq commands (list commands))) + (dolist (elt commands) +(add-to-list 'ConTeXt-extra-paragraph-commands elt)) + (setq-local LaTeX-paragraph-commands-regexp + (ConTeXt-paragraph-commands-regexp-make)) + (ConTeXt-set-paragraph-start)) ;; Outline support @@ -1908,16 +1946,11 @@ Run after mode hooks and file local variables application." (mapconcat #'identity ConTeXt-item-list "\\|") "\\)\\>"))) - ;; Don't do locally-bound test for `LaTeX-paragraph-commands-regexp' - ;; and `paragraph-start'. See comments in similar part in latex.el. (setq-local LaTeX-paragraph-commands-regexp - (ConTeXt-paragraph-commands-regexp))
master 7b8ae52d 2/3: Amend TeX electric commands to allow alternative electric modes
branch: master commit 7b8ae52d828db69294abf0f79d8111e105a9595a Author: Artem Yurchenko Commit: Ikumi Keita Amend TeX electric commands to allow alternative electric modes 1. In particular, we are splitting out the electric logic of `TeX-insert-dollar'. 2. We've clarified that `TeX-refuse-unmatched-dollar' doesn't have an effect when `TeX-electric-math' is non-nil. The reason is that it's complicated to support all math delimiters consistently, and the need for this feature is unclear. If there is a demand to support this in the future, it can be done. It's explained below in Appendix I. 3. We've removed the special case where > If [[`TeX-electric-math']] non-nil and point is inside math > mode right between a couple of single dollars, pressing `$' > will insert another pair of dollar signs and leave the point > between them. 4. We've changed `C-u $' to insert four dollars as opposed to one. This behavior is in-line with other symbols, in particular `TeX-insert-quote' and `TeX-insert-backslash'. If someone needs one literal `$', they can type `C-1 $' or `C-q $'. 5. We've set appropriate `delete-selection' properties for `TeX-insert-backslash', `TeX-newline' and `TeX-insert-dollar'. See the backstory below or the docstring for `TeX--put-electric-delete-selection'. 6. We didn't fix `TeX-insert-quote'. Maybe later. The backstory. When a function bound to SYMBOL has optional «electric» behavior, it might interfere with other «electric» modes, e.g. `electric-pair-mode', `smartparens-mode'; see bug#47936. As a way to «override» those modes, we use raw `insert' instead of `self-insert-command'. That prevents those electric modes from running their hooks tied to `self-insert-command'. However, when /our/ electric behavior is disabled (ELECTRICP is nil), we want other electric modes to operate freely. That means, on the non-electric path, we should use `self-insert-command' instead of `insert'. Now, there arises an issue of `delete-selection'. The electric path usually doesn't want to delete selection, it wants to operate some electricity on it; see bug#36385, bug#23177. Now, we could think that `delete-selection' for the non-electric path should be t. That would disable other electric modes from working, as they also need to operate on selection. The decision is to inherit `delete-selection' from `self-insert-command', which queries hooks from other electric modes to determine whether deletion is necessary. Appendix I. To support a (generalized) TeX-insert-dollar with electric-math, we would want the following. We would want to forbid /arbitrary/ math mode nesting, independent of the delimiter in TeX-electric-math. However, the naive approach causes issues with display math via "$$ bla-bla $$". When the user presses $ once, they get "$-!-$". When they press $ again, they can't get "$$-!-$$", because that is considered as "nested math". A simple way to fix this would be to special-case handling of a dollar insert. However, a more satisfactory way would be to "cycle" through inline math, display math and no math on $ presses. We actually already implement that behavior on $ presses on a region. * tex.el: (TeX-insert-dollar-electric-region, TeX-insert-dollar-electric): (TeX--blink-matching-dollar, TeX-insert-dollar-action): New function to refactor `TeX-insert-dollar'. (TeX-insert-dollar): Use them. (TeX-insert-dollar-1): Remove. (TeX-electric-math, TeX-refuse-unmatched-dollar): Adjust the doc stirng. (): Add appropriate `delete-selection' property to `TeX-insert-backslash', `TeX-insert-dollar' and `TeX-insert-quote'. --- tex.el | 271 - 1 file changed, 135 insertions(+), 136 deletions(-) diff --git a/tex.el b/tex.el index 2235df27..503a54b3 100644 --- a/tex.el +++ b/tex.el @@ -5141,6 +5141,9 @@ This function implements the idea from the last paragraph." (TeX-electric-macro) (self-insert-command arg))) +(TeX--put-electric-delete-selection + #'TeX-insert-backslash (lambda () TeX-electric-escape)) + (defun TeX-insert-sub-or-superscript (arg) "Insert typed key ARG times and possibly a pair of braces. Brace insertion is only done if point is in a math construct and @@ -5155,6 +5158,8 @@ Brace insertion is only done if point is in a math construct and "Call the function specified by the variable `TeX-newline-func
master 3b0becf0 1/3: Split out the electric version of `LaTeX-insert-left-brace'
branch: master commit 3b0becf00535f77d47db8e39e17a726504254f53 Author: Artem Yurchenko Commit: Ikumi Keita Split out the electric version of `LaTeX-insert-left-brace' Set the proper `delete-selection` property. The backstory. When a function bound to SYMBOL has optional «electric» behavior, it might interfere with other «electric» modes, e.g. `electric-pair-mode', `smartparens-mode'; see bug#47936. As a way to «override» those modes, we use raw `insert' instead of `self-insert-command'. That prevents those electric modes from running their hooks tied to `self-insert-command'. However, when /our/ electric behavior is disabled (ELECTRICP is nil), we want other electric modes to operate freely. That means, on the non-electric path, we should use `self-insert-command' instead of `insert'. Now, there arises an issue of `delete-selection'. The electric path usually doesn't want to delete selection, it wants to operate some electricity on it; see bug#36385, bug#23177. Now, we could think that `delete-selection' for the non-electric path should be t. That would disable other electric modes from working, as they also need to operate on selection. The decision is to inherit `delete-selection' from `self-insert-command', which queries hooks from other electric modes to determine whether deletion is necessary. The changelog. * tex.el (TeX--put-electric-delete-selection): New function, sets the appropriate `delete-selection' property for electric functions. * latex.el (LaTeX-insert-left-brace): Split out electric logic into a few function `LaTeX-insert-left-brace-electric' Set appropriate `delete-selection'. --- latex.el | 123 --- tex.el | 42 ++ 2 files changed, 96 insertions(+), 69 deletions(-) diff --git a/latex.el b/latex.el index e66f4116..67680cee 100644 --- a/latex.el +++ b/latex.el @@ -3285,80 +3285,65 @@ supply the corresponding macro such as \\right before the right brace macro." (LaTeX-insert-corresponding-right-macro-and-brace left-macro left-brace optional) +(defun LaTeX-insert-left-brace-electric (brace) + "Insert typed left BRACE and a corresponding right brace. + +BRACE should be a character. See `LaTeX-insert-left-brace' for +allowed BRACE values." + (when (and (TeX-active-mark) (> (point) (mark))) +(exchange-point-and-mark)) + (let ((lbrace (char-to-string brace)) lmacro skip-p) +;; Use `insert' rather than `self-insert-command' so that +;; unexpected side effects from `post-self-insert-hook', +;; e.g. `electric-pair-mode', won't mess up the following +;; outcomes. (bug#47936) +(insert brace) +(save-excursion + (backward-char) + ;; The brace "{" is exceptional in two aspects. + ;; 1. "\{" should be considered as a single brace + ;;like "(" and "[". + ;; 2. "\left{" is nonsense while "\left\{" and + ;;"\left(" are not. + (if (string= lbrace TeX-grop) + ;; If "{" follows "\", set lbrace to "\{". + (if (TeX-escaped-p) + (progn +(backward-char) +(setq lbrace (concat TeX-esc TeX-grop))) +;; Otherwise, don't search for left macros. +(setq skip-p t))) + (unless skip-p +;; Obtain the name of preceding left macro, if any, +;; such as "left", "bigl" etc. +(setq lmacro (LaTeX--find-preceding-left-macro-name +(let ((TeX-arg-right-insert-p t) + ;; "{" and "}" are paired temporally so that typing + ;; a single "{" should insert a pair "{}". + (TeX-braces-association + (cons (cons TeX-grop TeX-grcl) TeX-braces-association))) + (save-excursion +(if (TeX-active-mark) +(goto-char (mark))) +(LaTeX-insert-corresponding-right-macro-and-brace + lmacro lbrace) + (defun LaTeX-insert-left-brace (arg) - "Insert typed left brace ARG times and possibly a correspondig right brace. + "Insert typed left brace ARG times and possibly a corresponding right brace. Automatic right brace insertion is done only if no prefix ARG is given and `LaTeX-electric-left-right-brace' is non-nil. Normally bound to keys \(, { and [." (interactive "*P") - ;; If you change the condition for `auto-p', adjust the condition in - ;; the `delete-selection' property, just below this defun, accordingly. - (let ((auto-p (and LaTeX-electric-left-right-brace (not arg -
master updated (dc1a8ee5 -> 45ee2f9e)
ikumi pushed a change to branch master. from dc1a8ee5 Delete `LaTeX-env-contents' new 3b0becf0 Split out the electric version of `LaTeX-insert-left-brace' new 7b8ae52d Amend TeX electric commands to allow alternative electric modes new 45ee2f9e Update documentaion on changes related to delete-selection Summary of changes: doc/auctex.texi | 17 ++- doc/changes.texi | 34 +- latex.el | 123 ++ tex.el | 313 +++ 4 files changed, 270 insertions(+), 217 deletions(-)
master 45ee2f9e 3/3: Update documentaion on changes related to delete-selection
branch: master commit 45ee2f9e674a82037c5d67d8851721255b8237d0 Author: Artem Yurchenko Commit: Ikumi Keita Update documentaion on changes related to delete-selection * doc/auctex.texi: * doc/changes.texi: Update documentaion on changes related to delete-selection. --- doc/auctex.texi | 17 ++--- doc/changes.texi | 34 +- 2 files changed, 39 insertions(+), 12 deletions(-) diff --git a/doc/auctex.texi b/doc/auctex.texi index ca1eb339..e6bd045a 100644 --- a/doc/auctex.texi +++ b/doc/auctex.texi @@ -413,7 +413,7 @@ first dollar sign. @deffn Command TeX-insert-dollar @var{arg} @kindex $ -(@kbd{$}) Insert dollar sign. +(@kbd{$}) Insert dollar sign (or another math delimiter). Show matching dollar sign if this dollar sign end the @TeX{} math mode. @@ -437,14 +437,6 @@ Besides @code{nil}, possible values for this variable are @code{("$" . "$")} for @TeX{} inline equations @samp{$...$}, and @code{("\(" . "\)")} for @LaTeX{} inline equations @samp{\(...\)}. -If the variable is non-@code{nil} and point is inside math mode right -between a couple of single dollars, pressing @kbd{$} will insert another -pair of dollar signs and leave the point between them. Thus, if -@code{TeX-electric-math} is set to @code{("$" . "$")} you can easily -obtain a @TeX{} display equation @samp{$$...$$} by pressing @kbd{$} twice -in a row. (Note that you should not use double dollar signs in @LaTeX{} -because this practice can lead to wrong spacing in typeset documents.) - In addition, when the variable is non-@code{nil} and there is an active region outside math mode, typing @kbd{$} will put around the active region symbols for opening and closing inline equation and keep the region @@ -469,6 +461,9 @@ following to your init file Math mode which didn't start with dollar(s) shouldn't be closed with dollar. @defopt TeX-refuse-unmatched-dollar +This option @emph{has no effect} when @code{TeX-electric-math} is +non-@code{nil}. + This option determines the behavior when the user types @kbd{$} at a position where @AUCTeX{} thinks that it is in math mode which didn't start with dollar(s). @@ -5326,7 +5321,7 @@ Here is a simple example of a style file. (TeX-add-style-hook "book" - (lambda () + (lambda () (LaTeX-largest-level-set "part")) TeX-dialect) @end lisp @@ -6290,7 +6285,7 @@ buffer. Note that you can make, say @samp{Makeinfo}, the default by adding this statement in your init file: @lisp -(add-hook 'Texinfo-mode-hook +(add-hook 'Texinfo-mode-hook (lambda () (setq TeX-command-default "Makeinfo"))) @end lisp diff --git a/doc/changes.texi b/doc/changes.texi index 0d57a654..7a5f95fe 100644 --- a/doc/changes.texi +++ b/doc/changes.texi @@ -213,6 +213,38 @@ Now synctex option is @option{--synctex=repeat} instead of ignores @option{--synctex} option if @option{--nonstop} is present. @end itemize +@item +@code{LaTeX-insert-left-brace}, @code{TeX-insert-dollar} and +@code{TeX-insert-backslash} now have appropriate @code{delete-selection} +properties, that differentiate between the ``electric'' and +``just-insert-the-symbol'' behavior. That should simplify cooperation +with other electric modes. + +As a result of this adjustment, the behavior of @code{TeX-insert-dollar} +is affected in some ways: +@itemize @minus +@item +With raw prefix argument @kbd{C-u}, @kbd{$} (@code{TeX-insert-dollar}) now +inserts four dollars as opposed to one. This behavior is in-line with +other symbols, in particular @kbd{"} (@code{TeX-insert-quote}) and @kbd{\} +(@code{TeX-insert-backslash}). If you need one literal @samp{$}, you can +type @kbd{C-1 $} or @kbd{C-q $}. +@item +We no longer have explicit support of the special behavior that +if @code{TeX-electric-math} is non-nil and point is inside math +mode right between a couple of single dollars, pressing @kbd{$} +will insert another pair of dollar signs and leave the point +between them. + +It still works as before if @code{TeX-electric-math} is pair of dollars +while it inserts @samp{\(} and @samp{\)} when @code{TeX-electric-math} is +@code{("\(" . "\)")}. +@item +When @code{TeX-electric-math} is a pair of dollars and the point is in +inline math (without active region, @kbd{$} inserts two dollars, not one +dollar which just closes the math mode. +@end itemize + @item @AUCTeX{} now requires GNU Emacs 27.1 or higher. @end itemize @@ -1621,7 +1653,7 @@ Verbatim commands like @samp{\verb|...|} will not be broken anymore during filling. @item -You can customize the completion for graphic files with +You can customize the completion for graphic files with @code{LaTeX-includegraphics-read-file}. @item
Re: [PATCH] fix delete-property handling
>>>>> Artem Yurchenko writes: > Hi, Ikumi, > I have finally got my assignment back! Thank you! I pushed your changesets to the git repository. I'm happy to have your nice contribution and thank for your patiance. Best regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
master 8485b4bb: ; * doc/changes.texi: Fix typo.
branch: master commit 8485b4bbdf6a38c741a62a37fdfdafafdca9d168 Author: Ikumi Keita Commit: Ikumi Keita ; * doc/changes.texi: Fix typo. --- doc/changes.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/changes.texi b/doc/changes.texi index 7a5f95fe..a8de7322 100644 --- a/doc/changes.texi +++ b/doc/changes.texi @@ -241,7 +241,7 @@ while it inserts @samp{\(} and @samp{\)} when @code{TeX-electric-math} is @code{("\(" . "\)")}. @item When @code{TeX-electric-math} is a pair of dollars and the point is in -inline math (without active region, @kbd{$} inserts two dollars, not one +inline math (without active region), @kbd{$} inserts two dollars, not one dollar which just closes the math mode. @end itemize
Re: master 45ee2f9e 3/3: Update documentaion on changes related to delete-selection
Hi Arash, >>>>> Arash Esbati writes: >> +When @code{TeX-electric-math} is a pair of dollars and the point is in >> +inline math (without active region, @kbd{$} inserts two dollars, not one >^ > Thanks for the change. Is the above possibly a typo or is closing > parenthesis missing? Ah, I think so. I just pushed the fix. Thanks for spotting this. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
tex-site.elc generation on main branch
Hi all, On the main branch, tex-site.elc isn't generated at the first "make" after "make clean" because expansion of $(wildcard *.el style/*.el) in GNUmakefile doesn't include tex-site.el which doesn't exist yet when we issue the "make". Does it make sense to apply the attached patch for the reproducibility? (It includes addition to lpath.el to suppress spurious generation of lpath.elc as well.) Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: tex-site.elc generation on main branch
>>>>> Uwe Brauer writes: > Difficult to say, because there is no attached patch 😉 Sorry! Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW >From 6b1c1f6da312fc113a80bedabf703f8cff5cd6d6 Mon Sep 17 00:00:00 2001 From: Ikumi Keita Date: Sat, 27 Apr 2024 18:23:45 +0900 Subject: [PATCH] Tune byte compile condition * lpath.el: Add appropriate file local variables section to suppress spurious byte compile. * GNUmakefile: Make sure that tex-site.elc is generated. --- GNUmakefile | 2 +- lpath.el| 6 ++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/GNUmakefile b/GNUmakefile index 4f90cd07..73bdeace 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -42,7 +42,7 @@ ALL_GENERATED_FILES=$(MAIN_GENERATED_FILES) \ # Generate & compile everything including the manuals below doc/. all: $(ALL_GENERATED_FILES) compile auctex-autoloads.el -compile: $(patsubst %.el,%.elc,$(wildcard *.el style/*.el)) +compile: $(patsubst %.el,%.elc,$(wildcard *.el style/*.el)) tex-site.elc # If we were depending on emacs 29.1, we could simply use # loaddefs-generate. If we were depending on 28.1, we could still use diff --git a/lpath.el b/lpath.el index f43a9841..021ed463 100644 --- a/lpath.el +++ b/lpath.el @@ -11,3 +11,9 @@ (add-to-list 'load-path (expand-file-name "style" auctex-dir)) (setq TeX-lisp-directory "" TeX-auto-global "")) + +;; Local Variables: +;; no-byte-compile: t +;; no-update-autoloads: t +;; no-native-compile: t +;; End: -- 2.44.0
main 6b1c1f6d: Tune byte compile condition
branch: main commit 6b1c1f6da312fc113a80bedabf703f8cff5cd6d6 Author: Ikumi Keita Commit: Ikumi Keita Tune byte compile condition * lpath.el: Add appropriate file local variables section to suppress spurious byte compile. * GNUmakefile: Make sure that tex-site.elc is generated. --- GNUmakefile | 2 +- lpath.el| 6 ++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/GNUmakefile b/GNUmakefile index 4f90cd07..73bdeace 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -42,7 +42,7 @@ ALL_GENERATED_FILES=$(MAIN_GENERATED_FILES) \ # Generate & compile everything including the manuals below doc/. all: $(ALL_GENERATED_FILES) compile auctex-autoloads.el -compile: $(patsubst %.el,%.elc,$(wildcard *.el style/*.el)) +compile: $(patsubst %.el,%.elc,$(wildcard *.el style/*.el)) tex-site.elc # If we were depending on emacs 29.1, we could simply use # loaddefs-generate. If we were depending on 28.1, we could still use diff --git a/lpath.el b/lpath.el index f43a9841..021ed463 100644 --- a/lpath.el +++ b/lpath.el @@ -11,3 +11,9 @@ (add-to-list 'load-path (expand-file-name "style" auctex-dir)) (setq TeX-lisp-directory "" TeX-auto-global "")) + +;; Local Variables: +;; no-byte-compile: t +;; no-update-autoloads: t +;; no-native-compile: t +;; End:
Re: tex-site.elc generation on main branch
>>>>> Arash Esbati writes: > Uwe Brauer writes: >> Ok, the compilation takes awfully long. Tassilo explained why, but it >> is really annoying and makes testing a bit cumbersome . > Do you run make with the '-j' switch? I tried building AUCTeX on my old > Windows box with 'time make -j8' and it took around 2:20 minutes. The > same process takes 0:22 minutes on my Macbook Air M2. I agree, it takes > longer than it used to, but there are reasons to do so. >> But it works! >> tex-site.elc is generated >> >> So I think your patch provides a working solution. > Thanks for testing, I also think Keita's patch is good. Thank you both. I pushed the fix. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
master 56debb63: Populate `semantic-symref-filepattern-alist' (bug#71245)
branch: master commit 56debb635d3d768500c86bce54cf4eaf42502e86 Author: David Fussner Commit: Ikumi Keita Populate `semantic-symref-filepattern-alist' (bug#71245) * context.el: * latex.el: * plain-tex.el: Make sure all modes have an entry in the alist, and also that the ".tex" extension is included where necessary. --- context.el | 7 +++ latex.el | 3 ++- plain-tex.el | 14 ++ 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/context.el b/context.el index 8b0c88ee..0caab223 100644 --- a/context.el +++ b/context.el @@ -1861,6 +1861,13 @@ that is, you do _not_ have to cater for this yourself by adding \\=' or $." (TeX-abbrev-mode-setup ConTeXt-mode context-mode-abbrev-table) +(defvar semantic-symref-filepattern-alist) ; Silence compiler +(with-eval-after-load 'semantic/symref/grep + ;; This entry is necessary for M-? to work. + ;; https://lists.gnu.org/r/auctex-devel/2023-09/msg2.html> + ;; https://lists.gnu.org/r/auctex-devel/2023-09/msg5.html> + (push '(ConTeXt-mode "*.[tT]e[xX]") semantic-symref-filepattern-alist)) + (defun ConTeXt-mode-common-initialization () "Initialization code that is common for all ConTeXt interfaces." (plain-TeX-common-initialization) diff --git a/latex.el b/latex.el index d0a9ee6f..ba759291 100644 --- a/latex.el +++ b/latex.el @@ -8195,7 +8195,8 @@ This happens when \\left is inserted." ;; This entry is necessary for M-? to work. ;; https://lists.gnu.org/r/auctex-devel/2023-09/msg2.html> ;; https://lists.gnu.org/r/auctex-devel/2023-09/msg5.html> - (push '(LaTeX-mode "*.ltx" "*.sty" "*.cls" "*.clo" "*.bbl" "*.drv" "*.hva") + (push '(LaTeX-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" "*.bbl" + "*.drv" "*.hva") semantic-symref-filepattern-alist)) (declare-function LaTeX-preview-setup "preview") diff --git a/plain-tex.el b/plain-tex.el index 2b777869..9bd48eb3 100644 --- a/plain-tex.el +++ b/plain-tex.el @@ -118,6 +118,14 @@ plain-TeX file, or any mode derived thereof. See variable (TeX-abbrev-mode-setup plain-TeX-mode plain-tex-mode-abbrev-table) +(defvar semantic-symref-filepattern-alist) ; Silence compiler +(with-eval-after-load 'semantic/symref/grep + ;; This entry is necessary for M-? to work. + ;; https://lists.gnu.org/r/auctex-devel/2023-09/msg2.html> + ;; https://lists.gnu.org/r/auctex-devel/2023-09/msg5.html> + (push '(plain-TeX-mode "*.[tT]e[xX]" "*.ins") +semantic-symref-filepattern-alist)) + ;; Delete alias predefined in tex-mode.el so that AUCTeX autoload ;; takes precedence. ;;;###autoload (if (eq (symbol-function 'plain-TeX-mode) 'plain-tex-mode) @@ -318,6 +326,12 @@ that is, you do _not_ have to cater for this yourself by adding \\=' or $." :type 'hook :group 'TeX-misc) +(with-eval-after-load 'semantic/symref/grep + ;; This entry is necessary for M-? to work. + ;; https://lists.gnu.org/r/auctex-devel/2023-09/msg2.html> + ;; https://lists.gnu.org/r/auctex-devel/2023-09/msg5.html> + (push '(AmSTeX-mode "*.[tT]e[xX]") semantic-symref-filepattern-alist)) + ;;;###autoload (define-derived-mode AmSTeX-mode plain-TeX-mode "AmS-TeX" "Major mode in AUCTeX for editing AmSTeX files.
Re: Deleting some obsolete variables
Hi Arash, >>>>> Arash Esbati writes: > Hi Keita, > with commit d7e6fa0d41, you added some comments about the variables > below: > ;; The following variables are no longer used, but kept in case some > ;; foreign code uses any of them. > (defvar TeX-symbol-marker nil) > (defvar TeX-symbol-marker-pos 0) > (defvar TeX-dollar-sign ?$) > (defconst TeX-dollar-string (char-to-string TeX-dollar-sign)) > (defconst TeX-dollar-regexp > (concat "^" (regexp-quote TeX-dollar-string) "\\|[^" TeX-esc "]" > (regexp-quote TeX-dollar-string))) > (make-obsolete-variable 'TeX-symbol-marker nil "AUCTeX 9.9d++") > (make-obsolete-variable 'TeX-symbol-marker-pos nil "AUCTeX 9.9d++") > (make-obsolete-variable 'TeX-dollar-sign nil "AUCTeX 9.9d++") > (make-obsolete-variable 'TeX-dollar-string nil "AUCTeX 9.9d++") > (make-obsolete-variable 'TeX-dollar-regexp nil "AUCTeX 9.9d++") > The commit isn't that old, but can we remove the block above entirely > from AUCTeX? 9.9d was long time ago. WDYT? Yes, I think we can. If I don't see objections, I'll delete the block in a few days. Best regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Deleting some obsolete variables
Hi Arash, >>>>> Arash Esbati writes: >> Yes, I think we can. If I don't see objections, I'll delete the block in >> a few days. > Great, thanks. While we're at it: Do we still need the > 'feature/fix-mode-names-overlap' branch or can you delete that as well? Ah, OK. I'll delete that, too. Bye, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
master c571713a: Add some font commands to default prauctex.cfg (bug#71690)
branch: master commit c571713a1f0013f8fb10e1e458eeadf4b8fbc797 Author: Ikumi Keita Commit: Ikumi Keita Add some font commands to default prauctex.cfg (bug#71690) * latex/preview.dtx (subsection{The \texttt{auctex} option}): Add \textbf, \textnormal, \textulc, \textmd, \textup and \textsw to the commands ignored by preview-latex. (): Update checksum. --- latex/preview.dtx | 8 +++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/latex/preview.dtx b/latex/preview.dtx index 23f5b2da..23624456 100644 --- a/latex/preview.dtx +++ b/latex/preview.dtx @@ -20,7 +20,7 @@ % Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, % Boston, MA 02110-1301 USA % \fi -% \CheckSum{1758} +% \CheckSum{1770} % \GetFileInfo{preview.sty} % \date{\filedate} % \author{David Kastrup\thanks{\texttt{bug-auc...@gnu.org}}} @@ -1427,11 +1427,17 @@ Please complain to your document class author}% %\PreviewMacro*[?[{@{[]}}{}][#1]\item %\PreviewMacro*\emph %\PreviewMacro*\textrm +%\PreviewMacro*\textbf %\PreviewMacro*\textit %\PreviewMacro*\textsc %\PreviewMacro*\textsf %\PreviewMacro*\textsl %\PreviewMacro*\texttt +%\PreviewMacro*\textulc +%\PreviewMacro*\textmd +%\PreviewMacro*\textnormal +%\PreviewMacro*\textup +%\PreviewMacro*\textsw %\PreviewMacro*\textcolor %\PreviewMacro*\mbox %\PreviewMacro*[][#1{}]\author
Re: Deleting `TeX-Omega-mode'
Hi Arash, >>>>> Arash Esbati writes: > in tex.el, we have: > (define-minor-mode TeX-Omega-mode > "Minor mode for using the Omega engine." > :init-value nil :lighter nil :keymap nil > :group 'TeX-command > (TeX-engine-set (if TeX-Omega-mode 'omega 'default))) > (defalias 'tex-omega-mode #'TeX-Omega-mode) > (make-obsolete 'TeX-Omega-mode #'TeX-engine-set "11.86") > (make-obsolete-variable 'TeX-Omega-mode 'TeX-engine "11.86") > Does anyone object if I remove this after 14 years of obsolescence? I don't mind it, but shouldn't we delete many other Omega related stuffs (for example, "omega" entry in `TeX-engine-alist-builtin') as well? Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
master 889d0615: Improve suggestion in the manual
branch: master commit 889d0615441143f09e04c028e582cc9c859e1ac4 Author: Ikumi Keita Commit: Ikumi Keita Improve suggestion in the manual * doc/preview-latex.texi (Misplaced previews): Add \AtBeginDocument to the suggested solution. Refill the paragraph. --- doc/preview-latex.texi | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/doc/preview-latex.texi b/doc/preview-latex.texi index 84d80be1..e9e03fd5 100644 --- a/doc/preview-latex.texi +++ b/doc/preview-latex.texi @@ -789,12 +789,12 @@ of those previews is goofed up, you will not be able to regenerate them by clicking on them. The default behaviour is thus somewhat undesirable. The solution (like with other preview problems) is to tell the @LaTeX{} -@samp{preview} package how to tackle this problem (@pxref{The LaTeX -style file}). Simply, you don't need @code{\emph} do anything at all -during previews! You only want the text math previewed, so the solution -is to use @code{\PreviewMacro*\emph} in the preamble of your document -which will make @LaTeX{} ignore @code{\emph} completely as long as it is -not part of a larger preview (in which case it gets typeset as +@samp{preview} package how to tackle this problem (@pxref{The LaTeX style +file}). Simply, you don't need @code{\emph} do anything at all during +previews! You only want the text math previewed, so the solution is to use +@code{\AtBeginDocument@{\PreviewMacro*\emph@}} in the preamble of your +document which will make @LaTeX{} ignore @code{\emph} completely as long +as it is not part of a larger preview (in which case it gets typeset as usual). Its argument thus becomes ordinary text and gets treated like ordinary text.
master 008399b8: Delete obsolete variables
branch: master commit 008399b88a12d91b7e31dcd0743704fcbcdd57cb Author: Ikumi Keita Commit: Ikumi Keita Delete obsolete variables * tex.el (TeX-symbol-marker, TeX-symbol-marker-pos, TeX-dollar-sign): (TeX-dollar-string, TeX-dollar-regexp): Delete obsolete variables, used for old "$" key management. --- NEWS.org | 3 +++ doc/changes.texi | 6 ++ tex.el | 15 --- 3 files changed, 9 insertions(+), 15 deletions(-) diff --git a/NEWS.org b/NEWS.org index 9e592263..2806126b 100644 --- a/NEWS.org +++ b/NEWS.org @@ -44,6 +44,9 @@ ** Removed - Delete function ~LaTeX-env-contents~. +- Delete obsolete variables ~TeX-symbol-marker~, + ~TeX-symbol-marker-pos~, ~TeX-dollar-sign~, ~TeX-dollar-string~ and + ~TeX-dollar-regexp~. * [14.0.5] - 2024-05-19 diff --git a/doc/changes.texi b/doc/changes.texi index a8de7322..75cdabe9 100644 --- a/doc/changes.texi +++ b/doc/changes.texi @@ -245,6 +245,12 @@ inline math (without active region), @kbd{$} inserts two dollars, not one dollar which just closes the math mode. @end itemize +@item +The following obsolete variables, used for old @key{$} key management, +were at last removed: @code{TeX-symbol-marker}, +@code{TeX-symbol-marker-pos}, @code{TeX-dollar-sign}, +@code{TeX-dollar-string} and @code{TeX-dollar-regexp}. + @item @AUCTeX{} now requires GNU Emacs 27.1 or higher. @end itemize diff --git a/tex.el b/tex.el index 0f6b753a..708ccfca 100644 --- a/tex.el +++ b/tex.el @@ -6123,21 +6123,6 @@ See also `TeX-font-replace' and `TeX-font-replace-function'." ;; Rewritten from scratch with use of `texmathp' by ;; Carsten Dominik -;; The following variables are no longer used, but kept in case some -;; foreign code uses any of them. -(defvar TeX-symbol-marker nil) -(defvar TeX-symbol-marker-pos 0) -(defvar TeX-dollar-sign ?$) -(defconst TeX-dollar-string (char-to-string TeX-dollar-sign)) -(defconst TeX-dollar-regexp - (concat "^" (regexp-quote TeX-dollar-string) "\\|[^" TeX-esc "]" - (regexp-quote TeX-dollar-string))) -(make-obsolete-variable 'TeX-symbol-marker nil "AUCTeX 9.9d++") -(make-obsolete-variable 'TeX-symbol-marker-pos nil "AUCTeX 9.9d++") -(make-obsolete-variable 'TeX-dollar-sign nil "AUCTeX 9.9d++") -(make-obsolete-variable 'TeX-dollar-string nil "AUCTeX 9.9d++") -(make-obsolete-variable 'TeX-dollar-regexp nil "AUCTeX 9.9d++") - (defcustom TeX-math-toggle-off-input-method t "If non-nil, auto turn off some input methods when entering math mode. See `TeX-math-input-method-off-regexp'."
branch feature/fix-mode-names-overlap deleted (was f06778a7)
ikumi pushed a change to branch feature/fix-mode-names-overlap. was f06778a7 * doc/changes.texi: Update the last change. The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
Re: Deleting some obsolete variables
>>>>> Arash Esbati writes: > Ikumi Keita writes: >> Ah, OK. I'll delete that, too. > 🙏 Done. Bye, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
CTAN update (Re: bug#71690: 14.0.5; preview-latex clips bold text with inline equations)
[ Cc: changed ] >>>>> Arash Esbati writes: > Thanks Keita. Now we have one other issue to solve: We used to update > preview.(dtx|ins) on CTAN with the yearly tarball release. Since a > tarball release will not happen, maybe we should update the CTAN > package. Oh, I didn't think about the preview package on CTAN. > I presume most of preview users use preview bundled with TeXlive and > not with their ELPA release. WDYT? Probably, yes. ELPA AUCTeX stores preview package under ~/.emacs.d/elpa/auctex-x.y.z/latex and most users wouldn't add it to kpathsea search path. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: CTAN update (Re: bug#71690: 14.0.5; preview-latex clips bold text with inline equations)
Hi Arash, >>>>> Arash Esbati writes: > But we still need some rules in order to create the preview.pdf file > which is required for a CTAN release, IIUC. I'll try to have a look, > but wouldn't mind if someone more fluent in make could also check ;-) That would be this stuff taken from latex/Makefile.in: preview.pdf: preview.drv preview.dtx preview.sty $(PDFLATEX) '\nonstopmode \input{preview.drv}' $(PDFLATEX) '\nonstopmode \input{preview.drv}' $(PDFLATEX) '\nonstopmode \input{preview.drv}' So I hope for our GNUmakefile, preview.pdf: latex/preview.drv latex/preview.dtx latex/preview.sty cd latex; \ $(PDFLATEX) '\nonstopmode \input{preview.drv}'; \ $(PDFLATEX) '\nonstopmode \input{preview.drv}'; \ $(PDFLATEX) '\nonstopmode \input{preview.drv}' would do the job. (I haven't tried actually, though. Maybe we also need PDFLATEX=pdflatex in GNUmakefile?) Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: CTAN update
Hi Arash. >>>>> Arash Esbati writes: > Now one can do 'make preview-ctan' and gets a tarball. Ugly is the > suffix part in clean, but it works :-) WDYT? It seems that the new targets don't have expected dependencies. For example, type "make preview-mk.ins" and "make preview.drv" in succession. The second "make" re-runs cd latex && $(TEX) '\nonstopmode \input bootstrap.ins' , which is redundant. In order to write the dependency rules reliably and simply, I think we should have another GNUmakefile in latex subdirectory and put the relavant rules in it. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: CTAN update
Hi Arash, >>>>> Arash Esbati writes: > Having a second GNUmakefile in latex/ is something that I'm trying to > avoid; I hope we manage to clean up the one top level and then be done > with it. I can think of something like this; I see. Then I'm fine with your idea. :-) Best, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: CTAN update
Hi Arash, >>>>> Arash Esbati writes: > Thanks, I installed that change. Do you think we have enough changes > for a 14.0.6 ELPA release? I would upload a preview tarball release to > CTAN as well. I'm fine to have a new ELPA release now. :-) Best, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
master c57690f6: Make syntax prop. run even when font lock is disabled (bug#71164)
branch: master commit c57690f61dbdc6e98d29c914fd25e0763d8be32c Author: Ikumi Keita Commit: Ikumi Keita Make syntax prop. run even when font lock is disabled (bug#71164) * font-latex.el (font-latex--make-syntax-propertize-function): Add font lock variable initialization. --- font-latex.el | 14 ++ 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/font-latex.el b/font-latex.el index 0307cd10..ec99d54c 100644 --- a/font-latex.el +++ b/font-latex.el @@ -1310,10 +1310,16 @@ triggers Font Lock to recognize the change." (defun font-latex--make-syntax-propertize-function () "Return a `syntax-propertize-function' for (La|Doc)TeX documents." - (let ((kws ;; (if (derived-mode-p 'docTeX-mode) - ;; font-latex-doctex-syntactic-keywords - font-latex-syntactic-keywords)) ;; ) -(syntax-propertize-via-font-lock kws))) + (let* ((kws ;; (if (derived-mode-p 'docTeX-mode) + ;; font-latex-doctex-syntactic-keywords + font-latex-syntactic-keywords) ;; ) + (func (syntax-propertize-via-font-lock kws))) +(lambda (start end) + ;; Initialize font lock variables even when font lock is disabled. + ;; This treatment is necessary because syntax propertize depends + ;; on font lock facility. (bug#71164) + (or font-lock-set-defaults (font-lock-set-defaults)) + (funcall func start end ;;;###autoload (defun font-latex-setup ()
Re: [master does not generate the correct AUCTeX version ]
Hi Arash and Uwe, >>>>> Arash Esbati writes: > So for your setup, you need an up-to-date ChangeLog.1, right? I > presume you can't update that yourself due to lack of Git? I don't think so. The current Changelog.1 begins with: , | 2024-01-17 Mosè Giordano | | * Version 13.3 released. | ` , thus Uwe's result is just as it should be on machine where Git isn't available. Uwe, how about installing Git with your distro's package manager? You don't have to use Git for yourself, just AUCTeX makefiles and scripts do. You can continnue to use Mercurial via hg2git. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: [master does not generate the correct AUCTeX version ]
>>>>> Ikumi Keita writes: > Uwe, how about installing Git with your distro's package manager? You > don't have to use Git for yourself, just AUCTeX makefiles and scripts > do. You can continnue to use Mercurial via hg2git. Ah, sorry, I didn't remember that the repository created by hg2git doesn't have expeced contents in .git subdirectory. So it difficult to have correct version number without real git repository. I don't have a good solution. :-( Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Drop tarball releases and go ELPA only
Hi Tassilo, >>>>> Tassilo Horn writes: > See (info "(emacs) Package Files"): >In addition to =E2=80=98package-user-dir=E2=80=99, Emacs looks for insta= > lled packages > in the directories listed in =E2=80=98package-directory-list=E2=80=99. The= > se > directories are meant for system administrators to make Emacs packages > available system-wide; Emacs itself never installs packages there. The > package subdirectories for =E2=80=98package-directory-list=E2=80=99 are lai= > d out in the > same way as in =E2=80=98package-user-dir=E2=80=99. I didn't know this feature and there arises a question. When there is a site-wide AUCTeX installation, a user who want to disable AUCTeX can achieve that by (unload-feature 'tex-site) under configure&make installation. But it seems that prescription doesn't work for site-wide ELPA AUCTeX installation; emacs refuses to unload `tex-site' saying: , | unload-feature: Loaded libraries ("c:/Program Files/Emacs/emacs-29.2/share/emacs/site-lisp/elpa/auctex-14.0.6/auctex-autoloads.el") depend on c:/Program Files/Emacs/emacs-29.2/share/emacs/site-lisp/elpa/auctex-14.0.6/tex-site.elc ` Should we arrange the main branch so that (unload-feature 'tex-site) works for site-wide ELPA AUCTeX installation as documented? Or should we announce other way? (To cusomize `TeX-modes' to nil? To add '(auctex nil)' to `package-load-list'? Or something else? Maybe to have both (unload-feature 'autex-autoloads') and (unload-feature 'tex-site) ?) Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: [master does not generate the correct AUCTeX version ]
Hi Uwe, >>>>> Uwe Brauer writes: > The problem with the main branch is that even with make -j8 it takes > 2:20 minutes to compile while 0:08 for the master branch (on my X1 > Thinkpad 2017) It does take some non-trivial time to compile first time after "make clean" in main branch, but it doesn't such much at subsequent "make"s because only updated *.el files are then byte-compiled. Recommended usage of main branch is to do "make clean" only when it's necessary. :-) Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: [master does not generate the correct AUCTeX version ]
>>>>> Uwe Brauer writes: >>>> "IK" == Ikumi Keita writes: >> Recommended usage of main branch is to do "make clean" only when it's >> necessary. :-) > Well the problem with this philosophy is the following > 1. When shell I run make and when make clean (as I learned painfully >in the past, make clean is most of the time preferable to be on >the save side) You are defying the raison d'être of "make" and makefiles.😅 The current Makefile of master branch always re-compiles _all_ .el files. The new Makefile of the main branch (GNUmakefile) dispenses with excessive compilation time. As I wrote, you should run "make" regularly and do "make clean" _only when_ it's necessary, i.e. it's much likely that the failure is due to implicit dependency of other files on the file you are tweaking. > 2. Why can't there a quick compilation option to be added as found >in master. That's because it is in line with the original way of writing makefiles. Specify compilation rule for file extension (.el) and don't enumerate all files to compile. In other words, the current Makefile of the master branch is written in a way against the spirit of makefiles. (I don't know why; probably by historical reason.) I suppose it isn't impossible to have such "quick" compilation target in the Makefile (GNUmakefile) of the main branch, but that would be redundant. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > Thanks for raising this issue. IIUC this is due this line of code in > tex-site.el.in: > ;;; Ensure that loading the autoloads file also loads this file. > ;;;###autoload (require 'tex-site) > So this effect isn't limited to a site-wide installation, but to every > ELPA installation? Yes. However, I don't think it is a serious issue for usual (personal) ELPA installation because users can easily uninstall AUCTeX in that case. >> Should we arrange the main branch so that (unload-feature 'tex-site) >> works for site-wide ELPA AUCTeX installation as documented? Or should we >> announce other way? (To cusomize `TeX-modes' to nil? To add '(auctex >> nil)' to `package-load-list'? Or something else? > Do you have any suggestion how to fix this? I think the cleanest solution is to add '(auctex nil)' to `package-load-list'. This doesn't register unused autloads for the first place. (I haven't tested yet, but I suppose that the code needs to be in early init file, right?) However, I don't have strong preference about it. >> Maybe to have both (unload-feature 'autex-autoloads') and >> (unload-feature 'tex-site) ?) > This seems to be easiest way; I suspect the > (unload-feature '-autoloads) > applies to every package installed from ELPA? It seems so: ,[ (elisp) Packaging Basics ] |Emacs then searches every Lisp file in the content directory for | autoload magic comments (*note Autoload::). These autoload definitions | are saved to a file named ‘NAME-autoloads.el’ in the content directory. | They are typically used to autoload the principal user commands defined | in the package, but they can also perform other tasks, such as adding an | element to ‘auto-mode-alist’ (*note Auto Major Mode::). ` Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > So the general possibilities to de-activate AUCTeX installed from ELPA > are: > 1) Set `package-load-list' > (setq package-load-list '((auctex nil))) >in early init file accordingly, or This kills the element `all' in the initial value of `package-load-list' and (probably) disables all ELPA packages according to the paragraph quoted below. I think a suitable code is (push '(auctex nil) package-load-list) instead. ,[ (emacs) Package Installation ] |For finer control over which packages are made available at startup, | you can use the variable ‘package-load-list’. Its value should be a | list. A list element of the form ‘(NAME VERSION)’ tells Emacs to make | available version VERSION of the package named NAME. Here, VERSION | should be a version string (corresponding to a specific version of the | package), or ‘t’ (which means to make available any installed version), | or ‘nil’ (which means no version; this disables the package, preventing | it from being made available). A list element can also be the symbol | ‘all’, which means to make available the latest installed version of any | package not named by the other list elements. The default value is just | ‘'(all)’. ` > 2) Set in init file > (unload-feature 'auctex-autoloads) > (unload-feature 'tex-site) > Optionally, one can customize `TeX-modes' which applies also to the > current installation method. If so, I'd say we can document that in the > manual and close the file. OK, I'll do some tests and propose a change for the document. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > Ikumi Keita writes: >> OK, I'll do some tests and propose a change for the document. > 🙏 How about the attached patch? (Maybe I should decouple the commit from bug#71363. When I first got started with this issue, it was a subsidiary topic of bug#71363.) Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW >From 2db4d6091baac1b5c4a94eaeb8b96abeb35c6160 Mon Sep 17 00:00:00 2001 From: Ikumi Keita Date: Tue, 12 Mar 2024 14:55:11 +0900 Subject: [PATCH] Keep compatibility with Org mode src editing (bug#71363) * tex-site.el.in (TeX-modes-set): Add entries for AUCTeX LaTeX mode to `org-src-lang-modes'. Use `major-mode-remap-defaults' for Emacs 30 and later, instead of `major-mode-remap-alist', in order to avoid altering user customize option. * doc/install.texi (Loading the package): Update the recommendation accordingly. Update the way to disable AUCTeX for ELPA site-wide installation as well. --- doc/install.texi | 38 +--- tex-site.el.in | 56 +--- 2 files changed, 65 insertions(+), 29 deletions(-) diff --git a/doc/install.texi b/doc/install.texi index c2499e63..5a00f8c3 100644 --- a/doc/install.texi +++ b/doc/install.texi @@ -38,9 +38,6 @@ Once the installation is completed, you can skip the rest of this section and proceed to @ref{Quick Start}. @end ifclear -The remainder of this section is about installing @AUCTeX{} from a -release tarball or from a checkout of the @AUCTeX{} repository. - Installing @AUCTeX{} should be simple: merely @command{./configure}, @command{make}, and @code{make install} for a standard site-wide installation (most other installations can be done by specifying a @@ -371,21 +368,31 @@ list. Type to manipulate the contents of @code{TeX-modes}. @end defopt -Don't remove @code{tex-mode} from @code{TeX-modes} because it results in -inconsistent behavior. +Don't remove @code{tex-mode} from @code{TeX-modes} unless you set +@code{TeX-modes} empty to disable @AUCTeX{} completely, otherwise it +results in inconsistent behavior. -On Emacs 29 and later, you can alter @code{major-mode-remap-alist} instead -of @code{TeX-modes} as you like to arrange @AUCTeX{} redirections. In -fact, @code{TeX-modes} option does nothing other than setting up -@code{major-mode-remap-alist} according its value on those Emacsens. +On Emacs 29 and later, @AUCTeX{} uses either +@code{major-mode-remap-defaults} or @code{major-mode-remap-alist} for +redirection. But we recommend not to customize them directly because the +customization code for @code{TeX-modes} takes care of some other +compatibility issues. -If you want to remove a preinstalled @AUCTeX{} completely before any of -its modes have been used, +When there is a site-wide installation of @AUCTeX{} and you don't want to +use it, you can disable it by +@lisp +(push '(auctex nil) package-load-list) +@end lisp +@noindent +in your early init file (@pxref{Early Init File,,,emacs}) for +@acronym{ELPA} installation, or @lisp (unload-feature 'tex-site) @end lisp @noindent -in your init file should accomplish that. +in your (standard) init file for configure--make installation. (We +recommend those treatments over setting @code{TeX-modes} to @code{nil}, +because they don't leave unused autoloads persisted.) @node Advice for package providers @section Providing @AUCTeX{} as a package @@ -399,6 +406,7 @@ There are people that prefer the built-in Emacs modes for editing @TeX{} files, in particular plain @TeX{} users. There are various ways to tell @AUCTeX{} even after auto-activation that it should not get used, and they are described in +@c FIXME: It doesn't seem that these references discuss this topic. @ifset rawfile the @file{README} file. @end ifset @@ -410,6 +418,12 @@ So if you have users that don't want to use the preinstalled @AUCTeX{}, they can easily get rid of it. Activating @AUCTeX{} by default is therefore a good choice. +First of all, you can install @acronym{ELPA} @AUCTeX{} package under a +directory listed in @code{package-directory-list} to have site-wide +default. + +Next, we discuss configure--make installation. + If the installation procedure did not achieve this already by placing @file{auctex.el} and @file{preview-latex.el} into a possibly existing @file{site-start.d} directory, you can do this by placing diff --git a/tex-site.el.in b/tex-site.el.in index 911a2080..7dd16333 100644 --- a/tex-site.el.in +++ b/tex-site.el.in @@ -113,29 +113,51 @@ Arrange the redirection of the built-in TeX modes according to VALUE. - The built-in modes in VALUE are redirected to the corresponding AUCTeX major modes. - The built-in modes not in VALUE discard redirection, if any. -If `major-mode-remap-alist' is available, use it for redirection. -Otherwise, use adv
master 10c8f782: Keep compatibility with Org mode src editing (bug#71363)
branch: master commit 10c8f782f8c0456443f09db0c54403e8753ee52b Author: Ikumi Keita Commit: Ikumi Keita Keep compatibility with Org mode src editing (bug#71363) * tex-site.el.in (TeX-modes-set): Add entries for AUCTeX LaTeX mode to `org-src-lang-modes'. Use `major-mode-remap-defaults' for Emacs 30 and later, instead of `major-mode-remap-alist', in order to avoid altering user customize option. * doc/install.texi (Loading the package): Update the recommendation accordingly. --- doc/install.texi | 16 +--- tex-site.el.in | 56 +++- 2 files changed, 48 insertions(+), 24 deletions(-) diff --git a/doc/install.texi b/doc/install.texi index c2499e63..74f5566d 100644 --- a/doc/install.texi +++ b/doc/install.texi @@ -371,13 +371,15 @@ list. Type to manipulate the contents of @code{TeX-modes}. @end defopt -Don't remove @code{tex-mode} from @code{TeX-modes} because it results in -inconsistent behavior. - -On Emacs 29 and later, you can alter @code{major-mode-remap-alist} instead -of @code{TeX-modes} as you like to arrange @AUCTeX{} redirections. In -fact, @code{TeX-modes} option does nothing other than setting up -@code{major-mode-remap-alist} according its value on those Emacsens. +Don't remove @code{tex-mode} from @code{TeX-modes} unless you set +@code{TeX-modes} empty to disable @AUCTeX{} completely, otherwise it +results in inconsistent behavior. + +On Emacs 29 and later, @AUCTeX{} uses either +@code{major-mode-remap-defaults} or @code{major-mode-remap-alist} for +redirection. But we recommend not to customize them directly because the +customization code for @code{TeX-modes} takes care of some other +compatibility issues. If you want to remove a preinstalled @AUCTeX{} completely before any of its modes have been used, diff --git a/tex-site.el.in b/tex-site.el.in index 911a2080..7dd16333 100644 --- a/tex-site.el.in +++ b/tex-site.el.in @@ -113,29 +113,51 @@ Arrange the redirection of the built-in TeX modes according to VALUE. - The built-in modes in VALUE are redirected to the corresponding AUCTeX major modes. - The built-in modes not in VALUE discard redirection, if any. -If `major-mode-remap-alist' is available, use it for redirection. -Otherwise, use advice facility." +If either `major-mode-remap-defaults' or `major-mode-remap-alist' is +available, use it for redirection in that order. Otherwise, use advice +facility." (custom-set-default var value) (let (elt dst) (dolist (entry TeX-mode-alist) (setq elt (car entry) dst (cdr entry)) (if (memq elt value) - (if (boundp 'major-mode-remap-alist) - (or (eq (cdr-safe (assq elt major-mode-remap-alist)) dst) - (push (cons elt dst) major-mode-remap-alist)) -;; COMPATIBILITY for Emacs<29 -(advice-add elt :override dst -;; COMPATIBILITY for Emacs 28.[12] -;; Give it higher precedence than the :around -;; advice given to `tex-mode' in tex-mode.el. -;; https://lists.gnu.org/r/auctex-devel/2022-09/msg00050.html> -'((depth . -10 -(if (boundp 'major-mode-remap-alist) -(setq major-mode-remap-alist - (delete entry major-mode-remap-alist)) - ;; COMPATIBILITY for Emacs<29 - (advice-remove elt dst)) + (progn +(cond ((boundp 'major-mode-remap-defaults) + ;; For Emacs 30 and later + (add-to-list 'major-mode-remap-defaults (cons elt dst))) + ((boundp 'major-mode-remap-alist) + ;; COMPATIBILITY for Emacs 29 + (add-to-list 'major-mode-remap-alist (cons elt dst))) + (t + ;; COMPATIBILITY for Emacs<29 + (advice-add elt :override dst + ;; COMPATIBILITY for Emacs 28 + ;; Give it higher precedence than the :around + ;; advice given to `tex-mode' in tex-mode.el. + ;; https://lists.gnu.org/r/auctex-devel/2022-09/msg00050.html> + '((depth . -10) +;; Keep compatibility. (bug#71363) +(if (eq elt 'latex-mode) +(with-eval-after-load 'org-src + (defvar org-src-lang-modes) ; Silence byte compiler. + ;; Check the actual presence in the entry in case that + ;; the user once choosed AUCTeX LaTeX mode and + ;; abandoned it afterwards in the same emacs session. + (when (memq 'latex-mode TeX-modes) +(push '(&qu
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: >> How about the attached patch? (Maybe I should decouple the commit from >> bug#71363. When I first got started with this issue, it was a subsidiary >> topic of bug#71363.) > This is what I also suggest: let's decouple them. The patch for > tex-site.el looks good, AFAICT, so let's install that and close the > report. OK, installed. > Then we can discuss the manual change. The patch for documentation becase like this: >From 59971bd13345d44632059170eff288c96ed658bc Mon Sep 17 00:00:00 2001 From: Ikumi Keita Date: Wed, 10 Jul 2024 19:22:30 +0900 Subject: [PATCH] Update documentation * doc/install.texi (Loading the package): (Advice for package providers): Update the way to disable site-wide default so that it includes ELPA installation. * doc/install.texi (Installation): Remove a paragraph which became incorrect. --- doc/install.texi | 24 ++-- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/doc/install.texi b/doc/install.texi index c2499e63..e240 100644 --- a/doc/install.texi +++ b/doc/install.texi @@ -38,9 +38,6 @@ Once the installation is completed, you can skip the rest of this section and proceed to @ref{Quick Start}. @end ifclear -The remainder of this section is about installing @AUCTeX{} from a -release tarball or from a checkout of the @AUCTeX{} repository. - Installing @AUCTeX{} should be simple: merely @command{./configure}, @command{make}, and @code{make install} for a standard site-wide installation (most other installations can be done by specifying a @@ -379,13 +376,21 @@ of @code{TeX-modes} as you like to arrange @AUCTeX{} redirections. In fact, @code{TeX-modes} option does nothing other than setting up @code{major-mode-remap-alist} according its value on those Emacsens. -If you want to remove a preinstalled @AUCTeX{} completely before any of -its modes have been used, +When there is a site-wide installation of @AUCTeX{} and you don't want to +use it, you can disable it by +@lisp +(push '(auctex nil) package-load-list) +@end lisp +@noindent +in your early init file (@pxref{Early Init File,,,emacs}) for +@acronym{ELPA} installation, or @lisp (unload-feature 'tex-site) @end lisp @noindent -in your init file should accomplish that. +in your (standard) init file for configure--make installation. (We +recommend those treatments over setting @code{TeX-modes} to @code{nil}, +because they don't leave unused autoloads persisted.) @node Advice for package providers @section Providing @AUCTeX{} as a package @@ -399,6 +404,7 @@ There are people that prefer the built-in Emacs modes for editing @TeX{} files, in particular plain @TeX{} users. There are various ways to tell @AUCTeX{} even after auto-activation that it should not get used, and they are described in +@c FIXME: It doesn't seem that these references discuss this topic. @ifset rawfile the @file{README} file. @end ifset @@ -410,6 +416,12 @@ So if you have users that don't want to use the preinstalled @AUCTeX{}, they can easily get rid of it. Activating @AUCTeX{} by default is therefore a good choice. +First of all, you can install @acronym{ELPA} @AUCTeX{} package under a +directory listed in @code{package-directory-list} to have site-wide +default. + +Next, we discuss configure--make installation. + If the installation procedure did not achieve this already by placing @file{auctex.el} and @file{preview-latex.el} into a possibly existing @file{site-start.d} directory, you can do this by placing -- 2.44.0 Comments welcome. :-) Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Emacs 31 (git@Head) and Auctex (installed via package.el)
Hi Raman, >>>>> "T.V Raman" writes: > so this is what I added to my init -- it runs at the very end of > startup: > (when (featurep 'auctex-autoloads) (load-library "tex-site")); workaround Sorry for being late. I tried the latest emacs HEAD and ELPA AUCTeX 14.0.6. They work for me without your workaround. I suspect that either `major-mode-remap-alist' or `major-mode-remap-defaults' doesn't have the expected value without your workaround. Could you provide us their value? For me, the values are , | major-mode-remap-alist is a variable defined in ‘/usr/home/keita/repo/emacs/emacs/lisp/files.el’. | | Its value is | ((doctex-mode . docTeX-mode) (latex-mode . LaTeX-mode) | (texinfo-mode . Texinfo-mode) (plain-tex-mode . plain-TeX-mode) | (tex-mode . TeX-tex-mode)) | Original value was nil ` and , | major-mode-remap-defaults is a variable defined in ‘/usr/home/keita/repo/emacs/emacs/lisp/files.el’. | | Its value is | ((LaTeX-mode . latex-mode) (plain-TeX-mode . plain-tex-mode) | (TeX-mode . tex-mode)) ` Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Emacs 31 (git@Head) and Auctex (installed via package.el)
Hi Raman, >>>>> "T.V Raman" writes: > See the bit on this thread re package-quickstart Unfortunately, it didn't help. I did on HEAD emacs: (1) Customize `package-quickstart' to t. (2) Restart emacs and M-x package-quickstart-refresh RET (3) Restart emacs and open a LaTeX document file with mode:latex tag. Then the buffer was in AUCTeX LaTeX mode. > I suspect tex-site acts like a flip-flop -- and package-quickstart > loading tex-site breaks things; loading it again I suspect fixes > things. Maybe, but I can't tell yet. We need more information to figure out what's going on. I ask you again to provide the values of `major-mode-remap-alist' or `major-mode-remap-defaults'. > Suggestion based on minimal understanding, simplify the world in > auctex-15 by eliminating tex-site.el It's actually complicated because AUCTeX tries to keep compatibility with traditional installation scheme. Maybe AUCTeX determines to support only ELPA release and merge tex-site.el into auctex.el in future. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
master bd74d3cf: Update documentation
branch: master commit bd74d3cf4050fc8ae95c25cf5a70ea75e1919198 Author: Ikumi Keita Commit: Ikumi Keita Update documentation * doc/install.texi (Loading the package): (Advice for package providers): Update the way to disable site-wide default so that it includes ELPA installation. * doc/install.texi (Installation): Remove a paragraph which became incorrect. --- doc/install.texi | 24 ++-- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/doc/install.texi b/doc/install.texi index 74f5566d..5a00f8c3 100644 --- a/doc/install.texi +++ b/doc/install.texi @@ -38,9 +38,6 @@ Once the installation is completed, you can skip the rest of this section and proceed to @ref{Quick Start}. @end ifclear -The remainder of this section is about installing @AUCTeX{} from a -release tarball or from a checkout of the @AUCTeX{} repository. - Installing @AUCTeX{} should be simple: merely @command{./configure}, @command{make}, and @code{make install} for a standard site-wide installation (most other installations can be done by specifying a @@ -381,13 +378,21 @@ redirection. But we recommend not to customize them directly because the customization code for @code{TeX-modes} takes care of some other compatibility issues. -If you want to remove a preinstalled @AUCTeX{} completely before any of -its modes have been used, +When there is a site-wide installation of @AUCTeX{} and you don't want to +use it, you can disable it by +@lisp +(push '(auctex nil) package-load-list) +@end lisp +@noindent +in your early init file (@pxref{Early Init File,,,emacs}) for +@acronym{ELPA} installation, or @lisp (unload-feature 'tex-site) @end lisp @noindent -in your init file should accomplish that. +in your (standard) init file for configure--make installation. (We +recommend those treatments over setting @code{TeX-modes} to @code{nil}, +because they don't leave unused autoloads persisted.) @node Advice for package providers @section Providing @AUCTeX{} as a package @@ -401,6 +406,7 @@ There are people that prefer the built-in Emacs modes for editing @TeX{} files, in particular plain @TeX{} users. There are various ways to tell @AUCTeX{} even after auto-activation that it should not get used, and they are described in +@c FIXME: It doesn't seem that these references discuss this topic. @ifset rawfile the @file{README} file. @end ifset @@ -412,6 +418,12 @@ So if you have users that don't want to use the preinstalled @AUCTeX{}, they can easily get rid of it. Activating @AUCTeX{} by default is therefore a good choice. +First of all, you can install @acronym{ELPA} @AUCTeX{} package under a +directory listed in @code{package-directory-list} to have site-wide +default. + +Next, we discuss configure--make installation. + If the installation procedure did not achieve this already by placing @file{auctex.el} and @file{preview-latex.el} into a possibly existing @file{site-start.d} directory, you can do this by placing
Re: Drop tarball releases and go ELPA only
>>>>> Arash Esbati writes: > Sorry for the late response. Yes, LGTM, please go ahead and install it. Thanks, done. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Emacs 31 (git@Head) and Auctex (installed via package.el)
Hi Raman, >>>>> "T.V Raman" writes: > try setting package-quickstart to t in early-init.el That didn't make difference, either. What I did: 1. Put (setq package-quickstart t) in ~/.emacs.d/early-init.el 2. Restart emacs and M-x package-quickstart-refresh RET 3. Restart emacs and open the following file -- \documentclass{article} \begin{document} test $a$ \end{document} %%% Local Variables: %%% mode: latex %%% End: -- Then the buffer is in AUCTeX LaTeX mode. I confirmed that `package-quickstart' is actually t in that session and I have ~/.emacs.d/package-quickstart.el with AUCTeX stuff. I guess either (1) you haven't updated ~/.emacs.d/package-quickstart.el via M-x package-quickstart-refresh or (2) some package(s) you introduced are interfering with AUCTeX. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Emacs 31 (git@Head) and Auctex (installed via package.el)
Hi Raman, >>>>> "T.V Raman" writes: > check if package-quickstart contains stuff from tex-site. It doesn't, but it includes (require 'tex-site) instead. Thus I'm pretty sure that my emacs loads tex-site.el when it loads package-quickstart.el(c). > Also eliminate the local variables section That didn't make difference, either. I still think that the first step to investigate the issue further is to know your values of `major-mode-remap-alist' and `major-mode-remap-defaults' (without your workaround). Are there any reasons that it's difficult to provide them to us? Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Emacs 31 (git@Head) and Auctex (installed via package.el)
Hi Raman, >>>>> "T.V Raman" writes: > according to the auctex manual, loading tex-site will cause things to > fail, see the documentation. I suppose you are referring to these statements[1]: , | Already in version 11.81 the way to activate AUCTeX changed substantially. This should now be done with (load "auctex.el" nil t t) instead of the former (require 'tex-site) ` They mean that the _users_ aren't expected to load _explicitly_ tex-site.el in their init file ~/.emacs.d/init.el and alikes. Actually, the system init file ~/.emacs.d/elpa/auctex-x.y.z/auctex-autoloads.el , generated at ELPA AUCTeX installation, is designed to have (require 'tex-site) because it's madatory for sane operation of AUCTeX. It's there on purpose of the developpers of AUCTeX. Therefore, it *must* exist in package-quickstart.el when you enable `package-quickstart'. You said that , |When Emacs starts: | |1. (featurep 'tex-site) ==t ` in your first report[2]. I suppose that this means that your emacs loads tex-site.el via package-quickstart.el as expected and something unexpected broke the setting prepared in that tex-site.el. The preparation is done through adding some entries to `major-mode-remap-alist', thus it's important to know its value and the value of the related variable `major-mode-remap-defaults'. [1] https://www.gnu.org/software/auctex/manual/auctex/Changes.html [2] https://lists.gnu.org/archive/html/auctex-devel/2024-07/msg00054.html Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Difficulty about replacing `find-tag' (Re: Drop tarball releases and go ELPA only)
Hi Tassilo, >>>>> Tassilo Horn writes: >> | In bib-find-next: >> | bib-cite.el:947:8: Warning: ‘find-tag’ is an obsolete function (as of >> 25.1); >> | use ‘xref-find-definitions’ instead. > If you use bib-cite.el, could you please test if replacing find-tag with > xref-find-definitions actually works? No, it wouldn't. It was once replaced and reverted. See the commit db2236e0987ae93cbed06051bff6199a560b2648 Author: Arash Esbati AuthorDate: Thu Jan 7 20:42:36 2021 +0100 Commit: Arash Esbati CommitDate: Thu Jan 7 20:42:36 2021 +0100 Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Drop tarball releases and go ELPA only
Hi all, >>>>> Arash Esbati writes: > Tassilo Horn writes: >> I deleted aclocal.m4, autogen.sh, configure.ac and doc/Makefile.in as it >> seems the GNUmakefile can already generate everything from doc/. Now the make rules for some files, including INSTALL, TODO, FAQ and CHANGES, are gone. Should we revise the documentations which mention these files, or restore the rules in GNUmakefile? ,[ README.GIT ] | If you retrieved AUCTeX via Git instead of as a regular release, there | are some files that need to be generated from their respective source | files before you can continue reasonably with the instructions | detailed in the README and INSTALL files (which will not be present | otherwise). ` ,[ doc/intro.texi ] | If you are considering upgrading @AUCTeX{}, the recent changes are | described in | @ifset rawfile | the @file{CHANGES} file. | @end ifset | @ifclear rawfile | @ref{Changes}. | @end ifclear ` Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
main 0aac20e1 1/2: ; * doc/auctex.texi (Error overview): Fix a typo.
branch: main commit 0aac20e1bb5ccc7a9bafd787f8eba81ad05032c9 Author: Ikumi Keita Commit: Ikumi Keita ; * doc/auctex.texi (Error overview): Fix a typo. --- doc/auctex.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/auctex.texi b/doc/auctex.texi index 2d711fec..cb0c0ce6 100644 --- a/doc/auctex.texi +++ b/doc/auctex.texi @@ -4062,7 +4062,7 @@ In this window you can visit the error on which point is by pressing @key{p} respectively. A prefix argument to these keys specifies how many errors to move forward or backward. You can visit an error also by clicking on its message. Jump to error point in the source code with -@key{j}, and use @key{l} see the error in the log buffer. In addition, +@key{j}, and use @key{l} to see the error in the log buffer. In addition, you can toggle visibility of bad boxes, generic warnings, and ignored warnings with @key{b}, @key{w}, and @key{x}, respectively (see @ref{Ignoring warnings} for details). Press @key{q} to quit the
main 28599717 2/2: Don't show confusing message
branch: main commit 28599717fb1d1d15cbd2a0e80cf9b73852e01645 Author: Ikumi Keita Commit: Ikumi Keita Don't show confusing message * tex.el (TeX-TeX-sentinel-check): Don't leave message suggesting invalid key bind when error overview window is opened. --- tex.el | 9 ++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/tex.el b/tex.el index ab743d24..93f22520 100644 --- a/tex.el +++ b/tex.el @@ -8502,9 +8502,12 @@ Return nil only if no errors were found." (file-exists-p (TeX-match-buffer 1))) (throw 'found t (progn -(message "%s errors in `%s'. Use %s to display." name (buffer-name) - (substitute-command-keys - "[TeX-next-error]")) +(if TeX-error-overview-open-after-TeX-run +;; Don't leave inconsistent message. +(message nil) + (message "%s errors in `%s'. Use %s to display." name (buffer-name) + (substitute-command-keys +"[TeX-next-error]"))) (setq TeX-command-next TeX-command-default) ;; error reported to TeX-error-report-switches (setq TeX-error-report-switches
main updated (406ae0e2 -> 28599717)
ikumi pushed a change to branch main. from 406ae0e2 Require cl-lib and subr-x at compile- and runtime new 0aac20e1 ; * doc/auctex.texi (Error overview): Fix a typo. new 28599717 Don't show confusing message Summary of changes: doc/auctex.texi | 2 +- tex.el | 9 ++--- 2 files changed, 7 insertions(+), 4 deletions(-)
main eb9a9dca: Documentation cleanups
branch: main commit eb9a9dca71ce20048668f50a286b6463890d0723 Author: Ikumi Keita Commit: Ikumi Keita Documentation cleanups * GNUmakefile: Make "make clean" actually remove generated info files. * doc/auctex.texi (Fontification of macros, Selecting a Command): (I/O Correlation): Prefer `with-eval-after-load' over `eval-after-load' in code examples. * doc/auctex.texi (Folding, Selecting a Command): Improve usage of @var. (European): Fix typo. * doc/install.texi (Customizing): Improve markup. * doc/preview-readme.texi: Simplify. * doc/quickstart.texi (Editing Facilities): Fix indent. (Processing Facilities): Fix spacing and typo. --- GNUmakefile | 11 +- doc/auctex.texi | 57 - doc/install.texi| 2 +- doc/preview-readme.texi | 14 doc/quickstart.texi | 6 +++--- 5 files changed, 41 insertions(+), 49 deletions(-) diff --git a/GNUmakefile b/GNUmakefile index ad663a56..fd9948f2 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -27,7 +27,7 @@ PDFLATEX=pdfla$(TEX) PDFTEX=pdf$(TEX) MANUALS=auctex preview-latex -INFO_FILES=$(MANUALS:=.info) +INFO_FILES:=$(addprefix doc/, $(MANUALS:=.info)) TEXMFGEN:=$(shell sed -n 's/^%.*file[{]\([^}.]*\.[sdc][tef][yfg]\)[}].*/\1/p' latex/preview.dtx) LATEX_FILES:=$(patsubst %, latex/%, $(shell echo $$(echo "$(TEXMFGEN)"))) @@ -40,7 +40,7 @@ MAIN_GENERATED_FILES=README \ $(LATEX_FILES) ALL_GENERATED_FILES=$(MAIN_GENERATED_FILES)\ - dir \ + doc/dir \ $(INFO_FILES) # Generate & compile everything including the manuals below doc/. @@ -86,7 +86,6 @@ elpa: $(MAIN_GENERATED_FILES) ChangeLog clean: rm -f $(ALL_GENERATED_FILES) \ $(wildcard *.elc style/*.elc) \ - $(LATEX_FILES) \ $(wildcard latex/*.aux latex/*.drv latex/*.hd latex/*.log) \ $(wildcard latex/*.out latex/*.pdf latex/*.tar.gz) \ latex/preview-mk.ins latex/preview.ins \ @@ -141,11 +140,11 @@ doc/tex-ref.pdf: doc/tex-ref.tex # Copied&adapted from doc/Makefile.in. TEXI_SOURCES:=$(wildcard doc/*.texi) doc/version.texi doc/preview-dtxdoc.texi -$(INFO_FILES): %.info: $(TEXI_SOURCES) +$(INFO_FILES): doc/%.info: $(TEXI_SOURCES) cd doc; $(MAKEINFO) --no-split $*.texi -dir: $(INFO_FILES) - for f in $(INFO_FILES); do $(INSTALL_INFO) --info-dir=doc doc/$$f; done +doc/dir: $(INFO_FILES) + for f in $(INFO_FILES); do $(INSTALL_INFO) --info-dir=doc $$f; done $(LATEX_FILES): latex/preview.dtx latex/bootstrap.ins cd latex; $(TEX) '\nonstopmode \input bootstrap.ins' diff --git a/doc/auctex.texi b/doc/auctex.texi index cb0c0ce6..c8075187 100644 --- a/doc/auctex.texi +++ b/doc/auctex.texi @@ -2339,12 +2339,12 @@ to remove highlighting of footnotes as references you can put the following stanza into your init file: @lisp -(eval-after-load "font-latex" - '(setq-default -font-latex-match-reference-keywords-local -(remove (assoc-string "footnote" -font-latex-match-reference-keywords-local) -font-latex-match-reference-keywords-local))) +(with-eval-after-load 'font-latex + (setq-default + font-latex-match-reference-keywords-local + (remove (assoc-string "footnote" + font-latex-match-reference-keywords-local) + font-latex-match-reference-keywords-local))) @end lisp But note that this means fiddling with @fontlatex{}'s internals and is @@ -2851,11 +2851,11 @@ original source text. @item @code{nil}: @AUCTeX{} never reveals. @item -@var{SYMBOL}: The value of @var{SYMBOL} is used as a boolean flag. If -@var{SYMBOL} isn't bound as a variable, it is treated as @code{nil}. +@var{symbol}: The value of @var{symbol} is used as a boolean flag. If +@var{symbol} isn't bound as a variable, it is treated as @code{nil}. @item -Cons cell @code{(@var{FUNCTION} . @var{ARGUMENTS})}: @AUCTeX{} calls the -@var{FUNCTION} with arbitrary number of @var{ARGUMENTS}. The return value +Cons cell @code{(@var{function} . @var{arguments})}: @AUCTeX{} calls the +@var{function} with arbitrary number of @var{arguments}. The return value is regarded as a boolean flag. @end itemize @@ -3208,10 +3208,10 @@ example, if you wanted to add a command for running a program called following form. @lisp -(eval-after-load "tex" - '(add-to-list 'TeX-command-list -'("Foo" "foo %s" TeX-run-command t t :help "Run foo") -t)) +(with-eval-after-load 'tex + (add-to-list 'TeX-command-list + '("Foo" "foo %s" TeX-run-command t t :help "Run foo&
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > And IIUC loading AUCTeX out of the local repo now only needs: > (load "~/development/auctex/auctex-autoloads.el" nil t t) > instead of the old: > (setq TeX-data-directory "~/development/auctex" > TeX-lisp-directory TeX-data-directory) > (load "~/development/auctex/auctex.el" nil t t) > (load "~/development/auctex/preview-latex.el" nil t t) It seems that we have to arrange the Info path additionally. I need this piece of code in my init.el: (with-eval-after-load 'info (add-to-list 'Info-additional-directory-list "~/repo/auctex/auctex/doc/")) In addition, if we "make" auctex-autoloads.el with Emacs<29, > (load "~/development/auctex/auctex-autoloads.el" nil t t) fails to load tex-site.el because that auctex-autoloads.el lacks the arrangement for `load-path'. Maybe we should in GNUmakefile cater for only Emacs>=29 and simplify AUTOLOAD: , | # If we were depending on emacs 29.1, we could simply use | # loaddefs-generate. If we were depending on 28.1, we could still use | # update-directory-autoloads... | AUTOLOAD=--eval '\ | (let* ((autoload-file (expand-file-name "$@")) \ |(autoload-file-dir (file-name-directory autoload-file))) \ | (if (fboundp `loaddefs-generate) \ | (loaddefs-generate autoload-file-dir autoload-file \ | (list "tex-wizard.el") \ | "(add-to-list `load-path\n\ |(directory-file-name\n\ | (file-name-directory load-file-name)))")\ | (mapc (lambda (file) \ | (update-file-autoloads file nil autoload-file)) \ | command-line-args-left)) \ | (save-buffers-kill-emacs t))' ` Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Drop tarball releases and go ELPA only
Hi All, >>>>> Arash Esbati writes: > Tassilo Horn writes: >> Aren't INSTALL, TODO, FAQ, and CHANGES just the text versions of the >> corresponding texi/info files that are included in the manual anyway? > Yes, this is my understanding. >> I wonder why someone would look at them when the fine manual is >> already there. > I agree for TODO and FAQ, but I look usually for INSTALL and CHANGES as > text files when I unpack something; maybe it is just a habit. Then I suppose we can just discard these rules and should revise the document. I attach a WIP patch. In addition, it seems to me that we can delete yet more files on main branch. - RELEASE - ChangeLog-preview - changeLog-preview.1 - doc/copying.texi because it discusses only preview-latex, not AUCTeX as a whole, and it isn't the same as COPYING, and it isn't included in any other texinfo files. What do you think? >> Or we convert NEWS.org into some NEWS.texi file using some incantation >> of "emacs -Q --batch -f org-texinfo-export-to-texinfo-batch ..." > I had to do: > emacs -Q --batch --eval "(require 'ox-texinfo)" \ > -f org-texinfo-export-to-texinfo-batch NEWS.org NEWS.texi >> and include that in place of changes.texi. (It would be even better >> when we somehow add the entries from changes.texi in NEWS.org before >> so that the history is complete...) > The output is attached. I'm not sure if we can include the result in > auctex.texi without further massaging. I tried. It seems that it can't just be included in auctex.texi. The result is many warnings quoted below and no info file is generated: NEWS.texi:3: warning: @setfilename after the first element NEWS.texi:4: warning: multiple @settitle NEWS.texi:9: warning: @dircategory after first node NEWS.texi:10: warning: @direntry after first node NEWS.texi:15: warning: multiple @titlepage NEWS.texi:16: warning: multiple @title NEWS.texi:22: warning: multiple @top NEWS.texi:21: @node `Top' previously defined auctex.texi:57: here is the previous definition as @node auctex.texi:131: @menu reference to nonexistent node `Indices' auctex.texi:6129: @menu reference to nonexistent node `Development' auctex.texi:6130: @menu reference to nonexistent node `FAQ' auctex.texi:6131: @menu reference to nonexistent node `Texinfo mode' auctex.texi:230: @detailmenu reference to nonexistent node `Development' auctex.texi:231: @detailmenu reference to nonexistent node `FAQ' auctex.texi:232: @detailmenu reference to nonexistent node `Texinfo mode' auctex.texi:240: @detailmenu reference to nonexistent node `Key Index' auctex.texi:241: @detailmenu reference to nonexistent node `Function Index' auctex.texi:242: @detailmenu reference to nonexistent node `Variable Index' auctex.texi:243: @detailmenu reference to nonexistent node `Concept Index' NEWS.texi:21: warning: node `Top' lacks menu item for `[Unreleased]' despite being its Up target NEWS.texi:21: warning: node `Top' lacks menu item for `[1406] - 2024-06-30' despite being its Up target NEWS.texi:21: warning: node `Top' lacks menu item for `[1405] - 2024-05-19' despite being its Up target NEWS.texi:21: warning: node `Top' lacks menu item for `[1404] - 2024-03-31' despite being its Up target NEWS.texi:21: warning: node `Top' lacks menu item for `[1403] - 2024-02-20' despite being its Up target NEWS.texi:21: warning: node `Top' lacks menu item for `[1402] - 2024-02-09' despite being its Up target NEWS.texi:21: warning: node `Top' lacks menu item for `[1401] - 2024-02-08' despite being its Up target What I did was to replace @include changes.texi in auctex.texi with @include NEWS.texi and to run "makeinfo auctex.texi". >> (It would be even better when we somehow add the entries from >> changes.texi in NEWS.org before so that the history is complete...) I think we don't have to care completeness much. Much older change logs are recorded only in history.texi and appears nowhere in the current AUCTeX manual. (It just says See the file @file{history.texi} for older changes. in auctex.texi.) So I basically agree with Arash's proposal: > This will probably turn into "Read NEWS.org". (However, this has one possible drawback; users who want to upgrade can't see what's new on https://elpa.gnu.org/packages/doc/auctex.html in advance.) Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW 0001-temporal-commit.patch.gz Description: WIP patch
Re: Insert font menu in Texinfo mode
Hi Arash, >>>>> Arash Esbati writes: > This is the whole change: Looks good to me :-) Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > Yes, indeed, but IIRC we needed something like that also with the old > installation method. I see. >> Maybe we should in GNUmakefile cater for only Emacs>=29 and simplify >> AUTOLOAD: >> , >> | # If we were depending on emacs 29.1, we could simply use >> | # loaddefs-generate. If we were depending on 28.1, we could still use >> | # update-directory-autoloads... >> | AUTOLOAD=--eval '\ >> | (let* ((autoload-file (expand-file-name "$@")) \ >> |(autoload-file-dir (file-name-directory autoload-file))) \ >> | (if (fboundp `loaddefs-generate) \ >> | (loaddefs-generate autoload-file-dir autoload-file \ >> | (list "tex-wizard.el") \ >> | "(add-to-list `load-path\n\ >> |(directory-file-name\n\ >> | (file-name-directory >> load-file-name)))")\ >> | (mapc (lambda (file) \ >> | (update-file-autoloads file nil autoload-file)) \ >> | command-line-args-left)) \ >> | (save-buffers-kill-emacs t))' >> ` > Maybe I'm missing the point, but which change do you have on your mind > in order to fix the issue mentioned above? On second thought, I came to think that we should retain compatibility for Emacs<29. Otherwise it would be difficult to check whether the future ELPA release has the compatibility or not. So how about one like this? (let* ((autoload-file (expand-file-name "$@")) \ (autoload-file-dir (file-name-directory autoload-file)) \ (addition-text "(add-to-list (quote load-path)\n\ (directory-file-name\n\ (file-name-directory load-file-name)))" )) \ (if (fboundp `loaddefs-generate) \ (loaddefs-generate autoload-file-dir autoload-file \ (list "tex-wizard.el") \ addition-text)\ (mapc (lambda (file) \ (update-file-autoloads file nil autoload-file)) \ command-line-args-left) \ (write-region addition-text nil autoload-file t)) \ (save-buffers-kill-emacs t))' (I haven't tested it yet.) Additionally, we can include auctex.el and lpath.el in the excluded file list. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
main 203de05f: Revise document for main branch
branch: main commit 203de05f501cd27e79c0ae05436227b7b9101d77 Author: Ikumi Keita Commit: Ikumi Keita Revise document for main branch Discard instructions for configure&make installation. Discard mentions on CAPITAL name files like INSTALL, CHANGES. Arrange description about `use-package' usage. --- README.GIT| 20 +- doc/changes.texi | 10 +- doc/faq.texi | 62 ++ doc/install.texi | 508 -- doc/intro.texi| 26 +-- doc/preview-faq.texi | 22 +- doc/preview-problems.texi | 24 --- doc/preview-readme.texi | 20 +- doc/quickstart.texi | 30 +-- doc/todo.texi | 17 +- doc/wininstall.texi | 362 - 11 files changed, 94 insertions(+), 1007 deletions(-) diff --git a/README.GIT b/README.GIT index b33747cf..8b1b27a3 100644 --- a/README.GIT +++ b/README.GIT @@ -1,20 +1,22 @@ Organization of the repository ** -This repository has currently three branches: +This repository has several branches: * 'main': the main branch of development of AUCTeX; * 'master': the old main branch of development of AUCTeX; not used anymore; +Other branches are feature branches. They are created and deleted from +time to time. To name a few: + * 'simplify-TeX-parse-error': a feature branch for improving parsing of TeX logs; * 'gendocspatch': keeps a patch to build on-line manuals and is - intended to be used only by AUCTeX maintainers. Unless you are one - of them and know how to handle it, you really do not want to pull - this branch as it will be rebased frequently. + intended to be used only by AUCTeX maintainers. Obsoleted by + introduction of the 'main' branch. Installation information @@ -22,11 +24,11 @@ Installation information If you retrieved AUCTeX via Git instead of as a regular release, there are some files that need to be generated from their respective source files before you can continue reasonably with the instructions -detailed in the README and INSTALL files (which will not be present -otherwise). +detailed in the README file (which will not be present otherwise). Run "make" in order to do that. This will also generate the respective -files for the preview subsystem. +files for the preview subsystem. Be sure to use GNU make, otherwise it +will fail. -You will need to have a working and rather current copy of `makeinfo', -`autoconf' and of `perl'. +You will need to have a working and rather current copy of `makeinfo' +and `perl'. diff --git a/doc/changes.texi b/doc/changes.texi index 496aa799..2ca681bd 100644 --- a/doc/changes.texi +++ b/doc/changes.texi @@ -3,10 +3,6 @@ @c Foundation, Inc. @c See file auctex.texi for copying conditions. @include macros.texi -@ifset rawfile -@chapheading Changes and New Features in @AUCTeX{} - -@end ifset @heading News in 14.1 @@ -1448,7 +1444,7 @@ More detailed information can be found in the installation instructions (file @file{INSTALL}). @end ifset @ifclear rawfile -@xref{Loading the package}. +@xref{Activating the package}. @end ifclear @item @@ -1914,10 +1910,10 @@ it started. The build process was enhanced and is now based on @code{autoconf} making installing @AUCTeX{} a mostly automatic process. See @ifset rawfile -the files @file{INSTALL} and @file{INSTALL.windows} +the files @file{INSTALL}@c and @file{INSTALL.windows} @end ifset @ifclear rawfile -@ref{Installation} and @ref{Installation under MS Windows} +@ref{Installation}@c and @ref{Installation under MS Windows} @end ifclear for details. @end itemize diff --git a/doc/faq.texi b/doc/faq.texi index cd71ac95..b8bd4c7a 100644 --- a/doc/faq.texi +++ b/doc/faq.texi @@ -1,10 +1,6 @@ @c This is part of the AUCTeX Manual. @c Copyright (C) 2004-2024 Free Software Foundation, Inc. @c See the file auctex.texi for copying conditions. -@ifset rawfile -@include macros.texi -@chapheading Frequently Asked Questions about @AUCTeX{} -@end ifset @c We should switch to sectioning commands instead of items when this @c list grows. Keep in mind to formulate short questions because @@ -19,11 +15,9 @@ issue, then come back here and proceed. Well, you might have guessed it, the first place to look is in the available documentation packaged with @AUCTeX{}. This could be the -release notes (in the @file{RELEASE} file) or the news section of the -manual in case you are experiencing problems after an upgrade, the -@file{INSTALL} file in case you are having problems with the -installation, the section about bugs in the manual in case you -encountered a bug or the relevant sections in the manual for other +@file{README} file or @file{NEWS.org} file in case you are experiencing +problems after a
Re: Drop tarball releases and go ELPA only
>>>>> Arash Esbati writes: > Thanks for starting this. I had a brief look, at LGTM. Do you want to > install it on main or on a temp branch? I think we have to optimize it > here and there, but overall it looks good. OK, I installed the change in the main branch. > One thing I'd like to get into the manual is snippets for using AUCTeX > with `use-package', e.g., > (use-package auctex > :init > (load "~/development/auctex/auctex-autoloads.el" nil t t) > (with-eval-after-load 'info > (add-to-list 'Info-additional-directory-list > "~/development/auctex/doc"))) > in the section for loading out of a local repo. I included that as well. In addition, I changed the recipe for standard ELPA installation from (use-package tex :ensure auctex) to more standard form (use-package auctex :ensure t) . Now it defers loading tex.el(c) at startup time. >> In addition, it seems to me that we can delete yet more files on main >> branch. >> - RELEASE >> - ChangeLog-preview >> - changeLog-preview.1 >> - doc/copying.texi because it discusses only preview-latex, not AUCTeX >> as a whole, and it isn't the same as COPYING, and it isn't included in >> any other texinfo files. >> What do you think? > I think we can do that. OK, I'll do that at some later time. (And I'll delete install-sh and mkinstalldirs as well.) > It seems to me that `org-texinfo-export-to-texinfo-batch' generates > stand-alone .texi files and not ones intended to be included somewhere > else. Agreed. > Hmm, actually the exercise with NEWS.org began in order to get something > in the NEWS section on the ELPA page: > https://elpa.gnu.org/packages/auctex.html Hmm, then it will be mostly enough, I suppose. > I hope the changes are placed more prominently now. But yes, they will > be missing in the manual. The Changes section in the manual still includes changes.texi. I'll change that to intruction to see NEWS.org. (And we should transfer the contents of changes.texi into history.texi?) Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > Do you have an older Emacs available? Depending on the output of > `update-file-autoloads', we could probably prettify the genereated file > with somethin like this (I removed the EOL-masks for easier editing): I have to add "(save-some-buffers t)" before `with-temp-file'. The arragned result is: AUTOLOAD=--eval '\ (let* ((autoload-file (expand-file-name "$@")) \ (autoload-file-dir (file-name-directory autoload-file)) \ (addition-code "(add-to-list (quote load-path)\n\ (directory-file-name\n\ (file-name-directory load-file-name)))")) \ (if (fboundp (quote loaddefs-generate)) \ (loaddefs-generate autoload-file-dir autoload-file \ (list "tex-wizard.el" "auctex.el" "lpath.el") \ addition-code) \ (setq generated-autoload-file autoload-file) \ (update-directory-autoloads autoload-file-dir) \ (save-some-buffers t) \ (with-temp-file autoload-file \ (insert-file-contents autoload-file) \ (cond ((progn (goto-char (point-min)) \ (re-search-forward "^;;; Code:" nil t)) \ (newline 2)) \ ((progn (goto-char (point-min)) \ (re-search-forward "^$$")) \ (open-line 2)) \ (t (goto-char (point-max \ (insert addition-code))) \ (save-buffers-kill-emacs t))' auctex-autoloads.el: rm -f $@ $(EMACS) $(AUTOLOAD) I made use of `update-directory-autoloads'. Emacs 27.1 does have it while it doesn't `make-directory-autoloads', so we can dispense of mapc+update-file-autoloads and $(wildcard *.el) in the make rule. Emacs 27.1, 28.2 and 29.4 works with the above settings. :-) Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
main 8ebe9ad8: Add warning in documentation
branch: main commit 8ebe9ad8330014e3094c40c930c9567512a3aed9 Author: Ikumi Keita Commit: Ikumi Keita Add warning in documentation * doc/install.texi (Customizing): Mention caveat of running `TeX-auto-generate-global'. --- doc/install.texi | 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/doc/install.texi b/doc/install.texi index d3e1c4a9..92a5dd36 100644 --- a/doc/install.texi +++ b/doc/install.texi @@ -216,7 +216,6 @@ accessible directly by typing @kbd{M-x customize-option @key{RET} @var{option} @defopt TeX-macro-global Directories containing the site's @TeX{} style files. -@end defopt Normally, @AUCTeX{} will only allow you to complete macros and environments which are built-in, specified in @AUCTeX{} style files or @@ -230,6 +229,11 @@ subdirectories explicitly. Automatic configuration will already have set the variable for you if it could use the program @command{kpsewhich}. In this case you normally don't have to alter anything. +Note that @code{TeX-auto-generate-global} is not so smart and it can +introduce unexpected side effects as discussed in +@uref{https://lists.gnu.org/r/auctex/2021-01/msg00037.html}. +@end defopt + @c Local Variables: @c mode: Texinfo @c TeX-master: "auctex"
main e8956d25: Fix for Emacs<29 to work with local Git repo
branch: main commit e8956d252378288f0956ad64426967dd8d4a8dca Author: Ikumi Keita Commit: Ikumi Keita Fix for Emacs<29 to work with local Git repo * GNUmakefile: Fix autoload generation code to embed load-path arrangement in auctex-autoloads.el even for Emacs<29. --- GNUmakefile | 33 + 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/GNUmakefile b/GNUmakefile index fd9948f2..d73c77b1 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -49,25 +49,34 @@ all: $(ALL_GENERATED_FILES) compile auctex-autoloads.el compile: $(patsubst %.el,%.elc,$(wildcard *.el style/*.el)) tex-site.elc # If we were depending on emacs 29.1, we could simply use -# loaddefs-generate. If we were depending on 28.1, we could still use -# update-directory-autoloads... +# loaddefs-generate... AUTOLOAD=--eval '\ (let* ((autoload-file (expand-file-name "$@")) \ - (autoload-file-dir (file-name-directory autoload-file))) \ - (if (fboundp `loaddefs-generate) \ + (autoload-file-dir (file-name-directory autoload-file)) \ + (addition-code "(add-to-list (quote load-path)\n\ + (directory-file-name\n\ + (file-name-directory load-file-name)))")) \ + (if (fboundp (quote loaddefs-generate)) \ (loaddefs-generate autoload-file-dir autoload-file \ - (list "tex-wizard.el") \ - "(add-to-list `load-path\n\ - (directory-file-name\n\ - (file-name-directory load-file-name)))")\ -(mapc (lambda (file) \ -(update-file-autoloads file nil autoload-file)) \ - command-line-args-left)) \ + (list "tex-wizard.el" "auctex.el" "lpath.el") \ + addition-code) \ +(setq generated-autoload-file autoload-file) \ +(update-directory-autoloads autoload-file-dir) \ +(with-temp-file autoload-file \ + (insert-file-contents autoload-file) \ + (cond ((progn (goto-char (point-min)) \ +(re-search-forward "^;;; Code:" nil t)) \ + (newline 2)) \ +((progn (goto-char (point-min)) \ +(re-search-forward "^$$")) \ + (open-line 2)) \ +(t (goto-char (point-max \ + (insert addition-code))) \ (save-buffers-kill-emacs t))' auctex-autoloads.el: rm -f $@ - $(EMACS) $(AUTOLOAD) $(wildcard *.el) + $(EMACS) $(AUTOLOAD) %.elc: %.el $(EMACS) -f batch-byte-compile $<
Re: Drop tarball releases and go ELPA only
>>>>> Arash Esbati writes: > Thanks, I think this more testing than we ever had ;-) So please go > ahead and push this as well. Done. It turned out that `save-some-buffers' isn't necessary for `update-directory-autoloads', so I deleted it after all. (It was needed for only `update-file-autoloads'.) Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Drop tarball releases and go ELPA only
>>>>> Arash Esbati writes: > Ikumi Keita writes: >> The Changes section in the manual still includes changes.texi. I'll >> change that to intruction to see NEWS.org. (And we should transfer the >> contents of changes.texi into history.texi?) > Yes, In think that makes sense in terms of: Changes for v14+ in > NEWS.org, and older material in history.texi. Do you think the v14 change should remain in changes.texi? Or we should delete changes.texi itself after changes> I changed the recipe for standard >> ELPA installation from >> (use-package tex >> :ensure auctex) >> to more standard form >> (use-package auctex >> :ensure t) >> . Now it defers loading tex.el(c) at startup time. > 🙏 Hmm, maybe we should further improve the settings. According to `use-package' documentation, (use-package foo) `require's foo.el at that time. Thus it is expected that the library foo.el is loaded at emacs startup and available immediately when the user tries to use its functionality. When certain keyword(s) is given, `use-package' defers the `require'. For example, (use-package foo :defer t ...) In this case, the library foo.el is loaded by autoload and it takes small amount of time when its functionalilty is requested by the user the first time. Currently, AUCTeX doesn't conform to this expectation of `use-package'. Both (use-package auctex) and (use-package auctex :defer t) do the same thing because auctex.el contains nothing meaningful for ELPA installation. (On contrary, the former recommended form (use-package tex :ensure auctex) loads the main AUCTeX library tex.el at startup.) Does this count as a matter we should sort out? If so, I suppose we should add (require 'tex) in auctex.el. (Speaking of revising auctex.el, I think we should now delete this -- (autoload 'TeX-load-hack (expand-file-name "tex-site.el" (file-name-directory load-file-name))) (TeX-load-hack) ------ from auctex.el anyway. If I understand correctly, this is only necessary for configure&make installation.) Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
main 52911e62: Arrange the documentations about update history
branch: main commit 52911e62118c61b3e023250a2ac0e5def62a2add Author: Ikumi Keita Commit: Ikumi Keita Arrange the documentations about update history * doc/changes.texi: * doc/history.texi: Move entries before v14 in changes.texi into history.texi, and delete changes.texi. * doc/auctex.texi (Changes): Don't include changes.texi and instruct to see NEWS.org and web page instead. * doc/intro.texi (Summary): Arrange the instruction how to see recent updates. --- doc/auctex.texi | 21 +- doc/changes.texi | 2013 -- doc/history.texi | 1757 +++ doc/intro.texi | 12 +- 4 files changed, 1780 insertions(+), 2023 deletions(-) diff --git a/doc/auctex.texi b/doc/auctex.texi index c8075187..d68c4fbd 100644 --- a/doc/auctex.texi +++ b/doc/auctex.texi @@ -6153,12 +6153,25 @@ The full license text can be read here: @node Changes @appendixsec Changes and New Features -@lowersections -@include changes.texi -@raisesections +Recent changes are listed +@ifinfo +in @file{NEWS.org} file available at your @acronym{ELPA} @AUCTeX{} +contents directory, typically @file{~/.emacs.d/elpa/auctex-x.y.z/} where +@samp{x.y.z} is the version number of the installed @AUCTeX{}. + +You can also see the same content +@end ifinfo +at @uref{https://elpa.gnu.org/packages/auctex.html, @acronym{ELPA} +@AUCTeX{} page}. @subheading Older versions -See the file @file{history.texi} for older changes. +See the file @file{history.texi} for older changes. It is available at +@ifinfo +@samp{doc} subdirectory of @acronym{ELPA} @AUCTeX{} contents directory. +@end ifinfo +@ifnotinfo +@AUCTeX{} Git repository. +@end ifnotinfo @node Development @appendixsec Future Development diff --git a/doc/changes.texi b/doc/changes.texi deleted file mode 100644 index 2ca681bd.. --- a/doc/changes.texi +++ /dev/null @@ -1,2013 +0,0 @@ -@c This is part of the AUCTeX manual. -@c Copyright (C) 1994-2002, 2004-2010, 2012-2024 Free Software -@c Foundation, Inc. -@c See file auctex.texi for copying conditions. -@include macros.texi - -@heading News in 14.1 - -@itemize @bullet -@item -@AUCTeX{} can be used with indirect buffers cloned from buffers visiting a -file. This feature allows having different perspectives of the same -buffer (narrowing, folding, previewing, etc). The indirect buffer has the -same master file as its base buffer. - -In indirect buffer, @previewlatex{} works naturally for region preview -such as @code{preview-region} (@kbd{C-c C-p C-r}), but document preview -@code{preview-document} (@kbd{C-c C-p C-d}) puts preview images in the -base buffer, not in the indirect buffer itself. We expect this behavior -doesn't matter because of the users' intent. - -@item -@AUCTeX{} changes major mode names. Its primary purpose is to avoid -conflicts with Emacs built-in @TeX{} major modes. It also improves -consistency of the source code. - -@itemize @minus -@item -The overview of the former names and new names are: - -@multitable {@code{japanese-plain-tex-mode}} {@code{japanese-plain-TeX-mode}} -@headitem Former name @tab New name -@item @code{plain-tex-mode} @tab @code{plain-TeX-mode} -@item @code{latex-mode} @tab @code{LaTeX-mode} -@item @code{doctex-mode} @tab @code{docTeX-mode} -@item @code{context-mode} @tab @code{ConTeXt-mode} -@item @code{texinfo-mode} @tab @code{Texinfo-mode} -@item @code{ams-tex-mode} @tab @code{AmSTeX-mode} -@item @code{japanese-plain-tex-mode} @tab @code{japanese-plain-TeX-mode} -@item @code{japanese-latex-mode} @tab @code{japanese-LaTeX-mode} -@end multitable - -The undocumented modes @code{context-en-mode} and @code{context-nl-mode} -were deleted. - -@item -We paid much attention to the compatibility and expect that almost no -particular treatment on the user side is needed. For example, the names -of the keymaps and mode hooks remain unchanged, and the @samp{mode:} tag -in the file local variables in the existing files works with old mode -names. See below for more details. - -@item -If your Emacs is 29 or newer and you use @file{desktop.el} to save and -restore Emacs sessions, be careful before you update @AUCTeX{}; You should -attempt to update only after -@enumerate -@item -you kill all buffer under former @AUCTeX{} modes which have overlapped -name with Emacs built-in @TeX{} modes, and -@item -you terminate the current Emacs session. -@end enumerate -The modes with such overlapped name are @code{plain-tex-mode}, -@code{latex-mode}, @code{doctex-mode} and @code{texinfo-mode}. (The above -prescription ensures no buffer of such modes is recorded in the desktop -file. Otherwise those buffers would be restored in the built-in modes, -not @AUCTeX{} modes, after the update of @AUCTeX{}.) - -@item -New mode names are chosen to match the existing variables, so most user -customizations as well as the third party libraries would continue to work -without mod
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > I recommend the latter: Delete the couple of v14 changes we have, move > the entire chapter into history.texi and delete changes.texi. OK, done. >> Does this count as a matter we should sort out? If so, I suppose we >> should add >> (require 'tex) >> in auctex.el. > Why should we load that huge file at startup? Am I missing something? I suppose that usres of `use-package' who impose immediate loading on purpose think that "I always use package foo in my emacs session and want to use it without autoloading delay when I begin to work on matters requiring foo. For me, loading foo.el always happens sooner or later, and I don't care the increment of emacs startup time. Thus foo should be loaded at emacs startup." (For AUCTeX, such users might as well do (use-package latex :after (tex)) additionally?) > We could replace that with the FIXME added by Stefan M.: > (require 'tex-site > (expand-file-name "tex-site.el" >(file-name-directory load-file-name))) > which is probably redundant: The feature tex-site is t when use-package > loads auctex.el and the form does nothing, but it is still much less > heavy than loading tex.el. It couldn't actually be in that form when we had to ensure that (unload-feature 'tex-site) to work for configure&make installation, but now we can. Hmm, it would be better for local Git repo users who still have (load "~/Development/auctex/auctex.el nil t t) in their config, than just removing the relevant code as I suggested...? Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
main 3cb63537: ; * doc/install.texi (Installation): Add instruction.
branch: main commit 3cb63537d4fcbcef92d239c0717609b358bbc261 Author: Ikumi Keita Commit: Ikumi Keita ; * doc/install.texi (Installation): Add instruction. --- doc/install.texi | 8 +++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/doc/install.texi b/doc/install.texi index 92a5dd36..709b803a 100644 --- a/doc/install.texi +++ b/doc/install.texi @@ -11,7 +11,13 @@ Archive. To install @AUCTeX{}, simply do @kbd{M-x list-packages hit @kbd{x} to execute the installation procedure. That's all. Caution. If you have installed former @AUCTeX{} as regular tarball -release, uninstall it to avoid possible troubles. +release, uninstall it and delete the initialization codes +@lisp +(load "auctex.el" nil t t) +(load "preview-latex.el" nil t t) +@end lisp +@noindent +in your init file. Otherwise you'll get into troubles. @code{use-package} users can use this simple recipe in their @code{user-init-file} which essentially does the same as the manual
main d02011de: Simplify GNUmakefile and tex-site.el.in
branch: main commit d02011deede6c8a4aa43e9cb008477cf8d04d6c8 Author: Ikumi Keita Commit: Ikumi Keita Simplify GNUmakefile and tex-site.el.in * GNUmakefile: * tex-site.el.in Do constant replacement in advance. --- GNUmakefile| 5 + tex-site.el.in | 8 +--- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/GNUmakefile b/GNUmakefile index d73c77b1..01608188 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -124,10 +124,7 @@ LASTVERSION:=$(shell grep "^;; Version:" auctex.el \ AUCTEXVERSION:=$(if $(THISVERSION),$(THISVERSION),$(LASTVERSION).$(AUCTEXDATE)) tex-site.el: tex-site.el.in - sed -e 's|@lisppackagelispdir@|(directory-file-name (file-name-directory load-file-name))|'\ - -e 's|@lisppackagedatadir@|(directory-file-name (file-name-directory load-file-name))|'\ - -e 's|@lispautodir@|(if (file-writable-p "/usr/local/var/auctex") "/usr/local/var/auctex" "~/.emacs.d/auctex")|'\ - -e 's|@AUCTEXVERSION@|$(AUCTEXVERSION)|'\ + sed -e 's|@AUCTEXVERSION@|$(AUCTEXVERSION)|'\ -e 's|@AUCTEXDATE@|$(AUCTEXDATE)|'\ $< >$@ diff --git a/tex-site.el.in b/tex-site.el.in index 1d2da038..886d2918 100644 --- a/tex-site.el.in +++ b/tex-site.el.in @@ -63,7 +63,7 @@ :load "tex" :load "latex" :load "tex-style") (defvar TeX-lisp-directory - @lisppackagelispdir@ + (directory-file-name (file-name-directory load-file-name)) "The directory where most of the AUCTeX lisp files are located. For the location of lisp files associated with styles, see the variables TeX-style-* (hand-generated lisp) and @@ -72,11 +72,13 @@ TeX-auto-* (automatically generated lisp).") (add-to-list 'load-path TeX-lisp-directory) (defvar TeX-data-directory - @lisppackagedatadir@ + (directory-file-name (file-name-directory load-file-name)) "The directory where the AUCTeX non-Lisp data is located.") (defcustom TeX-auto-global - @lispautodir@ + (if (file-writable-p "/usr/local/var/auctex/") + "/usr/local/var/auctex/" +(concat user-emacs-directory "auctex/")) "Directory containing automatically generated information. For storing automatic extracted information about the TeX macros
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > My only concern is why AUCTeX should recommend users to pass other > package names to `use-package' instead of auctex which can be confusing? > So things like > (use-package auctex > :config > (require 'tex)) > would also work, right? Yes, I think so. >> Hmm, it would be better for local Git repo users who still have >> (load "~/Development/auctex/auctex.el nil t t) > Does this form work at all? I tried that in my init file, restarted > Emacs, opened a .tex file and get: > File mode specification error: (void-function LaTeX-mode) Indeed. I suppose that loading in , | (unless (or (fboundp 'TeX-modes-set) ;Avoid inf-looping. | ... | (load "auctex-autoloads" 'noerror 'nomessage)) ` fails due to lack of arrangement of `load-path', without emitting error by 'noerror argument. Then I can't think of cases where (require 'tex-site (expand-file-name "tex-site.el" (file-name-directory load-file-name)) is useful. Do you have any? Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > Great, so let us advertise this kind of usage if needed. OK. > For me to recap, I see these use cases: > 1.) Users install AUCTeX from ELPA: > They don't have to do anything and can start using AUCTeX with: > (use-package auctex ...) I don't think this counts. During the startup initialization, emacs loads PACKAGENAME-autoloads.el of each ELPA package installed there, if I understand correctly. Thus auctex-autoloads.el runs (require 'tex-site) in it and no treatment in auctex.el is necessary. > 2.) Users load AUCTeX from a local repo: > 2b.) or do: > (use-package auctex > :init > (add-to-list 'load-path "~/path/to/auctex" t) > (load "auctex.el" nil t t)) OK, then that's basically the same with my inference of >> Hmm, it would be better for local Git repo users who still have >> (load "~/Development/auctex/auctex.el nil t t) >> in their config, than just removing the relevant code as I suggested...? . It's true that it works with such addtion of a path to `load-path'. And it seems that there are actual such users, I now agree that it would be more friendly to leave (require 'tex-site (expand-file-name "tex-site.el" (file-name-directory load-file-name)) in auctex.el. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
main 7f6a83ff: ; * doc/auctex.texi: Add an instruction to have pdf document
branch: main commit 7f6a83ff431c948d4cd6ee5626848c0025bd3ee6 Author: Ikumi Keita Commit: Ikumi Keita ; * doc/auctex.texi: Add an instruction to have pdf document --- doc/auctex.texi | 4 1 file changed, 4 insertions(+) diff --git a/doc/auctex.texi b/doc/auctex.texi index d68c4fbd..eb26606a 100644 --- a/doc/auctex.texi +++ b/doc/auctex.texi @@ -7,6 +7,10 @@ @c paragraphindent 2 @comment %**end of header @include macros.texi +@c To obtain pdf document, run "texi2pdf" directly on this file. +@c Don't use "makeinfo --pdf" (equivalently, "texi2any --pdf") instead +@c because that fails with false errors. Validity checking by texi2any +@c doesn't understand the TeX codes in this file and macros.texi. @copying This manual is for @AUCTeX{} (version @value{VERSION} from @value{UPDATED}),
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > Thanks, but here is the next issue; when applying the change (incl. the > missing closing paren), i.e.: > diff --git a/auctex.el b/auctex.el > index 2f7af507..8b15e5c1 100644 > --- a/auctex.el > +++ b/auctex.el > @@ -42,11 +42,9 @@ > ;; (require 'tex-site (expand-file-name "tex-site.el" > ;; (file-name-directory load-file-name)) > -(autoload 'TeX-load-hack > - (expand-file-name "tex-site.el" > -(file-name-directory load-file-name))) > -(TeX-load-hack) > - > +(require 'tex-site > + (expand-file-name "tex-site.el" > + (file-name-directory load-file-name))) > (provide 'auctex) > ;;; auctex.el ends here > and running make, I get: > emacs --batch -q -no-site-file -no-init-file -l lpath.el -f batch-byte-comp= > ile auctex.el > In toplevel form: > auctex.el:45:2: Error: Wrong type argument: stringp, nil > make: *** [GNUmakefile:82: auctex.elc] Error 1 > I currently can't see why I :-( Very cofusing, but I at last found out why. Since this `requre' is a top level form, byte-compiler evaluates it, and `fila-name-directory' fails because `load-file-name' is nil :-( We should add something like this: diff --git a/GNUmakefile b/GNUmakefile index 01608188..3ef225e6 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -46,7 +46,8 @@ ALL_GENERATED_FILES=$(MAIN_GENERATED_FILES) \ # Generate & compile everything including the manuals below doc/. all: $(ALL_GENERATED_FILES) compile auctex-autoloads.el -compile: $(patsubst %.el,%.elc,$(wildcard *.el style/*.el)) tex-site.elc +COMPILE_ELC= $(filter-out auctex.elc, $(patsubst %.el,%.elc,$(wildcard *.el sty le/*.el))) +compile: $(COMPILE_ELC) tex-site.elc # If we were depending on emacs 29.1, we could simply use # loaddefs-generate... Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > This will prevent auctex.el from being byte-compiled, right? If so, we > could also probably take the other approach and do: [...] > which seems easier to me ("easier" is in the eye of beholder, of course > ;-) Yes, it does the trick, too. I took my approach because it circumvents excessive invocation of "emacs -batch ..." and reduces the extra time which "make" takes (brief, but not trivial). However, I don't have strong preference about it. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > What happens then to the users who install AUCTeX from ELPA as a > package? IIUC, Emacs will then rifle through the installation directory > and byte-compile all files without any makefiles etc. That compilation > will again choke on the change above, right? Ah, sorry. You are right. I was talking about only the cases running "make" in the local Git repo. > If so, we have to go for the lisp version, or am I missing something? Yes, lisp version is mandatory. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > Thanks for confirming. So the whole change looks like this, or am I > missing something? [...] > +;; This can be used for starting up AUCTeX, e.g., when not installed > +;; ELPA. The following form should safely be undone using > +;; (unload-feature 'tex-site). Is the second sentence true? With this patch, (unload-feature 'tex-site) failed for me with Loaded libraries ("/home/keita/repo/auctex/auctex/auctex-autoloads.el" "/home/keita/repo/auctex/auctex/auctex.el") depend on /home/keita/repo/auctex/auctex/tex-site.el for initial code (add-to-list 'load-path "~/repo/auctex/auctex") (load "auctex.el" nil t t) in init.el. My understanding is that once a library foo.el is required by other lisp file(s), `unload-feature' can not undo it. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > So the conclusion is apply the patch with the comment adjusted and if > someone wants to unload tex-site, s?he has to use the FORCE arg? I think AUCTeX should rather delcare that unload tex-site isn't supported anymore. After all, that has always been the status for ELPA installation, probably since the first release of ELPA AUCTeX. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > BTW, do you have a good idea where to put > the declaration about "unload tex-site isn't supported anymore"? How about this patch? diff --git a/doc/install.texi b/doc/install.texi index c31ad152..93276c02 100644 --- a/doc/install.texi +++ b/doc/install.texi @@ -135,6 +135,14 @@ in your early init file (@pxref{Early Init File,,,emacs}). (We recommend this treatment over setting @code{TeX-modes} to @code{nil}, because it doesn't leave unused autoloads persisted.) +It is no longer possible to disable the site-wide installation by +@lisp +(unload-feature 'tex-site) +@end lisp +@noindent +, so don't use it. This was the instruction described in former versions +of this document, but now it causes error. + @node Advice for package providers @section Providing @AUCTeX{} as a package Maybe we should additionally announce it in NEWS.org. I'm neutral about its necessity. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: a rather larger inconvience
>>>>> Arash Esbati writes: > @All: Would it make sense if we start using the :package-version keyword > when we introduce or change the value of custom variables? In this > case, the change would look like this: > diff --git a/tex.el b/tex.el > index 93f22520..ea688f17 100644 > --- a/tex.el > +++ b/tex.el > @@ -252,7 +252,7 @@ If nil, none is specified." > ("Ps2pdf" "ps2pdf %f %(O?pdf)" TeX-run-ps2pdf nil > (plain-TeX-mode LaTeX-mode docTeX-mode AmSTeX-mode Texinfo-mode) > :help "Convert PostScript file to PDF") > -("LaTeXMk" "latexmk %(latexmk-out) %(file-line-error) \ > +("LaTeXMk" "latexmk %(latexmk-out) %(file-line-error) %(output-dir) \ > %`%(extraopts) %S%(mode)%' %t" > TeX-run-format nil (LaTeX-mode docTeX-mode) :help "Run LaTeXMk") > ("Glossaries" "makeglossaries %(d-dir) %s" TeX-run-command nil > @@ -372,7 +372,8 @@ Any additional elements get just transferred to the > respective menu entries." > (const :tag "ConTeXt" ConTeXt-mode) > (const :tag "Texinfo" Texinfo-mode) > (const :tag "AmSTeX" AmSTeX-mode))) > -(repeat :tag "Menu elements" :inline t sexp)))) > + (repeat :tag "Menu elements" :inline t sexp))) > + :package-version '(auctex . "14.0.7")) > (defcustom TeX-command-output-list >'( > Maybe it helps users. WDYT? That's a good idea. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
main c77c97ab: Add supplementary explanation to documentation
branch: main commit c77c97ab6b4096e29a8d874c6327842060a181a7 Author: Ikumi Keita Commit: Ikumi Keita Add supplementary explanation to documentation * doc/install.texi (Activating the package): State that unload tex-site no longer works. --- doc/install.texi | 8 1 file changed, 8 insertions(+) diff --git a/doc/install.texi b/doc/install.texi index c31ad152..93276c02 100644 --- a/doc/install.texi +++ b/doc/install.texi @@ -135,6 +135,14 @@ in your early init file (@pxref{Early Init File,,,emacs}). (We recommend this treatment over setting @code{TeX-modes} to @code{nil}, because it doesn't leave unused autoloads persisted.) +It is no longer possible to disable the site-wide installation by +@lisp +(unload-feature 'tex-site) +@end lisp +@noindent +, so don't use it. This was the instruction described in former versions +of this document, but now it causes error. + @node Advice for package providers @section Providing @AUCTeX{} as a package
Re: Drop tarball releases and go ELPA only
Hi Arash, >>>>> Arash Esbati writes: > Thanks, LGTM, do you want to go ahead and push it? Thank you, I did it just now. Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
Re: Provide advice to ffap (find-file-at-point) from \input@path?
Hi Leo, >>>>> Leo Stein writes: > This thread actually made me realize something I hadn't noticed before. I > thought that AUCTeX had been parsing the contents of \graphicspath to > search for files when you insert \includegraphics, but now looking at the > source, I can't find this... did I imagine it? Did this ever happen in the > past? As far as I know, AUCTeX has never parsed the contents of \graphicspath. It just calls kpsewhich to find graphic files (or descend into subdirectories recursively and picks up the names of files with suitable extenstions). Regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine #Gaza #StopMassiveKilling #CeasefireNOW
main 12133841: Adapt .elpaignore (bug#73215)
branch: main commit 121338417394cda7b3d65ae3f5b9390b43853695 Author: Ikumi Keita Commit: Ikumi Keita Adapt .elpaignore (bug#73215) * .elpaignore: Add .dir-locals.el and remove files which no longer exist in main branch. --- .elpaignore | 6 +- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.elpaignore b/.elpaignore index 4ea4ce37..9996b100 100644 --- a/.elpaignore +++ b/.elpaignore @@ -3,13 +3,9 @@ *.m4 *.spec .elpaignore -ChangeLog.1 +.dir-locals.el README.GIT admin -autogen.sh build-aux -install-sh lpath.el -mkinstalldirs -prv-install.el tests
Re: [AUCTeX-devel] auto-loads.el in Makefile.in
> We just discussed this. We need it (since the behavior of Emacs-22 is > again different), and the "error" is not permanent since we actually > check whether the file was created. Whether the build succeeds or not depends on the behaviour of the "make". On my FreeBSD-4.11 box, the system standard make stops at the error which Emacs 21.4 signals, so I don't get make finished. However, the GNU make ignores the error and completes the build: % uname -rs FreeBSD 4.11-RELEASE % make test Xno != Xno || rm -f auto-loads.el ; /usr/local/bin/emacs -batch -q -no-site-file -no-init-file -l lpath.el --eval '(let ((generated-autoload-file (expand-file-name "auto-loads.el"))) (mapcar (function update-file-autoloads) command-line-args-left) (save-buffers-kill-emacs t))' tex.el tex-buf.el tex-style.el latex.el tex-info.el texmathp.el multi-prompt.el tex-mik.el font-latex.el tex-font.el context.el context-en.el context-nl.el tex-fold.el toolbar-x.el tex-bar.el tex-jp.el; test -r auto-loads.el || echo ";; Auto-generated part of tex-site.el" > auto-loads.el ; echo "" >> auto-loads.el ; /usr/local/bin/emacs -batch -q -no-site-file -no-init-file -l lpath.el --eval '(let ((generated-autoload-file (expand-file-name "auto-loads.el"))) (mapcar (function update-file-autoloads) command-line-args-left) (save-buffers-kill-emacs t))' tex.el tex-buf.el tex-style.el latex.el tex-info.el texmathp.el multi-prompt.el tex-mik.el font-latex.el tex-font.el context.el context-en.el context-nl.el tex-fold.el toolbar-x.el tex-bar.el tex-jp.el Autoloads file /*/*/*/auctex/auto-loads.el does not exist *** Error code 255 Stop in /*/*/*/auctex. % cat auto-loads.el cat: auto-loads.el: No such file or directory % gmake test Xno != Xno || \ rm -f auto-loads.el ; \ /usr/local/bin/emacs -batch -q -no-site-file -no-init-file -l lpath.el --eval '(let ((generated-autoload-file (expand-file-name "auto-loads.el"))) (mapcar (function update-file-autoloads) command-line-args-left) (save-buffers-kill-emacs t))' tex.el tex-buf.el tex-style.el latex.el tex-info.el texmathp.el multi-prompt.el tex-mik.el font-latex.el tex-font.el context.el context-en.el context-nl.el tex-fold.el toolbar-x.el tex-bar.el tex-jp.el; \ test -r auto-loads.el || \ echo ";; Auto-generated part of tex-site.el" > auto-loads.el ; \ echo "" >> auto-loads.el ; \ /usr/local/bin/emacs -batch -q -no-site-file -no-init-file -l lpath.el --eval '(let ((generated-autoload-file (expand-file-name "auto-loads.el"))) (mapcar (function update-file-autoloads) command-line-args-left) (save-buffers-kill-emacs t))' tex.el tex-buf.el tex-style.el latex.el tex-info.el texmathp.el multi-prompt.el tex-mik.el font-latex.el tex-font.el context.el context-en.el context-nl.el tex-fold.el toolbar-x.el tex-bar.el tex-jp.el Autoloads file /*/*/*/auctex/auto-loads.el does not exist Generating autoloads for tex.el... Generating autoloads for tex.el...done (snip) Wrote /*/*/*/auctex/auto-loads.el cat tex-site.el.out >tex-site.el (snip) Wrote /*/*/*/auctex/style/jsarticle.elc Wrote /*/*/*/auctex/style/jsbook.elc Done OLDPWD="`pwd`";for i in ;do cd $i;echo "Descending into `pwd`";gmake 'DESTDIR=' PACKAGE=auctex all || exit $?;cd $OLDPWD;echo "Ascending into $OLDPWD";done % gmake --version GNU Make 3.80 Copyright (C) 2002 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. I'm afraid that similar problems concerned with the behaviour of make can occur on other platforms without GNU make. Best regards, Ikumi Keita ___ auctex-devel mailing list auctex-devel@gnu.org http://lists.gnu.org/mailman/listinfo/auctex-devel
Re: [AUCTeX-devel] auto-loads.el in Makefile.in
>>>>> David Kastrup <[EMAIL PROTECTED]> writes: > Ouch. Having looked at the code and at the shell manual again, I > wrote complete nonsense. Sorry for causing you all that work. I > checked something into the CVS (untested, though), that should work > better. Hmm, again the same error... BSD make is stubborn. I found that the error is signaled at the following code in autoload.el, at least with my Emacs 21.4: (or (> (buffer-size) 0) (error "Autoloads file %s does not exist" buffer-file-name)) So I modified Makefile.in in the following way and it seems to work out. In this way, emacs never signals error and everything goes smoothly even without bash. --- Makefile.in.~1.96.~ Tue May 17 22:33:44 2005 +++ Makefile.in Tue May 17 22:43:40 2005 @@ -134,7 +134,9 @@ auto-loads.el: $(AUCSRC) $(COMPILE_MULE) Makefile test X$(packagedir) != Xno || { \ rm -f $@ ; \ - $(ELCC) $(AUTOLOAD) $(AUCSRC); \ + echo ";; Auto-generated part of tex-site.el" > $@ ; \ + echo "" >> $@ ; \ + $(ELCC) $(AUTOLOAD) $(AUCSRC) $(COMPILE_MULE) ; \ test -r $@ || { \ echo ";; Auto-generated part of tex-site.el" > $@ ; \ echo "" >> $@ ; \ This is the session log. % make test Xno != Xno || { rm -f auto-loads.el ; echo ";; Auto-generated part of tex-site.el" > auto-loads.el ; echo "" >> auto-loads.el ; /usr/local/bin/emacs -batch -q -no-site-file -no-init-file -l lpath.el --eval '(let ((generated-autoload-file (expand-file-name "auto-loads.el"))) (mapcar (function update-file-autoloads) command-line-args-left) (save-buffers-kill-emacs t))' tex.el tex-buf.el tex-style.el latex.el tex-info.el texmathp.el multi-prompt.el tex-mik.el font-latex.el tex-font.el context.el context-en.el context-nl.el tex-fold.el toolbar-x.el tex-bar.el tex-jp.el ; test -r auto-loads.el || { echo ";; Auto-generated part of tex-site.el" > auto-loads.el ; echo "" >> auto-loads.el ; /usr/local/bin/emacs -batch -q -no-site-file -no-init-file -l lpath.el --eval '(let ((generated-autoload-file (expand-file-name "auto-loads.el"))) (mapcar (function update-file-autoloads) command-line-args-left) (save-buffers-kill-emacs t))' tex.el tex-buf.el tex-style.el latex.el tex-info.el texmathp.el multi-prompt.el tex-mik.el font-latex.el tex-font.el context.el context-en.el context-nl.el tex-fold.el toolbar-x.el tex-bar.el tex-jp.el ; } ; } Generating autoloads for tex.el... Generating autoloads for tex.el...done (snip) Generating autoloads for tex-jp.el... Generating autoloads for tex-jp.el...done Wrote /home/keita/scr/auctex/auto-loads.el Best regards, Ikumi Keita P.S. Oops, Makefile.in contains a line SHELL = /bin/sh in its body. So adding the line SHELL = /usr/local/bin/bash to the top of it didn't help anyway. I should have done "grep" rather than "head" in my last mail... ___ auctex-devel mailing list auctex-devel@gnu.org http://lists.gnu.org/mailman/listinfo/auctex-devel
Re: [AUCTeX-devel] auto-loads.el in Makefile.in
>>>>> David Kastrup <[EMAIL PROTECTED]> writes: > I think I got it now. Ralf provided me with some more info, and it > would seem that BSD make calls the shell with the equivalent of "abort > if nonzero". > Check out the new fix. Now it works fine! Great. > Ah, but it does not work with all supported Emacs versions IIRC. This > "try again" junk had a purpose. I see. Sorry for my poor understanding. Best regards, Ikumi Keita ___ auctex-devel mailing list auctex-devel@gnu.org http://lists.gnu.org/mailman/listinfo/auctex-devel
Re: [AUCTeX-devel] auto-loads.el in Makefile.in
>>>>> David Kastrup <[EMAIL PROTECTED]> writes: > Could it be that the FreeBSD shell interprets a sequence of commands > separated by ";" and "||" differently? What happens if you write > SHELL=/usr/bin/bash > into the top of the Makefile (assuming that /usr/bin/bash exists)? I installed bash and tried. Unfortunately, it doesn't seem bash helps. The result was just the same. % /usr/local/bin/bash --version GNU bash, version 3.00.16(1)-release (i386-portbld-freebsd4.11) Copyright (C) 2004 Free Software Foundation, Inc. % /usr/local/bin/bash [EMAIL PROTECTED] head Makefile SHELL=/usr/local/bin/bash # Makefile - for the AUCTeX distribution. # # Maintainer: auctex-devel@gnu.org # Version: initial try <[EMAIL PROTECTED]> # prefix = /usr/local$(null) [EMAIL PROTECTED] export SHELL=/usr/local/bin/bash [EMAIL PROTECTED] make test Xno != Xno || rm -f auto-loads.el ; /usr/local/bin/emacs -batch -q -no-site-file -no-init-file -l lpath.el --eval '(let ((generated-autoload-file (expand-file-name "auto-loads.el"))) (mapcar (function update-file-autoloads) command-line-args-left) (save-buffers-kill-emacs t))' tex.el tex-buf.el tex-style.el latex.el tex-info.el texmathp.el multi-prompt.el tex-mik.el font-latex.el tex-font.el context.el context-en.el context-nl.el tex-fold.el toolbar-x.el tex-bar.el tex-jp.el; test -r auto-loads.el || echo ";; Auto-generated part of tex-site.el" > auto-loads.el ; echo "" >> auto-loads.el ; /usr/local/bin/emacs -batch -q -no-site-file -no-init-file -l lpath.el --eval '(let ((generated-autoload-file (expand-file-name "auto-loads.el"))) (mapcar (function update-file-autoloads) command-line-args-left) (save-buffers-kill-emacs t))' tex.el tex-buf.el tex-style.el latex.el tex-info.el texmathp.el multi-prompt.el tex-mik.el font-latex.el tex-font.el context.el context-en.el context-nl.el tex-fold.el toolbar-x.el tex-bar.el tex-jp.el Autoloads file /home/keita/scr/auctex/auto-loads.el does not exist *** Error code 255 Stop in /usr/home/keita/scr/auctex. [EMAIL PROTECTED] Best regards, Ikumi Keita ___ auctex-devel mailing list auctex-devel@gnu.org http://lists.gnu.org/mailman/listinfo/auctex-devel
Re: [AUCTeX-devel] customize-option breaks preview-latex hook
Hi, David Kastrup <[EMAIL PROTECTED]> writes: > I think it is a mistake to make a hook variable customizable _unless_ > one uses the customization type 'hook for it. Well, LaTeX-mode-hook is already defcustom'ed as 'hook type in latex.el of AUCTeX 11.84: -- (defcustom LaTeX-mode-hook nil "A hook run in LaTeX mode buffers." :type 'hook :group 'LaTeX) -- My emacs 21.4 does not complain about it. > This customization type is probably only available for Emacs 22. cus-edit.el in Emacs 21 contains the same code you quoted, so it must have the 'hook customization type. I'm afraid that simply selecting 'hook type does not resolve the problem. (Excuse me if I'm wrong, I'm not familiar with Custom library.) > cus-edit.el provides a fitting setter function we could probably steal > (see below). The problem seems that, when evaluating .emacs at startup process, the right setter function is not known to custom-set-variables. If the user set LaTeX-mode-hook through Custom library, .emacs holds lines like -- (custom-set-variables ;; custom-set-variables was added by Custom -- don't edit or cut/paste it! ;; Your init file should contain only one such instance. '(LaTeX-mode-hook (quote (turn-on-reftex LaTeX-math-mode))) ... -- And according to custom.el, the definition of custom-set-variables is: -- (defun custom-set-variables (&rest args) ... (setq set (or (get symbol 'custom-set) 'custom-set-default)) (put symbol 'saved-value (list value)) ... ((default-boundp symbol) ;; Something already set this, overwrite it. (funcall set symbol (eval value -- So, if the symbol LaTeX-mode-hook had 'custom-set property, that value would be used for setter function and right things (calling add-hook) would be done. However, at startup process, LaTeX-mode-hook does not have such property, so it is overwritten with custom-set-default and the preset LaTeX-preview-setup is lost. (Is Custom library in Emacs 22 good at that point? That is, does it see that the name of the symbol ends in '-hook' and select the right setter function for hook variables in custom-set-variables? If so, the problem will be resolved by upgrading Emacs.) Additional note: The problem which Ataka-san described in <[EMAIL PROTECTED]> is not specific to the cases when updating from 11.80- to 11.81+. Even if the latest AUCTeX is in use, the same problem can occur in the case "the user was not using preview-latex before, and raises an interest to preview-latex and wants to try." At least some remarks should be done in the document for such users, I suppose. Regards, -- Ikumi Keita ___ auctex-devel mailing list auctex-devel@gnu.org http://lists.gnu.org/mailman/listinfo/auctex-devel
[AUCTeX-devel] (no subject)
Hi all, Would you please add the following change into latex.el? These additional macros are defined in amsmath. Regards, Ikumi Keita --- latex.el.orig Fri Jan 19 07:16:07 2007 +++ latex.elSun Apr 15 16:51:30 2007 @@ -3896,6 +3896,17 @@ (nil "beth" ("AMS" "Hebrew") 8502) ;; #X2136 (nil "daleth" ("AMS" "Hebrew") 8504) ;; #X2138 (nil "gimel" ("AMS" "Hebrew") 8503) ;; #X2137 +("v G" "varGamma" ("AMS" "Greek Uppercase")) +("v D" "varDelta" ("AMS" "Greek Uppercase")) +("v J" "varTheta" ("AMS" "Greek Uppercase")) +("v L" "varLambda" ("AMS" "Greek Uppercase")) +("v X" "varXi" ("AMS" "Greek Uppercase")) +("v P" "varPi" ("AMS" "Greek Uppercase")) +("v S" "varSigma" ("AMS" "Greek Uppercase")) +("v U" "varUpsilon" ("AMS" "Greek Uppercase")) +("v F" "varPhi" ("AMS" "Greek Uppercase")) +("v Y" "varPsi" ("AMS" "Greek Uppercase")) +("v W" "varOmega" ("AMS" "Greek Uppercase")) (nil "dashrightarrow" ("AMS" "Arrows")) (nil "dashleftarrow" ("AMS" "Arrows")) (nil "leftleftarrows" ("AMS" "Arrows") 8647) ;; #X21C7 ___ auctex-devel mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/auctex-devel
[AUCTeX-devel] patch for small doc fix
Dear AUCTeX developpers, Here is a small patch to make AUCTeX conform to elisp coding conventions quoted below from emacs lisp reference, with an addition of the command "textasteriskcentered" to LaTeX default completion candidates. I hope this helps. * When you mention a default value in a minibuffer prompt, put it and the word `default' inside parentheses. It should look like this: Enter the answer (default 42): * Many commands that take a long time to execute display a message that says something like `Operating...' when they start, and change it to `Operating...done' when they finish. Please keep the style of these messages uniform: _no_ space around the ellipsis, and _no_ period after `done'. Regards, Ikumi Keita --- tex.el-11.862010-02-21 00:01:35.0 +0900 +++ tex.el 2012-05-05 03:20:35.0 +0900 @@ -1816,7 +1816,7 @@ (let* ((default (TeX-dwim-master)) (name (or (and (eq 'dwim TeX-master) default) (condition-case nil -(read-file-name (format "Master file: (default %s) " +(read-file-name (format "Master file (default %s): " (or default "this file")) nil default) (quit "") @@ -1877,7 +1877,7 @@ (setq TeX-master (let* ((default (TeX-dwim-master)) (name (read-file-name - (format "Master file: (default %s) " + (format "Master file (default %s): " (or default "this file")) nil default))) (cond ((string= name default) @@ -2327,7 +2327,7 @@ TeX-style-hook-list (TeX-auto-apply)) (run-hooks 'TeX-update-style-hook) -(message "Applying style hooks... done"))) +(message "Applying style hooks...done"))) (defvar TeX-remove-style-hook nil "List of hooks to call when we remove the style specific information.") @@ -3123,7 +3123,7 @@ (if (> (length next) (length this)) (setcdr this (cdr next))) (setcdr entry (cdr (cdr entry))) - (message "Removing duplicates... done")) + (message "Removing duplicates...done")) (symbol-value local))) (TeX-auto-add-type "symbol" "TeX") @@ -3243,7 +3243,7 @@ t) ".el")) (kill-buffer (current-buffer)) - (message "Parsing %s... done" tex) + (message "Parsing %s...done" tex) ;;;###autoload (defun TeX-auto-generate-global () --- tex-buf.el-11.862009-12-13 03:43:57.0 +0900 +++ tex-buf.el 2012-05-05 03:17:00.0 +0900 @@ -427,7 +427,7 @@ (completion-ignore-case t) (answer (or TeX-command-force (completing-read - (concat "Command: (default " default ") ") + (concat "Command (default " default "): ") (TeX-mode-specific-command-list major-mode) nil t nil 'TeX-command-history ;; If the answer "latex" it will not be expanded to "LaTeX" @@ -455,10 +455,9 @@ (setq printer (if TeX-printer-list (let ((completion-ignore-case t)) (completing-read - (concat "Printer: " - (and TeX-printer-default - (concat "(default " - TeX-printer-default ") "))) + (format "Printer%s: " + (if TeX-printer-default + (format " (default %s)" TeX-printer-default) "")) TeX-printer-list)) "")) (setq printer (or (car-safe (TeX-assoc printer TeX-printer-list)) --- latex.el-11.86 2009-11-01 02:03:28.0 +0900 +++ latex.el2012-05-08 23:30:54.0 +0900 @@ -417,7 +417,7 @@ Insert this hook into `LaTeX-section-hook' to allow the user to change the name of the sectioning command inserted with `\\[LaTeX-section]'." (let ((string (completing-read -(concat "Level: (default " name ") ") +(conca