我正在运行ubuntu 13.04而且我有这样的PS1
PS1="\$(__git_ps1 '(%s) ')\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ "
我习惯使用set -o vi
的bash vi模式。
但是,如果$PWD
位于git根目录树的某个位置,并按ESC+/
进行搜索,则缩进会被搞砸。随着树中的每个目录,它变得越来越糟。
搜索结果打印在“某处”,但不是它们应该在的位置。
在git root之外,直接在git root中或没有$(__git_ps1 '(%s) ')
它完美地工作。
ESC+k
都在工作。
以下是一些例子:
(master) flx@t420:~/dev/somegitproject/subdir/subdir$ [press ESC+/]
(master) flx@t420:~/dev/somegitproject/subdir/subdi[type your search here]
(master) flx@t420:~/dev/somegitproject/subdir/subdir/subdir/subdir$ [press ESC+/]
(master) flx@t420:~/dev/somegitproject/subdir/subdir/subdi[type your search here]
一切都很好:
(master) flx@t420:~/dev/somegitproject$ [press ESC+/]
(master) flx@t420:~/dev/somegitproject$ /[type your search here]
我刚刚注意到,将搜索结果打印在git root中打破:
(master) flx@t420:~/dev/somegitproject$ [press ESC+/]
(master) flx@t420:~/dev/somegitproject$ /whateve[enter]
(master) flx@t420:~/dev/somegiwhateve tproject$ whatevercommand
在没有git的目录中,它按预期工作:
(master) flx@t420:~/dev$ [press ESC+/]
(master) flx@t420:~/dev$ /whateve[enter]
(master) flx@t420:~/dev$ whatevercommand
知道如何解决这个问题。这很烦人。
有趣的是,这个PS1在我的旧桌面上工作,运行旧的ubuntu安装更新到13.04。但是在这个全新的装置中它被打破了。