Alan Third [Fri, 2 Apr 2021 17:06:59 +0000 (18:06 +0100)]
Fix install with NS app bundle
* configure.ac: Set up CFLAGS and LDFLAGS to find a Homebrew
installation of libgccjit.
* Makefile.in (ELN_DESTDIR): Set to the app bundle resource dir when
required.
(install-eln): macOS install doesn't support the -D flag, so make the
directories separately.
Michael Albinus [Mon, 5 Apr 2021 17:37:30 +0000 (19:37 +0200)]
Use powershell for Tramp on MS Windows
* lisp/net/tramp-sh.el (tramp-use-ssh-controlmaster-options):
Nil on MS Windows.
(tramp-connection-properties): Add "encoding-shell".
(tramp-maybe-open-connection): Use it. Change exit handling.
(tramp-actions-before-shell): Add `tramp-no-job-control-regexp'.
* lisp/net/tramp.el (tramp-methods): Adapt docstring.
(tramp-no-job-control-regexp): New defcustom.
(tramp-get-debug-buffer): Set coding system.
Do not search the global keymap in project--keymap-prompt
* lisp/progmodes/project.el: (project--keymap-prompt) Pass
project--keymap-prompt as a list to where-is-internal so that the
global keymap is not searched at all (bug#47501).
Stefan Kangas [Mon, 5 Apr 2021 12:17:02 +0000 (14:17 +0200)]
Obsolete local list functions in shadowfile.el
* lisp/shadowfile.el (shadow-union): Make obsolete in favour of
cl-union. Update callers.
(shadow-find): Make into obsolete function alias for seq-find.
Update callers.
(cl-lib): Remove unnecessary require.
Stefan Kangas [Sun, 4 Apr 2021 23:38:48 +0000 (01:38 +0200)]
Make ediff-copy-list alias obsolete
* lisp/vc/ediff-mult.el (ediff-intersect-directories)
(ediff-get-directory-files-under-revision): Don't use above
obsolete alias.
* lisp/vc/ediff-util.el (ediff-copy-list): Make alias obsolete.
Regenerate semantic grammars if the generating code changes
* admin/grammars/Makefile.in (emacs): Set load-prefer-newer.
(grammar_bovine, grammar_wisent): New variables.
(${bovinedir}/%-by.el, ${bovinedir}/scm-by.el)
(${cedetdir}/semantic/%-wy.el, ${wisentdir}/%-wy.el)
(${wisentdir}/javat-wy.el, ${cedetdir}/srecode/srt-wy.el):
Depend on the source file for the generating function.
* lisp/cedet/semantic/bovine/grammar.el (bovine--make-parser-1):
* lisp/cedet/semantic/wisent/grammar.el (wisent--make-parser-1):
Force generation of the output file. The previous "is the output
newer than the input" failed to account for changes in the
generation code itself. Force so we can let make figure it out.
Andrea Corallo [Sun, 4 Apr 2021 15:10:08 +0000 (17:10 +0200)]
Output native compiled preloaded files into the 'preloaded' subfolder
* src/comp.c (fixup_eln_load_path): Account the fact that the
file can be dumped in the 'preloaded' subfolder.
* lisp/loadup.el: Likewise.
* src/lread.c (maybe_swap_for_eln1): New function.
(maybe_swap_for_eln): Handle 'preloaded' subfolder.
* src/Makefile.in (LISP_PRELOADED): Export preloaded files.
Make maintainer-clean delete generated files, as per standards
These are generated files that were once kept in the repository.
When they were removed from the repository, as a half-way measure
they were only deleted by "extraclean", but this was never
necessary and was not a proper use of that rule.
* admin/charsets/Makefile.in (gen-clean): New phony target.
(maintainer-clean): Delete generated files.
* admin/grammars/Makefile.in (gen-clean): New phony target.
(maintainer-clean): Delete generated files.
* admin/unidata/Makefile.in (gen-clean): New phony target.
(maintainer-clean): Delete generated files.
* leim/Makefile.in (gen-clean): New phony target.
(maintainer-clean): Delete generated files.
* GNUmakefile: Doc fix.
Alan Third [Sun, 4 Apr 2021 13:08:48 +0000 (14:08 +0100)]
Work around librsvg bug (bug#47074)
Librsvg <= 2.40 has restrictions on how certain numbers can be run
together in path elements which do not match the SVG spec.
* etc/images/checkbox-mixed.svg:
* etc/images/checked.svg:
* etc/images/radio-checked.svg:
* etc/images/unchecked.svg: Separate problem numbers.
* etc/images/radio-mixed.svg: Separate problem numbers and color and
font-weight data.
Eli Zaretskii [Sun, 4 Apr 2021 11:53:20 +0000 (14:53 +0300)]
Fix MS-Windows build
* src/image.c: (init_svg_functions) [WINDOWSNT]: Define and load
rsvg_handle_set_stylesheet from the DLL for librsvg > 2.48.
(lookup_image): Use xmalloc.
Stefan Kangas [Sun, 4 Apr 2021 11:23:40 +0000 (13:23 +0200)]
Use lexical-binding in hilit-chg.el
* lisp/hilit-chg.el: Use lexical-binding. Remove redundant :group
args. Doc and formatting fixes.
(highlight-changes-mode, highlight-changes-visible-mode):
Use keyword arguments.
(hilit-chg-display-changes, highlight-changes-rotate-faces):
Quote function symbols as such.
(hilit-x, hilit-y, hilit-e): Define variables on top-level to
silence the byte-compiler.
(highlight-markup-buffers): Improve message format.
Eli Zaretskii [Sun, 4 Apr 2021 07:10:00 +0000 (10:10 +0300)]
Fix unexec compilation
* src/pdumper.c (thaw_hash_tables): Now conditioned by
HAVE_PDUMPER.
(init_pdumper_once): No-op unless HAVE_PDUMPER. Reported by
Nikolay Kudryavtsev <nikolay.kudryavtsev@gmail.com>.
Alan Third [Sat, 3 Apr 2021 22:23:54 +0000 (23:23 +0100)]
Make new SVG widgets match character height (bug#47074)
* etc/images/checkbox-mixed.svg:
* etc/images/checked.svg:
* etc/images/radio-checked.svg:
* etc/images/radio-mixed.svg:
* etc/images/radio.svg:
* etc/images/unchecked.svg: Use viewBox and set height to 1em.
Alan Third [Sun, 28 Mar 2021 16:52:57 +0000 (17:52 +0100)]
Set CSS for SVG files
* src/dispextern.h (struct image): Add font details required for the CSS.
* src/image.c (free_image): Free the font family string.
(search_image_cache):
(uncache_image): Make image caching understand the font details.
(lookup_image): Handle the font details when generating the image and
looking up the cache.
(svg_css_length_to_pixels): Handle 'em' when we know the font size.
(svg_load_image): Generate the CSS and apply it to the SVG.
(enum svg_keyword_index):
(svg_format):
(syms_of_image): Add ':css' attribute.
* doc/lispref/display.texi (SVG Images): Add details of new svg image
attributes.
Stefan Kangas [Sat, 3 Apr 2021 19:53:06 +0000 (21:53 +0200)]
Add SVG icons for customize buffers
* etc/images/checkbox-mixed.svg:
* etc/images/checked.svg:
* etc/images/down.svg:
* etc/images/left.svg:
* etc/images/radio-checked.svg:
* etc/images/radio-mixed.svg:
* etc/images/radio.svg:
* etc/images/right.svg:
* etc/images/unchecked.svg:
* etc/images/up.svg: New files from the Adwaita Icon Theme (made by
the GNOME project). The background color was changed from gray to
none to use the same colors as the current face instead. (Bug#47074)
* etc/images/README: Add license information for the above new files.
* lisp/wid-edit.el (widget-image-conversion): Prefer SVG if it exists.
(radio-button): Rename radio buttons to "radio-checked" and
"radio". These files did not exist before.
Stefan Kangas [Fri, 2 Apr 2021 23:21:32 +0000 (01:21 +0200)]
Replace two functions with seq-subseq
* lisp/emacs-lisp/seq.el (seq-subseq): Add autoload cookie.
* lisp/eshell/esh-util.el (eshell-sublist): Redefine using seq-subseq
and make obsolete. Update callers.
* lisp/wid-edit.el (widget-sublist): Redefine as obsolete function
alias for seq-subseq. Update callers.
Stefan Monnier [Fri, 2 Apr 2021 23:51:41 +0000 (19:51 -0400)]
* lisp/progmodes/simula.el: Use lexical-binding
(simula-tab-always-indent): Mark as obsolete.
(simula-mode-map): Don't bind TAB.
(simula-indent-command): Mark as obsolete.
(hilit-set-mode-patterns): Remove obsolete support for hilit19.
(simula-mode-syntax-table): Move initialization code into the declaration.
Stefan Kangas [Fri, 2 Apr 2021 22:50:55 +0000 (00:50 +0200)]
Use lexical-binding in recentf.el
* lisp/recentf.el: Use lexical-binding. Doc fix.
(recentf-save-file): Strength reduce 'eval' to 'symbol-value'.
(recentf-trunc-list): Make into obsolete function alias for
'seq-take'. Update callers.
(recentf-show-file-shortcuts-flag): Doc fix.
(recentf-menu-elements, recentf-make-menu-items)
(recentf-make-menu-item, recentf-dialog-mode-map)
(recentf-dialog, recentf-open-files-item)
(recentf-open-files-items, recentf-open-files)
(recentf-load-list): Quote function symbols as such.
(recentf-relative-filter, recentf-file-name-nondir): Remove
redundant #' before lambda.
Stefan Kangas [Fri, 2 Apr 2021 17:32:32 +0000 (19:32 +0200)]
Remove references to very old versions of Emacs from eintr
* doc/lispintro/emacs-lisp-intro.texi (Making Errors)
(Void Function, Void Variable, Wrong Type of Argument, debug)
(debug-on-entry): Remove commented out references to Emacs 20 or
earlier.
* doc/lispintro/emacs-lisp-intro.texi (what-line)
(print-elements-of-list, debug, X Axis Tic Marks): Don't call version
22 or earlier a "recent" version of Emacs.
(Building and Installing, Installation with make)
(Installation by Hand, Loading @RefTeX{}): Delete sections.
(Entering @RefTeX{} Mode): Merge into its parent.
(AUCTeX): Point to GNU ELPA for installation.
(Problems and Work-Arounds): Remove XEmacs-specific item.
Juri Linkov [Fri, 2 Apr 2021 08:25:05 +0000 (11:25 +0300)]
* lisp/progmodes/xref.el: Change xref-file-name-display and xref-match face.
* lisp/progmodes/xref.el (xref-file-name-display): Change the default value
to 'project-relative' (bug#47012).
(xref-match)<face>: Inherit from 'match'.
* lisp/emacs-lisp/comp.el (comp-debug): Update docstring and
move default on Windows systems from 0 to 1.
* src/comp.c (Fcomp__compile_ctxt_to_file): Tweak debug
levels.
Andrea Corallo [Wed, 31 Mar 2021 12:49:36 +0000 (14:49 +0200)]
Do not defer compilation when bytecode is explicitly requested (bug#46617)
* src/comp.c (maybe_defer_native_compilation): Check if the file
is registered in 'V_comp_no_native_file_h'.
(syms_of_comp): 'V_comp_no_native_file_h' new global.
* src/lread.c (maybe_swap_for_eln): Register files in
'V_comp_no_native_file_h'.
* lisp/faces.el (tty-run-terminal-initialization): Do not
explicitly load .elc file to not exclude .eln being loaded in
place.