跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • electron 中 nls.localize({ key: ‘miUndo’, comment: [‘&& denotes a mnemonic’] 这种”&&”是什么用处?
未分類
14 5 月 2020

electron 中 nls.localize({ key: ‘miUndo’, comment: [‘&& denotes a mnemonic’] 这种”&&”是什么用处?

electron 中 nls.localize({ key: ‘miUndo’, comment: [‘&& denotes a mnemonic’] 这种”&&”是什么用处?

資深大佬 : vevlins 3

https://github.com/ysmhsla/myeditor/blob/8076a19fdcab7e1fc1707952d652f0bb6c6db331/src/vs/code/electron-main/menus.ts

  if (isMacintosh) {    undo = this.createDevToolsAwareMenuItem(nls.localize({ key: 'miUndo', comment: ['&& denotes a mnemonic'] }, "&&Undo"), 'undo', devTools => devTools.undo());    redo = this.createDevToolsAwareMenuItem(nls.localize({ key: 'miRedo', comment: ['&& denotes a mnemonic'] }, "&&Redo"), 'redo', devTools => devTools.redo());    cut = this.createRoleMenuItem(nls.localize({ key: 'miCut', comment: ['&& denotes a mnemonic'] }, "Cu&&t"), 'editor.action.clipboardCutAction', 'cut');    copy = this.createRoleMenuItem(nls.localize({ key: 'miCopy', comment: ['&& denotes a mnemonic'] }, "&&Copy"), 'editor.action.clipboardCopyAction', 'copy');    paste = this.createRoleMenuItem(nls.localize({ key: 'miPaste', comment: ['&& denotes a mnemonic'] }, "&&Paste"), 'editor.action.clipboardPasteAction', 'paste');   } else {    undo = this.createMenuItem(nls.localize({ key: 'miUndo', comment: ['&& denotes a mnemonic'] }, "&&Undo"), 'undo');    redo = this.createMenuItem(nls.localize({ key: 'miRedo', comment: ['&& denotes a mnemonic'] }, "&&Redo"), 'redo');    cut = this.createMenuItem(nls.localize({ key: 'miCut', comment: ['&& denotes a mnemonic'] }, "Cu&&t"), 'editor.action.clipboardCutAction');    copy = this.createMenuItem(nls.localize({ key: 'miCopy', comment: ['&& denotes a mnemonic'] }, "&&Copy"), 'editor.action.clipboardCopyAction');    paste = this.createMenuItem(nls.localize({ key: 'miPaste', comment: ['&& denotes a mnemonic'] }, "&&Paste"), 'editor.action.clipboardPasteAction');   } 

比如这里很多 &&,到底啥意思?

大佬有話說 (3)

  • 資深大佬 : geelaw

    注释里提示了是助记按键,即键盘快捷方式。

    很多菜单项、命令按钮的某个字母下会有一个下划线,这表示使用 那个字母 的按键或者 Alt+那个字母 可以激活那个菜单项、命令按钮。

    举个例子,在 Windows 上打开记事本,然后按 Alt+O 再按 F 可以打开字体对话框。

  • 主 資深大佬 : vevlins

    @geelaw 还是不太明白, &&Paste 在屏幕上实际显示 Paste,也没有显示快捷键提示,像 Cu&&t 看起来就更奇怪了,这个快捷键如何触发呢?

  • 資深大佬 : geelaw

    @vevlins 因为最近的 Windows (大概是 Windows Vista 或者 7 开始的)默认不显示提示。这个技能也不是那么久远的故事,感觉我在回答电脑操作 101 。

    Cut 的触发方式自然是按 T,例如在 VSCode 里面,打开 Edit 菜单后按 T,会在 Cut 和 Toggle Line Comment 之间反复切换高亮项,在切换到 Cut 后按 Enter 就可以触发,这是因为 Toggle Line Comment 的快捷方式也是 T ;如果是 Copy,因为 Edit 里面只有 Copy 的快捷方式是 C,所以按 C 会直接触发。

    如果你使用 Alt+E 打开 Edit 菜单,则无论什么设置都会显示每个菜单项的快捷方式,这里的逻辑是用户明显表达了使用键盘导航的意愿。

    如果你想永远显示快捷方式的下划线,可以在 Windows 的 Settings | Ease of Access | Keyboard 里打开 Underline access keys when available 。

    同理,标准的 Yes/No 对话框可以按 Y 或者 N 进行回答,无论是否有下划线。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具