rufio 1.1.0 → 1.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.
Files changed (80) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +50 -0
  3. data/README.md +26 -297
  4. data/README_ja.md +24 -261
  5. data/Rakefile +14 -1
  6. data/bin/rufio +31 -2
  7. data/docs/fast_zip_design_ja.md +167 -0
  8. data/docs/guide.md +410 -0
  9. data/docs/guide_ja.md +410 -0
  10. data/info/help.md +54 -17
  11. data/info/keybindings.md +50 -22
  12. data/info/welcome.md +14 -5
  13. data/lib/rufio/application.rb +12 -1
  14. data/lib/rufio/archive_controller.rb +211 -0
  15. data/lib/rufio/background_command_executor.rb +9 -0
  16. data/lib/rufio/background_status.rb +49 -0
  17. data/lib/rufio/bookmark_controller.rb +38 -121
  18. data/lib/rufio/bookmark_manager.rb +77 -331
  19. data/lib/rufio/command_completion.rb +28 -2
  20. data/lib/rufio/command_history.rb +5 -2
  21. data/lib/rufio/command_mode.rb +60 -134
  22. data/lib/rufio/command_mode_ui.rb +4 -42
  23. data/lib/rufio/config.rb +88 -136
  24. data/lib/rufio/config_loader.rb +4 -11
  25. data/lib/rufio/dialog_renderer.rb +90 -152
  26. data/lib/rufio/dialog_support.rb +69 -0
  27. data/lib/rufio/document_text_extractor.rb +167 -0
  28. data/lib/rufio/file_operation_controller.rb +49 -222
  29. data/lib/rufio/file_operations.rb +28 -6
  30. data/lib/rufio/file_preview.rb +46 -2
  31. data/lib/rufio/global_search.rb +125 -13
  32. data/lib/rufio/help_menu.rb +19 -7
  33. data/lib/rufio/interpreter_resolver.rb +6 -11
  34. data/lib/rufio/job_manager.rb +2 -5
  35. data/lib/rufio/key_input.rb +77 -0
  36. data/lib/rufio/keybind_handler.rb +83 -116
  37. data/lib/rufio/local_script_scanner.rb +6 -18
  38. data/lib/rufio/native/aarch64-linux-gnu/librufio_zig.so +0 -0
  39. data/lib/rufio/native/aarch64-linux-musl/librufio_zig.so +0 -0
  40. data/lib/rufio/native/aarch64-macos/librufio_zig.dylib +0 -0
  41. data/lib/rufio/native/aarch64-windows/rufio_zig.dll +0 -0
  42. data/lib/rufio/native/x86_64-linux-gnu/librufio_zig.so +0 -0
  43. data/lib/rufio/native/x86_64-linux-musl/librufio_zig.so +0 -0
  44. data/lib/rufio/native/x86_64-macos/librufio_zig.dylib +0 -0
  45. data/lib/rufio/native/x86_64-windows/rufio_zig.dll +0 -0
  46. data/lib/rufio/native_content_search.rb +153 -0
  47. data/lib/rufio/native_scanner.rb +13 -68
  48. data/lib/rufio/native_scanner_zig.rb +106 -56
  49. data/lib/rufio/native_zip.rb +121 -0
  50. data/lib/rufio/navigation_controller.rb +20 -26
  51. data/lib/rufio/path_jump.rb +55 -0
  52. data/lib/rufio/screen.rb +2 -12
  53. data/lib/rufio/script_executor.rb +6 -73
  54. data/lib/rufio/script_file.rb +44 -0
  55. data/lib/rufio/script_path_manager.rb +9 -43
  56. data/lib/rufio/script_runner.rb +13 -50
  57. data/lib/rufio/search_controller.rb +1 -1
  58. data/lib/rufio/shell_command_completion.rb +1 -5
  59. data/lib/rufio/shell_init.rb +90 -0
  60. data/lib/rufio/task_status.rb +5 -1
  61. data/lib/rufio/terminal_ui.rb +84 -298
  62. data/lib/rufio/text_utils.rb +26 -3
  63. data/lib/rufio/ui_renderer.rb +73 -45
  64. data/lib/rufio/version.rb +1 -1
  65. data/lib/rufio/zip_archive.rb +314 -0
  66. data/lib/rufio/zip_extractor.rb +346 -0
  67. data/lib/rufio/zip_writer.rb +268 -0
  68. data/lib/rufio/zoxide_integration.rb +5 -43
  69. data/lib/rufio.rb +6 -0
  70. data/lib_zig/rufio_native/Makefile +54 -17
  71. data/lib_zig/rufio_native/bench.sh +36 -0
  72. data/lib_zig/rufio_native/build.zig +32 -35
  73. data/lib_zig/rufio_native/src/cli.zig +99 -0
  74. data/lib_zig/rufio_native/src/main.zig +187 -83
  75. data/lib_zig/rufio_native/src/os.zig +889 -0
  76. data/lib_zig/rufio_native/src/search.zig +919 -0
  77. data/lib_zig/rufio_native/src/search_test.zig +88 -0
  78. data/lib_zig/rufio_native/src/zip.zig +482 -0
  79. metadata +128 -3
  80. data/lib/rufio/native/rufio_zig.bundle +0 -0
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rufio
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - masisz
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-10-25 00:00:00.000000000 Z
11
+ date: 2026-11-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: io-console
@@ -66,6 +66,102 @@ dependencies:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0.8'
69
+ - !ruby/object:Gem::Dependency
70
+ name: pdf-reader
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '2.16'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '2.16'
83
+ - !ruby/object:Gem::Dependency
84
+ name: roo
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '2.10'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '2.10'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rubyzip
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '2.4'
104
+ - - "<"
105
+ - !ruby/object:Gem::Version
106
+ version: '3.0'
107
+ type: :runtime
108
+ prerelease: false
109
+ version_requirements: !ruby/object:Gem::Requirement
110
+ requirements:
111
+ - - ">="
112
+ - !ruby/object:Gem::Version
113
+ version: '2.4'
114
+ - - "<"
115
+ - !ruby/object:Gem::Version
116
+ version: '3.0'
117
+ - !ruby/object:Gem::Dependency
118
+ name: nokogiri
119
+ requirement: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - "~>"
122
+ - !ruby/object:Gem::Version
123
+ version: '1.16'
124
+ type: :runtime
125
+ prerelease: false
126
+ version_requirements: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - "~>"
129
+ - !ruby/object:Gem::Version
130
+ version: '1.16'
131
+ - !ruby/object:Gem::Dependency
132
+ name: csv
133
+ requirement: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - "~>"
136
+ - !ruby/object:Gem::Version
137
+ version: '3.0'
138
+ type: :runtime
139
+ prerelease: false
140
+ version_requirements: !ruby/object:Gem::Requirement
141
+ requirements:
142
+ - - "~>"
143
+ - !ruby/object:Gem::Version
144
+ version: '3.0'
145
+ - !ruby/object:Gem::Dependency
146
+ name: base64
147
+ requirement: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - ">="
150
+ - !ruby/object:Gem::Version
151
+ version: '0.2'
152
+ - - "<"
153
+ - !ruby/object:Gem::Version
154
+ version: '1.0'
155
+ type: :runtime
156
+ prerelease: false
157
+ version_requirements: !ruby/object:Gem::Requirement
158
+ requirements:
159
+ - - ">="
160
+ - !ruby/object:Gem::Version
161
+ version: '0.2'
162
+ - - "<"
163
+ - !ruby/object:Gem::Version
164
+ version: '1.0'
69
165
  - !ruby/object:Gem::Dependency
