mirror-ghostty/macos/Sources/Features/AppleScript/Ghostty.Input.Mods+AppleScr...

19 lines
673 B
Swift

extension Ghostty.Input.Mods {
/// Parses a comma-separated modifier string into `Ghostty.Input.Mods`.
///
/// Recognized names: `shift`, `control`, `option`, `command`.
/// Returns `nil` if any unrecognized modifier name is encountered.
init?(scriptModifiers string: String) {
self = []
for part in string.split(separator: ",") {
switch part.trimmingCharacters(in: .whitespaces).lowercased() {
case "shift": insert(.shift)
case "control": insert(.ctrl)
case "option": insert(.alt)
case "command": insert(.super)
default: return nil
}
}
}
}