1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-20 19:42:53 -08:00
emacs/etc
David Fussner b44c00669a Provide a modified xref backend for TeX buffers
In addition to providing a new `xref' backend, the patch also improves
the general handling of expl3 syntax.  Expl3 is the next-generation
LaTeX specification, and has for some time been available by default in
the LaTeX kernel.  The new syntax co-exists in many files with the
standard LaTeX2e syntax, so we try at least minimally to separate the
way modes handle the two specifications, both to reduce
visually-disturbing interference between them and also to improve the
`xref' backend.  (Bug#53749)

* lib-src/etags.c (TeX_commands): Improve parsing of commands in TeX
buffers.
(TEX_defenv): Expand list of commands to tag by default in TeX buffers.
(TeX_help):
* doc/emacs/maintaining.texi (Tag Syntax): Document new tagged commands.
(Identifier Search): Add note about semantic-symref-filepattern-alist,
auto-mode-alist, and xref-find-references.

* lisp/textmodes/tex-mode.el (tex-font-lock-suscript): Test for
underscore in expl3 files and regions, disable subscript face there.
(tex-common-initialization): Set up xref backend for in-tree TeX modes.
Detect expl3 files, and in others set up a list of expl3 regions.
(tex-expl-buffer-parse): New function called in previous.
(tex-expl-buffer-p): New variable to hold the result of previous.
(tex-expl-region-set): New function added to
'syntax-propertize-extend-region-functions' hook.
(tex-expl-region-list): New variable to hold the result of previous.
(tex--xref-backend): New function to identify the xref backend.
(tex--thing-at-point, tex-thingatpt--beginning-of-symbol)
(tex-thingatpt--end-of-symbol, tex--bounds-of-symbol-at-point):
New functions to return 'thing-at-point' for xref backend.
(tex-thingatpt-exclude-chars): New variable to do the same.
(xref-backend-identifier-at-point): New TeX backend method to provide
symbols for processing by xref.
(xref-backend-identifier-completion-table)
(xref-backend-identifier-completion-ignore-case)
(xref-backend-definitions, xref-backend-apropos): Placeholders to
call the standard 'etags' xref backend methods.
(xref-backend-references): Wrapper to call the default xref backend
method, finding as many relevant files as possible and using a bespoke
syntax-propertize-function when required.
(tex--collect-file-extensions, tex-xref-syntax-function): Helper
functions for previous.
(tex-find-references-syntax-table, tex--buffers-list)
(tex--xref-syntax-fun, tex--old-syntax-function): New variables for
the same.
2024-09-14 17:05:33 +02:00
..
charsets ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
e
forms ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
gnus
images Merge from savannah/emacs-30 2024-08-29 08:53:52 +08:00
nxml
org ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
refcards Merge from origin/emacs-30 2024-09-07 06:25:15 -04:00
schema nxml-mode: Add schemas for Mono/.NET related files 2024-05-18 21:36:47 +02:00
srecode ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
themes Update to modus-themes version 4.5.0 2024-08-21 11:07:47 +03:00
tutorials Update FSF's address 2024-09-02 21:02:09 +02:00
AUTHORS ; * etc/AUTHORS: Update. 2024-09-11 21:49:52 +02:00
CALC-NEWS Merge from savannah/emacs-29 2024-01-02 10:28:14 +08:00
ChangeLog.1 ; Fix typos 2024-07-18 11:46:50 +02:00
compilation.txt Make Compilation mode recognize non-legacy Kotlin/Gradle errors 2024-06-22 11:30:51 +03:00
COPYING
copyright-assign.txt Add assignment form as etc/copyright-assign.txt 2024-06-23 00:24:31 +02:00
DEBUG ; Fix punctuation in etc/* 2024-07-27 01:51:47 +02:00
DEVEL.HUMOR ; Fix punctuation in etc/* 2024-07-27 01:51:47 +02:00
DISTRIB ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
edt-user.el ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
EGLOT-NEWS Merge from origin/emacs-30 2024-08-25 14:54:03 -04:00
emacs-buffer.gdb ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
emacs-mail.desktop
emacs.desktop
emacs.icon
emacs.metainfo.xml ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
emacs.service
emacs_lldb.py * etc/emacs_lldb.py (Lisp_Object): Recognise Lisp_Sub_Char_Table 2024-09-09 10:30:02 +02:00
emacsclient-mail.desktop
emacsclient.desktop
enriched.txt ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
ERC-NEWS ; Fix punctuation in etc/* 2024-07-27 01:51:47 +02:00
ETAGS.EBNF ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
ETAGS.README ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
future-bug
gnus-tut.txt ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
grep.txt ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
HELLO Add support for Tifinagh script 2024-07-26 16:49:11 +03:00
HISTORY Revert "; * etc/HISTORY: Delete never-released Emacs 28.3." 2024-06-22 19:25:35 +02:00
JOKES
MACHINES Merge from savannah/emacs-29 2024-01-02 10:28:14 +08:00
MH-E-NEWS ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
NEWS Provide a modified xref backend for TeX buffers 2024-09-14 17:05:33 +02:00
NEWS.1-17 ; Fix typos 2024-07-18 11:46:50 +02:00
NEWS.18 ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
NEWS.19 ; Fix punctuation in etc/* 2024-07-27 01:51:47 +02:00
NEWS.20 ; Fix punctuation in etc/* 2024-07-27 01:51:47 +02:00
NEWS.21 ; Fix punctuation in etc/* 2024-07-27 01:51:47 +02:00
NEWS.22 ; Fix punctuation in etc/* 2024-07-27 01:51:47 +02:00
NEWS.23 Merge from savannah/emacs-29 2024-01-02 10:28:14 +08:00
NEWS.24 Merge from savannah/emacs-29 2024-01-02 10:28:14 +08:00
NEWS.25 ; Fix punctuation in etc/* 2024-07-27 01:51:47 +02:00
NEWS.26 ; Fix punctuation in etc/* 2024-07-27 01:51:47 +02:00
NEWS.27 ; Delete pre-release remainder in NEWS.27 2024-01-19 00:40:12 +01:00
NEWS.28 ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
NEWS.29 ; Reword some "allows Xing" 2024-09-01 11:20:25 +01:00
NEWS.30 Merge from origin/emacs-30 2024-09-14 07:55:01 -04:00
NEXTSTEP ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
NXML-NEWS ; Fix punctuation in etc/* 2024-07-27 01:51:47 +02:00
ORG-NEWS ; * etc/ORG-NEWS: Fix typo. 2024-09-13 09:50:01 +02:00
org.gnu.emacs.defaults.gschema.xml ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
package-keyring.gpg
PROBLEMS ; Mention in PROBLEMS issues with long popup menus 2024-08-25 09:04:21 +03:00
ps-prin0.ps ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
ps-prin1.ps ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
publicsuffix.txt Update publicsuffix.txt from upstream 2024-06-23 00:27:02 +02:00
README ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
rgb.txt
ses-example.ses ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
spook.lines
symbol-releases.eld * etc/symbol-releases.eld: Fix URL. 2024-09-14 00:51:12 +02:00
TERMS ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
TODO Merge from origin/emacs-30 2024-07-19 14:31:53 -04:00
w32-feature.el ; Fix punctuation in etc/* 2024-07-27 01:51:47 +02:00
yow.lines

This directory contains the architecture-independent files used by or
with Emacs.  This includes some text files of documentation for GNU
Emacs or of interest to Emacs users, and the file of dumped docstrings
for Emacs functions and variables.

COPYRIGHT AND LICENSE INFORMATION FOR IMAGE FILES

File: emacs.icon
  Author: Sun Microsystems, Inc
  Copyright (C) 1999, 2001-2024 Free Software Foundation, Inc.
  License: GNU General Public License version 3 or later (see COPYING)