demo use of themes
This commit is contained in:
parent
ed763c17bd
commit
b5a665c33e
3 changed files with 69 additions and 27 deletions
|
|
@ -128,13 +128,6 @@ copy({
|
|||
dest: data
|
||||
});
|
||||
|
||||
copy({
|
||||
source: [
|
||||
'build_support/editor.html'
|
||||
],
|
||||
dest: 'build/editor.html'
|
||||
});
|
||||
|
||||
// Create the compressed and uncompressed output files
|
||||
copy({
|
||||
source: data,
|
||||
|
|
@ -146,6 +139,14 @@ copy({
|
|||
dest: 'build/ace-uncompressed.js'
|
||||
});
|
||||
|
||||
copy({
|
||||
source: [
|
||||
'build_support/editor.html'
|
||||
],
|
||||
dest: 'build/editor.html'
|
||||
});
|
||||
|
||||
|
||||
// Create worker bootstrap code
|
||||
copy({
|
||||
source: "lib/ace/worker/worker.js",
|
||||
|
|
@ -155,7 +156,41 @@ copy({
|
|||
dest: 'build/worker.js'
|
||||
});
|
||||
|
||||
var eclipseTheme = copy.createDataObject();
|
||||
copy({
|
||||
source: [{
|
||||
root: aceHome + '/lib',
|
||||
include: "ace/theme/eclipse.js"
|
||||
}],
|
||||
filter: [ copy.filter.moduleDefines ],
|
||||
dest: eclipseTheme
|
||||
});
|
||||
copy({
|
||||
source: [{
|
||||
root: aceHome + '/lib',
|
||||
include: "ace/theme/eclipse.css"
|
||||
}],
|
||||
filter: [ copy.filter.addDefines ],
|
||||
dest: eclipseTheme
|
||||
});
|
||||
copy({
|
||||
source: eclipseTheme,
|
||||
dest: 'build/theme/eclipse.js'
|
||||
});
|
||||
|
||||
[
|
||||
"clouds", "clouds_midnight", "cobalt", "dawn", "idle_fingers", "kr_theme",
|
||||
"mono_industrial", "monokai", "pastel_on_dark", "twilight"
|
||||
].forEach(function(theme) {
|
||||
copy({
|
||||
source: [{
|
||||
root: aceHome + '/lib',
|
||||
include: "ace/theme/" + theme + ".js"
|
||||
}],
|
||||
filter: [ copy.filter.moduleDefines ],
|
||||
dest: "build/theme/" + theme + ".js"
|
||||
});
|
||||
});
|
||||
|
||||
function internalRequire(ignore) {
|
||||
var exports = {};
|
||||
|
|
|
|||
|
|
@ -41,38 +41,43 @@ if (window.document) {
|
|||
require("pilot/fixoldbrowsers");
|
||||
require("pilot/settings");
|
||||
|
||||
var catalog = require("pilot/plugin_manager").catalog;
|
||||
var Event = require("pilot/event");
|
||||
var EditSession = require("ace/edit_session").EditSession;
|
||||
var JavaScriptMode = require("ace/mode/javascript").Mode;
|
||||
var UndoManager = require("ace/undomanager").UndoManager;
|
||||
var Editor = require("ace/editor").Editor;
|
||||
var Renderer = require("ace/virtual_renderer").VirtualRenderer;
|
||||
var Theme = require("ace/theme/textmate");
|
||||
|
||||
var catalog = require("pilot/plugin_manager").catalog;
|
||||
catalog.registerPlugins([ "pilot/index" ]);
|
||||
|
||||
|
||||
var ace = {
|
||||
edit: function(el) {
|
||||
if (typeof(el) == "string") {
|
||||
el = document.getElementById(el);
|
||||
}
|
||||
|
||||
var doc = new EditSession(el.innerHTML);
|
||||
doc.setMode(new JavaScriptMode());
|
||||
doc.setUndoManager(new UndoManager());
|
||||
el.innerHTML = '';
|
||||
|
||||
var editor = new Editor(new Renderer(el, "ace/theme/textmate"));
|
||||
editor.setSession(doc);
|
||||
|
||||
var env = require("pilot/environment").create();
|
||||
catalog.startupPlugins({ env: env }).then(function() {
|
||||
var EditSession = require("ace/edit_session").EditSession;
|
||||
var JavaScriptMode = require("ace/mode/javascript").Mode;
|
||||
var UndoManager = require("ace/undomanager").UndoManager;
|
||||
var Editor = require("ace/editor").Editor;
|
||||
var Renderer = require("ace/virtual_renderer").VirtualRenderer;
|
||||
var theme = require("ace/theme/textmate");
|
||||
|
||||
var doc = new EditSession(el.innerHTML);
|
||||
el.innerHTML = '';
|
||||
doc.setMode(new JavaScriptMode());
|
||||
doc.setUndoManager(new UndoManager());
|
||||
env.document = doc;
|
||||
env.editor = new Editor(new Renderer(el, theme));
|
||||
env.editor.setSession(doc);
|
||||
env.editor.resize();
|
||||
env.editor = env;
|
||||
editor.resize();
|
||||
Event.addListener(window, "resize", function() {
|
||||
env.editor.resize();
|
||||
editor.resize();
|
||||
});
|
||||
el.env = env;
|
||||
});
|
||||
});
|
||||
return editor;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
|
@ -18,10 +18,12 @@
|
|||
}</div>
|
||||
|
||||
<script src="ace-uncompressed.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script src="theme/twilight.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script>
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
ace.edit("editor");
|
||||
}, false);
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
var editor = ace.edit("editor");
|
||||
editor.setTheme("ace/theme/twilight");
|
||||
}, false);
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue