emacs/etc
F. Jason Park a3c6ed0e36 Improve erc-warn-about-blank-lines behavior
* etc/ERC-NEWS: Mention more detailed feedback when option
`erc-warn-about-blank-lines' is non-nil.
* lisp/erc/erc-common.el (erc--input-split): Add `abortp' slot to
allow a premature exit while validating prompt input.
* lisp/erc/erc.el (erc-warn-about-blank-lines): Clarify meaning of
"blank lines" in doc string, and mention interaction with
companion option `erc-send-whitespace-lines'.
(erc-inhibit-multiline-input): Fix inaccurate description in doc
string.
(erc--input-review-functions): Move
`erc--discard-trailing-multiline-nulls' to end of list, after
`erc--run-input-validation-checks' so that the latter doesn't have to
resplit the original input string in order to issue feedback.
(erc--blank-in-multiline-input-p): Remove unused internal function
originally slated to be part of ERC 5.6.
(erc--check-prompt-input-for-something): New trivial validation
function to check if the input is empty.
(erc--count-blank-lines): New function that tallies up the number of
blank and whitespace-only lines in the current input.  One downside of
this design is that this function's conclusions aren't shared with
`erc--discard-trailing-multiline-nulls', which must decide on its own
how many lines to strip.
(erc--check-prompt-explanation): New variable.
(erc--check-prompt-input-for-multiline-blanks): Rework significantly
to provide more informative messages and more sensible behavior for
common cases with respect to relevant option values.
(erc--check-prompt-input-functions): Add new validation function
`erc--check-prompt-for-something'.
(erc--run-input-validation-checks): Set `abortp' slot of
`erc--input-split' when hooks return a non-string, rather than
generate an unhelpful fallback message.  Also print a message when
the variable `erc--check-prompt-explanation' is non-nil.
(erc-send-current-line): When the `abortp' slot of the current
`erc--input-split' object is non-nil, forgo normal input processing.
This fixes a regression in 5.6-git, which previously emitted an error
message when it should have just exited the command.
(erc--discard-trailing-multiline-nulls): Always run, regardless of
`erc-send-whitespace-lines', and leave a blank line behind when
stripping a message consisting of only blank lines.
(erc--run-send-hooks): Always run hooks and surrounding logic rather
than only when hooks are populated.
* test/lisp/erc/erc-tests.el (erc--refresh-prompt): Add assertion and
use default value for `erc--input-review-functions'.
(erc-ring-previous-command): Use default value for
`erc--input-review-functions' and ensure `erc-current-nick' does not
error.
(erc--blank-in-multiline-input-p): Remove obsolete test.
(erc--check-prompt-input-functions): Update expected message.
(erc--discard-trailing-multiline-nulls, erc--count-blank-lines): New
tests.
(erc-tests--check-prompt-input--expect,
erc-tests--check-prompt-input-messages): New helper variables.
(erc--check-prompt-input-for-multiline-blanks,
erc--check-prompt-input-for-multiline-blanks/explanations): New tests.
(erc-send-whitespace-lines): Expect hook-processing logic to pad empty
lines instead of deferring to `erc-send-input-line-function'.
(Bug#66073)
2023-10-02 17:31:29 -07:00
..
charsets ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
e
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-09-23 09:32:57 -04: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 AUTHORS and ChangeLog.4 2023-07-23 03:36:32 -04:00
CALC-NEWS ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ChangeLog.1 Fix all my attributions to be correct and consistent... 2023-08-08 20:07:52 -04: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
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: better consider diagnostics at point on code action requests 2023-09-20 11:02:51 +01:00
emacs-buffer.gdb ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
emacs-mail.desktop
emacs.desktop
emacs.icon
emacs.metainfo.xml ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
emacs.service
emacs_lldb.py ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
emacsclient-mail.desktop Avoid using bash in the emacsclient desktop file 2023-03-08 19:37:27 +01: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 Improve erc-warn-about-blank-lines behavior 2023-10-02 17:31:29 -07: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 search.c (re--describe-compiled): New function (bug#66261) 2023-09-29 14:55:24 -04: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 ; Grammar fixes ("allow to" et al) 2023-09-17 16:49:21 +02: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 Update publicsuffix.txt from upstream 2023-04-01 06:00:47 +02:00
README ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
rgb.txt
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)