mui 0.4.1 → 0.5.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 (138) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop_todo.yml +2 -22
  3. data/.ruby-lsp.yml +19 -0
  4. data/CHANGELOG.md +48 -0
  5. data/README.md +17 -0
  6. data/docs/configuration.md +40 -0
  7. data/docs/getting-started.md +1 -1
  8. data/docs/keybindings.md +4 -0
  9. data/lib/mui/buffer.rb +1 -1
  10. data/lib/mui/buffer_word_cache.rb +2 -3
  11. data/lib/mui/command_completer.rb +4 -2
  12. data/lib/mui/command_line.rb +7 -2
  13. data/lib/mui/completion_renderer.rb +1 -1
  14. data/lib/mui/config.rb +3 -1
  15. data/lib/mui/editor.rb +3 -0
  16. data/lib/mui/file_completer.rb +10 -10
  17. data/lib/mui/insert_completion_renderer.rb +1 -1
  18. data/lib/mui/key_code.rb +5 -0
  19. data/lib/mui/key_handler/base.rb +2 -0
  20. data/lib/mui/key_handler/command_mode.rb +1 -1
  21. data/lib/mui/key_handler/insert_mode.rb +30 -0
  22. data/lib/mui/key_handler/normal_mode.rb +21 -0
  23. data/lib/mui/key_handler/visual_mode.rb +3 -1
  24. data/lib/mui/key_notation_parser.rb +13 -4
  25. data/lib/mui/mode_manager.rb +15 -27
  26. data/lib/mui/register.rb +36 -0
  27. data/lib/mui/screen.rb +5 -3
  28. data/lib/mui/search_completer.rb +1 -1
  29. data/lib/mui/search_input.rb +3 -3
  30. data/lib/mui/search_state.rb +11 -2
  31. data/lib/mui/status_line_renderer.rb +3 -5
  32. data/lib/mui/syntax/lexers/markdown_lexer.rb +1 -1
  33. data/lib/mui/terminal_adapter/curses.rb +40 -46
  34. data/lib/mui/unicode_width.rb +1 -1
  35. data/lib/mui/version.rb +1 -1
  36. data/lib/mui/window.rb +8 -0
  37. data/lib/mui/window_manager.rb +2 -5
  38. data/lib/mui/wrap_helper.rb +3 -3
  39. data/sig/lib/mui/autocmd.rbs +12 -0
  40. data/sig/lib/mui/buffer.rbs +52 -0
  41. data/sig/lib/mui/buffer_word_cache.rbs +21 -0
  42. data/sig/lib/mui/buffer_word_completer.rbs +15 -0
  43. data/sig/lib/mui/color_manager.rbs +20 -0
  44. data/sig/lib/mui/color_scheme.rbs +14 -0
  45. data/sig/lib/mui/command_completer.rbs +11 -0
  46. data/sig/lib/mui/command_context.rbs +24 -0
  47. data/sig/lib/mui/command_history.rbs +20 -0
  48. data/sig/lib/mui/command_line.rbs +24 -0
  49. data/sig/lib/mui/command_registry.rbs +14 -0
  50. data/sig/lib/mui/completion_renderer.rbs +14 -0
  51. data/sig/lib/mui/completion_state.rbs +20 -0
  52. data/sig/lib/mui/config.rbs +20 -0
  53. data/sig/lib/mui/editor.rbs +54 -0
  54. data/sig/lib/mui/error.rbs +18 -0
  55. data/sig/lib/mui/file_completer.rbs +13 -0
  56. data/sig/lib/mui/floating_window.rbs +30 -0
  57. data/sig/lib/mui/handler_result.rbs +38 -0
  58. data/sig/lib/mui/highlight.rbs +14 -0
  59. data/sig/lib/mui/highlighters/base.rbs +15 -0
  60. data/sig/lib/mui/highlighters/search_highlighter.rbs +11 -0
  61. data/sig/lib/mui/highlighters/selection_highlighter.rbs +13 -0
  62. data/sig/lib/mui/highlighters/syntax_highlighter.rbs +20 -0
  63. data/sig/lib/mui/input.rbs +10 -0
  64. data/sig/lib/mui/insert_completion_renderer.rbs +15 -0
  65. data/sig/lib/mui/insert_completion_state.rbs +23 -0
  66. data/sig/lib/mui/job.rbs +27 -0
  67. data/sig/lib/mui/job_manager.rbs +20 -0
  68. data/sig/lib/mui/key_code.rbs +29 -0
  69. data/sig/lib/mui/key_handler/base.rbs +35 -0
  70. data/sig/lib/mui/key_handler/command_mode.rbs +56 -0
  71. data/sig/lib/mui/key_handler/insert_mode.rbs +42 -0
  72. data/sig/lib/mui/key_handler/motions/motion_handler.rbs +19 -0
  73. data/sig/lib/mui/key_handler/normal_mode.rbs +55 -0
  74. data/sig/lib/mui/key_handler/operators/base_operator.rbs +29 -0
  75. data/sig/lib/mui/key_handler/operators/change_operator.rbs +22 -0
  76. data/sig/lib/mui/key_handler/operators/delete_operator.rbs +22 -0
  77. data/sig/lib/mui/key_handler/operators/paste_operator.rbs +19 -0
  78. data/sig/lib/mui/key_handler/operators/yank_operator.rbs +20 -0
  79. data/sig/lib/mui/key_handler/search_mode.rbs +25 -0
  80. data/sig/lib/mui/key_handler/visual_line_mode.rbs +11 -0
  81. data/sig/lib/mui/key_handler/visual_mode.rbs +43 -0
  82. data/sig/lib/mui/key_handler/window_command.rbs +20 -0
  83. data/sig/lib/mui/key_handler.rbs +4 -0
  84. data/sig/lib/mui/key_notation_parser.rbs +16 -0
  85. data/sig/lib/mui/key_sequence.rbs +18 -0
  86. data/sig/lib/mui/key_sequence_buffer.rbs +18 -0
  87. data/sig/lib/mui/key_sequence_handler.rbs +24 -0
  88. data/sig/lib/mui/key_sequence_matcher.rbs +14 -0
  89. data/sig/lib/mui/layout/calculator.rbs +10 -0
  90. data/sig/lib/mui/layout/leaf_node.rbs +16 -0
  91. data/sig/lib/mui/layout/node.rbs +24 -0
  92. data/sig/lib/mui/layout/split_node.rbs +29 -0
  93. data/sig/lib/mui/line_renderer.rbs +18 -0
  94. data/sig/lib/mui/mode.rbs +14 -0
  95. data/sig/lib/mui/mode_manager.rbs +33 -0
  96. data/sig/lib/mui/motion.rbs +24 -0
  97. data/sig/lib/mui/plugin.rbs +17 -0
  98. data/sig/lib/mui/plugin_manager.rbs +20 -0
  99. data/sig/lib/mui/register.rbs +21 -0
  100. data/sig/lib/mui/screen.rbs +21 -0
  101. data/sig/lib/mui/search_completer.rbs +11 -0
  102. data/sig/lib/mui/search_input.rbs +17 -0
  103. data/sig/lib/mui/search_state.rbs +22 -0
  104. data/sig/lib/mui/selection.rbs +21 -0
  105. data/sig/lib/mui/status_line_renderer.rbs +12 -0
  106. data/sig/lib/mui/syntax/language_detector.rbs +16 -0
  107. data/sig/lib/mui/syntax/lexer_base.rbs +16 -0
  108. data/sig/lib/mui/syntax/lexers/c_lexer.rbs +19 -0
  109. data/sig/lib/mui/syntax/lexers/css_lexer.rbs +19 -0
  110. data/sig/lib/mui/syntax/lexers/go_lexer.rbs +26 -0
  111. data/sig/lib/mui/syntax/lexers/html_lexer.rbs +19 -0
  112. data/sig/lib/mui/syntax/lexers/javascript_lexer.rbs +26 -0
  113. data/sig/lib/mui/syntax/lexers/markdown_lexer.rbs +24 -0
  114. data/sig/lib/mui/syntax/lexers/ruby_lexer.rbs +18 -0
  115. data/sig/lib/mui/syntax/lexers/rust_lexer.rbs +21 -0
  116. data/sig/lib/mui/syntax/lexers/typescript_lexer.rbs +26 -0
  117. data/sig/lib/mui/syntax/token.rbs +16 -0
  118. data/sig/lib/mui/syntax/token_cache.rbs +16 -0
  119. data/sig/lib/mui/tab_bar_renderer.rbs +23 -0
  120. data/sig/lib/mui/tab_manager.rbs +23 -0
  121. data/sig/lib/mui/tab_page.rbs +16 -0
  122. data/sig/lib/mui/terminal_adapter/base.rbs +31 -0
  123. data/sig/lib/mui/terminal_adapter/curses.rbs +31 -0
  124. data/sig/lib/mui/terminal_adapter.rbs +4 -0
  125. data/sig/lib/mui/themes/default.rbs +15 -0
  126. data/sig/lib/mui/undo_manager.rbs +20 -0
  127. data/sig/lib/mui/undoable_action.rbs +56 -0
  128. data/sig/lib/mui/unicode_width.rbs +12 -0
  129. data/sig/lib/mui/version.rbs +6 -0
  130. data/sig/lib/mui/window.rbs +49 -0
  131. data/sig/lib/mui/window_manager.rbs +37 -0
  132. data/sig/lib/mui/wrap_cache.rbs +14 -0
  133. data/sig/lib/mui/wrap_helper.rbs +11 -0
  134. data/sig/lib/mui.rbs +24 -0
  135. data/sig/typeprof.rbs +42 -0
  136. data/typeprof.conf.jsonc +6 -0
  137. metadata +116 -4
  138. data/sig/mui.rbs +0 -4
