From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Michael Albinus Newsgroups: gmane.emacs.devel Subject: Re: Documenting universal-async-argument Date: Fri, 17 Aug 2018 17:02:02 +0200 Message-ID: <87y3d5c9zp.fsf@gmx.de> References: <87ftzq8jze.fsf@gmx.de> <8336vqqikk.fsf@gnu.org> <87h8k6upoa.fsf@gmx.de> <83wot2p2eu.fsf@gnu.org> <87tvo6t9hx.fsf@gmx.de> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: blaine.gmane.org 1534518235 26391 195.159.176.226 (17 Aug 2018 15:03:55 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Fri, 17 Aug 2018 15:03:55 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) Cc: emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Aug 17 17:03:51 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fqgHz-0006ik-Lu for ged-emacs-devel@m.gmane.org; Fri, 17 Aug 2018 17:03:47 +0200 Original-Received: from localhost ([::1]:34606 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fqgK6-0002iv-72 for ged-emacs-devel@m.gmane.org; Fri, 17 Aug 2018 11:05:58 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:44493) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fqgGV-0008WH-TC for emacs-devel@gnu.org; Fri, 17 Aug 2018 11:02:16 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fqgGU-0007Uo-87 for emacs-devel@gnu.org; Fri, 17 Aug 2018 11:02:15 -0400 Original-Received: from mout.gmx.net ([212.227.17.21]:43595) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fqgGL-0007NM-UJ; Fri, 17 Aug 2018 11:02:06 -0400 Original-Received: from detlef.gmx.de ([178.20.93.34]) by mail.gmx.com (mrgmx103 [212.227.17.168]) with ESMTPSA (Nemesis) id 0LyVcA-1ftD2r05eo-015qQc; Fri, 17 Aug 2018 17:02:03 +0200 In-Reply-To: <87tvo6t9hx.fsf@gmx.de> (Michael Albinus's message of "Tue, 07 Aug 2018 18:41:14 +0200") X-Provags-ID: V03:K1:xLLrOVzdQJm/mraRj0vsWyEVCXevNyGWNjmh/Xj3FcBTgQEsdj3 CVeOBb6abuK2AAVvWXBNk55riKcPI8ICuNB9Mt+zByvv1puo7vKvJCI7rVw6fBIjgt1aFJv BsycjuBiR6RozJd8lNP8Ii5aHhx5IBwg2fWdcHZzfTVOm3cO4b2Cu0JPrREiZDjTdDxvCvs 4yfSQ5MYvs8wUecZzlfRA== X-UI-Out-Filterresults: notjunk:1;V01:K0:looGz/ZRsuc=:SIhUb8TGBoQhMNYJxw36/h +oFfkVDPkMmTFxZyBV6WzDjPP6gN3q2V4iWcKwNDtzzDDiGlYugvTKrBniyzR5oHVEBWJTFSs xoH6hpogNIeCOAreEnK+USL9X/j5NTQmhbkx9rBhbLNMLoPf2OJViQoS3tX0ZXl+Jcpk0G/rN 2JZf/YPk/KLg4ZPFWvtrKlbTEcC/NPhXQ3anwUd1tkllaZ/dBVJzBlxbRVtNG1QHmMrkZZOLr FXvkw2Yt/+9Cs4yYAy772o+4r59HHOx+A1HnsqD4AEZ8IbD8f2VQwnspPKMCTv6XkGPuyA/zI /gKFhXRVcaR8lq+hhgGB1r1jGcNpwK6bIGnvR/DYt0cMWCNXKqKsMjb70B8/VIk3zcDVXJqo0 Av20Je6KWCi0KrHJD25cLKJgoA04Z8FLCz0DJlKfvxupI1QIKvMAG0JwYydEIGoeSVJ/EBaCG Iyoq1T0/vab/GCQRoVuiPbK5XYixQv+kmUyY25SWGMxG0o+wOy8vs6exzY4jqKRscnOxiLWd2 jhWSAYlxSROfCQdKw+53CEPuU80dPyBadtTfK4arexfitsf5iGr2RlZClb0WYWLh7kFtb9Ist caJMUmNBq3lRPcMmqGCemMksBq8P4ulbowtNz05xAjOKuouM+JX6Zm69uqRotlu90tpmwlS6p k8QD2QqviRx1v34QR/6D4v2RTdJkLqfdlclsKy/AWrTM6ABG5/dC27n/6bkjRLqzBJoy50wjx jI06nX+mbqmYI4VqdcDs0Au5GfbV7pEZQXRfWE/OveKLSm4IZM+Oo076Hy0= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 212.227.17.21 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:228640 Archived-At: --=-=-= Content-Type: text/plain Michael Albinus writes: >> But feel free to find a different place, mine is just one opinion, and >> not a very strong one in this case. > > I'm trying. But the essence of this thread is to find a good place; I > didn't succeed so far. I have prepared the following patch for the feature/tramp-thread-safe branch. Comments? Best regards, Michael. --=-=-= Content-Type: text/plain Content-Disposition: inline diff --git a/doc/lispref/commands.texi b/doc/lispref/commands.texi index 0753d6fb67..3ea775580a 100644 --- a/doc/lispref/commands.texi +++ b/doc/lispref/commands.texi @@ -26,6 +26,7 @@ Command Loop * Waiting:: Waiting for user input or elapsed time. * Quitting:: How @kbd{C-g} works. How to catch or defer quitting. * Prefix Command Arguments:: How the commands to set prefix args work. +* Prefix Commands:: A way to dispatch commands with an option. * Recursive Editing:: Entering a recursive edit, and why you usually shouldn't. * Disabling Commands:: How the command loop handles disabled commands. @@ -3299,6 +3300,39 @@ Prefix Command Arguments call this command yourself unless you know what you are doing. @end deffn +@node Prefix Commands +@section Prefix Commands +@cindex prefix command + + A @dfn{prefix command} is a command which precedes another command. +It dispatches the @emph{next} command by toggling a controlling +variable's value, which could be taken into account then by that next +command. Whether the following command cares about the controlling +variable is up to that command. + +Emacs knows of two prefix commands, @code{universal-async-argument} +(@pxref{Visiting,,, emacs, The GNU Emacs Manual}) and +@code{universal-coding-system-argument} (@pxref{Text Coding,,, emacs, +The GNU Emacs Manual}). + +@deffn Command universal-async-argument +This prefix command indicates the next command to run asynchronously. +It is up to that next command to decide, what asynchronously means, or +to ignore the prefix command. +@end deffn + +@defvar universal-async-argument +This is the controlling variable toggled by the +@code{universal-async-argument} command. If a command supports +asynchronous behavior, it should check, whether the value of this +variable is non-@code{nil}. +@end defvar + +@deffn Command universal-coding-system-argument +It is a prefix command to determine the coding system to be applied +for the next I/O command. The coding system is read interactively. +@end deffn + @node Recursive Editing @section Recursive Editing @cindex recursive command loop diff --git a/doc/lispref/elisp.texi b/doc/lispref/elisp.texi index 7ac9198bf8..30259343b6 100644 --- a/doc/lispref/elisp.texi +++ b/doc/lispref/elisp.texi @@ -762,6 +762,7 @@ Top * Waiting:: Waiting for user input or elapsed time. * Quitting:: How @kbd{C-g} works. How to catch or defer quitting. * Prefix Command Arguments:: How the commands to set prefix args work. +* Prefix Commands:: A way to dispatch commands with an option. * Recursive Editing:: Entering a recursive edit, and why you usually shouldn't. * Disabling Commands:: How the command loop handles disabled commands. --=-=-=--