Linux

“保存更改”模式對話框使用“關閉而不保存”的起源、缺少鍵盤加速器以及如何與這些對話框互動

  • September 15, 2019

來自 Windows,我非常習慣於非常常見的“保存更改”模式對話框,它提供“是/否/取消”選項,其中“Y”和“N”被提供為鍵盤加速器(快捷鍵)。

在 Linux 上,我經常會嘗試關閉未保存的文件,然後通過鍵入“N”來關閉對話框——但這不起作用。不僅範式不同(“關閉而不保存”與“否”),而且似乎從來沒有任何加速器。

我在 Sublime Text 中嘗試過:

在此處輸入圖像描述

羽毛:

在此處輸入圖像描述

編輯:

在此處輸入圖像描述

LibreOffice 作家:

在此處輸入圖像描述

這是 Linux 上此類對話的正常範例嗎?它的起源是什麼?它是 GTK 提供的對話框嗎?

對於一個非常普通的對話,我覺得它非常不友好。我必須改為使用選項卡來逐步查看聚焦的按鈕。這並不總是很明顯,具體取決於使用的​​主題。

為什麼沒有加速器?它們在模態對話框中不受支持嗎?

我正在嘗試讓自己熟悉常見的模態範式(至少對於 GTK),這樣我就不必考慮它,只需完全從鍵盤上排隊我的操作即可。對於這個樣本集,似乎“tab,enter”是關閉和關閉而不保存的方式。


我發現 Sublime Text 在 Windows 上使用預期的“是/否/取消”對話框和在 Linux 上使用“關閉而不保存/取消/保存”對話框(就像那裡的其他應用程序一樣)很有趣。我懷疑這一定是一個積極的決定。

我相信 GTK/GNOME 從 Apple macOS 及其祖先那裡借鑒了相當多的人機界面設計指南。

我認為 Mac 的對話視窗有相當嚴格的設計規則:

  • Enter將始終是“做預設/安全的事情”的加速器,即保存或另存為……在您的範例中,有點像“普遍肯定”。“保存/另存為”按鈕上較粗的邊界表明情況確實如此。
  • Esc始終是“停止,我畢竟不想要這個”按鈕,在您的範例中呼叫相當於“取消”的按鈕。換句話說,就是“萬能負”加速器。
  • ..並且由於“關閉而不保存”是破壞性選項(它會導致數據失去),因此實際上應該比其他選項更難選擇。所以它不會得到任何一個通用加速器。

您可能想閱讀經典的 Macintosh 人機界面指南文件,或至少閱讀與對話框相關的部分(回饋和對話框從 PDF 的第 33 頁開始,以及整個第 6 章對話框,從第 199 頁開始。)雖然GTK 做了一些修改,這個舊文件非常清楚地描述了 UI 設計師可能瞄準的設計理念。

GNOME 也有自己的人機界面指南。特別是,它明確定義了加速鍵(在其術語中稱為訪問鍵Alt)僅在按住時才顯示。

這個對話框確實是由 Gtk 提供的。

它確實有加速器;預設情況下不會顯示它們,但如果您按住Alt它們,您會看到它們。在 Gedit 中,它們w用於“關閉而不保存”、c“取消”和s“另存為…”。您也可以使用Esc取消和Enter保存。

引用自:https://unix.stackexchange.com/questions/541661