1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-02 13:41:30 -08:00
Commit graph

151382 commits

Author SHA1 Message Date
Stefan Kangas
d22cd6d4c6 image-dired: Use an evenly spaced grid for thumbnails
* lisp/image-dired.el (image-dired-line-up): Use an evenly spaced
grid for thumbnails, even if image sizes differ.
2021-10-27 02:57:51 +02:00
Stefan Kangas
79c29ff8ff ; * lisp/image-dired.el (image-dired-cmd-pngnq-options): Fix :version. 2021-10-27 02:07:35 +02:00
Stefan Kangas
b37b080af1 image-dired: Use example.org in examples
* lisp/image-dired.el (image-dired-gallery-image-root-url)
(image-dired-gallery-thumb-image-root-url): Use example.org to be
RFC 2606 compliant.
2021-10-27 02:05:33 +02:00
Stefan Kangas
23d2e7d112 image-dired: Increase number of asynch thumbnail generation jobs
* lisp/image-dired.el (image-dired-queue-active-limit): Increase the
number of asynchronous thumbnail generation jobs to a maximum of 4 or
processor count divided by 2.  This makes thumbnail generation around
30 % faster when benchmarking this on my machine (8 cores/4 jobs).

(image-dired-debug): New defvar.
(image-dired-debug-message): New defun.

