From d180b106ce46d6511ed0fe4391d0bb9614fb14d8 Mon Sep 17 00:00:00 2001 From: 1Code-JS <114492072+1Code-JS@users.noreply.github.com> Date: Wed, 25 Feb 2026 09:23:18 +0200 Subject: [PATCH 1/2] feat(codemirror): `shift` + click selection --- src/lib/editorManager.js | 41 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 40 insertions(+), 1 deletion(-) diff --git a/src/lib/editorManager.js b/src/lib/editorManager.js index 4e95aae2e..2e7b91e03 100644 --- a/src/lib/editorManager.js +++ b/src/lib/editorManager.js @@ -1,7 +1,13 @@ import sidebarApps from "sidebarApps"; import { indentUnit } from "@codemirror/language"; import { search } from "@codemirror/search"; -import { Compartment, EditorState, Prec, StateEffect } from "@codemirror/state"; +import { + Compartment, + EditorSelection, + EditorState, + Prec, + StateEffect, +} from "@codemirror/state"; import { oneDark } from "@codemirror/theme-one-dark"; import { EditorView, @@ -172,6 +178,37 @@ async function EditorManager($header, $body) { }, ); + let shiftClickSelectionExtension; + { + const pointerIdMap = new Map(); + shiftClickSelectionExtension = EditorView.domEventHandlers({ + pointerup(event, view) { + if (!appSettings.value.shiftClickSelection) return; + if (!(event.isTrusted && event.isPrimary)) return; + if (!event.shiftKey && quickTools.$footer.dataset.shift == null) return; + const { pointerId } = event; + const tid = setTimeout(() => pointerIdMap.delete(pointerId), 1001); + pointerIdMap.set(pointerId, [view.state.selection.main.anchor, tid]); + }, + click(event, view) { + const { pointerId } = event; + if (!pointerIdMap.has(pointerId)) return false; + const [anchor, tid] = pointerIdMap.get(pointerId); + clearTimeout(tid); + pointerIdMap.delete(pointerId); + view.dispatch({ + selection: EditorSelection.range( + anchor, + view.state.selection.main.anchor, + ), + userEvent: "select.extend", + }); + event.preventDefault(); + return true; + }, + }); + } + const touchSelectionUpdateExtension = EditorView.updateListener.of( (update) => { if (!touchSelectionController) return; @@ -725,6 +762,7 @@ async function EditorManager($header, $body) { fixedHeightTheme, scrollPastEnd(), pointerCursorVisibilityExtension, + shiftClickSelectionExtension, touchSelectionUpdateExtension, search(), // Ensure read-only can be toggled later via compartment @@ -1088,6 +1126,7 @@ async function EditorManager($header, $body) { fixedHeightTheme, scrollPastEnd(), pointerCursorVisibilityExtension, + shiftClickSelectionExtension, touchSelectionUpdateExtension, search(), // Keep dynamic compartments across state swaps From c9ff01af0e3a8974ef4626581e4c44361f3d13dc Mon Sep 17 00:00:00 2001 From: 1Code-JS <114492072+1Code-JS@users.noreply.github.com> Date: Wed, 25 Feb 2026 10:29:48 +0200 Subject: [PATCH 2/2] feat(app-settings): toggle for `shift` + click selection --- src/lang/ar-ye.json | 3 ++- src/lang/be-by.json | 3 ++- src/lang/bn-bd.json | 3 ++- src/lang/cs-cz.json | 3 ++- src/lang/de-de.json | 3 ++- src/lang/en-us.json | 3 ++- src/lang/es-sv.json | 3 ++- src/lang/fr-fr.json | 3 ++- src/lang/he-il.json | 3 ++- src/lang/hi-in.json | 3 ++- src/lang/hu-hu.json | 3 ++- src/lang/id-id.json | 3 ++- src/lang/ir-fa.json | 3 ++- src/lang/it-it.json | 3 ++- src/lang/ja-jp.json | 3 ++- src/lang/ko-kr.json | 3 ++- src/lang/ml-in.json | 3 ++- src/lang/mm-unicode.json | 3 ++- src/lang/mm-zawgyi.json | 3 ++- src/lang/pl-pl.json | 3 ++- src/lang/pt-br.json | 3 ++- src/lang/pu-in.json | 3 ++- src/lang/ru-ru.json | 3 ++- src/lang/tl-ph.json | 3 ++- src/lang/tr-tr.json | 3 ++- src/lang/uk-ua.json | 3 ++- src/lang/uz-uz.json | 3 ++- src/lang/vi-vn.json | 3 ++- src/lang/zh-cn.json | 3 ++- src/lang/zh-hant.json | 3 ++- src/lang/zh-tw.json | 3 ++- src/lib/settings.js | 1 + src/settings/editorSettings.js | 5 +++++ 33 files changed, 68 insertions(+), 31 deletions(-) diff --git a/src/lang/ar-ye.json b/src/lang/ar-ye.json index b417f6f44..5279bc0af 100644 --- a/src/lang/ar-ye.json +++ b/src/lang/ar-ye.json @@ -503,5 +503,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/be-by.json b/src/lang/be-by.json index 74d67885f..31405f517 100644 --- a/src/lang/be-by.json +++ b/src/lang/be-by.json @@ -505,5 +505,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/bn-bd.json b/src/lang/bn-bd.json index 1628d6669..ddea279af 100644 --- a/src/lang/bn-bd.json +++ b/src/lang/bn-bd.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/cs-cz.json b/src/lang/cs-cz.json index b2b0cfe27..8ab39e3dd 100644 --- a/src/lang/cs-cz.json +++ b/src/lang/cs-cz.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/de-de.json b/src/lang/de-de.json index e0aadd09f..45a1882fc 100644 --- a/src/lang/de-de.json +++ b/src/lang/de-de.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/en-us.json b/src/lang/en-us.json index 5135c6b76..a52de8315 100644 --- a/src/lang/en-us.json +++ b/src/lang/en-us.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/es-sv.json b/src/lang/es-sv.json index df739e423..af5a48db1 100644 --- a/src/lang/es-sv.json +++ b/src/lang/es-sv.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/fr-fr.json b/src/lang/fr-fr.json index 8abffc159..7a2264b66 100644 --- a/src/lang/fr-fr.json +++ b/src/lang/fr-fr.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/he-il.json b/src/lang/he-il.json index 0f1be6389..7168e7b1e 100644 --- a/src/lang/he-il.json +++ b/src/lang/he-il.json @@ -505,5 +505,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/hi-in.json b/src/lang/hi-in.json index 966b4624b..d3bb43651 100644 --- a/src/lang/hi-in.json +++ b/src/lang/hi-in.json @@ -505,5 +505,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/hu-hu.json b/src/lang/hu-hu.json index e0a8b1c0c..00696fb5b 100644 --- a/src/lang/hu-hu.json +++ b/src/lang/hu-hu.json @@ -504,5 +504,6 @@ "add to home screen": "Hozzáadás a kezdőképernyőhöz", "pin shortcuts not supported": "Ez az eszköz nem támogatja a kezdőképernyő-parancsikonokat.", "save file before home shortcut": "A kezdőképernyőhöz való hozzáadás előtt mentse el a fájlt.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/id-id.json b/src/lang/id-id.json index 5f894d38d..d4102f8a1 100644 --- a/src/lang/id-id.json +++ b/src/lang/id-id.json @@ -505,5 +505,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/ir-fa.json b/src/lang/ir-fa.json index 5acb9b264..13c89f4e4 100644 --- a/src/lang/ir-fa.json +++ b/src/lang/ir-fa.json @@ -505,5 +505,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/it-it.json b/src/lang/it-it.json index 2608b8764..f225a67cf 100644 --- a/src/lang/it-it.json +++ b/src/lang/it-it.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/ja-jp.json b/src/lang/ja-jp.json index 48dec6055..66eb11966 100644 --- a/src/lang/ja-jp.json +++ b/src/lang/ja-jp.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/ko-kr.json b/src/lang/ko-kr.json index 36af009a2..08f0df135 100644 --- a/src/lang/ko-kr.json +++ b/src/lang/ko-kr.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/ml-in.json b/src/lang/ml-in.json index 955403320..c7eb73987 100644 --- a/src/lang/ml-in.json +++ b/src/lang/ml-in.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/mm-unicode.json b/src/lang/mm-unicode.json index c04ff1c8f..d3cc2edac 100644 --- a/src/lang/mm-unicode.json +++ b/src/lang/mm-unicode.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/mm-zawgyi.json b/src/lang/mm-zawgyi.json index 65c85e9ec..a19c87f89 100644 --- a/src/lang/mm-zawgyi.json +++ b/src/lang/mm-zawgyi.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/pl-pl.json b/src/lang/pl-pl.json index 1ea38f72f..02ccc427f 100644 --- a/src/lang/pl-pl.json +++ b/src/lang/pl-pl.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/pt-br.json b/src/lang/pt-br.json index 9abdf1019..8aace563a 100644 --- a/src/lang/pt-br.json +++ b/src/lang/pt-br.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/pu-in.json b/src/lang/pu-in.json index 075606f6a..44c29a8b0 100644 --- a/src/lang/pu-in.json +++ b/src/lang/pu-in.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/ru-ru.json b/src/lang/ru-ru.json index e8f53c1ef..0ca00f3a5 100644 --- a/src/lang/ru-ru.json +++ b/src/lang/ru-ru.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/tl-ph.json b/src/lang/tl-ph.json index 9c2d16f2f..02595aeba 100644 --- a/src/lang/tl-ph.json +++ b/src/lang/tl-ph.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/tr-tr.json b/src/lang/tr-tr.json index f0357bfbd..505d05012 100644 --- a/src/lang/tr-tr.json +++ b/src/lang/tr-tr.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/uk-ua.json b/src/lang/uk-ua.json index 7aa16f0b1..0a12691b5 100644 --- a/src/lang/uk-ua.json +++ b/src/lang/uk-ua.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/uz-uz.json b/src/lang/uz-uz.json index a3be43b7c..e509255b9 100644 --- a/src/lang/uz-uz.json +++ b/src/lang/uz-uz.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/vi-vn.json b/src/lang/vi-vn.json index 84b0e9773..6f68fd626 100644 --- a/src/lang/vi-vn.json +++ b/src/lang/vi-vn.json @@ -505,5 +505,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/zh-cn.json b/src/lang/zh-cn.json index 2b957481d..700ff0526 100644 --- a/src/lang/zh-cn.json +++ b/src/lang/zh-cn.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/zh-hant.json b/src/lang/zh-hant.json index fca601729..2e635cff4 100644 --- a/src/lang/zh-hant.json +++ b/src/lang/zh-hant.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lang/zh-tw.json b/src/lang/zh-tw.json index 13cbb65d6..8a1e56c5b 100644 --- a/src/lang/zh-tw.json +++ b/src/lang/zh-tw.json @@ -504,5 +504,6 @@ "add to home screen": "Add to home screen", "pin shortcuts not supported": "Home screen shortcuts are not supported on this device.", "save file before home shortcut": "Save the file before adding it to the home screen.", - "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers." + "terminal_required_message_for_lsp": "Terminal not installed. Please install Terminal first to use LSP servers.", + "shift click selection": "Shift + tap/click selection" } diff --git a/src/lib/settings.js b/src/lib/settings.js index 507f943ef..799334be4 100644 --- a/src/lib/settings.js +++ b/src/lib/settings.js @@ -184,6 +184,7 @@ class Settings { servers: {}, }, developerMode: false, + shiftClickSelection: false, }; this.value = structuredClone(this.#defaultSettings); } diff --git a/src/settings/editorSettings.js b/src/settings/editorSettings.js index cc2d436ff..caaaa98df 100644 --- a/src/settings/editorSettings.js +++ b/src/settings/editorSettings.js @@ -32,6 +32,11 @@ export default function editorSettings() { match: constants.FONT_SIZE, }, }, + { + key: "shiftClickSelection", + text: strings["shift click selection"], + checkbox: values.shiftClickSelection, + }, { key: "softTab", text: strings["soft tab"],