From d0b8dbc02f37e5607377ce3d43ffde6104241690 Mon Sep 17 00:00:00 2001 From: Dmitrii Baranov Date: Mon, 12 Nov 2018 18:54:48 +0200 Subject: [PATCH 1/2] Added line counter to the status bar --- extension.js | 7 +++++-- package-lock.json | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/extension.js b/extension.js index 68cfa10..234f1d2 100644 --- a/extension.js +++ b/extension.js @@ -21,7 +21,7 @@ function updateConfig() { function showStatusBarItem(newInfo) { info = fzCalculator.addPrettySize(newInfo, config); if (info && info.prettySize) { - statusBarItem.text = info.prettySize; + statusBarItem.text = info.prettySize + ' / ' + newInfo.lineCount + ' lines'; statusBarItem.show(); } } @@ -37,8 +37,11 @@ function updateStatusBarItem() { try { var currentEditor = window.activeTextEditor._documentData._document; if (currentEditor && currentEditor.uri.scheme === 'file') { + var fileInfo = fzCalculator.loadFileInfoSync(currentEditor.fileName); + fileInfo.lineCount = currentEditor.lineCount; + hideDetailedInfo(); - showStatusBarItem(fzCalculator.loadFileInfoSync(currentEditor.fileName)); + showStatusBarItem(fileInfo); } else { if (currentEditor.uri.scheme !== 'output') hideStatusBarItem(); } diff --git a/package-lock.json b/package-lock.json index 2bd3fdc..a8d7ca7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "vscode-filesize", - "version": "2.1.0", + "version": "2.1.1", "lockfileVersion": 1, "requires": true, "dependencies": { From 891dd7b17f405de7dc62d6e3ee9564952a47f26a Mon Sep 17 00:00:00 2001 From: Dmitrii Baranov Date: Tue, 16 Mar 2021 14:55:34 +0200 Subject: [PATCH 2/2] Added configuration option to enable number of lines information --- README.md | 1 + extension.js | 11 +++++++++-- package.json | 5 +++++ 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9826cb6..ac5b82a 100644 --- a/README.md +++ b/README.md @@ -40,6 +40,7 @@ This package has two user configurable settings: - `showGzipInStatusBar`: set to `true` to show calculated gzip size in the status bar. Default is `false`. - `showBrotli`: set to `true` to show calculated brotli compressed size in the detailed info view. Default is `false`. - `displayInfoOnTheRightSideOfStatusBar`: set to `true` to show the status bar info on the right side. Default is `false` (left side). +- `showNumberOfLines`: set to `true` to show number of lines in the opened file. Default is `false`. ## Contributing diff --git a/extension.js b/extension.js index 6fda089..72d82b5 100644 --- a/extension.js +++ b/extension.js @@ -18,7 +18,8 @@ function updateConfig() { showGzipInStatusBar: configuration.get('showGzipInStatusBar'), displayInfoOnTheRightSideOfStatusBar: configuration.get('displayInfoOnTheRightSideOfStatusBar'), showBrotli: configuration.get('showBrotli'), - showGzipInStatusBar: configuration.get('showGzipInStatusBar') + showGzipInStatusBar: configuration.get('showGzipInStatusBar'), + showNumberOfLines: configuration.get('showNumberOfLines') }; updateStatusBarItem(); return config; @@ -33,6 +34,9 @@ function showStatusBarItem(newInfo) { info = fzCalculator.addGzipSize(info, config); statusBarItem.text += ` | Gzip: ${info.gzipSize}` } + if (config.showNumberOfLines) { + statusBarItem.text += ` | ${newInfo.lineCount}L` + } statusBarItem.show(); } } @@ -61,8 +65,11 @@ function updateStatusBarItem() { try { var currentEditor = window.activeTextEditor.document; if (currentEditor && currentEditor.uri.scheme === 'file') { + var fileInfo = fzCalculator.loadFileInfoSync(currentEditor.fileName); + fileInfo.lineCount = currentEditor.lineCount; + hideDetailedInfo(); - showStatusBarItem(fzCalculator.loadFileInfoSync(currentEditor.fileName)); + showStatusBarItem(fileInfo); } else { if (currentEditor.uri.scheme !== 'output') hideStatusBarItem(); } diff --git a/package.json b/package.json index 5e3c62c..9a8147f 100644 --- a/package.json +++ b/package.json @@ -75,6 +75,11 @@ "type": "boolean", "default": false, "description": "Defaults to false, whether to show the filesize info on the right side of the status bar." + }, + "filesize.showNumberOfLines": { + "type": "boolean", + "default": false, + "description": "Defaults to false, whether to show number of lines in the opened file." } } }