Sheldon has three different types of commands.
initinitializes a new config file.
sourcedeal with plugin downloading, installation, and generation of shell source code.
removeautomate editing of the config file.
This command initializes a new config file. If a config file exists then this command does nothing.
Or you can specify the shell.
sheldon init --shell bash
sheldon init --shell zsh
lock command installs the plugins sources and generates the lock file
~/.sheldon/plugins.lock). Rerunning this command without any extra options
will not reinstall plugin sources, just verify that they are correctly
installed. It will always regenerate the lock file.
To update all plugin sources you can use the
sheldon lock --update
To force a reinstall of all plugin sources you can use the
sheldon lock --reinstall
This command generates the shell script. This command will first check if there
is an up to date lock file, if not, then it will first do the equivalent of the
lock command above. This command is usually used with the built-in shell
eval "$(sheldon source)"
But you can also run it directly to inspect the output. The output of this command is highly configurable. You can define your own custom templates to apply to your plugins.
This command adds a new plugin to the config file. It does nothing else but edit the config file. In the following command we add a GitHub repository as a source.
sheldon add my-repo --git https://github.com/owner/repo.git
An example usage of this command for each source type is shown in the Configuration section.
This command will open the config file in the default editor and only overwrite
the contents if the updated config file is valid. To override the editor that is
used you should set the
EDITOR environment variable.
For example using
EDITOR=vim sheldon edit
Or with Visual Studio Code
EDITOR="code --wait" sheldon edit
This command removes a plugin from the config file. It does nothing else but
edit the config file. In the following command we remove the plugin with name
sheldon remove my-repo
Sheldon accepts the following global command line flags.
|Suppress any informational output|
|Use verbose output|
|Show the help message and exit|
|Show the version and exit|
Sheldon accepts the following global command line options.
|Output coloring: |
|Set the home directory. (default: auto)|
|Set the config directory. (default: |
|Set the data directory. (default: |
|Set the config file. (default: |
|Set the lock file. (default: |
|Set the clone directory. (default: |
|Set the download directory. (default: |
The priority order for setting these values is the following
- Command line option.
- Environment variable.
- Default value.