[lldb] please hide alias definitions under a different help command

Originator:borkwareLLC
Number:rdar://10035461 Date Originated:8/27/2011
Status:open Resolved:
Product:developer tools Product Version:LLDB-69
Classification:enhancement Reproducible:n/a
 
Summary:

Hi!

"help" in the lldb executable also lists all of the built-in gdb-compatible commands.  9 times out of 10, I'm more interested in the commands that lldb defines, but those always get scrolled off the top of the screen, showing me the gdb aliases which, while nice, aren't what I'm usually interested in doing a top-level help.

It'd be cool to have a "help gdb-compatibility" or "command list --aliases"  so we could see it, and not have the generic lldb help polluted with them.


Steps to Reproduce:

Launch lldb (LLDB-69):
% lldb

Get help
(lldb) help


Expected Results:

List of supported commands, for exploration or general help:

_regexp-break -- Set a breakpoint using a regular expression to specify the
                 location.
_regexp-down  -- Go down "n" frames in the stack (1 frame by default).
_regexp-up    -- Go up "n" frames in the stack (1 frame by default).
apropos       -- Find a list of debugger commands related to a particular
                 word/subject.
breakpoint    -- A set of commands for operating on breakpoints. Also see
                 _regexp-break.
command       -- A set of commands for managing or customizing the debugger
                 commands.
disassemble   -- Disassemble bytes in the current function, or elsewhere in the
                 executable program as specified by the user.
expression    -- Evaluate a C/ObjC/C++ expression in the current program
                 context, using variables currently in scope.
frame         -- A set of commands for operating on the current thread's frames.
help          -- Show a list of all debugger commands, or give details about
                 specific commands.
log           -- A set of commands for operating on logs.
memory        -- A set of commands for operating on memory.
platform      -- A set of commands to manage and create platforms.
process       -- A set of commands for operating on a process.
quit          -- Quit out of the LLDB debugger.
register      -- A set of commands to access thread registers.
script        -- Pass an expression to the script interpreter for evaluation and
                 return the results. Drop into the interactive interpreter if no
                 expression is given.
settings      -- A set of commands for manipulating internal settable debugger
                 variables.
source        -- A set of commands for accessing source file information
target        -- A set of commands for operating on debugger targets.
thread        -- A set of commands for operating on one or more threads within a
                 running process.
type          -- A set of commands for operating on the type system
version       -- Show version of LLDB debugger.



Actual Results:

the lldb command help as listed above, and all 50 built-in aliases:

The following is a list of your current command abbreviations (see 'help command alias' for more info):

b        -- ('_regexp-break')  Set a breakpoint using a regular expression to
            specify the location.
bt       -- ('thread backtrace')  Show the stack for one or more threads.  If no
            threads are specified, show the currently selected thread.  Use the
            thread-index "all" to see all threads.
c        -- ('process continue')  Continue execution of all threads in the
            current process.
continue -- ('process continue')  Continue execution of all threads in the
            current process.
down     -- ('_regexp-down')  Go down "n" frames in the stack (1 frame by
            default).
exit     -- ('quit')  Quit out of the LLDB debugger.
expr     -- ('expression')  Evaluate a C/ObjC/C++ expression in the current
            program context, using variables currently in scope.
f        -- ('thread step-out')  Finish executing the current function and
            return to its call site in specified thread (current thread, if none
            specified).
file     -- ('target create')  Create a target using the argument as the main
            executable.
finish   -- ('thread step-out')  Finish executing the current function and
            return to its call site in specified thread (current thread, if none
            specified).
image    -- ('target modules')  A set of commands for accessing information for
            one or more target modules.
l        -- ('source list')  Display source code (as specified) based on the
            current executable's debug info.
list     -- ('source list')  Display source code (as specified) based on the
            current executable's debug info.
n        -- ('thread step-over')  Source level single step in specified thread
            (current thread, if none specified), stepping over calls.
next     -- ('thread step-over')  Source level single step in specified thread
            (current thread, if none specified), stepping over calls.
p        -- ('expression --')  Evaluate a C/ObjC/C++ expression in the current
            program context, using variables currently in scope.
po       -- ('expression -o  --')  Evaluate a C/ObjC/C++ expression in the
            current program context, using variables currently in scope.
print    -- ('expression --')  Evaluate a C/ObjC/C++ expression in the current
            program context, using variables currently in scope.
q        -- ('quit')  Quit out of the LLDB debugger.
r        -- ('process launch --')  Launch the executable in the debugger.
run      -- ('process launch --')  Launch the executable in the debugger.
s        -- ('thread step-in')  Source level single step in specified thread
            (current thread, if none specified).
si       -- ('thread step-inst')  Single step one instruction in specified
            thread (current thread, if none specified).
step     -- ('thread step-in')  Source level single step in specified thread
            (current thread, if none specified).
up       -- ('_regexp-up')  Go up "n" frames in the stack (1 frame by default).
x        -- ('memory read')  Read from the memory of the process being debugged.

For more information on any particular command, try 'help <command-name>'.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!