在pycharm终端windon上设置提示路径

时间:2016-12-18 04:22:21

标签: macos terminal pycharm prompt

我只是将pycharm升级到2016.3.1。在升级之前,我没有问题在终端窗口的提示下看到当前目录路径。升级到pycharm 2016后 3.1。由于某种原因,终端窗口上提示符下的所有目录路径似乎都与133;C;133;D;01337;RemoteHost=hawkins@pc_name.home1337;CurrentDir=/Users/hawkins/path133;MAC:path hawkins$ 133;B搞混了。任何人都有如何解决这个问题的经验?

MAC:path$
133;C;133;D;01337;RemoteHost=hawkins@pc_name.home1337;CurrentDir=/Users/hawkins/path133;MAC:path hawkins$ 133;B
133;C;133;D;01337;RemoteHost=hawkins@pc_name.home1337;CurrentDir=/Users/hawkins/path133;MAC:path hawkins$ 133;B
133;C;133;D;01337;RemoteHost=hawkins@pc_name.home1337;CurrentDir=/Users/hawkins/path133;MAC:path hawkins$ 133;B

6 个答案:

答案 0 :(得分:6)

我有类似的问题。原来我的问题是由于安装了iTerm shell集成。 正如您已经标记了问题[osx],我认为您可能也已经这样做了。

这个奇怪的符号在这个答案中的含义有一个很好的解释:https://unix.stackexchange.com/a/294886/47407

我想通过清除PROMT_COMMAND并再次设置PS1,我可以避免必须卸载Shell Integration。我使用以下

创建了一个名为pycharm_terminal.sh的shell脚本
export PROMT_COMMAND=
export PS1="\[\e[31m\]\u\[\e[0m\] at \[\e[33m\]\h\[\e[0m\] in \[\e[32m\]\w\[\e[0m\] at [\A] \[\033[31m\]`git branch 2> /dev/null | grep -e ^* | sed -E  s/^\\\\\*\ \(.+\)$/\(\\\\\1\)\ /`\[\033[35m\]\n$ \[\033[00m\]"
bash -i

PS1变量可以设置为之前的任何值。这就是我喜欢我的方式。

现在,在PyCharm设置中:转到工具&gt;终端和&#34; Shell路径&#34;将其设置为/bin/bash <path_to_pycharm_terminal.sh>

现在尝试在PyCharm中打开一个新终端。它不应该有那些控制字符错误。

答案 1 :(得分:6)

对我有用的解决方案:

  1. 转到设置&gt;插件
  2. 查找插件“Python终端”并禁用它
  3. 重启PyCharm
  4. 我注意到的唯一负面影响 - 在终端启动时自动激活virtualenv不起作用。

答案 2 :(得分:2)

出于某种原因,我通过在用户目录下创建一个.pycharmrc来解决这个问题 并在工具 - &gt; shell路径上的终端下设置/usr/local/bin/bash --rcfile ~/.pycharmrc。它似乎已修复,但我不知道为什么

MAC: path$ cat ~/.pycharmrc
exec bash

答案 3 :(得分:1)

这对我有用:

  • 使用一个命令bash -l
  • 创建新文件pycharm_terminal.sh
  • 然后我将PyCharm设置:设置为工具&gt;终端和“Shell路径”将其设置为/bin/bash/path_to_pycharm_terminal.sh。
  • 重启PyCharm并按预期完成所有工作
男人

bash -l是:-l Make bash act as if it had been invoked as a login shell (see INVOCATION below).

这可能意味着,当PyCharm启动终端并使用bash -l执行pycharm_terminal.sh时,默认情况下包含.bash_profile中的所有内容

答案 4 :(得分:1)

在尝试解决mac osx上“Geany”的类似问题时发现了这个问题。我在我的机器上安装了iterm2,并在终端提示符前面收到了垃圾。

与KPLauritzen提供的类似解决方案也适用于'Geany'终端。

希望这有助于某人:

  1. 使用所需的PS1&amp ;;在主目录中创建shell脚本。 CLICOLOR设置:

    〜/ geany_terminal.sh

    导出PROMT_COMMAND = 导出PS1 ='[\ e [1; 32m] [\ u @ \ h \ W] \ D {%F%T} \ n \ $ [\ e [0m]' export CLICOLOR = 1 export LSCOLORS = gxBxhxDxfxhxhxhxhxcxcx bash -i

  2. 然后我去了'编辑 - &gt;偏好 - &gt;终端'并将我的'Shell'设置为: / bin / bash /Users/myusername/geany_terminal.sh
  3. 重新加载Geany后,终端现在显示PS1和CLICOLOR设置,就像我在.bash_profile中设置的那样,没有前面的垃圾。

答案 5 :(得分:1)

您只需激活您的.bash_profile

/bin/bash --rcfile ~/.bash_profile