Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: Cursor position in shell history

Javier Marcet wrote:
> Last month I set up an Ubuntu based system, where I use zsh, as in all
> the unix systems I manage. There is one thing which is driving me mad.
> When I use the 'up arrow' to move through shell's history, the cursor is
> placed at the start of the line instead of at the end. This only happens
> in Ubuntu.

Yes. Ubuntu basically uses the package from debian, which causes this.

> I use the same .zsh folder with my settings and neither the global profile
> nor the global zsh settings  (/etc/zsh) contain anything which me causing
> it.

Oh but it does. It's the global zshrc:

[[ -z "$terminfo[cuu1]" ]] || bindkey -M viins "$terminfo[cuu1]" vi-up-line-or-history
[[ -z "$terminfo[kcuu1]" ]] || bindkey -M viins "$terminfo[kcuu1]" vi-up-line-or-history

There is more of this stuff in there. Change it to your liking.

FWIW, there is a bug about this in Debian's BTS:


The position of the maintenance team so far is: It was changed to more
vi-ish, and up to that point *two* people bothered to tell the
maintainer. So it stays.

My current view is this (/me puts his debian hat on): Move to a proper
way based on $terminfo entirely to setup keys. That way everything below
the "ncurses fogyatekos" comment can go away, too. Because it's really
not the fault of ncurses that some value may be off here (but that's not
relevant here - so I'll drop that thought).

Such a move will probably cause some breakage, but is the right thing to
do. And since we'll break something anyway, I think we should get rid of
those bindings, as well, and let the user decide whether or not he wants
them or not.

Regards, Frank

Messages sorted by: Reverse Date, Date, Thread, Author