update textmate theme conversion script

This commit is contained in:
Fabian Jakobs 2011-02-17 08:12:27 +01:00
commit e3e3ec93b4
2 changed files with 45 additions and 8 deletions

View file

@ -159,17 +159,17 @@ function fillTemplate(template, replacements) {
}
function createTheme(name, styles, cssTemplate, jsTemplate) {
styles.cssClass = "ace" + hyphenate(name);
styles.cssClass = "ace-" + hyphenate(name);
var css = fillTemplate(cssTemplate, styles);
return fillTemplate(jsTemplate, {
name: name,
css: '"' + css.replace(/\\/, "\\\\").replace(/"/g, '\\"').replace(/\n/g, "\\\n") + '"',
cssClass: "ace" + hyphenate(name)
cssClass: "ace-" + hyphenate(name)
});
};
function hyphenate(str) {
return str.replace(/([A-Z])/g, "-$1").toLowerCase();
return str.replace(/([A-Z])/g, "-$1").replace("_", "-").toLowerCase();
}
var cssTemplate = fs.readFileSync(__dirname + "/Theme.tmpl.css", "utf8");
@ -192,5 +192,5 @@ for (var name in themes) {
var tmTheme = fs.readFileSync(__dirname + "/tmthemes/" + themes[name] + ".tmTheme", "utf8");
var styles = extractStyles(parseTheme(tmTheme));
fs.writeFileSync(__dirname + "/../src/ace/theme/" + name + ".js", createTheme(name, styles, cssTemplate, jsTemplate));
fs.writeFileSync(__dirname + "/../lib/ace/theme/" + name + ".js", createTheme(name, styles, cssTemplate, jsTemplate));
}