J'utilise gnome 3.10.1 sur Arch avec Zsh. Je suis confronté à ce problème que lorsque je crée un nouvel onglet ou une nouvelle fenêtre à partir d'une fenêtre de terminal, il réinitialise le répertoire en cours dans mon répertoire d'origine.
J'ai déjà essayé ceci: gnome-terminal: garder une trace du répertoire dans le nouvel onglet , mais cela n'a pas fonctionné.
J'ai pensé que cela pourrait être une configuration sur mon .zshrc
fichier, alors je l'ai nettoyé et j'ai mis la ligne suivante:
. /etc/profile.d/vte.sh
Cependant, cela n'a pas fonctionné comme prévu.
Oui, ce fichier existe et voici son contenu:
# Copyright © 2006 Shaun McCance <[email protected]>
# Copyright © 2013 Peter De Wachter <[email protected]>
#
# 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, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
# 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=C
str="$1"
while [ -n "$str" ]; do
safe="${str%%[!a-zA-Z0-9/:_\.\-\!\'\(\)~]*}"
printf "%s" "$safe"
str="${str#"$safe"}"
if [ -n "$str" ]; then
printf "%%%02X" "'$str"
str="${str#?}"
fi
done
)
# 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\a" "${HOSTNAME:-}" "$(__vte_urlencode "${PWD}")"
}
__vte_prompt_command() {
printf "\033]0;%s@%s:%s\007%s" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}" "$(__vte_osc7)"
}
case "$TERM" in
xterm*|vte*)
[ -n "$BASH_VERSION" ] && PROMPT_COMMAND="__vte_prompt_command"
[ -n "$ZSH_VERSION" ] && chpwd_functions+=(__vte_osc7)
;;
esac
true
Cela me dérange vraiment ...
y-a-t'il une solution?
gnome
zsh
gnome-terminal
cd-command
Henrique Barcelos
la source
la source
terminator
?nautilus-open-terminal
extension toujours ouverte gnome-terminal, je n'ai pas pu le changer ...Réponses:
Je ne sais pas si vous rencontrez toujours ce problème, mais j'ai trouvé que mon problème était que j'exécutais / bin / zsh en tant que commande personnalisée dans mon profil de terminal. Désactiver cela a résolu le problème pour moi - et j'ai toujours gardé zsh comme shell principal.
la source
bash
). Cela signifie que la commande exécutée pour définir l'invite (configurée lors de la connexion/etc/profile.d/vte.sh
) n'est pas la bonne et que le terminal n'a pas connaissance du répertoire actuel du shell.chsh
, je suppose.Il semble que vous devez activer l' option "Exécuter la commande en tant que shell de connexion" afin de le faire fonctionner comme il se doit.
Le soufflet d'impression est en portugais, mais c'est la configuration que je dois faire fonctionner.
la source