;; -*- mode: scheme; -*- ("c" (aliases "c++" "cpp") (comment (multiline "/*" "*/") (until-newline "//")) (escapable-string-literals (delimiters #\" #\') (escape-character #\\)) (delimiters " \n\t\r\f()[]{}<>:;\"'|&!@$*=+-/") (keywords "#ifdef" "#if" "#else" "#elif" "#endif" "#define" "#undef" "#include" "#import" "#pragma" "#error" "#line" "#assert" "#unassert" "##" "auto" "break" "case" "const" "continue" "default" "do" "else" "enum" "extern" "for" "goto" "if" "register" "restricted" "return" "sizeof" "static" "struct" "switch" "typedef" "union" "volatile" "while" "bool" "int" "long" "float" "short" "double" "char" "unsigned" "signed" "void" "size_t" "ssize_t" "ptrdiff_t" "int8_t" "int16_t" "int32_t" "int64_t" "intmax_t" "intptr_t" "uint8_t" "uint16_t" "uint32_t" "uint64_t" "uintmax_t" "uintptr_t")) ("javascript" (aliases "js") (comment (multiline "/*" "*/") (until-newline "//")) (escapable-string-literals (delimiters #\" #\') (escape-character #\\)) (delimiters " \n\t\r\f()[]{}<>:;\"'|&!@$*=+-/") (keywords "break" "catch" "class" "const" "continue" "default" "delete" "do" "else" "export" "finally" "for" "function" "if" "import" "in" "instanceof" "let" "new" "return" "this" "throw" "try" "typeof" "switch" "var" "void" "while" "with" "yield" "true" "false" "null" "NaN" "Infinity" "undefined" "Array" "Boolean" "Date" "Error" "Function" "Math" "Number" "Object" "RegExp" "String" "Error" "console" "decodeURI" "decodeURIComponent" "document" "encodeURI" "encodeURIComponent" "eval" "isFinite" "isNan" "parseFloat" "parseInt" "window")) ("diff" (aliases "udiff" "patch") (delimiters " \n\t\r\f") (keywords "diff --git" "index" "Index:" "@@" "---" "+++")) ("latex" (aliases "text") (comment (until-newline "%")) (delimiters " \n\t\r\f[]{}\"'&\\@$") (keywords "\\begin" "\\end" "\\usepackage" "\\documentclass")) ("elisp" (aliases "emacs" "emacslisp" "emacs-lisp") (comment (until-newline ";")) (escapable-string-literals (delimiters #\") (escape-character #\\)) (delimiters " \n\t\r\f()[]#\"'`,") (keywords "&allow-other-keys" "&aux" "&body" "&environment" "&key" "&optional" "&rest" "&whole" "t" "nil" "cl-assert" "cl-check-type" "error" "signal" "user-error" "warn")) ("scheme" (aliases "scm") (comment (multiline "#>" "<#") ; TODO: hook up C lexer (until-newline ";") (nested-multiline "#|" "|#")) (escapable-string-literals (delimiters #\") (escape-character #\\)) (delimiters " \n\t\r\f()[]\",") (keywords "#!key" "#!optional" "#!rest" "#!eof" "#t" "#f" "error")) ("clojure" (aliases "clj" "clojurescript" "cljs") (comment (until-newline ";")) (escapable-string-literals (delimiters #\") (escape-character #\\)) (raw-string-literals (delimiters ("#\"" . "\""))) (delimiters " \n\t\r\f()[]\",") (keywords "#js" "#inst" "#uuid" "#queue" "true" "false" "nil" "comment")) ("makefile" (aliases "make") (comment (until-newline "#")) (escapable-string-literals (delimiters #\" #\') (escape-character #\\)) (delimiters " \n\t\r\f:") (keywords ":=" "?=" "::=" "+=" "!=" "$<" "$@" "$$" "$+" "$%" "$?" "$|" "$*")) ("python" (aliases "py") (comment (until-newline "#")) (escapable-string-literals (delimiters #\" #\') (escape-character #\\)) (raw-string-literals (delimiters "\"\"\"" "'''")) (delimiters " \n\t\r\f()[]{}<>#:;\"'|&!@$*=+-/") (keywords "in" "is" "and" "or" "not" "def" "class" "from" "import" "self" "None" "Ellipsis" "NotImplemented" "False" "True" "assert" "break" "continue" "del" "elif" "else" "except" "exec" "finally" "for" "global" "if" "lambda" "pass" "print" "raise" "return" "try" "while" "yield" "yield from" "as" "with" "__import__" "abs" "all" "any" "apply" "basestring" "bin" "bool" "buffer" "bytearray" "bytes" "callable" "chr" "classmethod" "cmp" "coerce" "compile" "complex" "delattr" "dict" "dir" "divmod" "enumerate" "eval" "execfile" "exit" "file" "filter" "float" "frozenset" "getattr" "globals" "hasattr" "hash" "hex" "id" "input" "int" "intern" "isinstance" "issubclass" "iter" "len" "list" "locals" "long" "map" "max" "min" "next" "object" "oct" "open" "ord" "pow" "property" "range" "raw_input" "reduce" "reload" "repr" "reversed" "round" "set" "setattr" "slice" "sorted" "staticmethod" "str" "sum" "super" "tuple" "type" "unichr" "unicode" "vars" "xrange" "zip")) ("shell" (aliases "bash" "sh" "shell-session") (comment (until-newline "#")) (escapable-string-literals (delimiters #\" #\') (escape-character #\\)) (delimiters " \n\t\r\f()[]{}<>#:;\"'|&!@$*=+-/") (keywords "if" "fi" "else" "while" "do" "done" "for" "then" "return" "function" "case" "select" "continue" "until" "esac" "elif" "alias" "bg" "bind" "break" "builtin" "caller" "cd" "command" "compgen" "complete" "declare" "dirs" "disown" "echo" "enable" "eval" "exec" "exit" "export" "false" "fc" "fg" "getopts" "hash" "help" "history" "jobs" "kill" "let" "local" "logout" "popd" "printf" "pushd" "pwd" "read" "readonly" "set" "shift" "shopt" "source" "suspend" "test" "time" "times" "trap" "true" "type" "typeset" "ulimit" "umask" "unalias" "unset" "wait" "<<<" "&&" "||" "$" ; "$" only works in a prompt position "$*" "$@" "$#" "$?" "$-" "$$" "$!" "$0")) ("ini" (comment (until-newline "#"))) ("text" (aliases "txt") (delimiters " \n\t\r\f:") (keywords "TODO" "NOTE" "FIXME" "HACK" "KLUDGE"))