首页 > 解决方案 > 折叠设置与文件类型插件冲突

问题描述

我正在尝试配置 vim 以正确折叠 html 和 javascript。当我只打开 javascript 文件或 html 文件时,两者都以我希望的方式工作,但是如果我打开一个 html 文件,然后打开一个 javascript 文件,然后打开另一个 html 文件,缩进设置似乎已被覆盖并且html文件中没有折叠。

相关代码:

~/.vimrc

filetype plugin indent on
syntax on

~/.vim/after/ftplugin/html.vim

setlocal shiftwidth=2
setlocal softtabstop=2
setlocal foldmethod=indent

~/.vim/after/ftplugin/javascript.vim

setlocal foldmethod=syntax
setlocal shiftwidth=2
setlocal softtabstop=2
let foldlevelstart=1
let javaScript_fold=1

我正在打开两个这样的文件:

vim ./thing.html ./thing.js

最初,html 文件按我的预期打开和折叠,然后我用 :b thing.js 切换到 javascript 文件,它也按我的预期折叠。然后我切换回我的 html 文件 :b thing.html 并且不再折叠。检查:设置折叠方法?说明html文件的foldmethod已经改成语法了。为什么是这样?问题是添加这个“让javaScript_fold = 1”有这条线似乎负责改变我的html折叠方法,但没有它我的javascript不会正确折叠。

标签: vim

解决方案


推荐阅读