mirror of
https://github.com/neovim/neovim.git
synced 2025-09-24 03:58:32 +00:00

The following plugins are intentionally left out: • osc52.lua: not user-facing • rplugin.vim: will be removed • shellmenu: will probably be removed
161 lines
7.2 KiB
Plaintext
161 lines
7.2 KiB
Plaintext
*plugins.txt* Nvim
|
|
|
|
|
|
NVIM REFERENCE MANUAL
|
|
|
|
Type |gO| to see the table of contents.
|
|
|
|
==============================================================================
|
|
Plugins and modules included with Nvim
|
|
|
|
Nvim includes various Lua and Vim plugins or modules which may provide
|
|
commands (such as :TOhtml) or modules that you can optionally require() or
|
|
:packadd. The Lua ones are not part of the |lua-stdlib|, that is, they are not
|
|
available from the global `vim` module namespace. Some of the plugins are
|
|
loaded by default while others are not loaded until requested by |:packadd|.
|
|
|
|
==============================================================================
|
|
Standard plugins ~
|
|
*standard-plugin-list*
|
|
Help-link Loaded Short description ~
|
|
|editorconfig| Yes Detect and interpret editorconfig
|
|
|ft-shada| Yes Allows editing binary |shada| files
|
|
|man.lua| Yes View manpages in Nvim
|
|
|matchit| Yes Extended |%| matching
|
|
|matchparen| Yes Highlight matching pairs
|
|
|netrw| Yes Reading and writing files over a network
|
|
|package-cfilter| No Filtering quickfix/location list
|
|
|package-justify| No Justify text
|
|
|package-nohlsearch| No Automatically run :nohlsearch
|
|
|package-termdebug| No Debug inside Nvim with gdb
|
|
|pi_gzip.txt| Yes Reading and writing compressed files
|
|
|pi_msgpack.txt| No msgpack utilities
|
|
|pi_paren.txt| Yes Highlight matching parens
|
|
|pi_spec.txt| Yes Filetype plugin to work with rpm spec files
|
|
|pi_swapmouse| No Swap meaning of left and right mouse buttons
|
|
|pi_tar.txt| Yes Tar file explorer
|
|
|pi_tutor.txt| Yes Interactive tutorial
|
|
|pi_zip.txt| Yes Zip archive explorer
|
|
|spellfile.vim| Yes Install spellfile if missing
|
|
|tohtml| Yes Convert buffer to html, syntax included
|
|
|
|
==============================================================================
|
|
Builtin plugin: editorconfig *editorconfig*
|
|
|
|
Nvim supports EditorConfig. When a file is opened, after running |ftplugin|s
|
|
and |FileType| autocommands, Nvim searches all parent directories of that file
|
|
for ".editorconfig" files, parses them, and applies any properties that match
|
|
the opened file. Think of it like 'modeline' for an entire (recursive)
|
|
directory. For more information see https://editorconfig.org/.
|
|
|
|
*g:editorconfig* *b:editorconfig*
|
|
|
|
EditorConfig is enabled by default. To disable it, add to your config: >lua
|
|
vim.g.editorconfig = false
|
|
<
|
|
|
|
(Vimscript: `let g:editorconfig = v:false`). It can also be disabled
|
|
per-buffer by setting the |b:editorconfig| buffer-local variable to `false`.
|
|
|
|
Nvim stores the applied properties in |b:editorconfig| if it is not `false`.
|
|
|
|
*editorconfig-custom-properties*
|
|
|
|
New properties can be added by adding a new entry to the "properties" table.
|
|
The table key is a property name and the value is a callback function which
|
|
accepts the number of the buffer to be modified, the value of the property in
|
|
the `.editorconfig` file, and (optionally) a table containing all of the other
|
|
properties and their values (useful for properties which depend on other
|
|
properties). The value is always a string and must be coerced if necessary.
|
|
Example: >lua
|
|
|
|
require('editorconfig').properties.foo = function(bufnr, val, opts)
|
|
if opts.charset and opts.charset ~= "utf-8" then
|
|
error("foo can only be set when charset is utf-8", 0)
|
|
end
|
|
vim.b[bufnr].foo = val
|
|
end
|
|
<
|
|
|
|
*editorconfig-properties*
|
|
|
|
The following properties are supported by default:
|
|
|
|
|
|
charset *editorconfig.charset*
|
|
One of `"utf-8"`, `"utf-8-bom"`, `"latin1"`, `"utf-16be"`, or
|
|
`"utf-16le"`. Sets the 'fileencoding' and 'bomb' options.
|
|
|
|
end_of_line *editorconfig.end_of_line*
|
|
One of `"lf"`, `"crlf"`, or `"cr"`. These correspond to setting
|
|
'fileformat' to "unix", "dos", or "mac", respectively.
|
|
|
|
indent_size *editorconfig.indent_size*
|
|
A number indicating the size of a single indent. Alternatively, use the
|
|
value "tab" to use the value of the tab_width property. Sets the
|
|
'shiftwidth' and 'softtabstop' options. If this value is not "tab" and the
|
|
tab_width property is not set, 'tabstop' is also set to this value.
|
|
|
|
indent_style *editorconfig.indent_style*
|
|
One of `"tab"` or `"space"`. Sets the 'expandtab' option.
|
|
|
|
insert_final_newline *editorconfig.insert_final_newline*
|
|
`"true"` or `"false"` to ensure the file always has a trailing newline as
|
|
its last byte. Sets the 'fixendofline' and 'endofline' options.
|
|
|
|
max_line_length *editorconfig.max_line_length*
|
|
A number indicating the maximum length of a single line. Sets the
|
|
'textwidth' option.
|
|
|
|
root *editorconfig.root*
|
|
If "true", then stop searching for `.editorconfig` files in parent
|
|
directories. This property must be at the top-level of the `.editorconfig`
|
|
file (i.e. it must not be within a glob section).
|
|
|
|
spelling_language *editorconfig.spelling_language*
|
|
A code of the format ss or ss-TT, where ss is an ISO 639 language code and
|
|
TT is an ISO 3166 territory identifier. Sets the 'spelllang' option.
|
|
|
|
tab_width *editorconfig.tab_width*
|
|
The display size of a single tab character. Sets the 'tabstop' option.
|
|
|
|
trim_trailing_whitespace *editorconfig.trim_trailing_whitespace*
|
|
When `"true"`, trailing whitespace is automatically removed when the
|
|
buffer is written.
|
|
|
|
|
|
==============================================================================
|
|
Builtin plugin: tohtml *tohtml*
|
|
|
|
|
|
:[range]TOhtml {file} *:TOhtml*
|
|
Converts the buffer shown in the current window to HTML, opens the generated
|
|
HTML in a new split window, and saves its contents to {file}. If {file} is not
|
|
given, a temporary file (created by |tempname()|) is used.
|
|
|
|
|
|
tohtml({winid}, {opt}) *tohtml.tohtml()*
|
|
Converts the buffer shown in the window {winid} to HTML and returns the
|
|
output as a list of string.
|
|
|
|
Parameters: ~
|
|
• {winid} (`integer?`) Window to convert (defaults to current window)
|
|
• {opt} (`table?`) Optional parameters.
|
|
• {title}? (`string|false`, default: buffer name) Title tag
|
|
to set in the generated HTML code.
|
|
• {number_lines}? (`boolean`, default: `false`) Show line
|
|
numbers.
|
|
• {font}? (`string[]|string`, default: `guifont`) Fonts to
|
|
use.
|
|
• {width}? (`integer`, default: 'textwidth' if non-zero or
|
|
window width otherwise) Width used for items which are
|
|
either right aligned or repeat a character infinitely.
|
|
• {range}? (`integer[]`, default: entire buffer) Range of
|
|
rows to use.
|
|
|
|
Return: ~
|
|
(`string[]`)
|
|
|
|
|
|
vim:tw=78:ts=8:sw=4:sts=4:et:ft=help:norl:
|