diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/intertyper.js | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/intertyper.js b/src/intertyper.js index a1e1b0f2..7dafed6f 100644 --- a/src/intertyper.js +++ b/src/intertyper.js @@ -338,7 +338,8 @@ function intertyper(data, sidePass, baseLineNums) { return '/dev/null'; } else if (item.indent === 0) { if ((tokensLength >= 1 && token0Text.substr(-1) == ':') || - (tokensLength >= 3 && token1Text == '<label>')) + (tokensLength >= 3 && token1Text == '<label>') || + (tokensLength >= 2 && token1Text == ':')) return 'Label'; if (tokensLength >= 4 && token0Text == 'declare') return 'External'; @@ -547,13 +548,15 @@ function intertyper(data, sidePass, baseLineNums) { // label substrate.addActor('Label', { processItem: function(item) { + var rawLabel = item.tokens[0].text.substr(-1) == ':' ? + '%' + item.tokens[0].text.substr(0, item.tokens[0].text.length-1) : + (item.tokens[1].text == '<label>' ? + '%' + item.tokens[2].text.substr(1) : + '%' + item.tokens[0].text) + var niceLabel = toNiceIdent(rawLabel); return [{ intertype: 'label', - ident: toNiceIdent( - item.tokens[0].text.substr(-1) == ':' ? - '%' + item.tokens[0].text.substr(0, item.tokens[0].text.length-1) : - '%' + item.tokens[2].text.substr(1) - ), + ident: niceLabel, lineNum: item.lineNum }]; } |