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.
- package/.conda/retrovim.yaml +259 -0
- package/.conda/terax.icns +0 -0
- package/.conda/terax.ico +0 -0
- package/.conda/terax.png +0 -0
- package/.github/workflows/release.yml +95 -0
- package/.gitmodules +3 -0
- package/.npm/kanata_touchcursor.js +28 -0
- package/.npm/nvim.js +26 -0
- package/.npm/yazi.js +26 -0
- package/.npm/zsh.js +17 -0
- package/.pip/kanata_touchcursor/__init__.py +28 -0
- package/.pip/nvim/__init__.py +31 -0
- package/.pip/yazi/__init__.py +31 -0
- package/.pip/zsh/__init__.py +22 -0
- package/CHANGELOG.md +26 -0
- package/LICENSE +674 -0
- package/README.md +336 -0
- package/kanata/touchcursor.kbd +164 -0
- package/nvim/init.lua +813 -0
- package/nvim/plugins/mini.nvim/.github/DISCUSSION_TEMPLATE/q-a.yml +72 -0
- package/nvim/plugins/mini.nvim/.github/ISSUE_TEMPLATE/bug-report.yml +136 -0
- package/nvim/plugins/mini.nvim/.github/ISSUE_TEMPLATE/config.yml +5 -0
- package/nvim/plugins/mini.nvim/.github/ISSUE_TEMPLATE/feature-request.yml +75 -0
- package/nvim/plugins/mini.nvim/.github/PULL_REQUEST_TEMPLATE.md +2 -0
- package/nvim/plugins/mini.nvim/.github/workflows/quality-control.yml +150 -0
- package/nvim/plugins/mini.nvim/.pre-commit-config.yaml +20 -0
- package/nvim/plugins/mini.nvim/.stylua.toml +7 -0
- package/nvim/plugins/mini.nvim/.styluaignore +1 -0
- package/nvim/plugins/mini.nvim/CHANGELOG.md +1894 -0
- package/nvim/plugins/mini.nvim/CODE_OF_CONDUCT.md +132 -0
- package/nvim/plugins/mini.nvim/CONTRIBUTING.md +331 -0
- package/nvim/plugins/mini.nvim/LICENSE +21 -0
- package/nvim/plugins/mini.nvim/MAINTAINING.md +330 -0
- package/nvim/plugins/mini.nvim/Makefile +51 -0
- package/nvim/plugins/mini.nvim/README.md +261 -0
- package/nvim/plugins/mini.nvim/TESTING.md +1011 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/README.md +35 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/benchmark.sh +56 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_dashboard-alpha.lua +21 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_dashboard-original.lua +17 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_dashboard-starter.lua +18 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_empty.lua +4 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_starter-default.lua +7 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_startify-alpha.lua +10 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_startify-original.lua +7 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/init-files/init_startify-starter.lua +20 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/install.sh +10 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/make_summary.py +68 -0
- package/nvim/plugins/mini.nvim/benchmarks/starter/startup-summary.md +10 -0
- package/nvim/plugins/mini.nvim/colors/miniautumn.lua +55 -0
- package/nvim/plugins/mini.nvim/colors/minicyan.lua +95 -0
- package/nvim/plugins/mini.nvim/colors/minischeme.lua +95 -0
- package/nvim/plugins/mini.nvim/colors/minispring.lua +53 -0
- package/nvim/plugins/mini.nvim/colors/minisummer.lua +49 -0
- package/nvim/plugins/mini.nvim/colors/miniwinter.lua +51 -0
- package/nvim/plugins/mini.nvim/colors/randomhue.lua +16 -0
- package/nvim/plugins/mini.nvim/doc/mini-ai.txt +889 -0
- package/nvim/plugins/mini.nvim/doc/mini-align.txt +923 -0
- package/nvim/plugins/mini.nvim/doc/mini-animate.txt +937 -0
- package/nvim/plugins/mini.nvim/doc/mini-base16.txt +285 -0
- package/nvim/plugins/mini.nvim/doc/mini-basics.txt +359 -0
- package/nvim/plugins/mini.nvim/doc/mini-bracketed.txt +622 -0
- package/nvim/plugins/mini.nvim/doc/mini-bufremove.txt +123 -0
- package/nvim/plugins/mini.nvim/doc/mini-clue.txt +760 -0
- package/nvim/plugins/mini.nvim/doc/mini-cmdline.txt +392 -0
- package/nvim/plugins/mini.nvim/doc/mini-colors.txt +880 -0
- package/nvim/plugins/mini.nvim/doc/mini-comment.txt +230 -0
- package/nvim/plugins/mini.nvim/doc/mini-completion.txt +477 -0
- package/nvim/plugins/mini.nvim/doc/mini-cursorword.txt +105 -0
- package/nvim/plugins/mini.nvim/doc/mini-deps.txt +590 -0
- package/nvim/plugins/mini.nvim/doc/mini-diff.txt +661 -0
- package/nvim/plugins/mini.nvim/doc/mini-doc.txt +434 -0
- package/nvim/plugins/mini.nvim/doc/mini-extra.txt +856 -0
- package/nvim/plugins/mini.nvim/doc/mini-files.txt +1018 -0
- package/nvim/plugins/mini.nvim/doc/mini-fuzzy.txt +160 -0
- package/nvim/plugins/mini.nvim/doc/mini-git.txt +425 -0
- package/nvim/plugins/mini.nvim/doc/mini-hipatterns.txt +489 -0
- package/nvim/plugins/mini.nvim/doc/mini-hues.txt +420 -0
- package/nvim/plugins/mini.nvim/doc/mini-icons.txt +508 -0
- package/nvim/plugins/mini.nvim/doc/mini-indentscope.txt +485 -0
- package/nvim/plugins/mini.nvim/doc/mini-input.txt +932 -0
- package/nvim/plugins/mini.nvim/doc/mini-jump.txt +202 -0
- package/nvim/plugins/mini.nvim/doc/mini-jump2d.txt +525 -0
- package/nvim/plugins/mini.nvim/doc/mini-keymap.txt +449 -0
- package/nvim/plugins/mini.nvim/doc/mini-map.txt +717 -0
- package/nvim/plugins/mini.nvim/doc/mini-misc.txt +431 -0
- package/nvim/plugins/mini.nvim/doc/mini-move.txt +181 -0
- package/nvim/plugins/mini.nvim/doc/mini-notify.txt +434 -0
- package/nvim/plugins/mini.nvim/doc/mini-nvim.txt +431 -0
- package/nvim/plugins/mini.nvim/doc/mini-operators.txt +472 -0
- package/nvim/plugins/mini.nvim/doc/mini-pairs.txt +346 -0
- package/nvim/plugins/mini.nvim/doc/mini-pick.txt +1535 -0
- package/nvim/plugins/mini.nvim/doc/mini-sessions.txt +239 -0
- package/nvim/plugins/mini.nvim/doc/mini-snippets.txt +1291 -0
- package/nvim/plugins/mini.nvim/doc/mini-splitjoin.txt +536 -0
- package/nvim/plugins/mini.nvim/doc/mini-starter.txt +618 -0
- package/nvim/plugins/mini.nvim/doc/mini-statusline.txt +361 -0
- package/nvim/plugins/mini.nvim/doc/mini-surround.txt +863 -0
- package/nvim/plugins/mini.nvim/doc/mini-tabline.txt +151 -0
- package/nvim/plugins/mini.nvim/doc/mini-test.txt +966 -0
- package/nvim/plugins/mini.nvim/doc/mini-trailspace.txt +91 -0
- package/nvim/plugins/mini.nvim/doc/mini-visits.txt +937 -0
- package/nvim/plugins/mini.nvim/logo.png +0 -0
- package/nvim/plugins/mini.nvim/lua/mini/ai.lua +2244 -0
- package/nvim/plugins/mini.nvim/lua/mini/align.lua +2076 -0
- package/nvim/plugins/mini.nvim/lua/mini/animate.lua +2127 -0
- package/nvim/plugins/mini.nvim/lua/mini/base16.lua +1752 -0
- package/nvim/plugins/mini.nvim/lua/mini/basics.lua +772 -0
- package/nvim/plugins/mini.nvim/lua/mini/bracketed.lua +2013 -0
- package/nvim/plugins/mini.nvim/lua/mini/bufremove.lua +283 -0
- package/nvim/plugins/mini.nvim/lua/mini/clue.lua +2096 -0
- package/nvim/plugins/mini.nvim/lua/mini/cmdline.lua +1182 -0
- package/nvim/plugins/mini.nvim/lua/mini/colors.lua +2483 -0
- package/nvim/plugins/mini.nvim/lua/mini/comment.lua +586 -0
- package/nvim/plugins/mini.nvim/lua/mini/completion.lua +2094 -0
- package/nvim/plugins/mini.nvim/lua/mini/cursorword.lua +311 -0
- package/nvim/plugins/mini.nvim/lua/mini/deps.lua +1660 -0
- package/nvim/plugins/mini.nvim/lua/mini/diff.lua +1938 -0
- package/nvim/plugins/mini.nvim/lua/mini/doc.lua +1371 -0
- package/nvim/plugins/mini.nvim/lua/mini/extra.lua +2290 -0
- package/nvim/plugins/mini.nvim/lua/mini/files.lua +3145 -0
- package/nvim/plugins/mini.nvim/lua/mini/fuzzy.lua +356 -0
- package/nvim/plugins/mini.nvim/lua/mini/git.lua +1737 -0
- package/nvim/plugins/mini.nvim/lua/mini/hipatterns.lua +1042 -0
- package/nvim/plugins/mini.nvim/lua/mini/hues.lua +2088 -0
- package/nvim/plugins/mini.nvim/lua/mini/icons.lua +2254 -0
- package/nvim/plugins/mini.nvim/lua/mini/indentscope.lua +1158 -0
- package/nvim/plugins/mini.nvim/lua/mini/init.lua +427 -0
- package/nvim/plugins/mini.nvim/lua/mini/input.lua +2183 -0
- package/nvim/plugins/mini.nvim/lua/mini/jump.lua +609 -0
- package/nvim/plugins/mini.nvim/lua/mini/jump2d.lua +1244 -0
- package/nvim/plugins/mini.nvim/lua/mini/keymap.lua +880 -0
- package/nvim/plugins/mini.nvim/lua/mini/map.lua +1709 -0
- package/nvim/plugins/mini.nvim/lua/mini/misc.lua +969 -0
- package/nvim/plugins/mini.nvim/lua/mini/move.lua +509 -0
- package/nvim/plugins/mini.nvim/lua/mini/notify.lua +938 -0
- package/nvim/plugins/mini.nvim/lua/mini/operators.lua +1349 -0
- package/nvim/plugins/mini.nvim/lua/mini/pairs.lua +657 -0
- package/nvim/plugins/mini.nvim/lua/mini/pick.lua +3876 -0
- package/nvim/plugins/mini.nvim/lua/mini/sessions.lua +689 -0
- package/nvim/plugins/mini.nvim/lua/mini/snippets.lua +2828 -0
- package/nvim/plugins/mini.nvim/lua/mini/splitjoin.lua +1132 -0
- package/nvim/plugins/mini.nvim/lua/mini/starter.lua +1599 -0
- package/nvim/plugins/mini.nvim/lua/mini/statusline.lua +686 -0
- package/nvim/plugins/mini.nvim/lua/mini/surround.lua +2388 -0
- package/nvim/plugins/mini.nvim/lua/mini/tabline.lua +564 -0
- package/nvim/plugins/mini.nvim/lua/mini/test.lua +2516 -0
- package/nvim/plugins/mini.nvim/lua/mini/trailspace.lua +215 -0
- package/nvim/plugins/mini.nvim/lua/mini/visits.lua +1577 -0
- package/nvim/plugins/mini.nvim/readmes/mini-ai.md +190 -0
- package/nvim/plugins/mini.nvim/readmes/mini-align.md +203 -0
- package/nvim/plugins/mini.nvim/readmes/mini-animate.md +214 -0
- package/nvim/plugins/mini.nvim/readmes/mini-base16.md +198 -0
- package/nvim/plugins/mini.nvim/readmes/mini-basics.md +184 -0
- package/nvim/plugins/mini.nvim/readmes/mini-bracketed.md +193 -0
- package/nvim/plugins/mini.nvim/readmes/mini-bufremove.md +139 -0
- package/nvim/plugins/mini.nvim/readmes/mini-clue.md +260 -0
- package/nvim/plugins/mini.nvim/readmes/mini-cmdline.md +183 -0
- package/nvim/plugins/mini.nvim/readmes/mini-colors.md +169 -0
- package/nvim/plugins/mini.nvim/readmes/mini-comment.md +183 -0
- package/nvim/plugins/mini.nvim/readmes/mini-completion.md +217 -0
- package/nvim/plugins/mini.nvim/readmes/mini-cursorword.md +137 -0
- package/nvim/plugins/mini.nvim/readmes/mini-deps.md +271 -0
- package/nvim/plugins/mini.nvim/readmes/mini-diff.md +289 -0
- package/nvim/plugins/mini.nvim/readmes/mini-doc.md +198 -0
- package/nvim/plugins/mini.nvim/readmes/mini-extra.md +158 -0
- package/nvim/plugins/mini.nvim/readmes/mini-files.md +247 -0
- package/nvim/plugins/mini.nvim/readmes/mini-fuzzy.md +134 -0
- package/nvim/plugins/mini.nvim/readmes/mini-git.md +168 -0
- package/nvim/plugins/mini.nvim/readmes/mini-hipatterns.md +176 -0
- package/nvim/plugins/mini.nvim/readmes/mini-hues.md +285 -0
- package/nvim/plugins/mini.nvim/readmes/mini-icons.md +183 -0
- package/nvim/plugins/mini.nvim/readmes/mini-indentscope.md +191 -0
- package/nvim/plugins/mini.nvim/readmes/mini-input.md +163 -0
- package/nvim/plugins/mini.nvim/readmes/mini-jump.md +161 -0
- package/nvim/plugins/mini.nvim/readmes/mini-jump2d.md +197 -0
- package/nvim/plugins/mini.nvim/readmes/mini-keymap.md +205 -0
- package/nvim/plugins/mini.nvim/readmes/mini-map.md +191 -0
- package/nvim/plugins/mini.nvim/readmes/mini-misc.md +145 -0
- package/nvim/plugins/mini.nvim/readmes/mini-move.md +163 -0
- package/nvim/plugins/mini.nvim/readmes/mini-notify.md +175 -0
- package/nvim/plugins/mini.nvim/readmes/mini-operators.md +193 -0
- package/nvim/plugins/mini.nvim/readmes/mini-pairs.md +158 -0
- package/nvim/plugins/mini.nvim/readmes/mini-pick.md +340 -0
- package/nvim/plugins/mini.nvim/readmes/mini-sessions.md +164 -0
- package/nvim/plugins/mini.nvim/readmes/mini-snippets.md +373 -0
- package/nvim/plugins/mini.nvim/readmes/mini-splitjoin.md +194 -0
- package/nvim/plugins/mini.nvim/readmes/mini-starter.md +176 -0
- package/nvim/plugins/mini.nvim/readmes/mini-statusline.md +155 -0
- package/nvim/plugins/mini.nvim/readmes/mini-surround.md +190 -0
- package/nvim/plugins/mini.nvim/readmes/mini-tabline.md +156 -0
- package/nvim/plugins/mini.nvim/readmes/mini-test.md +175 -0
- package/nvim/plugins/mini.nvim/readmes/mini-trailspace.md +137 -0
- package/nvim/plugins/mini.nvim/readmes/mini-visits.md +243 -0
- package/nvim/plugins/mini.nvim/scripts/dual_log.sh +13 -0
- package/nvim/plugins/mini.nvim/scripts/dual_push.sh +15 -0
- package/nvim/plugins/mini.nvim/scripts/dual_release.sh +102 -0
- package/nvim/plugins/mini.nvim/scripts/dual_sync.sh +115 -0
- package/nvim/plugins/mini.nvim/scripts/init-deps-example.lua +59 -0
- package/nvim/plugins/mini.nvim/scripts/lint-filename-length.sh +16 -0
- package/nvim/plugins/mini.nvim/scripts/lintcommit-ci.sh +18 -0
- package/nvim/plugins/mini.nvim/scripts/lintcommit.lua +393 -0
- package/nvim/plugins/mini.nvim/scripts/minidoc.lua +57 -0
- package/nvim/plugins/mini.nvim/scripts/minimal_init.lua +28 -0
- package/nvim/plugins/mini.nvim/scripts/minitest.lua +4 -0
- package/package.json +16 -0
- package/pyproject.toml +43 -0
- package/yazi/init.lua +12 -0
- package/yazi/keymap.toml +114 -0
- package/yazi/lesskey +5 -0
- package/yazi/plugins/bookmarks.yazi/main.lua +86 -0
- package/yazi/plugins/cd-git-root.yazi/main.lua +31 -0
- package/yazi/plugins/smart-enter.yazi/main.lua +11 -0
- package/yazi/theme.toml +26 -0
- package/yazi/yazi.toml +15 -0
- package/zsh/.zshrc +145 -0
- package/zsh/starship.toml +20 -0
- package/zsh/zsh-patina.toml +2 -0
|
@@ -0,0 +1,361 @@
|
|
|
1
|
+
*mini.statusline* Statusline
|
|
2
|
+
|
|
3
|
+
MIT License Copyright (c) 2021 Evgeni Chasnovski
|
|
4
|
+
|
|
5
|
+
------------------------------------------------------------------------------
|
|
6
|
+
*MiniStatusline*
|
|
7
|
+
Features:
|
|
8
|
+
- Define own custom statusline structure for active and inactive windows.
|
|
9
|
+
This is done with a function which should return string appropriate for
|
|
10
|
+
|'statusline'|. Its code should be similar to default one with structure:
|
|
11
|
+
- Compute string data for every section you want to be displayed.
|
|
12
|
+
- Combine them in groups with |MiniStatusline.combine_groups()|.
|
|
13
|
+
|
|
14
|
+
- Built-in active mode indicator with colors.
|
|
15
|
+
|
|
16
|
+
- Sections can hide information when window is too narrow (specific window
|
|
17
|
+
width is configurable per section).
|
|
18
|
+
|
|
19
|
+
# Dependencies ~
|
|
20
|
+
|
|
21
|
+
Suggested dependencies (provide extra functionality, will work without them):
|
|
22
|
+
|
|
23
|
+
- Nerd font (to support extra icons).
|
|
24
|
+
|
|
25
|
+
- Enabled |mini.icons| module for |MiniStatusline.section_fileinfo()|.
|
|
26
|
+
Falls back to using `nvim-tree/nvim-web-devicons` plugin or shows nothing.
|
|
27
|
+
|
|
28
|
+
- Enabled |mini.git| module for |MiniStatusline.section_git()|.
|
|
29
|
+
Falls back to using `lewis6991/gitsigns.nvim` plugin or shows nothing.
|
|
30
|
+
|
|
31
|
+
- Enabled |mini.diff| module for |MiniStatusline.section_diff()|.
|
|
32
|
+
Falls back to using `lewis6991/gitsigns.nvim` plugin or shows nothing.
|
|
33
|
+
|
|
34
|
+
# Setup ~
|
|
35
|
+
|
|
36
|
+
This module needs a setup with `require('mini.statusline').setup({})`
|
|
37
|
+
(replace `{}` with your `config` table). It will create global Lua table
|
|
38
|
+
`MiniStatusline` which you can use for scripting or manually (with
|
|
39
|
+
`:lua MiniStatusline.*`).
|
|
40
|
+
|
|
41
|
+
See |MiniStatusline.config| for `config` structure and default values. For
|
|
42
|
+
some content examples, see |MiniStatusline-example-content|.
|
|
43
|
+
|
|
44
|
+
You can override runtime config settings locally to buffer inside
|
|
45
|
+
`vim.b.ministatusline_config` which should have same structure as
|
|
46
|
+
`MiniStatusline.config`. See |mini.nvim-buffer-local-config| for more details.
|
|
47
|
+
|
|
48
|
+
# Highlight groups ~
|
|
49
|
+
*MiniStatusline-hl-groups*
|
|
50
|
+
|
|
51
|
+
Highlight depending on mode (second |MiniStatusline.section_mode()| output):
|
|
52
|
+
- `MiniStatuslineModeNormal` - Normal mode.
|
|
53
|
+
- `MiniStatuslineModeInsert` - Insert mode.
|
|
54
|
+
- `MiniStatuslineModeVisual` - Visual mode.
|
|
55
|
+
- `MiniStatuslineModeReplace` - Replace mode.
|
|
56
|
+
- `MiniStatuslineModeCommand` - Command mode.
|
|
57
|
+
- `MiniStatuslineModeOther` - other modes (like Terminal, etc.).
|
|
58
|
+
|
|
59
|
+
Highlight used in default statusline:
|
|
60
|
+
- `MiniStatuslineDevinfo` - for "dev info" group
|
|
61
|
+
(|MiniStatusline.section_git()| and |MiniStatusline.section_diagnostics()|).
|
|
62
|
+
- `MiniStatuslineFilename` - for |MiniStatusline.section_filename()| section.
|
|
63
|
+
- `MiniStatuslineFileinfo` - for |MiniStatusline.section_fileinfo()| section.
|
|
64
|
+
|
|
65
|
+
Other groups:
|
|
66
|
+
- `MiniStatuslineInactive` - highlighting in not focused window.
|
|
67
|
+
|
|
68
|
+
To change any highlight group, set it directly with |nvim_set_hl()|.
|
|
69
|
+
|
|
70
|
+
# Disabling ~
|
|
71
|
+
|
|
72
|
+
To disable (show empty statusline), set `vim.g.ministatusline_disable`
|
|
73
|
+
(globally) or `vim.b.ministatusline_disable` (for a buffer) to `true`.
|
|
74
|
+
Considering high number of different scenarios and customization
|
|
75
|
+
intentions, writing exact rules for disabling module's functionality is
|
|
76
|
+
left to user. See |mini.nvim-disabling-recipes| for common recipes.
|
|
77
|
+
|
|
78
|
+
------------------------------------------------------------------------------
|
|
79
|
+
*MiniStatusline-example-content*
|
|
80
|
+
Example content
|
|
81
|
+
|
|
82
|
+
# Default content ~
|
|
83
|
+
|
|
84
|
+
This function is used as default value for active content: >lua
|
|
85
|
+
|
|
86
|
+
function()
|
|
87
|
+
local mode, mode_hl = MiniStatusline.section_mode({ trunc_width = 120 })
|
|
88
|
+
local git = MiniStatusline.section_git({ trunc_width = 40 })
|
|
89
|
+
local diff = MiniStatusline.section_diff({ trunc_width = 75 })
|
|
90
|
+
local diagnostics = MiniStatusline.section_diagnostics({ trunc_width = 75 })
|
|
91
|
+
local lsp = MiniStatusline.section_lsp({ trunc_width = 75 })
|
|
92
|
+
local filename = MiniStatusline.section_filename({ trunc_width = 140 })
|
|
93
|
+
local fileinfo = MiniStatusline.section_fileinfo({ trunc_width = 120 })
|
|
94
|
+
local location = MiniStatusline.section_location({ trunc_width = 75 })
|
|
95
|
+
local search = MiniStatusline.section_searchcount({ trunc_width = 75 })
|
|
96
|
+
|
|
97
|
+
return MiniStatusline.combine_groups({
|
|
98
|
+
{ hl = mode_hl, strings = { mode } },
|
|
99
|
+
{ hl = 'MiniStatuslineDevinfo', strings = { git, diff, diagnostics, lsp } },
|
|
100
|
+
'%<', -- Mark general truncate point
|
|
101
|
+
{ hl = 'MiniStatuslineFilename', strings = { filename } },
|
|
102
|
+
'%=', -- End left alignment
|
|
103
|
+
{ hl = 'MiniStatuslineFileinfo', strings = { fileinfo } },
|
|
104
|
+
{ hl = mode_hl, strings = { search, location } },
|
|
105
|
+
})
|
|
106
|
+
end
|
|
107
|
+
<
|
|
108
|
+
# Show boolean options ~
|
|
109
|
+
|
|
110
|
+
To compute section string for boolean option use variation of this code
|
|
111
|
+
snippet inside content function (you can modify option itself, truncation
|
|
112
|
+
width, short and long displayed names): >lua
|
|
113
|
+
|
|
114
|
+
local spell = vim.wo.spell and (MiniStatusline.is_truncated(120) and 'S' or 'SPELL') or ''
|
|
115
|
+
<
|
|
116
|
+
Here `x and y or z` is a common Lua way of doing ternary operator: if `x`
|
|
117
|
+
is `true`-ish then return `y`, if not - return `z`.
|
|
118
|
+
|
|
119
|
+
------------------------------------------------------------------------------
|
|
120
|
+
*MiniStatusline.setup()*
|
|
121
|
+
`MiniStatusline.setup`({config})
|
|
122
|
+
Module setup
|
|
123
|
+
|
|
124
|
+
Parameters ~
|
|
125
|
+
{config} `(table|nil)` Module config table. See |MiniStatusline.config|.
|
|
126
|
+
|
|
127
|
+
Usage ~
|
|
128
|
+
>lua
|
|
129
|
+
require('mini.statusline').setup() -- use default config
|
|
130
|
+
-- OR
|
|
131
|
+
require('mini.statusline').setup({}) -- replace {} with your config table
|
|
132
|
+
<
|
|
133
|
+
------------------------------------------------------------------------------
|
|
134
|
+
*MiniStatusline.config*
|
|
135
|
+
`MiniStatusline.config`
|
|
136
|
+
Defaults ~
|
|
137
|
+
>lua
|
|
138
|
+
MiniStatusline.config = {
|
|
139
|
+
-- Content of statusline as functions which return statusline string. See
|
|
140
|
+
-- `:h statusline` and code of default contents (used instead of `nil`).
|
|
141
|
+
content = {
|
|
142
|
+
-- Content for active window
|
|
143
|
+
active = nil,
|
|
144
|
+
-- Content for inactive window(s)
|
|
145
|
+
inactive = nil,
|
|
146
|
+
},
|
|
147
|
+
|
|
148
|
+
-- Whether to use icons by default
|
|
149
|
+
use_icons = true,
|
|
150
|
+
}
|
|
151
|
+
<
|
|
152
|
+
------------------------------------------------------------------------------
|
|
153
|
+
*MiniStatusline.active()*
|
|
154
|
+
`MiniStatusline.active`()
|
|
155
|
+
Compute content for active window
|
|
156
|
+
|
|
157
|
+
------------------------------------------------------------------------------
|
|
158
|
+
*MiniStatusline.inactive()*
|
|
159
|
+
`MiniStatusline.inactive`()
|
|
160
|
+
Compute content for inactive window
|
|
161
|
+
|
|
162
|
+
------------------------------------------------------------------------------
|
|
163
|
+
*MiniStatusline.combine_groups()*
|
|
164
|
+
`MiniStatusline.combine_groups`({groups})
|
|
165
|
+
Combine groups of sections
|
|
166
|
+
|
|
167
|
+
Each group can be either a string or a table with fields `hl` (group's
|
|
168
|
+
highlight group) and `strings` (strings representing sections).
|
|
169
|
+
|
|
170
|
+
General idea of this function is as follows;
|
|
171
|
+
- String group is used as is (useful for special strings like `%<` or `%=`).
|
|
172
|
+
- Each table group has own highlighting in `hl` field (if missing, the
|
|
173
|
+
previous one is used) and string parts in `strings` field. Non-empty
|
|
174
|
+
strings from `strings` are separated by one space. Non-empty groups are
|
|
175
|
+
separated by two spaces (one for each highlighting).
|
|
176
|
+
|
|
177
|
+
Parameters ~
|
|
178
|
+
{groups} `(table)` Array of groups.
|
|
179
|
+
|
|
180
|
+
Return ~
|
|
181
|
+
`(string)` String suitable for |'statusline'|.
|
|
182
|
+
|
|
183
|
+
------------------------------------------------------------------------------
|
|
184
|
+
*MiniStatusline.is_truncated()*
|
|
185
|
+
`MiniStatusline.is_truncated`({trunc_width})
|
|
186
|
+
Decide whether to truncate
|
|
187
|
+
|
|
188
|
+
This basically computes window width and compares it to `trunc_width`: if
|
|
189
|
+
window is smaller then truncate; otherwise don't. Don't truncate by
|
|
190
|
+
default.
|
|
191
|
+
|
|
192
|
+
Use this to manually decide if section needs truncation or not.
|
|
193
|
+
|
|
194
|
+
Parameters ~
|
|
195
|
+
{trunc_width} `(number|nil)` Truncation width. If `nil`, output is `false`.
|
|
196
|
+
|
|
197
|
+
Return ~
|
|
198
|
+
`(boolean)` Whether to truncate.
|
|
199
|
+
|
|
200
|
+
------------------------------------------------------------------------------
|
|
201
|
+
*MiniStatusline.section_mode()*
|
|
202
|
+
`MiniStatusline.section_mode`({args})
|
|
203
|
+
Section for Vim |mode()|
|
|
204
|
+
|
|
205
|
+
Short output is returned if window width is lower than `args.trunc_width`.
|
|
206
|
+
|
|
207
|
+
Parameters ~
|
|
208
|
+
{args} `(table)` Section arguments.
|
|
209
|
+
|
|
210
|
+
Return ~
|
|
211
|
+
`(...)` Section string and mode's highlight group.
|
|
212
|
+
|
|
213
|
+
------------------------------------------------------------------------------
|
|
214
|
+
*MiniStatusline.section_git()*
|
|
215
|
+
`MiniStatusline.section_git`({args})
|
|
216
|
+
Section for Git information
|
|
217
|
+
|
|
218
|
+
Shows Git summary from |mini.git| (should be set up; recommended). To tweak
|
|
219
|
+
formatting of what data is shown, modify buffer-local summary string directly
|
|
220
|
+
as described in |MiniGit-examples|.
|
|
221
|
+
|
|
222
|
+
If |mini.git| is not set up, section falls back on `lewis6991/gitsigns.nvim` data
|
|
223
|
+
or showing empty string.
|
|
224
|
+
|
|
225
|
+
Empty string is returned if window width is lower than `args.trunc_width`.
|
|
226
|
+
|
|
227
|
+
Parameters ~
|
|
228
|
+
{args} `(table)` Section arguments. Use `args.icon` to supply your own icon.
|
|
229
|
+
|
|
230
|
+
Return ~
|
|
231
|
+
`(string)` Section string.
|
|
232
|
+
|
|
233
|
+
------------------------------------------------------------------------------
|
|
234
|
+
*MiniStatusline.section_diff()*
|
|
235
|
+
`MiniStatusline.section_diff`({args})
|
|
236
|
+
Section for diff information
|
|
237
|
+
|
|
238
|
+
Shows diff summary from |mini.diff| (should be set up; recommended). To tweak
|
|
239
|
+
formatting of what data is shown, modify buffer-local summary string directly
|
|
240
|
+
as described in |MiniDiff-diff-summary|.
|
|
241
|
+
|
|
242
|
+
If |mini.diff| is not set up, section falls back on `lewis6991/gitsigns.nvim` data
|
|
243
|
+
or showing empty string.
|
|
244
|
+
|
|
245
|
+
Empty string is returned if window width is lower than `args.trunc_width`.
|
|
246
|
+
|
|
247
|
+
Parameters ~
|
|
248
|
+
{args} `(table)` Section arguments. Use `args.icon` to supply your own icon.
|
|
249
|
+
|
|
250
|
+
Return ~
|
|
251
|
+
`(string)` Section string.
|
|
252
|
+
|
|
253
|
+
------------------------------------------------------------------------------
|
|
254
|
+
*MiniStatusline.section_diagnostics()*
|
|
255
|
+
`MiniStatusline.section_diagnostics`({args})
|
|
256
|
+
Section for Neovim's builtin diagnostics
|
|
257
|
+
|
|
258
|
+
Shows nothing if diagnostics is disabled, no diagnostic is set, or for short
|
|
259
|
+
output. Otherwise uses |vim.diagnostic.get()| to compute and show number of
|
|
260
|
+
errors (`E`), warnings (`W`), information (`I`), and hints (`H`).
|
|
261
|
+
|
|
262
|
+
Short output is returned if window width is lower than `args.trunc_width`.
|
|
263
|
+
|
|
264
|
+
Parameters ~
|
|
265
|
+
{args} `(table)` Section arguments. Use `args.icon` to supply your own icon.
|
|
266
|
+
Use `args.signs` to use custom signs per severity level name. For example: >lua
|
|
267
|
+
|
|
268
|
+
{ ERROR = '!', WARN = '?', INFO = '@', HINT = '*' }
|
|
269
|
+
<
|
|
270
|
+
Return ~
|
|
271
|
+
`(string)` Section string.
|
|
272
|
+
|
|
273
|
+
------------------------------------------------------------------------------
|
|
274
|
+
*MiniStatusline.section_lsp()*
|
|
275
|
+
`MiniStatusline.section_lsp`({args})
|
|
276
|
+
Section for attached LSP servers
|
|
277
|
+
|
|
278
|
+
Shows number of LSP servers (each as separate "+" character) attached to
|
|
279
|
+
current buffer or nothing if none is attached.
|
|
280
|
+
Nothing is shown if window width is lower than `args.trunc_width`.
|
|
281
|
+
|
|
282
|
+
Parameters ~
|
|
283
|
+
{args} `(table)` Section arguments. Use `args.icon` to supply your own icon.
|
|
284
|
+
|
|
285
|
+
Return ~
|
|
286
|
+
`(string)` Section string.
|
|
287
|
+
|
|
288
|
+
------------------------------------------------------------------------------
|
|
289
|
+
*MiniStatusline.section_filename()*
|
|
290
|
+
`MiniStatusline.section_filename`({args})
|
|
291
|
+
Section for file name
|
|
292
|
+
|
|
293
|
+
Show full file name or relative in short output.
|
|
294
|
+
|
|
295
|
+
Short output is returned if window width is lower than `args.trunc_width`.
|
|
296
|
+
|
|
297
|
+
Parameters ~
|
|
298
|
+
{args} `(table)` Section arguments.
|
|
299
|
+
|
|
300
|
+
Return ~
|
|
301
|
+
`(string)` Section string.
|
|
302
|
+
|
|
303
|
+
------------------------------------------------------------------------------
|
|
304
|
+
*MiniStatusline.section_fileinfo()*
|
|
305
|
+
`MiniStatusline.section_fileinfo`({args})
|
|
306
|
+
Section for file information
|
|
307
|
+
|
|
308
|
+
Shows |'filetype'|, |'fileencoding'| / |'encoding'|, |'fileformat'|, and buffer size.
|
|
309
|
+
Short output has only non-empty |'filetype'| and is returned if window width is
|
|
310
|
+
lower than `args.trunc_width` or buffer is not normal (as per |'buftype'|).
|
|
311
|
+
|
|
312
|
+
Buffer size is computed based on current text, not file's saved version.
|
|
313
|
+
|
|
314
|
+
If `config.use_icons` is true and icon provider is present (see
|
|
315
|
+
"Dependencies" section in |mini.statusline|), shows icon near the filetype.
|
|
316
|
+
|
|
317
|
+
Parameters ~
|
|
318
|
+
{args} `(table)` Section arguments.
|
|
319
|
+
|
|
320
|
+
Return ~
|
|
321
|
+
`(string)` Section string.
|
|
322
|
+
|
|
323
|
+
------------------------------------------------------------------------------
|
|
324
|
+
*MiniStatusline.section_location()*
|
|
325
|
+
`MiniStatusline.section_location`({args})
|
|
326
|
+
Section for location inside buffer
|
|
327
|
+
|
|
328
|
+
Show location inside buffer in the form:
|
|
329
|
+
- Normal: `'<cursor line>|<total lines>│<cursor column>|<total columns>'`
|
|
330
|
+
- Short: `'<cursor line>│<cursor column>'`
|
|
331
|
+
|
|
332
|
+
Short output is returned if window width is lower than `args.trunc_width`.
|
|
333
|
+
|
|
334
|
+
Parameters ~
|
|
335
|
+
{args} `(table)` Section arguments.
|
|
336
|
+
|
|
337
|
+
Return ~
|
|
338
|
+
`(string)` Section string.
|
|
339
|
+
|
|
340
|
+
------------------------------------------------------------------------------
|
|
341
|
+
*MiniStatusline.section_searchcount()*
|
|
342
|
+
`MiniStatusline.section_searchcount`({args})
|
|
343
|
+
Section for current search count
|
|
344
|
+
|
|
345
|
+
Show the current status of |searchcount()|. Empty output is returned if
|
|
346
|
+
window width is lower than `args.trunc_width`, search highlighting is not
|
|
347
|
+
on (see |v:hlsearch|), or if number of search result is 0.
|
|
348
|
+
|
|
349
|
+
`args.options` is forwarded to |searchcount()|. By default it recomputes
|
|
350
|
+
data on every call which can be computationally expensive (although still
|
|
351
|
+
usually on 0.1 ms order of magnitude). To prevent this, supply
|
|
352
|
+
`args.options = { recompute = false }`.
|
|
353
|
+
|
|
354
|
+
Parameters ~
|
|
355
|
+
{args} `(table)` Section arguments.
|
|
356
|
+
|
|
357
|
+
Return ~
|
|
358
|
+
`(string)` Section string.
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
vim:tw=78:ts=8:noet:ft=help:norl:
|