From 84becec23f331d7484fdbf43904ad60098aced8b Mon Sep 17 00:00:00 2001 From: Eric Amodio Date: Wed, 31 Aug 2016 03:54:03 -0400 Subject: [PATCH] Moves lens start char to center on symbol Also helps move lens after other lenses --- src/codeLensProvider.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/codeLensProvider.ts b/src/codeLensProvider.ts index e18f4f7..65313aa 100644 --- a/src/codeLensProvider.ts +++ b/src/codeLensProvider.ts @@ -76,8 +76,16 @@ export default class GitCodeLensProvider implements CodeLensProvider { } const line = document.lineAt(symbol.location.range.start); - lenses.push(new GitBlameCodeLens(this.blameProvider, document.fileName, symbol.location.range, line.range.with(new Position(line.range.start.line, line.firstNonWhitespaceCharacterIndex)))); - lenses.push(new GitHistoryCodeLens(this.repoPath, document.fileName, line.range.with(new Position(line.range.start.line, line.firstNonWhitespaceCharacterIndex + 1)))); + + let startChar = line.text.indexOf(symbol.name); //line.firstNonWhitespaceCharacterIndex; + if (startChar === -1) { + startChar = line.firstNonWhitespaceCharacterIndex; + } else { + startChar += (symbol.name.length / 2) - 1; + } + + lenses.push(new GitBlameCodeLens(this.blameProvider, document.fileName, symbol.location.range, line.range.with(new Position(line.range.start.line, startChar)))); + lenses.push(new GitHistoryCodeLens(this.repoPath, document.fileName, line.range.with(new Position(line.range.start.line, startChar + 1)))); } resolveCodeLens(lens: CodeLens, token: CancellationToken): Thenable {