在IntelliJ IDEA 11或12中,打开HTML文件,输入
<img src=
导致自动插入双引号,导致
<img src=""
由于我在我读到的地方之前打字,这通常意味着我最终会得到类似
的内容<img src=""image.png" alt="Image"/>"
如何防止在属性名称后自动插入双引号?
答案 0 :(得分:10)
在Intellij IDEA 14和15中(参见@ Zook对IDEA 13的评论),现在选项
Windows:
菜单文件→设置→编辑器→常规→智能键→在键入'='和属性完成时添加属性值的引号(在设置对话框右侧的XML / HTML部分下)
的Mac:
首选项→编辑器→常规→智能键→在键入'='
时为属性值添加引号
我不知道以前的版本是否相同,但IDEA 14中实际发生的是它会自动插入两个引号并将光标放在其中。那很好,但是当你输入你期望的开头的双引号时,智能标点符号机制会认为你关闭引号并自动跳过你的引号-inserted close quote(与你在自动插入一个右括号时键入的代码相同)。所以你在这对引号之后用光标结束,输入你的属性值。这似乎与最初的观察结果一致。
我实际上认为这是IDEA中的一个错误,但我想在这种情况下打开和关闭标点符号是相同的符号会使事情变得复杂。智能标点机制需要知道忽略您键入的第一个引用,但如果您确实想要键入像src=""
这样的空属性值,则需要忽略第一个引号和然后跳过第二个的近距离报价。可爱,但并非不可能。
答案 1 :(得分:1)
我已尝试使用IDEA 12,只有在您开始填写src
属性并按 Enter 或键入=
以确认完成后,才会插入双引号。它不会自动发生,您调用插入引号的完成。
没有选项可以控制它,所以你必须打破习惯,手动插入引号并改用 Enter 。
也可以使用模板完成:
img
Tab ,用第一对引号内的插入符号生成<img src="" alt="">
。
然后输入图像文件名 Tab ,输入alt text。
您始终可以submit a feature request禁用在属性完成时添加引号。
答案 2 :(得分:0)
只需将输入语言从“美国-国际”更改为“美国”。切换到“美国”即可解决此问题。
阅读IntelliJ thread