HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux mail.btech-izolacje.pl 5.15.0-140-generic #150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
User: pewna6876 (1017)
PHP: 8.2.28
Disabled: NONE
Upload Files
File: //usr/share/source-highlight/coffeescript.lang
# @title CoffeeScript
# @matchext coffee
# @matchprogram coffee

# CoffeeScript lang definition file

# first check if the input matches a comment
include "script_comment.lang"

keyword =
"true|false|null|this|new|delete|typeof|in|instanceof|return|throw|break|continue|debugger|if|else|switch|for|while|do|try|catch|finally|class|extends|super|undefined|then|unless|until|loop|of|by|when|and|or|is|isnt|not|yes|no|on|off"

# next check if it matches a division operator, which can occur only
# after a number, an identifier, or certain symbols
(symbol,normal,symbol) = `(\+\+|--|\)|\])(\s*)(/=?(?![*/]))`
(number,normal,symbol) =
`(0x[[:xdigit:]]+|(?:[[:digit:]]*\.)?[[:digit:]]+(?:[eE][+-]?[[:digit:]]+)?)(\s*)(/(?![*/]))`
(normal,symbol) = `([[:alpha:]$_][[:alnum:]$_]*\s*)(/=?(?![*/]))`

# finally check if it matches a regular expression
regexp = '/(\\.|[^*\\/])(\\.|[^\\/])*/[gim]*'

comment delim '(^\###)' '^(\###)' multiline

include "number.lang"

include "c_string.lang"

include "symbols.lang"

include "function.lang"