/ (slash) command : fast way to temporarily change setting(s) to run a command

John Baldwin jhb@FreeBSD.org
Fri Apr 19 16:52:00 GMT 2019

On 4/17/19 1:14 AM, Kevin Buettner wrote:
> My first reaction to this proposal was that '/' is already used in
> some commands to modify their behavior.  E.g. "print", "display", and
> "x" all use /FMT to change the way that data is formatted.
> That said, '/' seems to be used in only a handful of commands.  It
> may be that its use is confined to the ones already mentioned.
> I see that the "interrupt" command allows the use of -a to modify
> its behavior.  Most commands have no modifiers at all.
> I don't have a serious objection to Philippe's proposal, but I do
> think that we ought to consider whether use of '/' in this context
> might be confusing to the user.  Might some other character or command
> name be less confusing?  I don't know the answer to this, but I do
> think it's something which should be pondered before making this
> proposal a part of GDB's CLI.

I find using / to make sense actually.  A leading / applies "global"
settings to the following command, so you have a general syntax that
is something like:

[/global settings] [command] [/command-specific settings] [arguments]

Where moving from left to right consistently "narrows" the scope.
This is not unlike the syntax used in certain command line programs
that reuse getopt-like interfaces for subcommand options while also
supporting "global" options.  git is an example of this (you have
global options before the verb and then command-specific options
after the verb both of which use the same getopt syntax) as well as
svn, etc.

John Baldwin

More information about the Gdb mailing list