]> git.eshelyaron.com Git - emacs.git/log
emacs.git
4 years agoBind default-directory to given DIR.
Tassilo Horn [Thu, 18 Jun 2020 05:53:45 +0000 (07:53 +0200)]
Bind default-directory to given DIR.

Otherwise, "git config branch.<branch>.remote" would return the global
default "origin" instead of the actual, project-specific remote name.

* lisp/vc/vc-git.el (vc-git-dir-extra-headers): Bind default-directory
to given DIR.

4 years agoNew command: project-kill-buffers
Philip K [Thu, 18 Jun 2020 01:00:38 +0000 (04:00 +0300)]
New command: project-kill-buffers

* lisp/progmodes/project.el
(project-kill-buffers-skip-conditions): New variable.
(project--buffer-list): New function.
(project-kill-buffers): New command (bug#41868).

4 years ago; Add a heading and a binding
Dmitry Gutov [Wed, 17 Jun 2020 23:10:33 +0000 (02:10 +0300)]
; Add a heading and a binding

4 years agoNew command: project-switch-to-buffer
Theodor Thornhill [Wed, 17 Jun 2020 23:09:41 +0000 (02:09 +0300)]
New command: project-switch-to-buffer

* lisp/progmodes/project.el (project-switch-to-buffer): New command.

4 years agoAdd global bindings for project commands
Theodor Thornhill [Wed, 17 Jun 2020 23:05:31 +0000 (02:05 +0300)]
Add global bindings for project commands

* lisp/progmodes/project.el
(project-prefix-map): New variable.
Add the new keymap to ctl-x-map.

4 years agoFix setting project-vc-merge-submodules via .dir-locals.el
Dmitry Gutov [Wed, 17 Jun 2020 22:30:32 +0000 (01:30 +0300)]
Fix setting project-vc-merge-submodules via .dir-locals.el

* lisp/progmodes/project.el
(project--vc-merge-submodules-p): New function.
(project-try-vc, project--vc-list-files): Use it.

4 years agovc-git-dir-extra-headers: Fix recent breakage
Dmitry Gutov [Wed, 17 Jun 2020 22:09:29 +0000 (01:09 +0300)]
vc-git-dir-extra-headers: Fix recent breakage

* lisp/vc/vc-git.el (vc-git-dir-extra-headers): Account for
'remote' being set to "" when not found
(https://lists.gnu.org/archive/html/emacs-devel/2020-06/msg00582.html).
(vc-git-dir-extra-headers): Check the value of remote-url instead.

4 years agoAuto-setup for bug-reference-mode
Tassilo Horn [Thu, 11 Jun 2020 15:02:02 +0000 (17:02 +0200)]
Auto-setup for bug-reference-mode

Tries to guess suitable bug-reference-bug-regexp and
bug-reference-url-format values based on version control URL (in file
buffers) and mail information (in Gnus summary and article buffers).

* lisp/progmodes/bug-reference.el
(bug-reference--maybe-setup-from-vc): New defun.
(bug-reference-setup-from-vc-alist): New defvar defining setup rules
based on version control URL.
(bug-reference-try-setup-from-vc): New defun using above defvar.
(bug-reference--maybe-setup-from-mail): New defun.
(bug-reference-setup-from-mail-alist): New defvar defining setup rules
based on mail/newsgroups and header values.
(bug-reference-try-setup-from-gnus): New defun using above defvar.
(bug-reference--try-setup-gnus-article): New defun.
(bug-reference--run-auto-setup): New defun.
(bug-reference-mode): Call bug-reference--run-auto-setup as
:after-hook.
(bug-reference-prog-mode): Call bug-reference--run-auto-setup as
:after-hook.

4 years agoMerge from origin/emacs-27
Glenn Morris [Wed, 17 Jun 2020 15:47:53 +0000 (08:47 -0700)]
Merge from origin/emacs-27

229995ba2c (origin/emacs-27) Fix some Texinfo markup
01e86b9fdf Fix recentf typo in Emacs manual
cd4f75bb86 Rename default function to next-error-buffer-unnavigated-c...
1dff0a8949 * lisp/image-mode.el (image-toggle-display-image): Fix fit...
a71d1787f1 * doc/misc/tramp.texi (Predefined connection information):...
079b0dc430 Delete, don't kill, dir dir fragments in icomplete-fido-ba...
6cdecc2659 Revert markup change in with-coding-priority docs
22f4fba8a9 * lisp/emulation/cua-rect.el (cua--rectangle-region-insert...
6b9eac6759 * lisp/simple.el (shell-command-on-region): Fix docstring.
43ad7dc1af Clean up D-Bus documentation (bug#41744)
c43e5ed60d * lisp/image-mode.el (image-transform-original): New comma...
6eb18a950d Move tab-bar and tab-line faces to faces.el (part of bug#4...

# Conflicts:
# etc/NEWS
# lisp/simple.el

4 years agoFix some Texinfo markup
Basil L. Contovounesios [Wed, 17 Jun 2020 11:53:40 +0000 (12:53 +0100)]
Fix some Texinfo markup

* doc/misc/gnus-faq.texi (FAQ 3-11):
* doc/emacs/frames.texi (Tab Bars): Consistently use @var with
lower-case metasyntactic variables and @minus instead of a dash.
(Text-Only Mouse):
* doc/emacs/files.texi (Auto Revert):
* doc/emacs/misc.texi (emacsclient Options)
(Embedded WebKit Widgets):
* doc/lispref/control.texi (pcase Macro):
* doc/lispref/debugging.texi (Backtraces):
* doc/lispref/files.texi (Truenames):
* doc/lispref/frames.texi (Management Parameters):
* doc/lispref/os.texi (Time Calculations):
* doc/lispref/text.texi (Parsing JSON):
* doc/misc/efaq-w32.texi (Other versions of Emacs, Debugging)
(Swap Caps NT, Printing, Bash, Developing with Emacs):
* doc/misc/efaq.texi (New in Emacs 25):
* doc/misc/emacs-gnutls.texi (Help For Users):
* doc/misc/message.texi (Using S/MIME, Passphrase caching):
* test/manual/etags/tex-src/gzip.texi (Overview): Use @. when a
sentence in the middle of a paragraph ends with an upper-case letter
as per "(texinfo) Ending a Sentence".

4 years agoFix recentf typo in Emacs manual
Basil L. Contovounesios [Wed, 17 Jun 2020 00:10:20 +0000 (01:10 +0100)]
Fix recentf typo in Emacs manual

* doc/emacs/files.texi (File Conveniences): Fix misspelling of
recentf-list.

4 years ago* lisp/dired-aux.el (dired-vc-deduce-fileset): Add autoload cookie.
Juri Linkov [Tue, 16 Jun 2020 23:18:11 +0000 (02:18 +0300)]
* lisp/dired-aux.el (dired-vc-deduce-fileset): Add autoload cookie.

4 years agoRename default function to next-error-buffer-unnavigated-current (bug#40919)
Juri Linkov [Tue, 16 Jun 2020 23:14:12 +0000 (02:14 +0300)]
Rename default function to next-error-buffer-unnavigated-current (bug#40919)

* lisp/simple.el (next-error-find-buffer-function): Rename default function
from next-error-no-navigation-try-current
to next-error-buffer-unnavigated-current.

4 years ago* lisp/image-mode.el (image-toggle-display-image): Fix fit of rotated images.
Juri Linkov [Tue, 16 Jun 2020 22:58:32 +0000 (01:58 +0300)]
* lisp/image-mode.el (image-toggle-display-image): Fix fit of rotated images.

When fitting rotated image to width and height, swap width and height
when changing orientation between portrait and landscape (bug#41886).

4 years agoBump the project.el package version
Dmitry Gutov [Tue, 16 Jun 2020 22:27:37 +0000 (01:27 +0300)]
Bump the project.el package version

* lisp/progmodes/project.el: Bump the package version.

4 years agoChange the key for project-find-regexp
Dmitry Gutov [Tue, 16 Jun 2020 22:24:01 +0000 (01:24 +0300)]
Change the key for project-find-regexp

* lisp/progmodes/project.el (project-switch-commands):
Change the key for 'project-find-regexp' to 'g', which seems to be
the consensus.

4 years agoMake project file name completion adhere to customization
Dmitry Gutov [Tue, 16 Jun 2020 21:50:31 +0000 (00:50 +0300)]
Make project file name completion adhere to customization

* lisp/progmodes/project.el (project-find-file-in):
Bind completion-ignore-case to the value of
read-file-name-completion-ignore-case (bug#41902).

4 years agognus-cloud: Improve cloud sync
David Edmondson [Sat, 28 Mar 2020 19:03:58 +0000 (19:03 +0000)]
gnus-cloud: Improve cloud sync

After replaying a set of actions downloaded by gnus-cloud, persist the
highest sequence number seen as the local `gnus-cloud-sequence'
number, in order that a future download will not unnecessarily replay
previously seen actions and any future uploads from this emacs
instance use a higher sequence number than that downloaded.

Remove the test on whether individual newsrc entries are older than
the current time, as that is always going to be the case.

4 years ago* doc/misc/tramp.texi (Predefined connection information): Add "tmpdir".
Michael Albinus [Tue, 16 Jun 2020 10:34:00 +0000 (12:34 +0200)]
* doc/misc/tramp.texi (Predefined connection information): Add "tmpdir".

4 years agoFix some Tramp problems seen during tests
Michael Albinus [Mon, 15 Jun 2020 14:24:22 +0000 (16:24 +0200)]
Fix some Tramp problems seen during tests

* lisp/net/tramp-crypt.el (tramp-crypt-file-name-handler-alist):
Add `access-file'.
(tramp-crypt-file-name-for-operation): Rewrite.  Take second
argument into account.
(tramp-crypt-file-name-handler): Use it.
(tramp-crypt-send-command): Set buffer multibyte (but utf8 files
still don't work).
(tramp-crypt-handle-access-file): New defun.
(tramp-crypt-do-copy-or-rename-file): Short track if both files
are on a crypted remote dir.

* lisp/net/tramp.el (file-notify-rm-watch): Declare.
(tramp-inhibit-progress-reporter): New defvar.
(tramp-message): Display message only if not suppressed by
progress reporter.
(with-tramp-progress-reporter): Suppress concurrent progress
reporter messages.
(tramp-file-notify-process-sentinel): Simplify.

4 years agoUse vc-git-repository-url in vc-git-dir-extra-headers
Tassilo Horn [Mon, 15 Jun 2020 07:07:12 +0000 (09:07 +0200)]
Use vc-git-repository-url in vc-git-dir-extra-headers

* lisp/vc/vc-git.el (vc-git-dir-extra-headers): Use
vc-git-repository-url for getting the remote's URL.

4 years agoAdd optional remote-name argument to VC repository-url command
Tassilo Horn [Mon, 15 Jun 2020 06:56:11 +0000 (08:56 +0200)]
Add optional remote-name argument to VC repository-url command

* lisp/vc/vc.el: Document new remote-name argument of VC
repository-url command.
* lisp/vc/vc-git.el (vc-git-repository-url): Add and use new arg.
* lisp/vc/vc-hg.el (vc-hg-repository-url): Add and use new arg.
* lisp/vc/vc-bzr.el (vc-bzr-repository-url): Add new arg but ignore
it.
* lisp/vc/vc-svn.el (vc-svn-repository-url): Add new arg but ignore
it.

4 years agoAdd new VC command `repository-url'
Tassilo Horn [Sun, 14 Jun 2020 16:24:14 +0000 (18:24 +0200)]
Add new VC command `repository-url'

* lisp/vc/vc.el: Document repository-url command.
* lisp/vc/vc-bzr.el (vc-bzr-repository-url): New defun.
* lisp/vc/vc-git.el (vc-git-repository-url): New defun.
* lisp/vc/vc-hg.el (vc-hg-repository-url): New defun.
* lisp/vc/vc-svn.el (vc-svn-repository-url): New defun.

4 years agoBand-aid for edebugging generator bodies (Bug#40434).
Philipp Stephani [Wed, 10 Jun 2020 17:01:03 +0000 (19:01 +0200)]
Band-aid for edebugging generator bodies (Bug#40434).

Edebug doesn't support them well.  Rather than trying to fix Edebug,
disable instrumentation for now to prevent annoying bugs.

* lisp/emacs-lisp/generator.el (iter-defun, iter-lambda, iter-make)
(iter-do): Don't attempt to instrument bodies that are mangled by the
CPS transformer.

* test/lisp/emacs-lisp/generator-tests.el
(generator-tests-edebug): New regression test.

4 years agoEnsure that getters and setters can be edebugged at the same time.
Philipp Stephani [Sun, 14 Jun 2020 16:18:13 +0000 (18:18 +0200)]
Ensure that getters and setters can be edebugged at the same time.

It's necessary to add a name suffix to setters defined with
'gv-define-setter' so that Edebug can distinguish between the getter
and the setter (Bug#41853).

* lisp/emacs-lisp/gv.el (gv-define-setter): Add a name suffix to
setter definitions.

* test/lisp/emacs-lisp/gv-tests.el (gv-setter-edebug): New regression
test.

4 years agoRearrange detecting remote uid and gid in Tramp
Michael Albinus [Sun, 14 Jun 2020 13:31:17 +0000 (15:31 +0200)]
Rearrange detecting remote uid and gid in Tramp

* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
* lisp/net/tramp-archive.el (tramp-archive-file-name-handler-alist):
* lisp/net/tramp-rclone.el (tramp-rclone-file-name-handler-alist):
* lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
Add `tramp-get-remote-gid' and 'tramp-get-remote-uid'.

* lisp/net/tramp-crypt.el (tramp-crypt-file-name-handler-alist):
Add `file-ownership-preserved-p'.
(tramp-crypt-add-directory): Check, that NAME is not quoted.
(tramp-crypt-handle-file-ownership-preserved-p): New defun.
(tramp-crypt-handle-insert-directory): Fix docstring.

* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
Add `tramp-get-remote-gid' and 'tramp-get-remote-uid'.
(tramp-gvfs-handle-file-readable-p): Call `tramp-get-remote-uid'.
(tramp-gvfs-handle-get-remote-uid)
(tramp-gvfs-handle-get-remote-gid): Rename from
`tramp-gvfs-get-remote-{uid,gid}'.  Do not cache result.
(tramp-gvfs-maybe-open-connection): No special handling for remote
uid and gid.

* lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
Add `tramp-get-remote-gid' and 'tramp-get-remote-uid'.
(tramp-sh-handle-get-remote-uid, tramp-sh-handle-get-remote-gid):
Rename from `tramp-get-remote-{uid,gid}'.  Do not cache result.
(tramp-sh-handle-file-ownership-preserved-p): Distinguish by GROUP
when caching.

* lisp/net/tramp-sudoedit.el (tramp-sudoedit-file-name-handler-alist):
Add `tramp-get-remote-gid' and 'tramp-get-remote-uid'.
(tramp-sudoedit-handle-get-remote-uid)
(tramp-sudoedit-handle-get-remote-gid): Rename from
`tramp-sudoedit-get-remote-{uid,gid}'.  Do not cache result.
(tramp-sudoedit-handle-set-file-uid-gid)
(tramp-sudoedit-handle-write-region): Call `tramp-get-remote-uid'
and `tramp-get-remote-gid'.
(tramp-sudoedit-maybe-open-connection): No special handling for
remote uid and gid.

* lisp/net/tramp.el (tramp-file-name-for-operation):
Add `tramp-get-remote-gid' and 'tramp-get-remote-uid'.
(tramp-handle-write-region, tramp-check-cached-permissions):
Call `tramp-get-remote-uid' and `tramp-get-remote-gid'.
(tramp-get-remote-uid, tramp-get-remote-gid): New defuns.
(tramp-local-host-p): Simplify `tramp-get-remote-uid' call.

* test/lisp/net/tramp-tests.el (tramp-test17-dired-with-wildcards)
Skip if needed.

4 years ago2020-03-29 Michael R. Mauger <michael@mauger.com>
Michael R. Mauger [Mon, 30 Mar 2020 00:52:10 +0000 (20:52 -0400)]
2020-03-29  Michael R. Mauger  <michael@mauger.com>

       * lisp/progmodes/sql.el (sql-add-product): Re-correct argument
       spec.  Previous change was due to my mistake; I have
       resolved back to the prior behavior (Bug#39960).
       * test/lisp/progmodes/sql-tests.el (sql-test-add-product): Added
       test to insure I don't make the same mistake again.

4 years agoDelete, don't kill, dir dir fragments in icomplete-fido-backward-updir
João Távora [Sat, 13 Jun 2020 17:45:40 +0000 (18:45 +0100)]
Delete, don't kill, dir dir fragments in icomplete-fido-backward-updir

Reported by: Andrew Schwartzmeyer <andrew@schwartzmeyer.com>

* lisp/icomplete.el (icomplete-fido-backward-updir): Don't save
dir fragments to kill ring.

4 years agoTag a test as unstable
Glenn Morris [Sat, 13 Jun 2020 17:42:47 +0000 (10:42 -0700)]
Tag a test as unstable

* test/lisp/calendar/lunar-tests.el (lunar-test-phase-list):
Mark as unstable.  Eg fails on hydra.nixos.org.

4 years agoRevert markup change in with-coding-priority docs
Basil L. Contovounesios [Sat, 13 Jun 2020 16:53:59 +0000 (17:53 +0100)]
Revert markup change in with-coding-priority docs

This partially reverts commit fc759eb9b3
"Fix with-coding-priority markup in Elisp manual"
of 2019-10-13T15:36:02Z!contovob@tcd.ie.

For discussion, see the following thread:
https://lists.gnu.org/archive/html/emacs-devel/2019-10/msg00550.html
https://lists.gnu.org/archive/html/emacs-devel/2020-06/msg00473.html

* doc/lispref/nonascii.texi (Specifying Coding Systems): Use more
specific cross-reference to progn even if info.el displays it
suboptimally.

4 years agoMark python-shell-virtualenv-root as safe for directories
Philip K [Sat, 30 May 2020 19:47:51 +0000 (21:47 +0200)]
Mark python-shell-virtualenv-root as safe for directories

* lisp/progmodes/python.el (python-shell-virtualenv-root):
Require a directory name.  (Bug#41619)

4 years agoHighlight typed variables in Python
Konstantin Kharlamov [Wed, 3 Jun 2020 11:51:03 +0000 (14:51 +0300)]
Highlight typed variables in Python

* progmodes/python.el
(python-font-lock-keywords-maximum-decoration): Recognize
typed variables like "foo: int = 1" as well.  (Bug#41684)

4 years agoFurther fixes while testing tramp-crypt
Michael Albinus [Fri, 12 Jun 2020 18:17:02 +0000 (20:17 +0200)]
Further fixes while testing tramp-crypt

* doc/misc/tramp.texi (External methods): Remove experimental note
for rclone.
(Keeping files encrypted): Mark file encryption as experimental.

* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
Use `tramp-handle-file-truename'.
(tramp-adb-handle-file-truename): Remove.

* lisp/net/tramp-crypt.el (tramp-crypt-file-name-handler-alist):
Add `file-writable-p'.
(tramp-crypt-send-command): Return t if no error.
(tramp-crypt-do-encrypt-or-decrypt-file-name)
(tramp-crypt-do-encrypt-or-decrypt-file): Raise an error if it fails.
(tramp-crypt-do-copy-or-rename-file): Flush file properties also
when copying a directory.
(tramp-crypt-handle-file-writable-p): New defun.
(tramp-crypt-handle-insert-directory): Check for library
`text-property-search'.

* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-set-file-uid-gid):
Rename from `tramp-gvfs-set-file-uid-gid'.

* lisp/net/tramp-sh.el (tramp-sh-handle-file-truename):
Use `tramp-handle-file-truename' as fallback.

* lisp/net/tramp.el (tramp-handle-file-truename):
Let-bind `tramp-crypt-enabled' to nil.
(tramp-handle-write-region): Set also file ownership.

* test/lisp/net/tramp-tests.el (tramp-test17-insert-directory):
Skip if needed.

4 years agoDerive gnus-edit-form-mode from lisp-data-mode, fix mode map
Eric Abrahamsen [Sat, 6 Jun 2020 19:13:15 +0000 (12:13 -0700)]
Derive gnus-edit-form-mode from lisp-data-mode, fix mode map

* lisp/gnus/gnus-eform.el (gnus-edit-form-mode): Derive from
lisp-data-mode, which can be handy for users who have turned on things
like paredit for lisp-data-mode.
(gnus-edit-form-mode-map): Put creation of the map inside the defvar.

4 years ago; * lisp/faces.el (readable-foreground-color): Fix editing mistake.
Mattias Engdegård [Wed, 10 Jun 2020 22:06:24 +0000 (00:06 +0200)]
; * lisp/faces.el (readable-foreground-color): Fix editing mistake.

4 years agoImproved light/dark colour predicate (bug#41544)
Mattias Engdegård [Wed, 10 Jun 2020 17:18:58 +0000 (19:18 +0200)]
Improved light/dark colour predicate (bug#41544)

Add a predicate, color-dark-p, for deciding whether a colour is more
readable with black or white as contrast.  It has experimentally been
shown to be more accurate and robust than the various methods
currently employed.

The new predicate compares the relative luminance of the colour to an
empirically determined cut-off value, and it seems to get it right in
almost all cases, with no value leading to outright bad results.

* lisp/faces.el (readable-foreground-color): Use color-dark-p.
(color-dark-p): New function.
* lisp/facemenu.el (list-colors-print): Use readable-foreground-color,
improving readability of list-colors-display.
* lisp/textmodes/css-mode.el (css--contrasty-color): Remove.
(css--fontify-region): Use readable-foreground-color.

4 years agoFuther tramp-crypt implementation and documentation
Michael Albinus [Wed, 10 Jun 2020 17:36:53 +0000 (19:36 +0200)]
Futher tramp-crypt implementation and documentation

* doc/misc/tramp.texi (Top, Configuration): Insert section
`Keeping files encrypted' in menu.
(Keeping files encrypted): New node.

* lisp/net/tramp-crypt.el (tramp-crypt-file-name-handler-alist):
Add `tramp-set-file-uid-gid'.
(tramp-crypt-maybe-open-connection): Simplify.
(tramp-crypt-do-encrypt-or-decrypt-file): Use `binary' coding system.
(tramp-crypt-handle-set-file-uid-gid): New defun.

* test/lisp/net/tramp-tests.el (tramp-test09-insert-file-contents):
Adapt test.

4 years ago; * test/lisp/emacs-lisp/generator-tests.el: Checkdoc fixes
Philipp Stephani [Wed, 10 Jun 2020 13:49:57 +0000 (15:49 +0200)]
; * test/lisp/emacs-lisp/generator-tests.el: Checkdoc fixes

4 years agoSlightly improve commit 73be4d1ed5b190bd93e9bad6aebe43d0dea0d7d3.
Philipp Stephani [Wed, 10 Jun 2020 13:46:12 +0000 (15:46 +0200)]
Slightly improve commit 73be4d1ed5b190bd93e9bad6aebe43d0dea0d7d3.

* lisp/emacs-lisp/cl-macs.el (cl-lambda-list, cl-lambda-list1)
(cl-macro-list, cl-macro-list1): Use exactly the same specification as
for &optional (sans the third optional list element).

4 years agoAllow destructuring in &aux sections when using edebug (Bug#40431)
Philipp Stephani [Wed, 10 Jun 2020 13:34:41 +0000 (15:34 +0200)]
Allow destructuring in &aux sections when using edebug (Bug#40431)

* lisp/emacs-lisp/cl-macs.el (cl-lambda-list, cl-lambda-list1)
(cl-macro-list, cl-macro-list1): Allow arbitrary 'cl-lambda'
arguments in the &aux section.

* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-aux-edebug): New
regression test.

4 years ago; Simplify last change
Basil L. Contovounesios [Wed, 10 Jun 2020 00:00:01 +0000 (01:00 +0100)]
; Simplify last change

* lisp/progmodes/project.el (project--read-project-list): We are
already at BOB after insert-file-contents.

4 years ago* lisp/emulation/cua-rect.el (cua--rectangle-region-insert): New function.
Juri Linkov [Tue, 9 Jun 2020 23:03:06 +0000 (02:03 +0300)]
* lisp/emulation/cua-rect.el (cua--rectangle-region-insert): New function.

Add cua--insert-rectangle around region-insert-function (bug#41440).

4 years agoSave project list as lisp data
Simen Heggestøyl [Fri, 5 Jun 2020 17:32:30 +0000 (19:32 +0200)]
Save project list as lisp data

Save the project list file as lisp data instead of line separated
strings to make it more extendable in the future.

* lisp/progmodes/project.el (project--read-project-list)
(project--write-project-list, project--add-to-project-list-front)
(project--remove-from-project-list): Adjust to `project--list' now
being an alist.

4 years agoOrthographical amendments to commit 145aab0672ae259736ee9230f8e0ff4effa5f4fd
Alan Mackenzie [Tue, 9 Jun 2020 16:58:52 +0000 (16:58 +0000)]
Orthographical amendments to commit 145aab0672ae259736ee9230f8e0ff4effa5f4fd

* etc/NEWS: Correct the spelling of CC Mode.

* lisp/progmodes/cc-fonts.el (doxygen-font-lock-doc-comments): Replace curly
  quotes in comments by ASCII ones.

4 years agoContinue implementation of tramp-crypt.el
Michael Albinus [Tue, 9 Jun 2020 11:43:30 +0000 (13:43 +0200)]
Continue implementation of tramp-crypt.el

* lisp/net/tramp-crypt.el (tramp-crypt-do-encrypt-or-decrypt-file):
Add leading "/" to infile.
(tramp-crypt-add-directory): Fix docstring.  Expand NAME.
(tramp-crypt-remove-directory)
(tramp-crypt-handle-file-name-all-completions)
(tramp-crypt-handle-set-file-times): New defuns.
(tramp-crypt-handle-file-executable-p)
(tramp-crypt-handle-file-readable-p)
(tramp-crypt-handle-file-system-info)
(tramp-crypt-handle-set-file-modes): Fix implementation.

* test/lisp/net/tramp-tests.el: Adapt call convention
for (tramp--test-crypt-p).

4 years ago* lisp/simple.el (shell-command-on-region): Handle nil replace on rectangles.
Juri Linkov [Mon, 8 Jun 2020 23:34:53 +0000 (02:34 +0300)]
* lisp/simple.el (shell-command-on-region): Handle nil replace on rectangles.

When 'region-noncontiguous-p' is non-nil (rectangular region)
but 'replace' is nil, pop up the shell output buffer (bug#41440).
When 'replace' is non-nil, trim the trailing newline.

4 years ago* lisp/simple.el (shell-command-on-region): Fix docstring.
Juri Linkov [Mon, 8 Jun 2020 23:28:53 +0000 (02:28 +0300)]
* lisp/simple.el (shell-command-on-region): Fix docstring.

* lisp/simple.el (shell-command-on-region): Mention REGION-NONCONTIGUOUS-P
in docstring (bug#41440)

* etc/NEWS: Better example for 'windmove-display-default-keybindings'.

4 years agoClean up D-Bus documentation (bug#41744)
Basil L. Contovounesios [Fri, 5 Jun 2020 23:58:37 +0000 (00:58 +0100)]
Clean up D-Bus documentation (bug#41744)

* doc/lispref/errors.texi (Standard Errors): The error symbol
dbus-error is defined even when Emacs is built without D-Bus.

* doc/misc/dbus.texi (Bus Names, Introspection)
(Nodes and Interfaces, Methods and Signal)
(Properties and Annotations, Arguments and Signatures)
(Synchronous Methods, Receiving Method Calls, Signals)
(Alternative Buses, Errors and Events): Clarify wording.  Fix
indentation of and simplify examples where possible.  Improve
Texinfo markup and cross-referencing where possible.
(Type Conversion): Ditto.  Remove mentions of Emacs' fixnum range
now that we have bignums.

* lisp/net/dbus.el (dbus-return-values-table)
(dbus-call-method-asynchronously, dbus-send-signal)
(dbus-register-signal, dbus-register-method)
(dbus-string-to-byte-array, dbus-byte-array-to-string)
(dbus-escape-as-identifier, dbus-check-event, dbus-event-bus-name)
(dbus-event-message-type, dbus-event-serial-number)
(dbus-event-service-name, dbus-event-path-name)
(dbus-event-interface-name, dbus-event-member-name)
(dbus-list-activatable-names, dbus-list-queued-owners, dbus-ping)
(dbus-introspect-get-interface-names, dbus-introspect-get-interface)
(dbus-introspect-get-method, dbus-introspect-get-signal)
(dbus-introspect-get-property, dbus-introspect-get-annotation-names)
(dbus-introspect-get-annotation, dbus-introspect-get-argument-names)
(dbus-introspect-get-argument, dbus-introspect-get-signature)
(dbus-set-property, dbus-register-property)
(dbus-get-all-managed-objects, dbus-init-bus): Clarify docstring and
improve formatting where possible.
(dbus-call-method): Ditto.  Remove mentions of Emacs' fixnum range
now that we have bignums.

4 years agoMore robust NS hex colour string parsing
Mattias Engdegård [Mon, 8 Jun 2020 11:06:51 +0000 (13:06 +0200)]
More robust NS hex colour string parsing

Invalid arguments to color-values, such as "#abcdefg" or "#1234", or
valid ones like "#111222333", should not yield nonsense values.

* src/nsterm.m (ns_get_color):
Only accept "#RGB" strings with 1-4 digits per components, equal number
of digits each, and no trailing characters.  Parse 12-bit colours
correctly.

4 years agoAdd autoload problem in tramp-crypt.el.
Michael Albinus [Mon, 8 Jun 2020 08:18:35 +0000 (10:18 +0200)]
Add autoload problem in tramp-crypt.el.

* lisp/net/tramp-crypt.el (tramp-crypt-encfs-config):
Add ;;;###tramp-autoload cookie.
(tramp-crypt-directories): Move it up.
(tramp-crypt-file-name-p): Move it up.  Add ;;;###tramp-autoload
cookie.  Make it a defsubst.

* test/lisp/net/tramp-tests.el (tramp-crypt): Do not require.

4 years ago* lisp/image-mode.el (image-transform-original): New command (bug#41222).
Juri Linkov [Mon, 8 Jun 2020 00:30:27 +0000 (03:30 +0300)]
* lisp/image-mode.el (image-transform-original): New command (bug#41222).

(image-mode-map): Bind it to "so" and add to menu.

4 years agoMove tab-bar and tab-line faces to faces.el (part of bug#41200)
Juri Linkov [Mon, 8 Jun 2020 00:21:42 +0000 (03:21 +0300)]
Move tab-bar and tab-line faces to faces.el (part of bug#41200)

These are basic faces, so they need to be defined in
faces.el, otherwise (get 'tab-line 'face) returns 0.

* lisp/faces.el (tab-bar, tab-line): Move faces here
from tab-bar.el and tab-line.el.

* lisp/tab-bar.el (tab-bar): Move face to faces.el.
(tab-bar-faces): Add '((tab-bar custom-face))
to the second arg MEMBERS of 'defgroup'.

* lisp/tab-line.el (tab-line): Move face to faces.el.
(tab-line-faces): Add '((tab-line custom-face))
to the second arg MEMBERS of 'defgroup'.

4 years agoUse lexical-binding in lunar.el and add tests
Stefan Kangas [Sun, 7 Jun 2020 17:57:45 +0000 (19:57 +0200)]
Use lexical-binding in lunar.el and add tests

* lisp/calendar/lunar.el: Use lexical-binding.
(lunar-phases, diary-lunar-phases): Silence byte-compiler.
* test/lisp/calendar/lunar-tests.el: New file.

4 years ago* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns): Add `make-byte-code'.
Andrea Corallo [Sun, 7 Jun 2020 13:09:38 +0000 (15:09 +0200)]
* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns): Add `make-byte-code'.

`make-byte-code' wraps `vector' doing some sanity check on the input
arguments.  `vector' is in side-effect-and-error-free-fns so add
`make-byte-code' to side-effect-free-fns.

4 years ago* test/lisp/net/tramp-tests.el: tramp-crypt-file-name-p not autoloaded.
Glenn Morris [Sun, 7 Jun 2020 17:37:29 +0000 (10:37 -0700)]
* test/lisp/net/tramp-tests.el: tramp-crypt-file-name-p not autoloaded.

4 years agoMerge from origin/emacs-27
Glenn Morris [Sun, 7 Jun 2020 16:03:59 +0000 (09:03 -0700)]
Merge from origin/emacs-27

35661ef943 (origin/emacs-27) Fix typo in "(elisp) Type Keywords"
1af0e95fec Gnus nnir-summary-line-format has no effect
dd366b5d3b Improve documentation of 'window-text-pixel-size'
fbd49f969e * src/xdisp.c (Fwindow_text_pixel_size): Doc fix.  (Bug#41...
d8593fd19f Minor improvements to EDE and EIEIO manuals
3916e63f9e Have Fido mode also imitate Ido mode in ignore-case options
cc35b197c7 Update package-menu-quick-help
bf09106256 Improve documentation of 'sort-subr'
73749efa13 Update Ukrainian transliteration
30a7ee505a Fix Arabic shaping when eww/shr fill the text to be rendered
7d323f07c0 Silence some byte-compiler warnings in tests
cf473e742f * test/lisp/battery-tests.el: New file.
b07e3b1d97 Improve format-spec documentation (bug#41571)

# Conflicts:
# test/lisp/emacs-lisp/package-tests.el

4 years agoFix typo in "(elisp) Type Keywords"
Basil L. Contovounesios [Sun, 7 Jun 2020 15:46:12 +0000 (16:46 +0100)]
Fix typo in "(elisp) Type Keywords"

* doc/lispref/customize.texi (Type Keywords): Fix typo of 'choice'
composite type.  (Bug#41749)

4 years ago* lisp/progmodes/js.el (js-mode): Remove second call to c-init-language-vars
Alan Mackenzie [Sun, 7 Jun 2020 15:14:15 +0000 (15:14 +0000)]
* lisp/progmodes/js.el (js-mode): Remove second call to c-init-language-vars

This spurious second call fouled up already set configuration variables.
Fixes bug #41649.

4 years agoAdd file encryption to Tramp
Michael Albinus [Sun, 7 Jun 2020 14:57:32 +0000 (16:57 +0200)]
Add file encryption to Tramp

* lisp/net/tramp-crypt.el: New file.

* lisp/net/tramp.el (tramp-run-real-handler):
Add `tramp-crypt-file-name-handler'.
(tramp-register-file-name-handlers):
Call `tramp-register-crypt-file-name-handler'.
(tramp-handle-insert-file-contents, tramp-local-host-p): Check for
`tramp-crypt-enabled'

* test/lisp/net/tramp-tests.el (tramp--test-crypt-p): New defun.
(tramp-test24-file-acl, tramp-test25-file-selinux)
(tramp-test28-process-file, tramp-test29-start-file-process)
(tramp-test30-make-process, tramp-test31-interrupt-process)
(tramp-test32-shell-command)
(tramp-test32-shell-command-dont-erase-buffer)
(tramp-test33-environment-variables)
(tramp-test33-environment-variables-and-port-numbers)
(tramp-test34-explicit-shell-file-name, tramp-test35-exec-path)
(tramp-test35-remote-path, tramp-test36-vc-registered)
(tramp--test-check-files, tramp-test43-asynchronous-requests): Use it.

4 years agoTramp code cleanup
Michael Albinus [Sun, 7 Jun 2020 14:56:59 +0000 (16:56 +0200)]
Tramp code cleanup

* lisp/net/tramp-cache.el (tramp-get-connection-property): Cleanup.

* lisp/net/tramp-cmds.el (tramp-cleanup-all-connections): Delete also
connection processes.

* lisp/net/tramp-sh.el (tramp-set-remote-path): Cache 4096 even if
PIPE_BUF doesn't exist.

4 years agoUse 65535 as color-values scale value in the NS backend
Mattias Engdegård [Sat, 6 Jun 2020 09:23:48 +0000 (11:23 +0200)]
Use 65535 as color-values scale value in the NS backend

* src/nsfns.m (Fxw_color_values): Scale with 65535 instead of 65280, for
uniformity with other backends.
* lisp/faces.el (color-values): Update doc string.
* doc/lispref/frames.texi (Color Names): Update examples.

4 years agoGnus nnir-summary-line-format has no effect
Tassilo Horn [Sun, 7 Jun 2020 08:01:41 +0000 (10:01 +0200)]
Gnus nnir-summary-line-format has no effect

* lisp/gnus/nnir.el (nnir-mode): Update summary format specs if
nnir-summary-line-format is set and different from
gnus-summary-line-format.
(nnir-open-server): Run nnir-mode in gnus-summary-generate-hook
instead of gnus-summary-prepared-hook.

4 years agoThe key prefix 'C-x t t' displays next command buffer in a new tab (bug#41691)
Juri Linkov [Sat, 6 Jun 2020 23:42:24 +0000 (02:42 +0300)]
The key prefix 'C-x t t' displays next command buffer in a new tab (bug#41691)

* lisp/tab-bar.el (other-tab-prefix): New command.
(tab-prefix-map): Bind key 'C-x t t' to other-tab-prefix.

* lisp/windmove.el (windmove-display-in-direction):
Use display-buffer-override-next-command.

* lisp/window.el (display-buffer-override-next-command):
New function refactored from windmove-display-in-direction.

4 years agomake-text-button no longer modifies its string arg
Paul Eggert [Sat, 6 Jun 2020 19:05:10 +0000 (12:05 -0700)]
make-text-button no longer modifies its string arg

* etc/NEWS: Mention this.
* lisp/apropos.el (apropos-library-button):
* lisp/ibuf-ext.el (ibuffer-old-saved-filters-warning):
There’s no longer a need copy make-text-button’s string arg.
* lisp/button.el (make-text-button): Return a copy of a string arg.
Delay making the copy until after error-checking.

4 years agoImprove documentation of 'window-text-pixel-size'
Eli Zaretskii [Sat, 6 Jun 2020 17:10:37 +0000 (20:10 +0300)]
Improve documentation of 'window-text-pixel-size'

* doc/lispref/display.texi (Size of Displayed Text): Clarify the
description of 'window-text-pixel-size'.

4 years ago* src/xdisp.c (Fwindow_text_pixel_size): Doc fix. (Bug#41737)
Eli Zaretskii [Sat, 6 Jun 2020 16:53:08 +0000 (19:53 +0300)]
* src/xdisp.c (Fwindow_text_pixel_size): Doc fix.  (Bug#41737)

4 years agoUn-deprecate oset and oset-default
Basil L. Contovounesios [Wed, 3 Jun 2020 16:35:59 +0000 (17:35 +0100)]
Un-deprecate oset and oset-default

For discussion see the following threads:
https://lists.gnu.org/archive/html/emacs-devel/2020-05/msg00630.html
https://lists.gnu.org/archive/html/emacs-devel/2020-05/msg00674.html
https://lists.gnu.org/archive/html/emacs-devel/2020-06/msg00099.html

* lisp/emacs-lisp/eieio.el (oset, oset-default): Un-deprecate.
* lisp/emacs-lisp/eieio-core.el (eieio-oref): Declare gv-setter here
instead of in lisp/emacs-lisp/eieio.el.  Suggested by
Stefan Monnier <monnier@iro.umontreal.ca>.
(eieio-oref-default): Add gv-setter declaration.
* etc/NEWS: Announce these changes.
* doc/misc/eieio.texi (Accessing Slots): Document oref and
oref-default as generalized variables.  Consistently document
getters before setters.
* test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: Use
lexical-binding.
(eieio-test-13-init-methods): Simplify.
(eieio-test-33-instance-tracker): Declare IT-list as special.

4 years agoMinor improvements to EDE and EIEIO manuals
Basil L. Contovounesios [Wed, 3 Jun 2020 16:31:44 +0000 (17:31 +0100)]
Minor improvements to EDE and EIEIO manuals

For discussion, see the following threads:
https://lists.gnu.org/archive/html/emacs-devel/2020-05/msg00630.html
https://lists.gnu.org/archive/html/emacs-devel/2020-06/msg00099.html

* doc/misc/ede.texi (ede-generic-project): Clean up example.
* doc/misc/eieio.texi (Accessing Slots): Document slot-value as a
generalized variable and set-slot-value as obsolete.
(Predicates): Fix typo.
(Introspection): Document eieio-class-slots in place of the obsolete
object-slots.

4 years agoImprove battery status display via GNU/Linux sysfs
Ellington Santos [Tue, 26 May 2020 14:37:04 +0000 (11:37 -0300)]
Improve battery status display via GNU/Linux sysfs

* lisp/battery.el (battery-linux-sysfs): Support %b format.
Improve the display of %p.  (Bug#41542)

Copyright-paperwork-exempt: yes

4 years agoHave Fido mode also imitate Ido mode in ignore-case options
João Távora [Fri, 5 Jun 2020 22:36:55 +0000 (23:36 +0100)]
Have Fido mode also imitate Ido mode in ignore-case options

Suggested by Sean Whitton <spwhitton@spwhitton.name>.

* lisp/icomplete.el (icomplete--fido-mode-setup): Set ignore-case
options.

4 years agoUpdate package-menu-quick-help
Basil L. Contovounesios [Fri, 5 Jun 2020 13:02:41 +0000 (14:02 +0100)]
Update package-menu-quick-help

* lisp/emacs-lisp/package.el (package--quick-help-keys): Filtering
is now bound to the prefix '/', not the key 'f' (bug#41721).
Advertise only the standard 'g' binding now that both it and 'r' are
bound to revert-buffer (bug#35504).
(package--prettify-quick-help-key): Avoid modifying string literals.
(package-menu-filter): Reintroduce as obsolete alias of
package-menu-filter-by-keyword for backward
compatibility (bug#36981).

4 years agoAvoid zero-width glyphs and the resulting cursor artifacts
Pip Cet [Thu, 4 Jun 2020 22:28:53 +0000 (22:28 +0000)]
Avoid zero-width glyphs and the resulting cursor artifacts

* src/xdisp.c (fill_gstring_glyph_string): Handle unavailable glyphs.
(append_composite_glyph): Mark unavailable glyphs.
(gui_produce_glyphs): Make glyphs unavailable for zero-width
compositions.  (Bug#41645)

4 years agoImprove documentation of 'sort-subr'
Eli Zaretskii [Fri, 5 Jun 2020 08:30:03 +0000 (11:30 +0300)]
Improve documentation of 'sort-subr'

* doc/lispref/text.texi (Sorting): Clarify the meaning and use of
PREDICATE argument to 'sort-subr'.  (Bug#41706)

4 years agoUpdate Ukrainian transliteration
Andrii Kolomoiets [Wed, 3 Jun 2020 11:14:57 +0000 (14:14 +0300)]
Update Ukrainian transliteration

* lisp/language/cyril-util.el (standard-display-cyrillic-translit):
Add missing letter "ґ"; tweak letter "г".  (Bug#41683)

4 years agoFix Arabic shaping when eww/shr fill the text to be rendered
Eli Zaretskii [Fri, 5 Jun 2020 07:56:01 +0000 (10:56 +0300)]
Fix Arabic shaping when eww/shr fill the text to be rendered

* src/hbfont.c (hbfont_shape): Don't use DIRECTION if the current
buffer has bidi reordering disabled.  (Bug#41005)

4 years agoStreamline live_*_holding
Paul Eggert [Fri, 5 Jun 2020 01:46:11 +0000 (18:46 -0700)]
Streamline live_*_holding

(live_string_holding, live_cons_holding, live_symbol_holding)
(live_float_p, live_vector_holding):
Assert that m->type is correct, instead of testing this at
runtime.  All callers changed.
(live_large_vector_holding, live_small_vector_holding):
Now two functions instead of the old live_vector_holding.
All callers changed.
(live_large_vector_p, live_small_vector_p):
Now two functions instead of the old live_vector_p.
All callers changed.
(mark_maybe_object): Ignore Lisp_Type_Unused0 quickly too,
since that cannot possibly be an object.
(CHECK_LIVE, CHECK_ALLOCATED_AND_LIVE):
New arg MEM_TYPE.  All callers changed.
(CHECK_ALLOCATED_AND_LIVE_SYMBOL): Simplify by combining
GC_CHECK_MARKED_OBJECTS code.

4 years agoMake live_*_p more accurate
Paul Eggert [Fri, 5 Jun 2020 01:46:10 +0000 (18:46 -0700)]
Make live_*_p more accurate

* src/alloc.c (live_string_holding, live_cons_holding)
(live_symbol_holding, live_vector_holding):
Return a C pointer, not a Lisp_Object.  All callers changed.
This helps the compiler a bit.
(live_string_p, live_cons_p, live_symbol_p, live_vector_p):
Require that P point directly at the object, rather than
somewhere within the object.  This fixes some false positives
with valid_lisp_object_p (used only in debugging).
(mark_maybe_object): Rely on the new accuracy.

4 years agoFix some side-effecting uses of make-text-button
Basil L. Contovounesios [Thu, 4 Jun 2020 22:08:28 +0000 (23:08 +0100)]
Fix some side-effecting uses of make-text-button

For discussion, see the following thread:
https://lists.gnu.org/archive/html/emacs-devel/2020-06/msg00117.html

* lisp/apropos.el (apropos-library-button):
* lisp/help-fns.el (help-fns--first-release): Return result of
make-text-button instead of relying on its side effects.
* lisp/ibuf-ext.el (ibuffer-old-saved-filters-warning): Avoid
modifying an immutable string.

4 years ago* lisp/dired.el (dired-toggle-marks): Use region for non-nil dired-mark-region
Juri Linkov [Thu, 4 Jun 2020 22:17:30 +0000 (01:17 +0300)]
* lisp/dired.el (dired-toggle-marks): Use region for non-nil dired-mark-region

(dired-mark--region-use-p, dired-mark--region-beginning)
(dired-mark--region-end): New internal functions.
(dired-mark-if): Use new functions.  (Bug#39902)

4 years agoChange default project list filename to "projects"
Simen Heggestøyl [Thu, 4 Jun 2020 17:58:36 +0000 (19:58 +0200)]
Change default project list filename to "projects"

* lisp/progmodes/project.el (project-list-file): Change the default
filename to "projects".

4 years agoUse characters for keys in project-switch-commands
Simen Heggestøyl [Thu, 4 Jun 2020 17:56:32 +0000 (19:56 +0200)]
Use characters for keys in project-switch-commands

* lisp/progmodes/project.el (project-switch-commands): Use
characters for keys instead of string for better future
compatibility with 'read-multiple-choice'.
(project-switch-project): Adjust to above change.

4 years ago; Small cleanup in project.el
Simen Heggestøyl [Thu, 4 Jun 2020 17:29:10 +0000 (19:29 +0200)]
; Small cleanup in project.el

* lisp/progmodes/project.el (project--add-to-project-list-front):
Minor simplification after recent changes.

4 years ago* lisp/font-lock.el (font-lock--syntax-table-affects-ppss): New var
Stefan Monnier [Thu, 4 Jun 2020 13:58:22 +0000 (09:58 -0400)]
* lisp/font-lock.el (font-lock--syntax-table-affects-ppss): New var

This tries to make `font-lock-syntax-table` work correctly even when
it changes the parsing of strings and comments, as was the case in
`font-latex.el`.

We should probably deprecate the use of `font-lock-syntax-table` since
the present fix is still not 100% and since it comes with performance
problems in large files.

(font-lock-set-defaults): Set it.
(font-lock-fontify-syntactically-region): Don't use `syntax-ppss`
when we think that `font-lock-syntax-table` would interfere.

4 years ago; * test/src/xfaces-tests.el (xfaces-color-distance): Fix bug id
Mattias Engdegård [Thu, 4 Jun 2020 08:55:16 +0000 (10:55 +0200)]
; * test/src/xfaces-tests.el (xfaces-color-distance): Fix bug id

4 years agoDon’t default to Valgrind unless ENABLE_CHECKING
Paul Eggert [Thu, 4 Jun 2020 01:58:45 +0000 (18:58 -0700)]
Don’t default to Valgrind unless ENABLE_CHECKING

* src/alloc.c (USE_VALGRIND): If not defined, don’t default it to
1 unless ENABLE_CHECKING.  The Valgrind hooks bloat the garbage
collector a bit in production, and there’s no need for them these
days if one has a Valgrind suppressions file (which one needs anyway).
(mark_maybe_pointer): Use ‘#if USE_VALGRIND’ instead of ‘#ifdef
USE_VALGRIND’ for consistency with other uses of USE_VALGRIND.
This is in case someone builds with ‘-DENABLE_CHECKING
-DUSE_VALGRIND=0’ in CFLAGS.

4 years agoRevert make-text-button string copy
Paul Eggert [Thu, 4 Jun 2020 01:15:54 +0000 (18:15 -0700)]
Revert make-text-button string copy

* lisp/button.el (make-text-button): Don’t make a copy of
a button’s string label.  This reverts the change made in
2020-05-17T05:23:28Z!eggert@cs.ucla.edu, which broke SLY.
Problem reported by João Távora in:
https://lists.gnu.org/r/emacs-devel/2020-06/msg00117.html
However, we’ll need a better fix for this once string
literals become contents, if SLY uses string constants
for text button labels.

4 years agoFix make-text-button bug with string copy
Paul Eggert [Wed, 3 Jun 2020 22:39:29 +0000 (15:39 -0700)]
Fix make-text-button bug with string copy

* lisp/button.el (make-text-button): Use the copy of BEG
uniformly, instead of in just one place.  This fixes a typo
introduced in 2020-05-17T05:23:28Z!eggert@cs.ucla.edu.
Problem reported by João Távora in:
https://lists.gnu.org/r/emacs-devel/2020-06/msg00117.html

4 years agoEnsure Jsonrpc processes are created in correct buffer
João Távora [Wed, 3 Jun 2020 19:53:35 +0000 (20:53 +0100)]
Ensure Jsonrpc processes are created in correct buffer

Report and original implementation by Steve Purcell
<steve@sanityinc.com>.  See also See
https://github.com/joaotavora/eglot/pull/493 for details

* lisp/jsonrpc.el (initialize-instance): Make process in original
buffer.
(Version): Bump to 1.0.12

4 years agoMake color-distance symmetric and more accurate
Mattias Engdegård [Tue, 2 Jun 2020 20:31:14 +0000 (22:31 +0200)]
Make color-distance symmetric and more accurate

* src/xfaces.c (color_distance): Don't throw away the low 8 bits of
the colours, and make the function symmetric (bug41544)
(Fcolor_distance): Add caution about this not being a true metric.
* test/src/xfaces-tests.el: New file.

4 years ago; Clean up recent project.el additions
Basil L. Contovounesios [Wed, 3 Jun 2020 10:45:54 +0000 (11:45 +0100)]
; Clean up recent project.el additions

* lisp/progmodes/project.el (project): Add :version tag.
(project-list-file): Fix custom :type and add :version tag.

4 years agoHandle mid-gstring face changes
Pip Cet [Sun, 31 May 2020 19:55:48 +0000 (19:55 +0000)]
Handle mid-gstring face changes

* src/xdisp.c (fill_gstring_glyph_string): Don't extend the glyph
string past face changes.  (Bug#41454)

4 years agoFix bug in recent byte-code checking hoist
Paul Eggert [Wed, 3 Jun 2020 01:40:10 +0000 (18:40 -0700)]
Fix bug in recent byte-code checking hoist

Problem reported by Daniel Colascione (Bug#41680).
* src/lread.c (read1): Check that AREF (tmp, COMPILED_BYTECODE)
is a string before subjecting it to STRING_MULTIBYTE.
Be more consistent about using AREF in the neighborhood,
to help prevent this sort of problem from recurring.

4 years agoSilence some byte-compiler warnings in tests
Basil L. Contovounesios [Tue, 2 Jun 2020 22:14:23 +0000 (23:14 +0100)]
Silence some byte-compiler warnings in tests

* test/lisp/emacs-lisp/cl-generic-tests.el:
* test/lisp/progmodes/elisp-mode-tests.el: Declare functions
referred to within macroexpansions.
(xref-elisp-overloadable-no-default)
(xref-elisp-overloadable-co-located-default)
(xref-elisp-overloadable-separate-default): Prefix unused arguments
with underscore.

* test/lisp/international/ccl-tests.el:
* test/lisp/wdired-tests.el:
* test/lisp/emacs-lisp/package-tests.el: Declare functions used.
(package-test-update-archives, package-test-signed): Use
revert-buffer in place of its obsolete alias package-menu-refresh.

* test/lisp/eshell/eshell-tests.el:
* test/lisp/mail/footnote-tests.el:
* test/src/buffer-tests.el: Require dependencies used.

* test/lisp/image/exif-tests.el: Remove unneeded (require 'seq).
(test-exit-direct-ascii-value): Actually perform the test.
* test/lisp/progmodes/sql-tests.el (sql-test-add-existing-product):
Fix typo.

* test/lisp/simple-tests.el (with-shell-command-dont-erase-buffer):
* test/src/data-tests.el (test-bool-vector-bv-from-hex-string)
(test-bool-vector-apply-mock-op): Remove unused local variables.

4 years ago* test/lisp/battery-tests.el: New file.
Basil L. Contovounesios [Tue, 2 Jun 2020 20:05:28 +0000 (21:05 +0100)]
* test/lisp/battery-tests.el: New file.

4 years agoAvoid losing composition state in handle_stop_backwards
Pip Cet [Sun, 31 May 2020 16:58:19 +0000 (16:58 +0000)]
Avoid losing composition state in handle_stop_backwards

* src/xdisp.c (handle_stop_backwards): Save composition iterator state
across our forward scan.  (Bug#41626)

4 years ago; NEWS updates
Dmitry Gutov [Tue, 2 Jun 2020 22:10:16 +0000 (01:10 +0300)]
; NEWS updates

4 years agoSmall cleanup
Dmitry Gutov [Tue, 2 Jun 2020 21:33:14 +0000 (00:33 +0300)]
Small cleanup

* lisp/progmodes/project.el (project--add-to-project-list-front):
Small simplification.
(project--remove-from-project-list): Remove oudated comment.

4 years agoproject-list-file: New user option
Dmitry Gutov [Tue, 2 Jun 2020 21:27:29 +0000 (00:27 +0300)]
project-list-file: New user option

* lisp/progmodes/project.el (project): New custom group.
(project-vc): Use it as parent.
(project-vc-merge-submodules): Tag with Emacs version.
(project-read-file-name-function): Assign to the 'project' group.
(project-list-file): New user option (bug#41600).
(project--write-project-list, project--read-project-list): Use it.

4 years ago; * src/composite.c (syms_of_composite): Fix last change.
Eli Zaretskii [Tue, 2 Jun 2020 17:46:26 +0000 (20:46 +0300)]
; * src/composite.c (syms_of_composite): Fix last change.

4 years agoFix Arabic composition rules
Eli Zaretskii [Tue, 2 Jun 2020 17:44:59 +0000 (20:44 +0300)]
Fix Arabic composition rules

* lisp/language/misc-lang.el (composition-function-table): Reorder
Arabic composition rules in descending order of lookback.

* src/composite.c (syms_of_composite): Document the order of rules
in 'composition-function-table'.