(image-dired--generate-thumbs-start): New defvar.
(image-dired-create-thumb-1, image-dired-display-thumbs): Display time
spent on thumbnail generation if 'image-dired-debug' is non-nil.
2021-10-27 01:52:05 +02:00
Stefan Kangas
e45b3fc521 Improve function documentation with text from XDG BDS spec
* lisp/xdg.el (xdg-config-home, xdg-cache-home, xdg-data-home)
(xdg-runtime-dir, xdg-config-dirs, xdg-data-dirs): Copy in the
text from the XDG Base Directory Specification to better explain
what these functions return.
2021-10-26 23:19:10 +02:00
Alan Mackenzie
b3a5ad14c1 CC Mode: minor amendments more accurately to handle virtual semicolons, etc.
* lisp/progmodes/cc-engine.el (c-laomib-loop): Check for a virtual semicolon
as well as a ;.
(c-guess-basic-syntax): CASE 5D - Use c-crosses-statement-barrier-p to check
whether we've gone back past a virtual semicolon.
2021-10-26 20:13:18 +00:00
Alan Mackenzie
5f150387f1 * lisp/progmodes/cc-engine.el (c-fontify-new-found-type): Declare near BO File 2021-10-26 16:58:07 +00:00
Michael Albinus
e6bbbd303f * test/infra/gitlab-ci.yml (build-image-inotify): Increase timeout.
(test-native-comp-speed0): Adapt make_params.
2021-10-26 18:52:39 +02:00
Mattias Engdegård
f56408a6f0 * lisp/progmodes/xref.el (xref-pop-marker-stack): Don't obsolete. 2021-10-26 10:10:02 +02:00
Mattias Engdegård
ef86025bcd ; * test/lisp/progmodes/elisp-mode-tests.el: repair test failure
The test used an internal variable that has been renamed; use the new
name.  (Any variable would do here.)
2021-10-26 10:04:24 +02:00
Mattias Engdegård
d8caa3d9fb Rename xref-pop-marker-stack to xref-go-back (bug#38797)
It is the natural name after the addition of `xref-go-forward`.
The old name is retained as an alias.

* lisp/progmodes/xref.el (xref-pop-marker-stack): Rename.
(xref-go-forward, xref-quit-and-pop-marker-stack)
(xref-find-definitions):
* lisp/menu-bar.el (menu-bar-goto-menu):
* lisp/progmodes/etags.el (find-tag-marker-ring, pop-tag-mark):
* lisp/progmodes/prog-mode.el (prog-context-menu):
* doc/emacs/maintaining.texi (Looking Up Identifiers):
* etc/NEWS:
Use the new name.
2021-10-25 20:45:18 +02:00
Mattias Engdegård
e97d4e4ab2 ; * lisp/menu-bar.el (menu-bar-goto-menu): Adjust new item position 2021-10-25 20:45:18 +02:00
Jonas Bernoulli
284c77eeb6 * lisp/transient.el: Update to package version 0.3.7. 2021-10-25 20:19:52 +02:00
Jonas Bernoulli
40400e6977 ; Revert parts of "Use string-replace instead of replace-regexp-in-string"
"transient.el" is also distributed as a separate package, which
supports Emacs versions as old as 25.1 (see "Package-Requires").
2021-10-25 20:18:05 +02:00
Jonas Bernoulli
214c2e268c ; Revert parts of "Use string-search instead of string-match[-p]"
"transient.el" is also distributed as a separate package, which
supports Emacs versions as old as 25.1 (see "Package-Requires").
2021-10-25 20:17:39 +02:00
Eric Abrahamsen
e73b8ae86f IMAP search should only use charset utf-8 with multibyte strings
Background: Exchange servers cannot accept "charset utf-8" search
strings. The code originally set that charset for any server with
literal+ capability, borking all searches on an Exchange server. This
code only sets utf-8 for multibyte search strings in particular, which
would be borken for Exchange anyway.

* lisp/gnus/gnus-search.el (gnus-search-imap-search-command): Ensure
we're only doing the literal+ dance for multibyte strings (multibyte
strings will have had newlines inserted in an earlier step).
2021-10-25 09:55:12 -07:00
Glenn Morris
3378549572 Merge from origin/emacs-28
a2c17e115e (origin/emacs-28) Merge branch 'emacs-28' of git.savannah....
fde56eeb76 Revert "Fix a typo in emacs-lisp-intro.texi"
4779d3ba19 * doc/lispref/functions.texi (Mapping Functions): Use #' w...
85ea3f7f47 Fix issue with interpreting ANSI codes in eshell
50f9436146 image-dired: Doc fix to better explain thumbnail generation
bb475e10b9 Clarify two image-dired docstrings
f5b4bb4a6f Fix flymake example backend conditions in the manual
0771d8939a * etc/PROBLEMS: Mention problems with regexp matcher.  (Bu...
ee579033b9 * test/lisp/repeat-tests.el: New file.
7385a7667f * lisp/tab-bar.el (tab-bar-move-repeat-map): Fix alias bin...
56caf1c9b8 Use restrictive umask when creating image-dired data
3b5de7f991 ; lisp/transient.el: Revert some misguided stylistic fixes.
2021-10-25 09:34:37 -07:00
Glenn Morris
8d0f7e717b ; Merge from origin/emacs-28
The following commit was skipped:

3f763898aa Fix compilation errors with MinGW64 GCC 11
2021-10-25 09:34:37 -07:00
Glenn Morris
f2dfe1e780 Merge from origin/emacs-28
817c929eda Doc fix for concat
3eca2ad2a1 * lisp/image-dired.el (image-dired-external-viewer): Suppo...
2021-10-25 09:34:37 -07:00
Glenn Morris
d1e4d89b32 * doc/misc/cc-mode.texi (Font Locking): Fix menu. 2021-10-25 17:33:11 +01:00
Eli Zaretskii
a2c17e115e Merge branch 'emacs-28' of git.savannah.gnu.org:/srv/git/emacs into emacs-28 2021-10-25 19:19:55 +03:00
Eli Zaretskii
fde56eeb76 Revert "Fix a typo in emacs-lisp-intro.texi"
This reverts commit 98eb6d783a.
I've consulted with Richard Stallman about this, and he says
that the original wording, "kinds of atom", is both correct
and more elegant writing.  So I'm restoring the original text.
* doc/lispintro/emacs-lisp-intro.texi (Lisp Atoms): Undo the
fix of a "typo" that wasn't a typo.  (Bug#51271)
2021-10-25 19:11:06 +03:00
Lars Ingebrigtsen
d53bf7e5b4 Add the "always" zsh builtin to zsh mode
* lisp/progmodes/sh-script.el (sh-builtins): Add the "always" zsh
keyword (bug#51387).
2021-10-25 17:42:13 +02:00
Mattias Engdegård
65b34f688c Add xref forward history (bug#38797)
Make it possible to go forward as well as back in the Xref history.
The new `xref-go-forward` is bound to `C-M-,`.

* lisp/progmodes/etags.el (find-tag-marker-ring-length): Update.
(tags-location-ring-length): New.
(find-tag-marker-ring): Keep as dummy.
(tags-location-ring, tags-reset-tags-tables):
Use `tags-location-ring-length` instead of `xref-marker-ring-length`.
* lisp/progmodes/xref.el (xref-marker-ring-length, xref-marker-ring)
(xref-set-marker-ring-length):
Make obsolete.
(xref--history, xref-go-forward, xref-forward-history-empty-p): New.
(xref-push-marker-stack, xref-pop-marker-stack)
(xref-clear-marker-stack, xref-marker-stack-empty-p):
Use `xref--history`.
* lisp/menu-bar.el (menu-bar-goto-menu): Add Forward entry.
* doc/emacs/maintaining.texi (Looking Up Identifiers): Document.
* etc/NEWS: Announce.
2021-10-25 17:34:37 +02:00
Lars Ingebrigtsen
46941bcc2a Allow viewing .heic images via image-convert
* lisp/files.el (auto-mode-alist): Support the Apple .heic/HEIF
image format (bug#51381).
2021-10-25 17:19:32 +02:00
Lars Ingebrigtsen
9ce0008edd Change the with-delayed-message syntax to allow future extensibility
* doc/lispref/display.texi (Progress): Document it.
* lisp/subr.el (with-delayed-message): Change the syntax to allow
future extensibility.

* lisp/net/eww.el (eww-display-html): Use it.
2021-10-25 17:10:34 +02:00
Lars Ingebrigtsen
8c73e6b0f9 Heed the EMACS_IGNORE_TIMERFD environment variable
* src/emacs.c (main): Call init_atimer after setting up the
environment so that the EMACS_IGNORE_TIMERFD environment variable
is actually heeded.
2021-10-25 16:49:48 +02:00
Robert Pluim
4779d3ba19 * doc/lispref/functions.texi (Mapping Functions): Use #' when mapping. 2021-10-25 15:46:49 +02:00
Miha Rihtaršič
85ea3f7f47 Fix issue with interpreting ANSI codes in eshell
* lisp/eshell/esh-mode.el (eshell-mode): Make window point advance on
insertion.
(eshell-output-filter): Don't use insert-before-markers (bug#45380).
2021-10-25 15:24:35 +02:00
Martin Rudalics
4143b1d630 ; Fix mangled indentation in 'display-buffer' doc-string 2021-10-25 11:26:33 +02:00
Martin Rudalics
beaddd87f7 Allow 'display-buffer' to set up body size of chosen window (Bug#17065)
* doc/lispref/windows.texi (Buffer Display Action Alists):
Describe new possible values for 'window-height', 'window-width'
and 'window-size' action alist entries.
* lisp/window.el (window--display-buffer): Handle new values for
'window-height', 'window-width' and 'window-size' ALIST entries.
(display-buffer): Update doc-string for new values of some
action alist entries.
* etc/NEWS: Mention new values of some action alist entries.
2021-10-25 10:42:17 +02:00
Stefan Kangas
709e1e59f0 New function xdg-state-home
* lisp/xdg.el (xdg-state-home): New function.  This returns
$XDG_STATE_HOME according to the XDG Base Directory Specification
version 0.8 (08th May 2021).
2021-10-25 07:56:34 +02:00
Stefan Kangas
f8fed417a5 image-dired: Improve XDG compliance
* lisp/image-dired.el (xdg): Require.
(image-dired-main-image-directory): Prefer XDG_PICTURES_HOME.
(image-dired-thumb-name): Simplify by using 'xdg-cache-home'.
2021-10-25 07:54:11 +02:00
Stefan Kangas
5dd07e1ba1 Double value of image-dired-show-all-from-dir-max-files
* lisp/image-dired.el (image-dired-show-all-from-dir-max-files):
Double the amount of files in directory before prompting.  This could
be even higher, as the thumbnails are generated asynchronously and are
small by default.
2021-10-25 07:38:19 +02:00
Stefan Kangas
50f9436146 image-dired: Doc fix to better explain thumbnail generation
* doc/emacs/dired.texi (Image-Dired): Improve description by
explaining that the generation of thumbnails is asynchronous.
2021-10-25 04:54:00 +02:00
Stefan Kangas
79f7e87da5 image-dired: Add support for GraphicsMagick
* lisp/image-dired.el (image-dired-cmd-create-thumbnail-program)
(image-dired-cmd-create-thumbnail-options)
(image-dired-cmd-create-temp-image-program)
(image-dired-cmd-create-temp-image-options)
(image-dired-cmd-rotate-thumbnail-program)
(image-dired-cmd-rotate-thumbnail-options): Add support for the
GraphicsMagick command line tool ("gm convert", "gm mogrify").
2021-10-25 03:50:04 +02:00
Lars Ingebrigtsen
83f1e4b3bc Fix issues with type casting in delayed message functions
* src/eval.c (with_delayed_message_display)
(with_delayed_message_cancel, Ffuncall_with_delayed_message): Fix
some type confusion.
2021-10-25 02:19:44 +02:00
Stefan Kangas
057f45abec Support new Thumbnail Managing Standard sizes in image-dired
* lisp/image-dired.el
(image-dired--thumbnail-managing-standard-sizes): New defconst.
(image-dired-thumbnail-storage)
(image-dired-thumb-name, image-dired-insert-thumbnail)
(image-dired-thumb-size, image-dired-create-thumb-1): Support larger
thumbnail sizes mandated by new version of the Thumbnail Managing
Standard (December 2020, Version 0.9.0).
2021-10-25 02:12:48 +02:00
Stefan Kangas
bb475e10b9 Clarify two image-dired docstrings
* lisp/image-dired.el (image-dired-dir): Doc fix; clarify that
thumbnails will be saved in "$XDG_CACHE_HOME/thumbnails", as per the
Thumbnail Managing Standard.
(image-dired-thumb-size): Doc fix; clarify that this option will be
ignored when using the Thumbnail Managing Standard.
2021-10-25 02:12:34 +02:00
Lars Ingebrigtsen
f5b4bb4a6f Fix flymake example backend conditions in the manual
* doc/misc/flymake.texi (An annotated example backend): Also react
to `signal' process statuses (bug#51380).
2021-10-25 01:25:20 +02:00
Stefan Kangas
0771d8939a * etc/PROBLEMS: Mention problems with regexp matcher. (Bug#18577) 2021-10-24 23:56:52 +02:00
Stefan Kangas
608e694a30 Use SHA1 when creating thumbnail file name
* lisp/image-dired.el (image-dired-thumb-name): Improve docstring.
Use SHA1 for hashing when creating file name.  SHA1 is slightly faster
than MD5, and has a few more bits.
2021-10-24 23:26:25 +02:00
Lars Ingebrigtsen
ea036e6f8d Remove debugging in with_delayed_message_display
* src/eval.c (with_delayed_message_display): Remove debugging.
2021-10-24 23:04:31 +02:00
Lars Ingebrigtsen
57f3a1eb00 Display a message if HMTL rendering takes a long time
* lisp/net/eww.el (eww-display-html): Display a message if HTML
rendering takes a long time (bug#19776).
2021-10-24 22:21:19 +02:00
Lars Ingebrigtsen
c2055d41b4 Add new macro `with-delayed-message'
* doc/lispref/display.texi (Progress): Document it.
* lisp/subr.el (with-delayed-message): New macro.

* src/eval.c (with_delayed_message_display)
(with_delayed_message_cancel): Helper functions.
(Ffuncall_with_delayed_message): New function (bug#19776).
2021-10-24 22:21:19 +02:00
Alan Mackenzie
374f14fb99 CC Mode: Fontify "found types" which are recognized after being first scanned
This aims to fix the scenario where on jit-lock's first scan of a type, it is
not recognized as such, and only later does this happen.  The fontification of
such found types is now done by background scanning in short time slices
immediately after initialising the mode.

* lisp/progmodes/cc-engine.el (c-add-type-1): New function.
(c-add-type): Extract c-add-type-1 from it, and reformulate the mechanism for
protecting c-found-types from excessive partial identifiers.

* lisp/progmodes/cc-fonts.el (c-font-lock-complex-decl-prepare): Remove the
code which cleared c-found-types on fontification at BOB.
(c-find-types-background): New function, based on c-font-lock-declarations).
(c-type-finder-timer-func): New function.
(c-re-redisplay-timer): New variable.
(c-force-redisplay, c-fontify-new-found-type): New functions.

* lisp/progmodes/cc-mode.el (c-type-finder-timer, c-inhibit-type-finder): New
variables.
(c-leave-cc-mode-mode): Nullify c-post-command-hook, c-post-gc-hook, and
c-type-finder-timer when the last CC Mode buffer of a session is killed.
(c-type-finder-pos): New variable.
(c-basic-common-init): Initialize/Install c-post-command, c-c-type-finder-pos,
c-type-finder-timer, and c-post-gc-hook.
(c-new-id-start, c-new-id-end, c-new-id-is-type): New variables.
(c-update-new-id): New function.
(c-post-command): New post command hook function, used for checking moving
away from partially typed identifiers, and making them full identifiers.
(c-post-gc-hook): New hook to prevent CC Mode activity immediately following
GC, thus allowing keyboard/mouse input to be registered.
(c-before-change): Add code to clear c-found-types on a buffer change at BOB.
(c-after-change): Call c-update-new-id to keep track of partially typed
identifiers.

* doc/misc/cc-mode.texi (Found Types): New @section in the @Chapter Font
Locking.

* lisp/progmodes/cc-vars.el (c-type-finder-time-slot)
(c-type-finder-repeat-time, c-type-finder-chunk-size): New customizable
options.
2021-10-24 19:59:18 +00:00
Juri Linkov
ee579033b9 * test/lisp/repeat-tests.el: New file. 2021-10-24 22:22:16 +03:00
Juri Linkov
7385a7667f * lisp/tab-bar.el (tab-bar-move-repeat-map): Fix alias binding of tab-move.
(tab-bar-move-tab-backward): Put 'repeat-map' symbol property.
2021-10-24 22:22:16 +03:00
Lars Ingebrigtsen
89365d748f Fix mouse buttons in dired--make-directory-clickable
* lisp/dired.el (dired--make-directory-clickable): Adjust mouse
clicks to conform to our standards.
2021-10-24 21:21:25 +02:00
Stefan Kangas
56caf1c9b8 Use restrictive umask when creating image-dired data
* lisp/image-dired.el (image-dired-dir)
(image-dired-sane-db-file): Create thumbnail directory and
.image-dired_db with umask 077.  This avoids creating world readable
copies of private data, and is in fact mandated by the Thumbnail
Managing Standard that we aim to support.
2021-10-24 21:20:16 +02:00