codess
Version:
vscode代码片段管理器,通过 本地包(本地某个文件夹) 或官网的 远程包(代码片段集合) 生成本地项目的 vscode 代码片段配置。
641 lines (640 loc) • 15.5 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.languages = void 0;
exports.languageIds = languageIds;
exports.getExts = getExts;
exports.suffixToScope = suffixToScope;
exports.languages = [
{
id: 'plaintext',
aliases: ['plaintext', 'Plain Text', 'text'],
extensions: ['.txt'],
},
{
id: 'Log',
aliases: ['Log'],
extensions: [],
},
{
id: 'log',
aliases: ['log', 'log', 'Log'],
extensions: ['.log', '*.log.?'],
},
{
id: 'code-text-binary',
aliases: ['code-text-binary', 'Binary'],
extensions: [],
},
{
id: 'scminput',
aliases: ['scminput'],
extensions: [],
},
{
id: 'bat',
aliases: ['bat', 'Batch', 'bat'],
extensions: ['.bat', '.cmd'],
},
{
id: 'clojure',
aliases: ['clojure', 'Clojure', 'clojure'],
extensions: ['.clj', '.cljs', '.cljc', '.cljx', '.clojure', '.edn'],
},
{
id: 'coffeescript',
aliases: ['coffeescript', 'CoffeeScript', 'coffeescript', 'coffee'],
extensions: ['.coffee', '.cson', '.iced'],
},
{
id: 'jsonc',
aliases: ['jsonc', 'jsonc', 'JSON with Comments', 'jsonc'],
extensions: [
'.jsonc',
'.eslintrc',
'.eslintrc.json',
'.jsfmtrc',
'.jshintrc',
'.swcrc',
'.hintrc',
'.babelrc',
'.code-workspace',
'language-configuration.json',
'icon-theme.json',
'color-theme.json',
],
},
{
id: 'json',
aliases: ['json', 'json', 'JSON', 'json', 'json'],
extensions: [
'.json',
'.bowerrc',
'.jscsrc',
'.webmanifest',
'.js.map',
'.css.map',
'.ts.map',
'.har',
'.jslintrc',
'.jsonld',
'.geojson',
'.ipynb',
'.vuerc',
'.code-profile',
'.tsbuildinfo',
],
},
{
id: 'c',
aliases: ['c', 'C', 'c'],
extensions: ['.c', '.i'],
},
{
id: 'cpp',
aliases: ['cpp', 'C++', 'Cpp', 'cpp'],
extensions: [
'.cpp',
'.cppm',
'.cc',
'.ccm',
'.cxx',
'.cxxm',
'.c++',
'.c++m',
'.hpp',
'.hh',
'.hxx',
'.h++',
'.h',
'.ii',
'.ino',
'.inl',
'.ipp',
'.ixx',
'.tpp',
'.txx',
'.hpp.in',
'.h.in',
],
},
{
id: 'cuda-cpp',
aliases: ['cuda-cpp', 'CUDA C++'],
extensions: ['.cu', '.cuh'],
},
{
id: 'csharp',
aliases: ['csharp', 'C#', 'csharp'],
extensions: ['.cs', '.csx', '.cake'],
},
{
id: 'css',
aliases: ['css', 'CSS', 'css'],
extensions: ['.css'],
},
{
id: 'dart',
aliases: ['dart', 'Dart'],
extensions: ['.dart'],
},
{
id: 'diff',
aliases: ['diff', 'Diff', 'diff'],
extensions: ['.diff', '.patch', '.rej'],
},
{
id: 'dockerfile',
aliases: ['dockerfile', 'Docker', 'Dockerfile', 'Containerfile'],
extensions: ['.dockerfile', '.containerfile'],
},
{
id: 'ignore',
aliases: ['ignore', 'ignore', 'Ignore', 'ignore', 'ignore'],
extensions: ['.gitignore_global', '.gitignore', '.git-blame-ignore-revs', '.npmignore'],
},
{
id: 'fsharp',
aliases: ['fsharp', 'F#', 'FSharp', 'fsharp'],
extensions: ['.fs', '.fsi', '.fsx', '.fsscript'],
},
{
id: 'git-commit',
aliases: ['git-commit', 'Git Commit Message', 'git-commit'],
extensions: [],
},
{
id: 'git-rebase',
aliases: ['git-rebase', 'Git Rebase Message', 'git-rebase'],
extensions: [],
},
{
id: 'go',
aliases: ['go', 'Go'],
extensions: ['.go'],
},
{
id: 'groovy',
aliases: ['groovy', 'Groovy', 'groovy'],
extensions: ['.groovy', '.gvy', '.gradle', '.jenkinsfile', '.nf'],
},
{
id: 'handlebars',
aliases: ['handlebars', 'Handlebars', 'handlebars'],
extensions: ['.handlebars', '.hbs', '.hjs'],
},
{
id: 'hlsl',
aliases: ['hlsl', 'HLSL', 'hlsl'],
extensions: ['.hlsl', '.hlsli', '.fx', '.fxh', '.vsh', '.psh', '.cginc', '.compute'],
},
{
id: 'html',
aliases: ['html', 'HTML', 'htm', 'html', 'xhtml'],
extensions: [
'.html',
'.htm',
'.shtml',
'.xhtml',
'.xht',
'.mdoc',
'.jsp',
'.asp',
'.aspx',
'.jshtm',
'.volt',
'.ejs',
'.rhtml',
],
},
{
id: 'ini',
aliases: ['ini', 'Ini', 'ini'],
extensions: ['.ini'],
},
{
id: 'properties',
aliases: ['properties', 'Properties', 'properties', 'properties'],
extensions: [
'.conf',
'.properties',
'.cfg',
'.directory',
'.gitattributes',
'.gitconfig',
'.gitmodules',
'.editorconfig',
'.repo',
'.npmrc',
],
},
{
id: 'java',
aliases: ['java', 'Java', 'java'],
extensions: ['.java', '.jav'],
},
{
id: 'javascriptreact',
aliases: ['javascriptreact', 'JavaScript JSX', 'JavaScript React', 'jsx'],
extensions: ['.jsx'],
},
{
id: 'javascript',
aliases: ['javascript', 'JavaScript', 'javascript', 'js'],
extensions: ['.js', '.es6', '.mjs', '.cjs', '.pac'],
},
{
id: 'jsx-tags',
aliases: ['jsx-tags'],
extensions: [],
},
{
id: 'jsonl',
aliases: ['jsonl', 'JSON Lines'],
extensions: ['.jsonl'],
},
{
id: 'snippets',
aliases: ['snippets', 'Code Snippets'],
extensions: ['.code-snippets'],
},
{
id: 'julia',
aliases: ['julia', 'Julia', 'julia'],
extensions: ['.jl'],
},
{
id: 'juliamarkdown',
aliases: ['juliamarkdown', 'Julia Markdown', 'juliamarkdown'],
extensions: ['.jmd'],
},
{
id: 'tex',
aliases: ['tex', 'TeX', 'tex'],
extensions: ['.sty', '.cls', '.bbx', '.cbx'],
},
{
id: 'latex',
aliases: ['latex', 'LaTeX', 'latex'],
extensions: ['.tex', '.ltx', '.ctx'],
},
{
id: 'bibtex',
aliases: ['bibtex', 'BibTeX', 'bibtex'],
extensions: ['.bib'],
},
{
id: 'cpp_embedded_latex',
aliases: ['cpp_embedded_latex'],
extensions: [],
},
{
id: 'markdown_latex_combined',
aliases: ['markdown_latex_combined'],
extensions: [],
},
{
id: 'less',
aliases: ['less', 'Less', 'less'],
extensions: ['.less'],
},
{
id: 'lua',
aliases: ['lua', 'Lua', 'lua'],
extensions: ['.lua'],
},
{
id: 'makefile',
aliases: ['makefile', 'Makefile', 'makefile'],
extensions: ['.mak', '.mk'],
},
{
id: 'markdown',
aliases: ['markdown', 'Markdown', 'markdown'],
extensions: [
'.md',
'.mkd',
'.mdwn',
'.mdown',
'.markdown',
'.markdn',
'.mdtxt',
'.mdtext',
'.workbook',
],
},
{
id: 'markdown-math',
aliases: ['markdown-math'],
extensions: [],
},
{
id: 'objective-c',
aliases: ['objective-c', 'Objective-C'],
extensions: ['.m'],
},
{
id: 'objective-cpp',
aliases: ['objective-cpp', 'Objective-C++'],
extensions: ['.mm'],
},
{
id: 'perl',
aliases: ['perl', 'Perl', 'perl'],
extensions: ['.pl', '.pm', '.pod', '.t', '.PL', '.psgi'],
},
{
id: 'raku',
aliases: ['raku', 'Raku', 'Perl6', 'perl6'],
extensions: ['.raku', '.rakumod', '.rakutest', '.rakudoc', '.nqp', '.p6', '.pl6', '.pm6'],
},
{
id: 'php',
aliases: ['php', 'PHP', 'php'],
extensions: ['.php', '.php4', '.php5', '.phtml', '.ctp'],
},
{
id: 'powershell',
aliases: ['powershell', 'PowerShell', 'powershell', 'ps', 'ps1', 'pwsh'],
extensions: ['.ps1', '.psm1', '.psd1', '.pssc', '.psrc'],
},
{
id: 'jade',
aliases: ['jade', 'Pug', 'Jade', 'jade'],
extensions: ['.pug', '.jade'],
},
{
id: 'python',
aliases: ['python', 'Python', 'py'],
extensions: ['.py', '.rpy', '.pyw', '.cpy', '.gyp', '.gypi', '.pyi', '.ipy', '.pyt'],
},
{
id: 'r',
aliases: ['r', 'R', 'r'],
extensions: ['.r', '.rhistory', '.rprofile', '.rt'],
},
{
id: 'razor',
aliases: ['razor', 'Razor', 'razor'],
extensions: ['.cshtml', '.razor'],
},
{
id: 'restructuredtext',
aliases: ['restructuredtext', 'reStructuredText'],
extensions: ['.rst'],
},
{
id: 'ruby',
aliases: ['ruby', 'Ruby', 'rb'],
extensions: ['.rb', '.rbx', '.rjs', '.gemspec', '.rake', '.ru', '.erb', '.podspec', '.rbi'],
},
{
id: 'rust',
aliases: ['rust', 'Rust', 'rust'],
extensions: ['.rs'],
},
{
id: 'scss',
aliases: ['scss', 'SCSS', 'scss'],
extensions: ['.scss'],
},
{
id: 'search-result',
aliases: ['search-result', 'Search Result'],
extensions: ['.code-search'],
},
{
id: 'shaderlab',
aliases: ['shaderlab', 'ShaderLab', 'shaderlab'],
extensions: ['.shader'],
},
{
id: 'shellscript',
aliases: [
'shellscript',
'Shell Script',
'shellscript',
'bash',
'fish',
'sh',
'zsh',
'ksh',
'csh',
],
extensions: [
'.sh',
'.bash',
'.bashrc',
'.bash_aliases',
'.bash_profile',
'.bash_login',
'.ebuild',
'.profile',
'.bash_logout',
'.xprofile',
'.xsession',
'.xsessionrc',
'.Xsession',
'.zsh',
'.zshrc',
'.zprofile',
'.zlogin',
'.zlogout',
'.zshenv',
'.zsh-theme',
'.fish',
'.ksh',
'.csh',
'.cshrc',
'.tcshrc',
'.yashrc',
'.yash_profile',
],
},
{
id: 'sql',
aliases: ['sql', 'SQL'],
extensions: ['.sql', '.dsql'],
},
{
id: 'swift',
aliases: ['swift', 'Swift', 'swift'],
extensions: ['.swift'],
},
{
id: 'typescript',
aliases: ['typescript', 'TypeScript', 'ts', 'typescript'],
extensions: ['.ts', '.cts', '.mts'],
},
{
id: 'typescriptreact',
aliases: ['typescriptreact', 'TypeScript JSX', 'TypeScript React', 'tsx'],
extensions: ['.tsx'],
},
{
id: 'vb',
aliases: ['vb', 'Visual Basic', 'vb'],
extensions: ['.vb', '.brs', '.vbs', '.bas', '.vba'],
},
{
id: 'xml',
aliases: ['xml', 'XML', 'xml'],
extensions: [
'.xml',
'.xsd',
'.ascx',
'.atom',
'.axml',
'.axaml',
'.bpmn',
'.cpt',
'.csl',
'.csproj',
'.csproj.user',
'.dita',
'.ditamap',
'.dtd',
'.ent',
'.mod',
'.dtml',
'.fsproj',
'.fxml',
'.iml',
'.isml',
'.jmx',
'.launch',
'.menu',
'.mxml',
'.nuspec',
'.opml',
'.owl',
'.proj',
'.props',
'.pt',
'.publishsettings',
'.pubxml',
'.pubxml.user',
'.rbxlx',
'.rbxmx',
'.rdf',
'.rng',
'.rss',
'.shproj',
'.storyboard',
'.svg',
'.targets',
'.tld',
'.tmx',
'.vbproj',
'.vbproj.user',
'.vcxproj',
'.vcxproj.filters',
'.wsdl',
'.wxi',
'.wxl',
'.wxs',
'.xaml',
'.xbl',
'.xib',
'.xlf',
'.xliff',
'.xpdl',
'.xul',
'.xoml',
],
},
{
id: 'xsl',
aliases: ['xsl', 'XSL', 'xsl'],
extensions: ['.xsl', '.xslt'],
},
{
id: 'dockercompose',
aliases: ['dockercompose', 'Compose', 'compose'],
extensions: [],
},
{
id: 'yaml',
aliases: ['yaml', 'YAML', 'yaml'],
extensions: [
'.yaml',
'.yml',
'.eyaml',
'.eyml',
'.cff',
'.yaml-tmlanguage',
'.yaml-tmpreferences',
'.yaml-tmtheme',
],
},
];
const scopes = [
...exports.languages,
{
id: 'vue',
aliases: ['vue', 'Vue'],
extensions: ['.vue'],
},
{
id: 'vue-html',
aliases: ['vue-html'],
extensions: [],
},
{
id: 'vue-postcss',
aliases: ['vue-postcss'],
extensions: [],
},
{
id: 'vue-sugarss',
aliases: ['vue-sugarss'],
extensions: [],
},
{
id: 'vue-pug',
aliases: ['vue-pug'],
extensions: [],
},
];
function languageIds() {
return scopes
.map((_) => {
return _.id;
})
.sort((a, b) => {
if (a > b) {
return 1;
}
else if (a < b) {
return -1;
}
return 0;
});
}
let exts;
function getExts() {
if (!exts) {
exts = scopes
.map((_) => _.extensions)
.reduce((a, b) => {
a.push(...b);
return a;
}, []);
}
return exts;
}
let suffixToScopeCache = new Map();
function suffixToScope(suffix = '') {
var _a, _b;
if (suffixToScopeCache.has(suffix)) {
return suffixToScopeCache.get(suffix);
}
let scope = (_b = (_a = scopes.find((_) => _.id == suffix ||
_.aliases.some((_) => _ == suffix) ||
_.extensions.some((_) => {
return new RegExp(`^${suffix.replace(/[.*]/, (a) => {
return `\\${a}`;
})}$`, 'i').test(_);
}))) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : suffix.replace(/^\.+/, '');
suffixToScopeCache.set(suffix, scope);
return scope;
}