Skip to content
Prev Previous commit
Next Next commit
Changed the structure of the suffix-brush mapping, so the code is muc…
…h simpler and faster.
  • Loading branch information
suranyami committed Nov 24, 2010
commit a8ff00494b9fb09dab9b5f562316da161a6fadaf
110 changes: 86 additions & 24 deletions html/views/fileview/fileview.js
Original file line number Diff line number Diff line change
@@ -1,36 +1,98 @@
var showFile = function(txt, fileName) {
$("source").style.display = "";
var suffix_map = {
"objc": ["m", "h"],
"ruby": ["rb", "rbx", "rjs", "Rakefile", "rake", "gemspec", "irbrc", "capfile"],
"xml": ['xml', 'tld', 'jsp', 'pt', 'cpt', 'dtml', 'rss', 'opml', 'xsl', 'xslt'],
"javascript": ['js', 'htc', 'jsx', 'jscript', 'javascript'],
"sql": ['sql', 'ddl', 'dml'],
"sass": ['sass', 'scss'],
"bash": ['sh', 'bash', 'zsh', 'bashrc', 'bash_profile', 'bash_login', 'profile', 'bash_logout'],
"diff": ['diff', 'patch'],
"java": ['java', 'bsh'],
"css": ['css', 'css.erb'],
"perl": ['pl', 'pm', 'pod', 't', 'PL'],
"erlang": ['erl', 'hrl'],
"php": ['php'],
"python": ['py', 'rpy', 'pyw', 'cpy', 'SConstruct', 'Sconstruct', 'sconstruct', 'SConscript'],
"cpp": ['cc', 'cpp', 'cp', 'cxx', 'c++', 'C', 'h', 'hh', 'hpp', 'h++', 'c']
"m": "objc",
"h": "objc",

"rb": "ruby",
"rbx": "ruby",
"rjs": "ruby",
"Rakefile": "ruby",
"rake": "ruby",
"gemspec": "ruby",
"irbrc": "ruby",
"capfile": "ruby",

"xml": "xml",
"tld": "xml",
"jsp": "xml",
"pt": "xml",
"cpt": "xml",
"dtml": "xml",
"rss": "xml",
"opml": "xml",
"xsl": "xml",
"xslt": "xml",

"js": "javascript",
"htc": "javascript",
"jsx": "javascript",
"jscript": "javascript",
"javascript": "javascript",

"sql": "sql",
"ddl": "sql",
"dml": "sql",

"sass": "sass",
"scss": "sass",

"sh": "bash",
"bash": "bash",
"zsh": "bash",
"bashrc": "bash",
"bash_profile": "bash",
"bash_login": "bash",
"profile": "bash",
"bash_logout": "bash",

"diff": "diff",
"patch": "diff",

"java": "java",
"bsh": "java",

"css": "css",
"css": "css.erb",
"pl": "perl",
"pm": "perl",
"pod": "perl",
"t": "perl",
"PL": "perl",

"erl": "erlang",
"hrl": "erlang",

"php": "php",

"py": "python",
"rpy": "python",
"pyw": "python",
"cpy": "python",
"SConstruct": "python",
"Sconstruct": "python",
"sconstruct": "python",
"SConscript": "python",

"cc": "cpp",
"cpp": "cpp",
"cp": "cpp",
"cxx": "cpp",
"c++":"cpp",
"C": "cpp",
"h": "cpp",
"hh": "cpp",
"hpp": "cpp",
"cpp": "h++",
"c": "cpp"
}
var brush = "objc";
var suffix = "";
if (fileName && fileName != '') {
suffix = fileName.substr(fileName.lastIndexOf('.') + 1);
}
var keys = get_keys(suffix_map);
for (var key in keys) {
var suffixes = suffix_map[key];
for (var possible_suffix in suffixes) {
if (possible_suffix == suffix) {
brush = key;
}
}
}

brush = suffix_map[suffix];

$("source").innerHTML="<pre class='first-line: 1;brush: " + brush + "'>" + txt + "</pre>";

Expand Down