[Lldb-commits] [lldb] [lldb] Implement a statusline in LLDB (PR #121860)

David Spickett via lldb-commits lldb-commits at lists.llvm.org
Fri Mar 7 06:24:28 PST 2025


DavidSpickett wrote:

Some of this will be expected, but reporting it in case it's not.
```
$ ./bin/lldb /tmp/test.o
(lldb) target create "/tmp/test.o"
Current executable set to '/tmp/test.o' (aarch64).
(lldb)
       << should this be here?
test.o << is the status line
```
Is that empty line meant to be there on initial startup? Some visual space between commands and statusline is nice though, so it's not bad but it isn't always there after you run a few commands.
```
$ ./bin/lldb /tmp/test.o
(lldb) target create "/tmp/test.o"
Current executable set to '/tmp/test.o' (aarch64).
(lldb) settings set show-statusline false
(lldb)
      << had one blank when I started up
      << another one was added when I disabled the status line (expected?)
<end of terminal>
```
When I disable it, the statusline line is cleared but not reclaimed or moved or whatever, giving me a second blank line.
```
$ ./bin/lldb /tmp/test.o
(lldb) target create "/tmp/test.o"
Current executable set to '/tmp/test.o' (aarch64).
(lldb) settings set show-statusline false
(lldb) settings set show-statusline true
(lldb)

test.o << status line, reclaiming the bottom line
```
Enabling it again, the line is reclaimed.

Probably expected because imagine you had a 24" monitor worth of output, we don't want to shift every line up and down 1 do we.

What does seem to be a bug is that tab complete hides the status bar, not just during but after:
```
(lldb)
test.o <<< status line
```
```
<tab>
<...>
        add-dsym          -- Add a <...>
More (Y/n/a):
<< empty line where the status line was
```
```
<n>
More (Y/n/a):
(lldb)
 << empty line where the status line was
```

https://github.com/llvm/llvm-project/pull/121860


More information about the lldb-commits mailing list