kopia lustrzana https://github.com/c9/core
add showLineNumbers option
rodzic
be47ad3785
commit
117ece00ef
|
@ -71,7 +71,7 @@
|
||||||
"c9.ide.language.javascript.infer": "#b9c2e4bdb8",
|
"c9.ide.language.javascript.infer": "#b9c2e4bdb8",
|
||||||
"c9.ide.language.jsonalyzer": "#a0549e14ff",
|
"c9.ide.language.jsonalyzer": "#a0549e14ff",
|
||||||
"c9.ide.language.codeintel": "#4e0a272229",
|
"c9.ide.language.codeintel": "#4e0a272229",
|
||||||
"c9.ide.collab": "#d149eae786",
|
"c9.ide.collab": "#39fc27d13f",
|
||||||
"c9.ide.local": "#9169fec157",
|
"c9.ide.local": "#9169fec157",
|
||||||
"c9.ide.find": "#e632ecf4be",
|
"c9.ide.find": "#e632ecf4be",
|
||||||
"c9.ide.find.infiles": "#ad9ff74638",
|
"c9.ide.find.infiles": "#ad9ff74638",
|
||||||
|
|
|
@ -241,32 +241,33 @@ define(function(require, exports, module) {
|
||||||
["newLineMode", "unix", STRING, "newlinemode", 1],
|
["newLineMode", "unix", STRING, "newlinemode", 1],
|
||||||
// Per document
|
// Per document
|
||||||
["tabSize", "4", NUMBER, "tabsize", 1],
|
["tabSize", "4", NUMBER, "tabsize", 1],
|
||||||
["useSoftTabs", "true", BOOL, "softtabs", 1],
|
["useSoftTabs", true, BOOL, "softtabs", 1],
|
||||||
["guessTabSize", "true", BOOL, "guesstabsize", 1],
|
["guessTabSize", true, BOOL, "guesstabsize", 1],
|
||||||
["useWrapMode", "false", BOOL, "wrapmode"],
|
["useWrapMode", false, BOOL, "wrapmode"],
|
||||||
["wrapToView", "true", BOOL, "wrapmodeViewport"],
|
["wrapToView", true, BOOL, "wrapmodeViewport"],
|
||||||
|
|
||||||
// Ace
|
// Ace
|
||||||
["fontSize", "12", NUMBER, "fontsize"],
|
["fontSize", "12", NUMBER, "fontsize"],
|
||||||
["fontFamily", font, STRING, "fontfamily"],
|
["fontFamily", font, STRING, "fontfamily"],
|
||||||
["antialiasedfonts", "false", BOOL],
|
["antialiasedfonts", false, BOOL],
|
||||||
["overwrite", "false", BOOL, "overwrite"],
|
["overwrite", false, BOOL, "overwrite"],
|
||||||
["selectionStyle", "line", STRING, "selectstyle"],
|
["selectionStyle", "line", STRING, "selectstyle"],
|
||||||
["cursorStyle", "ace", STRING, "cursorstyle"],
|
["cursorStyle", "ace", STRING, "cursorstyle"],
|
||||||
["highlightActiveLine", "true", BOOL, "activeline"],
|
["highlightActiveLine", true, BOOL, "activeline"],
|
||||||
["highlightGutterLine", "true", BOOL, "gutterline"],
|
["highlightGutterLine", true, BOOL, "gutterline"],
|
||||||
["showInvisibles", "false", BOOL, "showinvisibles"],
|
["showInvisibles", false, BOOL, "showinvisibles"],
|
||||||
["showPrintMargin", "true", BOOL, "showprintmargin"],
|
["showPrintMargin", true, BOOL, "showprintmargin"],
|
||||||
["displayIndentGuides", "true", BOOL, "showindentguides"],
|
["displayIndentGuides", true, BOOL, "showindentguides"],
|
||||||
["printMarginColumn", "80", NUMBER, "printmargincolumn"],
|
["printMarginColumn", "80", NUMBER, "printmargincolumn"],
|
||||||
["behavioursEnabled", "true", BOOL, "behaviors"],
|
["behavioursEnabled", true, BOOL, "behaviors"],
|
||||||
["wrapBehavioursEnabled", "false", BOOL, "wrapbehaviors"],
|
["wrapBehavioursEnabled", false, BOOL, "wrapbehaviors"],
|
||||||
["scrollSpeed", "2", NUMBER, "scrollspeed"],
|
["scrollSpeed", "2", NUMBER, "scrollspeed"],
|
||||||
["showGutter", "true", BOOL, "gutter"],
|
["showGutter", true, BOOL, "gutter"],
|
||||||
["showFoldWidgets", "true", BOOL, "folding"],
|
["showLineNumbers", true, STRING],
|
||||||
["fadeFoldWidgets", "true", BOOL, "fadefoldwidgets"],
|
["showFoldWidgets", true, BOOL, "folding"],
|
||||||
["highlightSelectedWord", "true", BOOL, "highlightselectedword"],
|
["fadeFoldWidgets", true, BOOL, "fadefoldwidgets"],
|
||||||
["animatedScroll", "true", BOOL, "animatedscroll"],
|
["highlightSelectedWord", true, BOOL, "highlightselectedword"],
|
||||||
|
["animatedScroll", true, BOOL, "animatedscroll"],
|
||||||
["scrollPastEnd", "0.5", NUMBER],
|
["scrollPastEnd", "0.5", NUMBER],
|
||||||
["mergeUndoDeltas", "off", STRING],
|
["mergeUndoDeltas", "off", STRING],
|
||||||
["theme", defaultThemes[skin], STRING, "theme"]
|
["theme", defaultThemes[skin], STRING, "theme"]
|
||||||
|
@ -825,6 +826,17 @@ define(function(require, exports, module) {
|
||||||
position: 6000,
|
position: 6000,
|
||||||
path: "user/ace/@showGutter"
|
path: "user/ace/@showGutter"
|
||||||
},
|
},
|
||||||
|
"Show Line Numbers" : {
|
||||||
|
type: "dropdown",
|
||||||
|
width: 150,
|
||||||
|
path: "user/ace/@showLineNumbers",
|
||||||
|
items: [
|
||||||
|
{ caption : "Normal", value : true },
|
||||||
|
{ caption : "Relative", value : "relative" },
|
||||||
|
{ caption : "None", value : false }
|
||||||
|
],
|
||||||
|
position: 6250
|
||||||
|
},
|
||||||
"Show Indent Guides" : {
|
"Show Indent Guides" : {
|
||||||
type: "checkbox",
|
type: "checkbox",
|
||||||
position: 6500,
|
position: 6500,
|
||||||
|
@ -1531,6 +1543,41 @@ define(function(require, exports, module) {
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/***** Gutter Renderers *****/
|
||||||
|
|
||||||
|
var relativeNumbers = {
|
||||||
|
getText: function(session, row) {
|
||||||
|
return (Math.abs(session.selection.lead.row - row) || (row + 1 + (row < 9 ? "\xb7" : ""))) + "";
|
||||||
|
},
|
||||||
|
getWidth: function(session, lastLineNumber, config) {
|
||||||
|
return session.getLength().toString().length * config.characterWidth;
|
||||||
|
},
|
||||||
|
update: function(e, editor) {
|
||||||
|
editor.renderer.$loop.schedule(editor.renderer.CHANGE_GUTTER);
|
||||||
|
},
|
||||||
|
attach: function(editor) {
|
||||||
|
editor.renderer.$gutterLayer.$renderer = this;
|
||||||
|
editor.on("changeSelection", this.update);
|
||||||
|
},
|
||||||
|
detach: function(editor) {
|
||||||
|
editor.renderer.$gutterLayer.$renderer = null;
|
||||||
|
editor.off("changeSelection", this.update);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
var noNumbers = {
|
||||||
|
getText: function(session, row) {
|
||||||
|
return "";
|
||||||
|
},
|
||||||
|
getWidth: function(session, lastLineNumber, config) {
|
||||||
|
return "";
|
||||||
|
},
|
||||||
|
attach: function(editor) {
|
||||||
|
},
|
||||||
|
detach: function(editor) {
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The ace handle, responsible for events that involve all ace
|
* The ace handle, responsible for events that involve all ace
|
||||||
* instances. This is the object you get when you request the ace
|
* instances. This is the object you get when you request the ace
|
||||||
|
@ -2148,6 +2195,23 @@ define(function(require, exports, module) {
|
||||||
if (session)
|
if (session)
|
||||||
session.$guessTabSize = false;
|
session.$guessTabSize = false;
|
||||||
break;
|
break;
|
||||||
|
case "showLineNumbers":
|
||||||
|
var renderer = ace.renderer;
|
||||||
|
var gutterRenderer = renderer.$gutterLayer.$renderer;
|
||||||
|
if (gutterRenderer && gutterRenderer.detach)
|
||||||
|
gutterRenderer.detach(ace);
|
||||||
|
if (value == "relative")
|
||||||
|
gutterRenderer = relativeNumbers;
|
||||||
|
else if (value)
|
||||||
|
gutterRenderer = null;
|
||||||
|
else
|
||||||
|
gutterRenderer = noNumbers;
|
||||||
|
|
||||||
|
renderer.$gutterLayer.$renderer = gutterRenderer;
|
||||||
|
if (gutterRenderer && gutterRenderer.attach)
|
||||||
|
gutterRenderer.attach(ace);
|
||||||
|
renderer.$loop.schedule(renderer.CHANGE_GUTTER);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (session && docLut[name]) // this can be called for session different than current ace session
|
if (session && docLut[name]) // this can be called for session different than current ace session
|
||||||
|
|
Ładowanie…
Reference in New Issue