1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-30 04:10:54 -08:00

Merge remote-tracking branch 'savannah/master' into native-comp

This commit is contained in:
Andrea Corallo 2021-04-05 21:00:18 +02:00
commit 74b58f28ec
143 changed files with 2061 additions and 1892 deletions

View file

@ -50,6 +50,8 @@ help:
@echo "make distclean -- delete all build and configuration files,"
@echo " leave only files included in source distribution"
@echo "make maintainer-clean -- delete almost everything that can be regenerated"
@echo "make extraclean -- like maintainer-clean, and also delete"
@echo " backup and autosave files"
@echo "make bootstrap -- delete all compiled files to force a new bootstrap"
@echo " from a clean slate, then build in the normal way"
@echo "make uninstall -- remove files installed by 'make install'"

View file

@ -48,8 +48,6 @@
#
# make extraclean
# Still more severe - delete backup and autosave files, too.
# Also generated files that do not normally change and can be slow
# to rebuild (eg leim/ja-dic).
#
# make bootstrap
# Removes all the compiled files to force a new bootstrap from a
@ -941,7 +939,7 @@ maintainer-clean: bootstrap-clean $(maintainer_clean_dirs:=_maintainer-clean)
### Note that we abuse this in some subdirectories (eg leim),
### to delete some generated files that are slow to rebuild.
extraclean_dirs = ${NTDIR} lib-src src leim \
admin/charsets admin/grammars admin/unidata lisp lib
admin/charsets admin/grammars admin/unidata lisp lib lwlib
$(foreach dir,$(extraclean_dirs),$(eval $(call submake_template,$(dir),extraclean)))

View file

@ -297,17 +297,19 @@ ${charsetdir}/%.map: ${GLIBC_CHARMAPS}/%.gz ${mapconv} ${compact}
${AM_V_GEN}${run_mapconv} $< '/^<.*[ ]\/x/' GLIBC-1 ${compact} > $@
.PHONY: clean bootstrap-clean distclean maintainer-clean extraclean
.PHONY: clean bootstrap-clean distclean maintainer-clean extraclean gen-clean
clean:
## IMO this should also run gen-clean.
bootstrap-clean: clean
distclean: clean
rm -f Makefile
maintainer-clean: distclean
## Do not remove these files, even in a bootstrap. They rarely change.
extraclean:
gen-clean:
rm -f ${CHARSETS} ${SED_SCRIPT} ${TRANS_TABLE} ${srcdir}/charsets.stamp
maintainer-clean: gen-clean distclean
extraclean: maintainer-clean

View file

@ -34,7 +34,7 @@ top_builddir = @top_builddir@
unexport EMACSDATA EMACSDOC EMACSPATH
EMACS = ${top_builddir}/src/emacs
emacs = EMACSLOADPATH= "${EMACS}" -batch --no-site-file --no-site-lisp
emacs = EMACSLOADPATH= "${EMACS}" -batch --no-site-file --no-site-lisp --eval '(setq load-prefer-newer t)'
make_bovine = ${emacs} -l semantic/bovine/grammar -f bovine-batch-make-parser
make_wisent = ${emacs} -l semantic/wisent/grammar -f wisent-batch-make-parser
@ -43,6 +43,9 @@ cedetdir = ${top_srcdir}/lisp/cedet
bovinedir = ${cedetdir}/semantic/bovine
wisentdir = ${cedetdir}/semantic/wisent
grammar_bovine = ${bovinedir}/grammar.el
grammar_wisent = ${wisentdir}/grammar.el
BOVINE = \
${bovinedir}/c-by.el \
${bovinedir}/make-by.el \
@ -51,7 +54,7 @@ BOVINE = \
## FIXME Should include this one too:
## ${cedetdir}/semantic/grammar-wy.el
## but semantic/grammar.el (which is what we use to generate grammar-wy.el)
## requires it!
## requires it! https://debbugs.gnu.org/16008
WISENT = \
${wisentdir}/javat-wy.el \
${wisentdir}/js-wy.el \
@ -69,46 +72,46 @@ bovine: ${BOVINE}
wisent: ${WISENT}
## c-by.el, make-by.el.
${bovinedir}/%-by.el: ${srcdir}/%.by
${bovinedir}/%-by.el: ${srcdir}/%.by ${grammar_bovine}
$(AM_V_GEN)[ ! -f "$@" ] || chmod +w "$@"
$(AM_V_at)${make_bovine} -o "$@" $<
${bovinedir}/scm-by.el: ${srcdir}/scheme.by
${bovinedir}/scm-by.el: ${srcdir}/scheme.by ${grammar_bovine}
$(AM_V_GEN)[ ! -f "$@" ] || chmod +w "$@"
$(AM_V_at)${make_bovine} -o "$@" $<
## grammar-wy.el
${cedetdir}/semantic/%-wy.el: ${srcdir}/%.wy
${cedetdir}/semantic/%-wy.el: ${srcdir}/%.wy ${grammar_wisent}
$(AM_V_GEN)[ ! -f "$@" ] || chmod +w "$@"
$(AM_V_at)${make_wisent} -o "$@" $<
## js-wy.el, python-wy.el
${wisentdir}/%-wy.el: ${srcdir}/%.wy
${wisentdir}/%-wy.el: ${srcdir}/%.wy ${grammar_wisent}
$(AM_V_GEN)[ ! -f "$@" ] || chmod +w "$@"
$(AM_V_at)${make_wisent} -o "$@" $<
${wisentdir}/javat-wy.el: ${srcdir}/java-tags.wy
${wisentdir}/javat-wy.el: ${srcdir}/java-tags.wy ${grammar_wisent}
$(AM_V_GEN)[ ! -f "$@" ] || chmod +w "$@"
$(AM_V_at)${make_wisent} -o "$@" $<
${cedetdir}/srecode/srt-wy.el: ${srcdir}/srecode-template.wy
${cedetdir}/srecode/srt-wy.el: ${srcdir}/srecode-template.wy ${grammar_wisent}
$(AM_V_GEN)[ ! -f "$@" ] || chmod +w "$@"
$(AM_V_at)${make_wisent} -o "$@" $<
.PHONY: distclean bootstrap-clean maintainer-clean extraclean
.PHONY: distclean bootstrap-clean maintainer-clean extraclean gen-clean
distclean:
rm -f Makefile
## Perhaps this should do what extraclean (qv) does.
## IMO this should run gen-clean.
bootstrap-clean:
maintainer-clean: distclean
## We do not normally delete the generated files, even in bootstrap.
## Creating them does not take long, so we could easily change this.
extraclean:
gen-clean:
rm -f ${ALL}
maintainer-clean: gen-clean distclean
extraclean: maintainer-clean
# Makefile.in ends here

View file

@ -85,26 +85,26 @@ ${unidir}/charscript.el: ${srcdir}/Blocks.txt ${blocks}
$(AM_V_GEN)$(AWK) -f ${blocks} < $< > $@
.PHONY: clean bootstrap-clean distclean maintainer-clean extraclean
.PHONY: clean bootstrap-clean distclean maintainer-clean extraclean gen-clean
clean:
rm -f ${srcdir}/*.elc unidata.txt
## IMO this should also run gen-clean.
bootstrap-clean: clean
distclean: clean
rm -f Makefile
maintainer-clean: distclean
## Do not remove these files, even in a bootstrap, because they rarely
## change and it slows down bootstrap (a tiny bit).
## Cf leim/ja-dic (which is much slower).
## macuvs.h is a generated file, but it's also checked in because
## macOS builds would need to do a headless bootstrap without it,
## which is currently awkward. To avoid changing checked-in files
## from a make target, we don't delete it here.
extraclean: distclean
gen-clean:
rm -f ${unidir}/charscript.el*
rm -f ${unifiles} ${unidir}/charprop.el
## ref: https://lists.gnu.org/r/emacs-devel/2013-11/msg01029.html
maintainer-clean: gen-clean distclean
extraclean: maintainer-clean

View file

@ -1364,19 +1364,6 @@ C-e}:
(this is an unquoted list)
@end smallexample
@ignore
@noindent
What you see depends on which version of Emacs you are running. GNU
Emacs version 22 provides more information than version 20 and before.
First, the more recent result of generating an error; then the
earlier, version 20 result.
@need 1250
@noindent
In GNU Emacs version 22, a @file{*Backtrace*} window will open up and
you will see the following in it:
@end ignore
A @file{*Backtrace*} window will open up and you should see the
following in it:
@ -1838,19 +1825,6 @@ Debugger entered--Lisp error: (void-function fill-column)
(Remember, to quit the debugger and make the debugger window go away,
type @kbd{q} in the @file{*Backtrace*} buffer.)
@ignore
@need 800
In GNU Emacs 20 and before, you will produce an error message that says:
@smallexample
Symbol's function definition is void:@: fill-column
@end smallexample
@noindent
(The message will go away as soon as you move the cursor or type
another key.)
@end ignore
@node Void Variable
@subsection Error Message for a Symbol Without a Value
@cindex Symbol without value error
@ -1907,18 +1881,6 @@ Since @code{+} does not have a value bound to it, just the function
definition, the error message reported that the symbol's value as a
variable was void.
@ignore
@need 800
In GNU Emacs version 20 and before, your error message will say:
@example
Symbol's value as variable is void:@: +
@end example
@noindent
The meaning is the same as in GNU Emacs 22.
@end ignore
@node Arguments
@section Arguments
@cindex Arguments
@ -2197,19 +2159,6 @@ addition had been passed the correct type of object, the value passed
would have been a number, such as 37, rather than a symbol like
@code{hello}. But then you would not have got the error message.
@ignore
@need 1250
In GNU Emacs version 20 and before, the echo area displays an error
message that says:
@smallexample
Wrong type argument:@: number-or-marker-p, hello
@end smallexample
This says, in different words, the same as the top line of the
@file{*Backtrace*} buffer.
@end ignore
@node message
@subsection The @code{message} Function
@findex message
@ -6663,9 +6612,9 @@ original text of the function:
@end group
@end smallexample
(In recent versions of GNU Emacs, the @code{what-line} function has
(In modern versions of GNU Emacs, the @code{what-line} function has
been expanded to tell you your line number in a narrowed buffer as
well as your line number in a widened buffer. The recent version is
well as your line number in a widened buffer. The modern version is
more complex than the version shown here. If you feel adventurous,
you might want to look at it after figuring out how this version
works. You will probably need to use @kbd{C-h f}
@ -10392,9 +10341,8 @@ echo area: @code{^Jgazelle^J^Jgiraffe^J^Jlion^J^Jtiger^Jnil}, in which
each @samp{^J} stands for a newline.)
@need 1500
In a recent instance of GNU Emacs, you can evaluate these expressions
directly in the Info buffer, and the echo area will grow to show the
results.
You can evaluate these expressions directly in the Info buffer, and
the echo area will grow to show the results.
@smallexample
@group
@ -18104,8 +18052,7 @@ argument of 4:
@end smallexample
@noindent
In a recent GNU Emacs, you will create and enter a @file{*Backtrace*}
buffer that says:
This will create and enter a @file{*Backtrace*} buffer that says:
@noindent
@smallexample
@ -18139,25 +18086,12 @@ In practice, for a bug as simple as this, the Lisp error line will
tell you what you need to know to correct the definition. The
function @code{1=} is void.
@ignore
@need 800
In GNU Emacs 20 and before, you will see:
@smallexample
Symbol's function definition is void:@: 1=
@end smallexample
@noindent
which has the same meaning as the @file{*Backtrace*} buffer line in
version 21.
@end ignore
However, suppose you are not quite certain what is going on?
You can read the complete backtrace.
In this case, you need to run a recent GNU Emacs, which automatically
starts the debugger that puts you in the @file{*Backtrace*} buffer; or
else, you need to start the debugger manually as described below.
Emacs automatically starts the debugger that puts you in the
@file{*Backtrace*} buffer. You can also start the debugger manually
as described below.
Read the @file{*Backtrace*} buffer from the bottom up; it tells you
what Emacs did that led to the error. Emacs made an interactive call
@ -18197,14 +18131,8 @@ then run your test again.
@section @code{debug-on-entry}
@findex debug-on-entry
A recent GNU Emacs starts the debugger automatically when your
function has an error.
@ignore
GNU Emacs version 20 and before did not; it simply
presented you with an error message. You had to start the debugger
manually.
@end ignore
Emacs starts the debugger automatically when your function has an
error.
Incidentally, you can start the debugger manually for all versions of
Emacs; the advantage is that the debugger runs even if you do not have
@ -20079,8 +20007,8 @@ the tic marks themselves and their spacing:
@code{defvar}. The @code{boundp} predicate checks whether it has
already been set; @code{boundp} returns @code{nil} if it has not. If
@code{graph-blank} were unbound and we did not use this conditional
construction, in a recent GNU Emacs, we would enter the debugger and
see an error message saying @samp{@w{Debugger entered--Lisp error:}
construction, we would enter the debugger and see an error message
saying @samp{@w{Debugger entered--Lisp error:}
@w{(void-variable graph-blank)}}.)
@need 1200

View file

@ -5751,6 +5751,28 @@ Cropping is performed after scaling but before rotation.
@cindex SVG images
SVG (Scalable Vector Graphics) is an XML format for specifying images.
SVG images support the following additional image descriptor
properties:
@table @code
@item :foreground @var{foreground}
@var{foreground}, if non-@code{nil}, should be a string specifying a
color, which is used as the image's foreground color. If the value is
@code{nil}, it defaults to the faces's foreground color.
@item :background @var{background}
@var{background}, if non-@code{nil}, should be a string specifying a
color, which is used as the image's background color if the image
supports transparency. If the value is @code{nil}, it defaults to the
faces's background color.
@item :css @var{css}
@var{css}, if non-@code{nil}, should be a string specifying the CSS to
override the default CSS used when generating the image.
@end table
@subsubheading SVG library
If your Emacs build has SVG support, you can create and manipulate
these images with the following functions from the @file{svg.el}
library.

View file

@ -22,7 +22,7 @@ SHELL = @SHELL@
# Where to find the source code. $(srcdir) will be the doc/misc subdirectory
# of the source tree. This is set by configure's '--srcdir' option.
srcdir=@srcdir@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@
## Where the output files go.
@ -100,10 +100,6 @@ texi_sources = $(addsuffix .texi,${TARGETS})
texi_notgen = $(filter-out $(notdir ${TEXI_FROM_ORG}),${texi_sources})
texi_and_org = $(notdir ${ORG_SRC}) ${texi_notgen}
SOURCES = $(sort ${texi_and_org})
.PHONY: echo-sources
## Used by the top-level Makefile.
echo-sources:
@echo ${SOURCES}
DVI_TARGETS = $(TARGETS:=.dvi)
HTML_TARGETS = $(TARGETS:=.html)
@ -122,7 +118,7 @@ ENVADD = $(AM_V_GEN)TEXINPUTS="$(srcdir):$(emacsdir):$(TEXINPUTS)" \
gfdl = ${srcdir}/doclicense.texi
style = ${emacsdir}/docstyle.texi
.PHONY: info dvi html pdf ps echo-info $(INFO_TARGETS)
.PHONY: info dvi html pdf ps echo-info echo-sources $(INFO_TARGETS)
## Prevent implicit rule triggering for foo.info.
.SUFFIXES:
@ -138,6 +134,9 @@ echo-info:
@echo "$(INFO_INSTALL) " | \
sed -e 's|[^ ]*/||g' -e 's/\.info//g' -e "s/ */.info /g"
echo-sources:
@echo ${SOURCES}
dvi: $(DVI_TARGETS)
html: $(HTML_TARGETS)
@ -235,14 +234,14 @@ ${buildinfodir}/tramp.info tramp.html: ${srcdir}/trampver.texi
abs_top_builddir = @abs_top_builddir@
EMACS = ${abs_top_builddir}/src/emacs
emacs = "${EMACS}" -batch --no-site-file --no-site-lisp
emacs = "${EMACS}" -batch --no-site-file --no-site-lisp --eval '(setq load-prefer-newer t)'
# Generated .texi files go in srcdir so they can be included in the
# release tarfile along with the others.
# Work in srcdir (and use abs_top_builddir) so that +setupfile and
# things like org-setup's "version" macro work. Sigh.
define org_template
$(1:.org=.texi): $(1)
$(1:.org=.texi): $(1) ${top_srcdir}/lisp/org/ox-texinfo.el
$${AM_V_GEN}cd "$${srcdir}" && $${emacs} -l ox-texinfo \
-f org-texinfo-export-to-texinfo-batch $$(notdir $$<) $$(notdir $$@)
endef

View file

@ -254,73 +254,6 @@ version 20.2. It has also been bundled and pre-installed with XEmacs
plug-in package which is available from the @value{XEMACSFTP}. See the
XEmacs 21.x documentation on package installation for details.
Users of earlier Emacs distributions (including Emacs 19) or people
craving for new features and bugs can get a copy of the @RefTeX{}
distribution from the maintainer's web page. @xref{Imprint}, for more
information. The following instructions will guide you through the
process of installing such a distribution.
@subsection Building and Installing
Note: Currently installation is supported for Emacs only. XEmacs users
might want to refer to the @RefTeX{} package available through the
package system of XEmacs.
@subsubheading Installation with make
In order to install RefTeX, unpack the distribution and edit the header
of the Makefile. Basically, you need to change the path specifications
for Emacs Lisp files and info files. Also, enter the name of your Emacs
executable (usually either @samp{emacs} or @samp{xemacs}).
Then, type
@example
make
make install
@end example
to compile and install the code and documentation.
Per default @RefTeX{} is installed in its own subdirectory which might
not be on your load path. In this case, add it to load path with a
command like the following, replacing the sample directory with the one
where @RefTeX{} is installed in your case.
@example
(add-to-list 'load-path "/path/to/reftex")
@end example
Put this command into your init file before other @RefTeX{}-related
settings.
@subsubheading Installation by Hand
If you want to get your hands dirty, there is also the possibility to
install by manually copying files.
@enumerate a
@item
Copy the reftex*.el lisp files to a directory on your load path. Make
sure that no old copy of @RefTeX{} shadows these files.
@item
Byte compile the files. The sequence of compiling should be:
reftex-var.el, reftex.el, and then all the others.
@item
Copy the info file reftex.info to the info directory.
@end enumerate
@subsection Loading @RefTeX{}
In order to make the most important functions for entering @RefTeX{}
mode available add the following line to your init file.
@example
(require 'reftex)
@end example
@subsection Entering @RefTeX{} Mode
@findex turn-on-reftex
@findex reftex-mode
@vindex LaTeX-mode-hook
@ -3259,9 +3192,9 @@ with the @kbd{g} key. To get this behavior, use instead
@AUCTeX{} is without doubt the best major mode for editing @TeX{} and @LaTeX{}
files with Emacs (@pxref{Top,AUCTeX,,auctex, The AUCTeX User Manual}).
If @AUCTeX{} is not part of your Emacs distribution, you can get
it@footnote{XEmacs 21.x users may want to install the corresponding
XEmacs package.} by FTP from the @value{AUCTEXSITE}.
You can get it from its home page at @value{AUCTEXSITE}, but since
it is available from GNU ELPA, you can simply install it from @kbd{M-x
list-packages}.
@menu
* AUCTeX-RefTeX Interface:: How both packages work together
@ -3610,18 +3543,6 @@ as a label of type @code{?p}. Argument count for this macro starts only
after the @samp{@{step+@}}, also when specifying how to get
context.
@item
@b{Idle timers in XEmacs}@*
@cindex Idle timer restart
@vindex reftex-use-itimer-in-xemacs
In XEmacs, idle timer restart does not work reliably after fast
keystrokes. Therefore @RefTeX{} currently uses the post command
hook to start the timer used for automatic crossref information. When
this bug gets fixed, a real idle timer can be requested with
@lisp
(setq reftex-use-itimer-in-xemacs t)
@end lisp
@item
@b{Viper mode}@*
@cindex Viper mode

View file

@ -105,11 +105,9 @@ Mile End Road, London E1 4NS, UK
@chapter Introduction
@cindex introduction
This version of WoMan should run with GNU Emacs 20.3 or later on any
platform. It has not been tested, and may not run, with any other
version of Emacs. It was developed primarily on various versions of
Microsoft Windows, but has also been tested on MS-DOS, and various
versions of UNIX and GNU/Linux.
WoMan was developed primarily on various versions of Microsoft
Windows, but has also been tested on MS-DOS, and various versions of
UNIX and GNU/Linux.
WoMan is distributed with GNU Emacs.

View file

@ -1061,6 +1061,10 @@ the commands 'customize', 'customize-group', 'customize-apropos' and
To customize obsolete user options, use 'customize-option' or
'customize-saved'.
*** New SVG icons for checkboxes and arrows.
They will be used automatically instead of the old icons. If Emacs is
built without SVG support, the old icons will be used instead.
** Edebug
*** Obsoletions
@ -1524,6 +1528,15 @@ This controls whether to use smoothing or not for an image. Values
include nil (no smoothing), t (do smoothing) or a predicate function
that's called with the image object and should return nil/t.
+++
*** SVG images now support user stylesheets.
The ':css' image attribute can be used to override the default CSS
stylesheet for an image. The default sets 'font-family' and
'font-size' to match the current face, so an image with 'height="1em"'
will match the font size in use where it is embedded.
This feature relies on librsvg 2.48 or above being available.
** EWW
+++

View file

@ -104,3 +104,30 @@ same conditions.
The *.pbm files were generally converted from *.xpm by running GIMP or
ImageMagick's 'convert'.
* The following icons are from the Adwaita Icon Theme (made by the
GNOME project). They are not part of Emacs, but are distributed and
used by Emacs. They are licensed under either the GNU LGPL v3 or the
Creative Commons Attribution-Share Alike 3.0 United States License.
To view a copy of the CC-BY-SA licence, visit
http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative
Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.
For more information see the adwaita-icon-theme repository at:
https://gitlab.gnome.org/GNOME/adwaita-icon-theme
Emacs images and their source in the Adwaita/scalable directory:
checked.svg ui/checkbox-checked-symbolic.svg
unchecked.svg ui/checkbox-symbolic.svg
checkbox-mixed.svg ui/checkbox-mixed-symbolic.svg
radio.svg ui/radio-symbolic.svg
radio-mixed.svg ui/radio-mixed-symbolic.svg
radio-checked.svg ui/radio-checked-symbolic.svg
down.svg ui/pan-down-symbolic.svg
left.svg ui/pan-start-symbolic.svg
right.svg ui/pan-end-symbolic.svg
up.svg ui/pan-up-symbolic.svg

View file

@ -0,0 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 16 16">
<g>
<path d="M3.5 1A2.506 2.506 0 0 0 1 3.5v9C1 13.876 2.124 15 3.5 15h9c1.376 0 2.5-1.124 2.5-2.5v-9C15 2.124 13.876 1 12.5 1zm0 1h9c.84 0 1.5 .66 1.5 1.5v9c0 .84-.66 1.5-1.5 1.5h-9c-.84 0-1.5-.66-1.5-1.5v-9C2 2.66 2.66 2 3.5 2z" overflow="visible" />
<path d="M5 6a2 2 0 1 0 0 4h6a2 2 0 1 0 0 -4z" overflow="visible" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 420 B

6
etc/images/checked.svg Normal file
View file

@ -0,0 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 16 16">
<g>
<path d="M3.5 1A2.506 2.506 0 0 0 1 3.5v9C1 13.876 2.124 15 3.5 15h9c1.376 0 2.5-1.124 2.5-2.5v-9C15 2.124 13.876 1 12.5 1zm0 1h9c.84 0 1.5 .66 1.5 1.5v9c0 .84-.66 1.5-1.5 1.5h-9c-.84 0-1.5-.66-1.5-1.5v-9C2 2.66 2.66 2 3.5 2z" overflow="visible" />
<path d="M14.5 3l-.5-.5L7.5 9 5 6.5l-2 2L7.5 13l7-7z" overflow="visible" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 427 B

40
etc/images/down.svg Normal file
View file

@ -0,0 +1,40 @@
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<svg xmlns:cc='http://creativecommons.org/ns#' xmlns:dc='http://purl.org/dc/elements/1.1/' sodipodi:docname='pan-down-symbolic.svg' inkscape:export-filename='/home/sam/source-symbolic.png' inkscape:export-xdpi='270' inkscape:export-ydpi='270' height='16' id='svg7384' xmlns:inkscape='http://www.inkscape.org/namespaces/inkscape' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:sodipodi='http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd' style='enable-background:new' xmlns:svg='http://www.w3.org/2000/svg' version='1.1' inkscape:version='1.0 (4035a4fb49, 2020-05-01)' width='16' xmlns='http://www.w3.org/2000/svg'>
<sodipodi:namedview inkscape:bbox-nodes='true' inkscape:bbox-paths='false' bordercolor='#000000' borderlayer='false' borderopacity='0.50196078' inkscape:current-layer='layer10' inkscape:cx='-8.85234' inkscape:cy='7.9624984' inkscape:document-rotation='0' gridtolerance='10' inkscape:guide-bbox='true' guidetolerance='10' id='namedview88' inkscape:measure-end='0,0' inkscape:measure-start='0,0' inkscape:object-nodes='true' inkscape:object-paths='true' objecttolerance='10' pagecolor='#e2e2e2' inkscape:pageopacity='0' inkscape:pageshadow='2' showborder='false' showgrid='true' showguides='false' inkscape:showpageshadow='false' inkscape:snap-bbox='true' inkscape:snap-bbox-edge-midpoints='false' inkscape:snap-bbox-midpoints='true' inkscape:snap-center='false' inkscape:snap-global='true' inkscape:snap-grids='true' inkscape:snap-intersection-paths='false' inkscape:snap-midpoints='true' inkscape:snap-nodes='true' inkscape:snap-object-midpoints='true' inkscape:snap-others='true' inkscape:snap-page='false' inkscape:snap-smooth-nodes='true' inkscape:snap-to-guides='true' inkscape:window-height='1205' inkscape:window-maximized='0' inkscape:window-width='1553' inkscape:window-x='26' inkscape:window-y='23' inkscape:zoom='1'>
<inkscape:grid color='#000000' dotted='false' empcolor='#0800ff' empopacity='0.4627451' empspacing='4' enabled='true' id='grid4866' opacity='0.16470588' originx='-152.00586' originy='-952' snapvisiblegridlinesonly='true' spacingx='1' spacingy='1' type='xygrid' visible='true'/>
<inkscape:grid dotted='true' empcolor='#3f3fff' empopacity='0' empspacing='4' id='grid3540' originx='-152.00586' originy='-952' spacingx='0.5' spacingy='0.5' type='xygrid'/>
</sodipodi:namedview>
<metadata id='metadata90'>
<rdf:RDF>
<cc:Work rdf:about=''>
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource='http://purl.org/dc/dcmitype/StillImage'/>
<dc:title>Gnome Symbolic Icons</dc:title>
<cc:license rdf:resource='http://creativecommons.org/licenses/by-sa/4.0/'/>
</cc:Work>
<cc:License rdf:about='http://creativecommons.org/licenses/by-sa/4.0/'>
<cc:permits rdf:resource='http://creativecommons.org/ns#Reproduction'/>
<cc:permits rdf:resource='http://creativecommons.org/ns#Distribution'/>
<cc:requires rdf:resource='http://creativecommons.org/ns#Notice'/>
<cc:requires rdf:resource='http://creativecommons.org/ns#Attribution'/>
<cc:permits rdf:resource='http://creativecommons.org/ns#DerivativeWorks'/>
<cc:requires rdf:resource='http://creativecommons.org/ns#ShareAlike'/>
</cc:License>
</rdf:RDF>
</metadata>
<title id='title8473'>Gnome Symbolic Icons</title>
<defs id='defs7386'/>
<g inkscape:groupmode='layer' id='layer10' inkscape:label='ui' transform='translate(-152.00586,-952)'>
<path inkscape:connector-curvature='0' d='m 166,957 -5.99414,5.99999 L 154,957 Z' id='path6424' sodipodi:nodetypes='cccc' style='fill:#2e3436;fill-opacity:1;stroke:none'/>
</g>
<g inkscape:groupmode='layer' id='layer1' inkscape:label='status' transform='translate(-152.00586,-888)'/>
<g inkscape:groupmode='layer' id='layer11' inkscape:label='legacy' transform='translate(-152.00586,-952)'/>
<g inkscape:groupmode='layer' id='layer7' inkscape:label='places' transform='translate(-152.00586,-888)'/>
<g inkscape:groupmode='layer' id='layer6' inkscape:label='mimetypes' transform='translate(-152.00586,-888)'/>
<g inkscape:groupmode='layer' id='layer5' inkscape:label='emotes' transform='translate(-152.00586,-888)'/>
<g inkscape:groupmode='layer' id='layer9' inkscape:label='emblems' transform='translate(-152.00586,-888)'/>
<g inkscape:groupmode='layer' id='layer2' inkscape:label='devices' transform='translate(-152.00586,-888)'/>
<g inkscape:groupmode='layer' id='layer8' inkscape:label='categories' transform='translate(-152.00586,-888)'/>
<g inkscape:groupmode='layer' id='layer3' inkscape:label='apps' transform='translate(-152.00586,-888)'/>
<g inkscape:groupmode='layer' id='layer4' inkscape:label='actions' transform='translate(-152.00586,-888)'/>
</svg>

After

Width:  |  Height:  |  Size: 4.7 KiB

40
etc/images/left.svg Normal file
View file

@ -0,0 +1,40 @@
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<svg xmlns:cc='http://creativecommons.org/ns#' xmlns:dc='http://purl.org/dc/elements/1.1/' sodipodi:docname='pan-start-symbolic.svg' inkscape:export-filename='/home/sam/source-symbolic.png' inkscape:export-xdpi='270' inkscape:export-ydpi='270' height='16' id='svg7384' xmlns:inkscape='http://www.inkscape.org/namespaces/inkscape' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:sodipodi='http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd' style='enable-background:new' xmlns:svg='http://www.w3.org/2000/svg' version='1.1' inkscape:version='1.0 (4035a4fb49, 2020-05-01)' width='16' xmlns='http://www.w3.org/2000/svg'>
<sodipodi:namedview inkscape:bbox-nodes='true' inkscape:bbox-paths='false' bordercolor='#000000' borderlayer='false' borderopacity='0.50196078' inkscape:current-layer='layer10' inkscape:cx='51.147672' inkscape:cy='7.96251' inkscape:document-rotation='0' gridtolerance='10' inkscape:guide-bbox='true' guidetolerance='10' id='namedview88' inkscape:measure-end='0,0' inkscape:measure-start='0,0' inkscape:object-nodes='true' inkscape:object-paths='true' objecttolerance='10' pagecolor='#e2e2e2' inkscape:pageopacity='0' inkscape:pageshadow='2' showborder='false' showgrid='true' showguides='false' inkscape:showpageshadow='false' inkscape:snap-bbox='true' inkscape:snap-bbox-edge-midpoints='false' inkscape:snap-bbox-midpoints='true' inkscape:snap-center='false' inkscape:snap-global='true' inkscape:snap-grids='true' inkscape:snap-intersection-paths='false' inkscape:snap-midpoints='true' inkscape:snap-nodes='true' inkscape:snap-object-midpoints='true' inkscape:snap-others='true' inkscape:snap-page='false' inkscape:snap-smooth-nodes='true' inkscape:snap-to-guides='true' inkscape:window-height='1205' inkscape:window-maximized='0' inkscape:window-width='1553' inkscape:window-x='26' inkscape:window-y='23' inkscape:zoom='1'>
<inkscape:grid color='#000000' dotted='false' empcolor='#0800ff' empopacity='0.4627451' empspacing='4' enabled='true' id='grid4866' opacity='0.16470588' originx='-92.005848' originy='-951.99999' snapvisiblegridlinesonly='true' spacingx='1' spacingy='1' type='xygrid' visible='true'/>
<inkscape:grid dotted='true' empcolor='#3f3fff' empopacity='0' empspacing='4' id='grid3540' originx='-92.005848' originy='-951.99999' spacingx='0.5' spacingy='0.5' type='xygrid'/>
</sodipodi:namedview>
<metadata id='metadata90'>
<rdf:RDF>
<cc:Work rdf:about=''>
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource='http://purl.org/dc/dcmitype/StillImage'/>
<dc:title>Gnome Symbolic Icons</dc:title>
<cc:license rdf:resource='http://creativecommons.org/licenses/by-sa/4.0/'/>
</cc:Work>
<cc:License rdf:about='http://creativecommons.org/licenses/by-sa/4.0/'>
<cc:permits rdf:resource='http://creativecommons.org/ns#Reproduction'/>
<cc:permits rdf:resource='http://creativecommons.org/ns#Distribution'/>
<cc:requires rdf:resource='http://creativecommons.org/ns#Notice'/>
<cc:requires rdf:resource='http://creativecommons.org/ns#Attribution'/>
<cc:permits rdf:resource='http://creativecommons.org/ns#DerivativeWorks'/>
<cc:requires rdf:resource='http://creativecommons.org/ns#ShareAlike'/>
</cc:License>
</rdf:RDF>
</metadata>
<title id='title8473'>Gnome Symbolic Icons</title>
<defs id='defs7386'/>
<g inkscape:groupmode='layer' id='layer10' inkscape:label='ui' transform='translate(-92.005848,-951.99999)'>
<path inkscape:connector-curvature='0' d='M 103,966 97.00585,959.99999 103,954 Z' id='path6400' sodipodi:nodetypes='cccc' style='fill:#2e3436;fill-opacity:1;stroke:none'/>
</g>
<g inkscape:groupmode='layer' id='layer1' inkscape:label='status' transform='translate(-92.005848,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer11' inkscape:label='legacy' transform='translate(-92.005848,-951.99999)'/>
<g inkscape:groupmode='layer' id='layer7' inkscape:label='places' transform='translate(-92.005848,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer6' inkscape:label='mimetypes' transform='translate(-92.005848,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer5' inkscape:label='emotes' transform='translate(-92.005848,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer9' inkscape:label='emblems' transform='translate(-92.005848,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer2' inkscape:label='devices' transform='translate(-92.005848,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer8' inkscape:label='categories' transform='translate(-92.005848,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer3' inkscape:label='apps' transform='translate(-92.005848,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer4' inkscape:label='actions' transform='translate(-92.005848,-887.99999)'/>
</svg>

After

Width:  |  Height:  |  Size: 4.8 KiB

View file

@ -0,0 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 16 16">
<g>
<path d="M8 5a3.001 3.001 0 0 0 0 6 3.001 3.001 0 0 0 0 -6z" overflow="visible"/>
<path d="M8.004 1C4.144 1 1 4.144 1 8.004c0 3.86 3.144 7.006 7.004 7.006 3.86 0 7.006-3.146 7.006-7.006C15.01 4.144 11.864 1 8.004 1zm0 1a6.002 6.002 0 0 1 6.006 6.004 6.004 6.004 0 0 1 -6.006 6.006A6.002 6.002 0 0 1 2 8.004 6 6 0 0 1 8.004 2z" overflow="visible"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 450 B

View file

@ -0,0 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 16 16">
<g>
<path d="M8 1C4.142 1 1 4.142 1 8s3.142 7 7 7 7-3.142 7-7-3.142-7-7-7zm0 1c3.316 0 6 2.684 6 6s-2.684 6-6 6-6-2.684-6-6 2.684-6 6-6z" overflow="visible" />
<path d="M5 6a2 2 0 1 0 0 4h6a2 2 0 1 0 0 -4z" overflow="visible" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 327 B

3
etc/images/radio.svg Normal file
View file

@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 16 16">
<path d="M8 1C4.142 1 1 4.142 1 8s3.142 7 7 7 7-3.142 7-7-3.142-7-7-7zm0 1c3.316 0 6 2.684 6 6s-2.684 6-6 6-6-2.684-6-6 2.684-6 6-6z" overflow="visible" />
</svg>

After

Width:  |  Height:  |  Size: 239 B

40
etc/images/right.svg Normal file
View file

@ -0,0 +1,40 @@
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<svg xmlns:cc='http://creativecommons.org/ns#' xmlns:dc='http://purl.org/dc/elements/1.1/' sodipodi:docname='pan-end-symbolic.svg' inkscape:export-filename='/home/sam/source-symbolic.png' inkscape:export-xdpi='270' inkscape:export-ydpi='270' height='16' id='svg7384' xmlns:inkscape='http://www.inkscape.org/namespaces/inkscape' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:sodipodi='http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd' style='enable-background:new' xmlns:svg='http://www.w3.org/2000/svg' version='1.1' inkscape:version='1.0 (4035a4fb49, 2020-05-01)' width='16' xmlns='http://www.w3.org/2000/svg'>
<sodipodi:namedview inkscape:bbox-nodes='true' inkscape:bbox-paths='false' bordercolor='#000000' borderlayer='false' borderopacity='0.50196078' inkscape:current-layer='layer10' inkscape:cx='31.147668' inkscape:cy='7.96251' inkscape:document-rotation='0' gridtolerance='10' inkscape:guide-bbox='true' guidetolerance='10' id='namedview88' inkscape:measure-end='0,0' inkscape:measure-start='0,0' inkscape:object-nodes='true' inkscape:object-paths='true' objecttolerance='10' pagecolor='#e2e2e2' inkscape:pageopacity='0' inkscape:pageshadow='2' showborder='false' showgrid='true' showguides='false' inkscape:showpageshadow='false' inkscape:snap-bbox='true' inkscape:snap-bbox-edge-midpoints='false' inkscape:snap-bbox-midpoints='true' inkscape:snap-center='false' inkscape:snap-global='true' inkscape:snap-grids='true' inkscape:snap-intersection-paths='false' inkscape:snap-midpoints='true' inkscape:snap-nodes='true' inkscape:snap-object-midpoints='true' inkscape:snap-others='true' inkscape:snap-page='false' inkscape:snap-smooth-nodes='true' inkscape:snap-to-guides='true' inkscape:window-height='1205' inkscape:window-maximized='0' inkscape:window-width='1553' inkscape:window-x='26' inkscape:window-y='23' inkscape:zoom='1'>
<inkscape:grid color='#000000' dotted='false' empcolor='#0800ff' empopacity='0.4627451' empspacing='4' enabled='true' id='grid4866' opacity='0.16470588' originx='-112.00585' originy='-951.99999' snapvisiblegridlinesonly='true' spacingx='1' spacingy='1' type='xygrid' visible='true'/>
<inkscape:grid dotted='true' empcolor='#3f3fff' empopacity='0' empspacing='4' id='grid3540' originx='-112.00585' originy='-951.99999' spacingx='0.5' spacingy='0.5' type='xygrid'/>
</sodipodi:namedview>
<metadata id='metadata90'>
<rdf:RDF>
<cc:Work rdf:about=''>
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource='http://purl.org/dc/dcmitype/StillImage'/>
<dc:title>Gnome Symbolic Icons</dc:title>
<cc:license rdf:resource='http://creativecommons.org/licenses/by-sa/4.0/'/>
</cc:Work>
<cc:License rdf:about='http://creativecommons.org/licenses/by-sa/4.0/'>
<cc:permits rdf:resource='http://creativecommons.org/ns#Reproduction'/>
<cc:permits rdf:resource='http://creativecommons.org/ns#Distribution'/>
<cc:requires rdf:resource='http://creativecommons.org/ns#Notice'/>
<cc:requires rdf:resource='http://creativecommons.org/ns#Attribution'/>
<cc:permits rdf:resource='http://creativecommons.org/ns#DerivativeWorks'/>
<cc:requires rdf:resource='http://creativecommons.org/ns#ShareAlike'/>
</cc:License>
</rdf:RDF>
</metadata>
<title id='title8473'>Gnome Symbolic Icons</title>
<defs id='defs7386'/>
<g inkscape:groupmode='layer' id='layer10' inkscape:label='ui' transform='translate(-112.00585,-951.99999)'>
<path inkscape:connector-curvature='0' d='m 117,966 6.00585,-6.00001 L 117,954 Z' id='path6412' sodipodi:nodetypes='cccc' style='fill:#2e3436;fill-opacity:1;stroke:none'/>
</g>
<g inkscape:groupmode='layer' id='layer1' inkscape:label='status' transform='translate(-112.00585,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer11' inkscape:label='legacy' transform='translate(-112.00585,-951.99999)'/>
<g inkscape:groupmode='layer' id='layer7' inkscape:label='places' transform='translate(-112.00585,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer6' inkscape:label='mimetypes' transform='translate(-112.00585,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer5' inkscape:label='emotes' transform='translate(-112.00585,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer9' inkscape:label='emblems' transform='translate(-112.00585,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer2' inkscape:label='devices' transform='translate(-112.00585,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer8' inkscape:label='categories' transform='translate(-112.00585,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer3' inkscape:label='apps' transform='translate(-112.00585,-887.99999)'/>
<g inkscape:groupmode='layer' id='layer4' inkscape:label='actions' transform='translate(-112.00585,-887.99999)'/>
</svg>

After

Width:  |  Height:  |  Size: 4.8 KiB

3
etc/images/unchecked.svg Normal file
View file

@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 16 16">
<path d="M3.5 1A2.506 2.506 0 0 0 1 3.5v9C1 13.876 2.124 15 3.5 15h9c1.376 0 2.5-1.124 2.5-2.5v-9C15 2.124 13.876 1 12.5 1zm0 1h9c.84 0 1.5 .66 1.5 1.5v9c0 .84-.66 1.5-1.5 1.5h-9c-.84 0-1.5-.66-1.5-1.5v-9C2 2.66 2.66 2 3.5 2z" overflow="visible" />
</svg>

After

Width:  |  Height:  |  Size: 332 B

40
etc/images/up.svg Normal file
View file

@ -0,0 +1,40 @@
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<svg xmlns:cc='http://creativecommons.org/ns#' xmlns:dc='http://purl.org/dc/elements/1.1/' sodipodi:docname='pan-up-symbolic.svg' inkscape:export-filename='/home/sam/source-symbolic.png' inkscape:export-xdpi='270' inkscape:export-ydpi='270' height='16' id='svg7384' xmlns:inkscape='http://www.inkscape.org/namespaces/inkscape' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:sodipodi='http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd' style='enable-background:new' xmlns:svg='http://www.w3.org/2000/svg' version='1.1' inkscape:version='1.0 (4035a4fb49, 2020-05-01)' width='16' xmlns='http://www.w3.org/2000/svg'>
<sodipodi:namedview inkscape:bbox-nodes='true' inkscape:bbox-paths='false' bordercolor='#000000' borderlayer='false' borderopacity='0.50196078' inkscape:current-layer='layer10' inkscape:cx='11.14767' inkscape:cy='7.9625016' inkscape:document-rotation='0' gridtolerance='10' inkscape:guide-bbox='true' guidetolerance='10' id='namedview88' inkscape:measure-end='0,0' inkscape:measure-start='0,0' inkscape:object-nodes='true' inkscape:object-paths='true' objecttolerance='10' pagecolor='#e2e2e2' inkscape:pageopacity='0' inkscape:pageshadow='2' showborder='false' showgrid='true' showguides='false' inkscape:showpageshadow='false' inkscape:snap-bbox='true' inkscape:snap-bbox-edge-midpoints='false' inkscape:snap-bbox-midpoints='true' inkscape:snap-center='false' inkscape:snap-global='true' inkscape:snap-grids='true' inkscape:snap-intersection-paths='false' inkscape:snap-midpoints='true' inkscape:snap-nodes='true' inkscape:snap-object-midpoints='true' inkscape:snap-others='true' inkscape:snap-page='false' inkscape:snap-smooth-nodes='true' inkscape:snap-to-guides='true' inkscape:window-height='1205' inkscape:window-maximized='0' inkscape:window-width='1553' inkscape:window-x='26' inkscape:window-y='23' inkscape:zoom='1'>
<inkscape:grid color='#000000' dotted='false' empcolor='#0800ff' empopacity='0.4627451' empspacing='4' enabled='true' id='grid4866' opacity='0.16470588' originx='-132.00585' originy='-952' snapvisiblegridlinesonly='true' spacingx='1' spacingy='1' type='xygrid' visible='true'/>
<inkscape:grid dotted='true' empcolor='#3f3fff' empopacity='0' empspacing='4' id='grid3540' originx='-132.00585' originy='-952' spacingx='0.5' spacingy='0.5' type='xygrid'/>
</sodipodi:namedview>
<metadata id='metadata90'>
<rdf:RDF>
<cc:Work rdf:about=''>
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource='http://purl.org/dc/dcmitype/StillImage'/>
<dc:title>Gnome Symbolic Icons</dc:title>
<cc:license rdf:resource='http://creativecommons.org/licenses/by-sa/4.0/'/>
</cc:Work>
<cc:License rdf:about='http://creativecommons.org/licenses/by-sa/4.0/'>
<cc:permits rdf:resource='http://creativecommons.org/ns#Reproduction'/>
<cc:permits rdf:resource='http://creativecommons.org/ns#Distribution'/>
<cc:requires rdf:resource='http://creativecommons.org/ns#Notice'/>
<cc:requires rdf:resource='http://creativecommons.org/ns#Attribution'/>
<cc:permits rdf:resource='http://creativecommons.org/ns#DerivativeWorks'/>
<cc:requires rdf:resource='http://creativecommons.org/ns#ShareAlike'/>
</cc:License>
</rdf:RDF>
</metadata>
<title id='title8473'>Gnome Symbolic Icons</title>
<defs id='defs7386'/>
<g inkscape:groupmode='layer' id='layer10' inkscape:label='ui' transform='translate(-132.00585,-952)'>
<path inkscape:connector-curvature='0' d='M 146,963 140.00585,956.99999 134,963 Z' id='path6418' sodipodi:nodetypes='cccc' style='fill:#2e3436;fill-opacity:1;stroke:none'/>
</g>
<g inkscape:groupmode='layer' id='layer1' inkscape:label='status' transform='translate(-132.00585,-888)'/>
<g inkscape:groupmode='layer' id='layer11' inkscape:label='legacy' transform='translate(-132.00585,-952)'/>
<g inkscape:groupmode='layer' id='layer7' inkscape:label='places' transform='translate(-132.00585,-888)'/>
<g inkscape:groupmode='layer' id='layer6' inkscape:label='mimetypes' transform='translate(-132.00585,-888)'/>
<g inkscape:groupmode='layer' id='layer5' inkscape:label='emotes' transform='translate(-132.00585,-888)'/>
<g inkscape:groupmode='layer' id='layer9' inkscape:label='emblems' transform='translate(-132.00585,-888)'/>
<g inkscape:groupmode='layer' id='layer2' inkscape:label='devices' transform='translate(-132.00585,-888)'/>
<g inkscape:groupmode='layer' id='layer8' inkscape:label='categories' transform='translate(-132.00585,-888)'/>
<g inkscape:groupmode='layer' id='layer3' inkscape:label='apps' transform='translate(-132.00585,-888)'/>
<g inkscape:groupmode='layer' id='layer4' inkscape:label='actions' transform='translate(-132.00585,-888)'/>
</svg>

After

Width:  |  Height:  |  Size: 4.7 KiB

View file

@ -137,19 +137,23 @@ ${srcdir}/../lisp/language/pinyin.el: ${srcdir}/MISC-DIC/pinyin.map
$(AM_V_GEN)${RUN_EMACS} -l titdic-cnv -f pinyin-convert $< $@
.PHONY: bootstrap-clean distclean maintainer-clean extraclean
.PHONY: bootstrap-clean distclean maintainer-clean extraclean gen-clean
## Perhaps this should run gen-clean.
bootstrap-clean:
rm -f ${TIT_MISC} ${leimdir}/leim-list.el
distclean:
rm -f Makefile
maintainer-clean: distclean bootstrap-clean
maintainer-clean: gen-clean distclean
## We do not delete ja-dic, even in a bootstrap, because it rarely
## changes and is slow to regenerate.
extraclean: bootstrap-clean
## ja-dic rarely changes and is slow to regenerate, and tends to be a
## bottleneck in parallel builds.
gen-clean:
rm -f ${TIT_MISC} ${leimdir}/leim-list.el
rm -rf ${leimdir}/ja-dic
extraclean: maintainer-clean
### Makefile.in ends here

View file

@ -480,8 +480,10 @@ maintainer-clean: distclean bootstrap-clean
rm -f TAGS
extraclean: bootstrap-clean distclean
-for file in $(LOADDEFS); do rm -f $${file}~; done
-for file in $(loaddefs); do rm -f $${file}~; done
-rm -f $(lisp)/loaddefs.el~
-find $(lisp) -name '*~' $(FIND_DELETE)
-find $(lisp) -name '#*' $(FIND_DELETE)
.PHONY: check-declare

View file

@ -1,4 +1,4 @@
;;; avoid.el --- make mouse pointer stay out of the way of editing
;;; avoid.el --- make mouse pointer stay out of the way of editing -*- lexical-binding: t -*-
;; Copyright (C) 1993-1994, 2000-2021 Free Software Foundation, Inc.
@ -80,7 +80,6 @@ use either \\[customize] or \\[mouse-avoidance-mode]."
:initialize 'custom-initialize-default
:type '(choice (const :tag "none" nil) (const banish) (const jump)
(const animate) (const exile) (const proteus))
:group 'avoid
:require 'avoid
:version "20.3")
@ -89,25 +88,21 @@ use either \\[customize] or \\[mouse-avoidance-mode]."
"Average distance that mouse will be moved when approached by cursor.
Only applies in Mouse Avoidance mode `jump' and its derivatives.
For best results make this larger than `mouse-avoidance-threshold'."
:type 'integer
:group 'avoid)
:type 'integer)
(defcustom mouse-avoidance-nudge-var 10
"Variability of `mouse-avoidance-nudge-dist' (which see)."
:type 'integer
:group 'avoid)
:type 'integer)
(defcustom mouse-avoidance-animation-delay .01
"Delay between animation steps, in seconds."
:type 'number
:group 'avoid)
:type 'number)
(defcustom mouse-avoidance-threshold 5
"Mouse-pointer's flight distance.
If the cursor gets closer than this, the mouse pointer will move away.
Only applies in Mouse Avoidance modes `animate' and `jump'."
:type 'integer
:group 'avoid)
:type 'integer)
(defcustom mouse-avoidance-banish-position '((frame-or-window . frame)
(side . right)
@ -380,7 +375,7 @@ redefine this function to suit your own tastes."
(mouse-avoidance-nudge-mouse)
(if (not (eq (selected-frame) (car old-pos)))
;; This should never happen.
(apply 'set-mouse-position old-pos)))))
(apply #'set-mouse-position old-pos)))))
;;;###autoload
(defun mouse-avoidance-mode (&optional mode)

View file

@ -444,12 +444,12 @@ Code can refer to the expression to simplify via lexical variable `expr'
and should return the simplified expression to use (or nil)."
(declare (indent 1) (debug (sexp body)))
(cons 'progn
(mapcar #'(lambda (func)
`(put ',func 'math-simplify
(nconc
(get ',func 'math-simplify)
(list
#'(lambda (expr) ,@code)))))
(mapcar (lambda (func)
`(put ',func 'math-simplify
(nconc
(get ',func 'math-simplify)
(list
(lambda (expr) ,@code)))))
(if (symbolp funcs) (list funcs) funcs))))
(math-defsimplify (+ -)

View file

@ -2784,23 +2784,23 @@ If X is not an error form, return 1."
(declare (indent 1) (debug (sexp body)))
(setq math-integral-cache nil)
(cons 'progn
(mapcar #'(lambda (func)
`(put ',func 'math-integral
(nconc
(get ',func 'math-integral)
(list
#'(lambda (u) ,@code)))))
(mapcar (lambda (func)
`(put ',func 'math-integral
(nconc
(get ',func 'math-integral)
(list
(lambda (u) ,@code)))))
(if (symbolp funcs) (list funcs) funcs))))
(defmacro math-defintegral-2 (funcs &rest code)
(declare (indent 1) (debug (sexp body)))
(setq math-integral-cache nil)
(cons 'progn
(mapcar #'(lambda (func)
`(put ',func 'math-integral-2
(nconc
(get ',func 'math-integral-2)
(list #'(lambda (u v) ,@code)))))
(mapcar (lambda (func)
`(put ',func 'math-integral-2
(nconc
(get ',func 'math-integral-2)
(list (lambda (u v) ,@code)))))
(if (symbolp funcs) (list funcs) funcs))))
(defvar var-IntegAfterRules 'calc-IntegAfterRules)

View file

@ -1881,9 +1881,9 @@ Redefine the corresponding command."
(if (fboundp (setq chk (intern (concat "math-" qual-name))))
(append rest
(if is-rest
`((mapcar #'(lambda (x)
(or (,chk x)
(math-reject-arg x ',qual)))
`((mapcar (lambda (x)
(or (,chk x)
(math-reject-arg x ',qual)))
,var))
`((or (,chk ,var)
(math-reject-arg ,var ',qual)))))
@ -1894,9 +1894,9 @@ Redefine the corresponding command."
qual-name 1))))))
(append rest
(if is-rest
`((mapcar #'(lambda (x)
(and (,chk x)
(math-reject-arg x ',qual)))
`((mapcar (lambda (x)
(and (,chk x)
(math-reject-arg x ',qual)))
,var))
`((and
(,chk ,var)

View file

@ -105,10 +105,6 @@
;;; Code:
(defconst icalendar-version "0.19"
"Version number of icalendar.el.")
(make-obsolete-variable 'icalendar-version nil "28.1")
;; ======================================================================
;; Customizables
;; ======================================================================
@ -2557,6 +2553,11 @@ the entry."
(or (icalendar--get-event-property event 'URL) "")
(or (icalendar--get-event-property event 'CLASS) "")))
;; Obsolete
(defconst icalendar-version "0.19" "Version number of icalendar.el.")
(make-obsolete-variable 'icalendar-version 'emacs-version "28.1")
(provide 'icalendar)
;;; icalendar.el ends here

View file

@ -475,7 +475,7 @@ Menu items are appended to the common grammar menu.")
(with-current-buffer (find-file-noselect infile)
(setq infile buffer-file-name)
(if outdir (setq default-directory outdir))
(semantic-grammar-create-package nil t))
(semantic-grammar-create-package t t))
(error (message "%s" (error-message-string err)) nil)))
lang filename copyright-end)
(when (and packagename

View file

@ -477,7 +477,7 @@ Menu items are appended to the common grammar menu.")
(condition-case err
(with-current-buffer (find-file-noselect infile)
(if outdir (setq default-directory outdir))
(semantic-grammar-create-package nil t))
(semantic-grammar-create-package t t))
(error (message "%s" (error-message-string err)) nil)))
output-data)
(when (setq output-data (assoc packagename wisent-make-parsers--parser-file-name))

View file

@ -828,7 +828,7 @@ the mode-line."
(defvar dframe-version "1.3"
"The current version of the dedicated frame library.")
(make-obsolete-variable 'dframe-version nil "28.1")
(make-obsolete-variable 'dframe-version 'emacs-version "28.1")
(provide 'dframe)

View file

@ -1802,11 +1802,6 @@ If BACKWARD is non-nil, jump to the previous match."
(remove-overlays (point-min) (point-max) 'doc-view t)
(if (consp image-mode-winprops-alist) (setq image-mode-winprops-alist nil)))
(defun doc-view-intersection (l1 l2)
(let ((l ()))
(dolist (x l1) (if (memq x l2) (push x l)))
l))
(defun doc-view-set-doc-type ()
"Figure out the current document type (`doc-view-doc-type')."
(let ((name-types
@ -1841,7 +1836,7 @@ If BACKWARD is non-nil, jump to the previous match."
((looking-at "AT&TFORM") '(djvu))))))
(setq-local
doc-view-doc-type
(car (or (doc-view-intersection name-types content-types)
(car (or (nreverse (seq-intersection name-types content-types #'eq))
(when (and name-types content-types)
(error "Conflicting types: name says %s but content says %s"
name-types content-types))
@ -2146,6 +2141,12 @@ See the command `doc-view-mode' for more information on this mode."
(add-hook 'bookmark-after-jump-hook show-fn-sym)
(bookmark-default-handler bmk)))
;; Obsolete.
(defun doc-view-intersection (l1 l2)
(declare (obsolete seq-intersection "28.1"))
(nreverse (seq-intersection l1 l2 #'eq)))
(provide 'doc-view)
;; Local Variables:

View file

@ -160,9 +160,6 @@
;; not specifically docstring related. Would this even be useful?
;;; Code:
(defvar checkdoc-version "0.6.2"
"Release version of checkdoc you are currently running.")
(make-obsolete-variable 'checkdoc-version nil "28.1")
(require 'cl-lib)
(require 'help-mode) ;; for help-xref-info-regexp
@ -2709,6 +2706,12 @@ function called to create the messages."
(custom-add-option 'emacs-lisp-mode-hook 'checkdoc-minor-mode)
;; Obsolete
(defvar checkdoc-version "0.6.2"
"Release version of checkdoc you are currently running.")
(make-obsolete-variable 'checkdoc-version 'emacs-version "28.1")
(provide 'checkdoc)
;;; checkdoc.el ends here

View file

@ -147,6 +147,7 @@ the sequence, and its index within the sequence."
"Return a shallow copy of SEQUENCE."
(copy-sequence sequence))
;;;###autoload
(cl-defgeneric seq-subseq (sequence start &optional end)
"Return the sequence of elements of SEQUENCE from START to END.
END is exclusive.
@ -430,6 +431,7 @@ Equality is defined by TESTFN if non-nil or by `equal' if nil."
(setq index (1+ index)))
nil)))
;;;###autoload
(cl-defgeneric seq-uniq (sequence &optional testfn)
"Return a list of the elements of SEQUENCE with duplicates removed.
TESTFN is used to compare elements, or `equal' if TESTFN is nil."
@ -467,6 +469,7 @@ Equality is defined by TESTFN if non-nil or by `equal' if nil."
(seq-reverse sequence1)
'()))
;;;###autoload
(cl-defgeneric seq-difference (sequence1 sequence2 &optional testfn)
"Return a list of the elements that appear in SEQUENCE1 but not in SEQUENCE2.
Equality is defined by TESTFN if non-nil or by `equal' if nil."

View file

@ -178,9 +178,6 @@
(defvar edt-user-global-map)
(defvar rect-start-point)
(defconst edt-version "4.0" "EDT Emulation version number.")
(make-obsolete-variable 'edt-version nil "28.1")
;;;
;;; User Configurable Variables
;;;
@ -2533,6 +2530,9 @@ G-C-\\: Split Window | FNDNXT | Yank | CUT |
(set-frame-width nil 132)
(message "Terminal width 132"))
(defconst edt-version "4.0" "EDT Emulation version number.")
(make-obsolete-variable 'edt-version 'emacs-version "28.1")
(provide 'edt)
;;; edt.el ends here

View file

@ -1,4 +1,4 @@
;;; epg-config.el --- configuration of the EasyPG Library
;;; epg-config.el --- configuration of the EasyPG Library -*- lexical-binding: t -*-
;; Copyright (C) 2006-2021 Free Software Foundation, Inc.
@ -21,6 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
;;; Code:
;;; Prelude
@ -157,7 +159,7 @@ version requirement is met."
(setq program-alist epg-config--program-alist))
(let ((entry (assq protocol program-alist)))
(unless entry
(error "Unknown protocol %S" protocol))
(error "Unknown protocol `%S'" protocol))
(cl-destructuring-bind (symbol . alist)
(cdr entry)
(let ((constructor

View file

@ -199,10 +199,10 @@ Thus, this does not include the current directory.")
(when eshell-cd-on-directory
(setq-local eshell-interpreter-alist
(cons (cons #'(lambda (file _args)
(eshell-lone-directory-p file))
'eshell-dirs-substitute-cd)
eshell-interpreter-alist)))
(cons (cons (lambda (file _args)
(eshell-lone-directory-p file))
'eshell-dirs-substitute-cd)
eshell-interpreter-alist)))
(add-hook 'eshell-parse-argument-hook
#'eshell-parse-user-reference nil t)

View file

@ -758,7 +758,7 @@ matched."
(setq nth (eshell-hist-word-reference nth)))
(unless (numberp mth)
(setq mth (eshell-hist-word-reference mth)))
(cons (mapconcat #'identity (eshell-sublist textargs nth mth) " ")
(cons (mapconcat #'identity (seq-subseq textargs nth (1+ mth)) " ")
end))))
(defun eshell-hist-parse-modifier (hist reference)

View file

@ -85,18 +85,18 @@ ordinary strings."
(?s . (eshell-pred-file-mode #o4000)) ; setuid
(?S . (eshell-pred-file-mode #o2000)) ; setgid
(?t . (eshell-pred-file-mode #o1000)) ; sticky bit
(?U . #'(lambda (file) ; owned by effective uid
(if (file-exists-p file)
(= (file-attribute-user-id (file-attributes file))
(user-uid)))))
;; (?G . #'(lambda (file) ; owned by effective gid
;; (if (file-exists-p file)
;; (= (file-attribute-user-id (file-attributes file))
;; (user-uid)))))
(?* . #'(lambda (file)
(and (file-regular-p file)
(not (file-symlink-p file))
(file-executable-p file))))
(?U . (lambda (file) ; owned by effective uid
(if (file-exists-p file)
(= (file-attribute-user-id (file-attributes file))
(user-uid)))))
;; (?G . (lambda (file) ; owned by effective gid
;; (if (file-exists-p file)
;; (= (file-attribute-user-id (file-attributes file))
;; (user-uid)))))
(?* . (lambda (file)
(and (file-regular-p file)
(not (file-symlink-p file))
(file-executable-p file))))
(?l . (eshell-pred-file-links))
(?u . (eshell-pred-user-or-group ?u "user" 2 'eshell-user-id))
(?g . (eshell-pred-user-or-group ?g "group" 3 'eshell-group-id))
@ -114,25 +114,25 @@ The format of each entry is
(put 'eshell-predicate-alist 'risky-local-variable t)
(defcustom eshell-modifier-alist
'((?E . #'(lambda (lst)
(mapcar
(lambda (str)
(eshell-stringify
(car (eshell-parse-argument str))))
lst)))
(?L . #'(lambda (lst) (mapcar 'downcase lst)))
(?U . #'(lambda (lst) (mapcar 'upcase lst)))
(?C . #'(lambda (lst) (mapcar 'capitalize lst)))
(?h . #'(lambda (lst) (mapcar 'file-name-directory lst)))
'((?E . (lambda (lst)
(mapcar
(lambda (str)
(eshell-stringify
(car (eshell-parse-argument str))))
lst)))
(?L . (lambda (lst) (mapcar #'downcase lst)))
(?U . (lambda (lst) (mapcar #'upcase lst)))
(?C . (lambda (lst) (mapcar #'capitalize lst)))
(?h . (lambda (lst) (mapcar #'file-name-directory lst)))
(?i . (eshell-include-members))
(?x . (eshell-include-members t))
(?r . #'(lambda (lst) (mapcar 'file-name-sans-extension lst)))
(?e . #'(lambda (lst) (mapcar 'file-name-extension lst)))
(?t . #'(lambda (lst) (mapcar 'file-name-nondirectory lst)))
(?q . #'(lambda (lst) (mapcar 'eshell-escape-arg lst)))
(?u . #'(lambda (lst) (eshell-uniquify-list lst)))
(?o . #'(lambda (lst) (sort lst 'string-lessp)))
(?O . #'(lambda (lst) (nreverse (sort lst 'string-lessp))))
(?r . (lambda (lst) (mapcar #'file-name-sans-extension lst)))
(?e . (lambda (lst) (mapcar #'file-name-extension lst)))
(?t . (lambda (lst) (mapcar #'file-name-nondirectory lst)))
(?q . (lambda (lst) (mapcar #'eshell-escape-arg lst)))
(?u . (lambda (lst) (seq-uniq lst)))
(?o . (lambda (lst) (sort lst #'string-lessp)))
(?O . (lambda (lst) (nreverse (sort lst #'string-lessp))))
(?j . (eshell-join-members))
(?S . (eshell-split-members))
(?R . 'reverse)

View file

@ -59,11 +59,12 @@ This includes when running `eshell-command'."
(defun eshell-script-initialize () ;Called from `eshell-mode' via intern-soft!
"Initialize the script parsing code."
(setq-local eshell-interpreter-alist
(cons (cons #'(lambda (file _args)
(string= (file-name-nondirectory file)
"eshell"))
'eshell/source)
eshell-interpreter-alist))
(cons (cons (lambda (file _args)
(and (file-regular-p file)
(string= (file-name-nondirectory file)
"eshell")))
'eshell/source)
eshell-interpreter-alist))
(setq-local eshell-complex-commands
(append '("source" ".") eshell-complex-commands))
;; these two variables are changed through usage, but we don't want

View file

@ -223,18 +223,6 @@ then quoting is done by a backslash, rather than a doubled delimiter."
(string-to-number string)
string))))))
(defun eshell-sublist (l &optional n m)
"Return from LIST the N to M elements.
If N or M is nil, it means the end of the list."
(let ((a (copy-sequence l)))
(if (and m (consp (nthcdr m a)))
(setcdr (nthcdr m a) nil))
(if n
(setq a (nthcdr n a))
(setq n (1- (length a))
a (last a)))
a))
(defvar-local eshell-path-env (getenv "PATH")
"Content of $PATH.
It might be different from \(getenv \"PATH\"), when
@ -303,20 +291,6 @@ Prepend remote identification of `default-directory', if any."
(define-obsolete-function-alias 'eshell-flatten-list #'flatten-tree "27.1")
(defun eshell-uniquify-list (l)
"Remove occurring multiples in L. You probably want to sort first."
(let ((m l))
(while m
(while (and (cdr m)
(string= (car m)
(cadr m)))
(setcdr m (cddr m)))
(setq m (cdr m))))
l)
(define-obsolete-function-alias
'eshell-uniqify-list
'eshell-uniquify-list "27.1")
(defun eshell-stringify (object)
"Convert OBJECT into a string value."
(cond
@ -710,9 +684,19 @@ gid format. Valid values are `string' and `integer', defaulting to
; (or result
; (file-attributes filename))))
;; Obsolete.
(define-obsolete-function-alias 'eshell-uniquify-list #'seq-uniq "28.1")
(define-obsolete-function-alias 'eshell-uniqify-list #'seq-uniq "28.1")
(define-obsolete-function-alias 'eshell-copy-tree #'copy-tree "28.1")
(define-obsolete-function-alias 'eshell-user-name #'user-login-name "28.1")
(defun eshell-sublist (l &optional n m)
"Return from LIST the N to M elements.
If N or M is nil, it means the end of the list."
(declare (obsolete seq-subseq "28.1"))
(seq-subseq l n (1+ m)))
(provide 'esh-util)
;;; esh-util.el ends here

View file

@ -294,9 +294,9 @@ With prefix ARG, insert output into the current buffer at point."
(setq arg current-prefix-arg))
(let ((eshell-non-interactive-p t))
;; Enable `eshell-mode' only in this minibuffer.
(minibuffer-with-setup-hook #'(lambda ()
(eshell-mode)
(eshell-command-mode +1))
(minibuffer-with-setup-hook (lambda ()
(eshell-mode)
(eshell-command-mode +1))
(unless command
(setq command (read-from-minibuffer "Emacs shell command: "))
(if (eshell-using-module 'eshell-hist)

View file

@ -1,7 +1,6 @@
;;; forms.el --- Forms mode: edit a file as a form to fill in
;;; forms.el --- Forms mode: edit a file as a form to fill in -*- lexical-binding: t; -*-
;; Copyright (C) 1991, 1994-1997, 2001-2021 Free Software Foundation,
;; Inc.
;; Copyright (C) 1991-2021 Free Software Foundation, Inc.
;; Author: Johan Vromans <jvromans@squirrel.nl>
@ -298,7 +297,6 @@
(defcustom forms-mode-hook nil
"Hook run upon entering Forms mode."
:group 'forms
:type 'hook)
;;; Mandatory variables - must be set by evaluating the control file.
@ -316,7 +314,6 @@
(defcustom forms-check-number-of-fields t
"If non-nil, warn about records with wrong number of fields."
:group 'forms
:type 'boolean)
(defvar forms-field-sep "\t"
@ -332,13 +329,11 @@ If not nil: use this character to separate multi-line fields (default C-k).")
(defcustom forms-forms-scroll nil
"Non-nil means replace scroll-up/down commands in Forms mode.
The replacement commands performs forms-next/prev-record."
:group 'forms
:type 'boolean)
(defcustom forms-forms-jump nil
"Non-nil means redefine beginning/end-of-buffer in Forms mode.
The replacement commands performs forms-first/last-record."
:group 'forms
:type 'boolean)
(defvar forms-read-file-filter nil
@ -363,23 +358,19 @@ The contents may NOT be modified.")
(defcustom forms-use-text-properties t
"Non-nil means to use text properties. "
:group 'forms
:type 'boolean)
(defcustom forms-insert-after nil
"Non-nil means: inserts of new records go after current record.
Also, initial position is at last record."
:group 'forms
:type 'boolean)
(defcustom forms-ro-face 'default
"The face (a symbol) that is used to display read-only text on the screen."
:group 'forms
:type 'face)
(defcustom forms-rw-face 'region
"The face (a symbol) that is used to display read-write text on the screen."
:group 'forms
:type 'face)
;;; Internal variables.
@ -767,7 +758,7 @@ Commands: Equivalent keys in read-only mode:
;; If it is a symbol, eval it first.
(if (and (symbolp el)
(boundp el))
(setq el (eval el)))
(setq el (symbol-value el)))
(cond
@ -1261,35 +1252,35 @@ Commands: Equivalent keys in read-only mode:
;; `forms-mode-map' is always accessible via \C-c prefix.
(setq forms-mode-map (make-keymap))
(define-key forms-mode-map "\t" 'forms-next-field)
(define-key forms-mode-map "\C-k" 'forms-delete-record)
(define-key forms-mode-map "\C-q" 'forms-toggle-read-only)
(define-key forms-mode-map "\C-o" 'forms-insert-record)
(define-key forms-mode-map "\C-l" 'forms-jump-record)
(define-key forms-mode-map "\C-n" 'forms-next-record)
(define-key forms-mode-map "\C-p" 'forms-prev-record)
(define-key forms-mode-map "\C-r" 'forms-search-backward)
(define-key forms-mode-map "\C-s" 'forms-search-forward)
(define-key forms-mode-map "\C-x" 'forms-exit)
(define-key forms-mode-map "<" 'forms-first-record)
(define-key forms-mode-map ">" 'forms-last-record)
(define-key forms-mode-map "\C-?" 'forms-prev-record)
(define-key forms-mode-map "\t" #'forms-next-field)
(define-key forms-mode-map "\C-k" #'forms-delete-record)
(define-key forms-mode-map "\C-q" #'forms-toggle-read-only)
(define-key forms-mode-map "\C-o" #'forms-insert-record)
(define-key forms-mode-map "\C-l" #'forms-jump-record)
(define-key forms-mode-map "\C-n" #'forms-next-record)
(define-key forms-mode-map "\C-p" #'forms-prev-record)
(define-key forms-mode-map "\C-r" #'forms-search-backward)
(define-key forms-mode-map "\C-s" #'forms-search-forward)
(define-key forms-mode-map "\C-x" #'forms-exit)
(define-key forms-mode-map "<" #'forms-first-record)
(define-key forms-mode-map ">" #'forms-last-record)
(define-key forms-mode-map "\C-?" #'forms-prev-record)
;; `forms-mode-ro-map' replaces the local map when in read-only mode.
(setq forms-mode-ro-map (make-keymap))
(suppress-keymap forms-mode-ro-map)
(define-key forms-mode-ro-map "\C-c" forms-mode-map)
(define-key forms-mode-ro-map "q" 'forms-toggle-read-only)
(define-key forms-mode-ro-map "l" 'forms-jump-record)
(define-key forms-mode-ro-map "n" 'forms-next-record)
(define-key forms-mode-ro-map "p" 'forms-prev-record)
(define-key forms-mode-ro-map "r" 'forms-search-backward)
(define-key forms-mode-ro-map "s" 'forms-search-forward)
(define-key forms-mode-ro-map "x" 'forms-exit)
(define-key forms-mode-ro-map "<" 'forms-first-record)
(define-key forms-mode-ro-map ">" 'forms-last-record)
(define-key forms-mode-ro-map "?" 'describe-mode)
(define-key forms-mode-ro-map " " 'forms-next-record)
(define-key forms-mode-ro-map "q" #'forms-toggle-read-only)
(define-key forms-mode-ro-map "l" #'forms-jump-record)
(define-key forms-mode-ro-map "n" #'forms-next-record)
(define-key forms-mode-ro-map "p" #'forms-prev-record)
(define-key forms-mode-ro-map "r" #'forms-search-backward)
(define-key forms-mode-ro-map "s" #'forms-search-forward)
(define-key forms-mode-ro-map "x" #'forms-exit)
(define-key forms-mode-ro-map "<" #'forms-first-record)
(define-key forms-mode-ro-map ">" #'forms-last-record)
(define-key forms-mode-ro-map "?" #'describe-mode)
(define-key forms-mode-ro-map " " #'forms-next-record)
(forms--mode-commands1 forms-mode-ro-map)
(forms--mode-menu-ro forms-mode-ro-map)
@ -1395,13 +1386,13 @@ Commands: Equivalent keys in read-only mode:
(defun forms--mode-commands1 (map)
"Helper routine to define keys."
(define-key map "\t" 'forms-next-field)
(define-key map [S-tab] 'forms-prev-field)
(define-key map [next] 'forms-next-record)
(define-key map [prior] 'forms-prev-record)
(define-key map [begin] 'forms-first-record)
(define-key map [last] 'forms-last-record)
(define-key map [backtab] 'forms-prev-field)
(define-key map "\t" #'forms-next-field)
(define-key map [S-tab] #'forms-prev-field)
(define-key map [next] #'forms-next-record)
(define-key map [prior] #'forms-prev-record)
(define-key map [begin] #'forms-first-record)
(define-key map [last] #'forms-last-record)
(define-key map [backtab] #'forms-prev-field)
)
;;; Changed functions
@ -2034,8 +2025,7 @@ Usage: (setq forms-number-of-fields
(defcustom forms--debug nil
"If non-nil, enable Forms mode debugging."
:type 'boolean
:group 'forms)
:type 'boolean)
(defun forms--debug (&rest args)
"Internal debugging routine."
@ -2046,7 +2036,7 @@ Usage: (setq forms-number-of-fields
(if (stringp el) el
(concat (prin1-to-string el) " = "
(if (boundp el)
(prin1-to-string (eval el))
(prin1-to-string (symbol-value el))
"<unbound>")
"\n"
(if (fboundp el)

View file

@ -6648,9 +6648,10 @@ not have a face in `gnus-article-boring-faces'."
(catch 'only-boring
(while (re-search-forward "\\b\\w\\w" nil t)
(forward-char -1)
(when (not (gnus-intersection
(when (not (seq-intersection
(gnus-faces-at (point))
(symbol-value 'gnus-article-boring-faces)))
(symbol-value 'gnus-article-boring-faces)
#'eq))
(throw 'only-boring nil)))
(throw 'only-boring t))))))

View file

@ -839,7 +839,7 @@ See also the documentation for `gnus-article-highlight-citation'."
(setq current (car loop)
loop (cdr loop))
(setcdr current
(gnus-set-difference (cdr current) numbers)))))))))
(seq-difference (cdr current) numbers #'eq)))))))))
(defun gnus-cite-parse-attributions ()
(let (al-alist)
@ -999,7 +999,7 @@ See also the documentation for `gnus-article-highlight-citation'."
loop (cdr loop))
(if (eq current best)
()
(setcdr current (gnus-set-difference (cdr current) numbers))
(setcdr current (seq-difference (cdr current) numbers #'eq))
(when (null (cdr current))
(setq gnus-cite-loose-prefix-alist
(delq current gnus-cite-loose-prefix-alist)

View file

@ -4697,20 +4697,20 @@ This command may read the active file."
(gnus-cache-open))
(funcall gnus-group-prepare-function
(or level gnus-level-subscribed)
#'(lambda (info)
(let ((marks (gnus-info-marks info)))
(assq 'cache marks)))
(lambda (info)
(let ((marks (gnus-info-marks info)))
(assq 'cache marks)))
lowest
#'(lambda (group)
(or (gethash group
gnus-cache-active-hashtb)
;; Cache active file might use "."
;; instead of ":".
(gethash
(mapconcat #'identity
(split-string group ":")
".")
gnus-cache-active-hashtb))))
(lambda (group)
(or (gethash group
gnus-cache-active-hashtb)
;; Cache active file might use "."
;; instead of ":".
(gethash
(mapconcat #'identity
(split-string group ":")
".")
gnus-cache-active-hashtb))))
(goto-char (point-min))
(gnus-group-position-point))
@ -4728,9 +4728,9 @@ This command may read the active file."
(gnus-cache-open))
(funcall gnus-group-prepare-function
(or level gnus-level-subscribed)
#'(lambda (info)
(let ((marks (gnus-info-marks info)))
(assq 'dormant marks)))
(lambda (info)
(let ((marks (gnus-info-marks info)))
(assq 'dormant marks)))
lowest
'ignore)
(goto-char (point-min))
@ -4750,9 +4750,9 @@ This command may read the active file."
(gnus-cache-open))
(funcall gnus-group-prepare-function
(or level gnus-level-subscribed)
#'(lambda (info)
(let ((marks (gnus-info-marks info)))
(assq 'tick marks)))
(lambda (info)
(let ((marks (gnus-info-marks info)))
(assq 'tick marks)))
lowest
'ignore)
(goto-char (point-min))

View file

@ -42,13 +42,8 @@ If RANGE is a single range, return (RANGE). Otherwise, return RANGE."
(defun gnus-set-difference (list1 list2)
"Return a list of elements of LIST1 that do not appear in LIST2."
(let ((hash2 (make-hash-table :test 'eq))
(result nil))
(dolist (elt list2) (puthash elt t hash2))
(dolist (elt list1)
(unless (gethash elt hash2)
(setq result (cons elt result))))
(nreverse result)))
(declare (obsolete seq-difference "28.1"))
(seq-difference list1 list2 #'eq))
(defun gnus-range-nconcat (&rest ranges)
"Return a range comprising all the RANGES, which are pre-sorted.
@ -179,12 +174,8 @@ Both lists have to be sorted over <."
;;;###autoload
(defun gnus-intersection (list1 list2)
(let ((result nil))
(while list2
(when (memq (car list2) list1)
(setq result (cons (car list2) result)))
(setq list2 (cdr list2)))
result))
(declare (obsolete seq-intersection "28.1"))
(nreverse (seq-intersection list1 list2 #'eq)))
;;;###autoload
(defun gnus-sorted-intersection (list1 list2)

View file

@ -1290,9 +1290,9 @@ from your existing entries."
(registry-reindex db)
(cl-loop for k being the hash-keys of (oref db data)
using (hash-value v)
do (let ((newv (delq nil (mapcar #'(lambda (entry)
(unless (member (car entry) extra)
entry))
do (let ((newv (delq nil (mapcar (lambda (entry)
(unless (member (car entry) extra)
entry))
v))))
(registry-delete db (list k) nil)
(gnus-registry-insert db k newv)))

View file

@ -1182,8 +1182,8 @@ If FORMAT, also format the current score file."
(when (consp rule) ;; the rule exists
(setq rule (if (symbolp (car rule))
(format "(%S)" (car rule))
(mapconcat #'(lambda (obj)
(regexp-quote (format "%S" obj)))
(mapconcat (lambda (obj)
(regexp-quote (format "%S" obj)))
rule
sep)))
(goto-char (point-min))

View file

@ -5676,9 +5676,9 @@ or a straight list of headers."
(or dependencies
(with-current-buffer gnus-summary-buffer
gnus-newsgroup-dependencies))))
(delq nil (mapcar #'(lambda (header)
(gnus-dependencies-add-header
header dependencies force-new))
(delq nil (mapcar (lambda (header)
(gnus-dependencies-add-header
header dependencies force-new))
gnus-headers-retrieved-by)))))
(gnus-message 7 "Fetching headers for %s...done" gnus-newsgroup-name)))
@ -8569,8 +8569,9 @@ If UNREPLIED (the prefix), limit to unreplied articles."
(interactive "P" gnus-summary-mode)
(if unreplied
(gnus-summary-limit
(gnus-set-difference gnus-newsgroup-articles
gnus-newsgroup-replied))
(seq-difference gnus-newsgroup-articles
gnus-newsgroup-replied
#'eq))
(gnus-summary-limit gnus-newsgroup-replied))
(gnus-summary-position-point))

View file

@ -578,8 +578,8 @@ didn't work, and overwrite existing files. Otherwise, ask each time."
(defun gnus-new-processable (unmarkp articles)
(if unmarkp
(gnus-intersection gnus-newsgroup-processable articles)
(gnus-set-difference articles gnus-newsgroup-processable)))
(nreverse (seq-intersection gnus-newsgroup-processable articles #'eq))
(seq-difference articles gnus-newsgroup-processable #'eq)))
(defun gnus-uu-mark-by-regexp (regexp &optional unmark)
"Set the process mark on articles whose subjects match REGEXP.

View file

@ -72,14 +72,14 @@ If NO-DISPLAY is nil, display it. Otherwise, do nothing after replacing."
id
(with-current-buffer gnus-summary-buffer
(gnus-summary-article-number))))
#'(lambda (a b)
(let ((anumber (string-to-number
(cdr (assq 'number
(cdr (mm-handle-type a))))))
(bnumber (string-to-number
(cdr (assq 'number
(cdr (mm-handle-type b)))))))
(< anumber bnumber)))))
(lambda (a b)
(let ((anumber (string-to-number
(cdr (assq 'number
(cdr (mm-handle-type a))))))
(bnumber (string-to-number
(cdr (assq 'number
(cdr (mm-handle-type b)))))))
(< anumber bnumber)))))
(setq gnus-article-mime-handles
(mm-merge-handles gnus-article-mime-handles phandles))
(with-current-buffer (generate-new-buffer " *mm*")

View file

@ -558,7 +558,7 @@ all. This may very well take some time.")
(nnmail-activate 'nndiary)
;; Articles not listed in active-articles are already gone,
;; so don't try to expire them.
(setq articles (gnus-intersection articles active-articles))
(setq articles (nreverse (seq-intersection articles active-articles #'eq)))
(while articles
(setq article (nndiary-article-to-file (setq number (pop articles))))
(if (and (nndiary-deletable-article-p group number)

View file

@ -1614,13 +1614,15 @@ If LIMIT, first try to limit the search to the N last articles."
(setq start-article 1))
(let* ((unread
(gnus-compress-sequence
(gnus-set-difference
(gnus-set-difference
(seq-difference
(seq-difference
existing
(gnus-sorted-union
(cdr (assoc '%Seen flags))
(cdr (assoc '%Deleted flags))))
(cdr (assoc '%Flagged flags)))))
(cdr (assoc '%Deleted flags)))
#'eq)
(cdr (assoc '%Flagged flags))
#'eq)))
(read (gnus-range-difference
(cons start-article high) unread)))
(when (> start-article 1)

View file

@ -100,8 +100,8 @@
(setq selection
(vconcat
(cl-map 'vector
#'(lambda (art)
(vector artgroup art artrsv))
(lambda (art)
(vector artgroup art artrsv))
(gnus-uncompress-sequence artseq)) selection)))
selection)))
@ -211,12 +211,12 @@ as `(keyfunc member)' and the corresponding element is just
#'nnselect-article-group #'nnselect-article-number))
((eq ,type 'tuple)
(nnselect-categorize ,articles
#'(lambda (elem)
(nnselect-article-group (car elem)))
#'(lambda (elem)
(cons (nnselect-article-number
(car elem))
(cdr elem)))))
(lambda (elem)
(nnselect-article-group (car elem)))
(lambda (elem)
(cons (nnselect-article-number
(car elem))
(cdr elem)))))
(t
(nnselect-categorize ,articles
#'nnselect-article-group
@ -464,8 +464,8 @@ If this variable is nil, or if the provided function returns nil,
(error "Group %s does not support article expiration" artgroup))
(unless (gnus-check-server (gnus-find-method-for-group artgroup))
(error "Couldn't open server for group %s" artgroup))
(push (mapcar #'(lambda (art)
(car (rassq art artids)))
(push (mapcar (lambda (art)
(car (rassq art artids)))
(let ((nnimap-expunge 'immediately))
(gnus-request-expire-articles
artlist artgroup force)))
@ -549,8 +549,8 @@ If this variable is nil, or if the provided function returns nil,
(gnus-add-to-range
(gnus-info-read info)
(delq nil (mapcar
#'(lambda (art)
(unless (memq (cdr art) unread) (car art)))
(lambda (art)
(unless (memq (cdr art) unread) (car art)))
artids))))
(pcase-dolist (`(,type . ,mark-list) marks)
(let ((mark-type (gnus-article-mark-to-type type)) new)
@ -560,19 +560,19 @@ If this variable is nil, or if the provided function returns nil,
(cond
((eq mark-type 'tuple)
(mapcar
#'(lambda (id)
(let (mark)
(when
(setq mark (assq (cdr id) mark-list))
(cons (car id) (cdr mark)))))
(lambda (id)
(let (mark)
(when
(setq mark (assq (cdr id) mark-list))
(cons (car id) (cdr mark)))))
artids))
(t
(setq mark-list
(gnus-uncompress-range mark-list))
(mapcar
#'(lambda (id)
(when (memq (cdr id) mark-list)
(car id))) artids)))))
(lambda (id)
(when (memq (cdr id) mark-list)
(car id))) artids)))))
(let ((previous (alist-get type newmarks)))
(if previous
(nconc previous new)
@ -607,8 +607,8 @@ If this variable is nil, or if the provided function returns nil,
(let ((thread
(gnus-id-to-thread (mail-header-id header))))
(when thread
(cl-some #'(lambda (x)
(when (and x (> x 0)) x))
(cl-some (lambda (x)
(when (and x (> x 0)) x))
(gnus-articles-in-thread thread)))))))))
;; Check if search-based thread referral is permitted, and
;; available.
@ -642,15 +642,15 @@ If this variable is nil, or if the provided function returns nil,
old-arts seq
headers)
(mapc
#'(lambda (article)
(if
(setq seq
(cl-position article
gnus-newsgroup-selection :test 'equal))
(push (1+ seq) old-arts)
(setq gnus-newsgroup-selection
(vconcat gnus-newsgroup-selection (vector article)))
(cl-incf last)))
(lambda (article)
(if
(setq seq
(cl-position article
gnus-newsgroup-selection :test 'equal))
(push (1+ seq) old-arts)
(setq gnus-newsgroup-selection
(vconcat gnus-newsgroup-selection (vector article)))
(cl-incf last)))
new-nnselect-artlist)
(setq headers
(gnus-fetch-headers
@ -671,9 +671,9 @@ If this variable is nil, or if the provided function returns nil,
(when (setq new-marks
(delq nil
(mapcar
#'(lambda (art)
(when (memq (cdr art) marked)
(car art)))
(lambda (art)
(when (memq (cdr art) marked)
(car art)))
artids)))
(nconc
(symbol-value

View file

@ -362,9 +362,9 @@ It is computed from the marks of individual component groups.")
(dolist (group nnvirtual-component-groups)
(setq unexpired (nconc unexpired
(mapcar
#'(lambda (article)
(nnvirtual-reverse-map-article
group article))
(lambda (article)
(nnvirtual-reverse-map-article
group article))
(gnus-uncompress-range
(gnus-group-expire-articles-1 group))))))
(sort (delq nil unexpired) #'<)))

View file

@ -492,7 +492,7 @@ Add user supplied modifications if supplied."
(let* ((probs (mapcar #'cadr spam-stat-score-data))
(prod (apply #'* probs))
(score0
(/ prod (+ prod (apply #'* (mapcar #'(lambda (x) (- 1 x))
(/ prod (+ prod (apply #'* (mapcar (lambda (x) (- 1 x))
probs)))))
(score1s
(condition-case nil

View file

@ -710,16 +710,8 @@ finds ham or spam.")
(defun spam-set-difference (list1 list2)
"Return a set difference of LIST1 and LIST2.
When either list is nil, the other is returned."
(if (and list1 list2)
;; we have two non-nil lists
(progn
(dolist (item (append list1 list2))
(when (and (memq item list1) (memq item list2))
(setq list1 (delq item list1))
(setq list2 (delq item list2))))
(append list1 list2))
;; if either of the lists was nil, return the other one
(if list1 list1 list2)))
(declare (obsolete seq-difference "28.1"))
(seq-difference list1 list2 #'eq))
(defun spam-group-ham-mark-p (group mark &optional spam)
"Checks if MARK is considered a ham mark in GROUP."
@ -1327,7 +1319,7 @@ In the case of mover backends, checks the setting of
(new-articles (spam-list-articles
gnus-newsgroup-articles
classification))
(changed-articles (spam-set-difference new-articles old-articles)))
(changed-articles (seq-difference new-articles old-articles #'eq)))
;; now that we have the changed articles, we go through the processors
(dolist (backend (spam-backend-list))
(let (unregister-list)

View file

@ -1,4 +1,4 @@
;;; hilit-chg.el --- minor mode displaying buffer changes with special face
;;; hilit-chg.el --- minor mode displaying buffer changes with special face -*- lexical-binding: t -*-
;; Copyright (C) 1998, 2000-2021 Free Software Foundation, Inc.
@ -68,8 +68,7 @@
;; (defun my-highlight-changes-mode-hook ()
;; (if highlight-changes-mode
;; (add-hook 'write-file-functions 'highlight-changes-rotate-faces nil t)
;; (remove-hook 'write-file-functions 'highlight-changes-rotate-faces t)
;; ))
;; (remove-hook 'write-file-functions 'highlight-changes-rotate-faces t)))
;; Automatically enabling Highlight Changes mode
@ -114,16 +113,16 @@
;; Possible bindings:
;; (global-set-key '[C-right] 'highlight-changes-next-change)
;; (global-set-key '[C-left] 'highlight-changes-previous-change)
;; (global-set-key '[C-right] #'highlight-changes-next-change)
;; (global-set-key '[C-left] #'highlight-changes-previous-change)
;;
;; Other interactive functions (that could be bound if desired):
;; highlight-changes-mode
;; highlight-changes-toggle-visibility
;; highlight-changes-remove-highlight
;; highlight-compare-with-file
;; highlight-compare-buffers
;; highlight-changes-rotate-faces
;; `highlight-changes-mode'
;; `highlight-changes-toggle-visibility'
;; `highlight-changes-remove-highlight'
;; `highlight-compare-with-file'
;; `highlight-compare-buffers'
;; `highlight-changes-rotate-faces'
;;; Bugs:
@ -179,7 +178,6 @@
:version "20.4"
:group 'faces)
;; Face information: How the changes appear.
;; Defaults for face: red foreground, no change to background,
@ -192,22 +190,20 @@
'((((min-colors 88) (class color)) (:foreground "red1"))
(((class color)) (:foreground "red" ))
(t (:inverse-video t)))
"Face used for highlighting changes."
:group 'highlight-changes)
"Face used for highlighting changes.")
;; This looks pretty ugly, actually. Maybe the underline should be removed.
(defface highlight-changes-delete
'((((min-colors 88) (class color)) (:foreground "red1" :underline t))
(((class color)) (:foreground "red" :underline t))
(t (:inverse-video t)))
"Face used for highlighting deletions."
:group 'highlight-changes)
"Face used for highlighting deletions.")
;; A (not very good) default list of colors to rotate through.
(defcustom highlight-changes-colors
(if (eq (frame-parameter nil 'background-mode) 'light)
;; defaults for light background:
'( "magenta" "blue" "darkgreen" "chocolate" "sienna4" "NavyBlue")
'("magenta" "blue" "darkgreen" "chocolate" "sienna4" "NavyBlue")
;; defaults for dark background:
'("yellow" "magenta" "blue" "maroon" "firebrick" "green4" "DarkOrchid"))
"Colors used by `highlight-changes-rotate-faces'.
@ -218,8 +214,7 @@ This list is used if `highlight-changes-face-list' is nil, otherwise that
variable overrides this list. If you only care about foreground
colors then use this, if you want fancier faces then set
`highlight-changes-face-list'."
:type '(repeat color)
:group 'highlight-changes)
:type '(repeat color))
;; When you invoke highlight-changes-mode, should highlight-changes-visible-mode
;; be on or off?
@ -230,8 +225,7 @@ colors then use this, if you want fancier faces then set
This controls the initial value of `highlight-changes-visible-mode'.
When a buffer is in Highlight Changes mode the function
`highlight-changes-visible-mode' is used to toggle the mode on or off."
:type 'boolean
:group 'highlight-changes)
:type 'boolean)
;; These are the strings displayed in the mode-line for the minor mode:
@ -240,16 +234,14 @@ When a buffer is in Highlight Changes mode the function
This should be set to nil if no indication is desired, or to
a string with a leading space."
:type '(choice string
(const :tag "None" nil))
:group 'highlight-changes)
(const :tag "None" nil)))
(defcustom highlight-changes-invisible-string " -Chg"
"The string used when in Highlight Changes mode and changes are hidden.
This should be set to nil if no indication is desired, or to
a string with a leading space."
:type '(choice string
(const :tag "None" nil))
:group 'highlight-changes)
(const :tag "None" nil)))
(defcustom highlight-changes-global-modes t
"Determine whether a buffer is suitable for global Highlight Changes mode.
@ -279,9 +271,7 @@ modes only."
(repeat :tag "Modes" :inline t (symbol :tag "mode")))
(function :menu-tag "determined by function"
:value buffer-file-name)
(const :tag "none" nil)
)
:group 'highlight-changes)
(const :tag "none" nil)))
(defcustom highlight-changes-global-changes-existing-buffers nil
"If non-nil, toggling global Highlight Changes mode affects existing buffers.
@ -290,8 +280,7 @@ created). However, if `highlight-changes-global-changes-existing-buffers'
is non-nil, then turning on `global-highlight-changes-mode' will turn on
Highlight Changes mode in suitable buffers, and turning the mode off will
remove it from existing buffers."
:type 'boolean
:group 'highlight-changes)
:type 'boolean)
;; These are for internal use.
@ -320,9 +309,7 @@ through various faces.
\\[highlight-compare-with-file] - mark text as changed by comparing this
buffer with the contents of a file
\\[highlight-compare-buffers] highlights differences between two buffers."
nil ;; init-value
hilit-chg-string ;; lighter
nil ;; keymap
:lighter hilit-chg-string
(if (or (display-color-p)
(and (fboundp 'x-display-grayscale-p) (x-display-grayscale-p)))
(progn
@ -352,13 +339,8 @@ The default value can be customized with variable
`highlight-changes-visibility-initial-state'.
This command does not itself set Highlight Changes mode."
t ;; init-value
nil ;; lighter
nil ;; keymap
(hilit-chg-update)
)
:init-value t
(hilit-chg-update))
(defun hilit-chg-cust-fix-changes-face-list (w _wc &optional event)
@ -371,12 +353,10 @@ This command does not itself set Highlight Changes mode."
;; faces are saved but not to the actual list itself.
(let ((old-list (widget-value w)))
(if (member 'default old-list)
(let
((p (reverse old-list))
(let ((p (reverse old-list))
(n (length old-list))
new-name old-name
(new-list nil)
)
(new-list nil))
(while p
(setq old-name (car p))
(setq new-name (intern (format "highlight-changes-%d" n)))
@ -396,9 +376,7 @@ This command does not itself set Highlight Changes mode."
(if (equal new-list (widget-value w))
nil ;; (message "notify: no change!")
(widget-value-set w new-list)
(widget-setup)
)
)
(widget-setup)))
;; (message "notify: no default here!")
))
(let ((parent (widget-get w :parent)))
@ -417,10 +395,8 @@ Otherwise, this list will be constructed when needed from
:type '(choice
(repeat
:notify hilit-chg-cust-fix-changes-face-list
face )
(const :tag "Derive from highlight-changes-colors" nil)
)
:group 'highlight-changes)
face)
(const :tag "Derive from highlight-changes-colors" nil)))
(defun hilit-chg-map-changes (func &optional start-position end-position)
@ -446,7 +422,7 @@ An overlay from BEG to END containing a change face is added
from the information in the text property of type `hilit-chg'.
This is the opposite of `hilit-chg-hide-changes'."
(hilit-chg-map-changes 'hilit-chg-make-ov beg end))
(hilit-chg-map-changes #'hilit-chg-make-ov beg end))
(defun hilit-chg-make-ov (prop start end)
@ -467,8 +443,7 @@ This is the opposite of `hilit-chg-hide-changes'."
(overlay-put ov 'evaporate t)
;; We set the change property so we can tell this is one
;; of our overlays (so we don't delete someone else's).
(overlay-put ov 'hilit-chg t)
)
(overlay-put ov 'hilit-chg t))
(error "hilit-chg-make-ov: no face for prop: %s" prop))))
(defun hilit-chg-hide-changes (&optional beg end)
@ -726,7 +701,7 @@ this, eval the following in the buffer to be saved:
;; remove our existing overlays
(hilit-chg-hide-changes)
;; for each change text property, increment it
(hilit-chg-map-changes 'hilit-chg-bump-change)
(hilit-chg-map-changes #'hilit-chg-bump-change)
;; and display them
(hilit-chg-display-changes))
(unless modified
@ -759,7 +734,7 @@ is non-nil."
(buf-b-read-only (with-current-buffer buf-b buffer-read-only))
temp-a temp-b)
(if (and file-a bufa-modified)
(if (y-or-n-p (format "Save buffer %s? " buf-a))
(if (y-or-n-p (format "Save buffer %s? " buf-a))
(with-current-buffer buf-a
(save-buffer)
(setq bufa-modified (buffer-modified-p buf-a)))
@ -768,7 +743,7 @@ is non-nil."
(setq temp-a (setq file-a (ediff-make-temp-file buf-a nil))))
(if (and file-b bufb-modified)
(if (y-or-n-p (format "Save buffer %s? " buf-b))
(if (y-or-n-p (format "Save buffer %s? " buf-b))
(with-current-buffer buf-b
(save-buffer)
(setq bufb-modified (buffer-modified-p buf-b)))
@ -809,12 +784,11 @@ is non-nil."
(if temp-a
(delete-file temp-a))
(if temp-b
(delete-file temp-b)))
))
(delete-file temp-b)))))
;;;###autoload
(defun highlight-compare-buffers (buf-a buf-b)
"Compare two buffers and highlight the differences.
"Compare two buffers and highlight the differences.
The default is the current buffer and the one in the next window.
@ -835,8 +809,7 @@ changes are made, so \\[highlight-changes-next-change] and
(window-buffer (next-window)) t))))
(let ((file-a (buffer-file-name buf-a))
(file-b (buffer-file-name buf-b)))
(highlight-markup-buffers buf-a file-a buf-b file-b)
))
(highlight-markup-buffers buf-a file-a buf-b file-b)))
;;;###autoload
(defun highlight-compare-with-file (file-b)
@ -876,9 +849,11 @@ changes are made, so \\[highlight-changes-next-change] and
(find-file-noselect file-b))))
(highlight-markup-buffers buf-a file-a buf-b file-b (not existing-buf))
(unless existing-buf
(kill-buffer buf-b))
))
(kill-buffer buf-b))))
(defvar hilit-x) ; placate the byte-compiler
(defvar hilit-y)
(defvar hilit-e)
(defun hilit-chg-get-diff-info (buf-a file-a buf-b file-b)
;; hilit-e,x,y are set by function hilit-chg-get-diff-list-hk.
@ -886,8 +861,7 @@ changes are made, so \\[highlight-changes-next-change] and
(ediff-setup buf-a file-a buf-b file-b
nil nil ; buf-c file-C
'(hilit-chg-get-diff-list-hk)
(list (cons 'ediff-job-name 'something))
)
(list (cons 'ediff-job-name 'something)))
(ediff-with-current-buffer hilit-e (ediff-really-quit nil))
(list hilit-x hilit-y)))
@ -895,9 +869,6 @@ changes are made, so \\[highlight-changes-next-change] and
(defun hilit-chg-get-diff-list-hk ()
;; hilit-e/x/y are dynamically bound by hilit-chg-get-diff-info
;; which calls this function as a hook.
(defvar hilit-x) ; placate the byte-compiler
(defvar hilit-y)
(defvar hilit-e)
(setq hilit-e (current-buffer))
(let ((n 0) extent p va vb a b)
(setq hilit-x nil hilit-y nil)
@ -931,7 +902,7 @@ changes are made, so \\[highlight-changes-next-change] and
(setq extent (list (overlay-start (car p))
(overlay-end (car p))))
(setq p (cdr p))
(setq hilit-y (append hilit-y (list extent) )))
(setq hilit-y (append hilit-y (list extent))))
(setq n (1+ n)));; while
;; ediff-quit doesn't work here.
;; No point in returning a value, since this is a hook function.
@ -961,8 +932,7 @@ This is called when `global-highlight-changes-mode' is turned on."
(and
(not (string-match "^[ *]" (buffer-name)))
(buffer-file-name))))
(highlight-changes-mode 1))
))
(highlight-changes-mode 1))))
;;;; Desktop support.
@ -985,8 +955,7 @@ This is called when `global-highlight-changes-mode' is turned on."
;; (message "--- hilit-chg-debug-show ---")
;; (hilit-chg-map-changes (lambda (prop start end)
;; (message "%d-%d: %s" start end prop))
;; beg end
;; ))
;; beg end))
;;
;; ================== end of debug ===============

View file

@ -523,22 +523,10 @@ therefore no longer care about) will be invalid at any time.\n
(defvar hfy-tmpfont-stack nil
"An alist of derived fonts resulting from overlays.")
(defconst hfy-hex-regex "[[:xdigit:]]")
(defconst hfy-triplet-regex
(concat
"\\(" hfy-hex-regex hfy-hex-regex "\\)"
"\\(" hfy-hex-regex hfy-hex-regex "\\)"
"\\(" hfy-hex-regex hfy-hex-regex "\\)"))
(defun hfy-interq (set-a set-b)
"Return the intersection (using `eq') of two lists SET-A and SET-B."
(let ((sa set-a) (interq nil) (elt nil))
(while sa
(setq elt (car sa)
sa (cdr sa))
(if (memq elt set-b) (setq interq (cons elt interq))))
interq))
(rx (group xdigit xdigit)
(group xdigit xdigit)
(group xdigit xdigit)))
(defun hfy-color-vals (color)
"Where COLOR is a color name or #XXXXXX style triplet, return a
@ -887,7 +875,9 @@ See also `hfy-display-class' for details of valid values for CLASS."
(setq score 0) (ignore "t match"))
((not (cdr (assq key face-class))) ;Neither good nor bad.
nil (ignore "non match, non collision"))
((setq x (hfy-interq val (cdr (assq key face-class))))
((setq x (nreverse
(seq-intersection val (cdr (assq key face-class))
#'eq)))
(setq score (+ score (length x)))
(ignore "intersection"))
(t ;; nope.
@ -2355,6 +2345,13 @@ You may also want to set `hfy-page-header' and `hfy-page-footer'."
(let ((file (hfy-initfile)))
(load file 'NOERROR nil nil) ))
;; Obsolete.
(defun hfy-interq (set-a set-b)
"Return the intersection (using `eq') of two lists SET-A and SET-B."
(declare (obsolete seq-intersection "28.1"))
(nreverse (seq-intersection set-a set-b #'eq)))
(provide 'htmlfontify)
;;; htmlfontify.el ends here

View file

@ -732,8 +732,9 @@ displays an image file as text."
(setq image-type previous-image-type)
;; Enable image minor mode with `C-c C-c'.
(image-minor-mode 1)
;; Show the image file as text.
(image-toggle-display-text)))
(unless (image-get-display-property)
;; Show the image file as text.
(image-toggle-display-text))))
(defun image-mode-as-hex ()
"Set a non-image mode as major mode in combination with image minor mode.

View file

@ -603,12 +603,16 @@ means display it in the right marginal area."
(defun insert-image (image &optional string area slice)
"Insert IMAGE into current buffer at point.
IMAGE is displayed by inserting STRING into the current buffer
with a `display' property whose value is the image. STRING
defaults to a single space if you omit it.
with a `display' property whose value is the image.
STRING defaults to a single space if you omit it, which means
that the inserted image will behave as whitespace syntactically.
AREA is where to display the image. AREA nil or omitted means
display it in the text area, a value of `left-margin' means
display it in the left marginal area, a value of `right-margin'
means display it in the right marginal area.
SLICE specifies slice of IMAGE to insert. SLICE nil or omitted
means insert whole image. SLICE is a list (X Y WIDTH HEIGHT)
specifying the X and Y positions and WIDTH and HEIGHT of image area

View file

@ -484,9 +484,9 @@ with L, LRE, or LRO Unicode bidi character type.")
(progn
(modify-syntax-entry chars syntax)
(modify-category-entry chars category))
(mapc #'(lambda (x)
(modify-syntax-entry x syntax)
(modify-category-entry x category))
(mapc (lambda (x)
(modify-syntax-entry x syntax)
(modify-category-entry x category))
chars)))))
;; Bidi categories
@ -1390,8 +1390,8 @@ with L, LRE, or LRO Unicode bidi character type.")
(dolist (charset-info (nthcdr 2 slot))
(let ((charset (car charset-info)))
(dolist (code-range (cdr charset-info))
(map-charset-chars #'(lambda (range _arg)
(set-char-table-range table range 2))
(map-charset-chars (lambda (range _arg)
(set-char-table-range table range 2))
charset nil
(car code-range) (cdr code-range)))))
(optimize-char-table table)
@ -1417,8 +1417,8 @@ Setup char-width-table appropriate for non-CJK language environment."
(require 'charscript))
(map-charset-chars
#'(lambda (range _ignore)
(set-char-table-range char-script-table range 'tibetan))
(lambda (range _ignore)
(set-char-table-range char-script-table range 'tibetan))
'tibetan)
@ -1426,14 +1426,14 @@ Setup char-width-table appropriate for non-CJK language environment."
(when (setq unicode-category-table
(unicode-property-table-internal 'general-category))
(map-char-table #'(lambda (key val)
(if val
(cond ((or (and (/= (aref (symbol-name val) 0) ?M)
(/= (aref (symbol-name val) 0) ?C))
(eq val 'Zs))
(modify-category-entry key ?.))
((eq val 'Mn)
(modify-category-entry key ?^)))))
(map-char-table (lambda (key val)
(if val
(cond ((or (and (/= (aref (symbol-name val) 0) ?M)
(/= (aref (symbol-name val) 0) ?C))
(eq val 'Zs))
(modify-category-entry key ?.))
((eq val 'Mn)
(modify-category-entry key ?^)))))
unicode-category-table))
(optimize-char-table (standard-category-table))
@ -1524,21 +1524,21 @@ option `glyphless-char-display'."
((eq target 'format-control)
(when unicode-category-table
(map-char-table
#'(lambda (char category)
(if (eq category 'Cf)
(let ((this-method method)
from to)
(if (consp char)
(setq from (car char) to (cdr char))
(setq from char to char))
(while (<= from to)
(when (/= from #xAD)
(if (eq method 'acronym)
(setq this-method
(aref char-acronym-table from)))
(set-char-table-range glyphless-char-display
from this-method))
(setq from (1+ from))))))
(lambda (char category)
(if (eq category 'Cf)
(let ((this-method method)
from to)
(if (consp char)
(setq from (car char) to (cdr char))
(setq from char to char))
(while (<= from to)
(when (/= from #xAD)
(if (eq method 'acronym)
(setq this-method
(aref char-acronym-table from)))
(set-char-table-range glyphless-char-display
from this-method))
(setq from (1+ from))))))
unicode-category-table)))
((eq target 'no-font)
(set-char-table-extra-slot glyphless-char-display 0 method))

View file

@ -497,37 +497,37 @@
(:registry "iso10646-1"))))
(cjk-table (make-char-table nil))
(script-coverage
#'(lambda (script)
(let ((coverage))
(map-char-table
#'(lambda (range val)
(when (eq val script)
(if (consp range)
(setq range (cons (car range) (cdr range))))
(push range coverage)))
char-script-table)
coverage)))
(lambda (script)
(let ((coverage))
(map-char-table
(lambda (range val)
(when (eq val script)
(if (consp range)
(setq range (cons (car range) (cdr range))))
(push range coverage)))
char-script-table)
coverage)))
(data (list (vconcat (mapcar 'car cjk))))
(i 0))
(dolist (elt cjk)
(let ((mask (ash 1 i)))
(map-charset-chars
#'(lambda (range _arg)
(let ((from (car range)) (to (cdr range)))
(if (< to #x110000)
(while (<= from to)
(or (memq (aref char-script-table from)
'(kana hangul han cjk-misc))
(aset cjk-table from
(logior (or (aref cjk-table from) 0) mask)))
(setq from (1+ from))))))
(lambda (range _arg)
(let ((from (car range)) (to (cdr range)))
(if (< to #x110000)
(while (<= from to)
(or (memq (aref char-script-table from)
'(kana hangul han cjk-misc))
(aset cjk-table from
(logior (or (aref cjk-table from) 0) mask)))
(setq from (1+ from))))))
(nth 1 elt) nil (nth 2 elt) (nth 3 elt)))
(setq i (1+ i)))
(map-char-table
#'(lambda (range val)
(if (consp range)
(setq range (cons (car range) (cdr range))))
(push (cons range val) data))
(lambda (range val)
(if (consp range)
(setq range (cons (car range) (cdr range))))
(push (cons range val) data))
cjk-table)
(dolist (script scripts)
(dolist (range (funcall script-coverage (car script)))
@ -1227,7 +1227,7 @@ Done when `mouse-set-font' is called."
(string-match "fontset-auto[0-9]+$" fontset)
(push (list (fontset-plain-name fontset) fontset) l)))
(cons "Fontset"
(sort l #'(lambda (x y) (string< (car x) (car y)))))))
(sort l (lambda (x y) (string< (car x) (car y)))))))
(declare-function query-fontset "fontset.c" (pattern &optional regexpp))

View file

@ -186,8 +186,8 @@ character set."
'arabic-iso8859-6
(car (remq 'ascii (get-language-info language
'charset))))))
(map-charset-chars #'(lambda (range _arg)
(standard-display-default (car range) (cdr range)))
(map-charset-chars (lambda (range _arg)
(standard-display-default (car range) (cdr range)))
charset))
(sit-for 0))

View file

@ -679,18 +679,18 @@ DEFAULT is the coding system to use by default in the query."
;; ((CODING (POS . CHAR) (POS . CHAR) ...) ...)
(if unsafe
(setq unsafe
(mapcar #'(lambda (coding)
(cons coding
(if (stringp from)
(mapcar #'(lambda (pos)
(cons pos (aref from pos)))
(unencodable-char-position
0 (length from) coding
11 from))
(mapcar #'(lambda (pos)
(cons pos (char-after pos)))
(unencodable-char-position
from to coding 11)))))
(mapcar (lambda (coding)
(cons coding
(if (stringp from)
(mapcar (lambda (pos)
(cons pos (aref from pos)))
(unencodable-char-position
0 (length from) coding
11 from))
(mapcar (lambda (pos)
(cons pos (char-after pos)))
(unencodable-char-position
from to coding 11)))))
unsafe)))
(setq codings (sanitize-coding-system-list codings))
@ -744,19 +744,19 @@ e.g., for sending an email message.\n ")
(insert (format " %s cannot encode these:" (car coding)))
(let ((i 0)
(func1
#'(lambda (bufname pos)
(when (buffer-live-p (get-buffer bufname))
(pop-to-buffer bufname)
(goto-char pos))))
(lambda (bufname pos)
(when (buffer-live-p (get-buffer bufname))
(pop-to-buffer bufname)
(goto-char pos))))
(func2
#'(lambda (bufname pos coding)
(when (buffer-live-p (get-buffer bufname))
(pop-to-buffer bufname)
(if (< (point) pos)
(goto-char pos)
(forward-char 1)
(search-unencodable-char coding)
(forward-char -1))))))
(lambda (bufname pos coding)
(when (buffer-live-p (get-buffer bufname))
(pop-to-buffer bufname)
(if (< (point) pos)
(goto-char pos)
(forward-char 1)
(search-unencodable-char coding)
(forward-char -1))))))
(dolist (elt (cdr coding))
(insert " ")
(if (stringp from)

View file

@ -45,8 +45,8 @@
(define-button-type 'sort-listed-character-sets
'help-echo (purecopy "mouse-2, RET: sort on this column")
'face 'bold
'action #'(lambda (button)
(sort-listed-character-sets (button-get button 'sort-key))))
'action (lambda (button)
(sort-listed-character-sets (button-get button 'sort-key))))
(define-button-type 'list-charset-chars
:supertype 'help-xref
@ -1172,12 +1172,12 @@ The default is 20. If LIMIT is negative, do not limit the listing."
(if (or (vectorp elt) (listp elt))
(let ((i 0))
(catch 'tag
(mapc #'(lambda (x)
(setq i (1+ i))
(when (= i limit)
(insert " ...\n")
(throw 'tag nil))
(insert (format " %s\n" x)))
(mapc (lambda (x)
(setq i (1+ i))
(when (= i limit)
(insert " ...\n")
(throw 'tag nil))
(insert (format " %s\n" x)))
elt)))
(insert (format " %s\n" elt)))))))

View file

@ -32,7 +32,7 @@
(defconst mule-version "6.0 (HANACHIRUSATO)" "\
Version number and name of this version of MULE (multilingual environment).")
(make-obsolete-variable 'mule-version nil "28.1")
(make-obsolete-variable 'mule-version 'emacs-version "28.1")
(defconst mule-version-date "2003.9.1" "\
Distribution date of this version of MULE (multilingual environment).")
@ -491,27 +491,27 @@ per-character basis, this may not be accurate."
(cond
((listp cs-list)
(catch 'tag
(mapc #'(lambda (charset)
(if (encode-char char charset)
(throw 'tag charset)))
(mapc (lambda (charset)
(if (encode-char char charset)
(throw 'tag charset)))
cs-list)
nil))
((eq cs-list 'iso-2022)
(catch 'tag2
(mapc #'(lambda (charset)
(if (and (plist-get (charset-plist charset)
:iso-final-char)
(encode-char char charset))
(throw 'tag2 charset)))
(mapc (lambda (charset)
(if (and (plist-get (charset-plist charset)
:iso-final-char)
(encode-char char charset))
(throw 'tag2 charset)))
charset-list)
nil))
((eq cs-list 'emacs-mule)
(catch 'tag3
(mapc #'(lambda (charset)
(if (and (plist-get (charset-plist charset)
:emacs-mule-id)
(encode-char char charset))
(throw 'tag3 charset)))
(mapc (lambda (charset)
(if (and (plist-get (charset-plist charset)
:emacs-mule-id)
(encode-char char charset))
(throw 'tag3 charset)))
charset-list)
nil)))))))))))

View file

@ -728,9 +728,9 @@ Available types are listed in the variable `quail-keyboard-layout-alist'."
:type (cons 'choice (mapcar (lambda (elt)
(list 'const (car elt)))
quail-keyboard-layout-alist))
:set #'(lambda (symbol value)
(quail-update-keyboard-layout value)
(set symbol value)))
:set (lambda (symbol value)
(quail-update-keyboard-layout value)
(set symbol value)))
;;;###autoload
(defun quail-set-keyboard-layout (kbd-type)
@ -1571,12 +1571,12 @@ with more keys."
(let (char)
(if (stringp quail-current-str)
(catch 'tag
(mapc #'(lambda (ch)
(when (/= (unibyte-char-to-multibyte
(multibyte-char-to-unibyte ch))
ch)
(setq char ch)
(throw 'tag nil)))
(mapc (lambda (ch)
(when (/= (unibyte-char-to-multibyte
(multibyte-char-to-unibyte ch))
ch)
(setq char ch)
(throw 'tag nil)))
quail-current-str))
(if (/= (unibyte-char-to-multibyte
(multibyte-char-to-unibyte quail-current-str))
@ -2827,19 +2827,19 @@ If CHAR is an ASCII character and can be input by typing itself, return t."
(key-list nil))
(if (consp decode-map)
(let ((str (string char)))
(mapc #'(lambda (elt)
(if (string= str (car elt))
(setq key-list (cons (cdr elt) key-list))))
(mapc (lambda (elt)
(if (string= str (car elt))
(setq key-list (cons (cdr elt) key-list))))
(cdr decode-map)))
(let ((key-head (aref decode-map char)))
(if (stringp key-head)
(setq key-list (quail-find-key1
(quail-lookup-key key-head nil t)
key-head char nil))
(mapc #'(lambda (elt)
(setq key-list
(quail-find-key1
(quail-lookup-key elt nil t) elt char key-list)))
(mapc (lambda (elt)
(setq key-list
(quail-find-key1
(quail-lookup-key elt nil t) elt char key-list)))
key-head))))
(or key-list
(and (< char 128)

View file

@ -781,7 +781,7 @@ To get complete usage, invoke \"emacs -batch -f batch-titdic-convert -h\"."
(if val (setq trans (concat val trans)))
(puthash key trans table)
(forward-line 1)))
(maphash #'(lambda (key val) (setq dic (cons (cons key val) dic)))
(maphash (lambda (key val) (setq dic (cons (cons key val) dic)))
table)))
(setq dic (sort dic (lambda (x y) (string< (car x ) (car y)))))
(dolist (elt dic)
@ -931,18 +931,18 @@ method `chinese-tonepy' with which you must specify tones by digits
(if val (setq trans (vconcat val trans)))
(puthash key trans table)
(forward-line 1))
(maphash #'(lambda (key trans)
(let ((len (length trans))
i)
(if (and (= len 1) (= (length (aref trans 0)) 1))
(setq trans (aref trans 0))
(setq i 0)
(while (and (< i len)
(= (length (aref trans i)) 1))
(setq i (1+ i)))
(if (= i len)
(setq trans (mapconcat #'identity trans "")))))
(setq dic (cons (cons key trans) dic)))
(maphash (lambda (key trans)
(let ((len (length trans))
i)
(if (and (= len 1) (= (length (aref trans 0)) 1))
(setq trans (aref trans 0))
(setq i 0)
(while (and (< i len)
(= (length (aref trans i)) 1))
(setq i (1+ i)))
(if (= i len)
(setq trans (mapconcat #'identity trans "")))))
(setq dic (cons (cons key trans) dic)))
table)))
(setq dic (sort dic (lambda (x y) (string< (car x) (car y)))))
(goto-char (point-max))

View file

@ -1,4 +1,4 @@
;;; isearchb --- a marriage between iswitchb and isearch
;;; isearchb.el --- a marriage between iswitchb and isearch -*- lexical-binding: t -*-
;; Copyright (C) 2004-2021 Free Software Foundation, Inc.
@ -89,13 +89,11 @@
"Number of idle seconds before isearchb turns itself off.
If nil, don't use a timeout."
:type '(choice (integer :tag "Seconds")
(const :tag "Disable" nil))
:group 'isearchb)
(const :tag "Disable" nil)))
(defcustom isearchb-show-completions t
"If non-nil, show possible completions in the minibuffer."
:type 'boolean
:group 'isearchb)
:type 'boolean)
(defvar isearchb-start-buffer nil)
(defvar isearchb-last-buffer nil)

View file

@ -477,31 +477,31 @@ With value nil, inhibit any automatic allout-mode activation.")
(custom-autoload 'allout-auto-activation "allout" nil)
(put 'allout-use-hanging-indents 'safe-local-variable 'booleanp)
(put 'allout-use-hanging-indents 'safe-local-variable #'booleanp)
(put 'allout-reindent-bodies 'safe-local-variable (lambda (x) (memq x '(nil t text force))))
(put 'allout-show-bodies 'safe-local-variable 'booleanp)
(put 'allout-show-bodies 'safe-local-variable #'booleanp)
(put 'allout-header-prefix 'safe-local-variable 'stringp)
(put 'allout-header-prefix 'safe-local-variable #'stringp)
(put 'allout-primary-bullet 'safe-local-variable 'stringp)
(put 'allout-primary-bullet 'safe-local-variable #'stringp)
(put 'allout-plain-bullets-string 'safe-local-variable 'stringp)
(put 'allout-plain-bullets-string 'safe-local-variable #'stringp)
(put 'allout-distinctive-bullets-string 'safe-local-variable 'stringp)
(put 'allout-distinctive-bullets-string 'safe-local-variable #'stringp)
(put 'allout-use-mode-specific-leader 'safe-local-variable (lambda (x) (or (memq x '(t nil allout-mode-leaders comment-start)) (stringp x))))
(put 'allout-old-style-prefixes 'safe-local-variable 'booleanp)
(put 'allout-old-style-prefixes 'safe-local-variable #'booleanp)
(put 'allout-stylish-prefixes 'safe-local-variable 'booleanp)
(put 'allout-stylish-prefixes 'safe-local-variable #'booleanp)
(put 'allout-numbered-bullet 'safe-local-variable 'string-or-null-p)
(put 'allout-numbered-bullet 'safe-local-variable #'string-or-null-p)
(put 'allout-file-xref-bullet 'safe-local-variable 'string-or-null-p)
(put 'allout-file-xref-bullet 'safe-local-variable #'string-or-null-p)
(put 'allout-presentation-padding 'safe-local-variable 'integerp)
(put 'allout-presentation-padding 'safe-local-variable #'integerp)
(put 'allout-layout 'safe-local-variable (lambda (x) (or (numberp x) (listp x) (memq x '(: * + -)))))
@ -784,7 +784,7 @@ OPEN: A TOPIC that is not CLOSED, though its OFFSPRING or BODY may be.
\(fn &optional ARG)" t nil)
(defalias 'outlinify-sticky 'outlineify-sticky)
(defalias 'outlinify-sticky #'outlineify-sticky)
(autoload 'outlineify-sticky "allout" "\
Activate outline mode and establish file var so it is started subsequently.
@ -827,7 +827,7 @@ See `allout-widgets-mode' for allout widgets mode features.")
(custom-autoload 'allout-widgets-auto-activation "allout-widgets" nil)
(put 'allout-widgets-mode-inhibit 'safe-local-variable 'booleanp)
(put 'allout-widgets-mode-inhibit 'safe-local-variable #'booleanp)
(autoload 'allout-widgets-mode "allout-widgets" "\
Toggle Allout Widgets mode.
@ -1161,11 +1161,11 @@ Returns list of symbols and documentation found.
(autoload 'archive-mode "arc-mode" "\
Major mode for viewing an archive file in a dired-like way.
You can move around using the usual cursor motion commands.
Letters no longer insert themselves.
Type `e' to pull a file out of the archive and into its own buffer;
Letters no longer insert themselves.\\<archive-mode-map>
Type \\[archive-extract] to pull a file out of the archive and into its own buffer;
or click mouse-2 on the file's line in the archive mode buffer.
If you edit a sub-file of this archive (as with the `e' command) and
If you edit a sub-file of this archive (as with the \\[archive-extract] command) and
save it, the contents of that buffer will be saved back into the
archive.
@ -1539,7 +1539,7 @@ ENTRY is the name of a password-store entry.
The key used to retrieve the password is the symbol `secret'.
The convention used as the format for a password-store file is
the following (see http://www.passwordstore.org/#organization):
the following (see https://www.passwordstore.org/#organization):
secret
key1: value1
@ -1995,6 +1995,20 @@ seconds.
;;;;;; 0 0))
;;; Generated autoloads from emacs-lisp/benchmark.el
(autoload 'benchmark-call "benchmark" "\
Measure the run time of calling FUNC a number REPETITIONS of times.
The result is a list (TIME GC GCTIME)
where TIME is the total time it took, in seconds.
GCTIME is the amount of time that was spent in the GC
and GC is the number of times the GC was called.
REPETITIONS can also be a floating point number, in which case it
specifies a minimum number of seconds that the benchmark execution
should take. In that case the return value is prepended with the
number of repetitions actually used.
\(fn FUNC &optional REPETITIONS)" nil nil)
(autoload 'benchmark-run "benchmark" "\
Time execution of FORMS.
If REPETITIONS is supplied as a number, run FORMS that many times,
@ -2024,6 +2038,8 @@ Interactively, REPETITIONS is taken from the prefix arg, and
the command prompts for the form to benchmark.
For non-interactive use see also `benchmark-run' and
`benchmark-run-compiled'.
FORM can also be a function in which case we measure the time it takes
to call it without any argument.
\(fn REPETITIONS FORM)" t nil)
@ -2035,7 +2051,7 @@ The return value is the value of the final form in BODY.
(function-put 'benchmark-progn 'lisp-indent-function '0)
(register-definition-prefixes "benchmark" '("benchmark-elapse"))
(register-definition-prefixes "benchmark" '("benchmark-"))
;;;***
@ -4794,7 +4810,7 @@ element to judge if that element should be excluded from the list.
The buffer is left in Command History mode." t nil)
(autoload 'command-history "chistory" "\
Examine commands from `command-history' in a buffer.
Examine commands from variable `command-history' in a buffer.
The number of commands listed is controlled by `list-command-history-max'.
The command history is filtered by `list-command-history-filter' if non-nil.
Use \\<command-history-map>\\[command-history-repeat] to repeat the command on the current line.
@ -4892,8 +4908,12 @@ all methods of NAME have to use the same set of arguments for dispatch.
Each dispatch argument and TYPE are specified in ARGS where the corresponding
formal argument appears as (VAR TYPE) rather than just VAR.
The optional second argument QUALIFIER is a specifier that
modifies how the method is combined with other methods, including:
The optional EXTRA element, on the form `:extra STRING', allows
you to add more methods for the same specializers and qualifiers.
These are distinguished by STRING.
The optional argument QUALIFIER is a specifier that modifies how
the method is combined with other methods, including:
:before - Method will be called before the primary
:after - Method will be called after the primary
:around - Method will be called around everything else
@ -4910,9 +4930,9 @@ method to be applicable.
The set of acceptable TYPEs (also called \"specializers\") is defined
\(and can be extended) by the various methods of `cl-generic-generalizers'.
\(fn NAME [QUALIFIER] ARGS &rest [DOCSTRING] BODY)" nil t)
\(fn NAME [EXTRA] [QUALIFIER] ARGS &rest [DOCSTRING] BODY)" nil t)
(function-put 'cl-defmethod 'doc-string-elt '3)
(function-put 'cl-defmethod 'doc-string-elt 'cl--defmethod-doc-pos)
(function-put 'cl-defmethod 'lisp-indent-function 'defun)
@ -6769,6 +6789,8 @@ If the HANDLER returns a `dbus-error', it is propagated as return message.
\(fn EVENT)" t nil)
(function-put 'dbus-handle-event 'completion-predicate #'ignore)
(autoload 'dbus-monitor "dbus" "\
Invoke `dbus-register-monitor' interactively, and switch to the buffer.
BUS is either a Lisp keyword, `:system' or `:session', or a
@ -10614,7 +10636,7 @@ be invoked for the values of the other parameters.
\(fn &key (SERVER (erc-compute-server)) (PORT (erc-compute-port)) (NICK (erc-compute-nick)) PASSWORD (FULL-NAME (erc-compute-full-name)))" t nil)
(defalias 'erc-select 'erc)
(defalias 'erc-select #'erc)
(autoload 'erc-tls "erc" "\
Interactively select TLS connection parameters and run ERC.
@ -10737,7 +10759,7 @@ and how to display message.
\(fn SELECTOR &optional OUTPUT-BUFFER-NAME MESSAGE-FN)" t nil)
(defalias 'ert 'ert-run-tests-interactively)
(defalias 'ert #'ert-run-tests-interactively)
(autoload 'ert-describe-test "ert" "\
Display the documentation for TEST-OR-TEST-NAME (a symbol or ert-test).
@ -11946,6 +11968,13 @@ Besides the choice of face, it is the same as `buffer-face-mode'.
(register-definition-prefixes "face-remap" '("buffer-face-mode-" "face-" "internal-lisp-face-attributes" "text-scale-"))
;;;***
;;;### (autoloads nil "facemenu" "facemenu.el" (0 0 0 0))
;;; Generated autoloads from facemenu.el
(register-definition-prefixes "facemenu" '("facemenu-" "list-colors-"))
;;;***
;;;### (autoloads nil "faceup" "emacs-lisp/faceup.el" (0 0 0 0))
@ -12212,6 +12241,8 @@ Otherwise, signal a `file-notify-error'.
\(fn OBJECT)" t nil)
(function-put 'file-notify-handle-event 'completion-predicate #'ignore)
(register-definition-prefixes "filenotify" '("file-notify-"))
;;;***
@ -12711,7 +12742,6 @@ Change the filter on a `find-lisp-find-dired' buffer to REGEXP.
;;;### (autoloads nil "finder" "finder.el" (0 0 0 0))
;;; Generated autoloads from finder.el
(push (purecopy '(finder 1 0)) package--builtin-versions)
(autoload 'finder-list-keywords "finder" "\
Display descriptions of the keywords in the Finder buffer." t nil)
@ -12780,7 +12810,7 @@ lines.
(autoload 'flymake-log "flymake" "\
Log, at level LEVEL, the message MSG formatted with ARGS.
LEVEL is passed to `display-warning', which is used to display
the warning. If this form is included in a byte-compiled file,
the warning. If this form is included in a file,
the generated warning contains an indication of the file that
generated it.
@ -14390,15 +14420,15 @@ If FORCE is non-nil, replace the old ones.
Minor mode for providing mailing-list commands.
If called interactively, toggle `Gnus-Mailing-List mode'. If the
prefix argument is positive, enable the mode, and if it is zero
or negative, disable the mode.
prefix argument is positive, enable the mode, and if it is zero or
negative, disable the mode.
If called from Lisp, toggle the mode if ARG is `toggle'. Enable
the mode if ARG is nil, omitted, or is a positive number.
Disable the mode if ARG is a negative number.
If called from Lisp, toggle the mode if ARG is `toggle'. Enable the
mode if ARG is nil, omitted, or is a positive number. Disable the
mode if ARG is a negative number.
The mode's hook is called both when the mode is enabled and when
it is disabled.
The mode's hook is called both when the mode is enabled and when it is
disabled.
\\{gnus-mailing-list-mode-map}
@ -16840,7 +16870,7 @@ buffers which are visiting a file.
(autoload 'ibuffer "ibuffer" "\
Begin using Ibuffer to edit a list of buffers.
Type `h' after entering ibuffer for more information.
Type \\<ibuffer-mode-map>\\[describe-mode] after entering ibuffer for more information.
All arguments are optional.
OTHER-WINDOW-P says to use another window.
@ -17126,7 +17156,7 @@ The main features of this mode are
Use \\[idlwave-fill-paragraph] to refill a paragraph inside a
comment. The indentation of the second line of the paragraph
relative to the first will be retained. Use
\\[idlwave-auto-fill-mode] to toggle auto-fill mode for these
\\[auto-fill-mode] to toggle auto-fill mode for these
comments. When the variable `idlwave-fill-comment-line-only' is
nil, code can also be auto-filled and auto-indented.
@ -18592,25 +18622,6 @@ See Info node `(elisp)Defining Functions' for more details.
(register-definition-prefixes "inline" '("inline-"))
;;;***
;;;### (autoloads nil "inversion" "cedet/inversion.el" (0 0 0 0))
;;; Generated autoloads from cedet/inversion.el
(push (purecopy '(inversion 1 3)) package--builtin-versions)
(autoload 'inversion-require-emacs "inversion" "\
Declare that you need either EMACS-VER, XEMACS-VER or SXEMACS-ver.
Only checks one based on which kind of Emacs is being run.
This function is obsolete; do this instead:
(when (version<= \"28.1\" emacs-version) ...)
\(fn EMACS-VER XEMACS-VER SXEMACS-VER)" nil nil)
(make-obsolete 'inversion-require-emacs 'nil '"28.1")
(register-definition-prefixes "inversion" '("inversion-"))
;;;***
;;;### (autoloads nil "isearch-x" "international/isearch-x.el" (0
@ -19540,13 +19551,13 @@ A major mode to edit GNU ld script files
;;;;;; (0 0 0 0))
;;; Generated autoloads from textmodes/less-css-mode.el
(put 'less-css-compile-at-save 'safe-local-variable 'booleanp)
(put 'less-css-compile-at-save 'safe-local-variable #'booleanp)
(put 'less-css-lessc-options 'safe-local-variable t)
(put 'less-css-output-directory 'safe-local-variable 'stringp)
(put 'less-css-output-directory 'safe-local-variable #'stringp)
(put 'less-css-input-file-name 'safe-local-variable 'stringp)
(put 'less-css-input-file-name 'safe-local-variable #'stringp)
(add-to-list 'auto-mode-alist '("\\.less\\'" . less-css-mode))
(autoload 'less-css-mode "less-css-mode" "\
@ -20535,7 +20546,7 @@ Default bookmark handler for Man buffers.
;;;### (autoloads nil "map" "emacs-lisp/map.el" (0 0 0 0))
;;; Generated autoloads from emacs-lisp/map.el
(push (purecopy '(map 2 1)) package--builtin-versions)
(push (purecopy '(map 3 0)) package--builtin-versions)
(register-definition-prefixes "map" '("map-"))
@ -22087,6 +22098,32 @@ QUALITY can be:
;;;### (autoloads nil "mwheel" "mwheel.el" (0 0 0 0))
;;; Generated autoloads from mwheel.el
(defcustom mouse-wheel-mode t "\
Non-nil if Mouse-Wheel mode is enabled.
See the `mouse-wheel-mode' command
for a description of this minor mode.
Setting this variable directly does not take effect;
either customize it (see the info node `Easy Customization')
or call the function `mouse-wheel-mode'." :set #'custom-set-minor-mode :initialize 'custom-initialize-delay :group 'mouse :type 'boolean)
(custom-autoload 'mouse-wheel-mode "mwheel" nil)
(autoload 'mouse-wheel-mode "mwheel" "\
Toggle mouse wheel support (Mouse Wheel mode).
If called interactively, toggle `Mouse-Wheel mode'. If the prefix
argument is positive, enable the mode, and if it is zero or negative,
disable the mode.
If called from Lisp, toggle the mode if ARG is `toggle'. Enable the
mode if ARG is nil, omitted, or is a positive number. Disable the
mode if ARG is a negative number.
The mode's hook is called both when the mode is enabled and when it is
disabled.
\(fn &optional ARG)" t nil)
(register-definition-prefixes "mwheel" '("mouse-wheel-" "mwheel-"))
;;;***
@ -22347,7 +22384,7 @@ gnutls-boot (as returned by `gnutls-boot-parameters').
\(fn NAME BUFFER HOST SERVICE &rest PARAMETERS)" nil nil)
(defalias 'open-protocol-stream 'open-network-stream)
(define-obsolete-function-alias 'open-protocol-stream #'open-network-stream "26.1")
(register-definition-prefixes "network-stream" '("network-stream-"))
@ -24041,6 +24078,8 @@ Turning on outline mode calls the value of `text-mode-hook' and then of
`outline-mode-hook', if they are non-nil.
\(fn)" t nil)
(put 'outline-minor-mode-cycle 'safe-local-variable 'booleanp)
(put 'outline-minor-mode-highlight 'safe-local-variable 'booleanp)
(autoload 'outline-minor-mode "outline" "\
Toggle Outline minor mode.
@ -24186,7 +24225,11 @@ directory.
(autoload 'package-install-selected-packages "package" "\
Ensure packages in `package-selected-packages' are installed.
If some packages are not installed propose to install them." t nil)
If some packages are not installed, propose to install them.
If optional argument NOCONFIRM is non-nil, don't ask for
confirmation to install packages.
\(fn &optional NOCONFIRM)" t nil)
(autoload 'package-reinstall "package" "\
Reinstall package PKG.
@ -25898,6 +25941,13 @@ Save the result in `project-list-file' if the list of projects has changed.
\(fn PR)" nil nil)
(autoload 'project-remove-known-project "project" "\
Remove directory PROJECT-ROOT from the project list.
PROJECT-ROOT is the root directory of a known project listed in
the project list.
\(fn PROJECT-ROOT)" t nil)
(autoload 'project-known-project-roots "project" "\
Return the list of root directories of all known projects." nil nil)
@ -25906,19 +25956,6 @@ Execute an extended command in project root." t nil)
(function-put 'project-execute-extended-command 'interactive-only 'command-execute)
(defvar project-switch-commands '((project-find-file "Find file") (project-find-regexp "Find regexp") (project-dired "Dired") (project-vc-dir "VC-Dir") (project-eshell "Eshell")) "\
Alist mapping commands to descriptions.
Used by `project-switch-project' to construct a dispatch menu of
commands available upon \"switching\" to another project.
Each element is of the form (COMMAND LABEL &optional KEY) where
COMMAND is the command to run when KEY is pressed. LABEL is used
to distinguish the menu entries in the dispatch menu. If KEY is
absent, COMMAND must be bound in `project-prefix-map', and the
key is looked up in that map.")
(custom-autoload 'project-switch-commands "project" t)
(autoload 'project-switch-project "project" "\
\"Switch\" to another project by running an Emacs command.
The available commands are presented as a dispatch menu
@ -26495,7 +26532,7 @@ Add one translation rule, KEY to TRANSLATION, in the current Quail package.
KEY is a string meaning a sequence of keystrokes to be translated.
TRANSLATION is a character, a string, a vector, a Quail map,
a function, or a cons.
It it is a character, it is the sole translation of KEY.
If it is a character, it is the sole translation of KEY.
If it is a string, each character is a candidate for the translation.
If it is a vector, each element (string or character) is a candidate
for the translation.
@ -28351,24 +28388,7 @@ For more details, see Info node `(elisp) Extending Rx'.
(function-put 'rx-define 'lisp-indent-function 'defun)
(autoload 'rx--pcase-macroexpander "rx" "\
A pattern that matches strings against `rx' REGEXPS in sexp form.
REGEXPS are interpreted as in `rx'. The pattern matches any
string that is a match for REGEXPS, as if by `string-match'.
In addition to the usual `rx' syntax, REGEXPS can contain the
following constructs:
(let REF RX...) binds the symbol REF to a submatch that matches
the regular expressions RX. REF is bound in
CODE to the string of the submatch or nil, but
can also be used in `backref'.
(backref REF) matches whatever the submatch REF matched.
REF can be a number, as usual, or a name
introduced by a previous (let REF ...)
construct.
\(fn &rest REGEXPS)" nil nil)
(eval-and-compile (defun rx--pcase-macroexpander (&rest regexps) "A pattern that matches strings against `rx' REGEXPS in sexp form.\nREGEXPS are interpreted as in `rx'. The pattern matches any\nstring that is a match for REGEXPS, as if by `string-match'.\n\nIn addition to the usual `rx' syntax, REGEXPS can contain the\nfollowing constructs:\n\n (let REF RX...) binds the symbol REF to a submatch that matches\n the regular expressions RX. REF is bound in\n CODE to the string of the submatch or nil, but\n can also be used in `backref'.\n (backref REF) matches whatever the submatch REF matched.\n REF can be a number, as usual, or a name\n introduced by a previous (let REF ...)\n construct." (let* ((rx--pcase-vars nil) (regexp (rx--to-expr (rx--pcase-transform (cons 'seq regexps)))) (nvars (length rx--pcase-vars))) `(and (pred stringp) ,(if (zerop nvars) `(pred (string-match ,regexp)) `(app (lambda (s) (and (string-match ,regexp s) ,(rx--reduce-right (lambda (a b) `(cons ,a ,b)) (mapcar (lambda (i) `(match-string ,i s)) (number-sequence 1 nvars))))) ,(list '\` (rx--reduce-right #'cons (mapcar (lambda (name) (list '\, name)) (reverse rx--pcase-vars))))))))))
(define-symbol-prop 'rx--pcase-macroexpander 'edebug-form-spec 'nil)
@ -28861,14 +28881,6 @@ Major mode for editing Bovine grammars.
(register-definition-prefixes "semantic/grammar" '("semantic-"))
;;;***
;;;### (autoloads nil "semantic/grammar-wy" "cedet/semantic/grammar-wy.el"
;;;;;; (0 0 0 0))
;;; Generated autoloads from cedet/semantic/grammar-wy.el
(register-definition-prefixes "semantic/grammar-wy" '("semantic-grammar-wy--"))
;;;***
;;;### (autoloads nil "semantic/java" "cedet/semantic/java.el" (0
@ -29500,7 +29512,7 @@ or Edit/Text Properties/Face commands.
Pages can have <a name=\"SOMENAME\">named points</a> and can link other points
to them with <a href=\"#SOMENAME\">see also somename</a>. In the same way <a
href=\"URL\">see also URL</a> where URL is a filename relative to current
directory, or absolute as in `http://www.cs.indiana.edu/elisp/w3/docs.html'.
directory, or absolute as in `https://www.cs.indiana.edu/elisp/w3/docs.html'.
Images in many formats can be inlined with <img src=\"URL\">.
@ -31249,7 +31261,7 @@ Major-mode for writing SRecode macros.
\(fn)" t nil)
(defalias 'srt-mode 'srecode-template-mode)
(defalias 'srt-mode #'srecode-template-mode)
(register-definition-prefixes "srecode/srt-mode" '("semantic-" "srecode-"))
@ -31811,7 +31823,7 @@ Move the point under the table as shown below.
+--------------+------+--------------------------------+
-!-
Type M-x table-insert-row instead of \\[table-insert-row-column]. \\[table-insert-row-column] does not work
Type \\[table-insert-row] instead of \\[table-insert-row-column]. \\[table-insert-row-column] does not work
when the point is outside of the table. This insertion at
outside of the table effectively appends a row at the end.
@ -32108,11 +32120,11 @@ HTML:
URL `https://www.w3.org'
LaTeX:
URL `http://www.maths.tcd.ie/~dwilkins/LaTeXPrimer/Tables.html'
URL `https://www.maths.tcd.ie/~dwilkins/LaTeXPrimer/Tables.html'
CALS (DocBook DTD):
URL `http://www.oasis-open.org/html/a502.htm'
URL `http://www.oreilly.com/catalog/docbook/chapter/book/table.html#AEN114751'
URL `https://www.oasis-open.org/html/a502.htm'
URL `https://www.oreilly.com/catalog/docbook/chapter/book/table.html#AEN114751'
\(fn LANGUAGE &optional DEST-BUFFER CAPTION)" t nil)
@ -32320,12 +32332,12 @@ Connect to the Emacs talk group from the current X display or tty frame." t nil)
(autoload 'tar-mode "tar-mode" "\
Major mode for viewing a tar file as a dired-like listing of its contents.
You can move around using the usual cursor motion commands.
Letters no longer insert themselves.
Type `e' to pull a file out of the tar file and into its own buffer;
Letters no longer insert themselves.\\<tar-mode-map>
Type \\[tar-extract] to pull a file out of the tar file and into its own buffer;
or click mouse-2 on the file's line in the Tar mode buffer.
Type `c' to copy an entry from the tar file into another file on disk.
Type \\[tar-copy] to copy an entry from the tar file into another file on disk.
If you edit a sub-file of this archive (as with the `e' command) and
If you edit a sub-file of this archive (as with the \\[tar-extract] command) and
save it with \\[save-buffer], the contents of that buffer will be
saved back into the tar-file buffer; in this way you can edit a file
inside of a tar archive without extracting it and re-archiving it.
@ -32679,11 +32691,11 @@ says which mode to use.
\(fn)" t nil)
(defalias 'TeX-mode 'tex-mode)
(defalias 'TeX-mode #'tex-mode)
(defalias 'plain-TeX-mode 'plain-tex-mode)
(defalias 'plain-TeX-mode #'plain-tex-mode)
(defalias 'LaTeX-mode 'latex-mode)
(defalias 'LaTeX-mode #'latex-mode)
(autoload 'plain-tex-mode "tex-mode" "\
Major mode for editing files of input for plain TeX.
@ -33339,7 +33351,11 @@ point.
\(fn &optional FORMAT HERE)" t nil)
(autoload 'emacs-init-time "time" "\
Return a string giving the duration of the Emacs initialization." t nil)
Return a string giving the duration of the Emacs initialization.
FORMAT is a string to format the result, using `format'. If nil,
the default format \"%f seconds\" is used.
\(fn &optional FORMAT)" t nil)
(register-definition-prefixes "time" '("display-time-" "legacy-style-world-list" "time--display-world-list" "world-clock-" "zoneinfo-style-world-list"))
@ -34023,6 +34039,13 @@ Add archive file name handler to `file-name-handler-alist'." (when tramp-archive
(register-definition-prefixes "tramp-ftp" '("tramp-"))
;;;***
;;;### (autoloads nil "tramp-fuse" "net/tramp-fuse.el" (0 0 0 0))
;;; Generated autoloads from net/tramp-fuse.el
(register-definition-prefixes "tramp-fuse" '("tramp-fuse-"))
;;;***
;;;### (autoloads nil "tramp-gvfs" "net/tramp-gvfs.el" (0 0 0 0))
@ -34060,6 +34083,13 @@ Add archive file name handler to `file-name-handler-alist'." (when tramp-archive
(register-definition-prefixes "tramp-smb" '("tramp-smb-"))
;;;***
;;;### (autoloads nil "tramp-sshfs" "net/tramp-sshfs.el" (0 0 0 0))
;;; Generated autoloads from net/tramp-sshfs.el
(register-definition-prefixes "tramp-sshfs" '("tramp-sshfs-"))
;;;***
;;;### (autoloads nil "tramp-sudoedit" "net/tramp-sudoedit.el" (0
@ -34134,8 +34164,8 @@ resumed later.
;;;;;; 0 0))
;;; Generated autoloads from textmodes/two-column.el
(autoload '2C-command "two-column" () t 'keymap)
(global-set-key "\C-x6" '2C-command)
(global-set-key [f2] '2C-command)
(global-set-key "\C-x6" #'2C-command)
(global-set-key [f2] #'2C-command)
(autoload '2C-two-columns "two-column" "\
Split current window vertically for two-column editing.
@ -35240,7 +35270,12 @@ The buffer in question is current when this function is called.
\(fn FILENAME)" nil nil)
(register-definition-prefixes "userlock" '("ask-user-about-" "file-" "userlock--check-content-unchanged"))
(autoload 'userlock--handle-unlock-error "userlock" "\
Report an ERROR that occurred while unlocking a file.
\(fn ERROR)" nil nil)
(register-definition-prefixes "userlock" '("ask-user-about-" "file-" "userlock--"))
;;;***
@ -36027,7 +36062,7 @@ Key bindings:
;;;### (autoloads nil "verilog-mode" "progmodes/verilog-mode.el"
;;;;;; (0 0 0 0))
;;; Generated autoloads from progmodes/verilog-mode.el
(push (purecopy '(verilog-mode 2021 2 2 263931197)) package--builtin-versions)
(push (purecopy '(verilog-mode 2021 3 30 243771231)) package--builtin-versions)
(autoload 'verilog-mode "verilog-mode" "\
Major mode for editing Verilog code.
@ -36782,7 +36817,7 @@ Don't change this variable directly, you must change it by one of the
functions that enable or disable view mode.")
(autoload 'kill-buffer-if-not-modified "view" "\
Like `kill-buffer', but does nothing if the buffer is modified.
Like `kill-buffer', but does nothing if buffer BUF is modified.
\(fn BUF)" nil nil)
@ -36848,7 +36883,7 @@ file: Users may suspend viewing in order to modify the buffer.
Exiting View mode will then discard the user's edits. Setting
EXIT-ACTION to `kill-buffer-if-not-modified' avoids this.
This function does not enable View mode if the buffer's major-mode
This function does not enable View mode if the buffer's major mode
has a `special' mode-class, because such modes usually have their
own View-like bindings.
@ -36870,7 +36905,7 @@ Optional argument EXIT-ACTION is either nil or a function with buffer as
argument. This function is called when finished viewing buffer. Use
this argument instead of explicitly setting `view-exit-action'.
This function does not enable View mode if the buffer's major-mode
This function does not enable View mode if the buffer's major mode
has a `special' mode-class, because such modes usually have their
own View-like bindings.
@ -36892,7 +36927,7 @@ Optional argument EXIT-ACTION is either nil or a function with buffer as
argument. This function is called when finished viewing buffer. Use
this argument instead of explicitly setting `view-exit-action'.
This function does not enable View mode if the buffer's major-mode
This function does not enable View mode if the buffer's major mode
has a `special' mode-class, because such modes usually have their
own View-like bindings.
@ -38341,15 +38376,15 @@ Zone out, completely." t nil)
;;;;;; "cedet/semantic/db-typecache.el" "cedet/semantic/db.el" "cedet/semantic/debug.el"
;;;;;; "cedet/semantic/decorate/include.el" "cedet/semantic/decorate/mode.el"
;;;;;; "cedet/semantic/dep.el" "cedet/semantic/doc.el" "cedet/semantic/edit.el"
;;;;;; "cedet/semantic/find.el" "cedet/semantic/format.el" "cedet/semantic/html.el"
;;;;;; "cedet/semantic/ia-sb.el" "cedet/semantic/ia.el" "cedet/semantic/idle.el"
;;;;;; "cedet/semantic/imenu.el" "cedet/semantic/lex-spp.el" "cedet/semantic/lex.el"
;;;;;; "cedet/semantic/mru-bookmark.el" "cedet/semantic/scope.el"
;;;;;; "cedet/semantic/senator.el" "cedet/semantic/sort.el" "cedet/semantic/symref.el"
;;;;;; "cedet/semantic/symref/cscope.el" "cedet/semantic/symref/global.el"
;;;;;; "cedet/semantic/symref/grep.el" "cedet/semantic/symref/idutils.el"
;;;;;; "cedet/semantic/symref/list.el" "cedet/semantic/tag-file.el"
;;;;;; "cedet/semantic/tag-ls.el" "cedet/semantic/tag-write.el"
;;;;;; "cedet/semantic/find.el" "cedet/semantic/format.el" "cedet/semantic/grammar-wy.el"
;;;;;; "cedet/semantic/html.el" "cedet/semantic/ia-sb.el" "cedet/semantic/ia.el"
;;;;;; "cedet/semantic/idle.el" "cedet/semantic/imenu.el" "cedet/semantic/lex-spp.el"
;;;;;; "cedet/semantic/lex.el" "cedet/semantic/mru-bookmark.el"
;;;;;; "cedet/semantic/scope.el" "cedet/semantic/senator.el" "cedet/semantic/sort.el"
;;;;;; "cedet/semantic/symref.el" "cedet/semantic/symref/cscope.el"
;;;;;; "cedet/semantic/symref/global.el" "cedet/semantic/symref/grep.el"
;;;;;; "cedet/semantic/symref/idutils.el" "cedet/semantic/symref/list.el"
;;;;;; "cedet/semantic/tag-file.el" "cedet/semantic/tag-ls.el" "cedet/semantic/tag-write.el"
;;;;;; "cedet/semantic/tag.el" "cedet/semantic/texi.el" "cedet/semantic/util-modes.el"
;;;;;; "cedet/semantic/wisent/java-tags.el" "cedet/semantic/wisent/javascript.el"
;;;;;; "cedet/semantic/wisent/javat-wy.el" "cedet/semantic/wisent/js-wy.el"
@ -38381,7 +38416,7 @@ Zone out, completely." t nil)
;;;;;; "eshell/em-ls.el" "eshell/em-pred.el" "eshell/em-prompt.el"
;;;;;; "eshell/em-rebind.el" "eshell/em-script.el" "eshell/em-smart.el"
;;;;;; "eshell/em-term.el" "eshell/em-tramp.el" "eshell/em-unix.el"
;;;;;; "eshell/em-xtra.el" "facemenu.el" "faces.el" "files.el" "font-core.el"
;;;;;; "eshell/em-xtra.el" "faces.el" "files.el" "font-core.el"
;;;;;; "font-lock.el" "format.el" "frame.el" "help.el" "hfy-cmap.el"
;;;;;; "ibuf-ext.el" "indent.el" "international/characters.el" "international/charprop.el"
;;;;;; "international/charscript.el" "international/cp51932.el"

View file

@ -31,9 +31,6 @@
;;; Code:
(defconst linum-version "0.9x")
(make-obsolete-variable 'linum-version nil "28.1")
(defvar-local linum-overlays nil "Overlays used in this buffer.")
(defvar-local linum-available nil "Overlays available for reuse.")
(defvar linum-before-numbering-hook nil
@ -244,6 +241,9 @@ Linum mode is a buffer-local minor mode."
;; continue standard unloading
nil)
(defconst linum-version "0.9x")
(make-obsolete-variable 'linum-version 'emacs-version "28.1")
(provide 'linum)
;;; linum.el ends here

View file

@ -82,12 +82,6 @@ A library name is equivalent to the file name that `load-library' would load."
(when (eq (car-safe x) 'require)
(push (cdr x) requires)))))
(defsubst file-set-intersect (p q)
"Return the set intersection of two lists."
(let (ret)
(dolist (x p ret)
(when (memq x q) (push x ret)))))
(defun file-dependents (file)
"Return the list of loaded libraries that depend on FILE.
This can include FILE itself.
@ -97,7 +91,7 @@ A library name is equivalent to the file name that `load-library' would load."
(dependents nil))
(dolist (x load-history dependents)
(when (and (stringp (car x))
(file-set-intersect provides (file-requires (car x))))
(seq-intersection provides (file-requires (car x)) #'eq))
(push (car x) dependents)))))
(defun read-feature (prompt &optional loaded-p)
@ -322,6 +316,13 @@ something strange, such as redefining an Emacs function."
;; Don't return load-history, it is not useful.
nil)
;; Obsolete.
(defsubst file-set-intersect (p q)
"Return the set intersection of two lists."
(declare (obsolete seq-intersection "28.1"))
(nreverse (seq-intersection p q #'eq)))
(provide 'loadhist)
;;; loadhist.el ends here

View file

@ -2236,13 +2236,13 @@ place. It affects how `mail-extract-address-components' works."
;(let ((all nil))
; (mapatoms #'(lambda (x)
; (mapatoms (lambda (x)
; (if (and (boundp x)
; (string-match "^mail-extr-" (symbol-name x)))
; (setq all (cons x all)))))
; (setq all (sort all #'string-lessp))
; (cons 'setq
; (apply 'nconc (mapcar #'(lambda (x)
; (apply 'nconc (mapcar (lambda (x)
; (list x (symbol-value x)))
; all))))

View file

@ -3671,9 +3671,9 @@ If BUFFER is not swapped, yank out of its message viewer buffer."
(push (cons "cc" cc) other-headers)
(push (cons "in-reply-to" in-reply-to) other-headers)
(setq other-headers
(mapcar #'(lambda (elt)
(cons (car elt) (if (stringp (cdr elt))
(rfc2047-decode-string (cdr elt)))))
(mapcar (lambda (elt)
(cons (car elt) (if (stringp (cdr elt))
(rfc2047-decode-string (cdr elt)))))
other-headers))
(if (stringp to) (setq to (rfc2047-decode-string to)))
(if (stringp in-reply-to)

View file

@ -489,13 +489,6 @@ for `smtpmail-try-auth-method'.")
recipient
(concat recipient "@" smtpmail-sendto-domain)))
(defun smtpmail-intersection (list1 list2)
(let ((result nil))
(dolist (el2 list2)
(when (memq el2 list1)
(push el2 result)))
(nreverse result)))
(defun smtpmail-command-or-throw (process string &optional code)
(let (ret)
(smtpmail-send-command process string)
@ -512,9 +505,10 @@ for `smtpmail-try-auth-method'.")
(if port
(format "%s" port)
"smtp"))
(let* ((mechs (smtpmail-intersection
(let* ((mechs (seq-intersection
smtpmail-auth-supported
(cdr-safe (assoc 'auth supported-extensions))
smtpmail-auth-supported))
#'eq))
(auth-source-creation-prompts
'((user . "SMTP user name for %h: ")
(secret . "SMTP password for %u@%h: ")))
@ -1087,6 +1081,12 @@ many continuation lines."
(while (and (looking-at "^[ \t].*\n") (< (point) header-end))
(replace-match ""))))))
;; Obsolete.
(defun smtpmail-intersection (list1 list2)
(declare (obsolete seq-intersection "28.1"))
(seq-intersection list2 list1 #'eq))
(provide 'smtpmail)
;;; smtpmail.el ends here

View file

@ -1503,7 +1503,9 @@ manpage command."
(quit-restore-window
(get-buffer-window Man-buffer t) 'kill)
;; Ensure that we end up in the correct window.
(select-window (old-selected-window)))
(let ((old-window (old-selected-window)))
(when (window-live-p old-window)
(select-window old-window))))
(kill-buffer Man-buffer)))
(when message

View file

@ -129,12 +129,10 @@
"Return L1 after removing all elements not found in L2.
If SELECTFUN is non-nil, elements aren't compared directly, but instead
they are passed through SELECTFUN before comparison."
(let ((res ()))
(if selectfun (setq l2 (mapcar selectfun l2)))
(dolist (elem l1)
(when (member (if selectfun (funcall selectfun elem) elem) l2)
(push elem res)))
(nreverse res)))
(when selectfun
(setq l1 (mapcar selectfun l1))
(setq l2 (mapcar selectfun l2)))
(seq-intersection l1 l2))
(defun mpc-event-set-point (event)
(condition-case nil (posn-set-point (event-end event))
@ -698,7 +696,7 @@ The songs are returned as alists."
(let* ((osongs (mpc-cmd-find other-tag value))
(ofiles (mpc-assq-all 'file (apply 'append osongs)))
(plfiles (mpc-assq-all 'file (apply 'append plsongs))))
(when (mpc-intersection plfiles ofiles)
(when (seq-intersection plfiles ofiles)
(push pl pls)))))))
pls))
@ -1669,7 +1667,7 @@ Return non-nil if a selection was deactivated."
(mpc-cmd-list mpc-tag (car cst) val))
(cdr cst)))))
(setq active
(if (listp active) (mpc-intersection active vals) vals))))
(if (listp active) (seq-intersection active vals) vals))))
(when (listp active)
;; Remove the selections if they are all in conflict with

View file

@ -336,8 +336,8 @@ defaults to GNUTLS_VERIFY_ALLOW_X509_V1_CA_CRT."
t)
;; if a list, look for hostname matches
((listp gnutls-verify-error)
(cadr (cl-find-if #'(lambda (x)
(string-match (car x) hostname))
(cadr (cl-find-if (lambda (x)
(string-match (car x) hostname))
gnutls-verify-error)))
;; else it's nil
(t nil))))

View file

@ -737,9 +737,9 @@ sure of changing the value of `foo'."
:end-of-command "\r\n"
:success "^1 OK "
:starttls-function
#'(lambda (capabilities)
(when (string-match-p "STARTTLS" capabilities)
"1 STARTTLS\r\n"))))
(lambda (capabilities)
(when (string-match-p "STARTTLS" capabilities)
"1 STARTTLS\r\n"))))
done)
(when process
(imap-log buffer)

View file

@ -1680,6 +1680,7 @@ Sat, 07 Sep 2002 00:00:01 GMT
nil))))
nil))
;; FIXME: Can this be replaced by seq-intersection?
(defun newsticker--lists-intersect-p (list1 list2)
"Return t if LIST1 and LIST2 share elements."
(let ((result nil))

View file

@ -725,9 +725,9 @@ Otherwise, return the size of the message-id MSG."
(setq pop3-read-point (point-marker))
(goto-char (match-beginning 0))
(setq end (point-marker))
(mapcar #'(lambda (s) (let ((split (split-string s " ")))
(cons (string-to-number (nth 0 split))
(string-to-number (nth 1 split)))))
(mapcar (lambda (s) (let ((split (split-string s " ")))
(cons (string-to-number (nth 0 split))
(string-to-number (nth 1 split)))))
(split-string (buffer-substring start end) "\r\n" t)))))))
(defun pop3-retr (process msg crashbuf)

View file

@ -103,12 +103,12 @@ detected as prompt when being sent on echoing hosts, therefore.")
(defconst tramp-end-of-heredoc (md5 tramp-end-of-output)
"String used to recognize end of heredoc strings.")
(defcustom tramp-use-ssh-controlmaster-options t
(defcustom tramp-use-ssh-controlmaster-options (not (eq system-type 'windows-nt))
"Whether to use `tramp-ssh-controlmaster-options'.
Set it to nil, if you use Control* or Proxy* options in your ssh
configuration."
:group 'tramp
:version "24.4"
:version "28.1"
:type 'boolean)
(defvar tramp-ssh-controlmaster-options nil
@ -389,7 +389,14 @@ The string is used in `tramp-methods'.")
(regexp-opt
'("rcp" "remcp" "rsh" "telnet" "nc" "krlogin" "fcp"))
"\\'")
nil ,(user-login-name))))
nil ,(user-login-name)))
;; MS Windows Openssh client does not cooperate well with cmdproxy.
(when-let ((encoding-shell
(and (eq system-type 'windows-nt) (executable-find "powershell"))))
(add-to-list 'tramp-connection-properties
`(,(regexp-opt '("/sshx:" "/scpx:"))
"encoding-shell" ,encoding-shell))))
;;;###tramp-autoload
(defconst tramp-completion-function-alist-rsh
@ -484,6 +491,7 @@ shell from reading its init file."
'((tramp-login-prompt-regexp tramp-action-login)
(tramp-password-prompt-regexp tramp-action-password)
(tramp-wrong-passwd-regexp tramp-action-permission-denied)
(tramp-no-job-control-regexp tramp-action-permission-denied)
(shell-prompt-pattern tramp-action-succeed)
(tramp-shell-prompt-pattern tramp-action-succeed)
(tramp-yesno-prompt-regexp tramp-action-yesno)
@ -2584,12 +2592,9 @@ The method used must be an out-of-band method."
(save-restriction
(narrow-to-region beg-marker end-marker)
;; Check for "--dired" output.
(forward-line -2)
(when (looking-at-p "//SUBDIRED//")
(forward-line -1))
(when (looking-at "//DIRED//\\s-+")
(let ((beg (match-end 0))
(end (point-at-eol)))
(when (re-search-backward "^//DIRED//\\s-+\\(.+\\)$" nil 'noerror)
(let ((beg (match-beginning 1))
(end (match-end 0)))
;; Now read the numeric positions of file names.
(goto-char beg)
(while (< (point) end)
@ -2599,7 +2604,7 @@ The method used must be an out-of-band method."
;; End is followed by \n or by " -> ".
(put-text-property start end 'dired-filename t))))))
;; Remove trailing lines.
(goto-char (point-at-bol))
(beginning-of-line)
(while (looking-at "//")
(forward-line 1)
(delete-region (match-beginning 0) (point))))
@ -3751,12 +3756,17 @@ Fall back to normal file name handler if no Tramp handler exists."
;; Determine monitor name.
(unless (tramp-connection-property-p proc "gio-file-monitor")
(cond
;; We have seen this only on cygwin gio, which uses the
;; GPollFileMonitor.
;; We have seen this on cygwin gio and on emba. Let's make some assumptions.
((string-match
"Can't find module 'help' specified in GIO_USE_FILE_MONITOR" string)
(tramp-set-connection-property
proc "gio-file-monitor" 'GPollFileMonitor))
(cond
((getenv "EMACS_EMBA_CI")
(tramp-set-connection-property
proc "gio-file-monitor" 'GInotifyFileMonitor))
((eq system-type 'cygwin)
(tramp-set-connection-property
proc "gio-file-monitor" 'GPollFileMonitor))
(t (tramp-error proc 'file-error "Cannot determine gio monitor"))))
;; TODO: What happens, if several monitor names are reported?
((string-match "\
Supported arguments for GIO_USE_FILE_MONITOR environment variable:
@ -4855,8 +4865,6 @@ connection if a previous connection has died for some reason."
(setenv "HISTSIZE" "0"))))
(setenv "PROMPT_COMMAND")
(setenv "PS1" tramp-initial-end-of-output)
(unless (stringp tramp-encoding-shell)
(tramp-error vec 'file-error "`tramp-encoding-shell' not set"))
(let* ((current-host tramp-system-name)
(target-alist (tramp-compute-multi-hops vec))
;; We will apply `tramp-ssh-controlmaster-options'
@ -4868,17 +4876,23 @@ connection if a previous connection has died for some reason."
;; W32 systems.
(process-coding-system-alist nil)
(coding-system-for-read nil)
(extra-args (tramp-get-sh-extra-args tramp-encoding-shell))
(encoding-shell
(tramp-get-connection-property
vec "encoding-shell" tramp-encoding-shell))
(extra-args (tramp-get-sh-extra-args encoding-shell))
;; This must be done in order to avoid our file
;; name handler.
(p (let ((default-directory
(tramp-compat-temporary-file-directory)))
(unless (stringp encoding-shell)
(tramp-error
vec 'file-error "`tramp-encoding-shell' not set"))
(apply
#'start-process
(tramp-get-connection-name vec)
(tramp-get-connection-buffer vec)
(append
(list tramp-encoding-shell)
(list encoding-shell)
(and extra-args (split-string extra-args))
(and tramp-encoding-command-interactive
(list tramp-encoding-command-interactive)))))))
@ -4897,8 +4911,7 @@ connection if a previous connection has died for some reason."
;; Check whether process is alive.
(tramp-barf-if-no-shell-prompt
p 10
"Couldn't find local shell prompt for %s" tramp-encoding-shell)
p 10 "Couldn't find local shell prompt for %s" encoding-shell)
;; Now do all the connections as specified.
(while target-alist
@ -4972,12 +4985,8 @@ connection if a previous connection has died for some reason."
?h (or l-host "") ?u (or l-user "") ?p (or l-port "")
?c (format-spec options (format-spec-make ?t tmpfile))
?l (concat remote-shell " " extra-args " -i"))
;; Local shell could be a Windows COMSPEC. It
;; doesn't know the ";" syntax, but we must
;; exit always for `start-file-process'. It
;; could also be a restricted shell, which does
;; not allow "exec".
(when r-shell '("&&" "exit" "||" "exit")))
;; A restricted shell does not allow "exec".
(when r-shell '("; exit")))
" "))
;; Send the command.

View file

@ -354,12 +354,13 @@ Notes:
All these arguments can be overwritten by connection properties.
See Info node `(tramp) Predefined connection information'.
When using `su' or `sudo' the phrase \"open connection to a remote
host\" sounds strange, but it is used nevertheless, for consistency.
No connection is opened to a remote host, but `su' or `sudo' is
started on the local host. You should specify a remote host
`localhost' or the name of the local host. Another host name is
useful only in combination with `tramp-default-proxies-alist'.")
When using `su', `sudo' or `doas' the phrase \"open connection to
a remote host\" sounds strange, but it is used nevertheless, for
consistency. No connection is opened to a remote host, but `su',
`sudo' or `doas' is started on the local host. You should
specify a remote host `localhost' or the name of the local host.
Another host name is useful only in combination with
`tramp-default-proxies-alist'.")
(defcustom tramp-default-method
;; An external copy method seems to be preferred, because it performs
@ -690,6 +691,15 @@ The regexp should match at end of buffer."
:version "27.1"
:type 'regexp)
;; Powershell requires "ssh -t -t" for terminal emulation. If it
;; doesn't fit, there is an error.
(defcustom tramp-no-job-control-regexp
(regexp-quote "Thus no job control in this shell.")
"Regular expression matching powershell's job control message.
The regexp should match at end of buffer."
:version "28.1"
:type 'regexp)
(defcustom tramp-operation-not-permitted-regexp
(concat "\\(" "preserving times.*" "\\|" "set mode" "\\)" ":\\s-*"
(regexp-opt '("Operation not permitted") t))
@ -1808,6 +1818,7 @@ The outline level is equal to the verbosity of the Tramp message."
"Get the debug buffer for VEC."
(with-current-buffer (get-buffer-create (tramp-debug-buffer-name vec))
(when (bobp)
(set-buffer-file-coding-system 'utf-8)
(setq buffer-undo-list t)
;; Activate `outline-mode'. This runs `text-mode-hook' and
;; `outline-mode-hook'. We must prevent that local processes
@ -1848,7 +1859,7 @@ ARGUMENTS to actually emit the message (if applicable)."
(when (bobp)
(insert
(format
";; Emacs: %s Tramp: %s -*- mode: outline; -*-"
";; Emacs: %s Tramp: %s -*- mode: outline; coding: utf-8; -*-"
emacs-version tramp-version))
(when (>= tramp-verbose 10)
(let ((tramp-verbose 0))

View file

@ -182,7 +182,7 @@ If TYPE-ID is non-nil, then locate the schema for this TYPE-ID."
(while files
(setq type-ids (rng-possible-type-ids-using (car files) type-ids))
(setq files (cdr files)))
(rng-uniquify-equal (sort type-ids 'string<))))
(seq-uniq (sort type-ids 'string<))))
(defun rng-locate-schema-file-using (files)
"Locate a schema using the schema locating files FILES.

View file

@ -472,7 +472,7 @@ list is nullable and whose cdr is the normalized list."
(cons nullable
(if sorted
head
(rng-uniquify-eq (sort head 'rng-compare-ipattern))))))
(seq-uniq (sort head 'rng-compare-ipattern) #'eq)))))
(defun rng-compare-ipattern (p1 p2)
(< (rng--ipattern-index p1)

View file

@ -522,7 +522,7 @@ set `xmltok-dtd'. Returns the position of the end of the token."
(unless attribute-flag
(setcdr ns-prefixes (cons nil (cdr ns-prefixes))))))
(setq iter (cdr iter)))
(rng-uniquify-equal
(seq-uniq
(sort (apply #'append
(cons extra-strings
(mapcar (lambda (name)

View file

@ -36,26 +36,6 @@
(defconst rng-builtin-datatypes-uri (rng-make-datatypes-uri ""))
(defun rng-uniquify-eq (list)
"Destructively remove `eq' duplicates from LIST."
(and list
(let ((head list))
(while (cdr head)
(if (eq (car head) (cadr head))
(setcdr head (cddr head)))
(setq head (cdr head)))
list)))
(defun rng-uniquify-equal (list)
"Destructively remove `equal' duplicates from LIST."
(and list
(let ((head list))
(while (cdr head)
(if (equal (car head) (cadr head))
(setcdr head (cddr head)))
(setq head (cdr head)))
list)))
(defun rng-blank-p (str) (string-match "\\`[ \t\n\r]*\\'" str))
(defun rng-substq (new old list)
@ -104,6 +84,14 @@ LIST is not modified."
(define-error 'rng-error nil)
;; Obsolete.
(defun rng-uniquify-eq (list)
(declare (obsolete seq-uniq "28.1"))
(seq-uniq list #'eq))
(define-obsolete-function-alias 'rng-uniquify-equal #'seq-uniq "28.1")
(provide 'rng-util)
;;; rng-util.el ends here

View file

@ -1260,18 +1260,9 @@ If specific documentation can't be given, be generic."
(defun pcomplete-uniquify-list (l)
"Sort and remove multiples in L."
(setq l (sort l 'string-lessp))
(let ((m l))
(while m
(while (and (cdr m)
(string= (car m)
(cadr m)))
(setcdr m (cddr m)))
(setq m (cdr m))))
l)
(define-obsolete-function-alias
'pcomplete-uniqify-list
'pcomplete-uniquify-list "27.1")
(setq l (sort l #'string-lessp))
(seq-uniq l))
(define-obsolete-function-alias 'pcomplete-uniqify-list #'pcomplete-uniquify-list "27.1")
(defun pcomplete-process-result (cmd &rest args)
"Call CMD using `call-process' and return the simplest result."
@ -1320,18 +1311,6 @@ If specific documentation can't be given, be generic."
(pcomplete-read-hosts pcomplete-hosts-file 'pcomplete--host-name-cache
'pcomplete--host-name-cache-timestamp)))
;; create a set of aliases which allow completion functions to be not
;; quite so verbose
;;; jww (1999-10-20): are these a good idea?
;; (defalias 'pc-here 'pcomplete-here)
;; (defalias 'pc-test 'pcomplete-test)
;; (defalias 'pc-opt 'pcomplete-opt)
;; (defalias 'pc-match 'pcomplete-match)
;; (defalias 'pc-match-string 'pcomplete-match-string)
;; (defalias 'pc-match-beginning 'pcomplete-match-beginning)
;; (defalias 'pc-match-end 'pcomplete-match-end)
(provide 'pcomplete)
;;; pcomplete.el ends here

View file

@ -1,4 +1,4 @@
;;; pixel-scroll.el --- Scroll a line smoothly
;;; pixel-scroll.el --- Scroll a line smoothly -*- lexical-binding: t -*-
;; Copyright (C) 2017-2021 Free Software Foundation, Inc.
;; Author: Tak Kunihiro <tkk@misasa.okayama-u.ac.jp>
@ -124,7 +124,7 @@ This is an alternative of `scroll-up'. Scope moves downward."
(or arg (setq arg 1))
(if (pixel-scroll-in-rush-p)
(scroll-up arg)
(dotimes (ii arg) ; move scope downward
(dotimes (_ arg) ; move scope downward
(let ((amt (if pixel-resolution-fine-flag
(if (integerp pixel-resolution-fine-flag)
pixel-resolution-fine-flag
@ -145,7 +145,7 @@ This is and alternative of `scroll-down'. Scope moves upward."
(or arg (setq arg 1))
(if (pixel-scroll-in-rush-p)
(scroll-down arg)
(dotimes (ii arg)
(dotimes (_ arg)
(let ((amt (if pixel-resolution-fine-flag
(if (integerp pixel-resolution-fine-flag)
pixel-resolution-fine-flag
@ -244,7 +244,7 @@ that was scrolled."
(dst (* line height)) ; goal @25 @25 @92
(delta (- dst src))) ; pixels to be scrolled 25 17 4
(pixel--whistlestop-pixel-up (1- delta)) ; until one less @24 @24 @91
(dotimes (ii line)
(dotimes (_ line)
;; On horizontal scrolling, move cursor.
(when (> (window-hscroll) 0)
(vertical-motion 1))

View file

@ -72,9 +72,6 @@
;;; Code:
(defconst bubbles-version "0.5" "Version number of bubbles.el.")
(make-obsolete-variable 'bubbles-version nil "28.1")
(require 'gamegrid)
;; User options
@ -1405,6 +1402,11 @@ Return t if new char is non-empty."
(forward-char 1)))
(put-text-property (point-min) (point-max) 'pointer 'arrow)))))
;; Obsolete.
(defconst bubbles-version "0.5" "Version number of bubbles.el.")
(make-obsolete-variable 'bubbles-version 'emacs-version "28.1")
(provide 'bubbles)
;;; bubbles.el ends here

View file

@ -476,8 +476,8 @@ and exists only for compatibility reasons."
(if current-prefix-arg " or add" "")
": ")
(mapcar
#'(lambda (langelem)
(cons (format "%s" (car langelem)) nil))
(lambda (langelem)
(cons (format "%s" (car langelem)) nil))
(get 'c-offsets-alist 'c-stylevar-fallback))
nil (not current-prefix-arg)
;; initial contents tries to be the last element

View file

@ -1,4 +1,4 @@
;;; cfengine.el --- mode for editing Cfengine files
;;; cfengine.el --- mode for editing Cfengine files -*- lexical-binding: t; -*-
;; Copyright (C) 2001-2021 Free Software Foundation, Inc.
@ -1440,7 +1440,7 @@ to the action header."
(cfengine3-mode)
(cfengine2-mode)))
(defalias 'cfengine-mode 'cfengine3-mode)
(defalias 'cfengine-mode #'cfengine3-mode)
(provide 'cfengine3)
(provide 'cfengine)

View file

@ -3608,7 +3608,8 @@ the sections using `cperl-pod-head-face', `cperl-pod-face',
;; 1+6+2+1+1+6+1+1+1=20 extra () before this:
"\\|"
"\\\\\\(['`\"($]\\)") ; BACKWACKED something-hairy
""))))
"")))
warning-message)
(unwind-protect
(progn
(save-excursion
@ -3671,7 +3672,7 @@ the sections using `cperl-pod-head-face', `cperl-pod-face',
(looking-at "\\(cut\\|end\\)\\>"))
(if (or (nth 3 state) (nth 4 state) ignore-max)
nil ; Doing a chunk only
(message "=cut is not preceded by a POD section")
(setq warning-message "=cut is not preceded by a POD section")
(or (car err-l) (setcar err-l (point))))
(beginning-of-line)
@ -3686,7 +3687,7 @@ the sections using `cperl-pod-head-face', `cperl-pod-face',
(goto-char b)
(if (re-search-forward "\n=\\(cut\\|end\\)\\>" stop-point 'toend)
(progn
(message "=cut is not preceded by an empty line")
(setq warning-message "=cut is not preceded by an empty line")
(setq b1 t)
(or (car err-l) (setcar err-l b))))))
(beginning-of-line 2) ; An empty line after =cut is not POD!
@ -3829,7 +3830,8 @@ the sections using `cperl-pod-head-face', `cperl-pod-face',
(progn ; Pretend we matched at the end
(goto-char (point-max))
(re-search-forward "\\'")
(message "End of here-document `%s' not found." tag)
(setq warning-message
(format "End of here-document `%s' not found." tag))
(or (car err-l) (setcar err-l b))))
(if cperl-pod-here-fontify
(progn
@ -3906,7 +3908,8 @@ the sections using `cperl-pod-head-face', `cperl-pod-face',
'face font-lock-string-face)
(cperl-commentify (point) (+ (point) 2) nil)
(cperl-put-do-not-fontify (point) (+ (point) 2) t))
(message "End of format `%s' not found." name)
(setq warning-message
(format "End of format `%s' not found." name))
(or (car err-l) (setcar err-l b)))
(forward-line)
(if (> (point) max)
@ -4426,8 +4429,9 @@ the sections using `cperl-pod-head-face', `cperl-pod-face',
REx-subgr-end argument) ; continue
(setq argument nil)))
(and argument
(message "Couldn't find end of charclass in a REx, pos=%s"
REx-subgr-start))
(setq warning-message
(format "Couldn't find end of charclass in a REx, pos=%s"
REx-subgr-start)))
(setq argument (1- (point)))
(goto-char REx-subgr-end)
(cperl-highlight-charclass
@ -4483,7 +4487,8 @@ the sections using `cperl-pod-head-face', `cperl-pod-face',
(setq qtag "Can't find })")))
(progn
(goto-char (1- e))
(message "%s" qtag))
(setq warning-message
(format "%s" qtag)))
(cperl-postpone-fontification
(1- tag) (1- (point))
'face font-lock-variable-name-face)
@ -4512,9 +4517,9 @@ the sections using `cperl-pod-head-face', `cperl-pod-face',
;; (1- e) 'toend)
(search-forward ")" (1- e) 'toend)
;;)
(message
"Couldn't find end of (?#...)-comment in a REx, pos=%s"
REx-subgr-start))))
(setq warning-message
(format "Couldn't find end of (?#...)-comment in a REx, pos=%s"
REx-subgr-start)))))
(if (>= (point) e)
(goto-char (1- e)))
(cond
@ -4592,8 +4597,8 @@ the sections using `cperl-pod-head-face', `cperl-pod-face',
(if (> (point) stop-point)
(progn
(if end
(message "Garbage after __END__/__DATA__ ignored")
(message "Unbalanced syntax found while scanning")
(setq warning-message "Garbage after __END__/__DATA__ ignored")
(setq warning-message "Unbalanced syntax found while scanning")
(or (car err-l) (setcar err-l b)))
(goto-char stop-point))))
(setq cperl-syntax-state (cons state-point state)
@ -4612,6 +4617,7 @@ the sections using `cperl-pod-head-face', `cperl-pod-face',
;; cperl-mode-syntax-table.
;; (set-syntax-table cperl-mode-syntax-table)
)
(when warning-message (message warning-message))
(list (car err-l) overshoot)))
(defun cperl-find-pods-heres-region (min max)

View file

@ -1,4 +1,4 @@
;;; dcl-mode.el --- major mode for editing DCL command files
;;; dcl-mode.el --- major mode for editing DCL command files -*- lexical-binding: t; -*-
;; Copyright (C) 1997, 2001-2021 Free Software Foundation, Inc.
@ -23,9 +23,11 @@
;;; Commentary:
;; DCL mode is a package for editing DCL command files. It helps you
;; indent lines, add leading `$' and trailing `-', move around in the
;; code and insert lexical functions.
;; DCL mode is a package for editing
;; [DCL](https://en.wikipedia.org/wiki/DIGITAL_Command_Language)
;; command files.
;; It helps you indent lines, add leading `$' and trailing `-', move
;; around in the code and insert lexical functions.
;;
;; Type `C-h m' when you are editing a .COM file to get more
;; information about this mode.
@ -270,22 +272,22 @@ See `imenu-generic-expression' for details."
(defvar dcl-mode-map
(let ((map (make-sparse-keymap)))
(define-key map "\e\n" 'dcl-split-line)
(define-key map "\e\t" 'tempo-complete-tag)
(define-key map "\e^" 'dcl-delete-indentation)
(define-key map "\em" 'dcl-back-to-indentation)
(define-key map "\ee" 'dcl-forward-command)
(define-key map "\ea" 'dcl-backward-command)
(define-key map "\e\C-q" 'dcl-indent-command)
(define-key map "\t" 'dcl-tab)
(define-key map ":" 'dcl-electric-character)
(define-key map "F" 'dcl-electric-character)
(define-key map "f" 'dcl-electric-character)
(define-key map "E" 'dcl-electric-character)
(define-key map "e" 'dcl-electric-character)
(define-key map "\C-c\C-o" 'dcl-set-option)
(define-key map "\C-c\C-f" 'tempo-forward-mark)
(define-key map "\C-c\C-b" 'tempo-backward-mark)
(define-key map "\e\n" #'dcl-split-line)
(define-key map "\e\t" #'tempo-complete-tag)
(define-key map "\e^" #'dcl-delete-indentation)
(define-key map "\em" #'dcl-back-to-indentation)
(define-key map "\ee" #'dcl-forward-command)
(define-key map "\ea" #'dcl-backward-command)
(define-key map "\e\C-q" #'dcl-indent-command)
(define-key map "\t" #'dcl-tab)
(define-key map ":" #'dcl-electric-character)
(define-key map "F" #'dcl-electric-character)
(define-key map "f" #'dcl-electric-character)
(define-key map "E" #'dcl-electric-character)
(define-key map "e" #'dcl-electric-character)
(define-key map "\C-c\C-o" #'dcl-set-option)
(define-key map "\C-c\C-f" #'tempo-forward-mark)
(define-key map "\C-c\C-b" #'tempo-backward-mark)
map)
"Keymap used in DCL-mode buffers.")
@ -533,7 +535,7 @@ $
There is some minimal font-lock support (see vars
`dcl-font-lock-defaults' and `dcl-font-lock-keywords')."
(setq-local indent-line-function 'dcl-indent-line)
(setq-local indent-line-function #'dcl-indent-line)
(setq-local comment-start "!")
(setq-local comment-end "")
(setq-local comment-multi-line nil)
@ -547,7 +549,7 @@ There is some minimal font-lock support (see vars
(setq imenu-generic-expression dcl-imenu-generic-expression)
(setq imenu-case-fold-search t)
(setq imenu-create-index-function 'dcl-imenu-create-index-function)
(setq imenu-create-index-function #'dcl-imenu-create-index-function)
(make-local-variable 'dcl-comment-line-regexp)
(make-local-variable 'dcl-block-begin-regexp)
@ -1391,7 +1393,7 @@ regexps in `dcl-electric-reindent-regexps'."
(let ((case-fold-search t))
;; There must be a better way than (memq t ...).
;; (apply 'or ...) didn't work
(if (memq t (mapcar 'dcl-was-looking-at dcl-electric-reindent-regexps))
(if (memq t (mapcar #'dcl-was-looking-at dcl-electric-reindent-regexps))
(dcl-indent-line)))))
@ -1567,7 +1569,7 @@ Must return a string."
((fboundp action)
(funcall action option-assoc))
((eq action 'toggle)
(not (eval option)))
(not (symbol-value option)))
((eq action 'curval)
(cond ((or (stringp (symbol-value option))
(numberp (symbol-value option)))
@ -1735,7 +1737,7 @@ Set or update the value of VAR in the current buffers
(setq continue nil)
(beginning-of-line)
(insert (concat prefix-string (symbol-name var) ": "
(prin1-to-string (eval var)) " "
(prin1-to-string (symbol-value var)) " "
suffix-string "\n")))
;; Is it the variable we are looking for?
(if (eq var found-var)
@ -1748,7 +1750,7 @@ Set or update the value of VAR in the current buffers
(delete-region (point) (progn (read (current-buffer))
(point)))
(insert " ")
(prin1 (eval var) (current-buffer))
(prin1 (symbol-value var) (current-buffer))
(skip-chars-backward "\n")
(skip-chars-forward " \t")
(or (if suffix (looking-at suffix) (eolp))
@ -1781,7 +1783,7 @@ Set or update the value of VAR in the current buffers
(concat " " comment-end))))))
(insert (concat def-prefix "Local variables:" def-suffix "\n"))
(insert (concat def-prefix (symbol-name var) ": "
(prin1-to-string (eval var)) def-suffix "\n"))
(prin1-to-string (symbol-value var)) def-suffix "\n"))
(insert (concat def-prefix "end:" def-suffix)))
)))
@ -1815,7 +1817,8 @@ still be present in the `Local Variables:' section with its old value."
(option-name (symbol-name option)))
(if (and (string-equal "dcl-"
(substring option-name 0 4))
(not (equal (default-value option) (eval option))))
(not (equal (default-value option)
(symbol-value option))))
(dcl-save-local-variable option "$! "))))
dcl-option-alist))

View file

@ -271,13 +271,13 @@
(let ((table (make-vector 256 'error)))
;; upper & lower case letters:
(mapc
#'(lambda (char)
(aset table char 'non-terminal))
(lambda (char)
(aset table char 'non-terminal))
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz")
;; printable characters:
(mapc
#'(lambda (char)
(aset table char 'character))
(lambda (char)
(aset table char 'character))
"!#$&()*+-.0123456789=?@[\\]^_`~")
;; Override space characters:
(aset table ?\n 'space) ; [NL] linefeed

View file

@ -4398,8 +4398,8 @@ end
(defun ebnf-format-float (&rest floats)
(mapconcat
#'(lambda (float)
(format ebnf-format-float float))
(lambda (float)
(format ebnf-format-float float))
floats
" "))
@ -4959,8 +4959,8 @@ killed after process termination."
(defvar ebnf-map-name
(let ((map (make-vector 256 ?\_)))
(mapc #'(lambda (char)
(aset map char char))
(mapc (lambda (char)
(aset map char char))
(concat "#$%&+-.0123456789=?@~"
"ABCDEFGHIJKLMNOPQRSTUVWXYZ"
"abcdefghijklmnopqrstuvwxyz"))

View file

@ -1,4 +1,4 @@
;;; executable.el --- base functionality for executable interpreter scripts
;;; executable.el --- base functionality for executable interpreter scripts -*- lexical-binding: t -*-
;; Copyright (C) 1994-1996, 2000-2021 Free Software Foundation, Inc.

Some files were not shown because too many files have changed in this diff Show more