Skip to content

Commit 0b51971

Browse files
lambdalisueclaude
andcommitted
docs: enhance README and Vim help documentation
- Expand README with comprehensive project description and key features - Add detailed usage examples covering all common sources - Include architecture overview explaining the modular design - Enhance Vim help with better organized content - Add troubleshooting section with common issues and solutions - Include practical examples and configuration snippets - Improve module documentation with interfaces and use cases 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent e892695 commit 0b51971

2 files changed

Lines changed: 341 additions & 89 deletions

File tree

README.md

Lines changed: 77 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,30 @@ colorscheme)</sup>
1616

1717
</div>
1818

19-
Fall is a fuzzy finder for Vim and Neovim, implemented in [Denops], and stands
20-
for **"Filter All."**
19+
Fall is a powerful, flexible fuzzy finder framework for Vim and Neovim,
20+
implemented in [Denops], and stands for **"Filter All."** It provides an
21+
extensible architecture that allows users to search, filter, and act on various
22+
data sources including files, buffers, lines, help tags, and more through a
23+
unified interface.
24+
25+
## Key Features
26+
27+
- **Extensible Architecture**: Modular design allows custom sources, matchers,
28+
sorters, renderers, and previewers
29+
- **Interactive Interface**: Quick help via F1, real-time filtering, and action
30+
selection
31+
- **Multiple Processing Stages**: Sophisticated pipeline with collection,
32+
matching, sorting, rendering, and preview stages
33+
- **Session Management**: Save and resume picker sessions with `:FallSession`
34+
and `:FallResume`
35+
- **Submatch Capabilities**: Refine searches with multiple filter criteria
36+
- **Performance Optimized**: Asynchronous processing with intelligent scheduling
37+
and chunking
38+
- **Rich Customization**: Configure behavior through TypeScript extensions and
39+
Vim script settings
2140

2241
See [Features](https://github.com/vim-fall/fall.vim/wiki/Features) for more
23-
information about Fall's features.
42+
detailed information.
2443

2544
> [!WARNING]
2645
>
@@ -62,16 +81,44 @@ following arguments:
6281
Fall {source} {source_args}...
6382
```
6483

65-
For example, if you'd like to use the `file` source, you can use the following:
84+
### Common Examples
6685

67-
```
68-
Fall file
69-
```
86+
```vim
87+
" Find files in current directory
88+
:Fall file
7089
71-
Or use the `line` source with `README.md` as an argument:
90+
" Find files in specific directory
91+
:Fall file /path/to/directory
7292
73-
```
74-
Fall line README.md
93+
" Search file contents with grep
94+
:Fall grep
95+
96+
" Search in git repository
97+
:Fall git-grep
98+
99+
" Search with ripgrep (faster)
100+
:Fall rg
101+
102+
" Filter lines in current buffer
103+
:Fall line
104+
105+
" Filter lines in specific file
106+
:Fall line README.md
107+
108+
" Switch between buffers
109+
:Fall buffer
110+
111+
" Browse help tags
112+
:Fall help
113+
114+
" Browse command history
115+
:Fall history
116+
117+
" Resume previous picker
118+
:FallResume
119+
120+
" Manage picker sessions
121+
:FallSession
75122
```
76123

77124
### Mappings
@@ -103,14 +150,28 @@ Visit the
103150
[Customization](https://github.com/vim-fall/fall.vim/wiki/Customization) page on
104151
the GitHub Wiki for more information.
105152

153+
## Architecture
154+
155+
Fall follows a modular architecture with these core components:
156+
157+
- **Sources**: Data providers (files, buffers, grep results, etc.)
158+
- **Matchers**: Filter algorithms (fuzzy, substring, regex)
159+
- **Sorters**: Result ordering strategies (alphabetical, length, score)
160+
- **Renderers**: Display formatters (with optional NerdFont icons)
161+
- **Previewers**: Content preview generators
162+
- **Actions**: Operations on selected items (open, edit, split, etc.)
163+
164+
Components communicate through a well-defined pipeline, allowing for extensive
165+
customization and extension.
166+
106167
## Related Projects
107168

108-
| Repository | Package | Description |
109-
| ------------------------------------------------------------------------- | ----------------------------------------------------- | ------------------------------------------------ |
110-
| [vim-fall/deno-fall-core](https://github.com/vim-fall/deno-fall-core) | [`@vim-fall/core`](https://jsr.io/@vim-fall/core) | Core types for Fall. Not meant for external use. |
111-
| [vim-fall/deno-fall-custom](https://github.com/vim-fall/deno-fall-custom) | [`@vim-fall/custom`](https://jsr.io/@vim-fall/custom) | Library to customize Fall. |
112-
| [vim-fall/deno-fall-std](https://github.com/vim-fall/deno-fall-std) | [`@vim-fall/std`](https://jsr.io/@vim-fall/std) | Standard library for using Fall. |
113-
| [vim-fall/deno-fall-extra](https://github.com/vim-fall/deno-fall-extra) | [`@vim-fall/extra`](https://jsr.io/@vim-fall/extra) | Extra library for using Fall. |
169+
| Repository | Package | Description |
170+
| ------------------------------------------------------------------------- | ----------------------------------------------------- | --------------------------------------------- |
171+
| [vim-fall/deno-fall-core](https://github.com/vim-fall/deno-fall-core) | [`@vim-fall/core`](https://jsr.io/@vim-fall/core) | Core types and interfaces for Fall extensions |
172+
| [vim-fall/deno-fall-custom](https://github.com/vim-fall/deno-fall-custom) | [`@vim-fall/custom`](https://jsr.io/@vim-fall/custom) | Customization utilities and helpers |
173+
| [vim-fall/deno-fall-std](https://github.com/vim-fall/deno-fall-std) | [`@vim-fall/std`](https://jsr.io/@vim-fall/std) | Standard built-in components |
174+
| [vim-fall/deno-fall-extra](https://github.com/vim-fall/deno-fall-extra) | [`@vim-fall/extra`](https://jsr.io/@vim-fall/extra) | Additional sources and extensions |
114175

115176
## Similar Projects
116177

0 commit comments

Comments
 (0)