2016-01-01 22:12:40 +01:00
fisher-install(1) -- Enable / Install plugins
=============================================
## SYNOPSIS
fisher `install` [*name* or *url* ...] [`--quiet`] [`--help`]
## USAGE
fisher `install` *plugin* ...< br >
fisher `install` *owner/repo* ...< br >
## DESCRIPTION
Install one or *more* plugins by *name* , searching `$fisher_index` or by *url* . If no arguments are given, read the standard input.
Fisherman v0.2.0
* Improved README, added links to screencasts, updated
documentation with new changes and fixed other typos and
composition errors.
* Removed `fisher update --cache` in favor of
`fisher --cache | fisher update` and
`fisher uninstall --all` in favor of
`fisher --cache | fisher uninstall`.
* Fisherman does not move initialization / configuration
files following the convention `name`.config.fish to
`$fisher_config/functions`, but to `$fisher_config/conf.d`
now and evaluates each `*.config.fish` inside at shell
start as usual. Closes #13.
* Added `fisher --cache[=base]` option to retrieve contents
in `$fisher_cache`, eliminating flaky usage of `find(1)`.
Closes #11.
* Fisherman now generates information about plugins installed
via custom URLs. For the description, a shortened version of
the URL is used. For the URL the full URL is used. For tags,
the URL is fuzzily checked and tags such as _theme_, _plugin_,
_config_ and _omf_ are added. The tag _orphan_ is added by
default as well. Finally, the author is generated by
retrieving the e-mail or username of the author of the
first commit in the plugin's repository. Closes #9 and #14.
* Changed `--path-in-cache` to `--translate.` This function
translates an name or supported URL/URL variation into a path
inside `$fisher_cache`. This allows you to treat plugins
installed via custom URLs almost like regular plugins if they
are installed. Closes #8.
* Fixed a bug with `mktemp` failing on some systems.
Closes #7. Thanks @tobywf.
* Added [CODE_OF_CONDUCT][code_of_conduct]. Closes #6.
* Fisherman can now unload themes within the same shell,
without having to restart the session. Closes #5.
* Fisherman can now load themes within the same shell,
without having to restart the session using `exec fish`.
Shoddy themes, for example those failing to declare global
variables with the `-g` flag still require the session to
be reset. See [**related**][bobthefish-19]. Closes #4.
* Move `getopts` implementation to `share/getopts.awk`.
Closes #3.
* Support dots inside URIs in `fisher --validate`.
Closes #2.
2016-01-03 04:35:56 +01:00
If the domain or host is not provided, Fisherman will use any value in `$fisher_default_host` . The default is `https://github.com` .
2016-01-01 22:12:40 +01:00
Fisherman v0.2.0
* Improved README, added links to screencasts, updated
documentation with new changes and fixed other typos and
composition errors.
* Removed `fisher update --cache` in favor of
`fisher --cache | fisher update` and
`fisher uninstall --all` in favor of
`fisher --cache | fisher uninstall`.
* Fisherman does not move initialization / configuration
files following the convention `name`.config.fish to
`$fisher_config/functions`, but to `$fisher_config/conf.d`
now and evaluates each `*.config.fish` inside at shell
start as usual. Closes #13.
* Added `fisher --cache[=base]` option to retrieve contents
in `$fisher_cache`, eliminating flaky usage of `find(1)`.
Closes #11.
* Fisherman now generates information about plugins installed
via custom URLs. For the description, a shortened version of
the URL is used. For the URL the full URL is used. For tags,
the URL is fuzzily checked and tags such as _theme_, _plugin_,
_config_ and _omf_ are added. The tag _orphan_ is added by
default as well. Finally, the author is generated by
retrieving the e-mail or username of the author of the
first commit in the plugin's repository. Closes #9 and #14.
* Changed `--path-in-cache` to `--translate.` This function
translates an name or supported URL/URL variation into a path
inside `$fisher_cache`. This allows you to treat plugins
installed via custom URLs almost like regular plugins if they
are installed. Closes #8.
* Fixed a bug with `mktemp` failing on some systems.
Closes #7. Thanks @tobywf.
* Added [CODE_OF_CONDUCT][code_of_conduct]. Closes #6.
* Fisherman can now unload themes within the same shell,
without having to restart the session. Closes #5.
* Fisherman can now load themes within the same shell,
without having to restart the session using `exec fish`.
Shoddy themes, for example those failing to declare global
variables with the `-g` flag still require the session to
be reset. See [**related**][bobthefish-19]. Closes #4.
* Move `getopts` implementation to `share/getopts.awk`.
Closes #3.
* Support dots inside URIs in `fisher --validate`.
Closes #2.
2016-01-03 04:35:56 +01:00
In addition, all of the following variations are accepted:
2016-01-01 22:12:40 +01:00
Fisherman v0.2.0
* Improved README, added links to screencasts, updated
documentation with new changes and fixed other typos and
composition errors.
* Removed `fisher update --cache` in favor of
`fisher --cache | fisher update` and
`fisher uninstall --all` in favor of
`fisher --cache | fisher uninstall`.
* Fisherman does not move initialization / configuration
files following the convention `name`.config.fish to
`$fisher_config/functions`, but to `$fisher_config/conf.d`
now and evaluates each `*.config.fish` inside at shell
start as usual. Closes #13.
* Added `fisher --cache[=base]` option to retrieve contents
in `$fisher_cache`, eliminating flaky usage of `find(1)`.
Closes #11.
* Fisherman now generates information about plugins installed
via custom URLs. For the description, a shortened version of
the URL is used. For the URL the full URL is used. For tags,
the URL is fuzzily checked and tags such as _theme_, _plugin_,
_config_ and _omf_ are added. The tag _orphan_ is added by
default as well. Finally, the author is generated by
retrieving the e-mail or username of the author of the
first commit in the plugin's repository. Closes #9 and #14.
* Changed `--path-in-cache` to `--translate.` This function
translates an name or supported URL/URL variation into a path
inside `$fisher_cache`. This allows you to treat plugins
installed via custom URLs almost like regular plugins if they
are installed. Closes #8.
* Fixed a bug with `mktemp` failing on some systems.
Closes #7. Thanks @tobywf.
* Added [CODE_OF_CONDUCT][code_of_conduct]. Closes #6.
* Fisherman can now unload themes within the same shell,
without having to restart the session. Closes #5.
* Fisherman can now load themes within the same shell,
without having to restart the session using `exec fish`.
Shoddy themes, for example those failing to declare global
variables with the `-g` flag still require the session to
be reset. See [**related**][bobthefish-19]. Closes #4.
* Move `getopts` implementation to `share/getopts.awk`.
Closes #3.
* Support dots inside URIs in `fisher --validate`.
Closes #2.
2016-01-03 04:35:56 +01:00
* `github` /owner/repo `->` https://github.com/owner/repo< br >
* `gh:` owner/repo `->` https://github.com/owner/repo< br >
Shortcuts for other common Git repository hosting services are also available:
* `bb:` /owner/repo `->` https://bitbucket.org/owner/repo< br >
* `gl:` /owner/repo `->` https://gitlab.com/owner/repo< br >
* `omf:` /owner/repo `->` https://github.com/oh-my-fish/repo< br >
If a copy of the plugin already exists in `$fisher_cache` , the relevant files will be copied to `$fisher_config` /functions, otherwise the plugin repository is first downloaded. If you wish to update a plugin, use `fisher update` *plugin* instead.
If the plugin declares dependencies, these will be installed as well. If any dependencies are already installed they will not be updated in order to prevent version issues. See `fisher help fishfile` #{`Plugins`}.
If a plugin includes either a fish_prompt.fish or fish_right_prompt.fish, both files are first removed from `$fisher_config` /functions and then the new ones are copied.
2016-01-01 22:12:40 +01:00
## OPTIONS
* `-q` `--quiet` :
Enable quiet mode.
* `-h` `--help` :
Show usage help.
## PROCESS
Here is a typical install process breakdown for *plugin* :
1. Check if *plugin* exists in `$fisher_index` . Fail otherwise.
2. Download *plugin* to `$fisher_cache` if it is not there already.
3. Copy all `*.fish` and functions/`*.fish` files to `$fisher_config` /functions.
4. Copy all completions/`*.fish` to `$fisher_config` /completions.
5. Copy all man/man[`1-7`] to `$fisher_config` /man/man`%`
Here is the *plugin* tree inside the cache:
`$fisher_cache` /*plugin*< br >
|-- README.md< br >
|-- *plugin* .fish< br >
|-- functions< br >
| |-- plugin_helper.fish< br >
|-- completions< br >
| |-- *plugin* .fish< br >
|-- test< br >
| |-- *plugin* .fish< br >
|-- man< br >
|-- man1< br >
|-- *plugin* .1< br >
Fisherman v0.2.0
* Improved README, added links to screencasts, updated
documentation with new changes and fixed other typos and
composition errors.
* Removed `fisher update --cache` in favor of
`fisher --cache | fisher update` and
`fisher uninstall --all` in favor of
`fisher --cache | fisher uninstall`.
* Fisherman does not move initialization / configuration
files following the convention `name`.config.fish to
`$fisher_config/functions`, but to `$fisher_config/conf.d`
now and evaluates each `*.config.fish` inside at shell
start as usual. Closes #13.
* Added `fisher --cache[=base]` option to retrieve contents
in `$fisher_cache`, eliminating flaky usage of `find(1)`.
Closes #11.
* Fisherman now generates information about plugins installed
via custom URLs. For the description, a shortened version of
the URL is used. For the URL the full URL is used. For tags,
the URL is fuzzily checked and tags such as _theme_, _plugin_,
_config_ and _omf_ are added. The tag _orphan_ is added by
default as well. Finally, the author is generated by
retrieving the e-mail or username of the author of the
first commit in the plugin's repository. Closes #9 and #14.
* Changed `--path-in-cache` to `--translate.` This function
translates an name or supported URL/URL variation into a path
inside `$fisher_cache`. This allows you to treat plugins
installed via custom URLs almost like regular plugins if they
are installed. Closes #8.
* Fixed a bug with `mktemp` failing on some systems.
Closes #7. Thanks @tobywf.
* Added [CODE_OF_CONDUCT][code_of_conduct]. Closes #6.
* Fisherman can now unload themes within the same shell,
without having to restart the session. Closes #5.
* Fisherman can now load themes within the same shell,
without having to restart the session using `exec fish`.
Shoddy themes, for example those failing to declare global
variables with the `-g` flag still require the session to
be reset. See [**related**][bobthefish-19]. Closes #4.
* Move `getopts` implementation to `share/getopts.awk`.
Closes #3.
* Support dots inside URIs in `fisher --validate`.
Closes #2.
2016-01-03 04:35:56 +01:00
And thisi is how the files are copied from `$fisher_cache` /plugin to `$fisher_config` :
2016-01-01 22:12:40 +01:00
1. *plugin* .fish `->` $fisher_config/functions
2. functions/plugin_helper.fish `->` $fisher_config/functions
3. completions/*plugin*.fish `->` $fisher_config/completions
4. man/man1/*plugin*.1 `->` $fisher_config/man/man1
## SEE ALSO
`fisher` (1)< br >
`fisher help config` < br >
`fisher help update` < br >
`fisher help uninstall` < br >
`fisher help fishfile` #{`Plugins`}< br >