标签: vim-plugin

显示标记插件会导致标记在大约4秒后"弹出"

我正在使用vim中的Show Marks插件来显示标记的位置.可以使用该\mt命令打开/关闭显示的标记.当我第一次打开文档时,标记是这样的:

标记关闭

然后大约4秒后我完全没有动作,左手标记边缘弹出如下:

标记开

我有三个问题:

  1. 那些默认标记是什么?
  2. 为什么要显示它需要几秒钟?
  3. 如何在启动时强制标记边距激活/停用?

这是.vimrc文件(我知道它很乱,但用Walter E. Kurtz上校的话说:"你有权杀了我......但是你无权判断我.")

set modeline                        "These two lines display the file name at the bottom
set ls=2

set undodir=~/.vim/undodir
set undofile
set undolevels=100    "maximum number of changes that can be undone
set undoreload=10000 "maximum number lines to save for undo on a buffer reload

"Keep undo history when switching buffers
set hidden

set nocompatible                    "Don't use vi-compatibility mode

set backspace=2                     "Use the smart version of backspace

set …
Run Code Online (Sandbox Code Playgroud)

vim vim-plugin

6
推荐指数
2
解决办法
1473
查看次数

如何调试作为vim插件一部分的python函数?

python调用在我的一些.vim文件中定义.

:breakadd file linenumber xx.vim 似乎不起作用.

当我按下一个触发某些python函数调用的键时,它不会停在该行.发生了什么?顺便说一句,因为我使用打开文件,所以我处于vim的调试模式vim -D filename.

如下图所示,我想要做的是调试一个python函数,当我按下F5vim 时调用它.

在此输入图像描述

python debugging vim vim-plugin

6
推荐指数
1
解决办法
611
查看次数

在.vim文件中编写Python时,为什么"\n"会变成"^ @"?

例如,这是我的功能:

function! Test()
python << EOF
import vim
str = "\n\n"
vim.command("let rs = append(line('$'), '%s')"%str)
EOF
endfunction
Run Code Online (Sandbox Code Playgroud)

当我:call Test(),我看到的是"^ @ ^ @".
为什么会发生这种情况?如何使用原点'\n'?

python vim vim-plugin

6
推荐指数
1
解决办法
181
查看次数

vim - 通过执行命令在shell中维护会话

vim有很多方法可以在vim中执行shell命令.人们可以使用跳转到外壳和回Vim的shell,ctrl+z当前的进程,并取回使用fg.可以使用选择/当前行执行!w bash.

但是,所有这些方法仅对运行一个命令有帮助.一旦命令执行,shell就会被杀死.

我想知道是否有办法在shell中继续执行代码片段并让shell记住上一个命令中的函数/变量(类似于将代码片段复制到shell提示符)来调试代码.为此,shell会话必须以某种方式持久化.

我经常遇到需要在shell上执行一些函数然后通过调用它们来测试它们的情况.标准方法是将它们复制粘贴到不同的shell中,然后执行它们.如何从vim中做到这一点?

linux vim bash shell vim-plugin

6
推荐指数
1
解决办法
301
查看次数

如何封装用Lua/Python/Ruby编写的Vim插件代码?

在Vimscript中,脚本范围s:可用于避免插件之间的名称冲突.我正在Lua中编写一个Vim插件,我注意到Vim在一个通用范围内运行它的所有Lua代码.这意味着我的插件的Lua函数对于使用Lua的任何其他插件都是可见的,并且看起来像是等待发生的名称冲突.

虽然我的例子涉及Lua,但在使用Python或Ruby开发Vim插件时,这个问题也适用.我可以使用插件名称为我的所有Lua函数添加前缀,但是在使用这些语言时是否有更可靠/标准的方法来封装Vim插件代码?

vim lua encapsulation vim-plugin

6
推荐指数
1
解决办法
608
查看次数

使用vim-airline在vim中的选项卡之间切换

我正在使用vim-airline插件工作得非常好,但是在标签之间切换的唯一方法是用户:bp or :bn,这是快捷方式:bprevious or :bnext.这个问题是,如果我在第一个选项卡上并想要切换到最后一个选项卡,即第10个选项卡,那么我必须键入:bn十次才能到达那里.我该如何直接切换?也许紧迫的事情arrow keys会有益.

