Nvim 的 :help
页面,生成自 源,使用 tree-sitter-vimdoc 解析器。
E319: No "foo" provider found. Run ":checkhealth provider"运行 :checkhealth 命令,并查看下面的部分。
python3 -m pip install --user --upgrade pynvim
pip 的 --upgrade
标志确保即使之前已安装版本,您也能获得最新版本。python -m pip uninstall neovim pynvim
python -m pip install --user --upgrade pynvim
let g:python3_host_prog = '/path/to/python3'
let g:loaded_python3_provider = 0
pyenv install 3.4.4
pyenv virtualenv 3.4.4 py3nvim
pyenv activate py3nvim
python3 -m pip install pynvim
pyenv which python # Note the path
最后一条命令报告解释器路径,将其添加到您的 init.vim 中let g:python3_host_prog = '/path/to/py3nvim/bin/python'
另请参阅:https://github.com/zchee/deoplete-jedi/wiki/Setting-up-Python-for-Neovimgem install neovim
运行 :checkhealth 以查看您的系统是否已更新。let g:ruby_host_prog = '~/.rbenv/versions/2.4.1/bin/neovim-ruby-host'
要使用 RVM 的 "system" Ruby 安装let g:ruby_host_prog = 'rvm system do neovim-ruby-host'
cpanm -n Neovim::Ext
运行 :checkhealth 以查看您的系统是否已更新。npm install -g neovim
运行 :checkhealth 以查看您的系统是否已更新。let g:node_host_prog = '/usr/local/bin/neovim-node-host'
set clipboard+=unnamedplus
有关详细信息和选项,请参阅 'clipboard'。false
)let g:clipboard = {
\ 'name': 'myClipboard',
\ 'copy': {
\ '+': ['tmux', 'load-buffer', '-'],
\ '*': ['tmux', 'load-buffer', '-'],
\ },
\ 'paste': {
\ '+': ['tmux', 'save-buffer', '-'],
\ '*': ['tmux', 'save-buffer', '-'],
\ },
\ 'cache_enabled': 1,
\ }
如果 "cache_enabled" 为 TRUE,则在复制选择内容时,Nvim 将缓存该选择内容,直到复制命令进程退出。粘贴时,如果复制进程尚未退出,则会应用缓存的选择内容。let g:clipboard = {
\ 'name': 'myClipboard',
\ 'copy': {
\ '+': {lines, regtype -> extend(g:, {'foo': [lines, regtype]}) },
\ '*': {lines, regtype -> extend(g:, {'foo': [lines, regtype]}) },
\ },
\ 'paste': {
\ '+': {-> get(g:, 'foo', [])},
\ '*': {-> get(g:, 'foo', [])},
\ },
\ }
"copy" 函数存储行列表和寄存器类型。"paste" 函数以 [lines, regtype]
列表形式返回剪贴板,其中 lines
是行列表,regtype
是符合 setreg() 的寄存器类型。let g:clipboard = {
\ 'name': 'WslClipboard',
\ 'copy': {
\ '+': 'clip.exe',
\ '*': 'clip.exe',
\ },
\ 'paste': {
\ '+': 'powershell.exe -NoLogo -NoProfile -c [Console]::Out.Write($(Get-Clipboard -Raw).tostring().replace("`r", ""))',
\ '*': 'powershell.exe -NoLogo -NoProfile -c [Console]::Out.Write($(Get-Clipboard -Raw).tostring().replace("`r", ""))',
\ },
\ 'cache_enabled': 0,
\ }
vim.g.clipboard = {
name = 'OSC 52',
copy = {
['+'] = require('vim.ui.clipboard.osc52').copy('+'),
['*'] = require('vim.ui.clipboard.osc52').copy('*'),
},
paste = {
['+'] = require('vim.ui.clipboard.osc52').paste('+'),
['*'] = require('vim.ui.clipboard.osc52').paste('*'),
},
}
CTRL-SHIFT-v
(macOS:CMD-v)是“粘贴”,而不是“剪贴板”:终端应用程序(Nvim)只是获取文本流,它不会直接与剪贴板交互。<NL>
、<CR>
和 <CR>
<NL>
处换行。粘贴大量文本时,屏幕更新会被节流,消息区域会显示 "..." 脉冲。vim.paste = (function(lines, phase)
vim.api.nvim_put(lines, 'c', true, true)
end)