retrovim 0.0.3

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 (218) hide show
  1. package/.conda/retrovim.yaml +259 -0
  2. package/.conda/terax.icns +0 -0
  3. package/.conda/terax.ico +0 -0
  4. package/.conda/terax.png +0 -0
  5. package/.github/workflows/release.yml +95 -0
  6. package/.gitmodules +3 -0
  7. package/.npm/kanata_touchcursor.js +28 -0
  8. package/.npm/nvim.js +26 -0
  9. package/.npm/yazi.js +26 -0
  10. package/.npm/zsh.js +17 -0
  11. package/.pip/kanata_touchcursor/__init__.py +28 -0
  12. package/.pip/nvim/__init__.py +31 -0
  13. package/.pip/yazi/__init__.py +31 -0
  14. package/.pip/zsh/__init__.py +22 -0
  15. package/CHANGELOG.md +26 -0
  16. package/LICENSE +674 -0
  17. package/README.md +336 -0
  18. package/kanata/touchcursor.kbd +164 -0
  19. package/nvim/init.lua +813 -0
  20. package/nvim/plugins/mini.nvim/.github/DISCUSSION_TEMPLATE/q-a.yml +72 -0
  21. package/nvim/plugins/mini.nvim/.github/ISSUE_TEMPLATE/bug-report.yml +136 -0
  22. package/nvim/plugins/mini.nvim/.github/ISSUE_TEMPLATE/config.yml +5 -0
  23. package/nvim/plugins/mini.nvim/.github/ISSUE_TEMPLATE/feature-request.yml +75 -0
  24. package/nvim/plugins/mini.nvim/.github/PULL_REQUEST_TEMPLATE.md +2 -0
  25. package/nvim/plugins/mini.nvim/.github/workflows/quality-control.yml +150 -0
  26. package/nvim/plugins/mini.nvim/.pre-commit-config.yaml +20 -0
  27. package/nvim/plugins/mini.nvim/.stylua.toml +7 -0
  28. package/nvim/plugins/mini.nvim/.styluaignore +1 -0
  29. package/nvim/plugins/mini.nvim/CHANGELOG.md +1894 -0
  30. package/nvim/plugins/mini.nvim/CODE_OF_CONDUCT.md +132 -0
  31. package/nvim/plugins/mini.nvim/CONTRIBUTING.md +331 -0
  32. package/nvim/plugins/mini.nvim/LICENSE +21 -0
  33. package/nvim/plugins/mini.nvim/MAINTAINING.md +330 -0
  34. package/nvim/plugins/mini.nvim/Makefile +51 -0
  35. package/nvim/plugins/mini.nvim/README.md +261 -0
  36. package/nvim/plugins/mini.nvim/TESTING.md +1011 -0
  37. package/nvim/plugins/mini.nvim/benchmarks/starter/README.md +35 -0
  38. package/nvim/plugins/mini.nvim/benchmarks/starter/benchmark.sh +56 -0
  39. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_dashboard-alpha.lua +21 -0
  40. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_dashboard-original.lua +17 -0
  41. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_dashboard-starter.lua +18 -0
  42. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_empty.lua +4 -0
  43. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_starter-default.lua +7 -0
  44. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_startify-alpha.lua +10 -0
  45. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_startify-original.lua +7 -0
  46. package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_startify-starter.lua +20 -0
  47. package/nvim/plugins/mini.nvim/benchmarks/starter/install.sh +10 -0
  48. package/nvim/plugins/mini.nvim/benchmarks/starter/make_summary.py +68 -0
  49. package/nvim/plugins/mini.nvim/benchmarks/starter/startup-summary.md +10 -0
  50. package/nvim/plugins/mini.nvim/colors/miniautumn.lua +55 -0
  51. package/nvim/plugins/mini.nvim/colors/minicyan.lua +95 -0
  52. package/nvim/plugins/mini.nvim/colors/minischeme.lua +95 -0
  53. package/nvim/plugins/mini.nvim/colors/minispring.lua +53 -0
  54. package/nvim/plugins/mini.nvim/colors/minisummer.lua +49 -0
  55. package/nvim/plugins/mini.nvim/colors/miniwinter.lua +51 -0
  56. package/nvim/plugins/mini.nvim/colors/randomhue.lua +16 -0
  57. package/nvim/plugins/mini.nvim/doc/mini-ai.txt +889 -0
  58. package/nvim/plugins/mini.nvim/doc/mini-align.txt +923 -0
  59. package/nvim/plugins/mini.nvim/doc/mini-animate.txt +937 -0
  60. package/nvim/plugins/mini.nvim/doc/mini-base16.txt +285 -0
  61. package/nvim/plugins/mini.nvim/doc/mini-basics.txt +359 -0
  62. package/nvim/plugins/mini.nvim/doc/mini-bracketed.txt +622 -0
  63. package/nvim/plugins/mini.nvim/doc/mini-bufremove.txt +123 -0
  64. package/nvim/plugins/mini.nvim/doc/mini-clue.txt +760 -0
  65. package/nvim/plugins/mini.nvim/doc/mini-cmdline.txt +392 -0
  66. package/nvim/plugins/mini.nvim/doc/mini-colors.txt +880 -0
  67. package/nvim/plugins/mini.nvim/doc/mini-comment.txt +230 -0
  68. package/nvim/plugins/mini.nvim/doc/mini-completion.txt +477 -0
  69. package/nvim/plugins/mini.nvim/doc/mini-cursorword.txt +105 -0
  70. package/nvim/plugins/mini.nvim/doc/mini-deps.txt +590 -0
  71. package/nvim/plugins/mini.nvim/doc/mini-diff.txt +661 -0
  72. package/nvim/plugins/mini.nvim/doc/mini-doc.txt +434 -0
  73. package/nvim/plugins/mini.nvim/doc/mini-extra.txt +856 -0
  74. package/nvim/plugins/mini.nvim/doc/mini-files.txt +1018 -0
  75. package/nvim/plugins/mini.nvim/doc/mini-fuzzy.txt +160 -0
  76. package/nvim/plugins/mini.nvim/doc/mini-git.txt +425 -0
  77. package/nvim/plugins/mini.nvim/doc/mini-hipatterns.txt +489 -0
  78. package/nvim/plugins/mini.nvim/doc/mini-hues.txt +420 -0
  79. package/nvim/plugins/mini.nvim/doc/mini-icons.txt +508 -0
  80. package/nvim/plugins/mini.nvim/doc/mini-indentscope.txt +485 -0
  81. package/nvim/plugins/mini.nvim/doc/mini-input.txt +932 -0
  82. package/nvim/plugins/mini.nvim/doc/mini-jump.txt +202 -0
  83. package/nvim/plugins/mini.nvim/doc/mini-jump2d.txt +525 -0
  84. package/nvim/plugins/mini.nvim/doc/mini-keymap.txt +449 -0
  85. package/nvim/plugins/mini.nvim/doc/mini-map.txt +717 -0
  86. package/nvim/plugins/mini.nvim/doc/mini-misc.txt +431 -0
  87. package/nvim/plugins/mini.nvim/doc/mini-move.txt +181 -0
  88. package/nvim/plugins/mini.nvim/doc/mini-notify.txt +434 -0
  89. package/nvim/plugins/mini.nvim/doc/mini-nvim.txt +431 -0
  90. package/nvim/plugins/mini.nvim/doc/mini-operators.txt +472 -0
  91. package/nvim/plugins/mini.nvim/doc/mini-pairs.txt +346 -0
  92. package/nvim/plugins/mini.nvim/doc/mini-pick.txt +1535 -0
  93. package/nvim/plugins/mini.nvim/doc/mini-sessions.txt +239 -0
  94. package/nvim/plugins/mini.nvim/doc/mini-snippets.txt +1291 -0
  95. package/nvim/plugins/mini.nvim/doc/mini-splitjoin.txt +536 -0
  96. package/nvim/plugins/mini.nvim/doc/mini-starter.txt +618 -0
  97. package/nvim/plugins/mini.nvim/doc/mini-statusline.txt +361 -0
  98. package/nvim/plugins/mini.nvim/doc/mini-surround.txt +863 -0
  99. package/nvim/plugins/mini.nvim/doc/mini-tabline.txt +151 -0
  100. package/nvim/plugins/mini.nvim/doc/mini-test.txt +966 -0
  101. package/nvim/plugins/mini.nvim/doc/mini-trailspace.txt +91 -0
  102. package/nvim/plugins/mini.nvim/doc/mini-visits.txt +937 -0
  103. package/nvim/plugins/mini.nvim/logo.png +0 -0
  104. package/nvim/plugins/mini.nvim/lua/mini/ai.lua +2244 -0
  105. package/nvim/plugins/mini.nvim/lua/mini/align.lua +2076 -0
  106. package/nvim/plugins/mini.nvim/lua/mini/animate.lua +2127 -0
  107. package/nvim/plugins/mini.nvim/lua/mini/base16.lua +1752 -0
  108. package/nvim/plugins/mini.nvim/lua/mini/basics.lua +772 -0
  109. package/nvim/plugins/mini.nvim/lua/mini/bracketed.lua +2013 -0
  110. package/nvim/plugins/mini.nvim/lua/mini/bufremove.lua +283 -0
  111. package/nvim/plugins/mini.nvim/lua/mini/clue.lua +2096 -0
  112. package/nvim/plugins/mini.nvim/lua/mini/cmdline.lua +1182 -0
  113. package/nvim/plugins/mini.nvim/lua/mini/colors.lua +2483 -0
  114. package/nvim/plugins/mini.nvim/lua/mini/comment.lua +586 -0
  115. package/nvim/plugins/mini.nvim/lua/mini/completion.lua +2094 -0
  116. package/nvim/plugins/mini.nvim/lua/mini/cursorword.lua +311 -0
  117. package/nvim/plugins/mini.nvim/lua/mini/deps.lua +1660 -0
  118. package/nvim/plugins/mini.nvim/lua/mini/diff.lua +1938 -0
  119. package/nvim/plugins/mini.nvim/lua/mini/doc.lua +1371 -0
  120. package/nvim/plugins/mini.nvim/lua/mini/extra.lua +2290 -0
  121. package/nvim/plugins/mini.nvim/lua/mini/files.lua +3145 -0
  122. package/nvim/plugins/mini.nvim/lua/mini/fuzzy.lua +356 -0
  123. package/nvim/plugins/mini.nvim/lua/mini/git.lua +1737 -0
  124. package/nvim/plugins/mini.nvim/lua/mini/hipatterns.lua +1042 -0
  125. package/nvim/plugins/mini.nvim/lua/mini/hues.lua +2088 -0
  126. package/nvim/plugins/mini.nvim/lua/mini/icons.lua +2254 -0
  127. package/nvim/plugins/mini.nvim/lua/mini/indentscope.lua +1158 -0
  128. package/nvim/plugins/mini.nvim/lua/mini/init.lua +427 -0
  129. package/nvim/plugins/mini.nvim/lua/mini/input.lua +2183 -0
  130. package/nvim/plugins/mini.nvim/lua/mini/jump.lua +609 -0
  131. package/nvim/plugins/mini.nvim/lua/mini/jump2d.lua +1244 -0
  132. package/nvim/plugins/mini.nvim/lua/mini/keymap.lua +880 -0
  133. package/nvim/plugins/mini.nvim/lua/mini/map.lua +1709 -0
  134. package/nvim/plugins/mini.nvim/lua/mini/misc.lua +969 -0
  135. package/nvim/plugins/mini.nvim/lua/mini/move.lua +509 -0
  136. package/nvim/plugins/mini.nvim/lua/mini/notify.lua +938 -0
  137. package/nvim/plugins/mini.nvim/lua/mini/operators.lua +1349 -0
  138. package/nvim/plugins/mini.nvim/lua/mini/pairs.lua +657 -0
  139. package/nvim/plugins/mini.nvim/lua/mini/pick.lua +3876 -0
  140. package/nvim/plugins/mini.nvim/lua/mini/sessions.lua +689 -0
  141. package/nvim/plugins/mini.nvim/lua/mini/snippets.lua +2828 -0
  142. package/nvim/plugins/mini.nvim/lua/mini/splitjoin.lua +1132 -0
  143. package/nvim/plugins/mini.nvim/lua/mini/starter.lua +1599 -0
  144. package/nvim/plugins/mini.nvim/lua/mini/statusline.lua +686 -0
  145. package/nvim/plugins/mini.nvim/lua/mini/surround.lua +2388 -0
  146. package/nvim/plugins/mini.nvim/lua/mini/tabline.lua +564 -0
  147. package/nvim/plugins/mini.nvim/lua/mini/test.lua +2516 -0
  148. package/nvim/plugins/mini.nvim/lua/mini/trailspace.lua +215 -0
  149. package/nvim/plugins/mini.nvim/lua/mini/visits.lua +1577 -0
  150. package/nvim/plugins/mini.nvim/readmes/mini-ai.md +190 -0
  151. package/nvim/plugins/mini.nvim/readmes/mini-align.md +203 -0
  152. package/nvim/plugins/mini.nvim/readmes/mini-animate.md +214 -0
  153. package/nvim/plugins/mini.nvim/readmes/mini-base16.md +198 -0
  154. package/nvim/plugins/mini.nvim/readmes/mini-basics.md +184 -0
  155. package/nvim/plugins/mini.nvim/readmes/mini-bracketed.md +193 -0
  156. package/nvim/plugins/mini.nvim/readmes/mini-bufremove.md +139 -0
  157. package/nvim/plugins/mini.nvim/readmes/mini-clue.md +260 -0
  158. package/nvim/plugins/mini.nvim/readmes/mini-cmdline.md +183 -0
  159. package/nvim/plugins/mini.nvim/readmes/mini-colors.md +169 -0
  160. package/nvim/plugins/mini.nvim/readmes/mini-comment.md +183 -0
  161. package/nvim/plugins/mini.nvim/readmes/mini-completion.md +217 -0
  162. package/nvim/plugins/mini.nvim/readmes/mini-cursorword.md +137 -0
  163. package/nvim/plugins/mini.nvim/readmes/mini-deps.md +271 -0
  164. package/nvim/plugins/mini.nvim/readmes/mini-diff.md +289 -0
  165. package/nvim/plugins/mini.nvim/readmes/mini-doc.md +198 -0
  166. package/nvim/plugins/mini.nvim/readmes/mini-extra.md +158 -0
  167. package/nvim/plugins/mini.nvim/readmes/mini-files.md +247 -0
  168. package/nvim/plugins/mini.nvim/readmes/mini-fuzzy.md +134 -0
  169. package/nvim/plugins/mini.nvim/readmes/mini-git.md +168 -0
  170. package/nvim/plugins/mini.nvim/readmes/mini-hipatterns.md +176 -0
  171. package/nvim/plugins/mini.nvim/readmes/mini-hues.md +285 -0
  172. package/nvim/plugins/mini.nvim/readmes/mini-icons.md +183 -0
  173. package/nvim/plugins/mini.nvim/readmes/mini-indentscope.md +191 -0
  174. package/nvim/plugins/mini.nvim/readmes/mini-input.md +163 -0
  175. package/nvim/plugins/mini.nvim/readmes/mini-jump.md +161 -0
  176. package/nvim/plugins/mini.nvim/readmes/mini-jump2d.md +197 -0
  177. package/nvim/plugins/mini.nvim/readmes/mini-keymap.md +205 -0
  178. package/nvim/plugins/mini.nvim/readmes/mini-map.md +191 -0
  179. package/nvim/plugins/mini.nvim/readmes/mini-misc.md +145 -0
  180. package/nvim/plugins/mini.nvim/readmes/mini-move.md +163 -0
  181. package/nvim/plugins/mini.nvim/readmes/mini-notify.md +175 -0
  182. package/nvim/plugins/mini.nvim/readmes/mini-operators.md +193 -0
  183. package/nvim/plugins/mini.nvim/readmes/mini-pairs.md +158 -0
  184. package/nvim/plugins/mini.nvim/readmes/mini-pick.md +340 -0
  185. package/nvim/plugins/mini.nvim/readmes/mini-sessions.md +164 -0
  186. package/nvim/plugins/mini.nvim/readmes/mini-snippets.md +373 -0
  187. package/nvim/plugins/mini.nvim/readmes/mini-splitjoin.md +194 -0
  188. package/nvim/plugins/mini.nvim/readmes/mini-starter.md +176 -0
  189. package/nvim/plugins/mini.nvim/readmes/mini-statusline.md +155 -0
  190. package/nvim/plugins/mini.nvim/readmes/mini-surround.md +190 -0
  191. package/nvim/plugins/mini.nvim/readmes/mini-tabline.md +156 -0
  192. package/nvim/plugins/mini.nvim/readmes/mini-test.md +175 -0
  193. package/nvim/plugins/mini.nvim/readmes/mini-trailspace.md +137 -0
  194. package/nvim/plugins/mini.nvim/readmes/mini-visits.md +243 -0
  195. package/nvim/plugins/mini.nvim/scripts/dual_log.sh +13 -0
  196. package/nvim/plugins/mini.nvim/scripts/dual_push.sh +15 -0
  197. package/nvim/plugins/mini.nvim/scripts/dual_release.sh +102 -0
  198. package/nvim/plugins/mini.nvim/scripts/dual_sync.sh +115 -0
  199. package/nvim/plugins/mini.nvim/scripts/init-deps-example.lua +59 -0
  200. package/nvim/plugins/mini.nvim/scripts/lint-filename-length.sh +16 -0
  201. package/nvim/plugins/mini.nvim/scripts/lintcommit-ci.sh +18 -0
  202. package/nvim/plugins/mini.nvim/scripts/lintcommit.lua +393 -0
  203. package/nvim/plugins/mini.nvim/scripts/minidoc.lua +57 -0
  204. package/nvim/plugins/mini.nvim/scripts/minimal_init.lua +28 -0
  205. package/nvim/plugins/mini.nvim/scripts/minitest.lua +4 -0
  206. package/package.json +16 -0
  207. package/pyproject.toml +43 -0
  208. package/yazi/init.lua +12 -0
  209. package/yazi/keymap.toml +114 -0
  210. package/yazi/lesskey +5 -0
  211. package/yazi/plugins/bookmarks.yazi/main.lua +86 -0
  212. package/yazi/plugins/cd-git-root.yazi/main.lua +31 -0
  213. package/yazi/plugins/smart-enter.yazi/main.lua +11 -0
  214. package/yazi/theme.toml +26 -0
  215. package/yazi/yazi.toml +15 -0
  216. package/zsh/.zshrc +145 -0
  217. package/zsh/starship.toml +20 -0
  218. package/zsh/zsh-patina.toml +2 -0
