@@ -44,8 +44,21 @@ function activateExtension(context: vscode.ExtensionContext, magentoRoot: string
4444 const treeView = vscode . window . createTreeView ( 'logFiles' , { treeDataProvider : logViewerProvider } ) ;
4545
4646 vscode . commands . registerCommand ( 'magento-log-viewer.refreshLogFiles' , ( ) => logViewerProvider . refresh ( ) ) ;
47- vscode . commands . registerCommand ( 'magento-log-viewer.openFile' , ( resource ) => {
48- vscode . window . showTextDocument ( vscode . Uri . file ( resource ) ) ;
47+ vscode . commands . registerCommand ( 'magento-log-viewer.openFile' , ( filePath , lineNumber ) => {
48+ if ( lineNumber !== undefined ) {
49+ const options : vscode . TextDocumentShowOptions = {
50+ selection : new vscode . Range ( new vscode . Position ( lineNumber , 0 ) , new vscode . Position ( lineNumber , 0 ) )
51+ } ;
52+ vscode . window . showTextDocument ( vscode . Uri . file ( filePath ) , options ) ;
53+ } else {
54+ vscode . window . showTextDocument ( vscode . Uri . file ( filePath ) ) ;
55+ }
56+ } ) ;
57+ vscode . commands . registerCommand ( 'magento-log-viewer.openFileAtLine' , ( filePath , lineNumber ) => {
58+ const options : vscode . TextDocumentShowOptions = {
59+ selection : new vscode . Range ( new vscode . Position ( lineNumber , 0 ) , new vscode . Position ( lineNumber , 0 ) )
60+ } ;
61+ vscode . window . showTextDocument ( vscode . Uri . file ( filePath ) , options ) ;
4962 } ) ;
5063
5164 vscode . commands . registerCommand ( 'magento-log-viewer.clearAllLogFiles' , ( ) => {
@@ -65,7 +78,8 @@ function activateExtension(context: vscode.ExtensionContext, magentoRoot: string
6578 // Update the badge count
6679 const updateBadge = ( ) => {
6780 const logFiles = logViewerProvider . getLogFilesWithoutUpdatingBadge ( path . join ( magentoRoot , 'var' , 'log' ) ) ;
68- treeView . badge = { value : logFiles . length , tooltip : `${ logFiles . length } log files` } ;
81+ const totalEntries = logFiles . reduce ( ( count , file ) => count + parseInt ( file . description ?. match ( / \d + / ) ?. [ 0 ] || '0' , 10 ) , 0 ) ;
82+ treeView . badge = { value : totalEntries , tooltip : `${ totalEntries } log entries` } ;
6983 } ;
7084
7185 logViewerProvider . onDidChangeTreeData ( updateBadge ) ;
0 commit comments