Add case for screen title escape chars
This commit is contained in:
parent
4a64c6ccec
commit
2296081d01
@ -274,6 +274,8 @@ Special characters:
|
|||||||
* `LP_MARK_BRACKET_CLOSE` (default: "]") marks around the main part of the prompt
|
* `LP_MARK_BRACKET_CLOSE` (default: "]") marks around the main part of the prompt
|
||||||
* `LP_TITLE_OPEN` (default: "\e]0;") escape character opening a window's title
|
* `LP_TITLE_OPEN` (default: "\e]0;") escape character opening a window's title
|
||||||
* `LP_TITLE_CLOSE` (default: "\a") escape character closing a window's title
|
* `LP_TITLE_CLOSE` (default: "\a") escape character closing a window's title
|
||||||
|
* `LP_SCREEN_TITLE_OPEN` (default: "\033k") escape character opening screen window's title
|
||||||
|
* `LP_SCREEN_TITLE_CLOSE` (default: "\033\134") escape character closing screen window's title
|
||||||
|
|
||||||
|
|
||||||
## KNOWN LIMITATIONS AND BUGS
|
## KNOWN LIMITATIONS AND BUGS
|
||||||
|
13
liquidprompt
13
liquidprompt
@ -197,6 +197,8 @@ _lp_source_config()
|
|||||||
LP_PS1_PREFIX=${LP_PS1_PREFIX:-""}
|
LP_PS1_PREFIX=${LP_PS1_PREFIX:-""}
|
||||||
LP_TITLE_OPEN=${LP_TITLE_OPEN:-"\e]0;"}
|
LP_TITLE_OPEN=${LP_TITLE_OPEN:-"\e]0;"}
|
||||||
LP_TITLE_CLOSE=${LP_TITLE_CLOSE:-"\a"}
|
LP_TITLE_CLOSE=${LP_TITLE_CLOSE:-"\a"}
|
||||||
|
LP_SCREEN_TITLE_OPEN=${LP_SCREEN_TITLE_OPEN:-"\033k"}
|
||||||
|
LP_SCREEN_TITLE_CLOSE=${LP_SCREEN_TITLE_CLOSE:-"\033\134"}
|
||||||
|
|
||||||
LP_ENABLE_PERM=${LP_ENABLE_PERM:-1}
|
LP_ENABLE_PERM=${LP_ENABLE_PERM:-1}
|
||||||
LP_ENABLE_SHORTEN_PATH=${LP_ENABLE_SHORTEN_PATH:-1}
|
LP_ENABLE_SHORTEN_PATH=${LP_ENABLE_SHORTEN_PATH:-1}
|
||||||
@ -1134,8 +1136,14 @@ _lp_title()
|
|||||||
# Use it in the window's title
|
# Use it in the window's title
|
||||||
# Escapes whill tells bash to ignore the non-printing control characters when calculating the width of the prompt.
|
# Escapes whill tells bash to ignore the non-printing control characters when calculating the width of the prompt.
|
||||||
# Otherwise line editing commands will mess the cursor positionning
|
# Otherwise line editing commands will mess the cursor positionning
|
||||||
local title="${_LP_OPEN_ESC}${LP_TITLE_OPEN}${txt}${LP_TITLE_CLOSE}${_LP_CLOSE_ESC}"
|
case "$TERM" in
|
||||||
|
xterm*|rxvt*)
|
||||||
|
local title="${_LP_OPEN_ESC}${LP_TITLE_OPEN}${txt}${LP_TITLE_CLOSE}${_LP_CLOSE_ESC}"
|
||||||
|
;;
|
||||||
|
screen*)
|
||||||
|
local title="${_LP_OPEN_ESC}${LP_SCREEN_TITLE_OPEN}${txt}${LP_SCREEN_TITLE_CLOSE}${_LP_CLOSE_ESC}"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
echo -n "${title}"
|
echo -n "${title}"
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1314,7 +1322,6 @@ _lp_set_prompt()
|
|||||||
PS1="${PS1}${LP_ERR}${LP_MARK}"
|
PS1="${PS1}${LP_ERR}${LP_MARK}"
|
||||||
|
|
||||||
# "invisible" parts
|
# "invisible" parts
|
||||||
|
|
||||||
# Get the current prompt on the fly and make it a title
|
# Get the current prompt on the fly and make it a title
|
||||||
LP_TITLE=$(_lp_title "$PS1")
|
LP_TITLE=$(_lp_title "$PS1")
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user