Skip to content

Commit f49e955

Browse files
authored
Merge pull request #149 from JasperGilhuis/copilot-tooltip-enhancements
Copilot tooltip enhancements
2 parents 003ef3b + d3c3d70 commit f49e955

File tree

1 file changed

+32
-21
lines changed

1 file changed

+32
-21
lines changed

src/extension.ts

Lines changed: 32 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -476,28 +476,39 @@ class CopilotTokenTracker implements vscode.Disposable {
476476

477477
this.statusBarItem.text = `$(symbol-numeric) ${detailedStats.today.tokens.toLocaleString()} | ${detailedStats.month.tokens.toLocaleString()}`;
478478

479-
// Create detailed tooltip with markdown support
479+
// Create detailed tooltip with improved style
480480
const tooltip = new vscode.MarkdownString();
481-
tooltip.appendMarkdown('## 🤖 GitHub Copilot Token Usage\n\n');
482-
tooltip.appendMarkdown('### 📅 Today\n');
483-
tooltip.appendMarkdown(`**Tokens:** ${detailedStats.today.tokens.toLocaleString()}\n\n`);
484-
tooltip.appendMarkdown(`**Est. Cost:** $${detailedStats.today.estimatedCost.toFixed(4)}\n\n`);
485-
tooltip.appendMarkdown(`**CO₂ Est.:** ${detailedStats.today.co2.toFixed(2)}g\n\n`);
486-
tooltip.appendMarkdown(`**Water Est.:** ${detailedStats.today.waterUsage.toFixed(3)}L\n\n`);
487-
tooltip.appendMarkdown(`**Sessions:** ${detailedStats.today.sessions}\n\n`);
488-
tooltip.appendMarkdown(`**Avg Interactions/Session:** ${detailedStats.today.avgInteractionsPerSession}\n\n`);
489-
tooltip.appendMarkdown(`**Avg Tokens/Session:** ${detailedStats.today.avgTokensPerSession.toLocaleString()}\n\n`);
490-
tooltip.appendMarkdown('### 📊 This Month\n');
491-
tooltip.appendMarkdown(`**Tokens:** ${detailedStats.month.tokens.toLocaleString()}\n\n`);
492-
tooltip.appendMarkdown(`**Est. Cost:** $${detailedStats.month.estimatedCost.toFixed(4)}\n\n`);
493-
tooltip.appendMarkdown(`**CO₂ Est.:** ${detailedStats.month.co2.toFixed(2)}g\n\n`);
494-
tooltip.appendMarkdown(`**Water Est.:** ${detailedStats.month.waterUsage.toFixed(3)}L\n\n`);
495-
tooltip.appendMarkdown(`**Sessions:** ${detailedStats.month.sessions}\n\n`);
496-
tooltip.appendMarkdown(`**Avg Interactions/Session:** ${detailedStats.month.avgInteractionsPerSession}\n\n`);
497-
tooltip.appendMarkdown(`**Avg Tokens/Session:** ${detailedStats.month.avgTokensPerSession.toLocaleString()}\n\n`);
498-
tooltip.appendMarkdown('---\n\n');
499-
tooltip.appendMarkdown('*Cost estimates based on actual input/output token ratios*\n\n');
500-
tooltip.appendMarkdown('*Updates automatically every 5 minutes*');
481+
tooltip.isTrusted = false;
482+
// Title
483+
tooltip.appendMarkdown('#### 🤖 GitHub Copilot Token Usage');
484+
tooltip.appendMarkdown('\n---\n');
485+
// Table layout for Today
486+
tooltip.appendMarkdown(`📅 Today \n`);
487+
tooltip.appendMarkdown(`| | |\n|-----------------------|-------|\n`);
488+
tooltip.appendMarkdown(`| Tokens : | ${detailedStats.today.tokens.toLocaleString()} |\n`);
489+
tooltip.appendMarkdown(`| Estimated cost : | $ ${detailedStats.today.estimatedCost.toFixed(4)} |\n`);
490+
tooltip.appendMarkdown(`| CO₂ estimated : | ${detailedStats.today.co2.toFixed(2)} grams |\n`);
491+
tooltip.appendMarkdown(`| Water estimated : | ${detailedStats.today.waterUsage.toFixed(3)} liters |\n`);
492+
tooltip.appendMarkdown(`| Sessions : | ${detailedStats.today.sessions} |\n`);
493+
tooltip.appendMarkdown(`| Average interactions/session : | ${detailedStats.today.avgInteractionsPerSession} |\n`);
494+
tooltip.appendMarkdown(`| Average tokens/session : | ${detailedStats.today.avgTokensPerSession.toLocaleString()} |\n`);
495+
496+
tooltip.appendMarkdown('\n---\n');
497+
498+
// Table layout for This Month
499+
tooltip.appendMarkdown(`📊 This month \n`);
500+
tooltip.appendMarkdown(`| | |\n|-----------------------|-------|\n`);
501+
tooltip.appendMarkdown(`| Tokens : | ${detailedStats.month.tokens.toLocaleString()} |\n`);
502+
tooltip.appendMarkdown(`| Estimated cost : | $ ${detailedStats.month.estimatedCost.toFixed(4)} |\n`);
503+
tooltip.appendMarkdown(`| CO₂ estimated : | ${detailedStats.month.co2.toFixed(2)} grams |\n`);
504+
tooltip.appendMarkdown(`| Water estimated : | ${detailedStats.month.waterUsage.toFixed(3)} liters |\n`);
505+
tooltip.appendMarkdown(`| Sessions : | ${detailedStats.month.sessions} |\n`);
506+
tooltip.appendMarkdown(`| Average interactions/session : | ${detailedStats.month.avgInteractionsPerSession} |\n`);
507+
tooltip.appendMarkdown(`| Average tokens/session : | ${detailedStats.month.avgTokensPerSession.toLocaleString()} |\n`);
508+
// Footer
509+
tooltip.appendMarkdown('\n---\n');
510+
tooltip.appendMarkdown('*Cost estimates based on actual input/output token ratios.* \n');
511+
tooltip.appendMarkdown('*Updates automatically every 5 minutes.*');
501512

502513
this.statusBarItem.tooltip = tooltip;
503514

0 commit comments

Comments
 (0)