Skip to content

Commit

Permalink
Merge branch 'master' of https://github.com/emacs-mirror/emacs into pgtk
Browse files Browse the repository at this point in the history
  • Loading branch information
Yuuki Harano committed Mar 30, 2020
2 parents 180c564 + fa4eec5 commit 973a02e
Show file tree
Hide file tree
Showing 84 changed files with 1,366 additions and 1,042 deletions.
4 changes: 2 additions & 2 deletions admin/merge-gnulib
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,10 @@ GNULIB_MODULES='
careadlinkat close-stream copy-file-range
count-leading-zeros count-one-bits count-trailing-zeros
crypto/md5-buffer crypto/sha1-buffer crypto/sha256-buffer crypto/sha512-buffer
d-type diffseq dosname double-slash-root dtoastr dtotimespec dup2
d-type diffseq double-slash-root dtoastr dtotimespec dup2
environ execinfo explicit_bzero faccessat
fchmodat fcntl fcntl-h fdopendir
filemode filevercmp flexmember fpieee fstatat fsusage fsync futimens
filemode filename filevercmp flexmember fpieee fstatat fsusage fsync futimens
getloadavg getopt-gnu gettime gettimeofday gitlog-to-changelog
ieee754-h ignore-value intprops largefile lstat
manywarnings memmem-simple mempcpy memrchr minmax mkostemp mktime nstrftime
Expand Down
16 changes: 5 additions & 11 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -1246,18 +1246,12 @@ emacs_cv_ln_s_fileonly='cp -p'
dnl On MinGW, ensure we will call the MSYS /bin/ln.exe, not some
dnl random program in the current directory.
if (echo >conf$$.file) 2>/dev/null; then
if ln -s conf$$.file conf$$ 2>/dev/null; then
if test "$opsys" = "mingw32"; then
emacs_cv_ln_s_fileonly='/bin/ln -s'
else
emacs_cv_ln_s_fileonly='ln -s'
fi
if test "$opsys" = "mingw32"; then
emacs_cv_ln_s_fileonly=/bin/ln
elif ln -s conf$$.file conf$$ 2>/dev/null; then
emacs_cv_ln_s_fileonly='ln -s'
elif ln conf$$.file conf$$ 2>/dev/null; then
if test "$opsys" = "mingw32"; then
emacs_cv_ln_s_fileonly=/bin/ln
else
emacs_cv_ln_s_fileonly=ln
fi
emacs_cv_ln_s_fileonly=ln
fi
fi
Expand Down
28 changes: 26 additions & 2 deletions doc/emacs/building.texi
Original file line number Diff line number Diff line change
Expand Up @@ -975,9 +975,27 @@ displays the following frame layout:
@end group
@end smallexample

@findex gdb-save-window-configuration
@findex gdb-load-window-configuration
@vindex gdb-default-window-configuration-file
@vindex gdb-window-configuration-directory
You can customize the window layout based on the one above and save
that layout to a file using @code{gdb-save-window-configuration}.
Then you can later load this layout back using
@code{gdb-load-window-configuration}. (Internally, Emacs uses the
term window configuration instead of window layout.) You can set your
custom layout as the default one used by @code{gdb-many-windows} by
customizing @code{gdb-default-window-configuration-file}. If it is
not an absolute file name, GDB looks under
@code{gdb-window-configuration-directory} for the file.
@code{gdb-window-configuration-directory} defaults to
@code{user-emacs-directory} (@pxref{Find Init}).


@findex gdb-restore-windows
@findex gdb-many-windows
If you ever change the window layout, you can restore the many-windows
@vindex gdb-restore-window-configuration-after-quit
If you ever change the window layout, you can restore the default
layout by typing @kbd{M-x gdb-restore-windows}. To toggle
between the many windows layout and a simple layout with just the GUD
interaction buffer and a source file, type @kbd{M-x gdb-many-windows}.
Expand All @@ -988,7 +1006,13 @@ interaction buffer and a source file, type @kbd{M-x gdb-many-windows}.
of windows on your original frame will not be affected. A separate
frame for GDB sessions can come in especially handy if you work on a
text-mode terminal, where the screen estate for windows could be at a
premium.
premium. If you choose to start GDB in the same frame, consider
setting @code{gdb-restore-window-configuration-after-quit} to a
non-@code{nil} value. Your original layout will then be restored
after GDB quits. Use @code{t} to always restore; use
@code{if-gdb-many-windows} to restore only when
@code{gdb-many-windows} is non-@code{nil}; use @code{if-gdb-show-main}
to restore only when @code{gdb-show-main} is non-@code{nil}.

You may also specify additional GDB-related buffers to display,
either in the same frame or a different one. Select the buffers you
Expand Down
6 changes: 0 additions & 6 deletions doc/lispref/display.texi
Original file line number Diff line number Diff line change
Expand Up @@ -1318,12 +1318,6 @@ the buffer specified by @var{buffer-or-name} current for running
@var{body}.
@end defmac

@defmac with-displayed-buffer-window buffer-or-name action quit-function &rest body
This macro is like @code{with-current-buffer-window} but unlike that
displays the buffer specified by @var{buffer-or-name} @emph{before}
running @var{body}.
@end defmac

A window showing a temporary buffer can be fitted to the size of that
buffer using the following mode:

Expand Down
14 changes: 14 additions & 0 deletions doc/lispref/internals.texi
Original file line number Diff line number Diff line change
Expand Up @@ -2022,6 +2022,20 @@ variable values and buffer content may have been modified in arbitrary
ways.
@end deftypefn

@anchor{open_channel}
@deftypefun int open_channel (emacs_env *@var{env}, emacs_value @var{pipe_process})
This function, which is available since Emacs 28, opens a channel to
an existing pipe process. @var{pipe_process} must refer to an
existing pipe process created by @code{make-pipe-process}. @ref{Pipe
Processes}. If successful, the return value will be a new file
descriptor that you can use to write to the pipe. Unlike all other
module functions, you can use the returned file descriptor from
arbitrary threads, even if no module environment is active. You can
use the @code{write} function to write to the file descriptor. Once
done, close the file descriptor using @code{close}. @ref{Low-Level
I/O,,,libc}.
@end deftypefun

@node Module Nonlocal
@subsection Nonlocal Exits in Modules
@cindex nonlocal exits, in modules
Expand Down
1 change: 1 addition & 0 deletions doc/lispref/processes.texi
Original file line number Diff line number Diff line change
Expand Up @@ -743,6 +743,7 @@ Some file name handlers may not support @code{make-process}. In such
cases, this function does nothing and returns @code{nil}.
@end defun

@anchor{Pipe Processes}
@defun make-pipe-process &rest args
This function creates a bidirectional pipe which can be attached to a
child process. This is useful with the @code{:stderr} keyword of
Expand Down
9 changes: 9 additions & 0 deletions doc/lispref/windows.texi
Original file line number Diff line number Diff line change
Expand Up @@ -3048,6 +3048,15 @@ since there is no guarantee that an arbitrary caller of
@code{display-buffer} will be able to handle the case that no window
will display the buffer. @code{display-buffer-no-window} is the only
action function that cares about this entry.

@vindex body-function@r{, a buffer display action alist entry}
@item body-function
The value must be a function taking one argument (a displayed window).
This function can be used to fill the displayed window's body with
some contents. It is called @emph{after} the buffer is displayed, and
@emph{before} the entries @code{window-height}, @code{window-width}
and @code{preserve-size} are applied that could resize the window
to fit it to the inserted contents.
@end table

By convention, the entries @code{window-height}, @code{window-width}
Expand Down
8 changes: 8 additions & 0 deletions doc/misc/tramp.texi
Original file line number Diff line number Diff line change
Expand Up @@ -3776,6 +3776,14 @@ It is even possible to access file archives in file archives, as
@end group
@end lisp

@vindex tramp-archive-enabled
In order to disable file archives, you could add the following form to
your init file:

@lisp
(customize-set-variable 'tramp-archive-enabled nil)
@end lisp


@node Bug Reports
@chapter Reporting Bugs and Problems
Expand Down
83 changes: 66 additions & 17 deletions etc/NEWS
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ when using Cairo. Use 'ftcrhb' if your Emacs was built with HarfBuzz
text shaping support, and 'ftcr' otherwise. You can determine this by
checking 'system-configuration-features'. The 'ftcr' backend will
still be available when HarfBuzz is supported, but will not be used by
default. We strongly recommend building with HarBuzz support. 'x' is
default. We strongly recommend building with HarBuzz support. 'x' is
still a valid backend.

---
Expand All @@ -64,9 +64,9 @@ It was declared obsolete in Emacs 27.1.

* Changes in Emacs 28.1

** Support for '(box . SIZE)' cursor-type.
** Support for '(box . SIZE)' 'cursor-type'.
By default, 'box' cursor always has a filled box shape. But if you
specify cursor-type to be '(box . SIZE)', the cursor becomes a hollow
specify 'cursor-type' to be '(box . SIZE)', the cursor becomes a hollow
box if the point is on an image larger than 'SIZE' pixels in any
dimension.

Expand Down Expand Up @@ -97,24 +97,33 @@ shows equivalent key bindings for all commands that have them.
* Changes in Specialized Modes and Packages in Emacs 28.1

** Emacs-Lisp mode

*** The mode-line now indicates whether we're using lexical or dynamic scoping.

** Dired

*** New option 'dired-mark-region' affects all Dired commands that mark files.
When non-nil and the region is active in Transient Mark mode,
then Dired commands operate only on files in the active region.
The values 'exclusive' and 'inclusive' of this option define
the details of marking the last file at the end of the region.
*** New user option 'dired-mark-region' affects all Dired commands
that mark files. When non-nil and the region is active in Transient
Mark mode, then Dired commands operate only on files in the active
region. The values 'file' and 'line' of this user option define the
details of marking the file at the end of the region.

*** State changing VC operations are supported in Dired on files and
directories with the help of new command 'dired-vc-next-action'.

** Change Logs and VC

*** State changing VC operations are supported in dired-mode on files
(but still not on directories).
*** New command 'vc-dir-root' uses the root directory without asking.

** Gnus

---
*** Change to default value of 'message-draft-headers' option.
No longer includes the Date header.
*** Change to default value of 'message-draft-headers' user option.
The 'Date' symbol has been removed from the default value, meaning that
draft or delayed messages will get a date reflecting when the message
was sent. To restore the original behavior of dating a message
from when it is first saved or delayed, add the symbol 'Date' back to
this user option.

** Help

Expand Down Expand Up @@ -148,8 +157,8 @@ doc string functions. This makes the results of all doc string
functions accessible to the user through the existing single function hook
'eldoc-documentation-function'.

*** 'eldoc-documentation-function' is now a custom variable.
Modes should use the new hook instead of this variable to register
*** 'eldoc-documentation-function' is now a user option.
Modes should use the new hook instead of this user option to register
their backends.

** Tramp
Expand All @@ -171,6 +180,7 @@ effect.
*** Pcase 'map' pattern added keyword symbols abbreviation.
A pattern like '(map :sym)' binds the map's value for ':sym' to 'sym',
equivalent to '(map (:sym sym))'.

** Package

+++
Expand All @@ -186,17 +196,48 @@ key binding
/ v package-menu-filter-by-version
/ / package-menu-filter-clear

** gdb-mi

+++
*** gdb-mi can now store and restore window configurations.
Use 'gdb-save-window-configuration' to save window configuration to a
file and 'gdb-load-window-configuration' to load from a file. These
commands can also be accessed through the menu bar under 'Gud --
GDB-Windows'. 'gdb-default-window-configuration-file', when non-nil,
is loaded when GDB starts up.

+++
*** gdb-mi can now restore window configuration after quit.
Set 'gdb-restore-window-configuration-after-quit' to non-nil and Emacs
will remember the window configuration before GDB started and restore
it after GDB quits. A toggle button is also provided under 'Gud --
GDB-Windows'.

** Gravatar

---
*** New user option 'gravatar-service' for host to query for gravatars.
Defaults to 'libravatar', with 'unicornify' and 'gravatar' as options.

** Compilation mode

*** Regexp matching of messages is now case-sensitive by default.
The variable 'compilation-error-case-fold-search' can be set for
case-insensitive matching of messages when the old behaviour is
required, but the recommended solution is to use a correctly matching
regexp instead.


* New Modes and Packages in Emacs 28.1


* Incompatible Editing Changes in Emacs 28.1

** In nroff mode, 'center-line' is now bound to 'M-o M-s'.
** In 'nroff-mode', 'center-line' is now bound to 'M-o M-s'.
The original key binding was 'M-s', which interfered with I-search,
since the latter uses 'M-s' as a prefix key of the search prefix map.

** vc-print-branch-log shows the change log for BRANCH from its root
** 'vc-print-branch-log' shows the change log for BRANCH from its root
directory instead of the default directory.


Expand Down Expand Up @@ -225,10 +266,14 @@ It was used to allow loading Lisp libraries compiled by XEmacs, a
modified version of Emacs which is no longer actively maintained.
This is no longer supported, and setting this variable has no effect.

+++
** The macro 'with-displayed-buffer-window' is now obsolete.
Use macro 'with-current-buffer-window' with action alist entry 'body-function'.


* Lisp Changes in Emacs 28.1

** New macro 'dlet' to dynamically bind variables
** New macro 'dlet' to dynamically bind variables.

** The variable 'force-new-style-backquotes' has been removed.
This removes the final remaining trace of old-style backquotes.
Expand All @@ -242,6 +287,10 @@ called when the function object is garbage-collected. Use
'set_function_finalizer' to set the finalizer and
'get_function_finalizer' to retrieve it.

** Modules can now open a channel to an existing pipe process using
the new module function 'open_channel'. Modules can use this
functionality to asynchronously send data back to Emacs.

** 'file-modes', 'set-file-modes', and 'set-file-times' now have an
optional argument specifying whether to follow symbolic links.

Expand Down
2 changes: 1 addition & 1 deletion lib-src/emacsclient.c
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ char *w32_getenv (const char *);
#include <sys/stat.h>
#include <unistd.h>

#include <dosname.h>
#include <filename.h>
#include <intprops.h>
#include <min-max.h>
#include <pathmax.h>
Expand Down
2 changes: 1 addition & 1 deletion lib/at-func.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

/* written by Jim Meyering */

#include "dosname.h" /* solely for definition of IS_ABSOLUTE_FILE_NAME */
#include "filename.h" /* solely for definition of IS_ABSOLUTE_FILE_NAME */

#ifdef GNULIB_SUPPORT_ONLY_AT_FDCWD
# include <errno.h>
Expand Down
2 changes: 1 addition & 1 deletion lib/canonicalize-lgpl.c
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@
# define __realpath realpath
# include "pathmax.h"
# include "malloca.h"
# include "dosname.h"
# include "filename.h"
# if HAVE_GETCWD
# if IN_RELOCWRAPPER
/* When building the relocatable program wrapper, use the system's getcwd
Expand Down
52 changes: 0 additions & 52 deletions lib/dosname.h

This file was deleted.

Loading

0 comments on commit 973a02e

Please sign in to comment.