技术解析

不懂就问, mac 命令行有一个功能:按住 ctrl+鼠标左键到文件路径可以跳转到指定文件。对应 ubuntu 有相似的功能吗?
0
2021-06-16 10:47:03
idczone
比如:
➜ breakpad git:(master) find . -name "*.c" | xargs grep -n pad
./src/third_party/libdisasm/ia32_implicit.c:200:static op_implicit_list_t list_popad[] =
./src/third_party/libdisasm/ia32_implicit.c:209: { OP_W, REG_DWORD_OFFSET }, {0}}; /* popad */
./src/third_party/libdisasm/ia32_implicit.c:341: list_pop, list_popad, list_popfd, list_pushad, /* 33 - 36 */

这时候鼠标移动到第一行按下 ctrl+鼠标左键可以跳转到./src/third_party/libdisasm/ia32_implicit.c 的 200 行
iterm2

Terminator 试试这个行不? https://juejin.im/post/6844903939410788365

这应该是终端模拟器的功能。
就我所知 Linux 下目前似乎没有终端实现了类似的功能,我能想到的 workaround 有两个:
1. 写个 tmux 插件,缺点是鼠标应该指望不上了,优点是各种终端下都能用
2. 结合 hyperlink + x-scheme-handler,应该能实现和 macOS 下类似的效果,缺点是 hyperlink 的支持非常有限( Linux 下的主流终端只有 gnome-terminal 支持),并且你大概得给每个命令都写一个 wrapper (

本来想试试第一个方法,不过发现 tmux-open 已经有这个功能了(精确到行列)
第二个方法的话,因为我用的 konsole 不支持 hyperlink 就不去试了(

shell 是 fish, 依赖 rg fzf
nvim (rg -0 . -t c | fzf)[0]

vscode 远程连接的时候可以这样做

emmm,目前解决了这个问题。看起来我的需求得套一个 IDE 才能实现,下载了下 vscode,vscode 的终端有这个功能。

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服