oh-my-fish / oh-my-fish-legacy

Oh My Fish!
MIT License
13 stars 2 forks source link

simplify omf install and theme commands #582

Closed ghost closed 9 years ago

ghost commented 9 years ago

Instead of

omf install
omf install plugin 
omf theme theme

Let's do this

omf get pkg 
# if plugin → install/update plugin (add to $OMF_CONFIG/bundle)
# if theme → download/update and apply theme (add to $OMF_CONFIG/bundle)

In the same vein, we could simplify or completely remove other or _ALL_ commands.

Instead we could have packages for everything, literally, everything.

Some packages would install by default (you could remove them if you want of course).

In order to implement this, I propose a lightning fast no parsing method based in directories and files.

bpinto commented 9 years ago

I don't think omf install and omf theme are the same thing. I like quickly changing theme using omf theme. What I don't like is to not be able to install themes using omf install.

IMO omf install should be able to install both plugins and themes and we use omf theme as a way to download (if not already downloaded) the theme and to set it as default.

bpinto commented 9 years ago

omf get pkg is a bad name imo, we should stick with install.

ghost commented 9 years ago

Don't concentrate in the name. The name sucks.

For OMF they are not the same thing, but from the POV of the user they _are_. I just described the algorithm above:

# if plugin → install/update plugin (add to $OMF_CONFIG/bundle)
# if theme → download/update and apply theme (add to $OMF_CONFIG/bundle)

You can still switch themes. I like to do that often too.

IMO omf install should be able to install both plugins and themes and we use omf theme as a way to download (if not already downloaded) the theme and to set it as default.

Why make the difference when you can do everything with the same command? The user intention is always evident.

derekstavis commented 9 years ago

IMO omf install should be able to install both plugins and themes and we use omf theme as a way to download (if not already downloaded) the theme and to set it as default.

I agree with @bpinto. omf theme should do what it's supposed to: change themes (installing them if needed).

ghost commented 9 years ago

@derekstavis omf theme should go away along with install and most of all the other commands. That's the point of this issue and you are not addressing it.

ghost commented 9 years ago
omf install # install bundles
omf install my_theme # install my_theme
omf install my_plugin # install my_plugin

omf update # update omf
omf update my_theme # update my_theme

If we can agree with the above I can start working on it.

bpinto commented 9 years ago

Go for it! :+1:

derekstavis commented 9 years ago
omf install # install bundles
omf install my_theme # install my_theme
omf install my_plugin # install my_plugin

omf update # update omf
omf update my_theme # update my_theme

This is OK for me :+1:

ghost commented 9 years ago

I have changed my mind about this.

Already explained it on gitter to @bpinto, but here goes again.

Instead of providing core commands, OMF could provide "plumbing" functions with the things it is able to do such as a installing a package, updating a package, removing a package, etc.

Packages could tap into this API (most of it already done) and provide plugins not only for global new fish functions, but for omf commands as well. Everyone will have a chance to review my PR before anything is decided. I hope it makes it :smile: