Merge remote branch 'upstream/master'
This commit is contained in:
commit
dc84eac595
5 changed files with 88 additions and 85 deletions
|
|
@ -1105,6 +1105,7 @@ var EditSession = function(text, mode) {
|
||||||
CHAR_EXT = 2,
|
CHAR_EXT = 2,
|
||||||
PLACEHOLDER_START = 3,
|
PLACEHOLDER_START = 3,
|
||||||
PLACEHOLDER_BODY = 4,
|
PLACEHOLDER_BODY = 4,
|
||||||
|
PUNCTUATION = 9,
|
||||||
SPACE = 10,
|
SPACE = 10,
|
||||||
TAB = 11,
|
TAB = 11,
|
||||||
TAB_SPACE = 12;
|
TAB_SPACE = 12;
|
||||||
|
|
@ -1203,16 +1204,16 @@ var EditSession = function(text, mode) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// === ELSE ===
|
// === ELSE ===
|
||||||
// Search for the first non space/tab/placeholder token backwards.
|
// Search for the first non space/tab/placeholder/punctuation token backwards.
|
||||||
for (split; split != lastSplit - 1; split--) {
|
var minSplit = Math.max(split - 10, lastSplit - 1);
|
||||||
if (tokens[split] >= PLACEHOLDER_START) {
|
while (split > minSplit && tokens[split] < PLACEHOLDER_START) {
|
||||||
split++;
|
split --;
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
// If we found one, then add the split.
|
// If we found one, then add the split.
|
||||||
if (split > lastSplit) {
|
if (split > minSplit) {
|
||||||
addSplit(split);
|
while(split > minSplit && tokens[split] == PUNCTUATION)
|
||||||
|
split --;
|
||||||
|
addSplit(++split);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1220,7 +1221,7 @@ var EditSession = function(text, mode) {
|
||||||
split = lastSplit + wrapLimit;
|
split = lastSplit + wrapLimit;
|
||||||
// The split is inside of a CHAR or CHAR_EXT token and no space
|
// The split is inside of a CHAR or CHAR_EXT token and no space
|
||||||
// around -> force a split.
|
// around -> force a split.
|
||||||
addSplit(lastSplit + wrapLimit);
|
addSplit(split);
|
||||||
}
|
}
|
||||||
return splits;
|
return splits;
|
||||||
}
|
}
|
||||||
|
|
@ -1248,9 +1249,11 @@ var EditSession = function(text, mode) {
|
||||||
// Space
|
// Space
|
||||||
else if (c == 32) {
|
else if (c == 32) {
|
||||||
arr.push(SPACE);
|
arr.push(SPACE);
|
||||||
|
} else if((c > 39 && c < 48) || (c > 57 && c < 64)) {
|
||||||
|
arr.push(PUNCTUATION);
|
||||||
}
|
}
|
||||||
// full width characters
|
// full width characters
|
||||||
else if (isFullWidth(c)) {
|
else if (c >= 0x1100 && isFullWidth(c)) {
|
||||||
arr.push(CHAR, CHAR_EXT);
|
arr.push(CHAR, CHAR_EXT);
|
||||||
} else {
|
} else {
|
||||||
arr.push(CHAR);
|
arr.push(CHAR);
|
||||||
|
|
@ -1286,7 +1289,7 @@ var EditSession = function(text, mode) {
|
||||||
screenColumn += this.getScreenTabSize(screenColumn);
|
screenColumn += this.getScreenTabSize(screenColumn);
|
||||||
}
|
}
|
||||||
// full width characters
|
// full width characters
|
||||||
else if (isFullWidth(c)) {
|
else if (c >= 0x1100 && isFullWidth(c)) {
|
||||||
screenColumn += 2;
|
screenColumn += 2;
|
||||||
} else {
|
} else {
|
||||||
screenColumn += 1;
|
screenColumn += 1;
|
||||||
|
|
|
||||||
|
|
@ -93,8 +93,8 @@ var vimStates = {
|
||||||
},
|
},
|
||||||
vimcommand("(k|up)", "golineup"),
|
vimcommand("(k|up)", "golineup"),
|
||||||
vimcommand("(j|down)", "golinedown"),
|
vimcommand("(j|down)", "golinedown"),
|
||||||
vimcommand("(l|right)", "golineright"),
|
vimcommand("(l|right)", "gotoright"),
|
||||||
vimcommand("(h|left)", "golineleft"),
|
vimcommand("(h|left)", "gotoleft"),
|
||||||
{
|
{
|
||||||
key: "shift-g",
|
key: "shift-g",
|
||||||
exec: "gotoend"
|
exec: "gotoend"
|
||||||
|
|
|
||||||
|
|
@ -54,7 +54,7 @@ define(function(require, exports, module) {
|
||||||
var keywords = lang.arrayToMap((
|
var keywords = lang.arrayToMap((
|
||||||
"this|throw|then|try|typeof|super|switch|return|break|by)|continue|" +
|
"this|throw|then|try|typeof|super|switch|return|break|by)|continue|" +
|
||||||
"catch|class|in|instanceof|is|isnt|if|else|extends|for|forown|" +
|
"catch|class|in|instanceof|is|isnt|if|else|extends|for|forown|" +
|
||||||
"finally|function|while|when|new|not|delete|debugger|do|loop|of|off|" +
|
"finally|function|while|when|new|no|not|delete|debugger|do|loop|of|off|" +
|
||||||
"or|on|unless|until|and|yes").split("|")
|
"or|on|unless|until|and|yes").split("|")
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue