任何人都可以解释这个JavaScript textmate片段给我请

问题描述:

下面的代码是textmate JavaScript片段,任何人都可以解释它吗?因为我想在我自己的片段中使用此功能。谢谢。任何人都可以解释这个JavaScript textmate片段给我请

document.getElement${1/(T)|.*/(?1:s)/}By${1:T}${1/(T)|(I)|.*/(?1:agName)(?2:d)/}("$2") 

${1:T}是第一个标签占位符,用默认值为“T”。这是当您输入“get”并点击标签时突出显示的文本。

$2是第二个选项卡占位符。一旦按下了“T”或“I”在第一个选项卡占位符中完成了函数名称,就可以按Tab键来到此处。

你可能已经知道那些部分,但其他两个稍微有点棘手。

${1/(T)|.*/(?1:s)/}是一种插入开关。它会查看您在第一个选项卡占位符中键入的值,并选择要插入的相应值。如果你输入“T”,它会插入一个“s”(使单词“元素”);否则,它不会插入任何东西。

是另一个插入开关,它再次查看您在第一个选项卡占位符中键入的值(这就是开始处“1”的含义)。这里有两种可能的插入:如果你输入“T”,它将把它完成为“标记名”,如果你输入“I”,它将把它完成为“Id”。

总体结果是,如果您调用代码片段并键入“T”,它将完成到“getElementsByTagName(”“)”。如果你调用它并输入“I”,它会将其完成为'getElementById(“”)'。

+0

非常感谢!!! – 2009-10-27 10:19:28

我一无所知的TextMate,但看起来它是产生如下:

document.getElementById(val); 
document.getElementsByTagName(val); 

不是这虽然:

document.getElementsByName(val);