From: Michael D. Lowis Date: Fri, 1 Dec 2017 13:41:19 +0000 (-0500) Subject: switched to tabs over spaces X-Git-Url: https://git.mdlowis.com/?a=commitdiff_plain;h=3d265d06684901300abb8f154d8bf7c1ee55d03e;p=proto%2Fjournal.git switched to tabs over spaces --- diff --git a/editor.js b/editor.js index 1697355..9e6947f 100644 --- a/editor.js +++ b/editor.js @@ -1,69 +1,70 @@ "use strict"; (() => { - const doc = document; - doc.exec = doc.execCommand; + const doc = document; + doc.exec = doc.execCommand; - const getSelNode = () => { - const node = doc.getSelection().anchorNode; - return (node.nodeType === 3 ? node.parentNode : node); - }; + const getSelNode = () => { + const node = doc.getSelection().anchorNode; + return (node.nodeType === 3 ? node.parentNode : node); + }; - const ymd_string = () => { - const dt = new Date(), month = (dt.getMonth() + 1), day = dt.getDate(); - return [dt.getFullYear(), (month > 9 ? '' : '0') + month, (day > 9 ? '' : '0') + day].join('.'); - }; + const ymd_string = () => { + const dt = new Date(), month = (dt.getMonth() + 1), day = dt.getDate(); + return [dt.getFullYear(), (month > 9 ? '' : '0') + month, (day > 9 ? '' : '0') + day].join('.'); + }; - const ctrlHeld = (ev) => (ev.ctrlKey || ev.metaKey); - const inTag = (tag) => (getSelNode().nodeName === tag); - const keyCmd = (ev, cmd, arg) => (ctrlHeld(ev) ? !doc.exec(cmd, false, arg) : true); + const ctrlHeld = (ev) => (ev.ctrlKey || ev.metaKey); + const inTag = (tag) => (getSelNode().nodeName === tag); + const keyCmd = (ev, cmd, arg) => (ctrlHeld(ev) ? !doc.exec(cmd, false, arg) : true); - const keys = { - "b": (ev) => keyCmd(ev, "bold"), - "i": (ev) => keyCmd(ev, "italic"), - "u": (ev) => keyCmd(ev, "underline"), - "0": (ev) => keyCmd(ev, "formatBlock", "

"), - "1": (ev) => keyCmd(ev, "formatBlock", "

"), - "2": (ev) => keyCmd(ev, "formatBlock", "

"), - "3": (ev) => keyCmd(ev, "formatBlock", "

"), - "4": (ev) => keyCmd(ev, "formatBlock", "

"), - "5": (ev) => keyCmd(ev, "formatBlock", "

"), - "6": (ev) => keyCmd(ev, "formatBlock", "
"), - "7": (ev) => keyCmd(ev, "insertOrderedList"), - "8": (ev) => keyCmd(ev, "insertUnorderedList"), - "9": (ev) => { - if (ctrlHeld(ev)) { - const defurl = (inTag("A") ? getSelNode().href : "http://"); - const url = prompt("Enter URL:", defurl); - return !doc.exec((url !== null && url !== "" ? "createLink" : "unlink"), false, url); - } - return true; - }, + const keys = { + "b": (ev) => keyCmd(ev, "bold"), + "i": (ev) => keyCmd(ev, "italic"), + "u": (ev) => keyCmd(ev, "underline"), + "0": (ev) => keyCmd(ev, "formatBlock", "

"), + "1": (ev) => keyCmd(ev, "formatBlock", "

"), + "2": (ev) => keyCmd(ev, "formatBlock", "

"), + "3": (ev) => keyCmd(ev, "formatBlock", "

"), + "4": (ev) => keyCmd(ev, "formatBlock", "

"), + "5": (ev) => keyCmd(ev, "formatBlock", "

