Blame | Last modification | View Log | RSS feed
# Copyright © 2006 Shaun McCance <shaunm@gnome.org># Copyright © 2013 Peter De Wachter <pdewacht@gmail.com>## This program is free software: you can redistribute it and/or modify# it under the terms of the GNU General Public License as published by# the Free Software Foundation, either version 3 of the License, or# (at your option) any later version.## This program is distributed in the hope that it will be useful,# but WITHOUT ANY WARRANTY; without even the implied warranty of# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the# GNU General Public License for more details.## You should have received a copy of the GNU General Public License# along with this program. If not, see <http://www.gnu.org/licenses/>.# Not bash or zsh?[ -n "$BASH_VERSION" -o -n "$ZSH_VERSION" ] || return 0# Not an interactive shell?[[ $- == *i* ]] || return 0# Not running under vte?[ "${VTE_VERSION:-0}" -ge 3405 ] || return 0__vte_urlencode() (# This is important to make sure string manipulation is handled# byte-by-byte.LC_ALL=Cstr="$1"while [ -n "$str" ]; dosafe="${str%%[!a-zA-Z0-9/:_\.\-\!\'\(\)~]*}"printf "%s" "$safe"str="${str#"$safe"}"if [ -n "$str" ]; thenprintf "%%%02X" "'$str"str="${str#?}"fidone)# Print a warning so that anyone who's added this manually to his PS1 can adapt.# The function will be removed in a later version.__vte_ps1() {echo -n "(__vte_ps1 is obsolete)"}__vte_osc7 () {printf "\033]7;file://%s%s\007" "${HOSTNAME:-}" "$(__vte_urlencode "${PWD}")"}__vte_prompt_command() {local command=$(HISTTIMEFORMAT= history 1 | sed 's/^ *[0-9]\+ *//')command="${command//;/ }"local pwd='~'[ "$PWD" != "$HOME" ] && pwd=${PWD/#$HOME\//\~\/}printf "\033]777;notify;Command completed;%s\007\033]0;%s@%s:%s\007%s" "${command}" "${USER}" "${HOSTNAME%%.*}" "${pwd}" "$(__vte_osc7)"}case "$TERM" inxterm*|vte*)[ -n "$BASH_VERSION" ] && PROMPT_COMMAND="__vte_prompt_command"[ -n "$ZSH_VERSION" ] && precmd_functions+=(__vte_osc7);;esactrue