<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emacs/etc, branch scratch/macos-process-args</title>
<subtitle>Emacs is the extensible, customizable, self-documenting real-time display editor. 
</subtitle>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/'/>
<entry>
<title>Add condition-case success handler (bug#47677)</title>
<updated>2021-04-15T13:41:13+00:00</updated>
<author>
<name>Mattias Engdegård</name>
</author>
<published>2021-04-07T09:31:07+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=7893945cc8f9421d0be5b07b9ed404bdf25ce140'/>
<id>7893945cc8f9421d0be5b07b9ed404bdf25ce140</id>
<content type='text'>
Allow a condition-case handler on the form (:success BODY) to be
specified as the success continuation of the protected form, with
the specified variable bound to its result.

* src/eval.c (Fcondition_case): Update the doc string.
(internal_lisp_condition_case): Implement in interpreter.
(syms_of_eval): Defsym :success.
* lisp/emacs-lisp/bytecomp.el (byte-compile-condition-case):
Implement in byte-compiler.
* lisp/emacs-lisp/cl-macs.el (cl--self-tco): Allow self-TCO
from success handler.
* doc/lispref/control.texi (Handling Errors): Update manual.
* etc/NEWS: Announce.
* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--test-cases)
(bytecomp-condition-case-success):
* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs--labels):
Add test cases.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Allow a condition-case handler on the form (:success BODY) to be
specified as the success continuation of the protected form, with
the specified variable bound to its result.

* src/eval.c (Fcondition_case): Update the doc string.
(internal_lisp_condition_case): Implement in interpreter.
(syms_of_eval): Defsym :success.
* lisp/emacs-lisp/bytecomp.el (byte-compile-condition-case):
Implement in byte-compiler.
* lisp/emacs-lisp/cl-macs.el (cl--self-tco): Allow self-TCO
from success handler.
* doc/lispref/control.texi (Handling Errors): Update manual.
* etc/NEWS: Announce.
* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--test-cases)
(bytecomp-condition-case-success):
* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs--labels):
Add test cases.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add two optional arguments to 'string-width'</title>
<updated>2021-04-14T08:47:55+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2021-04-14T08:47:55+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=d1559ede54684513b79025ade2b4677447c7a487'/>
<id>d1559ede54684513b79025ade2b4677447c7a487</id>
<content type='text'>
* src/character.c (Fstring_width, lisp_string_width): Accept two
optional arguments FROM and TO, to indicate the substring to be
considered.
(Fstring_width): Add caveats in the doc string about display
features ignored by the function.  (Bug#47712)
* src/character.h (lisp_string_width): Update prototype.
* src/editfns.c (styled_format): Adjust call of lisp_string_width
to its changed signature.

* test/src/character-tests.el (character-test-string-width): New
file with tests for 'string-width'.

* doc/lispref/display.texi (Size of Displayed Text): Document
caveats of using 'string-width'.

* etc/NEWS: Announce the change.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/character.c (Fstring_width, lisp_string_width): Accept two
optional arguments FROM and TO, to indicate the substring to be
considered.
(Fstring_width): Add caveats in the doc string about display
features ignored by the function.  (Bug#47712)
* src/character.h (lisp_string_width): Update prototype.
* src/editfns.c (styled_format): Adjust call of lisp_string_width
to its changed signature.

* test/src/character-tests.el (character-test-string-width): New
file with tests for 'string-width'.

* doc/lispref/display.texi (Size of Displayed Text): Document
caveats of using 'string-width'.

* etc/NEWS: Announce the change.
</pre>
</div>
</content>
</entry>
<entry>
<title>* lisp/frame.el (delete-other-frames): Add universal prefix `iconify` arg</title>
<updated>2021-04-12T16:32:58+00:00</updated>
<author>
<name>Stefan Monnier</name>
</author>
<published>2021-04-12T16:32:07+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=9a6523dfd68a17ebf7049d2aae3fd02386d7cb04'/>
<id>9a6523dfd68a17ebf7049d2aae3fd02386d7cb04</id>
<content type='text'>
(frame--current-backround-mode): New function,
extracted from `frame-set-background-mode`.  Use `color-dark-p`.
(frame-set-background-mode): Use it.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(frame--current-backround-mode): New function,
extracted from `frame-set-background-mode`.  Use `color-dark-p`.
(frame-set-background-mode): Use it.
</pre>
</div>
</content>
</entry>
<entry>
<title>(define-minor-mode): Warn about use of pre-Emacs-21 style args</title>
<updated>2021-04-12T15:08:19+00:00</updated>
<author>
<name>Stefan Monnier</name>
</author>
<published>2021-04-12T15:08:19+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=6bec60ad3151825c2ee5f775848ea3d4c70c72a5'/>
<id>6bec60ad3151825c2ee5f775848ea3d4c70c72a5</id>
<content type='text'>
* lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
Use `advertised-calling-convention` to avoid promoting the old
style arguments.  Emit a wanring when old-style arguments are used.
Massage the docstring accordingly.
* doc/lispref/modes.texi (Defining Minor Modes): Document the keyword
arguments rather than the old-style positional arguments.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
Use `advertised-calling-convention` to avoid promoting the old
style arguments.  Emit a wanring when old-style arguments are used.
Massage the docstring accordingly.
* doc/lispref/modes.texi (Defining Minor Modes): Document the keyword
arguments rather than the old-style positional arguments.
</pre>
</div>
</content>
</entry>
<entry>
<title>; * etc/NEWS: Minor copyedits.</title>
<updated>2021-04-11T14:04:07+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2021-04-11T14:04:07+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=6b3ca89cac15f56c1d7980727bce8e24834d4949'/>
<id>6b3ca89cac15f56c1d7980727bce8e24834d4949</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add new icomplete-vertical-mode</title>
<updated>2021-04-10T22:51:05+00:00</updated>
<author>
<name>Gregory Heytings</name>
</author>
<published>2021-04-10T10:47:45+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=5761e9004aa73d3aa7c34be9a064a1e768c3129c'/>
<id>5761e9004aa73d3aa7c34be9a064a1e768c3129c</id>
<content type='text'>
Co-authored-by: João Távora &lt;joaotavora@gmail.com&gt;

* lisp/icomplete.el (icomplete-completions): Consider icomplete-vertical-mode.
(icomplete-vertical-mode-minibuffer-map): New map.
(icomplete--vertical-minibuffer-setup): New helper.
(icomplete-vertical-mode): New minor mode.

* doc/emacs/buffers.texi (Icomplete): Mention icomplete-vertical-mode.

* etc/NEWS: Mention icomplete-vertical-mode
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Co-authored-by: João Távora &lt;joaotavora@gmail.com&gt;

* lisp/icomplete.el (icomplete-completions): Consider icomplete-vertical-mode.
(icomplete-vertical-mode-minibuffer-map): New map.
(icomplete--vertical-minibuffer-setup): New helper.
(icomplete-vertical-mode): New minor mode.

* doc/emacs/buffers.texi (Icomplete): Mention icomplete-vertical-mode.

* etc/NEWS: Mention icomplete-vertical-mode
</pre>
</div>
</content>
</entry>
<entry>
<title>* etc/NEWS: Extend paragraph about &amp;define form and backtracking</title>
<updated>2021-04-10T19:54:12+00:00</updated>
<author>
<name>Philipp Stephani</name>
</author>
<published>2021-04-10T19:54:12+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=1d474ad69d19d01b047012734530fb4c5eb82144'/>
<id>1d474ad69d19d01b047012734530fb4c5eb82144</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>; * etc/NEWS: Fix the wording of a recently added entry.</title>
<updated>2021-04-10T18:17:09+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2021-04-10T18:17:09+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=15122b31040f8945d0998510abd52c7735b36bc7'/>
<id>15122b31040f8945d0998510abd52c7735b36bc7</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add support for --seccomp command-line option.</title>
<updated>2021-04-10T16:47:26+00:00</updated>
<author>
<name>Philipp Stephani</name>
</author>
<published>2020-12-14T20:25:11+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=be8328acf9aa464f848e682e63e417a18529af9e'/>
<id>be8328acf9aa464f848e682e63e417a18529af9e</id>
<content type='text'>
When passing this option on GNU/Linux, Emacs installs a Secure
Computing kernel system call filter.  See Bug#45198.

* configure.ac: Check for seccomp header.

* src/emacs.c (usage_message): Document --seccomp option.
(emacs_seccomp): New wrapper for 'seccomp' syscall.
(load_seccomp, maybe_load_seccomp): New helper functions.
(main): Potentially load seccomp filters during startup.
(standard_args): Add --seccomp option.

* lisp/startup.el (command-line): Detect and ignore --seccomp option.

* test/src/emacs-tests.el (emacs-tests/seccomp/absent-file)
(emacs-tests/seccomp/empty-file)
(emacs-tests/seccomp/file-too-large)
(emacs-tests/seccomp/invalid-file-size): New unit tests.
(emacs-tests--with-temp-file): New helper macro.

* etc/NEWS: Document new --seccomp option.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When passing this option on GNU/Linux, Emacs installs a Secure
Computing kernel system call filter.  See Bug#45198.

* configure.ac: Check for seccomp header.

* src/emacs.c (usage_message): Document --seccomp option.
(emacs_seccomp): New wrapper for 'seccomp' syscall.
(load_seccomp, maybe_load_seccomp): New helper functions.
(main): Potentially load seccomp filters during startup.
(standard_args): Add --seccomp option.

* lisp/startup.el (command-line): Detect and ignore --seccomp option.

* test/src/emacs-tests.el (emacs-tests/seccomp/absent-file)
(emacs-tests/seccomp/empty-file)
(emacs-tests/seccomp/file-too-large)
(emacs-tests/seccomp/invalid-file-size): New unit tests.
(emacs-tests--with-temp-file): New helper macro.

* etc/NEWS: Document new --seccomp option.
</pre>
</div>
</content>
</entry>
<entry>
<title>Edebug: Disable backtracking when hitting a &amp;define keyword.</title>
<updated>2021-04-10T16:19:49+00:00</updated>
<author>
<name>Philipp Stephani</name>
</author>
<published>2021-03-18T11:40:08+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=53dfd85a7f971875e716a55f010ee508bce89eed'/>
<id>53dfd85a7f971875e716a55f010ee508bce89eed</id>
<content type='text'>
Edebug doesn't deal well with backtracking out of definitions, see
Bug#41988.  Rather than trying to support this rare situation (e.g. by
implementing a multipass parser), prevent it by adding an implicit
gate.

* lisp/emacs-lisp/edebug.el (edebug--match-&amp;-spec-op): Disable
backtracking when hitting a &amp;define keyword.

* test/lisp/emacs-lisp/edebug-tests.el
(edebug-tests-duplicate-&amp;define): New unit test.
(edebug-tests--duplicate-&amp;define): New helper macro.

* doc/lispref/edebug.texi (Backtracking): Mention &amp;define in the list
of constructs that disable backtracking.

* etc/NEWS: Document new behavior.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Edebug doesn't deal well with backtracking out of definitions, see
Bug#41988.  Rather than trying to support this rare situation (e.g. by
implementing a multipass parser), prevent it by adding an implicit
gate.

* lisp/emacs-lisp/edebug.el (edebug--match-&amp;-spec-op): Disable
backtracking when hitting a &amp;define keyword.

* test/lisp/emacs-lisp/edebug-tests.el
(edebug-tests-duplicate-&amp;define): New unit test.
(edebug-tests--duplicate-&amp;define): New helper macro.

* doc/lispref/edebug.texi (Backtracking): Mention &amp;define in the list
of constructs that disable backtracking.

* etc/NEWS: Document new behavior.
</pre>
</div>
</content>
</entry>
</feed>