data/sig/lib/mui.rbs ADDED
@@ -0,0 +1,24 @@
1
+ # TypeProf 0.31.1
2
+
3
+ # lib/mui.rb
4
+ module Mui
5
+ def self.config: -> untyped
6
+ def self.plugin_manager: -> untyped
7
+ def self.register: -> untyped
8
+ def self.set: (untyped, untyped) -> untyped
9
+ def self.use: (untyped, ?nil) -> untyped
10
+ def self.keymap: (untyped, untyped) -> untyped
11
+ def self.command: (untyped) -> untyped
12
+ def self.autocmd: (untyped, ?pattern: nil) -> untyped
13
+ def self.define_plugin: (untyped, ?dependencies: []) -> untyped
14
+ def self.load_config: -> untyped
15
+ def self.lsp: { (Mui::LspConfigStub?) -> untyped } -> Mui::LspConfigStub?
16
+ def self.lsp_server_configs: -> []
17
+ class Mui::LspConfigStub
18
+ def server_configs: -> []
19
+ def initialize: -> void
20
+ def use: (untyped, **untyped) -> []
21
+ def server: (name: untyped, command: untyped, language_ids: untyped, file_patterns: untyped, ?auto_start: true, ?sync_on_change: true) -> []
22
+ end
23
+ def self.reset_config!: -> nil
24
+ end
data/sig/typeprof.rbs ADDED
@@ -0,0 +1,42 @@
1
+ # TypeProf 0.31.1
2
+
3
+ # lib/mui.rb
4
+ module Mui
5
+ VERSION: String
6
+ def self.config: -> untyped
7
+ def self.plugin_manager: -> untyped
8
+ def self.register: -> untyped
9
+ def self.set: (untyped, untyped) -> untyped
10
+ def self.use: (untyped, ?nil) -> untyped
11
+ def self.keymap: (untyped, untyped) -> untyped
12
+ def self.command: (untyped) -> untyped
13
+ def self.autocmd: (untyped, ?pattern: nil) -> untyped
14
+ def self.define_plugin: (untyped, ?dependencies: []) -> untyped
15
+ def self.load_config: -> untyped
16
+ def self.lsp: { (Mui::LspConfigStub?) -> untyped } -> Mui::LspConfigStub?
17
+ def self.lsp_server_configs: -> []
18
+ class Mui::LspConfigStub
19
+ def server_configs: -> []
20
+ def initialize: -> void
21
+ def use: (untyped, **untyped) -> []
22
+ def server: (name: untyped, command: untyped, language_ids: untyped, file_patterns: untyped, ?auto_start: true, ?sync_on_change: true) -> []
23
+ end
24
+ def self.reset_config!: -> nil
25
+
26
+
27
+ class Mui::Config
28
+ def options: -> Hash[:colorscheme | :expandtab | :leader | :reselect_after_indent | :shiftwidth | :syntax | :tabstop | :timeoutlen | :use_yjit, Integer | String | bool]
29
+ def plugins: -> []
30
+ def keymaps: -> Hash[untyped, Hash[untyped, untyped]]
31
+ def commands: -> Hash[untyped, untyped]
32
+ def autocmds: -> Hash[untyped, []]
33
+ def initialize: -> void
34
+ def set: (untyped, untyped) -> untyped
35
+ def get: (untyped) -> (Integer | String | bool)
36
+ def load_file: (untyped) -> nil
37
+ def use_plugin: (untyped, ?nil) -> []
38
+ def add_keymap: (untyped, untyped, untyped) -> untyped
39
+ def add_command: (untyped, untyped) -> untyped
40
+ def add_autocmd: (untyped, untyped, untyped) -> []
41
+ end
42
+ end
@@ -0,0 +1,6 @@
1
+ {
2
+ "typeprof_version": "experimental",
3
+ "rbs_dir": "sig/",
4
+ "analysis_unit_dirs": ["lib"],
5
+ "diagnostic_severity": "info"
6
+ }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mui
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - S-H-GAMELINKS
@@ -9,6 +9,20 @@ bindir: exe
9
9
  cert_chain: []
