Make enter play nicer with indentation
This commit is contained in:
parent
3ad23f3a91
commit
550f1b44b2
@ -1,7 +1,7 @@
|
||||
[
|
||||
{
|
||||
"sheet_type": "code",
|
||||
"value": "x = code_sheet(1);\nreturn {\n\tinit: () => {y = 0},\n\tupdate: () => {\n\t\ty += speed;\n\t\tif (y > 127) {\n\t\t\ty = -6\n\t\t}\n\t},\n\tdraw: () => {\n\t\tcls();\n\t\ttxt(x, y, 'hello world')\n\t}\n}"
|
||||
"value": "x = code(1);\nreturn {\n\tinit: () => {y = 0},\n\tupdate: () => {\n\t\ty += speed;\n\t\tif (y > 127) {\n\t\t\ty = -6\n\t\t}\n\t},\n\tdraw: () => {\n\t\tcls();\n\t\ttxt(x, y, 'hello world')\n\t}\n}"
|
||||
},
|
||||
{
|
||||
"sheet_type": "code",
|
||||
|
14
codetab.ts
14
codetab.ts
@ -163,6 +163,18 @@ const state = {
|
||||
this.scrollX = focusX*fw-128+fw;
|
||||
}
|
||||
},
|
||||
currentIndentation() {
|
||||
const lines = this.code.slice(0, this.focus).split("\n");
|
||||
const line = lines[lines.length-1];
|
||||
const match = line.match(/^\s*/);
|
||||
if (!match) {
|
||||
return "";
|
||||
}
|
||||
console.log(lines);
|
||||
console.log(line);
|
||||
console.log(match);
|
||||
return match[0];
|
||||
},
|
||||
get code() {
|
||||
return getCodeSheet(0);
|
||||
},
|
||||
@ -401,7 +413,7 @@ const update = async () => {
|
||||
|
||||
if (keyPressed(K.ENTER)) {
|
||||
// TODO: Make this play nicely with indentation
|
||||
state.insertText("\n");
|
||||
state.insertText("\n"+state.currentIndentation());
|
||||
state.scrollToCursor();
|
||||
}
|
||||
if (keyPressed(K.TAB)) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user