可点击链接+弹出菜单

可点击链接+弹出菜单

在我的 中是否可以有一个可点击的链接,PS1用于打开弹出菜单或类似内容?

我的情况

我已经个性化了我的.bashrc,以显示我PS1

user@machine: path #/$

如果我在 git 存储库中,它还会显示我的分支和不同的状态字符

user@machine: path [branch !] #/$

顺便说一句,我在 Ask Ubuntu 上找到了执行此操作的代码。

我的想法

我想要的是单击分支名称,然后显示已下载分支的列表(带有或不带有更改选项)。

我在弹出菜单中找到了一些“对话框”和“选择/选项”选项,但是没有找到任何可点击的链接。

答案1

如果我为此,我会选择一个终端仿真器,比如 Terminator,编写一个新插件。我可能必须破解这一切是如何工作的,但 Terminator 应该能够拾取文本,然后使用它所了解的 shell 环境来呈现一个 GTK3 菜单以供拾取。

我能想到的唯一其他方法彻底处理这个问题的方法是编写自己的 shell 替代品。它可以包裹 bash(等)并处理鼠标的参与。有些东西,比如 PyScreen,可以做到这一点,但没有什么东西可以直接做你想做的事。代理终端也是渲染错误的根源。即使是这个领域中成熟的东西(例如screen)偶尔也会把事情搞砸。

最重要的是,这两者都不是 20 分钟就能搞定的。插件需要我花几个小时,shell 可能需要几天才能搞定。我可能会反驳那些告诉我这么做的人,说这是不经济地浪费我的时间。

如果我只是想要这个,我可能会写一个小br命令来列出分支并允许我选择。有很多例子,但我不会提出任何一个作为最佳解决方案。它们都是对你想要的东西的妥协。

相关内容