10
10
  date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: clipboard
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - "~>"
17
+ - !ruby/object:Gem::Version
18
+ version: '2.0'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - "~>"
24
+ - !ruby/object:Gem::Version
25
+ version: '2.0'
12
26
  - !ruby/object:Gem::Dependency
13
27
  name: curses
14
28
  requirement: !ruby/object:Gem::Requirement
@@ -34,6 +48,7 @@ extensions: []
34
48
  extra_rdoc_files: []
35
49
  files:
36
50
  - ".rubocop_todo.yml"
51
+ - ".ruby-lsp.yml"
37
52
  - CHANGELOG.md
38
53
  - LICENSE.txt
39
54
  - README.md
@@ -143,7 +158,104 @@ files:
143
158
  - lib/mui/window_manager.rb
144
159
  - lib/mui/wrap_cache.rb
145
160
  - lib/mui/wrap_helper.rb
146
- - sig/mui.rbs
161
+ - sig/lib/mui.rbs
162
+ - sig/lib/mui/autocmd.rbs
163
+ - sig/lib/mui/buffer.rbs
164
+ - sig/lib/mui/buffer_word_cache.rbs
165
+ - sig/lib/mui/buffer_word_completer.rbs
166
+ - sig/lib/mui/color_manager.rbs
167
+ - sig/lib/mui/color_scheme.rbs
168
+ - sig/lib/mui/command_completer.rbs
169
+ - sig/lib/mui/command_context.rbs
170
+ - sig/lib/mui/command_history.rbs
171
+ - sig/lib/mui/command_line.rbs
172
+ - sig/lib/mui/command_registry.rbs
173
+ - sig/lib/mui/completion_renderer.rbs
174
+ - sig/lib/mui/completion_state.rbs
175
+ - sig/lib/mui/config.rbs
176
+ - sig/lib/mui/editor.rbs
177
+ - sig/lib/mui/error.rbs
178
+ - sig/lib/mui/file_completer.rbs
179
+ - sig/lib/mui/floating_window.rbs
180
+ - sig/lib/mui/handler_result.rbs
181
+ - sig/lib/mui/highlight.rbs
182
+ - sig/lib/mui/highlighters/base.rbs
183
+ - sig/lib/mui/highlighters/search_highlighter.rbs
184
+ - sig/lib/mui/highlighters/selection_highlighter.rbs
185
+ - sig/lib/mui/highlighters/syntax_highlighter.rbs
186
+ - sig/lib/mui/input.rbs
187
+ - sig/lib/mui/insert_completion_renderer.rbs
188
+ - sig/lib/mui/insert_completion_state.rbs
189
+ - sig/lib/mui/job.rbs
190
+ - sig/lib/mui/job_manager.rbs
191
+ - sig/lib/mui/key_code.rbs
192
+ - sig/lib/mui/key_handler.rbs
193
+ - sig/lib/mui/key_handler/base.rbs
194
+ - sig/lib/mui/key_handler/command_mode.rbs
195
+ - sig/lib/mui/key_handler/insert_mode.rbs
196
+ - sig/lib/mui/key_handler/motions/motion_handler.rbs
197
+ - sig/lib/mui/key_handler/normal_mode.rbs
198
+ - sig/lib/mui/key_handler/operators/base_operator.rbs
199
+ - sig/lib/mui/key_handler/operators/change_operator.rbs
200
+ - sig/lib/mui/key_handler/operators/delete_operator.rbs
201
+ - sig/lib/mui/key_handler/operators/paste_operator.rbs
202
+ - sig/lib/mui/key_handler/operators/yank_operator.rbs
203
+ - sig/lib/mui/key_handler/search_mode.rbs
204
+ - sig/lib/mui/key_handler/visual_line_mode.rbs
205
+ - sig/lib/mui/key_handler/visual_mode.rbs
206
+ - sig/lib/mui/key_handler/window_command.rbs
207
+ - sig/lib/mui/key_notation_parser.rbs
208
+ - sig/lib/mui/key_sequence.rbs
209
+ - sig/lib/mui/key_sequence_buffer.rbs
210
+ - sig/lib/mui/key_sequence_handler.rbs
211
+ - sig/lib/mui/key_sequence_matcher.rbs
212
+ - sig/lib/mui/layout/calculator.rbs
213
+ - sig/lib/mui/layout/leaf_node.rbs
214
+ - sig/lib/mui/layout/node.rbs
215
+ - sig/lib/mui/layout/split_node.rbs
216
+ - sig/lib/mui/line_renderer.rbs
217
+ - sig/lib/mui/mode.rbs
218
+ - sig/lib/mui/mode_manager.rbs
219
+ - sig/lib/mui/motion.rbs
220
+ - sig/lib/mui/plugin.rbs
221
+ - sig/lib/mui/plugin_manager.rbs
222
+ - sig/lib/mui/register.rbs
223
+ - sig/lib/mui/screen.rbs
224
+ - sig/lib/mui/search_completer.rbs
225
+ - sig/lib/mui/search_input.rbs
226
+ - sig/lib/mui/search_state.rbs
227
+ - sig/lib/mui/selection.rbs
228
+ - sig/lib/mui/status_line_renderer.rbs
229
+ - sig/lib/mui/syntax/language_detector.rbs
230
+ - sig/lib/mui/syntax/lexer_base.rbs
231
+ - sig/lib/mui/syntax/lexers/c_lexer.rbs
232
+ - sig/lib/mui/syntax/lexers/css_lexer.rbs
233
+ - sig/lib/mui/syntax/lexers/go_lexer.rbs
234
+ - sig/lib/mui/syntax/lexers/html_lexer.rbs
235
+ - sig/lib/mui/syntax/lexers/javascript_lexer.rbs
236
+ - sig/lib/mui/syntax/lexers/markdown_lexer.rbs
237
+ - sig/lib/mui/syntax/lexers/ruby_lexer.rbs
238
+ - sig/lib/mui/syntax/lexers/rust_lexer.rbs
239
+ - sig/lib/mui/syntax/lexers/typescript_lexer.rbs
240
+ - sig/lib/mui/syntax/token.rbs
241
+ - sig/lib/mui/syntax/token_cache.rbs
242
+ - sig/lib/mui/tab_bar_renderer.rbs
243
+ - sig/lib/mui/tab_manager.rbs
244
+ - sig/lib/mui/tab_page.rbs
245
+ - sig/lib/mui/terminal_adapter.rbs
246
+ - sig/lib/mui/terminal_adapter/base.rbs
247
+ - sig/lib/mui/terminal_adapter/curses.rbs
248
+ - sig/lib/mui/themes/default.rbs
249
+ - sig/lib/mui/undo_manager.rbs
250
+ - sig/lib/mui/undoable_action.rbs
251
+ - sig/lib/mui/unicode_width.rbs
252
+ - sig/lib/mui/version.rbs
253
+ - sig/lib/mui/window.rbs
254
+ - sig/lib/mui/window_manager.rbs
255
+ - sig/lib/mui/wrap_cache.rbs
256
+ - sig/lib/mui/wrap_helper.rbs
257
+ - sig/typeprof.rbs
258
+ - typeprof.conf.jsonc
147
259
  homepage: https://s-h-gamelinks.github.io/mui/
148
260
  licenses:
149
261
  - MIT
@@ -160,14 +272,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
160
272
  requirements:
161
273
  - - ">="
162
274
  - !ruby/object:Gem::Version
163
- version: 3.2.0
275
+ version: 3.3.0
164
276
  required_rubygems_version: !ruby/object:Gem::Requirement
165
277
  requirements:
166
278
  - - ">="
167
279
  - !ruby/object:Gem::Version
168
280
  version: '0'
169
281
  requirements: []
170
- rubygems_version: 3.6.9
282
+ rubygems_version: 4.0.2
171
283
  specification_version: 4
172
284
  summary: Mui - A Vim-like TUI editor written in Ruby
173
285
  test_files: []
data/sig/mui.rbs DELETED
@@ -1,4 +0,0 @@
1
- module Mui
2
- VERSION: String
3
- # See the writing guide of rbs: https://github.com/ruby/rbs#guides
4
- end