是否可以使用 CLI 设置默认 iTerm 配置文件?

是否可以使用 CLI 设置默认 iTerm 配置文件?

我正在尝试为 iTerm2 编写一个 MacOS 配置脚本,它将(1)加载动态配置文件并(2)将其设置为默认配置文件。

加载配置文件只需将其放入即可~/Library/Application\ Support/iTerm2/DynamicProfiles。将该配置文件设置为默认配置文件有点棘手。

我看到 Python API 公开了一种更新默认配置文件的方法,但我希望能够使用 plist com.googlecode.iterm2。我看到有一个Default Bookmark Guidplist 条目,但设置它似乎没有效果。

有人这样做过吗?同样,我的目标是零用户交互来指定默认配置文件。

答案1

iTerm 有一个 Python API 允许您执行此操作。

就我个人而言,我通过创建解决了这个问题这个脚本

import iterm2

async def main(connection):
    all_profiles = await iterm2.PartialProfile.async_query(connection)
    for profile in all_profiles:
        if profile.name == "Projects":
            await profile.async_make_default()
            return

iterm2.run_until_complete(main)

然后,使用 Ansible,我将该脚本链接到 iTerm 的自动运行目录

- name: Link iTerm AutoLaunch Scripts 
  file: 
    src: "{{role_path}}/files/iTerm/change_default_profile.py"
    path: "{{iterm.autorun_dir}}/change_default_profile.py"
    state: link
    force: true

然后,无论何时启动 iTerm,它都应该默认使用启动 python 脚本中定义的配置文件。

相关内容