resolveCodeLanguageProfile function
Implementation
CodeLanguageProfile resolveCodeLanguageProfile(String? language) {
final normalizedLanguage = (language ?? '').toLowerCase();
return switch (normalizedLanguage) {
'python' ||
'py' ||
'yaml' ||
'yml' ||
'toml' ||
'make' ||
'makefile' => const CodeLanguageProfile(lineCommentPrefix: '#'),
'ruby' ||
'rb' ||
'shell' ||
'sh' ||
'bash' ||
'zsh' => const CodeLanguageProfile(
lineCommentPrefix: '#',
blockCommentDelimiters: CodeBlockCommentDelimiters(
start: '/*',
end: '*/',
),
),
'sql' || 'lua' || 'haskell' || 'hs' => const CodeLanguageProfile(
lineCommentPrefix: '--',
blockCommentDelimiters: CodeBlockCommentDelimiters(
start: '/*',
end: '*/',
),
),
'html' ||
'xml' ||
'svg' ||
'markdown' ||
'md' ||
'mdx' => const CodeLanguageProfile(
lineCommentPrefix: '//',
blockCommentDelimiters: CodeBlockCommentDelimiters(
start: '<!--',
end: '-->',
),
),
_ => const CodeLanguageProfile(
lineCommentPrefix: '//',
blockCommentDelimiters: CodeBlockCommentDelimiters(
start: '/*',
end: '*/',
),
),
};
}