feat: 添加语言模式映射和获取函数以支持代码编辑器

This commit is contained in:
2026-04-10 19:39:06 +08:00
parent 6abef02001
commit 96b9eb57e2

View File

@@ -366,9 +366,41 @@ function resume(){
window.setTimeout("resume();",1000);
}
}
var languageNames=<?php echo json_encode($language_name, JSON_UNESCAPED_UNICODE); ?>;
var aceModesByLanguageName={
"C":"c_cpp",
"C++":"c_cpp",
"Pascal":"pascal",
"Java":"java",
"Ruby":"ruby",
"Bash":"sh",
"Python":"python",
"PHP":"php",
"Perl":"perl",
"C#":"csharp",
"Obj-C":"objectivec",
"FreeBasic":"vbscript",
"Scheme":"scheme",
"Clang":"c_cpp",
"Clang++":"c_cpp",
"Lua":"lua",
"JavaScript":"javascript",
"Go":"golang",
"SQL":"sql",
"Fortran":"fortran",
"Matlab":"matlab",
"Cobol":"cobol",
"R":"r",
"Scratch3":"plain_text",
"UnknownLanguage":"plain_text"
};
function getAceModeName(lang){
var langIndex=parseInt(lang,10);
var languageName=languageNames[langIndex]||"";
return aceModesByLanguageName[languageName]||"plain_text";
}
function switchLang(lang){
var langnames=new Array("c_cpp","c_cpp","pascal","java","ruby","sh","python","php","perl","csharp","objectivec","vbscript","scheme","c_cpp","c_cpp","lua","javascript","golang","sql","fortran","matlab","cobol","r");
editor.getSession().setMode("ace/mode/"+langnames[lang]);
editor.getSession().setMode("ace/mode/"+getAceModeName(lang));
}
function reloadtemplate(lang){