MATLAB社区

MATLAB,社区和更多

MATLAB中键盘快捷键的历史


我要欢迎来自MATLAB编辑团队的客座博主Christina Roberts。Christina是可配置键盘快捷键特性的主要开发人员。

我的上一个帖子给出了如何使用新的键盘快捷键偏好面板的概述。这篇文章将深入研究MATLAB中的键盘快捷键的历史,这将有助于更清楚地了解为什么我们决定改变一些默认的键盘快捷键分配。

MATLAB桌面是由许多不同的开发人员多年来开发的。尽管开发人员试图遵循通用操作的平台标准,但一些特定于matlab的操作在不同的桌面工具中被分配了不同的键盘快捷键,这取决于开发人员创建的工具。这方面的一个很好的例子如下所示,在遗留的R2009a Windows默认设置中开放的选择整个桌面可用的操作。除了下面可以看到的四个不同的快捷方式外,还有一些操作工具根本没有快捷方式。

更复杂的问题是,分配给命令窗口的原始键盘快捷键是基于Emacs的,而不管平台是什么。其他特定于平台的快捷方式也被添加到命令窗口中,只要它们不与现有的Emacs快捷方式冲突;例如,在Windows上添加了Ctrl+O来执行开放,但Ctrl+A不能分配给命令窗口的选择所有操作,因为Ctrl+A是将光标移动到行首的Emacs赋值。

不久,客户开始要求在编辑器和命令窗口中配置键盘快捷键,这是当时主要的桌面工具。为了帮助适应这些请求,为编辑器和命令窗口开发了三个默认集,用户可以在这些集之间独立选择(注意Macintosh集只在Macintosh平台上可用)。为了保持向后兼容性,默认设置保持不变,即使编辑器和命令窗口之间不一致——命令窗口在所有平台上都使用基于emacs的快捷键,但默认情况下为编辑器选择的键盘快捷键设置因平台而异。这让MATLAB的新用户非常困惑,因为他们希望获得更一致的用户体验。

随着MATLAB的不断发展,更多的工具被添加到桌面中,它们的键盘快捷键被硬编码成每个开发人员都觉得有意义的值。因此,尽管用户喜欢在编辑器和命令窗口中有一些键盘快捷键的选择,但我们继续收到许多要求在整个桌面中定制单个键盘快捷键的请求。这对于使用非英语键盘的用户来说尤其必要,因为这些键盘根本无法触发我们的一些默认快捷键。

面对创建一个新的键盘快捷键基础架构的挑战,我有几个要求。我想提供一种统一桌面工具的键盘快捷键的方法,这样,在默认情况下,相同的操作有相同的快捷键,不管它是在哪里被触发的。但是,我知道做这样的更改会引入向后不兼容,可能会惹恼现有的MATLAB用户,所以我想确保客户具有灵活性,以实现我们之前支持的完全相同的混合配置。金宝app同时,这种灵活性也不会给那些想要在桌面上快速更改键盘快捷方式而不需要处理单个工具的用户带来负担。

现在让我们看看我开发的解决方案,使用上面讨论的Ctrl+ a示例。首先,将新的Windows Default Set中的Ctrl+A赋值与遗留的R2009a集中的赋值进行比较。

新的Windows默认设置为R2009b

旧Windows默认设置为R2009a

在Windows上的R2009a中,Ctrl+A没有分配给选择所有,而不是基于emacs的分配光标开始行.现在,让我们假设你是一个已有的MATLAB用户你的肌肉记忆中有Ctrl+A去到线条的开头。您有两个选项—您可以恢复到遗留的R2009a Windows默认设置,或者您可以修改选择所有光标开始行新默认集中的赋值。

如果困扰你的键盘快捷键数量相对较少,那么修改新的默认设置是一个更好的长期解决方案。如果您坚持使用我们新的默认设置,当新的操作和工具被添加到桌面时,您将自动获得它们的键盘快捷键——这是因为我们只存储您从我们的发货默认设置中所做的定制(差异)。相比之下,遗留集是R2009a版本中完整的列表,它们不会随着新特性而演进。

因此,让我们在新的Windows默认设置中更改与Ctrl+A相关的赋值。要做到这一点,首先点击选择所有然后使用Ctrl+A快捷键将命令窗口从工具列表中取消分配。

然后选择光标开始行,按下按钮,并添加一个新的快捷键Ctrl+ a到命令窗口。

如果您现在在操作表中搜索Ctrl+A,您将看到分配与R2009a中的分配相匹配。

这是对新的可定制键盘快捷键是如何开发的一个快速总结。我希望你觉得这个功能有用,我很乐意听到你的反馈!

——克里斯蒂娜·罗伯茨(Christina Roberts), The MathWorks

|

评论

要留下评论,请点击在这里登录到您的MathWorks帐户或创建一个新帐户。