【发布时间】:2015-08-20 13:01:30
【问题描述】:
在 PHPStorm 和 SublimeText 中有用于转到匹配的大括号/括号/括号的热键。
在 SublimeText 中,这是非常直观的:当直接在所述字符处时,您可以跳转到匹配的字符,然后您可以从那里跳回来(对称地)。当不直接在大括号/方括号/圆括号处时,您将移动到最近的那个。
在 PHPStorm 中,这一点都不直观。匹配不是对称的,有时甚至根本找不到匹配的字符,即使它在编辑器中突出显示。
有没有办法让 PHPStorm 在这方面表现得像 SublimeText?
这里有两个显示问题的简单示例(光标标有C1、C2 等):
示例 1
$x = C1[C2
'foo', 'bar',C3
C4]C5;
光标在C1
- SublimeText:光标转到
C5 - PHPStorm:光标不动
光标在C2
- SublimeText:光标转到
C4 - PHPStorm:光标转到
C1
光标在C3
- SublimeText:光标转到
C4 - PHPStorm:光标转到
C1
光标在C4
- SublimeText:光标转到
C2 - PHPStorm:光标不动
光标在C5
- SublimeText:光标转到
C1 - PHPStorm:光标转到
C4
示例 2
if C1(C2 'foo' ===C3 'bar' C4)C5 C6{C7
C8}C9
光标在C1
- SublimeText:光标转到
C5 - PHPStorm:光标不动
光标在C2
- SublimeText:光标转到
C4 - PHPStorm:光标转到
C1
光标在C3
- SublimeText:光标转到
C4 - PHPStorm:光标转到
C1
光标在C4
- SublimeText:光标转到
C2 - PHPStorm:光标转到
C1
光标在C5
- SublimeText:光标转到
C1 - PHPStorm:光标转到
C4
光标在C6
- SublimeText:光标转到
C9 - PHPStorm:光标转到
C9
光标在C7
- SublimeText:光标转到
C8 - PHPStorm:光标转到
C9
光标在C8
- SublimeText:光标转到
C7 - PHPStorm:光标转到
C7
光标在C9
- SublimeText:光标转到
C6 - PHPStorm:光标不动
编辑:https://youtrack.jetbrains.com/issue/IDEA-12068 描述了一个非常相似的行为,这已经是一种改进。
【问题讨论】:
-
@LazyOne IDEA 中的描述与 SublimeText 的行为不完全一样(在大括号/括号/括号之后,你跳转到匹配字符之前,当它之前你跳转到匹配字符之后) ,但仍将是对当前功能的改进。我会在问题描述中链接它。
-
该票的要点是:此类功能尚未实现/一般无法正常工作;如果这样才有效,那么我们可以谈论“完全匹配 Sublime Text 行为”的情况。
-
@LazyOne 我明白这一点。我之前在网上搜索任何解决方案时已经看过 IDEA,但我希望有某种 PHPStorm 插件可以模拟该功能。或者有人知道如何编写这样的插件。 :(
标签: phpstorm sublimetext