【问题标题】:Vim autocompletion word with character _ , in python and latex带有字符 _ 的 Vim 自动完成词,在 python 和 Latex 中
【发布时间】:2016-02-11 13:05:00
【问题描述】:

在 vim 中,我设法自动完成安装 Supertab。 当我处理 .py 文件时,它可以正常工作:我可以通过键入 xxTAB 自动完成 xxx_yyy(如果存在许多 xxx_yyy1 xxx_yyy2,它会弹出选项)。

但是在 .tex 文件上,如果我已经有了单词 xxx_yyy,当我输入 xxTAB 时,我会得到唯一的匹配 xxx

如何在 .tex 文件中也将 xxx_yyyxxTAB 匹配?

这是我的 .vimrc :

filetype plugin indent on
syntax on
set backspace=indent,eol,start
autocmd Filetype python setlocal expandtab tabstop=4 shiftwidth=4
set ww=<,>,[,]

【问题讨论】:

  • 我不知道 Supertab 但 LaTeX 的行为是正确的,因为在 LaTeX 中 foo_bar 不是一个词:_ 在宏名称中无效,通常它是一个特殊字符,它在数学模式下添加下标(并在正常模式下产生错误,这是不幸的)。
  • @Konrad Rudolph :我发现在使用 \label{} 引用它们时检索所有图形名称很有用:\ref{fig_bla1} Vs \ref{fig_bla2}

标签: vim autocomplete latex supertab


【解决方案1】:

SuperTab 使用内置的插入模式完成 (:help i_CTRL-N),它基于关键字。此设置特定于文件类型,由'iskeyword' 选项控制。对于 Python,包含 _,对于 Latex,则不包含(基于@Konrad Rudolph 的评论,这是有原因的)。

如果它困扰您,您当然可以调整它。在你的~/.vimrc:

autocmd Filetype tex setlocal iskeyword+=_

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-21
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    • 2012-09-01
    • 1970-01-01
    • 2011-10-31
    相关资源
    最近更新 更多