Skip to content

Commit 791cf1d

Browse files
committed
docs: add minimal configuration example and refine README
1 parent 0b75148 commit 791cf1d

File tree

2 files changed

+151
-3
lines changed

2 files changed

+151
-3
lines changed

README.md

Lines changed: 92 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,26 @@
1515
Fall is an abbreviation for "Filter All," another fuzzy finder designed for Vim
1616
and Neovim and implemented in [Denops].
1717

18-
**Alpha version. Please note that any changes, including those that may be
19-
backward incompatible, will be implemented without prior announcements.**
18+
> [!WARNING]
19+
>
20+
> **Alpha version. Please note that any changes, including those that may be
21+
> backward incompatible, will be implemented without prior announcements.**
2022
2123
[Denops]: https://github.com/vim-denops/denops.vim
2224

2325
## Requirements
2426

25-
Users must install [Deno].
27+
Users must install [Deno] version 2.x. Additionally, the `nerdfont` renderer is
28+
enabled by default so configure your terminal to use a [NerdFont] or disable it
29+
by removing `builtin.renderer.nerdfont` renderer from the configuration
30+
(`:FallConfig`).
2631

2732
[Deno]: https://deno.land
33+
[NerdFont]: https://www.nerdfonts.com
34+
35+
> [!NOTE]
36+
>
37+
> Deno version 1.x. is not tested and supported.
2838
2939
## Installation
3040

@@ -59,6 +69,85 @@ Or `line` source with `README.md` as an argument
5969
Fall line README.md
6070
```
6171

72+
## Configuration
73+
74+
Use `:FallConfig` command to open the configuration file. The configuration file
75+
is written in TypeScript. The configuration is reloaded automatically when the
76+
file is saved.
77+
78+
```
79+
FallConfig
80+
```
81+
82+
The following is a minimum configuration example. It only defines several
83+
fundamental pickers as default configurations.
84+
85+
```typescript
86+
import { type Entrypoint } from "jsr:@vim-fall/std@^0.2.0";
87+
import * as builtin from "jsr:@vim-fall/std@^0.2.0/builtin";
88+
89+
export const main: Entrypoint = ({
90+
defineItemPickerFromSource,
91+
defineItemPickerFromCurator,
92+
}) => {
93+
defineItemPickerFromCurator("git-grep", builtin.curator.gitGrep, {
94+
previewers: [builtin.previewer.file],
95+
actions: {
96+
...builtin.action.defaultOpenActions,
97+
...builtin.action.defaultSystemopenActions,
98+
...builtin.action.defaultQuickfixActions,
99+
},
100+
defaultAction: "open",
101+
});
102+
103+
defineItemPickerFromSource("file", builtin.source.file, {
104+
matchers: [builtin.matcher.fzf],
105+
previewers: [builtin.previewer.file],
106+
actions: {
107+
...builtin.action.defaultOpenActions,
108+
...builtin.action.defaultSystemopenActions,
109+
...builtin.action.defaultQuickfixActions,
110+
},
111+
defaultAction: "open",
112+
});
113+
114+
defineItemPickerFromSource("line", builtin.source.line, {
115+
matchers: [builtin.matcher.fzf],
116+
previewers: [builtin.previewer.buffer],
117+
actions: {
118+
...builtin.action.defaultOpenActions,
119+
...builtin.action.defaultBufferActions,
120+
...builtin.action.defaultQuickfixActions,
121+
},
122+
defaultAction: "open",
123+
});
124+
125+
defineItemPickerFromSource("buffer", builtin.source.buffer, {
126+
matchers: [builtin.matcher.fzf],
127+
previewers: [builtin.previewer.buffer],
128+
actions: {
129+
...builtin.action.defaultOpenActions,
130+
...builtin.action.defaultBufferActions,
131+
...builtin.action.defaultQuickfixActions,
132+
},
133+
defaultAction: "open",
134+
});
135+
136+
defineItemPickerFromSource("help", builtin.source.helptag, {
137+
matchers: [builtin.matcher.fzf],
138+
previewers: [builtin.previewer.helptag],
139+
actions: {
140+
...builtin.action.defaultHelpActions,
141+
},
142+
defaultAction: "help",
143+
});
144+
};
145+
```
146+
147+
See
148+
[`./denops/fall/_assets/default.config.ts`](./denops/fall/_assets/default.config.ts)
149+
for the full code of the default configuration.
150+
62151
## Related Projects
63152

64153
| Repository | Package | Description |
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
import { type Entrypoint } from "jsr:@vim-fall/std@^0.2.0";
2+
import * as builtin from "jsr:@vim-fall/std@^0.2.0/builtin";
3+
4+
export const main: Entrypoint = ({
5+
defineItemPickerFromSource,
6+
defineItemPickerFromCurator,
7+
}) => {
8+
defineItemPickerFromCurator("git-grep", builtin.curator.gitGrep, {
9+
previewers: [builtin.previewer.file],
10+
actions: {
11+
...builtin.action.defaultOpenActions,
12+
...builtin.action.defaultSystemopenActions,
13+
...builtin.action.defaultQuickfixActions,
14+
},
15+
defaultAction: "open",
16+
});
17+
18+
defineItemPickerFromSource("file", builtin.source.file, {
19+
matchers: [builtin.matcher.fzf],
20+
previewers: [builtin.previewer.file],
21+
actions: {
22+
...builtin.action.defaultOpenActions,
23+
...builtin.action.defaultSystemopenActions,
24+
...builtin.action.defaultQuickfixActions,
25+
},
26+
defaultAction: "open",
27+
});
28+
29+
defineItemPickerFromSource("line", builtin.source.line, {
30+
matchers: [builtin.matcher.fzf],
31+
previewers: [builtin.previewer.buffer],
32+
actions: {
33+
...builtin.action.defaultOpenActions,
34+
...builtin.action.defaultBufferActions,
35+
...builtin.action.defaultQuickfixActions,
36+
},
37+
defaultAction: "open",
38+
});
39+
40+
defineItemPickerFromSource("buffer", builtin.source.buffer, {
41+
matchers: [builtin.matcher.fzf],
42+
previewers: [builtin.previewer.buffer],
43+
actions: {
44+
...builtin.action.defaultOpenActions,
45+
...builtin.action.defaultBufferActions,
46+
...builtin.action.defaultQuickfixActions,
47+
},
48+
defaultAction: "open",
49+
});
50+
51+
defineItemPickerFromSource("help", builtin.source.helptag, {
52+
matchers: [builtin.matcher.fzf],
53+
previewers: [builtin.previewer.helptag],
54+
actions: {
55+
...builtin.action.defaultHelpActions,
56+
},
57+
defaultAction: "help",
58+
});
59+
};

0 commit comments

Comments
 (0)