问题标签 [hammerspoon]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1661 浏览

macos-sierra - 锤子重映射控制键:单独按下时发送esc,与其他键一起按下时发送控制

在我看来,这是一个非常有用的重映射,因为您几乎从不单独键入 control,为什么不将它重映射到 esc?

由于 karabiner 消失了,我一直在尝试使用hammerspoon 恢复我最喜欢的功能,我认为这可以实现,但我无法让它工作,有谁知道如何正确地做到这一点?

0 投票
1 回答
113 浏览

hammerspoon - 定位两个终端窗口

我想启动两个终端并将它们放在屏幕上的特定位置。我知道如何使用一个终端来执行此操作,但是我必须做什么才能打开第二个终端并将其放置在第一个终端旁边?

这是一个终端的代码:

0 投票
1 回答
2458 浏览

hammerspoon - 使用hammerspoon将撇号重新映射到其他键

该问题是由库的错误引起的,并且已修复。


我正在使用hammerspoon,我正在尝试重新映射Ctrl + '到反引号(`),但我不能。

设置文件 init.lua 如下:

错误信息是:

似乎问题hs.keycodes.map不包括撇号(但它包括双引号和反引号)。

是否可以重新映射撇号?

0 投票
3 回答
1660 浏览

hammerspoon - Binding to multiple button clicks

To bind to the 1 key I use:

How to bind to multiple presses of 1 key? Something like:

Reading the documentation, this functionality is not mentioned.

By multiple presses I mean press 1 twice to run some code and press 1 three times to run a separate piece of code.

0 投票
1 回答
1364 浏览

lua - 我可以将 `init.lua` 与 Hammerspoon 中的不同组件分开吗?

我想分离init.luaHammerspoon 中使用的脚本以增强可读性和可维护性。

所以它看起来像下面这样:

  • 初始化.lua
  • AppWatcher.lua
  • WiFiWatcher.lua
  • KeyRemap.lua

然后我会从内部init.lua读取这些文件并激活观察者。

但是,似乎没有定义这样的函数(但也许我可能会错过它)。是否可以像在 Hammerspoon 中那样分离逻辑?

0 投票
1 回答
1431 浏览

lua - 如何在 Hammerspoon 中打开目录?

我想用键盘快捷键在 Hammerspoon 上打开一个目录。为了通过快捷方式打开任何应用程序,您可以使用以下命令:

但是,这不适用于文件系统。比如你要打开~/Dropbox,应该用什么方法打开应用?

0 投票
1 回答
95 浏览

lua - 一旦应用程序焦点切换到另一个,Command+DELETE 不再对 Hammerspoon 起作用

我现在init.lua在 Hammerspoon 上写我自己的,并且想将我的一些 kews 重新映射给其他人。具体来说,我想在我的 macOS 上切换反斜杠键和删除键。

然而,虽然简单的删除和反斜杠可以正常工作,但一旦我将应用程序焦点切换到另一个,在那里输入一些内容,然后返回到原始应用程序,删除键(实际上是我切换时的反斜杠键)工作时间更长;相反,它会在中止焦点之前删除应用程序中的字符(即倒数第二个焦点应用程序)。但是,如果我在那里输入一些内容,然后再次尝试删除它,突然删除再次起作用而没有任何问题。

我想知道为什么它突然不起作用;不过,这可能是一个错误。无论如何,这里是我init.lua切换删除和反斜杠。

我在这里错过了什么......?

0 投票
1 回答
454 浏览

lua - Hammerspoon:在窗口的标题栏中画一条线

我试图在焦点窗口的标题栏中画一条红线。为此,我创建了类似于以下的代码(它是一个最小的示例):

如果我将它输入到 Hammerspoon 控制台,然后

如果控制台位于显示屏的右半部分,它会在窗口外而不是在标题栏上画一条线。请参阅随附的屏幕截图。事实上,红线的位置和长度会随着控制台窗口的位置而变化,如果控制台位于显示屏的左半部分,则可以在标题栏上绘制所需的红线。我完全糊涂了。代码有什么问题?任何人都可以帮忙吗?

在此处输入图像描述

编辑

添加了更多照片。注意setStrokeWith(30)使用。

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

0 投票
2 回答
2620 浏览

macos - 使用锤子勺和空间模块将窗口移动到新空间

我已经从https://github.com/asmagill/hs._asm.undocumented.spaces安装了“无证空间”模块。特别是,它提供了一种方法moveWindowToSpace,我尝试使用cmd+1以下方法将当前窗口移动到空间 1:

这在将窗口移动到新空间的意义上起作用,但是,空间似乎是伪随机顺序。

有谁知道如何正确地将spaceIDs 返回的 s 映射spaces.query()到实际空间?

0 投票
1 回答
1391 浏览

macos - 在 Hammerspoon 中,如何在启动时获取当前关注的应用程序名称?

用户切换焦点后,我可以使用以下代码获取应用程序名称:

appName但我想要这个锤子勺初始化。