Skip to content

Commit 4199657

Browse files
authored
Fix organization
1 parent 2e8a246 commit 4199657

File tree

1 file changed

+24
-24
lines changed

1 file changed

+24
-24
lines changed

README.md

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,28 @@ A plugin can be any number of files in a `functions`, `conf.d`, and `completions
128128

129129
Non `.fish` files as well as directories inside those locations will be copied to `$fisher_path` under `functions`, `conf.d`, or `completions` respectively.
130130

131+
### Event system
132+
133+
Plugins are notified as they are being installed, updated, or removed via Fish [events](https://fishshell.com/docs/current/cmds/emit.html).
134+
135+
> `--on-event` functions must already be loaded when their event is emitted. Thus, you should put your event handlers in the `conf.d` directory.
136+
137+
```fish
138+
# Defined in ponyo/conf.d/ponyo.fish
139+
140+
function _ponyo_install --on-event ponyo_install
141+
# Set universal variables, create bindings, and other initialization logic.
142+
end
143+
144+
function _ponyo_update --on-event ponyo_update
145+
# Migrate resources, print warnings, and other update logic.
146+
end
147+
148+
function _ponyo_uninstall --on-event ponyo_uninstall
149+
# Erase "private" functions, variables, bindings, and other uninstall logic.
150+
end
151+
```
152+
131153
## Creating a theme
132154

133155
A theme is just like a regular Fish plugin, except it has a `.theme` file in the `themes` directory. Themes were introduced in [Fish 3.4](https://github.com/fish-shell/fish-shell/releases/tag/3.4.0) and work with the `fish_config` builtin. A theme can also have files in `functions`, `conf.d`, or `completions` if necessary. This is what a typical theme plugin might look like.
@@ -140,7 +162,7 @@ A theme is just like a regular Fish plugin, except it has a `.theme` file in the
140162
└── sosuke.theme
141163
</pre>
142164

143-
## Using `$fisher_path` with themes
165+
### Using `$fisher_path` with themes
144166

145167
If you customize `$fisher_path` to use a directory other than `$__fish_config_dir`, your themes won't be available via `fish_config`. That's because Fish expects your themes to be in `$__fish_config_dir/themes`, not `$fisher_path/themes`. This is not yet configurable in Fish, but there is [a request to add that feature](https://github.com/fish-shell/fish-shell/issues/9456).
146168

@@ -158,29 +180,7 @@ ln -s $fisher_path/themes $__fish_config_dir/themes
158180

159181
If you want to use theme plugins and also maintain your own local themes, you can read more about how to do that here: [#708](https://github.com/jorgebucaran/fisher/issues/708).
160182

161-
### Event system
162-
163-
Plugins are notified as they are being installed, updated, or removed via Fish [events](https://fishshell.com/docs/current/cmds/emit.html).
164-
165-
> `--on-event` functions must already be loaded when their event is emitted. Thus, you should put your event handlers in the `conf.d` directory.
166-
167-
```fish
168-
# Defined in ponyo/conf.d/ponyo.fish
169-
170-
function _ponyo_install --on-event ponyo_install
171-
# Set universal variables, create bindings, and other initialization logic.
172-
end
173-
174-
function _ponyo_update --on-event ponyo_update
175-
# Migrate resources, print warnings, and other update logic.
176-
end
177-
178-
function _ponyo_uninstall --on-event ponyo_uninstall
179-
# Erase "private" functions, variables, bindings, and other uninstall logic.
180-
end
181-
```
182-
183-
### Discoverability
183+
## Discoverability
184184

185185
Fisher doesn't make use of a central repository of plugins. However, that doesn't mean discovering new plugins should be hard. A great way to help people quickly find your project on GitHub is [by adding a topic to your repository](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/classifying-your-repository-with-topics#adding-topics-to-your-repository). We recommend using [`fish-plugin`](https://github.com/topics/fish-plugin) for this purpose.
186186

0 commit comments

Comments
 (0)