@@ -0,0 +1,239 @@
1
+ *mini.sessions* Session management
2
+
3
+ MIT License Copyright (c) 2021 Evgeni Chasnovski
4
+
5
+ ------------------------------------------------------------------------------
6
+ *MiniSessions*
7
+ Read, write, and delete sessions. Uses |:mksession| (meaning |'sessionoptions'|
8
+ is fully respected). This is intended as a drop-in Lua replacement for
9
+ [mhinz/vim-startify](https://github.com/mhinz/vim-startify) session management
10
+ (works out of the box with sessions created by it). Implements both global
11
+ (from configured directory) and local (from current directory) sessions.
12
+
13
+ Key design ideas:
14
+ - Sessions are represented by readable files (results of applying |:mksession|).
15
+ There are two kinds of sessions:
16
+ - Global: any file inside a configurable directory.
17
+ - Local: configurable file inside current working directory (|getcwd()|).
18
+
19
+ - All session files are detected during `MiniSessions.setup()` and during
20
+ relevant actions (`read`, `delete`, `select`) with file names as session
21
+ names (including possible extension).
22
+
23
+ - No automated new session creation. Use |MiniSessions.write()| manually.
24
+
25
+ - Store information about detected sessions in separate table
26
+ (|MiniSessions.detected|) and operate only on it. Meaning if this information
27
+ changes, there will be no effect until next detection. To avoid confusion,
28
+ don't directly use |:mksession| / |:source| for writing / reading session files.
29
+
30
+ Features:
31
+ - Autoread default session (local if detected, else latest written global) if
32
+ Neovim was called without intention to show something else.
33
+
34
+ - Autowrite currently read session before leaving it (quit Neovim or read
35
+ another session).
36
+
37
+ - Restart Neovim preserving current session (requires Neovim>=0.12).
38
+
39
+ - Configurable severity level of all actions.
40
+
41
+ # Setup ~
42
+
43
+ This module needs a setup with `require('mini.sessions').setup({})`
44
+ (replace `{}` with your `config` table). It will create global Lua table
45
+ `MiniSessions` which you can use for scripting or manually (with
46
+ `:lua MiniSessions.*`).
47
+
48
+ See |MiniSessions.config| for `config` structure and default values.
49
+
50
+ This module doesn't benefit from buffer local configuration, so using
51
+ `vim.b.minisessions_config` will have no effect here.
52
+
53
+ # Disabling ~
54
+
55
+ To disable core functionality, set `vim.g.minisessions_disable` (globally) or
56
+ `vim.b.minisessions_disable` (for a buffer) to `true`. Considering high
57
+ number of different scenarios and customization intentions, writing exact
58
+ rules for disabling module's functionality is left to user. See
59
+ |mini.nvim-disabling-recipes| for common recipes.
60
+
61
+ ------------------------------------------------------------------------------
62
+ *MiniSessions.setup()*
63
+ `MiniSessions.setup`({config})
64
+ Module setup
65
+
66
+ Parameters ~
67
+ {config} `(table|nil)` Module config table. See |MiniSessions.config|.
68
+
69
+ Usage ~
70
+ >lua
71
+ require('mini.sessions').setup() -- use default config
72
+ -- OR
73
+ require('mini.sessions').setup({}) -- replace {} with your config table
74
+ <
75
+ ------------------------------------------------------------------------------
76
+ *MiniSessions.config*
77
+ `MiniSessions.config`
78
+ Defaults ~
79
+ >lua
80
+ MiniSessions.config = {
81
+ -- Whether to read default session if Neovim opened without file arguments
82
+ autoread = false,
83
+
84
+ -- Whether to write currently read session before leaving it
85
+ autowrite = true,
86
+
87
+ -- Directory where global sessions are stored (use `''` to disable)
88
+ directory = --<"session" subdir of user data directory from |stdpath()|>,
89
+
90
+ -- File for local session (use `''` to disable)
91
+ file = 'Session.vim',
92
+
93
+ -- Whether to force possibly harmful actions (meaning depends on function)
94
+ force = { read = false, write = true, delete = false },
95
+
96
+ -- Hook functions for actions. Default `nil` means 'do nothing'.
97
+ -- Takes table with active session data as argument.
98
+ hooks = {
99
+ -- Before successful action
100
+ pre = { read = nil, write = nil, delete = nil },
101
+ -- After successful action
102
+ post = { read = nil, write = nil, delete = nil },
103
+ },
104
+
105
+ -- Whether to print session path after action
106
+ verbose = { read = false, write = true, delete = true },
107
+ }
108
+ <
109
+ ------------------------------------------------------------------------------
110
+ *MiniSessions.detected*
111
+ `MiniSessions.detected`
112
+ Table of detected sessions. Keys represent session name. Values are tables
113
+ with session information that currently has these fields (but subject to
114
+ change):
115
+ - <modify_time> `(number)` modification time (see |getftime()|) of session file.
116
+ - <name> `(string)` name of session (should be equal to table key).
117
+ - <path> `(string)` full path to session file.
118
+ - <type> `(string)` type of session (`'global'` or `'local'`).
119
+
120
+ ------------------------------------------------------------------------------
121
+ *MiniSessions.read()*
122
+ `MiniSessions.read`({session_name}, {opts})
123
+ Read detected session
124
+
125
+ What it does:
126
+ - If there is an active session and `autowrite` is `true` in |MiniSessions.config|,
127
+ write it with |MiniSessions.write()|.
128
+ - Delete all current buffers with |:bwipeout|. This is needed to correctly
129
+ restore buffers from target session. If `force` is not `true`, checks
130
+ beforehand for unsaved listed buffers and stops if there are any.
131
+ - Source session with supplied name.
132
+
133
+ Parameters ~
134
+ {session_name} `(string|nil)` Name of detected session file to read. Default:
135
+ `nil` for default session: local (if detected) or latest session (see
136
+ |MiniSessions.get_latest()|).
137
+ {opts} `(table|nil)` Table with options. Current allowed keys:
138
+ - <force> (whether to delete unsaved buffers; default:
139
+ `MiniSessions.config.force.read`).
140
+ - <verbose> (whether to print session path after action; default
141
+ `MiniSessions.config.verbose.read`).
142
+ - <hooks> (a table with <pre> and <post> function hooks to be executed
143
+ with session data argument before and after successful read; overrides
144
+ `MiniSessions.config.hooks.pre.read` and
145
+ `MiniSessions.config.hooks.post.read`).
146
+
147
+ ------------------------------------------------------------------------------
148
+ *MiniSessions.write()*
149
+ `MiniSessions.write`({session_name}, {opts})
150
+ Write session
151
+
152
+ What it does:
153
+ - Check if file for supplied session name already exists. If it does and
154
+ `force` is not `true`, then stop.
155
+ - Write session with |:mksession| to a file named `session_name`. Its
156
+ directory is determined based on type of session:
157
+ - It is at location |v:this_session| if `session_name` is `nil` and
158
+ there is currently read session.
159
+ - It is current working directory (|getcwd()|) if `session_name` is equal
160
+ to `MiniSessions.config.file` (represents local session).
161
+ - It is `MiniSessions.config.directory` otherwise (represents global
162
+ session).
163
+ - Update |MiniSessions.detected|.
164
+
165
+ Parameters ~
166
+ {session_name} `(string|nil)` Name of session file to write. Default: `nil` for
167
+ currently read session (|v:this_session|).
168
+ {opts} `(table|nil)` Table with options. Current allowed keys:
169
+ - <force> (whether to ignore existence of session file; default:
170
+ `MiniSessions.config.force.write`).
171
+ - <verbose> (whether to print session path after action; default
172
+ `MiniSessions.config.verbose.write`).
173
+ - <hooks> (a table with <pre> and <post> function hooks to be executed
174
+ with session data argument before and after successful write; overrides
175
+ `MiniSessions.config.hooks.pre.write` and
176
+ `MiniSessions.config.hooks.post.write`).
177
+
178
+ ------------------------------------------------------------------------------
179
+ *MiniSessions.delete()*
180
+ `MiniSessions.delete`({session_name}, {opts})
181
+ Delete detected session
182
+
183
+ What it does:
184
+ - Check if session name is a current one. If yes and `force` is not `true`,
185
+ then stop.
186
+ - Delete session.
187
+ - Update |MiniSessions.detected|.
188
+
189
+ Parameters ~
190
+ {session_name} `(string|nil)` Name of detected session file to delete. Default:
191
+ `nil` for name of currently read session (taken from |v:this_session|).
192
+ {opts} `(table|nil)` Table with options. Current allowed keys:
193
+ - <force> (whether to allow deletion of current session; default:
194
+ `MiniSessions.config.force.delete`).
195
+ - <verbose> (whether to print session path after action; default
196
+ `MiniSessions.config.verbose.delete`).
197
+ - <hooks> (a table with <pre> and <post> function hooks to be executed
198
+ with session data argument before and after successful delete; overrides
199
+ `MiniSessions.config.hooks.pre.delete` and
200
+ `MiniSessions.config.hooks.post.delete`).
201
+
202
+ ------------------------------------------------------------------------------
203
+ *MiniSessions.restart()*
204
+ `MiniSessions.restart`()
205
+ Restart Neovim preserving current session
206
+
207
+ Write (active or new temporary) session, |:restart|, source the session.
208
+
209
+ Notes:
210
+ - Requires Neovim>=0.12 for |:restart| command.
211
+ - If there is no active session (|v:this_session|), |argument-list| is cleared
212
+ for temporary session to not preserve it.
213
+
214
+ ------------------------------------------------------------------------------
215
+ *MiniSessions.select()*
216
+ `MiniSessions.select`({action}, {opts})
217
+ Select session interactively and perform action
218
+
219
+ Note: this uses |vim.ui.select()| function. For more user-friendly
220
+ experience, override it (for example, see |MiniPick.ui_select()|).
221
+
222
+ Parameters ~
223
+ {action} `(string|nil)` Action to perform. Should be one of "read" (default),
224
+ "write", or "delete".
225
+ {opts} `(table|nil)` Options for specified action.
226
+
227
+ ------------------------------------------------------------------------------
228
+ *MiniSessions.get_latest()*
229
+ `MiniSessions.get_latest`()
230
+ Get name of latest detected session
231
+
232
+ Latest session is the session with the latest modification time determined
233
+ by |getftime()|.
234
+
235
+ Return ~
236
+ `(string|nil)` Name of latest session or `nil` if there is no sessions.
237
+
238
+
239
+ vim:tw=78:ts=8:noet:ft=help:norl: