18 lines
556 B
Swift
18 lines
556 B
Swift
|
|
import Runestone
|
||
|
|
import TreeSitterSwiftRunestone
|
||
|
|
import TreeSitterJSONRunestone
|
||
|
|
import TreeSitterMarkdownRunestone
|
||
|
|
import TreeSitterBashRunestone
|
||
|
|
|
||
|
|
enum LanguageDetector {
|
||
|
|
static func language(for filePath: String) -> TreeSitterLanguage? {
|
||
|
|
switch (filePath as NSString).pathExtension.lowercased() {
|
||
|
|
case "swift": return .swift
|
||
|
|
case "json": return .json
|
||
|
|
case "md", "markdown": return .markdown
|
||
|
|
case "sh", "bash": return .bash
|
||
|
|
default: return nil
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|