自定义键盘快捷键

此内容由人工智能翻译,尚未经过人工编辑审核。图像和图表保持其原始语言。

要点速览

  • 设置并使用快捷键,提高工作效率。 在使用 Tabular Editor 3 时,快捷键是提升效率的有力工具。
  • 创建自定义快捷键。 Tabular Editor 3 允许你修改默认快捷键,以避免与全局快捷键冲突,并为 C# 宏等命令定义快捷键。
  • 将快捷键绑定到自定义硬件上,可能是一种独特但很实用的使用方式。 快捷键支持与 Stream Deck 等可编程键盘集成。

本摘要由作者撰写,并非由 AI 生成。


什么是键盘快捷键?为什么要关注?

它们看起来可能只是小事,但使用键盘快捷键,是确保效率提升最快、最简单的方法之一。 在 Tabular Editor 中这一点尤其明显,因为你可以按自己的习惯自定义快捷键。

Tabular Editor 2Tabular Editor 3 都提供了大量键盘快捷键。 下面是一些能帮你节省时间的实用快捷键示例:

B004 图 2 - 对比 Tabular Editor 2 与 Tabular Editor 3 在常见操作中(如连接到模型、格式化 DAX、添加度量值、更新架构、列出对象和参数信息)的键盘快捷键

提示

这些只是几个例子。 一般来说,如果你经常重复使用应用中的某个功能,就值得确认一下是否有对应的键盘快捷键可用。 你可以在操作旁边(例如菜单中)看到提示,或将鼠标悬停在按钮上时看到提示。

注意

两个版本都支持用键盘在界面中进行部分导航,但支持范围有限。 例如,在 TE3 中,ALT+V 会打开“视图”菜单,你可以用方向键选择想要的项目。 但总体来说,这种方式比使用鼠标更慢。

注意键盘快捷键的上下文!

前面提到的快捷键在应用的任何位置都能使用,效果也一致;但还有一些快捷键会取决于你当前在做什么。 如果你正在编辑代码,CTRL+U 会取消注释当前行或所选行;而在 TOM Explorer 中对隐藏的列按下 CTRL+U,则会将其重新显示。

查找所有现有快捷键

如果你看过文档(说实话,这前提挺大),你可能已经发现:用于取消代码注释的 CTRL+U 并未写在文档中(至少在本文撰写时是这样)。 那大家是怎么找到它的? 基本上有两种方法。 第一种是尝试你在其他应用中熟悉的快捷键,看看它们是否会按你预期工作。 这比你想象的更有效,但当然也有碰运气的成分。 第二种更全面的方式,是前往偏好并选择“键盘”。 在那里,你可以找到所有命令,并查看它们是否绑定了快捷键。

B004 图 3 - Tabular Editor 3 的偏好对话框,已选中“键盘”部分,展示如何搜索命令并查看分配的快捷键;高亮显示了取消注释命令及其 Ctrl+U

如果你不在搜索栏输入任何内容,只是向下滚动,逐个检查所有命令是否已有快捷键,很容易让人眼花缭乱。 但除非你在训练成为键盘忍者,否则没必要把 Tabular Editor 3 的所有快捷键都背下来。 观察你的工作方式,把少数几个快捷键先用到你最常做的操作上就好。 如果你喜欢这种方式,再继续学习一些新的快捷键也不迟。 如果你确实更喜欢用鼠标,也完全没问题。 Tabular Editor 3 足够灵活,可以适配开发者的不同偏好。

注意

在你把鼠标扔掉之前先提醒一句:并非所有选项都能仅靠键盘访问。 例如,即使你通过 UI 导航或自定义快捷键进入了 Vertipaq 功能,也无法仅用键盘点击“收集统计信息”按钮。

自定义键盘快捷键

现在我们已经讲完了键盘快捷键,终于可以进入本文的核心:自定义键盘快捷键。 操作很简单。 在我们用来检查某个命令是否已有快捷键的同一个对话框中,你可以在“按下快捷键”下方的输入框里点击一下,然后按下你想要的快捷键组合,最后点击“分配快捷键”,即可添加或修改快捷键。

一些不错的自定义键盘快捷键示例:

B004 Figure 4 - Table showing examples of custom keyboard shortcuts you can configure in Tabular Editor 3, including Select Multiple Add Each, Select Multiple Add Next, macros for referential integrity and DAX queries, and Open in Power BI

如你所见,你可以把宏配置到自定义键盘快捷键上。 这非常强大,因为这意味着:任何你能用脚本实现的操作,都可以绑定到一个键盘快捷键上。 这里列出了一些示例,但这其实只是冰山一角。

如何在 Tabular Editor 中为宏配置键盘快捷键

首先,你需要通过 Tabular Editor 脚本创建宏。 然后按以下步骤操作:

