diff --git a/CHANGELOG.md b/CHANGELOG.md index e54df14e9..8d7051324 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,16 @@ The project does _not_ follow Semantic Versioning and the changes are documented - de.slisson.mps.conditionalEditor: Support for editor components with parameters was added. - com.mbeddr.mpsutil.grammarcells: Read-only model accessory cells can now also be used in places where constant cells are supported. +### Fixed + +- de.slisson.mps.richtext: Various small issues were fixed (e.g. NullPointerExceptions, usability problems). +- de.slisson.mps.editor.multiline: Selections are now correctly painted. + +### Changed + +- de.slisson.mps.richtext: Words are automatically insert as the default concept for IWord. +- de.slisson.mps.richtext: The faulty duplicate line action was removed. + ## February 2024 ### Added diff --git a/code/.mps/modules.xml b/code/.mps/modules.xml index 07f68beee..5e4d28224 100644 --- a/code/.mps/modules.xml +++ b/code/.mps/modules.xml @@ -102,10 +102,12 @@ + + @@ -129,10 +131,13 @@ + + + @@ -191,6 +196,7 @@ + diff --git a/code/build/solutions/de.itemis.mps.extensions.build/models/de.itemis.mps.extensions.build.mps b/code/build/solutions/de.itemis.mps.extensions.build/models/de.itemis.mps.extensions.build.mps index ea6030691..be6f200f9 100644 --- a/code/build/solutions/de.itemis.mps.extensions.build/models/de.itemis.mps.extensions.build.mps +++ b/code/build/solutions/de.itemis.mps.extensions.build/models/de.itemis.mps.extensions.build.mps @@ -1023,6 +1023,9 @@ + + + @@ -1056,21 +1059,11 @@ - - - - - - - - - - @@ -1178,6 +1171,132 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1668,6 +1787,201 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -18725,7 +19039,7 @@ - + @@ -18866,9 +19180,68 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -18984,6 +19357,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/multiline/languages/de.slisson.mps.editor.multiline.test/de.slisson.mps.editor.multiline.test.mpl b/code/multiline/languages/de.slisson.mps.editor.multiline.test/de.slisson.mps.editor.multiline.test.mpl new file mode 100644 index 000000000..a83af8c08 --- /dev/null +++ b/code/multiline/languages/de.slisson.mps.editor.multiline.test/de.slisson.mps.editor.multiline.test.mpl @@ -0,0 +1,167 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + dc038ceb-b7ea-4fea-ac12-55f7400e97ba(de.slisson.mps.editor.multiline.runtime) + fc4584d6-365c-4ceb-b660-b2c91933024d(jetbrains.mps.lang.test#1210261198005) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 8585453e-6bfb-4d80-98de-b16074f1d86c(jetbrains.mps.lang.test) + dc038ceb-b7ea-4fea-ac12-55f7400e97ba(de.slisson.mps.editor.multiline.runtime) + f3061a53-9226-4cc5-a443-f952ceaf5816(jetbrains.mps.baseLanguage) + 18bc6592-03a6-4e29-a83a-7ff23bde13ba(jetbrains.mps.lang.editor) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + f3061a53-9226-4cc5-a443-f952ceaf5816(jetbrains.mps.baseLanguage) + + + diff --git a/code/multiline/languages/de.slisson.mps.editor.multiline.test/generator/templates/de.slisson.mps.editor.multiline.test.generator.templates@generator.mps b/code/multiline/languages/de.slisson.mps.editor.multiline.test/generator/templates/de.slisson.mps.editor.multiline.test.generator.templates@generator.mps new file mode 100644 index 000000000..be2a9de95 --- /dev/null +++ b/code/multiline/languages/de.slisson.mps.editor.multiline.test/generator/templates/de.slisson.mps.editor.multiline.test.generator.templates@generator.mps @@ -0,0 +1,206 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/multiline/languages/de.slisson.mps.editor.multiline.test/models/de.slisson.mps.editor.multiline.test.constraints.mps b/code/multiline/languages/de.slisson.mps.editor.multiline.test/models/de.slisson.mps.editor.multiline.test.constraints.mps new file mode 100644 index 000000000..922e8cddb --- /dev/null +++ b/code/multiline/languages/de.slisson.mps.editor.multiline.test/models/de.slisson.mps.editor.multiline.test.constraints.mps @@ -0,0 +1,142 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/multiline/languages/de.slisson.mps.editor.multiline.test/models/de.slisson.mps.editor.multiline.test.editor.mps b/code/multiline/languages/de.slisson.mps.editor.multiline.test/models/de.slisson.mps.editor.multiline.test.editor.mps new file mode 100644 index 000000000..67e0d746e --- /dev/null +++ b/code/multiline/languages/de.slisson.mps.editor.multiline.test/models/de.slisson.mps.editor.multiline.test.editor.mps @@ -0,0 +1,204 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/multiline/languages/de.slisson.mps.editor.multiline.test/models/de.slisson.mps.editor.multiline.test.intentions.mps b/code/multiline/languages/de.slisson.mps.editor.multiline.test/models/de.slisson.mps.editor.multiline.test.intentions.mps new file mode 100644 index 000000000..79f5399d1 --- /dev/null +++ b/code/multiline/languages/de.slisson.mps.editor.multiline.test/models/de.slisson.mps.editor.multiline.test.intentions.mps @@ -0,0 +1,473 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/multiline/languages/de.slisson.mps.editor.multiline.test/models/de.slisson.mps.editor.multiline.test.structure.mps b/code/multiline/languages/de.slisson.mps.editor.multiline.test/models/de.slisson.mps.editor.multiline.test.structure.mps new file mode 100644 index 000000000..4a3400e50 --- /dev/null +++ b/code/multiline/languages/de.slisson.mps.editor.multiline.test/models/de.slisson.mps.editor.multiline.test.structure.mps @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/multiline/languages/de.slisson.mps.editor.multiline.test/models/de.slisson.mps.editor.multiline.test.typesystem.mps b/code/multiline/languages/de.slisson.mps.editor.multiline.test/models/de.slisson.mps.editor.multiline.test.typesystem.mps new file mode 100644 index 000000000..0d29fd2c3 --- /dev/null +++ b/code/multiline/languages/de.slisson.mps.editor.multiline.test/models/de.slisson.mps.editor.multiline.test.typesystem.mps @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/multiline/languages/demolang/languageModels/editor.mps b/code/multiline/languages/demolang/languageModels/editor.mps index 44d3fad43..67f25ffd3 100644 --- a/code/multiline/languages/demolang/languageModels/editor.mps +++ b/code/multiline/languages/demolang/languageModels/editor.mps @@ -19,6 +19,7 @@ + @@ -340,5 +341,17 @@ + + + + + + + + + + + + diff --git a/code/multiline/languages/demolang/languageModels/structure.mps b/code/multiline/languages/demolang/languageModels/structure.mps index 475ff7350..54f4ae067 100644 --- a/code/multiline/languages/demolang/languageModels/structure.mps +++ b/code/multiline/languages/demolang/languageModels/structure.mps @@ -106,5 +106,16 @@ + + + + + + + + + + + diff --git a/code/multiline/languages/multiline/languageModels/constraints.mps b/code/multiline/languages/multiline/languageModels/constraints.mps deleted file mode 100644 index f7dc8d15d..000000000 --- a/code/multiline/languages/multiline/languageModels/constraints.mps +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/code/multiline/languages/multiline/languageModels/typesystem.mps b/code/multiline/languages/multiline/languageModels/typesystem.mps deleted file mode 100644 index 45bf83229..000000000 --- a/code/multiline/languages/multiline/languageModels/typesystem.mps +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/code/multiline/languages/multiline/multiline.mpl b/code/multiline/languages/multiline/multiline.mpl index 78f15440c..028af4ffe 100644 --- a/code/multiline/languages/multiline/multiline.mpl +++ b/code/multiline/languages/multiline/multiline.mpl @@ -106,9 +106,7 @@ - 6354ebe7-c22a-4a0f-ac54-50b52ab9b065(JDK) ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core) - 1ed103c3-3aa6-49b7-9c21-6765ee11f224(MPS.Editor) @@ -120,36 +118,22 @@ - - - - - - - - - - - - - - diff --git a/code/multiline/solutions/de.slisson.mps.editor.multiline.runtime/models/de.slisson.mps.editor.multiline.test.mps b/code/multiline/solutions/de.slisson.mps.editor.multiline.runtime/models/de.slisson.mps.editor.multiline.test.mps new file mode 100644 index 000000000..09e53c5d3 --- /dev/null +++ b/code/multiline/solutions/de.slisson.mps.editor.multiline.runtime/models/de.slisson.mps.editor.multiline.test.mps @@ -0,0 +1,217 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/multiline/solutions/de.slisson.mps.editor.multiline.runtime/models/de/slisson/mps/editor/multiline/cells.mps b/code/multiline/solutions/de.slisson.mps.editor.multiline.runtime/models/de/slisson/mps/editor/multiline/cells.mps index 020dbe1f4..da3bcdd28 100644 --- a/code/multiline/solutions/de.slisson.mps.editor.multiline.runtime/models/de/slisson/mps/editor/multiline/cells.mps +++ b/code/multiline/solutions/de.slisson.mps.editor.multiline.runtime/models/de/slisson/mps/editor/multiline/cells.mps @@ -13449,23 +13449,47 @@ - - - - + + + + + + + + + + + - - - - - + + + + + + + + - - + + + + + + + + + + + + + + + + @@ -14322,31 +14346,55 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -15208,19 +15256,14 @@ - - - + + + + + - - - - - - - - - + + diff --git a/code/multiline/solutions/de.slisson.mps.editor.multiline.runtime/models/de/slisson/mps/editor/multiline/runtime/plugin.mps b/code/multiline/solutions/de.slisson.mps.editor.multiline.runtime/models/de/slisson/mps/editor/multiline/runtime/plugin.mps index f0cb0da51..aebda11a8 100644 --- a/code/multiline/solutions/de.slisson.mps.editor.multiline.runtime/models/de/slisson/mps/editor/multiline/runtime/plugin.mps +++ b/code/multiline/solutions/de.slisson.mps.editor.multiline.runtime/models/de/slisson/mps/editor/multiline/runtime/plugin.mps @@ -10,6 +10,7 @@ + diff --git a/code/multiline/solutions/test.de.slisson.mps.editor.multiline/models/test.de.slisson.mps.editor.multiline@tests.mps b/code/multiline/solutions/test.de.slisson.mps.editor.multiline/models/test.de.slisson.mps.editor.multiline@tests.mps new file mode 100644 index 000000000..9a976d39c --- /dev/null +++ b/code/multiline/solutions/test.de.slisson.mps.editor.multiline/models/test.de.slisson.mps.editor.multiline@tests.mps @@ -0,0 +1,1977 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/multiline/solutions/test.de.slisson.mps.editor.multiline/test.de.slisson.mps.editor.multiline.msd b/code/multiline/solutions/test.de.slisson.mps.editor.multiline/test.de.slisson.mps.editor.multiline.msd new file mode 100644 index 000000000..15ffc23c7 --- /dev/null +++ b/code/multiline/solutions/test.de.slisson.mps.editor.multiline/test.de.slisson.mps.editor.multiline.msd @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + 26a9201d-e70b-4755-acd6-40baf7a63b3a(de.slisson.mps.editor.multiline.demolang) + 5b1f863d-65a0-41a6-a801-33896be24202(jetbrains.mps.ide.editor) + 1ed103c3-3aa6-49b7-9c21-6765ee11f224(MPS.Editor) + 92d2ea16-5a42-4fdf-a676-c7604efe3504(de.slisson.mps.richtext) + 6354ebe7-c22a-4a0f-ac54-50b52ab9b065(JDK) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/richtext/languages/de.slisson.mps.richtext.test/de.slisson.mps.richtext.test.mpl b/code/richtext/languages/de.slisson.mps.richtext.test/de.slisson.mps.richtext.test.mpl new file mode 100644 index 000000000..709231fac --- /dev/null +++ b/code/richtext/languages/de.slisson.mps.richtext.test/de.slisson.mps.richtext.test.mpl @@ -0,0 +1,170 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + fc4584d6-365c-4ceb-b660-b2c91933024d(jetbrains.mps.lang.test#1210261198005) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + f3061a53-9226-4cc5-a443-f952ceaf5816(jetbrains.mps.baseLanguage) + 18bc6592-03a6-4e29-a83a-7ff23bde13ba(jetbrains.mps.lang.editor) + 2d3c70e9-aab2-4870-8d8d-6036800e4103(jetbrains.mps.kernel) + 8585453e-6bfb-4d80-98de-b16074f1d86c(jetbrains.mps.lang.test) + 1ed103c3-3aa6-49b7-9c21-6765ee11f224(MPS.Editor) + 6354ebe7-c22a-4a0f-ac54-50b52ab9b065(JDK) + ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core) + e85618c0-260a-4538-97d6-32f6c5e74e74(de.slisson.mps.richtext.test.runtime) + 92d2ea16-5a42-4fdf-a676-c7604efe3504(de.slisson.mps.richtext) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + e85618c0-260a-4538-97d6-32f6c5e74e74(de.slisson.mps.richtext.test.runtime) + + + f3061a53-9226-4cc5-a443-f952ceaf5816(jetbrains.mps.baseLanguage) + + + diff --git a/code/richtext/languages/de.slisson.mps.richtext.test/generator/templates/de.slisson.mps.richtext.test.generator.templates@generator.mps b/code/richtext/languages/de.slisson.mps.richtext.test/generator/templates/de.slisson.mps.richtext.test.generator.templates@generator.mps new file mode 100644 index 000000000..846c40f94 --- /dev/null +++ b/code/richtext/languages/de.slisson.mps.richtext.test/generator/templates/de.slisson.mps.richtext.test.generator.templates@generator.mps @@ -0,0 +1,206 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.behavior.mps b/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.behavior.mps new file mode 100644 index 000000000..9dbce0901 --- /dev/null +++ b/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.behavior.mps @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.constraints.mps b/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.constraints.mps new file mode 100644 index 000000000..dc0fc1bd0 --- /dev/null +++ b/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.constraints.mps @@ -0,0 +1,132 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.editor.mps b/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.editor.mps new file mode 100644 index 000000000..1d6e78460 --- /dev/null +++ b/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.editor.mps @@ -0,0 +1,202 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.intentions.mps b/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.intentions.mps new file mode 100644 index 000000000..a299f8d4f --- /dev/null +++ b/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.intentions.mps @@ -0,0 +1,476 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.structure.mps b/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.structure.mps new file mode 100644 index 000000000..91e00e74f --- /dev/null +++ b/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.structure.mps @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.typesystem.mps b/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.typesystem.mps new file mode 100644 index 000000000..f57bb0569 --- /dev/null +++ b/code/richtext/languages/de.slisson.mps.richtext.test/models/de.slisson.mps.richtext.test.typesystem.mps @@ -0,0 +1,84 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/richtext/languages/richtext/languageModels/behavior.mps b/code/richtext/languages/richtext/languageModels/behavior.mps index 53b855cb1..d2bb5364a 100644 --- a/code/richtext/languages/richtext/languageModels/behavior.mps +++ b/code/richtext/languages/richtext/languageModels/behavior.mps @@ -1442,7 +1442,21 @@ - + + + + + + + + + + + + + + + diff --git a/code/richtext/languages/richtext/languageModels/constraints.mps b/code/richtext/languages/richtext/languageModels/constraints.mps index e3d152b82..179f7d22e 100644 --- a/code/richtext/languages/richtext/languageModels/constraints.mps +++ b/code/richtext/languages/richtext/languageModels/constraints.mps @@ -5,7 +5,20 @@ - - + + + + + + + + + + + + + + + diff --git a/code/richtext/languages/richtext/languageModels/editor.mps b/code/richtext/languages/richtext/languageModels/editor.mps index da9fc8eb8..8fdec964a 100644 --- a/code/richtext/languages/richtext/languageModels/editor.mps +++ b/code/richtext/languages/richtext/languageModels/editor.mps @@ -53,6 +53,9 @@ + + + @@ -1862,6 +1865,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -5237,28 +5269,52 @@ - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + - - + + + + + + + + + + + + + + + + @@ -5275,18 +5331,8 @@ - - - - - - - - - - - - + + @@ -6355,238 +6401,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -6862,14 +6676,29 @@ - - - + + + + + + + + + + + + + + + + + + - - - + + + @@ -7681,14 +7510,29 @@ - - - + + + + + + + + + + + + + + + + + + - - - + + + @@ -7918,28 +7762,52 @@ - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + - - + + + + + + + + + + + + + + + + diff --git a/code/richtext/languages/richtext/languageModels/plugin.mps b/code/richtext/languages/richtext/languageModels/plugin.mps index b5d553d64..08c4c7491 100644 --- a/code/richtext/languages/richtext/languageModels/plugin.mps +++ b/code/richtext/languages/richtext/languageModels/plugin.mps @@ -35,6 +35,7 @@ + @@ -50,10 +51,7 @@ - - - @@ -64,7 +62,6 @@ - @@ -92,7 +89,6 @@ - @@ -128,9 +124,7 @@ - - - + @@ -142,6 +136,9 @@ + + + @@ -202,22 +199,18 @@ + + - - - - - - @@ -238,8 +231,13 @@ - + + + + + + @@ -247,11 +245,7 @@ - - - - - + @@ -305,32 +299,53 @@ - - - - - - - + + + + + + + + + + + - + - + - - - - - + + + + + + + + + + + + + + + + + + + + + + @@ -413,12 +428,26 @@ - - - + + + + + + + + + + + + - - + + + + + + + @@ -435,32 +464,53 @@ - - - - - - - + + + + + + + + + + + - + - + - - - - - + + + + + + + + + + + + + + + + + + + + + + @@ -535,20 +585,34 @@ - - - - + + + + - - - + + + + + + + + + + + + - - + + + + + + + @@ -565,32 +629,53 @@ - - - - - - - + + + + + + + + + + + - + - + - - - - - + + + + + + + + + + + + + + + + + + + + + + @@ -665,20 +750,34 @@ - - - - + + + + - - - + + + + + + + + + + + + - - + + + + + + + @@ -695,32 +794,53 @@ - - - - - - - + + + + + + + + + + + - + - + - - - - - + + + + + + + + + + + + + + + + + + + + + + @@ -795,20 +915,34 @@ - - - - + + + + - - - + + + + + + + + + + + + - - + + + + + + + @@ -954,253 +1088,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -1344,35 +1231,83 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - + + + + + + + + + + + + + + + + + + - - + + + + + + + + + + + + + + + + + + + + - - + + + + + + + + + + + + + + + + + + + + @@ -1438,14 +1373,29 @@ - - - + + + + + + + + + + + + + + + + + + - - - + + + @@ -1480,25 +1430,50 @@ - - - - + + + + + - - - - - + + + + + + + - - + + + + + + + + + + + + + - - + + + + + + + + + + + + + @@ -1508,13 +1483,6 @@ - - - - - - - @@ -1577,25 +1545,50 @@ - - - - - - - - - - + + + + + + + + + + + + + - - + + + + + + + + + + + + + - - + + + + + + + + + + + + + @@ -1635,25 +1628,50 @@ - - - - - - - - - - + + + + + + + + + + + + + - - + + + + + + + + + + + + + - - + + + + + + + + + + + + + @@ -1667,18 +1685,18 @@ - - + + - + - - + + - - - + + + @@ -1686,101 +1704,134 @@ - - - - - - + + + + - - - + + + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - + + + + + - + + + + + + + + + + + + + + - - - + + - + - + - - - - - - - - - + + + - + - - - + + + - + + + + + + + - - - - - - + + + + + + - + - + - - + + @@ -1795,8 +1846,24 @@ - - + + + + + + + + + + + + + + + + + + @@ -1827,55 +1894,83 @@ - - - - - - + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - + + + + + - + + + + + + + + + + + + + + + + @@ -1901,13 +1996,13 @@ - - + + - + @@ -1950,9 +2045,25 @@ - - - + + + + + + + + + + + + + + + + + + + diff --git a/code/richtext/languages/richtext/models/de/slisson/mps/richtext/runtime.mps b/code/richtext/languages/richtext/models/de/slisson/mps/richtext/runtime.mps index 8221db401..53cc4fbc0 100644 --- a/code/richtext/languages/richtext/models/de/slisson/mps/richtext/runtime.mps +++ b/code/richtext/languages/richtext/models/de/slisson/mps/richtext/runtime.mps @@ -6,8 +6,8 @@ - + @@ -20,6 +20,7 @@ + @@ -182,10 +183,14 @@ + + + + @@ -233,6 +238,7 @@ + @@ -390,6 +396,28 @@ + + + + + + + + + + + + + + + + + + + + + + @@ -398,15 +426,48 @@ - - - + + + - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -584,6 +645,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -592,20 +680,48 @@ - - - + + + - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/richtext/languages/richtext/models/de/slisson/mps/richtext/runtime/selection.mps b/code/richtext/languages/richtext/models/de/slisson/mps/richtext/runtime/selection.mps index 53539d4e7..8aa0df01a 100644 --- a/code/richtext/languages/richtext/models/de/slisson/mps/richtext/runtime/selection.mps +++ b/code/richtext/languages/richtext/models/de/slisson/mps/richtext/runtime/selection.mps @@ -2489,12 +2489,12 @@ - + - + @@ -2503,36 +2503,60 @@ - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - + + - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -4981,12 +5005,12 @@ - - - + + + @@ -5013,8 +5037,15 @@ - - + + + + + + + + + diff --git a/code/richtext/solutions/de.slisson.mps.richtext.test.runtime/de.slisson.mps.richtext.test.runtime.msd b/code/richtext/solutions/de.slisson.mps.richtext.test.runtime/de.slisson.mps.richtext.test.runtime.msd new file mode 100644 index 000000000..a35ace823 --- /dev/null +++ b/code/richtext/solutions/de.slisson.mps.richtext.test.runtime/de.slisson.mps.richtext.test.runtime.msd @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/richtext/solutions/de.slisson.mps.richtext.test.runtime/models/de.slisson.mps.richtext.test.runtime.mps b/code/richtext/solutions/de.slisson.mps.richtext.test.runtime/models/de.slisson.mps.richtext.test.runtime.mps new file mode 100644 index 000000000..debc82552 --- /dev/null +++ b/code/richtext/solutions/de.slisson.mps.richtext.test.runtime/models/de.slisson.mps.richtext.test.runtime.mps @@ -0,0 +1,216 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/richtext/solutions/test.de.slisson.mps.richtext/models/test.de.slisson.mps.richtext@tests.mps b/code/richtext/solutions/test.de.slisson.mps.richtext/models/test.de.slisson.mps.richtext@tests.mps new file mode 100644 index 000000000..104a1c2df --- /dev/null +++ b/code/richtext/solutions/test.de.slisson.mps.richtext/models/test.de.slisson.mps.richtext@tests.mps @@ -0,0 +1,2572 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/richtext/solutions/test.de.slisson.mps.richtext/test.de.slisson.mps.richtext.msd b/code/richtext/solutions/test.de.slisson.mps.richtext/test.de.slisson.mps.richtext.msd new file mode 100644 index 000000000..0721110ea --- /dev/null +++ b/code/richtext/solutions/test.de.slisson.mps.richtext/test.de.slisson.mps.richtext.msd @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + 5b1f863d-65a0-41a6-a801-33896be24202(jetbrains.mps.ide.editor) + dc038ceb-b7ea-4fea-ac12-55f7400e97ba(de.slisson.mps.editor.multiline.runtime) + 92d2ea16-5a42-4fdf-a676-c7604efe3504(de.slisson.mps.richtext) + e85618c0-260a-4538-97d6-32f6c5e74e74(de.slisson.mps.richtext.test.runtime) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/extensions/editor/richtext.md b/docs/extensions/editor/richtext.md index bd43c32ec..213703f39 100644 --- a/docs/extensions/editor/richtext.md +++ b/docs/extensions/editor/richtext.md @@ -32,7 +32,6 @@ This languages add additional keyboard shortcuts to the editor: | ++ctrl+del++ | delete text until the end of the word | | ++ctrl+shift+back++ | delete text until the start of the line | | ++ctrl+shift+del++ | delete text until end of the line | -| ++ctrl+d++ | duplicate the current line | | ++shift+left++ | increase selection to the character to the left | | ++shift+right++ | increase selection to the character to the right | | ++alt+shift+left++ | increase selection to the start of the word | @@ -49,7 +48,6 @@ This languages add additional keyboard shortcuts to the editor: | ++cmd+del++ | delete text until the end of the word | | ++cmd+shift+back++ | delete text until the start of the line | | ++cmd+shift+del++ | delete text until end of the line | -| ++cmd+d++ | duplicate the current line | | ++shift+left++ | increase selection to the character to the left | | ++shift+right++ | increase selection to the character to the right | | ++alt+shift+left++ | increase selection to the start of the word |