我真的很喜欢tmux
并且经常使用它,所以我在我的中设置了以下内容.zprofile
:
[[ $TERM != "screen" ]] && exec tmux
因此,当我打开新窗口时,他们tmux
会在我身边。
tmux
然而,运行时会出现一些奇怪的情况:
gnuplot
,octave
而其他需要启动X11来绘制图形的程序似乎无法这样做(或者需要真的长 - 10 分钟左右)。当X11已经运行时,他们就没有这个问题了。我编写的一些脚本用于
osascript
在发生某些情况时向我发出通知:osascript -e 'display notification "some text" with title "Foo"'
这在
tmux
不活动时工作正常,但在会话内调用时无法执行任何操作tmux
。 (注意其他osascript
动作做工作)
有谁知道为什么会这样以及可以采取什么措施来解决这个问题?
笔记:我已经发布了一个关于第一个问题的类似问题前段时间在 apple.se 网站上但没有得到答复。第二个问题最近才出现,所以我想我应该在这里碰碰运气。
答案1
尝试移至[[ $TERM != "screen" ]] && exec tmux
您的.zshrc
文件。这样该命令将仅在交互式 shell 中运行。
交互式 shell 只是您用来键入命令并从这些命令获取输出的任何 shell 进程。也就是说,您与之交互的外壳。
答案2
您的第二个问题似乎是 tmux 以及通过osascript
.您可以安装一个包装器来解决该问题。
你会想要安装重新附加到用户命名空间通过 Homebrew 或 MacPorts 并将调用包装到osascript
:
reattach-to-user-namespace osascript -e 'display notification "Hello, world"'