"), + "6": (ev) => keyCmd(ev, "formatBlock", "
"), + "7": (ev) => keyCmd(ev, "insertOrderedList"), + "8": (ev) => keyCmd(ev, "insertUnorderedList"), + "9": (ev) => { + if (ctrlHeld(ev)) { + const defurl = (inTag("A") ? getSelNode().href : "http://"); + const url = prompt("Enter URL:", defurl); + return !doc.exec((url !== null && url !== "" ? "createLink" : "unlink"), false, url); + } + return true; + }, - "Enter": () => !doc.exec(inTag("CODE") ? "insertHTML" : "insertParagraph", false, "\n"), + "Enter": () => !doc.exec(inTag("CODE") ? "insertHTML" : "insertParagraph", false, "\n"), - "Tab": (ev) => { - if (inTag("CODE")) - return !doc.exec("insertHTML",false,"\t"); - else - return !doc.exec((ev.shiftKey ? "out" : "in")+"dent",false); - }, + "Tab": (ev) => { + if (inTag("CODE")) + return !doc.exec("insertHTML",false,"\t"); + else + return !doc.exec((ev.shiftKey ? "out" : "in")+"dent",false); + }, - ";": (ev) => keyCmd(ev, "insertHTML", "\r\n"), - "'": (ev) => { - if (ctrlHeld(ev)) { - const block = (inTag("BLOCKQUOTE") ? "

" : "

"); - return !doc.exec("formatBlock", false, block); - } - return true; - }, - }; + ";": (ev) => keyCmd(ev, "insertHTML", "\r\n"), + "'": (ev) => { + if (ctrlHeld(ev)) { + const block = (inTag("BLOCKQUOTE") ? "

" : "

"); + return !doc.exec("formatBlock", false, block); + } + return true; + }, + }; - header.onkeyup = (ev) => (doc.title = header.innerText); - content.onkeydown = (ev) => (keys[ev.key] ? (keys[ev.key])(ev) : true); - content.focus(); - if (doc.title != "") { - header.innerHTML = '

' + ymd_string() + '


'; - doc.title = header.innerText; - } + header.onkeyup = (ev) => (doc.title = header.innerText); + content.onkeydown = (ev) => (keys[ev.key] ? (keys[ev.key])(ev) : true); + content.focus(); + + if (doc.title != "") { + header.innerHTML = '

' + ymd_string() + '


'; + doc.title = header.innerText; + } })(); diff --git a/index.html b/index.html index a718752..5f56cee 100644 --- a/index.html +++ b/index.html @@ -82,71 +82,72 @@ th:first-child, td:first-child { "use strict"; (() => { - const doc = document; - doc.exec = doc.execCommand; - - const getSelNode = () => { - const node = doc.getSelection().anchorNode; - return (node.nodeType === 3 ? node.parentNode : node); - }; - - const ymd_string = () => { - const dt = new Date(), month = (dt.getMonth() + 1), day = dt.getDate(); - return [dt.getFullYear(), (month > 9 ? '' : '0') + month, (day > 9 ? '' : '0') + day].join('.'); - }; - - const ctrlHeld = (ev) => (ev.ctrlKey || ev.metaKey); - const inTag = (tag) => (getSelNode().nodeName === tag); - const keyCmd = (ev, cmd, arg) => (ctrlHeld(ev) ? !doc.exec(cmd, false, arg) : true); - - const keys = { - "b": (ev) => keyCmd(ev, "bold"), - "i": (ev) => keyCmd(ev, "italic"), - "u": (ev) => keyCmd(ev, "underline"), - "0": (ev) => keyCmd(ev, "formatBlock", "

"), - "1": (ev) => keyCmd(ev, "formatBlock", "

"), - "2": (ev) => keyCmd(ev, "formatBlock", "

"), - "3": (ev) => keyCmd(ev, "formatBlock", "

"), - "4": (ev) => keyCmd(ev, "formatBlock", "

"), - "5": (ev) => keyCmd(ev, "formatBlock", "

"), - "6": (ev) => keyCmd(ev, "formatBlock", "
"), - "7": (ev) => keyCmd(ev, "insertOrderedList"), - "8": (ev) => keyCmd(ev, "insertUnorderedList"), - "9": (ev) => { - if (ctrlHeld(ev)) { - const defurl = (inTag("A") ? getSelNode().href : "http://"); - const url = prompt("Enter URL:", defurl); - return !doc.exec((url !== null && url !== "" ? "createLink" : "unlink"), false, url); - } - return true; - }, - - "Enter": () => !doc.exec(inTag("CODE") ? "insertHTML" : "insertParagraph", false, "\n"), - - "Tab": (ev) => { - if (inTag("CODE")) - return !doc.exec("insertHTML",false,"\t"); - else - return !doc.exec((ev.shiftKey ? "out" : "in")+"dent",false); - }, - - ";": (ev) => keyCmd(ev, "insertHTML", "\r\n"), - "'": (ev) => { - if (ctrlHeld(ev)) { - const block = (inTag("BLOCKQUOTE") ? "

" : "

"); - return !doc.exec("formatBlock", false, block); - } - return true; - }, - }; - - header.onkeyup = (ev) => (doc.title = header.innerText); - content.onkeydown = (ev) => (keys[ev.key] ? (keys[ev.key])(ev) : true); - content.focus(); - if (doc.title != "") { - header.innerHTML = '

' + ymd_string() + '


'; - doc.title = header.innerText; - } + const doc = document; + doc.exec = doc.execCommand; + + const getSelNode = () => { + const node = doc.getSelection().anchorNode; + return (node.nodeType === 3 ? node.parentNode : node); + }; + + const ymd_string = () => { + const dt = new Date(), month = (dt.getMonth() + 1), day = dt.getDate(); + return [dt.getFullYear(), (month > 9 ? '' : '0') + month, (day > 9 ? '' : '0') + day].join('.'); + }; + + const ctrlHeld = (ev) => (ev.ctrlKey || ev.metaKey); + const inTag = (tag) => (getSelNode().nodeName === tag); + const keyCmd = (ev, cmd, arg) => (ctrlHeld(ev) ? !doc.exec(cmd, false, arg) : true); + + const keys = { + "b": (ev) => keyCmd(ev, "bold"), + "i": (ev) => keyCmd(ev, "italic"), + "u": (ev) => keyCmd(ev, "underline"), + "0": (ev) => keyCmd(ev, "formatBlock", "

"), + "1": (ev) => keyCmd(ev, "formatBlock", "

"), + "2": (ev) => keyCmd(ev, "formatBlock", "

"), + "3": (ev) => keyCmd(ev, "formatBlock", "

"), + "4": (ev) => keyCmd(ev, "formatBlock", "

"), + "5": (ev) => keyCmd(ev, "formatBlock", "

"), + "6": (ev) => keyCmd(ev, "formatBlock", "
"), + "7": (ev) => keyCmd(ev, "insertOrderedList"), + "8": (ev) => keyCmd(ev, "insertUnorderedList"), + "9": (ev) => { + if (ctrlHeld(ev)) { + const defurl = (inTag("A") ? getSelNode().href : "http://"); + const url = prompt("Enter URL:", defurl); + return !doc.exec((url !== null && url !== "" ? "createLink" : "unlink"), false, url); + } + return true; + }, + + "Enter": () => !doc.exec(inTag("CODE") ? "insertHTML" : "insertParagraph", false, "\n"), + + "Tab": (ev) => { + if (inTag("CODE")) + return !doc.exec("insertHTML",false,"\t"); + else + return !doc.exec((ev.shiftKey ? "out" : "in")+"dent",false); + }, + + ";": (ev) => keyCmd(ev, "insertHTML", "\r\n"), + "'": (ev) => { + if (ctrlHeld(ev)) { + const block = (inTag("BLOCKQUOTE") ? "

" : "

"); + return !doc.exec("formatBlock", false, block); + } + return true; + }, + }; + + header.onkeyup = (ev) => (doc.title = header.innerText); + content.onkeydown = (ev) => (keys[ev.key] ? (keys[ev.key])(ev) : true); + content.focus(); + + if (doc.title != "") { + header.innerHTML = '

' + ymd_string() + '


'; + doc.title = header.innerText; + } })();