From ddeb1062bac34787919baf8244fed5f617e8ae82 Mon Sep 17 00:00:00 2001 From: iku12phycho Date: Sat, 9 Mar 2024 19:35:22 +0900 Subject: [PATCH 1/6] allow activation events on user selected language files of all --- packages/test/.textlintrc | 6 +++++- packages/test/.vscode/settings.json | 11 ++++++++++- packages/test/testtest.js | 1 + packages/test/testtest.py | 1 + packages/textlint/package.json | 13 ++----------- 5 files changed, 19 insertions(+), 13 deletions(-) create mode 100644 packages/test/testtest.js create mode 100644 packages/test/testtest.py diff --git a/packages/test/.textlintrc b/packages/test/.textlintrc index 514329c..723e055 100644 --- a/packages/test/.textlintrc +++ b/packages/test/.textlintrc @@ -1,6 +1,10 @@ { "plugins": { - "html": true, + "html": { + "extensions": [ + ".js" + ] + }, "latex2e": true }, "filters": {}, diff --git a/packages/test/.vscode/settings.json b/packages/test/.vscode/settings.json index c6270a9..2ddd464 100644 --- a/packages/test/.vscode/settings.json +++ b/packages/test/.vscode/settings.json @@ -1,5 +1,14 @@ { "textlint.run": "onType", "textlint.autoFixOnSave": false, - "textlint.trace": "verbose" + "textlint.trace": "verbose", + "textlint.languages": [ + "markdown", + "plaintext", + "html", + "tex", + "latex", + "doctex", + "javascript" + ] } diff --git a/packages/test/testtest.js b/packages/test/testtest.js new file mode 100644 index 0000000..3c8efcd --- /dev/null +++ b/packages/test/testtest.js @@ -0,0 +1 @@ +// TODO: This is a validated target. \ No newline at end of file diff --git a/packages/test/testtest.py b/packages/test/testtest.py new file mode 100644 index 0000000..4865d07 --- /dev/null +++ b/packages/test/testtest.py @@ -0,0 +1 @@ +# TODO: This is NOT a validated target. \ No newline at end of file diff --git a/packages/textlint/package.json b/packages/textlint/package.json index cde66ff..026200d 100644 --- a/packages/textlint/package.json +++ b/packages/textlint/package.json @@ -111,16 +111,7 @@ } }, "activationEvents": [ - "onLanguage:html", - "onLanguage:plaintext", - "onLanguage:markdown", - "onLanguage:latex", - "onLanguage:tex", - "onLanguage:pdf", - "onLanguage:django-txt", - "onLanguage:django-html", - "onLanguage:doctex", - "onLanguage:restructuredtext", + "onLanguage", "onCommand:textlint.showOutputChannel", "onCommand:textlint.createConfig", "onCommand:textlint.executeAutofix" @@ -148,7 +139,7 @@ "webpack-cli": "^4.9.1" }, "engines": { - "vscode": "^1.61.0" + "vscode": "^1.74.0" }, "icon": "textlint-icon_128x128.png", "galleryBanner": { From 17209b9d13fcb7f80ea67eb525edf99384593185 Mon Sep 17 00:00:00 2001 From: iku12phycho Date: Sat, 9 Mar 2024 19:37:09 +0900 Subject: [PATCH 2/6] visible textlint targeted file at status bar --- packages/textlint/src/extension.ts | 2 +- packages/textlint/src/status.ts | 24 ++++++++++++++++++------ 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/packages/textlint/src/extension.ts b/packages/textlint/src/extension.ts index 8f9ba29..b4ee6c2 100644 --- a/packages/textlint/src/extension.ts +++ b/packages/textlint/src/extension.ts @@ -238,7 +238,7 @@ function configureAutoFixOnSave(client: LanguageClient) { disposeAutoFixOnSave(); if (auto) { - const languages = new Set(getConfig("languages")); + const languages = new Set(getConfig("languages", [])); autoFixOnSave = workspace.onWillSaveTextDocument((event) => { const doc = event.document; const target = getConfig("targetPath", null); diff --git a/packages/textlint/src/status.ts b/packages/textlint/src/status.ts index 872bef4..b2cc137 100644 --- a/packages/textlint/src/status.ts +++ b/packages/textlint/src/status.ts @@ -57,6 +57,20 @@ export class StatusBar { this._delegate.hide(); } } + activate(languageId: string) { + if (languageId === "") { + return; + } + + if (-1 !== this._supports.indexOf(languageId)) { + this._delegate.color = ""; + this._delegate.tooltip = + "need to restart this extension or check this extension setting and .textlintrc if textlint is not working."; + } else { + this._delegate.color = "#818589"; + this._delegate.tooltip = `textlint is inanctive on ${languageId}.`; + } + } get status(): Status { return this._status; @@ -73,7 +87,7 @@ export class StatusBar { set serverRunning(sr: boolean) { this._serverRunning = sr; - this._delegate.tooltip = sr ? "textlint server is running." : "textlint server stopped."; + window.showInformationMessage(sr ? "textlint server is running." : "textlint server stopped."); this.update(); } @@ -83,11 +97,9 @@ export class StatusBar { updateWith(editor: TextEditor) { this._delegate.text = this.status.label; - this.show( - this.serverRunning === false || - this._status !== Status.OK || - (editor && 0 < this._supports.indexOf(editor.document.languageId)) - ); + const languageId = editor?.document.languageId ?? ""; + this.activate(languageId); + this.show(this.serverRunning === false || this._status !== Status.OK || -1 !== this._supports.indexOf(languageId)); } startProgress() { From 7c13b4936ade4e9246d22e5b019ece33ba9579f9 Mon Sep 17 00:00:00 2001 From: 3w36zj6 <52315048+3w36zj6@users.noreply.github.com> Date: Mon, 24 Mar 2025 17:21:25 +0900 Subject: [PATCH 3/6] style: add newlines at end of files for POSIX compliance --- packages/test/testtest.js | 2 +- packages/test/testtest.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/test/testtest.js b/packages/test/testtest.js index 3c8efcd..7385977 100644 --- a/packages/test/testtest.js +++ b/packages/test/testtest.js @@ -1 +1 @@ -// TODO: This is a validated target. \ No newline at end of file +// TODO: This is a validated target. diff --git a/packages/test/testtest.py b/packages/test/testtest.py index 4865d07..213089d 100644 --- a/packages/test/testtest.py +++ b/packages/test/testtest.py @@ -1 +1 @@ -# TODO: This is NOT a validated target. \ No newline at end of file +# TODO: This is NOT a validated target. From 89dfce62e94d74b975a135db96aee33bef486088 Mon Sep 17 00:00:00 2001 From: 3w36zj6 <52315048+3w36zj6@users.noreply.github.com> Date: Wed, 26 Mar 2025 02:08:52 +0900 Subject: [PATCH 4/6] refactor: apply suggestion Co-authored-by: azu --- packages/textlint/src/status.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/textlint/src/status.ts b/packages/textlint/src/status.ts index b2cc137..c657e63 100644 --- a/packages/textlint/src/status.ts +++ b/packages/textlint/src/status.ts @@ -62,7 +62,7 @@ export class StatusBar { return; } - if (-1 !== this._supports.indexOf(languageId)) { + if (this._supports.includes(languageId)) { this._delegate.color = ""; this._delegate.tooltip = "need to restart this extension or check this extension setting and .textlintrc if textlint is not working."; From 9099a61f93f48e8d3b7f8ee4a3f6e4c241f96275 Mon Sep 17 00:00:00 2001 From: 3w36zj6 <52315048+3w36zj6@users.noreply.github.com> Date: Wed, 26 Mar 2025 02:10:32 +0900 Subject: [PATCH 5/6] fix: correct spelling error Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- packages/textlint/src/status.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/textlint/src/status.ts b/packages/textlint/src/status.ts index c657e63..809caab 100644 --- a/packages/textlint/src/status.ts +++ b/packages/textlint/src/status.ts @@ -68,7 +68,7 @@ export class StatusBar { "need to restart this extension or check this extension setting and .textlintrc if textlint is not working."; } else { this._delegate.color = "#818589"; - this._delegate.tooltip = `textlint is inanctive on ${languageId}.`; + this._delegate.tooltip = `textlint is inactive on ${languageId}.`; } } From c4c9368a7a6cdd1b5401f5e901d770008d77fdcf Mon Sep 17 00:00:00 2001 From: 3w36zj6 <52315048+3w36zj6@users.noreply.github.com> Date: Wed, 26 Mar 2025 02:19:14 +0900 Subject: [PATCH 6/6] refactor: simplify status bar visibility logic Co-authored-by: azu --- packages/textlint/src/status.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/textlint/src/status.ts b/packages/textlint/src/status.ts index 809caab..e4aee99 100644 --- a/packages/textlint/src/status.ts +++ b/packages/textlint/src/status.ts @@ -99,7 +99,10 @@ export class StatusBar { this._delegate.text = this.status.label; const languageId = editor?.document.languageId ?? ""; this.activate(languageId); - this.show(this.serverRunning === false || this._status !== Status.OK || -1 !== this._supports.indexOf(languageId)); + + const shouldShowStatusBar = + !this.serverRunning || this._status !== Status.OK || this._supports.includes(languageId); + this.show(shouldShowStatusBar); } startProgress() {