Commit graph

151410 commits

Author SHA1 Message Date
Stefan Kangas
49a6b26cf7 Don't hardcode "Commentary" section in checkdoc
* lisp/emacs-lisp/checkdoc.el
(checkdoc-commentary-header-string): New defvar.
(checkdoc-file-comments-engine): Insert value of above new
variable instead of hardcoding what is inserted for the
"Commentary" section.
2021-11-05 22:31:17 +01:00
Eli Zaretskii
c5adec394a Use correct compiler options for building with libwebp
* src/Makefile.in (WEBP_CFLAGS): Define.
(EMACS_CFLAGS): Use it.  (Bug#51611)
2021-11-05 22:20:04 +02:00
Michael Albinus
a08a9a9aea Improve `file-has-changed-p'
* doc/lispref/files.texi (File Attributes): Be precise when
filename does not exist in `file-has-changed-p'.

* lisp/files.el (file-has-changed-p): Suppress remote file caches.
Handle the case FILE does not exists.
2021-11-05 20:46:35 +01:00
Paul Eggert
133026c362 rsvg_handle_get_dimensions is deprecated in 2.52.0
In Bug#44655#32 (2020-11-19) it was reported that
rsvg_handle_get_dimensions was not deprecated.  However, it became
deprecated in librsvg 2.52.0 (2021-09-15), and because of this Emacs
builds with --enable-gcc-warnings fail in Fedora 35 (2025-11-02)
with the diagnostic “‘rsvg_handle_get_dimensions’ is deprecated:
Use 'rsvg_handle_get_intrinsic_size_in_pixels' instead
[-Werror=deprecated-declarations]”.
* src/image.c (rsvg_handle_get_dimensions): Define as a DLL
function only if < librsvg 2.46.0, since it’s not used
in 2.46.0 or later.
(svg_load_image): Use rsvg_handle_get_dimensions only if librsvg <
2.46.0, since it isn’t needed if >= 2.46.0.
2021-11-05 11:53:17 -07:00
Lars Ingebrigtsen
c1865384d7 Allow 'pp' to limit the line widths
* lisp/emacs-lisp/pp.el (pp-max-width, pp-use-max-width): New user
options (bug#11934).
(pp-to-string): Use it.
(pp--insert-lisp): Tweak whether to use standard-output or not.
(pp--max-width): New function.
2021-11-05 15:27:08 +01:00
Eli Zaretskii
c19aa6aeb2 ; Fix documentation of a recent change
* doc/emacs/misc.texi (emacsclient Options): No need to use @dfn
more than once for the same term.

* etc/NEWS (emacsclient): Don't use passive voice.
2021-11-05 15:51:08 +02:00
Eli Zaretskii
c659182d55 ; Fix doc strings of a recent commit
* lisp/image-dired.el (image-dired-gallery-image-root-url)
(image-dired-gallery-thumb-image-root-url)
(image-dired-gallery-dir): Don't use "path" for file names and
URLs.
2021-11-05 15:47:00 +02:00
Eli Zaretskii
b7bbf6f28f Enhance 'highlight-confusing-reorderings'
* lisp/international/mule-cmds.el (confusingly-reordered): Make
sure the face looks distinct on displays that don't support the
"wavy" underline attribute.
(highlight-confusing-reorderings): Add a tooltip explaining why
the text was highlighted.  Allow to remove the highlighting by
invoking the command with a prefix argument.
2021-11-05 15:40:37 +02:00
Carlos Pita
a0973fa7a6 Match dummy output even with non-default rl config
* lisp/progmodes/python.el
(python-shell-completion-native-get-completions): Match dummy output
even when readline is configured in non-default ways.  (Bug#51010)
2021-11-05 08:02:31 +01:00
Tino Calancha
f80d701ec8 Fix (un)compressing directories in Tramp
* lisp/net/tramp-sh.el (tramp-sh-handle-dired-compress-file):
Check whether the file is a directory (bug#50581).
2021-11-05 04:35:08 +01:00
Matthias Meulien
f0768d3145 Fix 'diff-font-lock-prettify' breaking display of outline headers
* lisp/vc/diff-mode.el (diff-outline-level): Make hunk headers be
at level 2.
(diff-mode): Use prettified line as outline header.
(diff--outline-level): New function (bug#51016).

* lisp/vc/vc.el (vc-diff-internal): Fix diff mode being set before
content inserted (bug#51016).
2021-11-05 03:50:01 +01:00
Daniel Martín
48af19c1f0 Fix buffer overflow in ns_compute_glyph_string_overhangs
* src/nsterm.m (ns_compute_glyph_string_overhangs): When the first
glyph of a glyph string is a composite glyph, `s->nchars' is 0, so
"s->char2b + s->nchars - 1" dereferenced a position before buffer
`s->char2b'.  Instead, rewrite part of the function to distinguish
between character glyphs and composite glyphs.  For character glyphs,
calculate the font metrics using the `text_extents' function, passing
it the entire glyph string; for composite glyphs, call
`composition_gstring_width'. (Bug#51105)
2021-11-05 03:39:19 +01:00
Stefan Kangas
3601e23679 ; * doc/man/emacsclient.1: Bump date after last change. 2021-11-05 01:10:32 +01:00
Stefan Kangas
e29e2f5776 image-dired: Delete commented out code
* lisp/image-dired.el: Delete broken and commented out speedbar code;
it is not clear what, if anything, it is supposed to do.  If anyone
wants to work on this, they are better off starting from scratch.
2021-11-05 01:10:11 +01:00
Stefan Kangas
b5420c46c2 image-dired: New defgroup and section for gallery support
* lisp/image-dired.el: Add new section header "Gallery support" to
improve file organization.  Move relevant TODO:s there.

(image-dired-gallery): New defgroup.
(image-dired-gallery-dir, image-dired-gallery-image-root-url)
(image-dired-gallery-thumb-image-root-url)
(image-dired-gallery-hidden-tags): Add options to above new defgroup.

(image-dired-add-to-file-comment-list)
(image-dired-create-gallery-lists)
(image-dired-add-to-tag-file-lists, image-dired-hidden-p): Rename to...
(image-dired--add-to-file-comment-list)
(image-dired--create-gallery-lists)
(image-dired--add-to-tag-file-lists, image-dired--hidden-p):
...this, to make it more clear that these functions are internal.
Make the old names obsolete function aliases.
(image-dired-add-to-tag-file-list): Make unused function obsolete.
2021-11-05 01:09:52 +01:00
Gregory Heytings
2bcc2160c9 New emacsclient option to either create or reuse an existing frame.
* doc/emacs/misc.texi (emacsclient Options): Document the new option.

* doc/man/emacsclient.1: Mention the new option (bug#51374).
* etc/NEWS: Mention the new option.

* lib-src/emacsclient.c (reuse_frame): New variable.
(longopts): New option.
(decode_options): Decode the new option.
(print_help_and_exit): Document the new option.
(main): Use the new option.
2021-11-05 00:14:30 +01:00
Lars Ingebrigtsen
a78ac0c5df Try harder to keep lines short in pp-emacs-lisp-code
* lisp/emacs-lisp/pp.el (pp--insert): Try harder to keep lines short.
2021-11-04 23:32:51 +01:00
Lars Ingebrigtsen
4cf7af5a2a Tweak multi-line expressions in pp--format-function
* lisp/emacs-lisp/pp.el (pp--format-function): Fix up multi-line
expressions.
2021-11-04 23:16:47 +01:00
Lars Ingebrigtsen
cb9f3e1158 Fix up some list folding in pp-emacs-lisp-code
* lisp/emacs-lisp/pp.el (pp--insert-lisp, pp--format-list)
(pp--insert): Touch up list folding.
2021-11-04 22:31:15 +01:00
Lars Ingebrigtsen
fb1267d90a Indent lambdas/closures better
* lisp/emacs-lisp/pp.el (pp--format-function): Indent lambdas and
closures better.
2021-11-04 22:07:48 +01:00
Lars Ingebrigtsen
292f50d27b Make lambda/closure help buttons format as Emacs Lisp
* lisp/help.el (help--describe-command): Format lambda/closures as
Emacs Lisp.

* lisp/emacs-lisp/pp.el (pp-display-expression): Allow formatting
as Emacs Lisp.
2021-11-04 21:52:56 +01:00
Lars Ingebrigtsen
6cf86ed4c1 Add new basic Emacs Lisp code formatting function
* lisp/emacs-lisp/pp.el (pp-emacs-lisp-code): New interface function.
(pp): Mention it.
(pp--insert-lisp, pp--format-vector, pp--format-list)
(pp--format-function, pp--format-definition, pp--insert-binding)
(pp--insert, pp--indent-buffer): New helper functions.
2021-11-04 21:44:53 +01:00
Eli Zaretskii
4c6afb527b ; Comment on the code in a recent commit
* lisp/international/mule-cmds.el
(highlight-confusing-reorderings): Comment on the strategy of
highlighting suspicious text.
2021-11-04 21:46:07 +02:00
Stephen Berman
0a7ccdaeef Fix allout point movement problem
* lisp/allout.el (allout-next-visible-heading): Ensure that we
move to the next physical line (bug#51530).
2021-11-04 19:39:16 +01:00
Stefan Kangas
99a1e87067 ; Fix typo
* lisp/image-dired.el (image-dired-display-current-image-full):
Fix typo.
2021-11-04 19:36:45 +01:00
Eli Zaretskii
b96855310e Better detection of potentially malicious bidi text
* src/bidi.c (bidi_find_first_overridden): Extend to detect more
subtle effects of directional formatting controls, to include
embeddings and isolates.
* src/xdisp.c (Fbidi_find_overridden_directionality): Accept an
additional argument BASE-DIR to specify the base direction of the
paragraphs.

* lisp/international/mule-cmds.el (confusingly-reordered): New
face.
(reorder-starters, reorder-enders): New variables.
(highlight-confusing-reorderings): New command to detect and
highlight suspiciously reordered text.

* test/src/xdisp-tests.el
(xdisp-tests--find-directional-overrides): New test.

* etc/NEWS: Announce the new and improved features.
* etc/tutorials/TUTORIAL.he: Fix embeddings with incorrect
directions.
2021-11-04 20:33:26 +02:00
Lars Ingebrigtsen
f875ed53f6 font-lock-type-face doc string improvement
* lisp/font-lock.el (font-lock-type-face): Fix grammar in doc
string (bug#51574).
2021-11-04 19:28:06 +01:00
Lars Ingebrigtsen
57d54bb49d Improve defface error message
* lisp/cus-face.el (custom-declare-face): Improve the error
message when there's a missing doc string (bug#51576).
2021-11-04 19:23:07 +01:00
Lars Ingebrigtsen
bf47bc8b94 Don't have M-x term' call term-mode' twice
* lisp/term.el (term): Don't call `term-mode' twice (bug#51589).
2021-11-04 19:02:23 +01:00
Lars Ingebrigtsen
824a139434 Document that `unspecified' isn't valid in defface
* doc/lispref/display.texi (Face Attributes): Mention that
unspecified isn't valid in defface (bug#51595).
2021-11-04 18:58:21 +01:00
Gregory Heytings
f565e58166 Reset mailcap entries only when mailcap files are read again
* lisp/net/mailcap.el (mailcap-parse-mailcaps): Move the clear and
load defaults operations at their appropriate place.  Fixes bug#51600.
2021-11-04 18:48:35 +01:00
Lars Ingebrigtsen
1def47fd98 Fix return value of python-nav-end-of-defun
* lisp/progmodes/python.el (python-nav-end-of-defun): Return
non-nil if in a def/class, as the doc string implies (bug#51601).
2021-11-04 18:47:04 +01:00
Lars Ingebrigtsen
1c3e45396e Rename button-buttonize to buttonize
* lisp/help.el (help--describe-command):
* lisp/emacs-lisp/memory-report.el (memory-report--buffers):
* lisp/button.el (button-buttonize):
* doc/lispref/display.texi (Making Buttons): Rename
button-buttonize to just buttonize and adjust callers.
2021-11-04 18:14:29 +01:00
Mattias Engdegård
51929066d5 Revert "* lisp/progmodes/xref.el (xref-pop-marker-stack): Don't obsolete."
This reverts commit f56408a6f0.

As commented by Dmitry Gutov in [1], obsoleting `xref-pop-marker-stack`
makes sense.

[1] https://lists.gnu.org/archive/html/emacs-devel/2021-10/msg01870.html
2021-11-04 10:14:15 +01:00
Lars Ingebrigtsen
1b2588998a Add a Gnus command to emojize symbols
* doc/misc/gnus.texi (Article Display): Document it.

* lisp/gnus/gnus-art.el (gnus-treat-emojize-symbols): New user option.
(gnus-treatment-function-alist): Map.
(article-emojize-symbols): New command and keystroke.
2021-11-04 06:38:22 +01:00
Lars Ingebrigtsen
742879f1b3 Add new user option mml-attach-file-at-the-end
* lisp/gnus/mml.el (mml-attach-file-at-the-end): New user option.
(mml-attach-file): Use it.
2021-11-04 06:09:08 +01:00
Stefan Kangas
e4c6673be6 image-dired: Set default-directory in thumbnail buffer
* lisp/image-dired.el (image-dired-show-all-from-dir): Set
default-directory.  This fixes e.g. 'dired-jump'.
2021-11-04 05:10:28 +01:00
Stefan Kangas
73a6c8f98f Make image-dired-display-image-mode inherit from image-mode
* lisp/image-dired.el (image-dired-display-image-mode):
Inherit from 'image-mode'.  (Bug#10758)
(image-dired-display-image): Don't generate a temporary image, which
is no longer needed with the above change.
(image-dired-display-thumbnail-original-image)
(image-dired-dired-display-image)
(image-dired-mouse-display-image): Simplify.

(image-dired-temp-image-file)
(image-dired-cmd-create-temp-image-program)
(image-dired-cmd-create-temp-image-options)
(image-dired-display-window-width-correction)
(image-dired-display-window-height-correction)
(image-dired-display-window-width)
(image-dired-display-window-height)
(image-dired-display-current-image-full)
(image-dired-display-current-image-sized)
(image-dired-window-height-pixels): Make obsolete.
(image-dired-create-display-image-buffer): Make into obsolete
function alias for 'ignore'.
(image-dired-display-image-mode-map): Simplify by removing things
duplicated from `image-mode-map'.  Disable some commands from
`image-mode-map' that doesn't make sense for Image-Dired.
(image-dired-display-image-mode-menu): Remove menu, as it no longer
contains anything useful.
(image-dired-minor-mode):
* doc/emacs/dired.texi (Image-Dired): Update documentation for the
above change.
2021-11-04 02:05:29 +01:00
Stefan Kangas
bf953694ad ; * lisp/image-dired.el: Remove redundant :group args. 2021-11-03 23:25:23 +01:00
Stefan Kangas
77dee1809d Improve theming of image-dired-thumb-mark
* etc/themes/adwaita-theme.el (adwaita):
* etc/themes/deeper-blue-theme.el (deeper-blue):
* etc/themes/dichromacy-theme.el (dichromacy):
* etc/themes/leuven-theme.el (leuven):
* etc/themes/manoj-dark-theme.el (manoj-dark):
* etc/themes/whiteboard-theme.el (whiteboard): Add definitions for
the 'image-dired-thumb-flagged' face.
2021-11-03 23:23:02 +01:00
Stefan Kangas
733eff49d3 image-dired: Add face for flagged files
* lisp/image-dired.el (image-dired-thumb-mark): New defface.
(image-dired-thumb-update-marks): Mark flagged file with above new defface.
(image-dired-dired-file-marked-p)
(image-dired-thumb-file-marked-p): Add optional argument to be
used by 'image-dired-*-flagged-p' functions below.
(image-dired-dired-file-flagged-p)
(image-dired-thumb-file-flagged-p): New defuns.
(image-dired-thumb-mark): Improve definition with color classes.
(image-dired-thumb-visible-marks): Doc fix.
2021-11-03 22:34:51 +01:00
Philipp Stephani
4422ed2c19 Fix declaration syntax of 'image-dired--on-file-in-dired-buffer'.
* lisp/image-dired.el (image-dired--on-file-in-dired-buffer): Fix
declaration syntax.
2021-11-03 21:48:13 +01:00
Eli Zaretskii
44c4139dfb Fix encoding issues in gitmerge.el, make it work on MS-Windows
* admin/gitmerge.el (gitmerge-emacs-version, gitmerge-show-log)
(gitmerge-show-diff, gitmerge-show-files, gitmerge-missing)
(gitmerge-setup-log-buffer, gitmerge-resolve)
(gitmerge-commit-message, gitmerge-apply)
(gitmerge-resolve-unmerged, gitmerge-repo-clean)
(gitmerge-commit): Bind coding-system-for-read/write to the
appropriate vc-git values.
(gitmerge-apply) [windows-nt]: Pass long merge log messages via a
temporary file.
(gitmerge): Clarify the description of the "R" flag.
2021-11-03 20:50:34 +02:00
Eli Zaretskii
f78c819d95 Merge from origin/emacs-28
3e4eb54 ; * etc/PROBLEMS: Minor copyedits of the last change.  (Bug#5...
35bc211 Document a macOS error message when opening Emacs
4df9998 Fix header-line and tab-line when mode-line-compact is set
81915a9 Add manual section about how to avoid regexp problems
a16e66c Clarify build environment
6ab6b2f Clarify build directory structure
9d61620 * src/pdumper.c (dump_do_dump_relocation): Add sanity check.
2021-11-03 20:26:29 +02:00
Eli Zaretskii
3e4eb54db4 ; * etc/PROBLEMS: Minor copyedits of the last change. (Bug#51571) 2021-11-03 20:23:58 +02:00
Daniel Martín
35bc2117de Document a macOS error message when opening Emacs
* etc/PROBLEMS: Document a potential error message when opening Emacs
on macOS for the first time.
2021-11-03 20:20:03 +02:00
Eli Zaretskii
d8523060e5 Fix widgets in Outline mode on TTY frames
* lisp/outline.el (outline--valid-emoji-p): Don't try to probe
support for display of Emoji characters on TTY frames.  (Bug#51578)
2021-11-03 20:13:04 +02:00
Eli Zaretskii
5152727530 Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs 2021-11-03 16:14:28 +02:00
Eli Zaretskii
324fd9d105 A better fix for bug#51583
* src/w32.c (w32_get_resource): Move from here...
* src/w32fns.c (w32_get_resource): ...to here.
(w32_applytheme): No longer a no-op for Cygwin w32 builds.
(globals_of_w32fns): Do attempt to load dwmapi.dll and uxtheme.dll
in the Cygwin w32 build.
2021-11-03 16:13:32 +02:00
Harald Jörg
a25e91593d ; cperl-mode.el: Fix one match-count in my commit 2021-09-14
* lisp/progmodes/cperl-mode.el (cperl-init-faces): Matching group needs
to be adjusted according to the regexp change in my previous commit
2021-11-03 15:12:39 +01:00