vim plugins vim-plugin vim-airline

6
推荐指数
4
解决办法
9890
查看次数

DBext(Vim) - 必须选择有效的数据库类型

在Windows上安装gvim并尝试运行(Microsoft)sql server查询.当我尝试发出特定于dbext的命令时出错.请参阅下面的详细信息.

Vimrc包含此连接字符串

:let g:dbext_default_profile_mySQLServer  = 'type=SQLSRV:integratedlogin=1:host=XXXXX:dbname=XXXXX'
Run Code Online (Sandbox Code Playgroud)

SQL语句

Select * from XXXXX
Run Code Online (Sandbox Code Playgroud)

命令:

<leader>se (in my case ,se)
Run Code Online (Sandbox Code Playgroud)

错误:"必须选择有效的数据库类型"

有人可以帮我解决gvim + dbext设置中的这个问题.

请注意我的插件安装正确,我看到列出dbext命令的插件菜单.

vim vim-plugin dbext

6
推荐指数
1
解决办法
1209
查看次数

Vim功能可在分割之间切换

我正在尝试找到一个函数,它将在vim的拆分视图中切换回原始窗口.我知道快捷方式,我也知道函数:调用游标.但是有没有一个函数可以让我切换回上一个分割窗口,所以我可以把它粘在我的vim函数中?

vim vim-plugin

6
推荐指数
1
解决办法
813
查看次数

未知功能:elm#FindRootDirectory

我收到此错误消息:Unknown function: elm#FindRootDirectory 当我在neovim中打开elm文件时.

我正在使用ElmCast/elm-vim作为插件来编写榆树代码.

我知道我可以简单地删除这个插件,但我想使用它.

另外我发现我无法使用来自ElmCast/elm-vim的任何命令:ElmFormat,例如即使在wildmenu中建议它们,但是这个插件的语法突出显示正在工作.

我通过vim-plug安装了插件:

call plug#begin('~/.vim/vim-plug-plugins')
        Plug 'elmcast/elm-vim'
call plug#end()
Run Code Online (Sandbox Code Playgroud)

我也跑了:PlugUpdate,并:PlugUpgrade多次.

neovim这样CheckHealth说:

health#deoplete#check
========================================================================
## deoplete.nvim
  - SUCCESS: has("nvim") was successful
  - SUCCESS: has("python3") was successful
  - INFO: If you're still having problems, try the following commands:
    $ export NVIM_PYTHON_LOG_FILE=/tmp/log
    $ export NVIM_PYTHON_LOG_LEVEL=DEBUG
    $ nvim
    $ cat /tmp/log_{PID}
    and then create an issue on github

health#nvim#check
========================================================================
## Configuration
  - SUCCESS: no issues found

## Performance
  - …
Run Code Online (Sandbox Code Playgroud)

vim vim-plugin elm neovim

6
推荐指数
1
解决办法
509
查看次数

如何在HTML文件中自动弹出js完成?

网页上说,有两种方法可以在HTML文件中使用tern_for_vim插件.

在HTML文件中使用tern_for_vim插件

这两种方法都可以工作,它们都无法使js完成菜单自动弹出.

方法一:

1.vim test.html
2.:setlocal omnifunc=tern#Complete
3.To input `<C-X><C-O>` after `document.` 
Run Code Online (Sandbox Code Playgroud)

现在js完成弹出.
这种方法还有两个问题.
1.写入setlocal omnifunc=tern#Complete .vimrc无法正常工作.
为什么?

2.如何让js完成菜单自动弹出 document.,而不是输入<C-X><C-O>

方法2:

sudo cp .vim/bundle/tern_for_vim/after/ftplugin/javascript_tern.vim   .vim/bundle/tern_for_vim/after/ftplugin/html_tern.vim
Run Code Online (Sandbox Code Playgroud)

你应该输入<C-X><C-O>document. 才能调用JS完成菜单编辑HTML文件.

编辑的js文件的js完成菜单无法document.自动弹出.

1.如何让js完成菜单自动弹出 document.,而不是输入<C-X><C-O>?(与Method1中的第二项相同.)

html javascript autocomplete vim-plugin

6
推荐指数
1
解决办法
449
查看次数