• Derek Stavis's avatar
    omf.theme: Rework theme activation code · ea0b464f
    Derek Stavis authored
    - Move theme installation to cli entry point (omf.fish)
    - Generalize XDG_CONFIG_HOME code in `omf.xdg.config_home`
    - Generalize prompt conflicts check in `omf.checks.fish_prompt`
      * Migrate `omf.doctor` to use it
    
    + Change theme activation steps
      - Create user function path if not existent
      - Check for conflicts in fish_prompt, aborts if found
      - Remove current theme from autoloading paths
      - Add target theme to autoloading paths
      - Link target theme's fish_prompt to user's
      - Persist selected theme to $OMF_CONFIG/theme
    
    This approach brings two major advantages:
    
    - Theme prompt now shows accordingly in fish_config web interface
    - Faster theme changes, reducing it from seconds to some milis
    - Avoids calling refresh, which makes users much more happy
    ea0b464f
omf.check.fish_prompt.fish 384 Bytes