Vim中的Javascript缩进-函数中Lambda函数的问题
我对vim中的javascript缩进有问题。 一切都很好,除了内联函数作为函数参数的缩进不起作用。 这是一个只有javascript的问题,不涉及html 范例Vim中的Javascript缩进-函数中Lambda函数的问题,javascript,vim,indentation,Javascript,Vim,Indentation,我对vim中的javascript缩进有问题。 一切都很好,除了内联函数作为函数参数的缩进不起作用。 这是一个只有javascript的问题,不涉及html 范例 someFunc(function() { if(foo) { bar; } else { bar; } }); 缩进到 someFunc(function() { if(foo) { bar; } else {
someFunc(function() {
if(foo) {
bar;
} else {
bar;
}
});
缩进到
someFunc(function() {
if(foo) {
bar;
} else {
bar;
}
});
你也有同样的问题吗?
我怎样才能解决这个问题?
我尝试了vim.org上的一些脚本,但它们似乎有相同的问题
模拟TextMates javascript缩进功能的脚本将是完美的。您可能正在使用javascript。您可以尝试使用
从文档中可以看出,“智能缩进”的作用是:
开始新行时执行智能自动缩进。适用于C-like
程序,但也可用于其他语言。”辛登特是
像这样的东西,在大多数情况下效果更好,但更严格
您可以通过以下方式切换到smartindent:
set nocindent smartindent
我用上面的代码进行了测试,它按您的预期缩进
另请参见:您可能正在使用JavaScript。您可以尝试使用
从文档中可以看出,“智能缩进”的作用是:
开始新行时执行智能自动缩进。适用于C-like
程序,但也可用于其他语言。”辛登特是
像这样的东西,在大多数情况下效果更好,但更严格
您可以通过以下方式切换到smartindent:
set nocindent smartindent
我用上面的代码进行了测试,它按您的预期缩进
另请参见:Vim用于评估javascript缩进的内置表达式非常糟糕。您可以通过安装来修复它,如果愿意,也可以获取。安装这个插件将减轻痛苦。每次在JavaScript行的末尾按return键时,光标的位置应该是正确的缩进级别。此外,您还可以使用=命令自动缩进javascript。安装该插件-你会想知道没有它你怎么过得去。Vim用于评估javascript缩进的内置表达式非常糟糕。您可以通过安装来修复它,如果愿意,也可以获取。安装这个插件将减轻痛苦。每次在JavaScript行的末尾按return键时,光标的位置应该是正确的缩进级别。此外,您还可以使用=命令自动缩进javascript。安装插件-你会想知道没有它你怎么过得去。我相信这个问题的答案是从.vimrc中删除任何cindent/smartindent/autoindent,并使用文件类型缩进,而不是设置no*行是不必要的,只是迂腐而已
set nocindent
set nosmartindent
set noautoindent
filetype indent on
我也有同样的问题,这就是vim的表现。这也阻止了vim在冒号处取消识别CSS规则:当将它们键入HTML样式标记时,我的另一个恼怒
如果打开/保存扩展名为*.js的文件,vim应设置正确的缩进规则,但如果开始编辑新的未保存文件,则可能需要显式设置:set filetype=javascript
维姆的缩进并不可怕,只是被误解了。对于许多使用它的程序员来说,很难相信默认的缩进规则真的那么糟糕。我相信这个问题的答案是从.vimrc中删除任何cindent/smartindent/autoindent,并使用文件类型缩进,而不是设置no*行,只是迂腐而已
set nocindent
set nosmartindent
set noautoindent
filetype indent on
我也有同样的问题,这就是vim的表现。这也阻止了vim在冒号处取消识别CSS规则:当将它们键入HTML样式标记时,我的另一个恼怒
如果打开/保存扩展名为*.js的文件,vim应设置正确的缩进规则,但如果开始编辑新的未保存文件,则可能需要显式设置:set filetype=javascript
维姆的缩进并不可怕,只是被误解了。对于许多使用它的程序员来说,很难相信默认缩进规则真的那么糟糕。Hello Thai,很好,它可以在vim中工作。我看不出有什么不同。我甚至禁用了我的.vimrc和已禁用的插件,但没有任何更改。我在一个*.js文件和一个空缓冲区中尝试了它。没有区别。如何查看当前文件中使用的缩进逻辑;这解决了我在使用{}定义对象定义中的函数时正确缩进的问题。@innotune类型:set autoindent?辛登特?智能缩进?它会告诉你他们的当前设置。你好,泰语,很好,它可以在你的vim中工作。我看不出有什么不同。我甚至禁用了我的.vimrc和已禁用的插件,但没有任何更改。我在一个*.js文件和一个空缓冲区中尝试了它。没有区别。如何查看当前文件中使用的缩进逻辑;这解决了我在使用{}定义对象定义中的函数时正确缩进的问题。@innotune类型:set autoindent?辛登特?智能缩进?它会告诉你他们的当前设置。我还在我的.vimrc中启用了文件类型插件和文件类型缩进。谢谢你的精彩表演
plugini还启用了my.vimrc中的文件类型插件on和文件类型缩进on。谢谢你的精彩插件