Skip to content

Conversation

nezia1
Copy link
Collaborator

@nezia1 nezia1 commented May 1, 2025

This PR overhauls the zsh module API. Taking heavy inspiration from the HM API, as I could not find a better/cleaner way to do this.

This simplifies declaring plugins, and also allows for more flexibility when it comes to files that don't follow conventional plugin naming and directory structure.

This brings in breaking changes, as this completely changes the API. If you want me to add temporary renames so that it helps migrating to it, let me know.

An example usage (from my personal configuration):

...
  plugins = {
  fzf-tab = {
    name = "fzf-tab";
    src = "${pkgs.zsh-fzf-tab}/share/fzf-tab";
  };
  zsh-autosuggestions = {
    name = "zsh-autosuggestions";
    src = "${pkgs.zsh-autosuggestions}/share/zsh-autosuggestions";
    file = "zsh-autosuggestions.zsh";
  };
  zsh-syntax-highlighting = {
    name = "zsh-syntax-highlighting";
    src = "${pkgs.zsh-syntax-highlighting}/share/zsh-syntax-highlighting";
    file = "zsh-syntax-highlighting.zsh";
  };
};

This simplifies declaring plugins, and also allows for more flexibility
when it comes to files that don't follow conventional plugin naming and
directory structure.
@nezia1 nezia1 marked this pull request as draft May 1, 2025 12:22
@Lunarnovaa Lunarnovaa mentioned this pull request May 8, 2025
19 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant