libreadline history lines combine
Posted
by
jettero
on Super User
See other posts from Super User
or by jettero
Published on 2011-01-29T00:37:30Z
Indexed on
2011/02/02
15:28 UTC
Read the original article
Hit count: 379
This has been driving me crazy for about three years. I don't know how to fully describe the problem, but I think I can finally describe a way to recreate it. Your milage may vary. I have a mixture of ubuntu server and desktop machines of various versions and a few gentoo machines with various states of disrepair. They all seem to kindof do their own thing, although with similarities.
Try this and let me know if you see the same thing.
- pop open two xterms (TERM=xterm)
- resize one so they're not the same
- issue screen -R test1 in one (TERM=screen)
- and screen -x test1 in the other
- hooray, typing in one shows up in the other; although notice that their different size produces artifacts and things
- issue a couple commands in your shell
- hit ^AF in the one that doesn't fit quite right, now it fits!!
- scroll back over the history a little
- goto 6
Eventually you'll notice a couple history lines combine. If you don't, then it's something unique to my setup, which spans various distributions and computers; so that's a confusing concept to me.
If you see the thing I'm seeing then this:
bash$ ls -al
bash$ ps auxfw
becomes this:
bash$ ls -al; ps auxfw
It doesn't happen every time. I have to really play with it — unless I don't want it to happen, then it always does. On some systems (or combinations), I get a line separator like the example above. On some systems, I do not. That I get the line separator on some systems seems to indicate to me that bash supports this behavior. Its history is entirely handled by libreadline and after perusing (ie, carefully reading) the man pages, I couldn't find a single readline setting for combining two history lines. Nor can I find anything in the bash manpage.
So, how can I invoke this on purpose? Or, if I can't do that, how can I disable it completely? I would take either answer as a solution. Currently, I only see it when I don't want it.
© Super User or respective owner