B004 Figure 5 - Step-by-step guide showing how to assign a keyboard shortcut to a macro in Tabular Editor 3: search for macro, select the macro number matching your saved macro ID, enter the shortcut keys, and click Assign shortcut

  1. 打开“偏好”中的键盘部分,并搜索“宏”
  2. 选择编号与目标宏所存储 ID 相匹配的命令(示例中是 34)
  3. 选择一个你觉得自己能记住的快捷键。 在这个例子中,针对参照完整性度量值,可以使用 Ctrl+Alt+R。
  4. 别忘了点击“分配快捷键”

如果你对这个示例中的宏感兴趣,不妨阅读这篇文章;如果你还想进一步尝试,也可以再读读这一篇

Tabular Editor 内的快捷键冲突

当你分配一个在 Tabular Editor 里已经存在的快捷键时,界面下方会先显示一条信息,告诉你该快捷键当前对应的功能。 即便如此,如果你仍然点击“分配快捷键”,那么你需要确认是否要将该快捷键重新分配给当前命令。如果你清楚自己在做什么,那就继续吧。

B004 Figure 6 - Tabular Editor 3 偏好对话框:尝试将 Ctrl+T 分配给某个命令时显示快捷键冲突警告,并弹出确认对话框询问是否继续重新分配

与其他应用的快捷键冲突

有些应用(例如 AutoHotKey 或 PowerToys)会以“始终置顶”的方式运行。在这种情况下,即使 Tabular Editor 处于焦点窗口,这些应用的快捷键也会覆盖 Tabular Editor 等其他应用的快捷键。你不会收到任何警告,因为(当然)这些应用彼此并不知情。

例如,CTRL+1 本来用于在 TOM Explorer 中切换度量值显示,但如果你正在运行并启用了 ZoomIt 功能的 PowerToys,CTRL+1 会改为放大屏幕:

B004 Figure 7 - Side-by-side comparison showing how PowerToys ZoomIt uses Ctrl+1 as its zoom toggle hotkey, which conflicts with Tabular Editor's TomExplorer.ToggleMeasures command that also uses Ctrl+1

处理这种情况的一个简单办法,就是在其中一个应用里重新映射快捷键,例如额外加上一个按键(比如 ShiftAlt):

B004 Figure 8 - Tabular Editor 3 偏好对话框:通过将 ToggleMeasures 命令从 Ctrl+1 重新映射为 Ctrl+Shift+1 来解决快捷键冲突

为什么要自定义键盘快捷键?

你可能会出于几个原因在 Tabular Editor 3 中自定义快捷键。我们逐一来看。

提升整体生产力

正如上一节所示,许多命令默认没有键盘快捷键,因此执行时需要多次点击;而我们也看到,用键盘进行 UI 导航并不太可行。哪怕是看起来只要点两下的“小事”,只要能不离开键盘就执行命令,也能让你的开发流程提速好几倍。

从 Stream Deck 执行宏

快捷键最有意思的用例之一,是从可编程键盘(例如 Stream Deck)触发。Alexander Korn 有一篇很棒的博文,介绍了(除其他内容外)他如何设置宏快捷键,以及如何在 Stream Deck 上设置按钮来执行这些快捷键,从而触发对应的宏。

需要强调的是,这不是快捷键的替代方案,而是另一种执行方式。你不再在键盘上按一个或多个按键,而是按下 Stream Deck 上的一个按键;这个按键可以有名称,甚至可以自定义图标。

要把 Stream Deck 的某个按键配置为执行 Tabular Editor 3 宏,你需要在 Stream Deck 中安装包含“Keystroke PTT”元素的 SuperMacro 插件。然后按以下步骤操作:

  1. 搜索“Keys”,以缩小列表中的元素范围
  2. 找到 Keystroke PTT
  3. 将 Keystroke PTT 拖到目标 Stream Deck 按键上
  4. 配置一个名称,方便你知道这个按钮会做什么(如果你愿意,也可以更换图标)
  5. 在 Capture Keystroke 中,点击“Capture”按钮,然后执行你在 Tabular Editor 3 中配置的同一个键盘快捷键。界面会显示代表该快捷键的代码。

B004 Figure 9 - The Stream Deck application showing how to configure a button to execute a Tabular Editor macro using the Keystroke PTT action from the SuperMacro add-in, with numbered steps highlighting the key configuration options

优点是:用一个带自定义彩色图标的物理按钮来调用宏,既直观又方便。缺点是:设置起来要花些时间,而且相对脆弱——当你把脚本保存为宏时,宏 ID 不太容易控制(因此在不同人之间共享,或在不同电脑之间复用,都会变得更复杂)。

注意

与上下文菜单不同,Stream Deck 会始终显示所有宏,而不只显示与你当前选中的对象相关的宏。因此,更建议只将这种方式用于那些运行时不需要任何选择的宏。

总结

现在你明白了。Tabular Editor 中的键盘快捷键非常强大,因为你可以为大量命令进行配置。几乎不可能记住全部快捷键,但学会那些你更常用的,能显著加快开发过程。

Related articles