我试图让VIM用’=’和相关命令缩进
Javascript.当我尝试自动缩进以下内容,例如:
new function($) { $.fn.setCursorPosition = function(pos) { if ($(this).setSelectionRange) { $(this).setSelectionRange(pos,pos); } else if ($(this).createTextRange) { var range = $(this).createTextRange(); range.collapse(true); range.moveEnd('character',pos); range.moveStart('character',pos); range.select(); }
结果是相当荒谬的:
new function($) { $.fn.setCursorPosition = function(pos) { if ($(this).setSelectionRange) { $(this).setSelectionRange(pos,pos); } else if ($(this).createTextRange) { var range = $(this).createTextRange(); range.collapse(true); range.moveEnd('character',pos); range.moveStart('character',pos); range.select(); }
我设置了set Syntax = javascript,我已经将filetype设置为:
filetype detection:ON plugin:ON indent:ON
虽然我已经尝试了这一切的每一个排列.我已经尝试过智能,自动缩进和缩进的每一个排列,但是似乎没有什么正确的效果给Vim预期的缩进.我设置了tabstop = 4.
我已经安装了javascript.vim
和IndentAnything
,尽管他们似乎没有任何效果.
我将非常感谢有关如何使Vim在JavaScript中正确缩进的任何建议.
哦,我刚刚花了几个小时弄清楚同样的问题.
如果你有文件类型缩进(你所做的),那么一些文件可能会设置一些不同的缩进设置.如果您使用详细集< option>?您可以看到它被设置在哪里以及它被设置为:
:verbose set autoindent? :verbose set cindent? :verbose set smartindent? :verbose set indentexpr?
cindent Last set from $VIMRUNTIME/indent/javascript.vim
其中$VIMRUNTIME是您运行时获得的路径:echo $VIMRUNTIME.
除非您启用它们(在vimrc或插件中),否则所有其他设置将不会被设置.
对我来说,我有一个插件(eclim)正在设置identexpr并导致此问题:
identexpr=eclimGetJavascriptIndent(V:lnum) Last set from ~/.vim/bundle/eclim/indent/javascript.vim
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。