mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2025-09-11 07:16:08 +00:00
Add codemirror option to show trailing space (#7493)
* codemirror edit/trailingspace addon (default off) * refactor as codemirror-trailingspace plugin * copy cm-trailingspace styles from cm demo
This commit is contained in:
@@ -0,0 +1,4 @@
|
|||||||
|
title: $:/language/codemirror/
|
||||||
|
|
||||||
|
showTrailingSpace/hint: Show trailing space
|
||||||
|
showTrailingSpace/info: Trailing space on each line will be decorated as per theme CSS.
|
@@ -0,0 +1,3 @@
|
|||||||
|
title: $:/config/codemirror/showTrailingSpace
|
||||||
|
type: bool
|
||||||
|
text: true
|
@@ -0,0 +1,5 @@
|
|||||||
|
.cm-trailingspace {
|
||||||
|
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAACCAYAAAB/qH1jAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QUXCToH00Y1UgAAACFJREFUCNdjPMDBUc/AwNDAAAFMTAwMDA0OP34wQgX/AQBYgwYEx4f9lQAAAABJRU5ErkJggg==);
|
||||||
|
background-position: bottom left;
|
||||||
|
background-repeat: repeat-x;
|
||||||
|
}
|
@@ -0,0 +1,27 @@
|
|||||||
|
// CodeMirror, copyright (c) by Marijn Haverbeke and others
|
||||||
|
// Distributed under an MIT license: https://codemirror.net/5/LICENSE
|
||||||
|
|
||||||
|
(function(mod) {
|
||||||
|
if (typeof exports == "object" && typeof module == "object") // CommonJS
|
||||||
|
mod(require("../../lib/codemirror"));
|
||||||
|
else if (typeof define == "function" && define.amd) // AMD
|
||||||
|
define(["../../lib/codemirror"], mod);
|
||||||
|
else // Plain browser env
|
||||||
|
mod(CodeMirror);
|
||||||
|
})(function(CodeMirror) {
|
||||||
|
CodeMirror.defineOption("showTrailingSpace", false, function(cm, val, prev) {
|
||||||
|
if (prev == CodeMirror.Init) prev = false;
|
||||||
|
if (prev && !val)
|
||||||
|
cm.removeOverlay("trailingspace");
|
||||||
|
else if (!prev && val)
|
||||||
|
cm.addOverlay({
|
||||||
|
token: function(stream) {
|
||||||
|
for (var l = stream.string.length, i = l; i && /\s/.test(stream.string.charAt(i - 1)); --i) {}
|
||||||
|
if (i > stream.pos) { stream.pos = i; return null; }
|
||||||
|
stream.pos = l;
|
||||||
|
return "trailingspace";
|
||||||
|
},
|
||||||
|
name: "trailingspace"
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
19
plugins/tiddlywiki/codemirror-trailingspace/files/tiddlywiki.files
Executable file
19
plugins/tiddlywiki/codemirror-trailingspace/files/tiddlywiki.files
Executable file
@@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"tiddlers": [
|
||||||
|
{
|
||||||
|
"file": "addon/edit/trailingspace.css",
|
||||||
|
"fields": {
|
||||||
|
"type": "text/css",
|
||||||
|
"title": "$:/plugins/tiddlywiki/codemirror/addon/edit/trailingspace.css",
|
||||||
|
"tags": "[[$:/tags/Stylesheet]]"
|
||||||
|
}
|
||||||
|
},{
|
||||||
|
"file": "addon/edit/trailingspace.js",
|
||||||
|
"fields": {
|
||||||
|
"type": "application/javascript",
|
||||||
|
"title": "$:/plugins/tiddlywiki/codemirror/addon/edit/trailingspace.js",
|
||||||
|
"module-type": "codemirror"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
7
plugins/tiddlywiki/codemirror-trailingspace/plugin.info
Executable file
7
plugins/tiddlywiki/codemirror-trailingspace/plugin.info
Executable file
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"title": "$:/plugins/tiddlywiki/codemirror-trailingspace",
|
||||||
|
"name": "CodeMirror Show Trailing Space",
|
||||||
|
"description": "Show trailing space in CodeMirror",
|
||||||
|
"parent-plugin": "$:/plugins/tiddlywiki/codemirror",
|
||||||
|
"list": "readme"
|
||||||
|
}
|
7
plugins/tiddlywiki/codemirror-trailingspace/readme.tid
Executable file
7
plugins/tiddlywiki/codemirror-trailingspace/readme.tid
Executable file
@@ -0,0 +1,7 @@
|
|||||||
|
title: $:/plugins/tiddlywiki/codemirror-trailingspace/readme
|
||||||
|
|
||||||
|
This plugin contains the [[trailingspace|https://codemirror.net/5/doc/manual.html#addon_trailingspace]]
|
||||||
|
addon for CodeMirror, and provides a default style (red squiggles).
|
||||||
|
|
||||||
|
First install the [[CodeMirror plugin|$:/plugins/tiddlywiki/codemirror]].
|
||||||
|
|
@@ -0,0 +1,11 @@
|
|||||||
|
title: $:/core/ui/ControlPanel/Settings/codemirror/showTrailingSpace
|
||||||
|
tags: $:/tags/ControlPanel/Settings/CodeMirror
|
||||||
|
caption: {{$:/language/codemirror/showTrailingSpace/hint}}
|
||||||
|
|
||||||
|
\define lingo-base() $:/language/codemirror/showTrailingSpace/
|
||||||
|
<<lingo hint>>
|
||||||
|
|
||||||
|
<$checkbox tiddler="$:/config/codemirror/showTrailingSpace" field="text" checked="true" unchecked="false" default="true">
|
||||||
|
<$link to="$:/config/codemirror/showTrailingSpace"><<lingo info>></$link>
|
||||||
|
</$checkbox>
|
||||||
|
|
Reference in New Issue
Block a user