cobol.jsf (10245B)
1 # JOE syntax highlight file for COBOL 2 3 =Idle 4 =Bad 5 =Preproc 6 =Define +Preproc 7 =Comment 8 =IncLocal +String +Preproc 9 =IncSystem +Preproc 10 =Constant 11 =String +Constant 12 =Number +Constant 13 =Boolean +Constant 14 =Character +String 15 =Escape 16 =StringEscape +Escape 17 =CharacterEscape +StringEscape 18 =Type 19 =Keyword 20 =Operator +Keyword 21 =Statement +Keyword 22 =Conditional +Statement 23 =Loop +Statement 24 =Ident 25 26 :reset Idle 27 * idle noeat 28 "*" line_comment recolor=-1 29 " \t" reset 30 31 :line_comment Comment comment 32 * line_comment 33 "BFHNTX" line_comment noeat call=comment_todo.comment_todo() 34 "\n" reset 35 36 # All following states are for when we're not in a preprocessor line 37 38 :idle Idle 39 * idle 40 "\n" reset 41 "0" first_digit recolor=-1 42 "1-9" decimal recolor=-1 43 "." maybe_float 44 "\"" string recolor=-1 45 "'" char recolor=-1 46 "a-zA-Z_" ident buffer 47 48 :first_digit Number 49 * idle noeat 50 "xX" hex 51 "." float 52 "eE" epart 53 "0-7" octal 54 "89" bad_number recolor=-1 55 56 :bad_number Bad 57 * idle noeat 58 "0-9" bad_number 59 60 :octal Number 61 * idle noeat 62 "0-7" octal 63 "89" bad_number recolor=-1 64 65 :hex Number 66 * idle noeat 67 "0-9A-Fa-f" hex 68 69 :decimal Number 70 * idle noeat 71 "0-9" decimal 72 "eE" epart 73 "." float 74 75 :maybe_float Number 76 * idle recolor=-2 noeat 77 "0-9" float recolor=-2 78 79 :float Number 80 * idle noeat 81 "eE" epart 82 "0-9" float 83 84 :epart Number 85 * idle noeat 86 "0-9+\-" enum 87 88 :enum Number 89 * idle noeat 90 "0-9" enum 91 92 :string String string 93 * string 94 "\"" idle 95 "\\" string_escape recolor=-1 96 "%" string_control recolor=-1 97 98 :string_escape StringEscape string 99 * string 100 "x" string_hex1 101 "0-7" string_octal2 102 "\n" string recolor=-2 103 104 :string_hex1 StringEscape string 105 * string noeat 106 "0-9a-fA-F" string_hex2 107 108 :string_hex2 StringEscape string 109 * string noeat 110 "0-9a-fA-F" string 111 112 :string_octal2 StringEscape string 113 * string noeat 114 "0-7" string_octal3 115 116 :string_octal3 StringEscape string 117 * string noeat 118 "0-7" string 119 120 :string_control StringEscape string 121 * string_control 122 "\n" reset 123 "diouxXeEfFgGaAcspn%SC" string 124 125 :char Character string 126 * char 127 "\n" reset 128 "'" idle 129 "\\" char_escape recolor=-1 130 131 :char_escape CharacterEscape string 132 * char 133 "x" char_hex1 134 "0-7" char_octal2 135 "\n" char recolor=-2 136 137 :char_hex1 CharacterEscape string 138 * char noeat 139 "0-9a-fA-F" char_hex2 140 141 :char_hex2 CharacterEscape string 142 * char noeat 143 "0-9a-fA-F" char 144 145 :char_octal2 CharacterEscape string 146 * char noeat 147 "0-7" char_octal3 148 149 :char_octal3 CharacterEscape string 150 * char noeat 151 "0-7" char 152 153 :ident Ident 154 * idle noeat istrings 155 "accept" kw 156 "access" kw 157 "add" kw 158 "address" kw 159 "advancing" kw 160 "after" kw 161 "all" kw 162 "allowing" kw 163 "alphabet" kw 164 "alphabetic" kw 165 "alphabetic-lower" kw 166 "alphabetic-upper" kw 167 "alphanumeric" kw 168 "alphanumeric-edited" kw 169 "also" kw 170 "alter" kw 171 "alternate" kw 172 "and" oper 173 "any" kw 174 "apply" kw 175 "are" kw 176 "area" kw 177 "areas" kw 178 "arithmetic" kw 179 "ascending" kw 180 "assign" kw 181 "at" kw 182 "author" kw 183 "automatic" kw 184 "b-and" oper 185 "b-exor" oper 186 "b-less" oper 187 "b-not" oper 188 "b-or" oper 189 "basis" kw 190 "before" kw 191 "beginning" kw 192 "binary" kw 193 "bit" kw 194 "bits" kw 195 "blank" kw 196 "block" kw 197 "boolean" kw 198 "bottom" kw 199 "by" kw 200 "call" kw 201 "cancel" kw 202 "cbl" kw 203 "cd" kw 204 "cf" kw 205 "ch" kw 206 "character" kw 207 "characters" kw 208 "class" kw 209 "class-id" kw 210 "clock-units" kw 211 "close" kw 212 "cobol" kw 213 "code" kw 214 "code-set" kw 215 "collating" kw 216 "column" kw 217 "com-reg" kw 218 "comma" kw 219 "commit" kw 220 "common" kw 221 "communication" kw 222 "comp" kw 223 "comp-1" kw 224 "comp-2" kw 225 "comp-3" kw 226 "comp-4" kw 227 "comp-5" kw 228 "comp-6" kw 229 "comp-7" kw 230 "comp-8" kw 231 "comp-9" kw 232 "computational" kw 233 "computational-1" kw 234 "computational-2" kw 235 "computational-3" kw 236 "computational-4" kw 237 "computational-5" kw 238 "computational-6" kw 239 "computational-7" kw 240 "computational-8" kw 241 "computational-9" kw 242 "compute" kw 243 "configuration" kw 244 "connect" kw 245 "contained" kw 246 "contains" kw 247 "content" kw 248 "continue" kw 249 "control" kw 250 "controls" kw 251 "converting" kw 252 "copy" kw 253 "corr" kw 254 "corresponding" kw 255 "count" kw 256 "currency" kw 257 "current" kw 258 "cycle" kw 259 "data" kw 260 "date" kw 261 "date-compiled" kw 262 "date-written" kw 263 "day" kw 264 "day-of-week" kw 265 "db" kw 266 "db-access-control-key" kw 267 "db-data-name" kw 268 "db-exception" kw 269 "db-record-name" kw 270 "db-set-name" kw 271 "db-status" kw 272 "dbcs" kw 273 "de" kw 274 "debug-contents" kw 275 "debug-item" kw 276 "debug-line" kw 277 "debug-name" kw 278 "debug-sub-1" kw 279 "debug-sub-2" kw 280 "debug-sub-3" kw 281 "debugging" kw 282 "decimal-point" kw 283 "declaratives" kw 284 "default" kw 285 "delete" kw 286 "delimited" kw 287 "delimiter" kw 288 "depending" kw 289 "descending" kw 290 "destination" kw 291 "detail" kw 292 "disable" kw 293 "disconnect" kw 294 "display" kw 295 "display-1" kw 296 "display-2" kw 297 "display-3" kw 298 "display-4" kw 299 "display-5" kw 300 "display-6" kw 301 "display-7" kw 302 "display-8" kw 303 "display-9" kw 304 "divide" kw 305 "division" kw 306 "down" kw 307 "duplicate" kw 308 "duplicates" kw 309 "dynamic" kw 310 "egcs" kw 311 "egi" kw 312 "eject" kw 313 "else" cond 314 "emi" kw 315 "empty" kw 316 "enable" kw 317 "end" kw 318 "end-add" kw 319 "end-call" kw 320 "end-compute" kw 321 "end-delete" kw 322 "end-disable" kw 323 "end-divide" kw 324 "end-enable" kw 325 "end-evaluate" kw 326 "end-if" cond 327 "end-invoke" kw 328 "end-multiply" kw 329 "end-of-page" kw 330 "end-perform" kw 331 "end-read" kw 332 "end-receive" kw 333 "end-return" kw 334 "end-rewrite" kw 335 "end-search" kw 336 "end-send" kw 337 "end-start" kw 338 "end-string" kw 339 "end-subtract" kw 340 "end-transceive" kw 341 "end-unstring" kw 342 "end-write" kw 343 "ending" kw 344 "enter" kw 345 "entry" kw 346 "environment" kw 347 "eop" kw 348 "equal" oper 349 "equals" kw 350 "erase" kw 351 "error" kw 352 "esi" kw 353 "evaluate" kw 354 "every" kw 355 "exact" kw 356 "exceeds" kw 357 "exception" kw 358 "exclusive" kw 359 "exit" kw 360 "extend" kw 361 "external" kw 362 "false" bool 363 "fd" kw 364 "fetch" kw 365 "file" kw 366 "file-control" kw 367 "filler" kw 368 "final" kw 369 "find" kw 370 "finish" kw 371 "first" kw 372 "footing" kw 373 "for" kw 374 "form" kw 375 "format" kw 376 "free" kw 377 "from" kw 378 "function" kw 379 "generate" kw 380 "get" kw 381 "giving" kw 382 "global" kw 383 "go" kw 384 "goback" kw 385 "greater" oper 386 "group" kw 387 "heading" kw 388 "high-value" const 389 "high-values" const 390 "i-o" kw 391 "i-o-control" kw 392 "id" kw 393 "identification" kw 394 "if" cond 395 "in" oper 396 "index" kw 397 "index-1" kw 398 "index-2" kw 399 "index-3" kw 400 "index-4" kw 401 "index-5" kw 402 "index-6" kw 403 "index-7" kw 404 "index-8" kw 405 "index-9" kw 406 "indexed" kw 407 "indicate" kw 408 "inherits" kw 409 "initial" kw 410 "initialize" kw 411 "initiate" kw 412 "input" kw 413 "input-output" kw 414 "insert" kw 415 "inspect" kw 416 "installation" kw 417 "into" kw 418 "invalid" kw 419 "invoke" kw 420 "is" oper 421 "just" kw 422 "justified" kw 423 "kanji" kw 424 "keep" kw 425 "key" kw 426 "label" kw 427 "last" kw 428 "ld" kw 429 "leading" kw 430 "left" kw 431 "length" kw 432 "less" oper 433 "limit" kw 434 "limits" kw 435 "linage" kw 436 "linage-counter" kw 437 "line" kw 438 "line-counter" kw 439 "lines" kw 440 "linkage" kw 441 "locally" kw 442 "local-storage" kw 443 "lock" kw 444 "low-value" const 445 "low-values" const 446 "member" kw 447 "memory" kw 448 "merge" kw 449 "message" kw 450 "metaclass" kw 451 "method" kw 452 "method-id" kw 453 "mode" kw 454 "modify" kw 455 "modules" kw 456 "more-labels" kw 457 "move" kw 458 "multiple" kw 459 "multiply" kw 460 "native" kw 461 "negative" kw 462 "next" kw 463 "no" kw 464 "normal" kw 465 "not" oper 466 "null" const 467 "nulls" const 468 "number" kw 469 "numeric" kw 470 "numeric-edited" kw 471 "object" kw 472 "object-computer" kw 473 "occurs" kw 474 "of" kw 475 "off" kw 476 "omitted" kw 477 "on" kw 478 "only" kw 479 "open" kw 480 "optional" kw 481 "or" oper 482 "order" kw 483 "organization" kw 484 "other" kw 485 "output" kw 486 "overflow" kw 487 "override" kw 488 "owner" kw 489 "packed-decimal" kw 490 "padding" kw 491 "page" kw 492 "page-counter" kw 493 "paragraph" kw 494 "password" kw 495 "perform" kw 496 "pf" kw 497 "ph" kw 498 "pic" kw 499 "picture" kw 500 "plus" kw 501 "pointer" kw 502 "position" kw 503 "positive" kw 504 "present" kw 505 "previous" kw 506 "printing" kw 507 "prior" kw 508 "procedure" kw 509 "procedure-pointer" kw 510 "procedures" kw 511 "proceed" kw 512 "processing" kw 513 "program" kw 514 "program-id" kw 515 "protected" kw 516 "purge" kw 517 "queue" kw 518 "quote" const 519 "quotes" const 520 "random" kw 521 "rd" kw 522 "read" kw 523 "ready" kw 524 "realm" kw 525 "receive" kw 526 "reconnect" kw 527 "record" kw 528 "record-name" kw 529 "recording" kw 530 "records" kw 531 "recursive" kw 532 "redefines" kw 533 "reel" kw 534 "reference" kw 535 "references" kw 536 "relation" kw 537 "relative" kw 538 "release" kw 539 "reload" kw 540 "remainder" kw 541 "removal" kw 542 "renames" kw 543 "repeated" kw 544 "replace" kw 545 "replacing" kw 546 "report" kw 547 "reporting" kw 548 "reports" kw 549 "repository" kw 550 "rerun" kw 551 "reserve" kw 552 "reset" kw 553 "retaining" kw 554 "retrieval" kw 555 "return" kw 556 "return-code" kw 557 "returning" kw 558 "reversed" kw 559 "rewind" kw 560 "rewrite" kw 561 "rf" kw 562 "rh" kw 563 "right" kw 564 "rollback" kw 565 "rounded" kw 566 "run" kw 567 "same" kw 568 "sd" kw 569 "search" kw 570 "section" kw 571 "security" kw 572 "segment" kw 573 "segment-limit" kw 574 "select" kw 575 "self" kw 576 "send" kw 577 "sentence" kw 578 "separate" kw 579 "sequence" kw 580 "sequential" kw 581 "service" kw 582 "session-id" kw 583 "set" kw 584 "shared" kw 585 "shift-in" kw 586 "shift-out" kw 587 "sign" kw 588 "size" kw 589 "skip1" kw 590 "skip2" kw 591 "skip3" kw 592 "sort" kw 593 "sort-control" kw 594 "sort-core-size" kw 595 "sort-file-size" kw 596 "sort-merge" kw 597 "sort-message" kw 598 "sort-mode-size" kw 599 "sort-return" kw 600 "source" kw 601 "source-computer" kw 602 "space" const 603 "spaces" const 604 "special-names" kw 605 "standard" kw 606 "standard-1" kw 607 "standard-2" kw 608 "standard-3" kw 609 "standard-4" kw 610 "start" kw 611 "status" kw 612 "stop" kw 613 "store" kw 614 "string" kw 615 "sub-queue-1" kw 616 "sub-queue-2" kw 617 "sub-queue-3" kw 618 "sub-schema" kw 619 "subtract" kw 620 "sum" kw 621 "super" kw 622 "suppress" kw 623 "symbolic" kw 624 "sync" kw 625 "synchronized" kw 626 "table" kw 627 "tally" kw 628 "tallying" kw 629 "tape" kw 630 "tenant" kw 631 "terminal" kw 632 "terminate" kw 633 "test" kw 634 "text" kw 635 "than" oper 636 "then" kw 637 "through" kw 638 "thru" loop 639 "time" kw 640 "timeout" kw 641 "times" loop 642 "title" kw 643 "to" oper 644 "top" kw 645 "trace" kw 646 "trailing" kw 647 "transceive" kw 648 "true" bool 649 "type" kw 650 "unequal" kw 651 "unit" kw 652 "unstring" kw 653 "until" loop 654 "up" kw 655 "update" kw 656 "upon" kw 657 "usage" kw 658 "usage-mode" kw 659 "use" kw 660 "using" kw 661 "valid" kw 662 "validate" kw 663 "value" kw 664 "values" kw 665 "varying" loop 666 "wait" kw 667 "when" kw 668 "when-compiled" kw 669 "with" kw 670 "within" kw 671 "words" kw 672 "working-storage" kw 673 "write" kw 674 "write-only" kw 675 "zero" const 676 "zeroes" const 677 "zeros" const 678 done 679 "a-zA-Z0-9_\-" ident 680 681 :kw Keyword 682 * idle noeat 683 684 :oper Operator 685 * idle noeat 686 687 :loop Loop 688 * idle noeat 689 690 :cond Conditional 691 * idle noeat 692 693 :const Constant 694 * idle noeat 695 696 :bool Boolean 697 * idle noeat