rtfm-filemanager 7.3.6 → 7.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +174 -0
- data/README.md +633 -628
- data/bin/rtfm +1 -1
- data/docs/configuration.md +397 -0
- data/docs/faq.md +436 -0
- data/docs/getting-started.md +276 -0
- data/docs/keyboard-reference.md +387 -0
- data/docs/plugins.md +649 -0
- data/docs/remote-browsing.md +425 -0
- data/docs/troubleshooting.md +639 -0
- data/examples/rtfm.conf +280 -0
- data/man/rtfm.1 +361 -0
- metadata +13 -3
data/docs/faq.md
ADDED
|
@@ -0,0 +1,436 @@
|
|
|
1
|
+
# RTFM Frequently Asked Questions
|
|
2
|
+
|
|
3
|
+
Quick answers to common questions.
|
|
4
|
+
|
|
5
|
+
## General
|
|
6
|
+
|
|
7
|
+
### What does RTFM stand for?
|
|
8
|
+
|
|
9
|
+
**Ruby Terminal File Manager**
|
|
10
|
+
|
|
11
|
+
(Not the other thing... well, maybe also that if you need to Read The Fine Manual!)
|
|
12
|
+
|
|
13
|
+
### Is RTFM better than ranger?
|
|
14
|
+
|
|
15
|
+
**Different, not better.**
|
|
16
|
+
|
|
17
|
+
- **RTFM**: More features, SSH browsing, undo system, AI integration, trash bin
|
|
18
|
+
- **Ranger**: More mature, better documentation, larger community, cleaner design
|
|
19
|
+
|
|
20
|
+
Choose based on your needs. See [RTFM vs Ranger comparison](../README.md#rtfm-vs-ranger).
|
|
21
|
+
|
|
22
|
+
### Can I use RTFM on Windows?
|
|
23
|
+
|
|
24
|
+
**Limited support.**
|
|
25
|
+
|
|
26
|
+
Core functionality works on Windows, but:
|
|
27
|
+
- ✗ No image display
|
|
28
|
+
- ✗ No w3m/xdotool features
|
|
29
|
+
- ✓ File operations work
|
|
30
|
+
- ✓ Remote SSH works
|
|
31
|
+
|
|
32
|
+
**Recommended:** Use WSL (Windows Subsystem for Linux) for full features.
|
|
33
|
+
|
|
34
|
+
### Does RTFM work on macOS?
|
|
35
|
+
|
|
36
|
+
**Yes!** Fully supported.
|
|
37
|
+
|
|
38
|
+
Install with:
|
|
39
|
+
```bash
|
|
40
|
+
brew install ruby imagemagick w3m bat pandoc
|
|
41
|
+
gem install rtfm-filemanager
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### What terminals work best?
|
|
45
|
+
|
|
46
|
+
**Best image support:**
|
|
47
|
+
- urxvt (w3m protocol) - Perfect
|
|
48
|
+
- xterm (Sixel protocol) - Perfect
|
|
49
|
+
- mlterm (Sixel protocol) - Perfect
|
|
50
|
+
- Eterm (w3m protocol) - Perfect
|
|
51
|
+
|
|
52
|
+
**Good:**
|
|
53
|
+
- kitty (w3m with brief flash)
|
|
54
|
+
- foot (Sixel)
|
|
55
|
+
- alacritty (no persistent images)
|
|
56
|
+
|
|
57
|
+
## Installation & Setup
|
|
58
|
+
|
|
59
|
+
### Do I need to install dependencies manually?
|
|
60
|
+
|
|
61
|
+
**Core:** No, gems auto-install (rcurses, termpix)
|
|
62
|
+
|
|
63
|
+
**Optional features:** Yes, install as needed:
|
|
64
|
+
- ImageMagick (images)
|
|
65
|
+
- bat (syntax highlighting)
|
|
66
|
+
- pandoc (markdown)
|
|
67
|
+
- fzf (fuzzy find)
|
|
68
|
+
|
|
69
|
+
See [Installation Guide](getting-started.md#installation).
|
|
70
|
+
|
|
71
|
+
### How do I update RTFM?
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
gem update rtfm-filemanager
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
This also updates dependencies (rcurses, termpix).
|
|
78
|
+
|
|
79
|
+
### Can I install from source?
|
|
80
|
+
|
|
81
|
+
**Yes:**
|
|
82
|
+
```bash
|
|
83
|
+
git clone https://github.com/isene/RTFM
|
|
84
|
+
cd RTFM
|
|
85
|
+
gem install rcurses termpix
|
|
86
|
+
sudo cp bin/rtfm /usr/bin/
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### Where are config files stored?
|
|
90
|
+
|
|
91
|
+
```
|
|
92
|
+
~/.rtfm/
|
|
93
|
+
├── conf # Main configuration
|
|
94
|
+
├── trash/ # Deleted items (if trash enabled)
|
|
95
|
+
├── bootsnap-cache/ # Performance cache
|
|
96
|
+
└── plugins/
|
|
97
|
+
├── preview.rb # Custom preview handlers
|
|
98
|
+
└── keys.rb # Custom key bindings
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
## Features
|
|
102
|
+
|
|
103
|
+
### How do I enable the trash bin?
|
|
104
|
+
|
|
105
|
+
**In RTFM:** Press `Ctrl-d` to toggle
|
|
106
|
+
|
|
107
|
+
**In config:**
|
|
108
|
+
```ruby
|
|
109
|
+
# ~/.rtfm/conf
|
|
110
|
+
@trash = true
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
**Restore deleted items:** Press `U` (undo)
|
|
114
|
+
|
|
115
|
+
**Empty trash:** Press `D`
|
|
116
|
+
|
|
117
|
+
### Can I undo file operations?
|
|
118
|
+
|
|
119
|
+
**Yes!** Press `U` to undo:
|
|
120
|
+
- Delete (from trash)
|
|
121
|
+
- Move
|
|
122
|
+
- Rename
|
|
123
|
+
- Copy
|
|
124
|
+
- Symlink
|
|
125
|
+
- Bulk rename
|
|
126
|
+
- Permission changes
|
|
127
|
+
- Ownership changes
|
|
128
|
+
|
|
129
|
+
**Cannot undo:**
|
|
130
|
+
- Permanent deletion (trash disabled)
|
|
131
|
+
- Failed operations
|
|
132
|
+
|
|
133
|
+
### How do I use the AI features?
|
|
134
|
+
|
|
135
|
+
**Setup:**
|
|
136
|
+
1. Get OpenAI API key: https://platform.openai.com/api-keys
|
|
137
|
+
2. Add to config:
|
|
138
|
+
```ruby
|
|
139
|
+
@ai = "sk-your-api-key-here"
|
|
140
|
+
```
|
|
141
|
+
3. Install gem: `gem install ruby-openai`
|
|
142
|
+
|
|
143
|
+
**Usage:**
|
|
144
|
+
- Press `I` on file for AI description
|
|
145
|
+
- Press `Ctrl-a` for AI chat
|
|
146
|
+
|
|
147
|
+
### Does RTFM support tabs?
|
|
148
|
+
|
|
149
|
+
**Yes!** Enhanced tab system:
|
|
150
|
+
- `]` - New tab
|
|
151
|
+
- `[` - Close tab
|
|
152
|
+
- `J/K` - Switch tabs
|
|
153
|
+
- `}` - Duplicate tab
|
|
154
|
+
- `{` - Rename tab
|
|
155
|
+
- `1-9` - Jump to tab number
|
|
156
|
+
|
|
157
|
+
### Can I browse remote servers?
|
|
158
|
+
|
|
159
|
+
**Absolutely!** Press `Ctrl-e`:
|
|
160
|
+
|
|
161
|
+
```
|
|
162
|
+
user@server.com:/path/to/directory
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
Then:
|
|
166
|
+
- `d` - Download files
|
|
167
|
+
- `u` - Upload files
|
|
168
|
+
- `s` - Open SSH shell
|
|
169
|
+
|
|
170
|
+
See [Remote Browsing Guide](remote-browsing.md).
|
|
171
|
+
|
|
172
|
+
### How do I copy images to clipboard?
|
|
173
|
+
|
|
174
|
+
**Press `Ctrl-y` when viewing an image.**
|
|
175
|
+
|
|
176
|
+
Then paste into:
|
|
177
|
+
- GIMP
|
|
178
|
+
- Inkscape
|
|
179
|
+
- Image editors
|
|
180
|
+
- Browsers
|
|
181
|
+
|
|
182
|
+
Works with PNG, JPEG, GIF, BMP, WebP.
|
|
183
|
+
|
|
184
|
+
### Can I customize key bindings?
|
|
185
|
+
|
|
186
|
+
**Yes!** Edit `~/.rtfm/plugins/keys.rb`:
|
|
187
|
+
|
|
188
|
+
```ruby
|
|
189
|
+
KEYMAP['X'] = :my_custom_action
|
|
190
|
+
|
|
191
|
+
def my_custom_action(_chr)
|
|
192
|
+
@pB.say("Custom action!")
|
|
193
|
+
end
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
See [Plugin Guide](plugins.md).
|
|
197
|
+
|
|
198
|
+
## Usage
|
|
199
|
+
|
|
200
|
+
### How do I exit to current directory?
|
|
201
|
+
|
|
202
|
+
**Use the `r` command** (set up automatically on first run).
|
|
203
|
+
|
|
204
|
+
Workflow:
|
|
205
|
+
```bash
|
|
206
|
+
r # Launch RTFM
|
|
207
|
+
# Navigate to ~/Documents/projects
|
|
208
|
+
q # Quit
|
|
209
|
+
pwd # Now in ~/Documents/projects
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
### How do I copy multiple files?
|
|
213
|
+
|
|
214
|
+
1. Tag files: Press `t` on each file
|
|
215
|
+
2. Navigate to destination
|
|
216
|
+
3. Press `p` to copy
|
|
217
|
+
|
|
218
|
+
**Or:** Tag with pattern:
|
|
219
|
+
- `Ctrl-t` then `*.txt` (tag all .txt files)
|
|
220
|
+
|
|
221
|
+
### How do I rename multiple files?
|
|
222
|
+
|
|
223
|
+
1. Tag files with `t`
|
|
224
|
+
2. Press `E` (bulk rename)
|
|
225
|
+
3. Enter pattern:
|
|
226
|
+
- `s/old/new/` - Replace text
|
|
227
|
+
- `PREFIX_#` - Add prefix with numbers
|
|
228
|
+
- `upper` / `lower` - Change case
|
|
229
|
+
|
|
230
|
+
### How do I change permissions on multiple files?
|
|
231
|
+
|
|
232
|
+
1. Tag files with `t`
|
|
233
|
+
2. Press `Ctrl-p`
|
|
234
|
+
3. Enter permissions:
|
|
235
|
+
- `755`
|
|
236
|
+
- `rwxr-xr-x`
|
|
237
|
+
- `+x` (add execute)
|
|
238
|
+
- `-w` (remove write)
|
|
239
|
+
|
|
240
|
+
**v7.2+ Note:** Only tagged files affected (not selected unless tagged)
|
|
241
|
+
|
|
242
|
+
### What's the difference between `p` and `P`?
|
|
243
|
+
|
|
244
|
+
- `p` - **Copy** tagged items (original stays)
|
|
245
|
+
- `P` - **Move** tagged items (original removed)
|
|
246
|
+
|
|
247
|
+
Both preserve selection after operation (v7.2+).
|
|
248
|
+
|
|
249
|
+
### How do I preview without opening?
|
|
250
|
+
|
|
251
|
+
Files auto-preview in right pane when selected.
|
|
252
|
+
|
|
253
|
+
**Toggle preview:** Press `-`
|
|
254
|
+
|
|
255
|
+
**Scroll preview:**
|
|
256
|
+
- `Shift-↓/↑` - Line by line
|
|
257
|
+
- `TAB` - Page down
|
|
258
|
+
- `Shift-TAB` - Page up
|
|
259
|
+
|
|
260
|
+
### Can I execute shell commands?
|
|
261
|
+
|
|
262
|
+
**Yes!** Press `:` then enter command:
|
|
263
|
+
```
|
|
264
|
+
:ls -la
|
|
265
|
+
:git status
|
|
266
|
+
:grep -r pattern .
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
Output shows in right pane.
|
|
270
|
+
|
|
271
|
+
**History:** Press `;` to see command history
|
|
272
|
+
|
|
273
|
+
## Comparison Questions
|
|
274
|
+
|
|
275
|
+
### RTFM vs ranger?
|
|
276
|
+
|
|
277
|
+
**RTFM advantages:**
|
|
278
|
+
- SSH/SFTP browsing built-in
|
|
279
|
+
- Comprehensive undo system
|
|
280
|
+
- Trash bin with restore
|
|
281
|
+
- OpenAI integration
|
|
282
|
+
- Permission/ownership undo
|
|
283
|
+
- Smaller codebase
|
|
284
|
+
|
|
285
|
+
**Ranger advantages:**
|
|
286
|
+
- Larger community
|
|
287
|
+
- Better documentation (working on it!)
|
|
288
|
+
- More mature/stable
|
|
289
|
+
- Multi-column view
|
|
290
|
+
|
|
291
|
+
### RTFM vs mc (Midnight Commander)?
|
|
292
|
+
|
|
293
|
+
**RTFM advantages:**
|
|
294
|
+
- Modern design
|
|
295
|
+
- Better image support
|
|
296
|
+
- Git integration
|
|
297
|
+
- AI features
|
|
298
|
+
- Undo system
|
|
299
|
+
|
|
300
|
+
**mc advantages:**
|
|
301
|
+
- More established (since 1994)
|
|
302
|
+
- Built-in editor (mcedit)
|
|
303
|
+
- FTP support
|
|
304
|
+
- Virtual file systems
|
|
305
|
+
|
|
306
|
+
### Why not use GUI file manager?
|
|
307
|
+
|
|
308
|
+
**Benefits of terminal file managers:**
|
|
309
|
+
- ⚡ Faster (keyboard-driven)
|
|
310
|
+
- 🖥️ Works over SSH
|
|
311
|
+
- 🎯 Precision control
|
|
312
|
+
- 🔧 Scriptable/extensible
|
|
313
|
+
- 💻 No X server needed
|
|
314
|
+
- ⌨️ Never leave terminal
|
|
315
|
+
|
|
316
|
+
**RTFM specifically:**
|
|
317
|
+
- Parses LS_COLORS (consistent theming)
|
|
318
|
+
- Inline images
|
|
319
|
+
- Command execution with output
|
|
320
|
+
- Ruby extensibility
|
|
321
|
+
|
|
322
|
+
## Technical Questions
|
|
323
|
+
|
|
324
|
+
### What is rcurses?
|
|
325
|
+
|
|
326
|
+
**rcurses** is a pure Ruby curses library created specifically for RTFM.
|
|
327
|
+
|
|
328
|
+
- No C bindings
|
|
329
|
+
- Ruby 3.4+ compatible
|
|
330
|
+
- Modern design
|
|
331
|
+
- Easy to maintain
|
|
332
|
+
|
|
333
|
+
See: https://github.com/isene/rcurses
|
|
334
|
+
|
|
335
|
+
### What is termpix?
|
|
336
|
+
|
|
337
|
+
**termpix** is a terminal image display library extracted from RTFM.
|
|
338
|
+
|
|
339
|
+
- Multi-protocol support (Sixel, w3m)
|
|
340
|
+
- EXIF auto-orient
|
|
341
|
+
- Used by RTFM, AstroPanel, IMDB
|
|
342
|
+
|
|
343
|
+
See: https://github.com/isene/termpix
|
|
344
|
+
|
|
345
|
+
### Why single-file architecture?
|
|
346
|
+
|
|
347
|
+
**Benefits:**
|
|
348
|
+
- Easy to understand (all code in one place)
|
|
349
|
+
- Simple deployment (one file)
|
|
350
|
+
- No require complexity
|
|
351
|
+
- Easier debugging
|
|
352
|
+
|
|
353
|
+
**Trade-offs:**
|
|
354
|
+
- Large file (~6K lines)
|
|
355
|
+
- Not modular
|
|
356
|
+
- But: Organized with vim folds
|
|
357
|
+
|
|
358
|
+
### Can I contribute?
|
|
359
|
+
|
|
360
|
+
**Yes!**
|
|
361
|
+
|
|
362
|
+
- Bug reports: https://github.com/isene/RTFM/issues
|
|
363
|
+
- Feature requests: Open issue with detailed description
|
|
364
|
+
- Pull requests: Welcome!
|
|
365
|
+
- Plugins: Share in issues/discussions
|
|
366
|
+
|
|
367
|
+
### Is RTFM actively maintained?
|
|
368
|
+
|
|
369
|
+
**Yes!** Regular updates and releases.
|
|
370
|
+
|
|
371
|
+
Recent activity:
|
|
372
|
+
- v7.3 (Nov 2025) - Image display improvements
|
|
373
|
+
- v7.2 (Oct 2025) - Batch operation consistency
|
|
374
|
+
- v7.1 (Oct 2025) - Archive preview
|
|
375
|
+
|
|
376
|
+
Check: https://github.com/isene/RTFM/releases
|
|
377
|
+
|
|
378
|
+
## Workflow Questions
|
|
379
|
+
|
|
380
|
+
### Best workflow for organizing photos?
|
|
381
|
+
|
|
382
|
+
```
|
|
383
|
+
r # Launch RTFM
|
|
384
|
+
@lsorder = "-t" # Sort by time (newest first)
|
|
385
|
+
@showimage = true # Show images
|
|
386
|
+
# Tag keepers with 't'
|
|
387
|
+
P # Move to organized folder
|
|
388
|
+
```
|
|
389
|
+
|
|
390
|
+
### Best workflow for code projects?
|
|
391
|
+
|
|
392
|
+
```
|
|
393
|
+
r # Launch
|
|
394
|
+
m p # Bookmark project directory
|
|
395
|
+
@batuse = true # Syntax highlighting
|
|
396
|
+
@lsall = "-a" # Show hidden (.git, etc.)
|
|
397
|
+
G # Check git status
|
|
398
|
+
```
|
|
399
|
+
|
|
400
|
+
### How to quickly check server logs?
|
|
401
|
+
|
|
402
|
+
```
|
|
403
|
+
r
|
|
404
|
+
Ctrl-e # Remote mode
|
|
405
|
+
admin@server:/var/log # Connect
|
|
406
|
+
# Navigate to log file
|
|
407
|
+
# Content shows in right pane
|
|
408
|
+
s # Open shell if needed
|
|
409
|
+
```
|
|
410
|
+
|
|
411
|
+
### Bulk file organization?
|
|
412
|
+
|
|
413
|
+
```
|
|
414
|
+
r
|
|
415
|
+
Ctrl-t # Tag by pattern
|
|
416
|
+
*.jpg # Tag all JPEGs
|
|
417
|
+
P # Move to new folder
|
|
418
|
+
```
|
|
419
|
+
|
|
420
|
+
## Still Have Questions?
|
|
421
|
+
|
|
422
|
+
1. **Check documentation:**
|
|
423
|
+
- `man rtfm`
|
|
424
|
+
- Press `?` in RTFM
|
|
425
|
+
- Read [guides](../README.md#documentation)
|
|
426
|
+
|
|
427
|
+
2. **Search issues:**
|
|
428
|
+
https://github.com/isene/RTFM/issues
|
|
429
|
+
|
|
430
|
+
3. **Ask:**
|
|
431
|
+
- Open new issue
|
|
432
|
+
- Email: g@isene.com
|
|
433
|
+
|
|
434
|
+
---
|
|
435
|
+
|
|
436
|
+
[← Troubleshooting](troubleshooting.md) | [Back to README](../README.md)
|
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
# Getting Started with RTFM
|
|
2
|
+
|
|
3
|
+
This guide will get you up and running with RTFM in minutes.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
### Quick Install (Recommended)
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
gem install rtfm-filemanager
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
### With Full Features (Ubuntu/Debian)
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
sudo apt update
|
|
17
|
+
sudo apt install ruby-full x11-utils xdotool bat pandoc poppler-utils \
|
|
18
|
+
odt2txt docx2txt unzip gnumeric catdoc w3m imagemagick \
|
|
19
|
+
ffmpegthumbnailer tar gzip bzip2 xz-utils unrar p7zip-full
|
|
20
|
+
|
|
21
|
+
gem install rtfm-filemanager
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
### macOS
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
brew install ruby imagemagick w3m bat pandoc poppler
|
|
28
|
+
gem install rtfm-filemanager
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## First Launch
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
rtfm
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
On first run, RTFM will:
|
|
38
|
+
1. Show a welcome message
|
|
39
|
+
2. Add `r` function to your shell config (~/.bashrc or ~/.zshrc)
|
|
40
|
+
3. Create `~/.rtfm/` directory with plugins and config
|
|
41
|
+
|
|
42
|
+
Press `q` to accept and continue.
|
|
43
|
+
|
|
44
|
+
## The `r` Command
|
|
45
|
+
|
|
46
|
+
After installation, you can launch RTFM with just:
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
r
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
The magic: When you quit RTFM (press `q`), you'll be in RTFM's current directory, not where you launched it.
|
|
53
|
+
|
|
54
|
+
**Example workflow:**
|
|
55
|
+
```bash
|
|
56
|
+
r # Launch RTFM
|
|
57
|
+
# Navigate to ~/Documents/projects
|
|
58
|
+
q # Quit RTFM
|
|
59
|
+
pwd # You're in ~/Documents/projects
|
|
60
|
+
r # Launch RTFM again (remembers location)
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Basic Navigation
|
|
64
|
+
|
|
65
|
+
### Moving Around
|
|
66
|
+
|
|
67
|
+
| Key | Action |
|
|
68
|
+
|-----|--------|
|
|
69
|
+
| `↓` or `j` | Move down |
|
|
70
|
+
| `↑` or `k` | Move up |
|
|
71
|
+
| `→` or `l` or `ENTER` | Enter directory / open file |
|
|
72
|
+
| `←` or `h` | Go to parent directory |
|
|
73
|
+
| `HOME` | Jump to first item |
|
|
74
|
+
| `END` | Jump to last item |
|
|
75
|
+
| `PgDn` | Page down |
|
|
76
|
+
| `PgUp` | Page up |
|
|
77
|
+
|
|
78
|
+
### Understanding the Interface
|
|
79
|
+
|
|
80
|
+
```
|
|
81
|
+
┌─────────────────────────────────────────────────────────┐
|
|
82
|
+
│ Path: /home/user/Documents (drwxr-xr-x...) [Tab: 1/3] │ ← Top bar (path + metadata)
|
|
83
|
+
├──────────────┬──────────────────────────────────────────┤
|
|
84
|
+
│ projects/ │ # My Projects │
|
|
85
|
+
│ photos/ │ │
|
|
86
|
+
│ > notes.txt │ This is the content of notes.txt │ ← Right pane (preview)
|
|
87
|
+
│ todo.md │ shown with syntax highlighting... │
|
|
88
|
+
│ report.pdf │ │
|
|
89
|
+
│ │ │
|
|
90
|
+
└──────────────┴──────────────────────────────────────────┘
|
|
91
|
+
│ Status: 5 items │ ← Bottom bar (status)
|
|
92
|
+
└─────────────────────────────────────────────────────────┘
|
|
93
|
+
Left pane ↑ Right pane ↑
|
|
94
|
+
(navigate) (preview)
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
## Essential Operations
|
|
98
|
+
|
|
99
|
+
### Viewing Files
|
|
100
|
+
|
|
101
|
+
- **Preview**: Content shows in right pane automatically
|
|
102
|
+
- **Open in editor**: Press `ENTER` on text files
|
|
103
|
+
- **Open with default app**: Press `x` on files (xdg-open)
|
|
104
|
+
- **Toggle preview**: Press `-` to turn preview on/off
|
|
105
|
+
- **Toggle images**: Press `_` to toggle image display
|
|
106
|
+
|
|
107
|
+
### Working with Files
|
|
108
|
+
|
|
109
|
+
#### Copy
|
|
110
|
+
1. Tag files with `t` (toggle tag on/off)
|
|
111
|
+
2. Navigate to destination directory
|
|
112
|
+
3. Press `p` to copy tagged items
|
|
113
|
+
|
|
114
|
+
#### Move
|
|
115
|
+
1. Tag files with `t`
|
|
116
|
+
2. Navigate to destination
|
|
117
|
+
3. Press `P` to move tagged items
|
|
118
|
+
|
|
119
|
+
#### Delete
|
|
120
|
+
1. Press `d` on item (or tag multiple with `t` first)
|
|
121
|
+
2. Press `y` to confirm
|
|
122
|
+
|
|
123
|
+
**Trash bin:** Press `Ctrl-d` to enable trash bin. Deleted items go to `~/.rtfm/trash/` and can be restored with `U` (undo).
|
|
124
|
+
|
|
125
|
+
#### Rename
|
|
126
|
+
- **Single file**: Press `c`, edit name, press ENTER
|
|
127
|
+
- **Bulk rename**: Tag files with `t`, press `E`, use pattern
|
|
128
|
+
|
|
129
|
+
### Bookmarks
|
|
130
|
+
|
|
131
|
+
**Set bookmark:**
|
|
132
|
+
1. Navigate to directory
|
|
133
|
+
2. Press `m`
|
|
134
|
+
3. Press letter (a-z)
|
|
135
|
+
|
|
136
|
+
**Jump to bookmark:**
|
|
137
|
+
1. Press `'` (apostrophe)
|
|
138
|
+
2. Press bookmark letter
|
|
139
|
+
|
|
140
|
+
**Special bookmarks:**
|
|
141
|
+
- `'` - Last directory (for quick toggling)
|
|
142
|
+
- `0` - Directory where RTFM started
|
|
143
|
+
- `1-5` - Last 5 visited directories
|
|
144
|
+
|
|
145
|
+
## Getting Help
|
|
146
|
+
|
|
147
|
+
### In RTFM
|
|
148
|
+
|
|
149
|
+
Press `?` to show complete keyboard reference
|
|
150
|
+
|
|
151
|
+
### Man Page
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
man rtfm
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
### Version Info
|
|
158
|
+
|
|
159
|
+
Press `v` to see:
|
|
160
|
+
- RTFM version
|
|
161
|
+
- Image protocol in use
|
|
162
|
+
- Latest available version
|
|
163
|
+
|
|
164
|
+
## Common Tasks
|
|
165
|
+
|
|
166
|
+
### Browse Directory Tree
|
|
167
|
+
|
|
168
|
+
```bash
|
|
169
|
+
r # Launch RTFM
|
|
170
|
+
h h h # Go up 3 levels
|
|
171
|
+
' h # Jump to home bookmark
|
|
172
|
+
l # Enter directory
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
### Find and Open File
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
r # Launch
|
|
179
|
+
/pattern # Search for pattern
|
|
180
|
+
n # Next match
|
|
181
|
+
ENTER # Open file
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
### Copy Files Between Directories
|
|
185
|
+
|
|
186
|
+
```bash
|
|
187
|
+
r # Launch
|
|
188
|
+
m s # Bookmark source as 's'
|
|
189
|
+
' s # Jump to source
|
|
190
|
+
t t t # Tag 3 files
|
|
191
|
+
m d # Bookmark destination as 'd'
|
|
192
|
+
' d # Jump to destination
|
|
193
|
+
p # Copy tagged files here
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
### Remote File Management
|
|
197
|
+
|
|
198
|
+
```bash
|
|
199
|
+
r # Launch
|
|
200
|
+
Ctrl-e # Enter remote mode
|
|
201
|
+
user@server.com:/path # Enter connection
|
|
202
|
+
# Navigate with arrow keys
|
|
203
|
+
d # Download file
|
|
204
|
+
Ctrl-e # Exit remote mode
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
## Tips & Tricks
|
|
208
|
+
|
|
209
|
+
### Speed Tips
|
|
210
|
+
|
|
211
|
+
1. **Turn off preview** (`-`) for faster directory traversal
|
|
212
|
+
2. **Use bookmarks** (`m` + letter) for frequent locations
|
|
213
|
+
3. **Use tabs** (`]` to create) for multi-directory work
|
|
214
|
+
4. **Recent files** (`Ctrl-r`) to jump to recently accessed files
|
|
215
|
+
|
|
216
|
+
### Power User Tips
|
|
217
|
+
|
|
218
|
+
1. **Undo system** - `U` undoes: delete, move, rename, copy, symlink, permissions, ownership
|
|
219
|
+
2. **Pattern rename** - `E` for bulk rename with regex
|
|
220
|
+
3. **Command mode** - `:` to run any shell command, output in right pane
|
|
221
|
+
4. **Ruby mode** - `@` to execute Ruby code (for debugging or scripting)
|
|
222
|
+
5. **Git workflow** - `G` shows git status, perfect for checking changes
|
|
223
|
+
|
|
224
|
+
### Workflow Examples
|
|
225
|
+
|
|
226
|
+
#### Photo Organization
|
|
227
|
+
```
|
|
228
|
+
r → Navigate to photos → t t t (tag) → P (move to new folder)
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
#### Code Review
|
|
232
|
+
```
|
|
233
|
+
r → / .rb (search) → G (git status) → ENTER (open in editor)
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
#### Remote Backup
|
|
237
|
+
```
|
|
238
|
+
r → Ctrl-e → server:/backup → u (upload tagged files)
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
## Next Steps
|
|
242
|
+
|
|
243
|
+
- Read [Configuration Guide](configuration.md) to customize RTFM
|
|
244
|
+
- Learn [Remote Browsing](remote-browsing.md) for SSH workflows
|
|
245
|
+
- Explore [Plugins](plugins.md) to extend functionality
|
|
246
|
+
- Check [Keyboard Reference](keyboard-reference.md) for all keys
|
|
247
|
+
|
|
248
|
+
## Troubleshooting
|
|
249
|
+
|
|
250
|
+
### Images Don't Show
|
|
251
|
+
|
|
252
|
+
1. Check if w3m is installed: `which w3mimgdisplay`
|
|
253
|
+
2. Check if xdotool is installed: `which xdotool`
|
|
254
|
+
3. Press `v` to see image protocol (should show `w3m` or `sixel`)
|
|
255
|
+
4. Try toggling image preview: `_`
|
|
256
|
+
|
|
257
|
+
### Commands Don't Work in Command Mode
|
|
258
|
+
|
|
259
|
+
Some commands need to be whitelisted as "interactive":
|
|
260
|
+
1. Press `+` in RTFM
|
|
261
|
+
2. Type program name (e.g., `htop`)
|
|
262
|
+
3. Or prefix command with `§`: `:§htop`
|
|
263
|
+
|
|
264
|
+
### Terminal Resize Issues
|
|
265
|
+
|
|
266
|
+
Press `r` to manually refresh RTFM layout
|
|
267
|
+
|
|
268
|
+
### General Issues
|
|
269
|
+
|
|
270
|
+
1. Press `r` to refresh
|
|
271
|
+
2. Check `~/.rtfm/conf` for misconfigurations
|
|
272
|
+
3. Report bugs: https://github.com/isene/RTFM/issues
|
|
273
|
+
|
|
274
|
+
---
|
|
275
|
+
|
|
276
|
+
[← Back to README](../README.md) | [Next: Configuration →](configuration.md)
|