/usr/share/highlight/langDefs/cobol.lang is in highlight-common 3.8-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | -- Language definition generated by lang2to3
Description="COBOL"
Identifiers=[[ [a-zA-Z_][\w\-]* ]]
Keywords={
{ Id=1,
List={"accept", "access", "add", "advancing", "after", "all", "alphabet", "alphabetic", "alphabetic-lower", "alphabetic-upper", "alphanumeric", "alphanumeric-edited", "also", "alter", "alternate", "and", "any", "are", "area", "areas", "ascending", "assign", "at", "author", "before", "binary", "blank", "block", "bottom", "by", "call", "cancel", "cd", "cf", "ch", "character", "characters", "class", "clock-units", "close", "cobol", "code", "code-set", "collating", "column", "comma", "common", "communication", "comp", "comp-0", "comp-1", "comp-2", "comp-3", "comp-4", "comp-5", "comp-6", "comp-x", "computational", "computational-0", "computational-1", "computational-2", "computational-3", "computational-4", "computational-5", "computational-6", "computational-x", "compute", "configuration", "contains", "content", "continue", "control", "control-area", "controls", "converting", "copy", "corr", "corresponding", "count", "currency", "data", "date", "date-compiled", "date-written", "day", "day-of-week", "de", "debug-contents", "debug-item", "debug-line", "debug-name", "debug-sub-1", "debug-sub-2", "debug-sub-3", "debugging", "decimal-point", "declaratives", "delete", "delimited", "delimiter", "depending", "descending", "destination", "detail", "disable", "display", "divide", "division", "down", "duplicates", "dynamic", "egi", "else", "emi", "enable", "end", "end-add", "end-call", "end-compute", "end-delete", "end-divide", "end-evaluate", "end-if", "end-multiply", "end-of-page", "end-perform", "end-read", "end-receive", "end-return", "end-rewrite", "end-search", "end-start", "end-string", "end-subtract", "end-unstring", "end-write", "enter", "environment", "eop", "equal", "error", "esi", "evaluate", "every", "exception", "exit", "extend", "external", "false", "fd", "file", "file-control", "filler", "final", "first", "footing", "for", "from", "function", "generate", "giving", "global", "go", "greater", "group", "heading", "high-value", "high-values", "i-o", "i-o-control", "identification", "if", "in", "index", "indexed", "indicate", "initial", "initialize", "initiate", "input", "input-output", "inspect", "installation", "into", "invalid", "just", "justified", "key", "label", "last", "leading", "left", "length", "less", "limit", "limits", "linage", "linage-counter", "line", "line-counter", "lines", "linkage", "lock", "low-value", "low-values", "memory", "merge", "message", "mode", "modules", "more-labels", "move", "multiple", "multiply", "native", "negative", "next", "no", "not", "number", "numeric", "numeric-edited", "object-computer", "occurs", "of", "off", "omitted", "on", "open", "optional", "or", "order", "organization", "other", "output", "overflow", "packed-decimal", "padding", "page", "page-counter", "perform", "pf", "ph", "pic", "picture", "plus", "pointer", "position", "positive", "printing", "procedure", "procedures", "proceed", "program", "program-id", "purge", "queue", "quote", "quotes", "random", "rd", "read", "receive", "record", "records", "redefines", "reel", "reference", "references", "relative", "release", "remainder", "removal", "renames", "replace", "replacing", "report", "reporting", "reports", "rerun", "reserve", "return", "reversed", "rewind", "rewrite", "rf", "rh", "right", "rounded", "run", "same", "sd", "search", "section", "security", "segment", "segment-limit", "select", "send", "sentence", "separate", "sequence", "sequential", "set", "sign", "size", "sort", "sort-merge", "source", "source-computer", "space", "spaces", "special-names", "standard", "standard-1", "standard-2", "start", "status", "stop", "string", "sub-queue-1", "sub-queue-2", "sub-queue-3", "subtract", "sum", "super", "suppress", "symbolic", "sync", "synchronized", "tallying", "tape", "terminal", "terminate", "test", "text", "than", "then", "through", "thru", "time", "times", "to", "top", "trailing", "true", "type", "unit", "unstring", "until", "up", "upon", "usage", "use", "using", "value", "values", "varying", "when", "with", "words", "working-storage", "write", "zero", "zeroes", "zeros"},
},
}
Strings={
Delimiter=[["|']],
}
IgnoreCase=true
Comments={
{ Block=false,
Delimiter= { [[\*|\/]] },
},
}
Operators=[[\(|\)|\[|\]|\{|\}|\,|\;|\:|\&|\<|\>|\!|\=|\%|\+|\-]]
|