我需要帮助找出解决此问题的策略。我发现我经常将多行数组折叠成一行,或者将单行扩展成多行。
示例:
$ary = ["this"=>"is an", "associative"=>"array"];
成为
$ary = [
"this" => "is an",
"associative" => "array",
];
,反之亦然。请注意,在多行版本中,尾随逗号和=>
周围的空格。
我不一定要提供有效的答案,而只是一些有关如何解决问题的提示。您将从替代开始吗?宏(递归?)? vimscript功能?
答案 0 :(得分:2)
这是跨选择行进行替换的理想情况。我之所以这样认为是因为
下面是解决方案一部分的示例(因为您不想要完整的答案,而是方法)
需要更改的内容:逗号+空格
您要替换的内容:逗号+换行符
您希望将其应用于哪些行:您手动选择的行
直观地选择行,然后按:
来查看
:'<,'>
这是代表您的视觉选择的范围选择。添加到它看起来像这样:
:'<,'>s/, /,\r/g
说“在我已选择的行上用逗号+换行查找并替换所有逗号+空格”。
现在将此逻辑应用于您要更改的其他部分,例如车削
"=>"
到" => "
但是,您可能会发现最终答案有点笨重,因此,如果这是您经常遇到的样式问题,则可能希望将其映射到某些内容。