解决方法
例
以下是我几年前创建的基于YAML的代码段管理系统的示例记录:
- caption: fieldset msie5 tinycap: fieldset domain: html desc: fieldset and legend tag body: | <fieldset> <legend>legend</legend> </fieldset>
您可以对要管理的所有代码段重复此类似操作.这个特定的系统将代码段存储为一个名称 – 值对的数组(Perl的人称之为AoH).如果您不需要所有这些额外的信息,您可以通过使用两个名称 – 值对(例如,标题主体)轻松获得.
这个系统的好处是YAML缩进防止“分隔符碰撞”问题.你不需要转义你的代码段内的字符.
文本编辑器或IDE替代
注意:文本编辑器和IDE越来越多地支持本地的灵活的片段管理选项,因此您可能需要考虑使用文本编辑器的格式,而不是重新创建自己的.如果您重新创建自己的,您可以编写一个脚本来将YAML格式转换为文本编辑器的本机格式,如果您以后决定要这样做.
也可以看看:
> http://en.wikipedia.org/wiki/Snippet_%28programming%29
> http://en.wikipedia.org/wiki/Delimiter#Delimiter_collision
> http://perldoc.perl.org/perldsc.html#ARRAYS-OF-HASHES(Perl AoH)
> http://www.perlmonks.org/index.pl/?node_id=347905