希望能够用终端命令来打开和关闭下图标注的这个选项
印象中defaults
命令似乎可以更改系统的配置,比如
defaults write -g NSWindowShouldDragOnGesture -bool true
但不知道怎么使用defaults
来更改某项特定设置
当然,有个笨方法是用 AppleScript 来操作 GUI ,但是希望避免这种解法
感谢各位
1
di11wei 2022-11-30 19:21:27 +08:00
我不理解啊,有图形的开关为啥要用终端去操作呢
|
2
nah 2022-11-30 19:36:44 +08:00
同等,我也希望有个命令能保存和执行 mac 的所有 system preferences 的改动。
mac 现在一点也不 unix-like 。 |
3
HanningWu OP @di11wei 有时候突然需要把设备给有经验的同事用那么几分钟,比如请教 ta 一个问题,当着人家面每次都要改这个设置很没效率。如果通过命令行能实现,就可以绑定一个快捷键,每次同事过来我一键就能切换了。
|
4
DonDonc 2022-11-30 23:32:28 +08:00 1
|
5
lirunext 2022-12-01 00:49:47 +08:00 2
可以交流一下。个人曾经也有类似问题,研究出一个方法:在修改前 defaults read xxx 来输出修改前的所有项和值,然后在 UI 修改要寻找的设置项,改完后再 defaults read xxx 来输出修改后的所有项和值,对比下两次的结果变化就知道是哪个了。
p.s 内容太多的话可以用 defaults read xxx >name.txt 的方式导出到文本文件,再用文本对比软件来对比,会比较方便。 |
6
lirunext 2022-12-01 00:55:11 +08:00
另外,楼上这个方法只能找到是哪个项,要马上生效的话也是个问题,UI 操作修改了设置只要点“完成”就马上生效了,这样通过改配置文件的方式往往并不会马上生效,需要程序重新加载读取这个配置文件才会生效,所以这种情况下还得需要再把进程杀掉再重新打开。
特此借楼提个问题,有没有方法实现 UI 操作中点“完成”那种马上生效且不必重启进程的效果? |
7
HanningWu OP @lirunext 很取巧,可惜我没找到对应的内容(搜了 Latin/CapsLock/Input 之类的关键字),还是感谢了。这个方法深挖的话,好像很有玩头!
|
8
Eloxt 2022-12-01 08:45:57 +08:00
请教一下截图中的强调色是怎么设置的?似乎不是系统自带的颜色。
|
9
lirunext 2022-12-01 13:55:38 +08:00
@HanningWu 你是 read 哪个 plist 的?按道理来讲这些设置一般都是存在 plist 里的,对比下修改前后的内容差别,不是找错了 plist 文件的话不应该找不到
|
11
HanningWu OP |
12
lirunext 2022-12-01 16:38:54 +08:00 1
@HanningWu 帮你找了下,是~/Library/Preferences/.GlobalPreferences.plist 这个文件里“TISRomanSwitchState”这个项,数据类型是 int ,0 表示关,1 表示开,以下命令可以直接用:
defaults write .GlobalPreferences TISRomanSwitchState -int 0 defaults write .GlobalPreferences TISRomanSwitchState -int 1 接着 6 楼的问题,我试过命令执行后并不会马上生效,而是要注销当前用户 /重启才生效,如果你能找到相关的进程然后干掉再启动说不定也可以马上生效。 |
14
tobemaster 2022-12-02 11:23:02 +08:00
首先我尝试了一下用 AppleScript ,即便有 ui browser 的帮助,最后,没写出来,AppleScript 编程有太多的局限性,
后来,我换了另外一个软件,试了一下,录制了一个操作,看起来效果挺好的, 这个软件是 https://www.keysmith.app/ ,我是因为用了 Setapp ,单买的话,貌似挺贵的。 这个 APP 可以解决很多其他的自动话操作,也算是各思路吧 自动化切换 capslock 链接: https://lusun.com/v/T6baNlKKZuZ |