70
166
  name: minitest
71
167
  requirement: !ruby/object:Gem::Requirement
@@ -141,6 +237,9 @@ files:
141
237
  - docs/CHANGELOG_v0.80.0.md
142
238
  - docs/CHANGELOG_v0.9.0.md
143
239
  - docs/architecture_concurrency_ja_v0.82.1.md
240
+ - docs/fast_zip_design_ja.md
241
+ - docs/guide.md
242
+ - docs/guide_ja.md
144
243
  - examples/bookmarks.yml
145
244
  - examples/config.rb
146
245
  - examples/script_paths.yml
@@ -150,9 +249,11 @@ files:
150
249
  - lib/rufio.rb
151
250
  - lib/rufio/ansi_line_parser.rb
152
251
  - lib/rufio/application.rb
252
+ - lib/rufio/archive_controller.rb
153
253
  - lib/rufio/async_scanner_fiber.rb
154
254
  - lib/rufio/async_scanner_promise.rb
155
255
  - lib/rufio/background_command_executor.rb
256
+ - lib/rufio/background_status.rb
156
257
  - lib/rufio/bookmark.rb
157
258
  - lib/rufio/bookmark_controller.rb
158
259
  - lib/rufio/bookmark_manager.rb
@@ -167,7 +268,9 @@ files:
167
268
  - lib/rufio/config.rb
168
269
  - lib/rufio/config_loader.rb
169
270
  - lib/rufio/dialog_renderer.rb
271
+ - lib/rufio/dialog_support.rb
170
272
  - lib/rufio/directory_listing.rb
273
+ - lib/rufio/document_text_extractor.rb
171
274
  - lib/rufio/dsl_command.rb
172
275
  - lib/rufio/dsl_command_loader.rb
173
276
  - lib/rufio/file_opener.rb
@@ -182,26 +285,39 @@ files:
182
285
  - lib/rufio/interpreter_resolver.rb
183
286
  - lib/rufio/job_manager.rb
184
287
  - lib/rufio/job_mode.rb
288
+ - lib/rufio/key_input.rb
185
289
  - lib/rufio/keybind_handler.rb
186
290
  - lib/rufio/local_script_scanner.rb
187
291
  - lib/rufio/logger.rb
188
292
  - lib/rufio/multibyte_input_reader.rb
189
- - lib/rufio/native/rufio_zig.bundle
293
+ - lib/rufio/native/aarch64-linux-gnu/librufio_zig.so
294
+ - lib/rufio/native/aarch64-linux-musl/librufio_zig.so
295
+ - lib/rufio/native/aarch64-macos/librufio_zig.dylib
296
+ - lib/rufio/native/aarch64-windows/rufio_zig.dll
297
+ - lib/rufio/native/x86_64-linux-gnu/librufio_zig.so
298
+ - lib/rufio/native/x86_64-linux-musl/librufio_zig.so
299
+ - lib/rufio/native/x86_64-macos/librufio_zig.dylib
300
+ - lib/rufio/native/x86_64-windows/rufio_zig.dll
301
+ - lib/rufio/native_content_search.rb
190
302
  - lib/rufio/native_scanner.rb
191
303
  - lib/rufio/native_scanner_zig.rb
304
+ - lib/rufio/native_zip.rb
192
305
  - lib/rufio/navigation_controller.rb
193
306
  - lib/rufio/notification_manager.rb
194
307
  - lib/rufio/parallel_scanner.rb
308
+ - lib/rufio/path_jump.rb
195
309
  - lib/rufio/rakefile_parser.rb
196
310
  - lib/rufio/renderer.rb
197
311
  - lib/rufio/screen.rb
198
312
  - lib/rufio/script_config_loader.rb
199
313
  - lib/rufio/script_executor.rb
314
+ - lib/rufio/script_file.rb
200
315
  - lib/rufio/script_path_manager.rb
201
316
  - lib/rufio/script_runner.rb
202
317
  - lib/rufio/search_controller.rb
203
318
  - lib/rufio/selection_manager.rb
204
319
  - lib/rufio/shell_command_completion.rb
320
+ - lib/rufio/shell_init.rb
205
321
  - lib/rufio/syntax_highlighter.rb
206
322
  - lib/rufio/tab_mode_manager.rb
207
323
  - lib/rufio/task_status.rb
@@ -209,11 +325,20 @@ files:
209
325
  - lib/rufio/text_utils.rb
210
326
  - lib/rufio/ui_renderer.rb
211
327
  - lib/rufio/version.rb
328
+ - lib/rufio/zip_archive.rb
329
+ - lib/rufio/zip_extractor.rb
330
+ - lib/rufio/zip_writer.rb
212
331
  - lib/rufio/zoxide_integration.rb
213
332
  - lib_zig/rufio_native/Makefile
333
+ - lib_zig/rufio_native/bench.sh
214
334
  - lib_zig/rufio_native/build.zig
335
+ - lib_zig/rufio_native/src/cli.zig
215
336
  - lib_zig/rufio_native/src/main.zig
216
337
  - lib_zig/rufio_native/src/main.zig.sync
338
+ - lib_zig/rufio_native/src/os.zig
339
+ - lib_zig/rufio_native/src/search.zig
340
+ - lib_zig/rufio_native/src/search_test.zig
341
+ - lib_zig/rufio_native/src/zip.zig
217
342
  - retag.sh
218
343
  homepage: https://github.com/masisz/rufio
219
344
  licenses:
Binary file