0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-02-10 23:36:14 -05:00

Improved the keyboard shortcuts for lists and when no text is selected.

The cursor will now be placed in the middle of the inserted Markdown when no text is selected. Lists keep tabbed format.
This commit is contained in:
Matthew Harrison-Jones 2013-08-20 12:44:47 +01:00
parent 211f0ff9c6
commit 3d69fb50e5

View file

@ -15,7 +15,7 @@
self.replace();
},
replace: function () {
var text = this.elem.getSelection(), pass = true, md, cursor, line, word, converter;
var text = this.elem.getSelection(), pass = true, md, cursor, line, word, letterCount, converter;
switch (this.style) {
case "h1":
cursor = this.elem.getCursor();
@ -93,13 +93,18 @@
break;
case "copyHTML":
converter = new Showdown.converter();
md = converter.makeHtml(text);
if (text) {
md = converter.makeHtml(text);
} else {
md = converter.makeHtml(this.elem.getValue());
}
$(".modal-copyToHTML-content").text(md).selectText();
$(".js-modal").center();
pass = false;
break;
case "list":
md = text.replace(/^/gm, "* ");
md = text.replace(/^(\s*)(\w\W*)/gm, "$1* $2");
this.elem.replaceSelection(md, "end");
pass = false;
break;
@ -113,6 +118,11 @@
}
if (pass && md) {
this.elem.replaceSelection(md, "end");
if (!text) {
letterCount = md.length;
cursor = this.elem.getCursor();
this.elem.setCursor({line: cursor.line, ch: cursor.ch - (letterCount / 2)});
}
}
}
};