0

我在使用 octave 的编辑器时遇到了问题,之前发布了一个问题:Octave 输出缓冲区在 OS X 上完全搞砸了。如何解决?

我解决问题的方式是使用edit mode sync而不是默认的async. async但是,我真的不明白和这里有什么区别sync?为什么在使用async键盘时同时向 octave 和编辑器发送信号,从而导致输出缓冲区混乱?如果可能,我们可以为 macbook 使用异步模式吗?(因为在我的 linux 电脑上一切正常)

4

1 回答 1

0

根据 `edit()' 的帮助文本:

[...] 异步模式(编辑器在后台启动并继续 Octave)或同步模式(Octave 等待编辑器退出)。[...](另见“系统”)。

它基本上定义了启动其他进程(在您的情况下为 emacs)后会发生什么。想想如何edit()设计使用。您在 Octave 提示符下并使用它在文本编辑器中打开函数文件。在仍使用 Octave 提示的同时对文件进行更改。那是async模式。

但是,您的文本编辑器没有 GUI。当您启动 emacs 时,您会在调用它的同一终端窗口中使用它。因为您将其设置为async,所以您最终会在同一个终端中同时使用 emacs 和 Octave 交互。将其设置为sync意味着在您退出 emacs 之前,Octave 只是在等待,因此它不会弄乱正在显示的内容。

你可以:

  1. 使用带有 GUI 的文本编辑器;
  2. 更改您的 EDITOR 命令以打开一个新终端,并在那里启动您的 CLI emacs。例如,如果您使用的是 gnome-terminal,您可以将其设置为gnome-terminal -e emacs %s;
  3. 将模式更改为同步。
于 2013-08-13T16:57:17.933 回答