(() => {
const doc = document;
doc.exec = doc.execCommand;
+ const ls = (() => {
+ try { return localStorage; }
+ catch (e) { return {}; }
+ })();
const getSelNode = () => {
const node = doc.getSelection().anchorNode;
return [dt.getFullYear(), (month > 9 ? '' : '0') + month, (day > 9 ? '' : '0') + day].join('.');
};
+ const initialize = () => {
+ if (doc.title === "") {
+ content.innerHTML = !!ls['content'] ? ls['content'] : "<p> </p>";
+ header.innerHTML = !!ls['header'] ? ls['header']
+ : '<h1 align="center" contenteditable="true">' + ymd_string() + '</h1><hr/>' ;
+ doc.title = header.innerText;
+ }
+
+ content.onkeydown = (ev) => (!!keys[ev.key] ? (keys[ev.key])(ev) : true);
+ header.onkeyup = (ev) => {
+ doc.title = header.innerText;
+ ls['header'] = header.innerHTML;
+ ls['content'] = content.innerHTML;
+ };
+ content.focus();
+ }
+
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);
return !doc.exec((ev.shiftKey ? "out" : "in")+"dent",false);
},
+ "\\": (ev) => init(),
";": (ev) => keyCmd(ev, "insertHTML", "<code>\r\n</code>"),
"'": (ev) => {
if (ctrlHeld(ev)) {
},
};
- 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 = '<h1 align="center" contenteditable="true">' + ymd_string() + '</h1><hr/>';
- doc.title = header.innerText;
- }
+ initialize();
})();
(() => {
const doc = document;
doc.exec = doc.execCommand;
+ const ls = (() => {
+ try { return localStorage; }
+ catch (e) { return {}; }
+ })();
const getSelNode = () => {
const node = doc.getSelection().anchorNode;
return [dt.getFullYear(), (month > 9 ? '' : '0') + month, (day > 9 ? '' : '0') + day].join('.');
};
+ const initialize = () => {
+ if (doc.title === "") {
+ content.innerHTML = !!ls['content'] ? ls['content'] : "<p> </p>";
+ header.innerHTML = !!ls['header'] ? ls['header']
+ : '<h1 align="center" contenteditable="true">' + ymd_string() + '</h1><hr/>' ;
+ doc.title = header.innerText;
+ }
+
+ content.onkeydown = (ev) => (!!keys[ev.key] ? (keys[ev.key])(ev) : true);
+ header.onkeyup = (ev) => {
+ doc.title = header.innerText;
+ ls['header'] = header.innerHTML;
+ ls['content'] = content.innerHTML;
+ };
+ content.focus();
+ }
+
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);
return !doc.exec((ev.shiftKey ? "out" : "in")+"dent",false);
},
+ "\\": (ev) => init(),
";": (ev) => keyCmd(ev, "insertHTML", "<code>\r\n</code>"),
"'": (ev) => {
if (ctrlHeld(ev)) {
},
};
- 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 = '<h1 align="center" contenteditable="true">' + ymd_string() + '</h1><hr/>';
- doc.title = header.innerText;
- }
+ initialize();
})();
</script>
</body>