- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
TLDR: How do I get CapsLock to translate to "ShortNameDelimiter" in Mma 7?
f[\[Alpha]_] =...
以便匹配我正在使用的确切方程。因此,它涉及到很多 Esc-letter-Esc 序列,并且每隔一个笔划就达到 Esc 会破坏我的打字流程。
vim
上将其重新映射为 Esc为我创造了奇迹,我想知道是否有办法在
mma
中做同样的事情,而无需修改系统的键盘布局。
KeyEventTranslations.tr
通过在
EventTranslations[{...
中添加以下内容
Item[KeyEvent["CapsLock"], "ShortNameDelimiter"]
CapsLock
不是正确的标识符?如果有帮助,我在 Mac 上使用 Mma7 学生版。
最佳答案
修饰键被非常特殊地处理,我怀疑 Mathematica 将能够覆盖系统。你可能 有在 Mathematica 和操作系统之间的层中执行此操作。但是,可以根据您所在的应用程序使 key 的行为有所不同。因此,通过一些工作,可能有大写锁定键的行为仅在 Mathematica 中有所不同.
编辑:我没有看到你说你有哪个操作系统,所以我添加了 Mac 说明。
window
例如,如果您有 Windows,则可以使用名为 http://www.autohotkey.com/ 的程序。 .它特别具有一个功能,您可以将 key 绑定(bind)到脚本,特别是以下脚本:
How can a hotkey or hotstring be made exclusive to certain program(s)?
In other words, I want a certain key to act as it normally does except when a specific window is active.In the following example, NumpadEnter is made to perform normally except when a window titled "CAD Editor" is active. Note the use of the $ prefix in "$NumpadEnter", which is required to let the hotkey "send itself":
$NumpadEnter::
IfWinNotActive, CAD Editor
{
Send, {NumpadEnter}
return
}
; Otherwise, the desired application is active, so do a custom action:
Send, abc
return
This next example is more pure than the above, but it will only work if the "CAD Editor" application is designed to ignore the NumpadEnter key itself. The tilde prefix (~) makes NumpadEnter into a non-suppressed hotkey, meaning that the NumpadEnter keystroke itself is always sent to the active window, the only difference being that it triggers a hotkey action. The ~ feature requires Windows NT/2k/XP.
~NumpadEnter::
IfWinNotActive, CAD Editor
return
; Otherwise, the desired application is active, so do a custom action:
Send, abc
return
要引用此论坛帖子中的“MRCS”,您可能会发现以下内容很有用:
The first one I named CapsLockR.ahk and contains the following script:
CapsLock UP::Run C:\Documents and Sett...[path to script]...\CapsLock.ahk
The second one is named CapsLock.ahk and has this script:
GetKeyState, state, CapsLock, T
if state = D
SetCapsLockState, off
else
SetCapsLockState, on
exit
因此,更糟糕的是,如果您在修改“如果 Active Window = Mathematica 其他行为像 Bar”脚本时遇到问题,您可以在此基础上手动切换我认为的 CapsLock 状态。谷歌搜索也会显示更多结果。
xbindkeys
的程序。将 CapsLock 绑定(bind)到一个脚本,然后您可以从中调用
xdo
如果您检测到 Mathematica 是最顶层的窗口之一(例如,通过
Getting pid and details for topmost window 或
xdotool getwindowfocus
)或更糟的情况,您可以只使用一个脚本来在
CapsLock -> xdotool key Escape, xdotool type "whatever", xdotool key Escape
之间切换您的配置(“Mathematica 模式”)和“正常模式”......虽然这可能会阻止你在做数学时对数学家大喊大叫。除非您可能需要找到某种方法来以编程方式切换 CapsLock,也许是通过创建一个虚拟 CapsLock 键(虽然这是一种极端的技巧,但很可能可以找到某种库;也许
Anybody know how to toggle caps lock on/off in Python? 可能有用)。 (这个问题可以通过使用 CapsLock 之外的键来避免,或者不关心您想要保留 CapsLock 功能;您也可以将另一个您从未使用过的键变成 CapsLock。)
xdotool
就像通过 MacPorts 项目在上面的 Linux 上一样。我听说 CapLock 键通常不能在 Mac 上轻松反弹,所以如果你可以处理另一个键,它可能会容易得多。但是理论上应该是可以的...
xdotool
的脚本检查您是否在 Mathematica 中也可以发出
:esc:...:esc:
如果您是(请参阅此答案的 Linux 部分)。否则,您将模拟 CapsLock 上的按键。但是你重新映射了 CapsLock!因此,您可能需要在 CapsLock 键中创建另一个您从未使用过的虚拟键,并使用 Cocoa 库或简单的 AppleScript 触发按键。如果你想追求 CapsLock 路线,你可能会发现
Using Caps Lock as Esc in Mac OS X有用。
关于macos - 在 Mma 7 中将 Caps Lock 键重新映射为 Esc,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5808695/
我想知道锁是如何在 Java 中实现的。在一些教程中,我发现它们应该使用 wait() 和 notify()/notifyAll() 以及一些 boolean 标志来实现(它可能比那复杂得多,但基本上
我正在开发一个多线程服务器,用于存储和读取来自数据库的信息。数据库是用 RocksDB 实现的。 我遇到的问题是,当我一次从多个线程访问数据库时,我得到了那个错误。 通常是说db在usign后没有被删
例如,这里有一些 linux 中的代码: void set_leds(int val) { int fd = open ("/dev/console", O_WRONLY); // argumen
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 9 年前。 Improve this qu
考虑以下代码。为了防止IndexOutOfBoundsException打电话时 listIterator ,我们使用读取器锁来检索基于索引的 iteartor,并在对 stockCodes 进行写操
这个问题在这里已经有了答案: Java locking structure best pattern (2 个答案) 关闭 6 年前。 有什么区别: private Lock lock = new
是否可以在网页加载时检查 Scroll Lock、Num Lock 和 Caps Lock 的状态?我找到了使用 JavaScript 在按键后进行检查的方法,但这不是我要问的。 最佳答案 2019
是否可以在网页加载时检查 Scroll Lock、Num Lock 和 Caps Lock 的状态?我找到了使用 JavaScript 在按键后进行检查的方法,但这不是我要问的。 最佳答案 2019
在Ubuntu中安装某些东西时出现错误。我尝试了一些命令来杀死正在运行的进程,但仍然遇到相同的错误。 最佳答案 根据文章How to Fix “Waiting for cache lock: Coul
我们有一个gradle构建,它可以动态创建GradleBuild类型的多个任务,以与不同的客户端库版本一起运行以测试其兼容性。在Gradle4上可以正常工作,但是在移至Gradle5后,执行第一项任务
我在尝试运行在 vertica 数据库表上运行查询的客户端应用程序时反复遇到此错误。 有人可以帮助解决这个问题吗? 最佳答案 我想知道您的客户端应用程序向 Vertica 发送了哪种“查询”(以 RE
我有一个创建锁的方法。 ReadWriteLock lock = new ReentrantReadWriteLock(); 然后我使用 Lock Interface 将该对象传递到一个方法中。 m
正如问题所问,我知道这是可能的on Linux ,但我找不到任何适用于 Windows 的最新信息。有可能吗? 最佳答案 您可以使用 ctypes 加载 user32.dll 然后调用 GetKeyS
这是同一个问题 Change keyboard locks in Python或者 How to change caps lock status without key press . 但还是有区别的
与 this question 相同,不知道为什么Java团队没有在Lock中添加一些默认方法界面,类似这样: public default void withLock(Runnable r) {
我有一个带有package-lock.json文件的项目。 现在,我想基于yarn.lock文件或项目的现有package-lock.json生成node_modules文件。 我怎样才能做到这一点?
我正在查看 pthreadtypes.h 文件中的 pthread_mutex_t 结构。 “__lock”代表什么?它就像分配给互斥锁的锁号吗? typedef union { struct _
我正在研究避免死锁的措施,其中一种可能的方法是通过强制线程放弃它在访问另一个锁但无法访问该锁时已经持有的锁来打破循环等待。 以最简单的银行账户转账为例: class Account { priva
我被要求支持一些遗留代码,我看到了一些让我摸不着头脑的事情。在某些代码段中,我看到类实例使用 CMutex 实例来同步方法执行。例如 class CClassA : public CObject {
当我们调用 lock.lock() 或尝试进入一个 synchronized block 时,如果其他线程已经获取了该锁,我们的线程就会阻塞。现在我的问题是,当我们查看 lock.lock() 的实现
我是一名优秀的程序员,十分优秀!