来自 Windows,我非常习惯于非常常见的“保存更改”模式对话框,它提供“是/否/取消”选项,其中“Y”和“N”被提供为键盘加速器(快捷键)。
在 Linux 上,我经常会尝试关闭未保存的文档,然后通过键入“N”来关闭对话框——但这不起作用。不仅范式不同(“关闭而不保存”与“否”),而且似乎从来没有任何加速器。
我在 Sublime Text 中尝试过:
梅花:
编辑:
LibreOffice 作家:
这是 Linux 上此类对话的正常范例吗?它的起源是什么?它是 GTK 提供的对话框吗?
对于一个非常普通的对话,我觉得它非常不友好。我必须改为使用选项卡来逐步查看聚焦的按钮。这并不总是很明显,具体取决于使用的主题。
为什么没有加速器?它们在模态对话框中不受支持吗?
我正在尝试让自己熟悉常见的模态范式(至少对于 GTK),这样我就不必考虑它,只需完全从键盘上排队我的操作即可。对于这个样本集,似乎“tab,enter”是关闭和关闭而不保存的方式。
我发现 Sublime Text 在 Windows 上使用预期的“是/否/取消”对话框和在 Linux 上使用“关闭而不保存/取消/保存”对话框(就像那里的其他应用程序一样)很有趣。我怀疑这一定是一个积极的决定。
这个对话框确实是由 Gtk 提供的。
它确实有加速器;默认情况下不会显示它们,但如果您按住Alt它们,您会看到它们。在 Gedit 中,它们w用于“关闭而不保存”、c“取消”和s“另存为...”。您也可以使用Esc取消和Enter保存。
我相信 GTK/GNOME 从 Apple macOS 及其祖先那里借鉴了相当多的人机界面设计指南。
我认为 Mac 的对话窗口有相当严格的设计规则:
您可能想阅读经典的 Macintosh 人机界面指南文档,或至少阅读与对话框相关的部分(反馈和对话框从 PDF 的第 33 页开始,以及关于对话框的整个第 6 章,从第 199 页开始。)虽然GTK 做了一些修改,这个旧文档非常清楚地描述了 UI 设计师可能瞄准的设计理念。
GNOME 也有自己的人机界面指南。特别是,它明确定义了加速键(在其术语中称为访问键Alt)仅在按住时才显示。
关于起源,我给出了一些来自经典 unix 编辑器“vi”(和“vim”)的例子。
在 vim 中,在 "quit" 命令 "q" 之后:
这显示在红色 (!) 底线上。现在你必须下定决心
q!
(真的退出你未命名的“缓冲区” - 还没有文件),或者w my file
(写为文件'我的文件'(w! my file
覆盖))然后q
. 或者只是继续 - 它不是模态的,只是一条消失的线。(对于现有文件,它是
wq
保存到现有文件,然后退出)在更经典的“vi”中(1976(!)说维基百科):
这里没有说明 q表示退出。你在
man ex
.或者在 vim 中,之后
h[elp] quit
并且 Control-C 给出(再次在 vim 上):
如果你第一次读到这个感觉就像是一个格式错误的侮辱:输入“qa”,你这个白痴。它的真正含义是:命令模式的分号,退出所有文件/窗口的 qa 和“!” 强制退出。
离开编辑从来都不是一件容易的事——甚至不可能。你的例子也证明了这一点。
我很高兴第一个答案(
Alt
显示的关键)解决了主要问题。“保存(as)(...)”按钮本身也很不一致:sublime 和 libreoffice 似乎直接写入“New”文件或“Untitled 1”文件。Pluma 缺少点!哦,我明白了:它被称为“未保存的文档 1”,所以“另存为”当然意味着“另存为...”而不是“按原样保存”。谁会想要在他的文件夹中出现这样的悖论?
我想说:你真的不能说“linux”不友好。每个人都在努力在Linux上运行的 GUI 中建立一个有用的桌面环境。
嗯,听起来好像您可能喜欢在终端中使用 vim ;)
现在我会看看我是否不能让我的 vim 更友好。它真的不应该出现在红色背景错误线上......