【问题标题】:Work-around for PyCharm not supporting "ALT ." up to nowPyCharm 不支持“ALT”的解决方法。到现在
【发布时间】:2021-01-29 08:26:22
【问题描述】:

我喜欢“ALT”。在 linux 命令行上重复使用上一个命令的最后一个参数。

很遗憾 PyCharm 的终端不支持这个功能:IDEA-155783

由于 JetBrains 五年来一直忽略这个问题,我认为是时候寻找解决方法了。

有没有办法获得“ALT”。在 PyCharm 的终端工作?

环境:Ubuntu 20.04

【问题讨论】:

  • 我对此进行了调查,假设您的终端正在启动标准的“cmd.exe”,您可以在启动时立即执行“批处理文件”(通过在 IDE 中设置path\to\cmd.exe script.bat)。那么问题是,从那个批处理文件中设置一个键盘快捷键,每次按下Alt+dot 时都会执行一个脚本,因为它是微软的。可能这里最好的选择是使用AutoHotKey 与终端一起启动,设置键绑定,然后你就可以让Alt+dot 像你想要的那样工作......
  • @bad_coder 我已经有 20 年没有使用过 Windows 了。 Alt . 是否也重用 windows 上的最后一个参数?
  • 我认为这个问题可以使用一些澄清,例如you can choose the terminal that you want to use in PyCharm,但问题并没有确切说明你想要什么外壳(它也没有说操作系统)。我很惊讶这是一个问题,因为如果您查看配置,终端所做的是启动您选择的 shell(可能包含在某些启动过程中,但 shell 可执行文件仍然存在)。
  • 你去Settings>Tools>Terminal并尝试了“覆盖IDE快捷方式”和“shell集成”选项(请参阅this description of options),因为那应该足以让Alt+dot 工作。
  • @bad_coder 我停用了“覆盖 IDE 快捷方式”,但这并没有改变。 ALT . 仍然没有插入最后一个命令的最后一个参数。

标签: terminal pycharm readline


【解决方案1】:

不太一样,但如果你使用默认的 bash shell,你可以使用$_!$

在pycharm的终端窗口中:

$ ls /dev/null
/dev/null
$ echo "stackoverflow" > !$
echo "stackoverflow" > /dev/null

Bash 具有大量内置的历史调用功能:https://www.gnu.org/savannah-checkouts/gnu/bash/manual/bash.html#History-Interaction

我相信大多数其他 shell 也可以。

【讨论】:

    猜你喜欢
    • 2020-10-02
    • 2023-02-20
    • 2015-08-12
    • 2010-12-07
    • 2014-12-13
    • 1970-01-01
    • 2020-05-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多