emacs/etc
F. Jason Park cca7956c82 Favor ISUPPORT params for MODE processing in ERC
* etc/ERC-NEWS: Mention shift toward CHANMODES ISUPPORT parameter for
dictating MODE parsing behavior.
* lisp/erc/erc-backend.el (erc--init-channel-modes, erc--update-modes,
erc-set-modes, erc-update-modes): Forward declarations, the last two
being removals.
(erc-server-MODE, erc-server-221): Use `erc--update-modes' instead of
`erc-update-modes'.
(erc-server-324): Use `erc--init-channel-modes' instead of
`erc-set-modes'.
* lisp/erc/erc-common.el (erc--channel-mode-types): New struct for
stashing processed \"CHANMODES\" data for the current server.
* lisp/erc/erc.el (erc-channel-modes): Fix doc string.
(erc-set-initial-user-mode): Display a local notice when requesting
redundant user MODE operations.
(erc-set-modes, erc-parse-modes, erc-update-modes): Deprecate for
reasons explained in associated ERC-NEWS entry.
(erc--update-membership-prefix): New function, a helper for specifying
arguments to the rather unruly `erc-update-current-channel-member'.
(erc--channel-modes): New variable to record channel-mode state in a
hash table.
(erc--channel-mode-types): New variable and getter to stash
and retrieve server-local instance of the struct of the same name.
(erc--process-channel-modes): New function to parse channel-mode
changes, dispatch handlers for unary modes, and update the local
variables `erc-channel-modes' and `erc--channel-modes'.
(erc--user-modes): New local variable for remembering user modes per
server.  New function of the same name, a "getter" for the variable.
(erc--parse-user-modes): New function to parse user modes only.
(erc--update-user-modes): New function to update and sort
`erc--user-modes'.
(erc--update-channel-modes): New function to replace much of
`erc-update-modes', currently a thin wrapper around
`erc--process-channel-modes' to ensure it updates status prefixes.
(erc--update-modes): New function to call appropriate mode-updating
function for the current buffer.
(erc--init-channel-modes): New function to update channel mode letters
without status prefixes.
(erc--handle-channel-mode): New generic function, a placeholder for an
eventual API to handle specific "unary" mode letters, meaning those
that specify a single parameter for setting or unsetting.
(erc-update-channel-limit): Update doc string and answer question
posed by ancient comment.
(erc-message-english-user-mode-redundant-add,
erc-message-english-user-mode-redundant-drop): New English catalog
messages.
* test/lisp/erc/erc-scenarios-base-chan-modes.el: New file.
* test/lisp/erc/erc-tests.el (erc-parse-modes,
erc--update-channel-modes, erc--update-user-modes, erc--user-modes,
erc--parse-user-modes): New tests.
* test/lisp/erc/resources/base/modes/chan-changed.eld: New test data
file.  (Bug#67220)
2023-11-18 12:34:56 -08:00
..
charsets ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
e Implement alternative sub-buffer support in term.el 2022-01-24 20:02:33 +01:00
forms ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
gnus
images Add dot SVG icons 2023-09-15 00:44:23 -07:00
nxml
org ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
refcards Merge from origin/emacs-29 2023-11-11 05:31:52 -05:00
schema ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
srecode ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
themes Update modus-themes to their version 4.3.0 2023-09-19 16:03:11 +03:00
tutorials Update zh-CN tutorial translation 2023-04-28 09:09:10 +03:00
AUTHORS ; Update ChangeLog.4 and etc/AUTHORS. 2023-10-19 04:53:08 -04:00
CALC-NEWS ; Fix spelling of my name in all ChangeLog files 2023-10-25 15:20:46 +02:00
ChangeLog.1 ; Fix spelling of my name in all ChangeLog files 2023-10-25 15:20:46 +02:00
compilation.txt Tighten and simplify typescript compilation-mode regexps (bug#61104) 2023-02-06 17:47:00 +01:00
COPYING
DEBUG Merge from origin/emacs-29 2023-09-16 07:36:49 -04:00
DEVEL.HUMOR ; * etc/DEVEL.HUMOR: Add a recent joke. 2022-02-11 10:15:20 +02:00
DISTRIB ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
edt-user.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
EGLOT-NEWS Eglot: respect completion sort order dictated by the server 2023-10-18 07:37:57 -05:00
emacs-buffer.gdb ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
emacs-mail.desktop Hide emacs-mail.desktop, emacsclient-mail.desktop from menus 2021-07-02 13:09:18 +02:00
emacs.desktop Drop redundant keywords in .desktop files. 2021-08-11 14:05:25 +02:00
emacs.icon
emacs.metainfo.xml ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
emacs.service
emacs_lldb.py Gud LLDB completions (bug#66604) 2023-10-18 20:51:22 +02:00
emacsclient-mail.desktop Add 'server-eval-args-left' to server.el 2023-10-29 14:10:23 +02:00
emacsclient.desktop Make emacsclient handle org-protocol:// links 2023-09-18 12:54:22 +02:00
enriched.txt ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ERC-NEWS Favor ISUPPORT params for MODE processing in ERC 2023-11-18 12:34:56 -08:00
ETAGS.EBNF ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ETAGS.README ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
future-bug
gnus-tut.txt ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
grep.txt ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
HELLO Add Mongolian language environments 2023-04-25 11:50:59 +03:00
HISTORY ; * etc/HISTORY: Fix Emacs 28.3 entry. 2023-07-31 17:48:36 +02:00
JOKES
MACHINES ; * etc/MACHINES (Android): Clarify a minor point. 2023-08-16 20:35:08 +08:00
MH-E-NEWS ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS ; * etc/NEWS: Fix last change (bug#67225). 2023-11-18 12:11:56 +02:00
NEWS.1-17 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.18 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.19 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.20 ; Grammar fixes ("allow to" et al) 2023-09-17 16:49:21 +02:00
NEWS.21 ; Grammar fixes ("allow to" et al) 2023-09-17 16:49:21 +02:00
NEWS.22 ; Grammar fixes ("allow to" et al) 2023-09-17 16:49:21 +02:00
NEWS.23 ; Grammar fixes ("allow to" et al) 2023-09-17 16:49:21 +02:00
NEWS.24 ; Grammar fixes ("allow to" et al) 2023-09-17 16:49:21 +02:00
NEWS.25 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.26 ; Grammar fixes ("allow to" et al) 2023-09-17 16:49:21 +02:00
NEWS.27 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.28 ; * etc/NEWS.28: Add deletion of levents.el. 2023-08-08 04:47:34 +02:00
NEWS.29 Merge etc/NEWS from origin/emacs-29 2023-09-30 13:54:42 -04:00
NEXTSTEP ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NXML-NEWS ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ORG-NEWS Update to Org 9.6.1-48-g92471e 2023-03-18 21:41:22 -04:00
org.gnu.emacs.defaults.gschema.xml ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
package-keyring.gpg * etc/package-keyring.gpg: Update with new key 2022-12-28 12:19:02 -05:00
PROBLEMS Document Battery Optimization challenges on Android 2023-11-18 17:42:19 +08:00
ps-prin0.ps ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ps-prin1.ps ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
publicsuffix.txt Merge from origin/emacs-29 2023-10-28 05:06:21 -04:00
README ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
rgb.txt Revert "Update etc/rgb.txt from X.Org upstream" 2023-10-16 08:56:53 +08:00
ses-example.ses ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
spook.lines
TERMS ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
TODO ; Grammar fixes ("allow to" et al) 2023-09-17 16:49:21 +02:00
w32-feature.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05: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-2023 Free Software Foundation, Inc.
  License: GNU General Public License version 3 or later (see COPYING)