Commit graph

9017 commits

Author SHA1 Message Date
Richard Hansen
10573e0db7 ert-x: New `ert-with-test-buffer-selected' convenience macro
* lisp/emacs-lisp/ert-x.el (ert-with-test-buffer-selected): New
convenience macro that extends `ert-with-test-buffer' by displaying
the test buffer in a temporary selected window.  This makes it easier
to simulate user input in the body via `execute-kbd-macro'.
* test/lisp/emacs-lisp/ert-x-tests.el
(ert-test-test-buffer-selected/*): Add tests.
2022-09-11 13:46:30 +02:00
Stefan Kangas
6cd9e586cc New function substitute-quotes
* lisp/help.el (substitute-quotes): New function.  (Bug#51040)
* doc/lispref/help.texi (Keys in Documentation): Document
substitute-quotes.
* test/lisp/help-tests.el (help-tests-substitute-quotes): New test.

* lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
* lisp/cus-theme.el (describe-theme-1):
* lisp/emacs-lisp/cl-extra.el (cl--describe-class):
* lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
* lisp/emacs-lisp/package.el (describe-package-1):
* lisp/help-fns.el (help-fns--parent-mode, help-fns--var-risky)
(help-fns--var-file-local, help-fns--var-bufferlocal)
(describe-face):
* lisp/help.el (substitute-command-keys):
* lisp/progmodes/octave.el (octave-help): Use the new function
instead of 'substitute-command-keys'.
2022-09-10 07:37:36 +02:00
Lars Ingebrigtsen
04a6fd378f Don't bind `s' in the normal backtrace map
* lisp/emacs-lisp/backtrace.el (backtrace-mode-map): Don't bind
the "s" command, because it's meaningless outside modes that have
set the backtrace-goto-source-functions variable (and only edebug
does that) (bug#57674).
* lisp/emacs-lisp/edebug.el (edebug-pop-to-backtrace): Use it.
(edebug-backtrace-mode-map, edebug-backtrace-mode): New mode.
2022-09-09 19:29:21 +02:00
Lars Ingebrigtsen
79ae7b3c87 Fix typo in byte-compile-lambda warning
* lisp/emacs-lisp/bytecomp.el (byte-compile-lambda): Fix typo in
message (bug#57690).
2022-09-09 19:16:01 +02:00
Stefan Kangas
1f29ee2d21 Delete many items obsolete since 24.3
* lisp/allout.el (allout-exposure-change-hook)
(allout-structure-added-hook, allout-structure-deleted-hook)
(allout-structure-shifted-hook):
* lisp/arc-mode.el (archive-extract-hooks):
* lisp/buff-menu.el (Buffer-menu-buffer+size-width):
* lisp/calendar/timeclock.el (timeclock-modeline-display)
(timeclock-modeline-display, timeclock-update-modeline):
* lisp/cedet/semantic/db-el.el
(semanticdb-elisp-sym-function-arglist):
* lisp/cedet/semantic/db-file.el (semanticdb-save-database-hooks):
* lisp/cedet/semantic/edit.el (semantic-change-hooks)
(semantic-edits-new-change-hooks)
(semantic-edits-delete-change-hooks)
(semantic-edits-reparse-change-hooks):
* lisp/cedet/semantic/lex.el (semantic-lex-reset-hooks):
* lisp/comint.el (comint--unquote&expand-filename)
(comint-unquote-filename):
* lisp/custom.el (user-variable-p):
* lisp/dired.el (dired-shrink-to-fit, dired-pop-to-buffer)
(dired-sort-set-modeline):
* lisp/ebuff-menu.el (Electric-buffer-menu-mode):
* lisp/emacs-lisp/byte-run.el (macro-declaration-function):
* lisp/emacs-lisp/checkdoc.el (custom-print-functions)
(checkdoc-comment-style-hooks):
* lisp/emacs-lisp/cl-lib.el (custom-print-functions):
* lisp/emacs-lisp/edebug.el (gud-inhibit-global-bindings):
* lisp/erc/erc-dcc.el (erc-dcc-chat-filter-hook):
* lisp/eshell/esh-mode.el (eshell-status-in-modeline):
* lisp/eshell/eshell.el (eshell-add-to-window-buffer-names)
(eshell-remove-from-window-buffer-names):
* lisp/faces.el (set-face-underline-p, font-list-limit):
* lisp/files.el (automount-dir-prefix, toggle-read-only):
* lisp/filesets.el (filesets-cache-fill-content-hooks):
* lisp/frame.el (automatic-hscrolling):
* lisp/generic-x.el (javascript-generic-mode)
(javascript-generic-mode-hook):
* lisp/gnus/gnus-start.el (gnus-subscribe-newsgroup-hooks):
* lisp/gnus/nndiary.el (nndiary-request-create-group-hooks)
(nndiary-request-update-info-hooks)
(nndiary-request-accept-article-hooks):
* lisp/htmlfontify.el (hfy-post-html-hooks):
* lisp/international/mule-cmds.el
(inactivate-current-input-method-function)
(inactivate-input-method, input-method-inactivate-hook)
(ucs-insert):
* lisp/international/quail.el (quail-inactivate)
(quail-inactivate-hook):
* lisp/international/robin.el (robin-inactivate)
(robin-inactivate-hook):
* lisp/leim/quail/hangul.el (hangul-input-method-inactivate):
* lisp/leim/quail/uni-input.el (ucs-input-inactivate):
* lisp/mail/emacsbug.el (report-emacs-bug-info):
* lisp/mh-e/mh-e.el (mh-kill-folder-suppress-prompt-hooks):
* lisp/mpc.el (mpc-string-prefix-p):
* lisp/net/rcirc.el (rcirc-print-hooks, rcirc-sentinel-hooks)
(rcirc-receive-message-hooks, rcirc-activity-hooks):
* lisp/obsolete/crisp.el (crisp-mode-modeline-string):
* lisp/pcomplete.el (pcomplete-arg-quote-list)
(pcomplete-quote-argument):
* lisp/progmodes/cc-mode.el (c-prepare-bug-report-hooks):
* lisp/progmodes/python.el (python-info-ppss-context)
(python-info-ppss-context-type)
(python-info-ppss-comment-or-string-p, python-indent)
(python-guess-indent, python-buffer, python-preoutput-result)
(python-proc, python-send-receive, python-send-string)
(python-use-skeletons):
* lisp/progmodes/sh-script.el (sh-maybe-here-document):
* lisp/replace.el (query-replace-interactive):
* lisp/strokes.el (strokes-modeline-string):
* lisp/subr.el (redraw-modeline):
* lisp/term.el (term-default-fg-color, term-default-bg-color):
* lisp/textmodes/tex-mode.el (latex-string-prefix-p)
(tex-string-prefix-p):
* lisp/url/url-parse.el (url-recreate-url-attributes):
* lisp/vc/add-log.el (change-log-acknowledgement):
* lisp/vc/ediff-wind.el
(ediff-choose-window-setup-function-automatically):
* lisp/vc/pcvs-util.el (cvs-string-prefix-p):
* lisp/vc/vc.el (vc-string-prefix-p):
* lisp/window.el (display-buffer-function):
* lisp/winner.el (winner-mode-leave-hook): Remove many functions and
variables obsolete since 24.3.

* lisp/buff-menu.el (list-buffers--refresh):
* lisp/dired.el (dired-mode-map):
* lisp/files.el (abbreviate-file-name):
* lisp/generic-x.el (generic-default-modes):
* lisp/mh-e/mh-funcs.el (mh-kill-folder):
* lisp/progmodes/hideif.el (hide-ifdef-mode-submap):
* lisp/replace.el (query-replace-read-from):
* lisp/term.el (term):
* lisp/window.el (display-buffer): Don't use above deleted
functions and variables.

* src/marker.c (Fbuffer_has_markers_at): Delete DEFUN obsolete
since 24.3.
(syms_of_marker) <Sbuffer_has_markers_at>: Delete defsubr.
* lisp/subr.el (buffer-has-markers-at): Remove obsoletion
of above deleted DEFUN.
* etc/TODO: Doc fix; don't mention above deleted function.

* admin/cus-test.el (cus-test-get-options):
* lisp/pcomplete.el: Doc fixes; don't mention removed items.
; * etc/NEWS: List removed items.
2022-09-09 11:27:30 +02:00
Stefan Monnier
2a78f06ef4 cl-symbol-macrolet: Fix recent regression
The recent fix for bug#57397 introduced a regression, breaking
the `cl-lib-symbol-macrolet-hide` test.  It turned out that the
origin of the problem was that `gv.el` uses `macroexpand-1` which
does not (can't) use `macroexpand` but `cl-symbol-macrolet` failed
to advise `macroexpand-1` the way it advised `macroexpand`.

To fix this, we change `cl-symbol-macrolet` so it advises both, and we
do that with a new `macroexpand` advice which delegates the bulk of
the work to `macroexpand-1`.

Along the way, I bumped into another bug in the interaction between
`cl-letf` and `cl-symbol-macrolet`, which I tried to fix in `cl-letf`.

I hear the war on `cl-symbol-macrolet` was a failure.
Maybe ... just say no?

* lisp/emacs-lisp/cl-macs.el (cl--sm-macroexpand-1): New function,
extracted from `cl--sm-macroexpand`.
(cl--sm-macroexpand): Rewrite completely.
(cl-symbol-macrolet): Advise both `macroexpand` and `macroexpand-1`.
(cl--letf): Don't use the "simple variable" code for symbol macros.

* test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-symbol-macrolet-hide):
Revert last change because the test was right.

* test/lisp/emacs-lisp/cl-macs-tests.el
(cl-macs-test--symbol-macrolet): Add a test case.
2022-09-06 00:08:35 -04:00
Juri Linkov
1763cd4727 Fit the re-builder window to the buffer
* lisp/emacs-lisp/re-builder.el (re-builder): Fit the height to
the buffer (bug#56772).
2022-09-05 20:58:27 +02:00
Stefan Kangas
5c8b76fc87 Merge from origin/emacs-28
5713c730f2 Update to Org 9.5.5
aad38d6010 * lisp/emacs-lisp/comp.el (comp-run-async-workers): Fail m...
2022-09-05 06:30:32 +02:00
Damien Cassou
4751b51d5e Add new function `seq-positions'
* doc/lispref/sequences.texi (Sequence Functions): Document it.

* lisp/emacs-lisp/seq.el (seq-positions): New function.

* lisp/emacs-lisp/shortdoc.el (sequence): Mention it.

* test/lisp/emacs-lisp/seq-tests.el (test-seq-positions): Test it
(bug#57548).
2022-09-04 13:21:59 +02:00
Damien Cassou
2db8b0e12f Add new function `seq-remove-at-position'
* doc/lispref/sequences.texi (Sequence Functions): Document it.

* lisp/emacs-lisp/seq.el (seq-remove-at-position): New function.

* lisp/emacs-lisp/shortdoc.el (sequence): Mention it.

* test/lisp/emacs-lisp/seq-tests.el (test-seq-remove-at-position):
Test it.
2022-09-04 13:07:18 +02:00
Damien Cassou
77b761dafa Improve documentation of several functions in seq.el
* doc/lispref/sequences.texi (Sequence Functions):
* lisp/emacs-lisp/seq.el (seq-contains):
(seq-contains-p):
(seq-set-equal-p):
(seq-position):
(seq-union):
(seq-intersection):
(seq-difference): Use more standard wording in the docstrings
(bug#57561).
2022-09-04 13:00:22 +02:00
Stefan Monnier
2dd1c2ab19 gv.el and cl-macs.el: Fix bug#57397
* lisp/emacs-lisp/gv.el (gv-get): Obey symbol macros.
* lisp/emacs-lisp/cl-macs.el (cl--letf): Remove workaround placed to
try and handle symbol macros.

* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-test--symbol-macrolet):
Add new testcase.
2022-09-03 22:38:28 -04:00
Stefan Monnier
aad38d6010 * lisp/emacs-lisp/comp.el (comp-run-async-workers): Fail more gracefully
Otherwise Emacs may fail to start if it can't find a writable
`~/.emacs.d/eln-cache` directory.
Fixes bug#57562.  See also Debian's bug #1017739.
2022-09-03 15:14:58 -04:00
Mattias Engdegård
99a5a72537 lisp/emacs-lisp/seq.el: remove unnecessary compatibility code
* lisp/emacs-lisp/seq.el (seq-take, seq--activate-font-lock-keywords):
Simplify unnecessarily guarded code, as this file will only ever be
used with the same version of Emacs.
2022-09-03 17:59:42 +02:00
Stefan Monnier
b01d529e8d * lisp/emacs-lisp/macroexp.el (macroexp--compiler-macro): Soften message
Clarify that the error is "harmless".
2022-09-03 11:03:32 -04:00
Stefan Monnier
d60e930d34 * lisp/emacs-lisp/cl-macs.el: Use define-symbol-prop (bug#50869)
(cl-define-compiler-macro, cl-defstruct, cl-deftype): Prefer
`define-symbol-prop` over `put` so `unload-feature` can undo
those definitions.
2022-09-03 10:55:10 -04:00
Lars Ingebrigtsen
6c11214dc1 Inhibit nativecomp of loaddefs files
* lisp/emacs-lisp/generate-lisp-file.el
(generate-lisp-file-trailer): Allow inhibiting nativecomp.

* lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate--rubric):
Inhibit native-comp, because it's not very useful for loaddefs files.
2022-09-03 14:23:26 +02:00
Eli Zaretskii
dcfe3314cd Teach 'max-char' about the Unicode code range
* src/character.c (Fmax_char): Accept an optional argument
UNICODE, and, if non-nil, return the maximum codepoint defined by
Unicode.

* lisp/emacs-lisp/comp.el (comp-known-type-specifiers): Update the
signature of 'max-char'.

* etc/NEWS:
* doc/lispref/nonascii.texi (Character Codes): Update the
documentation of 'max-char'.
2022-09-03 13:45:53 +03:00
Lars Ingebrigtsen
965ebf3484 Fix define-minor-mode :keymap obsoletion warning
* lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Fix some
warning.
2022-09-02 14:58:30 +02:00
Lars Ingebrigtsen
119d59531e Make easy-mmode-define-keymap obsolete
* lisp/emacs-lisp/easy-mmode.el (easy-mmode-define-keymap): Make
obsolete.
(define-minor-mode): Add comment.
2022-09-01 13:42:19 +02:00
Lars Ingebrigtsen
8bb5c1bfec Make easy-mmode-defmap obsolete and adjust only caller
* lisp/emacs-lisp/easy-mmode.el (easy-mmode-defmap): Make obsolete.
* lisp/progmodes/gud.el (gud-menu-map): Use easy-menu-define.
2022-09-01 13:39:14 +02:00
Philip Kaludercic
d5dbf0804c
* package-vc.el (package-vc-unpack): Fix 'vc-ignore' call
When generating the manual node (/dir), we need to ensure that the
default-directory is set to the package root, otherwise the file is
ignored in some other repository, that probably doesn't exist.
2022-08-30 11:28:54 +02:00
Yuan Fu
77d5a0cf9f Merge remote-tracking branch 'origin/master' into feature/tree-sitter 2022-08-29 11:41:10 -07:00
Lars Ingebrigtsen
b28b2cefae Fix warning about obsoleted generalized variables
* lisp/emacs-lisp/bytecomp.el (byte-compile-warn-obsolete):
Autoload so that the call here from gv.el (about obsolete
generalized variables) doesn't bug out (bug#57394).
2022-08-25 14:54:49 +02:00
Lars Ingebrigtsen
a8a3608c07 Make frame-width obsolete as a generalized variable
* lisp/emacs-lisp/gv.el (frame-width): Make obsolete as
generalized variable.
2022-08-25 14:42:59 +02:00
Lars Ingebrigtsen
de3efaa683 Add NEWS entry about obsoleted generalized variables 2022-08-23 17:04:55 +02:00
Stefan Kangas
8673c0e256 Make XEmacs compat alias face-background-pixmap obsolete
* lisp/faces.el (face-background-pixmap)
(set-face-background-pixmap): Make XEmacs compat aliases obsolete in
favor of 'face-stipple' and 'set-face-stipple'.  Update callers.

* lisp/emacs-lisp/gv.el (face-background-pixmap): Make XEmacs
alias obsolete as a generalized variable.
(face-stipple): New generalized variable.
* doc/misc/cl.texi (Setf Extensions): Refer to above new generalized
variable instead of the obsolete one.
2022-08-23 16:51:31 +02:00
Stefan Kangas
4ee8a6c124 ; Minor doc fix in easy-menu-{add,remove}
* lisp/emacs-lisp/easymenu.el (easy-menu-remove, easy-menu-add):
Minor doc fix: don't explain what this does in XEmacs.
2022-08-23 16:24:54 +02:00
Lars Ingebrigtsen
48b0f2606b Revert the changes to lisp-current-defun-name
* lisp/emacs-lisp/lisp-mode.el (lisp-current-defun-name): Revert
back to the old version before bug#49592.  The new approach just
doesn't work well enough -- we don't really have the data to know
that, say, `make-obsolete-variable' is about the second symbol and
not the first.
2022-08-23 12:26:24 +02:00
Lars Ingebrigtsen
915efbff98 Make buffer-local-value obsolete as a generalized variable
* lisp/electric.el (electric-indent-local-mode)
(electric-layout-local-mode, electric-quote-local-mode):
* lisp/elec-pair.el (electric-pair-local-mode): Adjust usage.
* lisp/emacs-lisp/gv.el (make-obsolete-generalized-variable): Move
since we're using it earlier in the file.
(buffer-local-value): Make obsolete as a generalized variable
since the semantics are unclear (bug#26624).
2022-08-23 12:22:42 +02:00
Stefan Kangas
b7e867b841 Make point-at-eol and point-at-bol obsolete
* lisp/subr.el (point-at-eol, point-at-bol): Make XEmacs compat
aliases obsolete in favor of `pos-bol'/'line-beginning-position' or
'pos-eol'/'line-end-position'.  Update callers.
Ref: https://lists.gnu.org/r/emacs-devel/2022-08/msg00853.html
2022-08-23 04:54:57 +02:00
Lars Ingebrigtsen
06d7161476 Fix some no-X build warnings
* lisp/cus-edit.el (fringe-bitmap-p): Autoload.

* lisp/image.el (clear-image-cache): Declare.

* lisp/mouse.el (dnd-begin-file-dram): Autoload.

* lisp/thumbs.el (image-supported-file-p): Declare (bug#57342).

* lisp/mail/rmailmm.el (rmail-mime-set-bulk-data):
* lisp/emacs-lisp/icons.el (icons--create): Avoid warnings on no-X
builds.
2022-08-22 19:22:33 +02:00
Stefan Kangas
ac90530a0a Prefer pos-bol and pos-eol in tabulated-list.el
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-print)
(tabulated-list-print-entry, tabulated-list-delete-entry)
(tabulated-list-set-col, tabulated-list-previous-column): Prefer
pos-bol and pos-eol.
2022-08-22 15:08:48 +02:00
Stefan Kangas
a7557f2483 ; * lisp/emacs-lisp/shortdoc.el (buffer): Improve sorting. 2022-08-22 15:08:48 +02:00
Lars Ingebrigtsen
d921424891 Remove probably debugging code in reb-fontify-string-re
* lisp/emacs-lisp/re-builder.el (reb-fontify-string-re): Remove
code that looks like left-over debugging code.  This fixes a
compilation warning.
2022-08-22 13:00:36 +02:00
Andrea Corallo
a5e36575ae * lisp/emacs-lisp/comp.el (comp-known-type-specifiers): Fix some type spec 2022-08-22 10:29:18 +02:00
Lars Ingebrigtsen
ae5fe348fb Revert "Make the generalized buffer-local-variable obsolete"
This reverts commit bfe222288e.

This led to the local modes not working.
2022-08-22 00:14:07 +02:00
Lars Ingebrigtsen
bfe222288e Make the generalized buffer-local-variable obsolete
* lisp/paren.el (show-paren-local-mode):
* lisp/electric.el (electric-indent-local-mode)
(electric-layout-local-mode, electric-quote-local-mode):
* lisp/elec-pair.el (electric-pair-local-mode): Don't use it.

* lisp/emacs-lisp/bytecomp.el (byte-compile-warn-obsolete): Autoload.

* lisp/emacs-lisp/gv.el (buffer-local-variable): Make obsolete
(bug#26624).

* lisp/emacs-lisp/gv.el (make-obsolete-generalized-variable): Move
to allow usage.
2022-08-21 23:38:09 +02:00
Lars Ingebrigtsen
48aacbf292 Make many seldom-used generalized variables obsolete
The vast majority of these are unused in-tree, and many of them
perform actions that aren't obvious when reading the code.

* lisp/server.el (server-ensure-safe-dir): Prefer with-file-modes
over letf-ing default-file-modes.
(server-start): Ditto.

* lisp/winner.el (winner-set-conf): Don't use generalized variable
window-height.

* lisp/emacs-lisp/gv.el: Make most little-used generalized
variables obsolete.

* lisp/org/oc-basic.el (org-cite-basic--set-keymap): Adjust
buffer-substring generalized variable usage.
2022-08-21 22:12:43 +02:00
Lars Ingebrigtsen
6ddcf67052 Make it possible to mark generalized variables as obsolete
* doc/lispref/variables.texi (Adding Generalized Variables):
Document it.

* lisp/emacs-lisp/bytecomp.el (byte-compile-warn-obsolete): Alter
the interface so that it can also be used by generalized variable
warnings.
(byte-compile-function-warn): Adjust caller.
(byte-compile-check-variable): Adjust caller.

* lisp/emacs-lisp/gv.el (gv-get): Warn about obsolete generalized
variables (bug#49730).
(make-obsolete-generalized-variable): New function.
2022-08-21 21:46:14 +02:00
Lars Ingebrigtsen
958924a812 Mention delete-line in shortdoc
* lisp/emacs-lisp/shortdoc.el (buffer): Mention delete-line.
2022-08-21 18:17:56 +02:00
Mattias Engdegård
965fad0d36 Update function properties and optimisations
* lisp/emacs-lisp/byte-opt.el (byte-opt--bool-value-form):
Recognise boolean identity in aset, put, function-put and puthash.
* lisp/emacs-lisp/byte-opt.el (byte-compile-trueconstp):
Mark more functins as non-nil-returning, including the new
pos-bol and pos-eol.
* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns):
Mark pos-bol and pos-eol as side-effect-free.
2022-08-21 16:26:59 +02:00
Mattias Engdegård
f57297c8b2 * lisp/emacs-lisp/shortdoc.el (buffer): Add missing functions
Add preceding-char and char-before because following-char and
char-after were already there.
2022-08-21 16:18:03 +02:00
Lars Ingebrigtsen
2614e53216 Rename newly-added eol/bol functions to pos-eol/pos-bol
* lisp/emacs-lisp/shortdoc.el (buffer):
* doc/lispref/positions.texi (Text Lines): Adjust.
* src/editfns.c (Fpos_bol): Rename from Fpos.
(Fpos_eol): Rename from Feol.
2022-08-21 14:04:52 +02:00
Philip Kaludercic
54dbd7d55c
* package-vc.el (package-vc-unpack): Ignore dir files 2022-08-20 17:07:23 +02:00
Mattias Engdegård
9a7b3673e0 Move while syntax check from optimiser to macroexpand
* lisp/emacs-lisp/byte-opt.el (byte-optimize-while): Move check...
* lisp/emacs-lisp/macroexp.el (macroexp--expand-all): ...here.
2022-08-19 21:23:48 +02:00
Philip Kaludercic
820036dafe
* package-vc.el (package-vc-unpack): Mark packages as selected 2022-08-19 20:37:09 +02:00
Stefan Kangas
935e4da0e1 Display new keybinding in obsolete command warning
* lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
* lisp/simple.el (command-execute): When warning about an obsolete
command, display the keybinding for the new command.
2022-08-19 19:00:24 +02:00
Stefan Kangas
b7d6ebff07 ; Delete not-useful comments referring to Emacs 19. 2022-08-19 18:05:51 +02:00
Lars Ingebrigtsen
f117b5df4d Add new functions eol and bol
* doc/lispref/positions.texi (Text Lines): Document them
* lisp/emacs-lisp/shortdoc.el: Mention them, and also the
buffer/line predicates.

* src/editfns.c (bol): New function.
(Fbol): New defun.
(Fline_beginning_position): Use `bol'.
(eol): New function.
(Feol): New defun.
(Fline_end_position): Use `eol'.
2022-08-19 15:22:36 +02:00