Skip to content

Custom Theme Path Resolution #6678

@graysoncash

Description

@graysoncash

Pre-submit Checks

Describe the solution you'd like?

I have multiple Macs that I have Warp installed on. I'm using the same Warp account and have settings sync turned on for each. I also have a custom theme that I've put in the same location for each machine under $HOME/.warp/themes. I've noticed that with a previous machine, I didn't have an issue with setting the theme across machines because they had the same account name and home directory path. However, the new machine doesn't and when I go to set a theme, even though the underlying directory structure for the theme files are the same relative to the home directory, the machine that just synced the new setting value gets a black theme. It seems like because it was unable to resolve the file, it wasn't able to set a theme correctly.

In order to be able to sync custom themes across machines (not the actual file, just the path), it would be helpful if a custom theme's path is not synced by its fully qualified path, but rather, a relative path from the custom themes root directory. Since the custom themes path is not configurable, it does not appear to make sense to sync the fully qualified path. This would also help to keep this synced setting more platform generic.

To get the synced path value, I executed the following:

> defaults read dev.warp.Warp-Stable SelectedSystemThemes | python3 -c "import sys, json; print(json.dumps(json.loads(sys.stdin.read()), indent=2))"

{
  "light": {
    "Custom": {
      "name": "Some Theme Light",
      "path": "/Users/<username>/.warp/themes/some_theme/some_theme_light.yml"
    }
  },
  "dark": {
    "Custom": {
      "name": "Some Theme Dark",
      "path": "/Users/<username>/.warp/themes/some_theme/some_theme_dark.yml"
    }
  }
}

Is your feature request related to a problem? Please describe.

No response

Additional context

No response

Operating system (OS)

macOS

How important is this feature to you?

4

Warp Internal (ignore) - linear-label:39cc6478-1249-4ee7-950b-c428edfeecd1

None

Metadata

Metadata

Assignees

No one assigned

    Labels

    ai:ready-to-implementIndicates than an issue has been marked as ready-to-implement by an automated agent.area:settings-keybindingsSettings UI, preferences, keybindings, and keyboard-shortcut management.enhancementNew feature or request.triagedIssue has received an initial automated triage pass.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions