403Webshell
Server IP : 217.160.0.212  /  Your IP : 216.73.216.141
Web Server : Apache
System : Linux www 6.18.51-i1-ampere #1196 SMP Fri Sep 11 20:43:55 CEST 2026 aarch64
User : sws1073854427 ( 1073854427)
PHP Version : 8.4.23
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /usr/share/emacs/28.2/lisp/progmodes/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/emacs/28.2/lisp/progmodes/dcl-mode.elc
;ELC
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.



(require 'tempo)
#@116 Font lock keyword specification for DCL mode.
Presently this includes some syntax, .OP.erators, and "f$" lexicals.
(defvar dcl-font-lock-keywords '(("\\<\\(if\\|then\\|else\\|endif\\)\\>" 1 font-lock-keyword-face) ("\\<f[$][a-z_]+\\>" 0 font-lock-builtin-face) ("[.]\\(eq\\|not\\|or\\|and\\|lt\\|gt\\|le\\|ge\\|eqs\\|nes\\)[.]" 0 font-lock-builtin-face)) (#$ . 102))
#@39 Font lock specification for DCL mode.
(defvar dcl-font-lock-defaults '(dcl-font-lock-keywords nil) (#$ . 475))
(byte-code "\300\301\302\303\304\305\306\307&\210\310\311\312\313\314DD\315\316\317%\210\310\320\312\313\321DD\322\316\317%\210\310\323\312\313\324DD\325\316\317%\210\310\326\312\313\327DD\330\316\317%\210\310\331\312\313\332DD\333\316\334%\210\310\335\312\313\336DD\337\316\334%\210\310\340\312\313\341DD\342\316\334%\210\310\343\312\313\344DD\345\316\346%\210\310\347\312\313\350DD\351\316\313%\210\310\352\312\313\353DD\354\316\355%\210\310\356\312\313\357DD\360\316\355%\210\310\361\312\313\362DD\363\316\364%\210\310\365\312\313\366DD\367\316\364%\210\310\370\312\313\371DD\372\316\364%\210\310\373\312\313\374DD\375\316\364%\210\310\376\312\313\377DD\201@\316\364%\210\310\201A\312\313\201BDD\201C\316\364%\210\310\201D\312\313\201EDD\201F\316\364%\210\310\201G\312\313\201HDD\201I\316\201J%\210\310\201K\312\313\201LDD\201M\316\201N%\207" [custom-declare-group dcl nil "Major mode for editing DCL command files." :link (custom-group-link :tag "Font Lock Faces group" font-lock-faces) :group languages custom-declare-variable dcl-basic-offset funcall function #[0 "\300\207" [4] 1 #1=""] "Number of columns to indent a block in DCL.\nA block is the commands between THEN-ELSE-ENDIF and between the commands\n`dcl-block-begin-regexp' and `dcl-block-end-regexp'.\n\nThe meaning of this variable may be changed if\n`dcl-calc-command-indent-function' is set to a function." :type integer dcl-continuation-offset #[0 "\300\207" [6] 1 #1#] "Number of columns to indent a continuation line in DCL.\nA continuation line is a line that follows a line ending with `-'.\n\nThe meaning of this variable may be changed if\n`dcl-calc-cont-indent-function' is set to a function." dcl-margin-offset #[0 "\300\207" [8] 1 #1#] "Indentation for the first command line in DCL.\nThe first command line in a file or after a SUBROUTINE statement is indented\nthis much.  Other command lines are indented the same number of columns as\nthe preceding command line.\nA command line is a line that starts with `$'." dcl-margin-label-offset #[0 "\300\207" [2] 1 #1#] "Number of columns to indent a margin label in DCL.\nA margin label is a label that doesn't begin or end a block, i.e. it\ndoesn't match `dcl-block-begin-regexp' or `dcl-block-end-regexp'." dcl-comment-line-regexp #[0 "\300\207" ["^\\$!"] 1 #1#] "Regexp describing the start of a comment line in DCL.\nComment lines are not indented." regexp dcl-block-begin-regexp #[0 "\300\207" ["loop[0-9]*:"] 1 #1#] "Regexp describing a command that begins an indented block in DCL.\nSet to nil to only indent at THEN-ELSE-ENDIF." dcl-block-end-regexp #[0 "\300\207" ["endloop[0-9]*:"] 1 #1#] "Regexp describing a command that ends an indented block in DCL.\nSet to nil to only indent at THEN-ELSE-ENDIF." dcl-calc-command-indent-function #[0 "\300\207" [nil] 1 #1#] "Function to calculate indentation for a command line in DCL.\nIf this variable is non-nil it is called as a function:\n\n(func INDENT-TYPE CUR-INDENT EXTRA-INDENT LAST-POINT THIS-POINT)\n\nThe function must return the number of columns to indent the current line or\nnil to get the default indentation.\n\nINDENT-TYPE is a symbol indicating what kind of indentation should be done.\nIt can have the following values:\n  indent      the indentation should be increased, e.g., after THEN.\n  outdent     the indentation should be decreased, e.g., a line with ENDIF.\n  first-line  indentation for the first line in a buffer or SUBROUTINE.\nCUR-INDENT is the indentation of the preceding command line.\nEXTRA-INDENT is the default change in indentation for this line\n(a negative number for “outdent”).\nLAST-POINT is the buffer position of the first significant word on the\nprevious line or nil if the current line is the first line.\nTHIS-POINT is the buffer position of the first significant word on the\ncurrent line.\n\nIf this variable is nil, the indentation is calculated as\nCUR-INDENT + EXTRA-INDENT.\n\nThis package includes two functions suitable for this:\n  `dcl-calc-command-indent-multiple'\n  `dcl-calc-command-indent-hang'" (choice (const nil) function) dcl-calc-cont-indent-function #[0 "\300\207" [dcl-calc-cont-indent-relative] 1 #1#] "Function to calculate indentation for a continuation line.\nIf this variable is non-nil it is called as a function:\n\n(func CUR-INDENT EXTRA-INDENT)\n\nThe function must return the number of columns to indent the current line or\nnil to get the default indentation.\n\nIf this variable is nil, the indentation is calculated as\nCUR-INDENT + EXTRA-INDENT.\n\nThis package includes one function suitable for this:\n  `dcl-calc-cont-indent-relative'" dcl-tab-always-indent #[0 "\300\207" [t] 1 #1#] "Controls the operation of the TAB key in DCL mode.\nIf t, pressing TAB always indents the current line.\nIf nil, pressing TAB indents the current line if point is at the left margin.\nData lines (i.e. lines not part of a command line or continuation line) are\nnever indented." boolean dcl-electric-characters #[0 "\300\207" [t] 1 #1#] "Non-nil means reindent immediately when a label, ELSE or ENDIF is inserted." dcl-tempo-comma #[0 "\300\207" [", "] 1 #1#] "Text to insert when a comma is needed in a template, in DCL mode." string dcl-tempo-left-paren #[0 "\300\207" ["("] 1 #1#] "Text to insert when a left parenthesis is needed in a template in DCL." dcl-tempo-right-paren #[0 "\300\207" [")"] 1 #1#] "Text to insert when a right parenthesis is needed in a template in DCL." dcl-imenu-label-labels #[0 "\300\207" ["Labels"] 1 #1#] "Imenu menu title for sub-listing with label names." dcl-imenu-label-goto #[0 "\300\207" ["GOTO"] 1 #1#] "Imenu menu title for sub-listing with GOTO statements." dcl-imenu-label-gosub #[0 "\300\207" ["GOSUB"] 1 #1#] "Imenu menu title for sub-listing with GOSUB statements." dcl-imenu-label-call #[0 "\300\207" ["CALL"] 1 #1#] "Imenu menu title for sub-listing with CALL statements." dcl-imenu-generic-expression #[0 "\304\305B	\306B\n\307B\310B\257\207" [dcl-imenu-label-labels dcl-imenu-label-goto dcl-imenu-label-gosub dcl-imenu-label-call (nil "^\\$[ 	]*\\([A-Za-z0-9_$]+\\):[ 	]+SUBROUTINE\\b" 1) ("^\\$[ 	]*\\([A-Za-z0-9_$]+\\):\\([ 	]\\|$\\)" 1) ("\\s-GOTO[ 	]+\\([A-Za-z0-9_$]+\\)" 1) ("\\s-GOSUB[ 	]+\\([A-Za-z0-9_$]+\\)" 1) ("\\s-CALL[ 	]+\\([A-Za-z0-9_$]+\\)" 1)] 6 #1#] "Default imenu generic expression for DCL.\n\nThe default includes SUBROUTINE labels in the main listing and\nsub-listings for other labels, CALL, GOTO and GOSUB statements.\nSee `imenu-generic-expression' for details." (repeat (sexp :tag "Imenu Expression")) dcl-mode-hook #[0 "\300\207" [nil] 1 #1#] "Hook called by `dcl-mode'." hook] 8)
#@35 Syntax table used in DCL-buffers.
(defvar dcl-mode-syntax-table nil (#$ . 7225))
(byte-code "\204%\301 \302\303\304#\210\302\305\306#\210\302\307\310#\210\302\311\312#\210\302\313\314#\210\301\207" [dcl-mode-syntax-table make-syntax-table modify-syntax-entry 33 "<" 10 ">" 60 "(>" 62 ")<" 92 "_"] 4)
#@34 Keymap used in DCL-mode buffers.
(defvar dcl-mode-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\301\316\317#\210\301\320\321#\210\301\322\323#\210\301\324\323#\210\301\325\323#\210\301\326\323#\210\301\327\323#\210\301\330\331#\210\301\332\333#\210\301\334\335#\210\207" [make-sparse-keymap define-key "\n" dcl-split-line "	" tempo-complete-tag "^" dcl-delete-indentation "m" dcl-back-to-indentation "e" dcl-forward-command "a" dcl-backward-command "" dcl-indent-command "	" dcl-tab ":" dcl-electric-character "F" "f" "E" "e" "" dcl-set-option "" tempo-forward-mark "" tempo-backward-mark] 5) (#$ . 7539))
#@28 Menu for DCL-mode buffers.
(defvar dcl-mode-menu nil (#$ . 8259))
(byte-code "\301\302\303\304$\210\305\306\307\310\311DD\312\313\314%\210\305\315\307\310\316DD\317\313\314%\210\305\320\307\310\321DD\322\313\314%\210\305\323\307\310\324DD\325\313\314%\210\305\326\307\310\327DD\330\313\331%\207" [dcl-mode-map easy-menu-do-define dcl-mode-menu "Menu for DCL-mode buffers." ("DCL" ["Buffer index menu" imenu] "---" ["Beginning of statement" dcl-backward-command] ["End of statement" dcl-forward-command] ["Back to indentation" dcl-back-to-indentation] ["Indent line/insert tab" dcl-tab] ["Indent command" dcl-indent-command] ["Split line" dcl-split-line] ["Delete indentation" dcl-delete-indentation] "---" ["Set option" dcl-set-option] ["Save changed options" dcl-save-nondefault-options] ["Save all options" dcl-save-all-options] "---" ["Complete template tag" tempo-complete-tag] ["Next template mark" tempo-forward-mark] ["Previous template mark" tempo-backward-mark]) custom-declare-variable dcl-ws-r funcall function #[0 "\300\207" ["\\([ 	]*-[ 	]*\\(!.*\\)*\n\\)*[ 	]*"] 1 #1=""] "Regular expression describing white space in a DCL command line.\nWhite space is any number of continued lines with only space,tab,endcomment\nfollowed by space or tab." :type regexp dcl-label-r #[0 "\300\207" ["[a-zA-Z0-9_$]*:\\([ 	!]\\|$\\)"] 1 #1#] "Regular expression describing a label.\nA label is a name followed by a colon followed by white-space or end-of-line." dcl-cmd-r #[0 "\300\207" ["^\\$\\(.*-[ 	]*\\(!.*\\)*\n\\)*[^!\"\n]*\\(\".*\\(\"\".*\\)*\"\\)*[^!\"\n]*"] 1 #1#] "Regular expression describing a DCL command line up to a trailing comment.\nA line starting with $, optionally followed by continuation lines,\nfollowed by the end of the command line.\nA continuation line is any characters followed by `-',\noptionally followed by a comment, followed by a newline." dcl-command-regexp #[0 "\300\207" ["^\\$\\(.*-[ 	]*\\(!.*\\)*\n\\)*.*\\(\".*\\(\"\".*\\)*\"\\)*"] 1 #1#] "Regular expression describing a DCL command line.\nA line starting with $, optionally followed by continuation lines,\nfollowed by the end of the command line.\nA continuation line is any characters followed by `-',\noptionally followed by a comment, followed by a newline." dcl-electric-reindent-regexps #[0 "\301\302E\207" [dcl-label-r "endif" "else"] 3 #1#] "Regexps that can trigger an electric reindent.\nA list of regexps that will trigger a reindent if the last letter\nis defined as `dcl-electric-character'.\n\nE.g.: if this list contains `endif', the key `f' is defined as\n`dcl-electric-character' and you have just typed the `f' in\n`endif', the line will be reindented." (repeat regexp)] 6)
#@256 Options and default values for `dcl-set-option'.

An alist with option variables and functions or keywords to get a
default value for the option.

The keywords are:
curval       the current value
toggle       the opposite of the current value (for t/nil)
(defvar dcl-option-alist '((dcl-basic-offset dcl-option-value-basic) (dcl-continuation-offset curval) (dcl-margin-offset dcl-option-value-margin-offset) (dcl-margin-label-offset dcl-option-value-offset) (dcl-comment-line-regexp dcl-option-value-comment-line) (dcl-block-begin-regexp curval) (dcl-block-end-regexp curval) (dcl-tab-always-indent toggle) (dcl-electric-characters toggle) (dcl-electric-reindent-regexps curval) (dcl-tempo-comma curval) (dcl-tempo-left-paren curval) (dcl-tempo-right-paren curval) (dcl-calc-command-indent-function curval) (dcl-calc-cont-indent-function curval) (comment-start curval) (comment-start-skip curval)) (#$ . 10950))
#@102 The history list for `dcl-set-option'.
Preloaded with all known option names from `dcl-option-alist'
(defvar dcl-option-history (mapcar #[257 "\300\301@\"\207" [format "%s"] 4 "\n\n(fn OPTION-ASSOC)"] dcl-option-alist) (#$ . 11869))
(defvar dcl-mode-hook nil)
(byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [dcl-mode-hook variable-documentation put "Hook run after entering DCL mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp dcl-mode-map definition-name dcl-mode] 4)
(defvar dcl-mode-map (make-sparse-keymap))
(byte-code "\301\302N\204\303\301\302\304\305!#\210\306\307!\204\303\307\310\311#\210\312\313 !\210\307\302N\204-\303\307\302\304\314!#\210\306\300!\204B\303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P\303\300\302\304\320!#\210\303\311\321\322#\207" [dcl-mode-abbrev-table dcl-mode-map variable-documentation put purecopy "Keymap for `dcl-mode'." boundp dcl-mode-syntax-table definition-name dcl-mode (lambda (#1=#:def-tmp-var) (defvar dcl-mode-syntax-table #1#)) make-syntax-table "Syntax table for `dcl-mode'." (lambda (#1#) (defvar dcl-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `dcl-mode'." derived-mode-parent prog-mode] 5)
#@3908 Major mode for editing DCL-files.

This mode indents command lines in blocks.  (A block is commands between
THEN-ELSE-ENDIF and between lines matching dcl-block-begin-regexp and
dcl-block-end-regexp.)

Labels are indented to a fixed position unless they begin or end a block.
Whole-line comments (matching dcl-comment-line-regexp) are not indented.
Data lines are not indented.

Key bindings:

\{dcl-mode-map}
Commands not usually bound to keys:

\[dcl-save-nondefault-options]		Save changed options
\[dcl-save-all-options]		Save all options
\[dcl-save-option]			Save any option
\[dcl-save-mode]			Save buffer mode

Variables controlling indentation style and extra features:

 dcl-basic-offset
    Extra indentation within blocks.

 dcl-continuation-offset
    Extra indentation for continued lines.

 dcl-margin-offset
    Indentation for the first command line in a file or SUBROUTINE.

 dcl-margin-label-offset
    Indentation for a label.

 dcl-comment-line-regexp
    Lines matching this regexp will not be indented.

 dcl-block-begin-regexp
 dcl-block-end-regexp
    Regexps that match command lines that begin and end, respectively,
    a block of command lines that will be given extra indentation.
    Command lines between THEN-ELSE-ENDIF are always indented; these variables
    make it possible to define other places to indent.
    Set to nil to disable this feature.

 dcl-calc-command-indent-function
    Can be set to a function that customizes indentation for command lines.
    Two such functions are included in the package:
	dcl-calc-command-indent-multiple
	dcl-calc-command-indent-hang

 dcl-calc-cont-indent-function
    Can be set to a function that customizes indentation for continued lines.
    One such function is included in the package:
	dcl-calc-cont-indent-relative    (set by default)

 dcl-tab-always-indent
    If t, pressing TAB always indents the current line.
    If nil, pressing TAB indents the current line if point is at the left
    margin.

 dcl-electric-characters
    Non-nil causes lines to be indented at once when a label, ELSE or ENDIF is
    typed.

 dcl-electric-reindent-regexps
    Use this variable and function dcl-electric-character to customize
    which words trigger electric indentation.

 dcl-tempo-comma
 dcl-tempo-left-paren
 dcl-tempo-right-paren
    These variables control the look of expanded templates.

 dcl-imenu-generic-expression
    Default value for `imenu-generic-expression'.  The default includes
    SUBROUTINE labels in the main listing and sub-listings for
    other labels, CALL, GOTO and GOSUB statements.

 dcl-imenu-label-labels
 dcl-imenu-label-goto
 dcl-imenu-label-gosub
 dcl-imenu-label-call
    Change the text that is used as sub-listing labels in imenu.

To run code after DCL mode has loaded, use `with-eval-after-load'.
Turning on DCL mode calls the value of the variable `dcl-mode-hook'
with no args, if that value is non-nil.


The following example uses the default values for all variables:

$! This is a comment line that is not indented (it matches
$! dcl-comment-line-regexp)
$! Next follows the first command line.  It is indented dcl-margin-offset.
$       i = 1
$       ! Other comments are indented like command lines.
$       ! A margin label indented dcl-margin-label-offset:
$ label:
$       if i.eq.1
$       then
$           ! Lines between THEN-ELSE and ELSE-ENDIF are
$           ! indented dcl-basic-offset
$           loop1: ! This matches dcl-block-begin-regexp...
$               ! ...so this line is indented dcl-basic-offset
$               text = "This " + - ! is a continued line
                       "lined up with the command line"
$               type sys$input
Data lines are not indented at all.
$           endloop1: ! This matches dcl-block-end-regexp
$       endif
$


There is some minimal font-lock support (see vars
`dcl-font-lock-defaults' and `dcl-font-lock-keywords').
(defalias 'dcl-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203\314\311\313\310\313N#\210\315!\204'\316\317 \"\210\320\f!\211\2035\211\321 =\203;\322\f\323 \"\210\210\324
\325\"\204R
5=\204R\326
\3255C#\210\327!\210\330\f!\210
5\306\331!\210\332\306\333!\210\334\306\335!\210\336\306\337!\210\340\306\341!\210\342!67\3078\3439\306\344!\210\306\345!\210\306\346!\210\306\347!\210\306\350!\210\306\351!\210\306\352!\210\306\353!\210\306\354!\210\306\355!\210\306\356!\210\306\357!\210\306\360!\210:0\361\362!\210)\363\364!\207" [delay-mode-hooks major-mode mode-name dcl-mode-map dcl-mode-syntax-table dcl-mode-abbrev-table make-local-variable t prog-mode dcl-mode "DCL" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table indent-line-function dcl-indent-line comment-start "!" comment-end "" comment-multi-line nil comment-start-skip "\\$[ 	]*![ 	]*" dcl-imenu-create-index-function dcl-comment-line-regexp dcl-block-begin-regexp dcl-block-end-regexp dcl-basic-offset dcl-continuation-offset dcl-margin-label-offset dcl-margin-offset dcl-tab-always-indent dcl-electric-characters dcl-calc-command-indent-function dcl-calc-cont-indent-function dcl-electric-reindent-regexps font-lock-defaults tempo-use-tag-list dcl-tempo-tags run-mode-hooks dcl-mode-hook local-abbrev-table dcl-imenu-generic-expression imenu-generic-expression imenu-case-fold-search imenu-create-index-function dcl-font-lock-defaults] 5 (#$ . 13204) nil])
#@63 Go to the beginning of the preceding or current command line.
(defalias 'dcl-beginning-of-statement #[0 "\301\302\303#\207" [dcl-command-regexp re-search-backward nil t] 4 (#$ . 18742) nil])
#@52 Go to the end of the next or current command line.
(defalias 'dcl-end-of-statement #[0 "\301 \204\302 \204\303 \203\304 \210\305\306\307#\207" [dcl-command-regexp dcl-end-of-command-p dcl-beginning-of-command-p dcl-command-p dcl-beginning-of-statement re-search-forward nil t] 4 (#$ . 18940) nil])
#@45 Move point to beginning of current command.
(defalias 'dcl-beginning-of-command #[0 "\300 \211\301=\205	n?\205\302 \207" [dcl-get-line-type $ dcl-beginning-of-statement] 3 (#$ . 19251) nil])
#@75 Move point to end of current command or next command if not on a command.
(defalias 'dcl-end-of-command #[0 "\300 \211\301=\204\211\302=\203\303 \210\304 \207\304 \207" [dcl-get-line-type $ - dcl-beginning-of-command dcl-end-of-statement] 3 (#$ . 19451) nil])
#@287 Move backward to a command.
Move point to the preceding command line that is not a comment line,
a command line with only a comment, only contains a `$' or only
contains a label.

Returns point of the found command line or nil if not able to move.

(fn &optional INCL-COMMENT-COMMANDS)
(defalias 'dcl-backward-command #[256 "`\305\211\204o\306 \203c\203\"\307\310	Q!\203\"\311\262`\262\202\n\2038\307\310	\nQ!\2038\311\262`\262\202\307!\204\204H\307\312!\204\307\313!\204\307\310	\f	\314\260!\204\311\262`\262\202b\210\311\262\305\262\202\207" [dcl-block-begin-regexp dcl-ws-r dcl-block-end-regexp dcl-comment-line-regexp dcl-label-r nil dcl-beginning-of-statement looking-at "^\\$" t "\\$[ 	]*!" "^\\$[ 	]*$" "$"] 10 (#$ . 19722) nil])
#@292 Move forward to a command.
Move point to the end of the next command line that is not a comment line,
a command line with only a comment, only contains a `$' or only
contains a label.

Returns point of the found command line or nil if not able to move.

(fn &optional INCL-COMMENT-COMMANDS)
(defalias 'dcl-forward-command #[256 "`\305\211\204t\306 \203h\212\307 \210\203&\310\311	Q!\203&\312\262`\262\202d\n\203<\310\311	\nQ!\203<\312\262`\262\202d\310!\204d\204L\310\313!\204d\310\314!\204d\310\311	\f	\315\260!\204d\312\262`\262)\202b\210\312\262\305\262\202\207" [dcl-block-begin-regexp dcl-ws-r dcl-block-end-regexp dcl-comment-line-regexp dcl-label-r nil dcl-end-of-statement dcl-beginning-of-statement looking-at "^\\$" t "\\$[ 	]*!" "^\\$[ 	]*$" "$"] 10 (#$ . 20504) nil])
#@527 Move point to the first non-whitespace character on this line.
Leading $ and labels counts as whitespace in this case.
If this is a comment line then move to the first non-whitespace character
in the comment.

Typing \[dcl-back-to-indentation] several times in a row will move point to other
`interesting' points closer to the left margin, and then back to the
rightmost point again.

E.g. on the following line, point would go to the positions indicated
by the numbers in order 1-2-3-1-... :

  $ label: command
  3 2      1
(defalias 'dcl-back-to-indentation #[0 "\301=\203\n\302`!\207\302 \207" [last-command dcl-back-to-indentation dcl-back-to-indentation-1] 2 (#$ . 21323) nil])
#@70 Helper function for `dcl-back-to-indentation'.

(fn &optional LIMIT)
(defalias 'dcl-back-to-indentation-1 #[256 "\304 T\206\211``\305 \210`U\203\262`W\203`\262\306!\2039\307\310P\311#\210`W\203\216`\262\202\216\306\312!\203\216\307\312\311#\210`W\203N`\262\306	!\203p\n\203^\306\n!\204p\203h\306!\204p\307	\310P\311#\210`W\203y`\262\306\313!\203\205\307\313\311#\210`W\203\216`\262b\207" [dcl-comment-line-regexp dcl-label-r dcl-block-begin-regexp dcl-block-end-regexp line-end-position back-to-indentation looking-at re-search-forward "[ 	]*" t "^\\$[ 	]*" "![ 	]*"] 9 (#$ . 22015)])
#@363 Determine the type of the current line.
Returns one of the following symbols:
  $          for a complete command line or the beginning of a command line.
  -          for a continuation line
  $!         for a comment line
  data       for a data line
  empty-data for an empty line following a data line
  empty-$    for an empty line following a command line
(defalias 'dcl-get-line-type #[0 "\212\302 \210\303!\205\304)\206x\212\302 \210\303\305!\205\306)\206x\212\302 \210o?\205:`\307 \210\310	\311#\210`Y\2058\312\262)\206x\212n\205sl\205so\203O\313\202s\314y\210\315 \211\306=\204f\211\304=\204f\211\312=\203j\313\202q\211\316=\205q\317\262)\206x\316\207" [dcl-comment-line-regexp dcl-command-regexp beginning-of-line looking-at $! "^\\$" $ dcl-beginning-of-statement re-search-forward t - empty-$ -1 dcl-get-line-type data empty-data] 5 (#$ . 22649)])
#@54 Return point of first non-`whitespace' on this line.
(defalias 'dcl-indentation-point #[0 "\212\300 \210`)\207" [dcl-back-to-indentation] 1 (#$ . 23539)])
#@27 Test `dcl-get-line-type'.
(defalias 'dcl-show-line-type #[0 "\300 \211\301\267\202$\302\303!\207\302\304!\207\302\305!\207\302\306!\207\302\307!\207\302\310!\207\302\311!\207\302\312!\207" [dcl-get-line-type #s(hash-table size 7 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data ($ 8 \? 12 $! 16 - 20 data 24 empty-data 28 empty-$ 32)) message "command line" "?" "comment line" "continuation line" "data" "empty-data" "empty-$" "hupp"] 3 (#$ . 23700) nil])
#@533 Indent lines to a multiple of dcl-basic-offset.

Set dcl-calc-command-indent-function to this function to customize
indentation of command lines.

Command lines that need to be indented beyond the left margin are
always indented to a column that is a multiple of dcl-basic-offset, as
if tab stops were set at 4, 8, 12, etc.

This supports a formatting style like this (dcl-margin offset = 2,
dcl-basic-offset = 4):

$ if cond
$ then
$   if cond
$   then
$       ! etc

(fn INDENT-TYPE CUR-INDENT EXTRA-INDENT LAST-POINT THIS-POINT)
(defalias 'dcl-calc-command-indent-multiple #[1285 "\301\302=\205\211\246Z\262\211\\\211\262\207" [dcl-basic-offset nil indent] 9 (#$ . 24179)])
#@473 Indent lines as default, but indent THEN, ELSE and ENDIF extra.

Set dcl-calc-command-indent-function to this function to customize
indentation of command lines.

This function supports a formatting style like this:

$ if cond
$   then
$     xxx
$   endif
$ xxx

If you use this function you will probably want to add "then" to
dcl-electric-reindent-regexps and define the key "n" as
dcl-electric-character.

(fn INDENT-TYPE CUR-INDENT EXTRA-INDENT LAST-POINT THIS-POINT)
(defalias 'dcl-calc-command-indent-hang #[1285 "\301\212\302\267\202i\211b\210\303\304!\203\\\305\\\206jb\210\303\306!\205j\\\305Z\202jb\210\303\304!\203<\\\305Z\202j\303\307!\205j\\\305Z\202j\211b\210\303\306!\203[\\\305\\\202j\303\307!\205j\\\305\\\202j\310*\207" [case-fold-search t #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (nil 9 indent 43 outdent 74)) looking-at "\\bthen\\b" 2 "\\bendif\\b" "\\belse\\b" nil] 7 (#$ . 24871)])
#@1843 Calculate how much the current line shall be indented.
The line is known to be a command line.

Find the indentation of the preceding line and analyze its contents to
see if the current lines should be indented.
Analyze the current line to see if it should be `outdented'.

Calculate the indentation of the current line, either with the default
method or by calling `dcl-calc-command-indent-function' if it is
non-nil.

If the current line should be outdented, calculate its indentation,
either with the default method or by calling
`dcl-calc-command-indent-function' if it is non-nil.


Rules for default indentation:

If it is the first line in the buffer, indent `dcl-margin-offset'.

Go to the previous command line with a command on it.
Find out how much it is indented (cur-indent).
Look at the first word on the line to see if the indentation should be
adjusted.  Skip margin-label, continuations and comments while looking for
the first word.  Save this buffer position as `last-point'.
If the first word after a label is SUBROUTINE, set extra-indent to
`dcl-margin-offset'.

First word  extra-indent
THEN        +dcl-basic-offset
ELSE        +dcl-basic-offset
block-begin +dcl-basic-offset

Then return to the current line and look at the first word to see if the
indentation should be adjusted again.  Save this buffer position as
`this-point'.

First word  extra-indent
ELSE        -dcl-basic-offset
ENDIF       -dcl-basic-offset
block-end   -dcl-basic-offset


If dcl-calc-command-indent-function is nil or returns nil set
cur-indent to cur-indent+extra-indent.

If an extra adjustment is necessary and if
dcl-calc-command-indent-function is nil or returns nil set cur-indent
to cur-indent+extra-indent.

See also documentation for dcl-calc-command-indent-function.
The indent-type classification could probably be expanded upon.
(defalias 'dcl-calc-command-indent #[0 "\212\306 \210\307\310\307\311\307\211\211\211\211\211o\203%\311\262	\262\312\262\313 \262\202\367\212\307\211\204\210\314 \203{\n\203F\315\316\nQ!\203F\310\262\310\262\202'\f\203\\\315\316\fQ!\203\\\310\262\310\262\202'\315
!\204'\315\317!\204'\315\316\320\260!\204'\310\262\202'	\262	\313 \262\310\262\202'\204\365\315\321\322R!\203\244	\262	\323\224T\262\210\202\366\n\203\260\324\321!\210\202\270\324\325\326Q!\210i\262	\324!\210`\262\315\327!\203\323\262\330\262\210\202\366\315\331!\203\344\262\330\262\210\202\366\n\203\365\315\n!\203\365\262\330\262\210)\311\262\324\316P!\210\313 \262\315\331!\203[\262\332\262\202S\315\333!\203&[\262\332\262\202S\f\203;\315\f!\203;[\262\332\262\202S\315\322Q!\203S\311\262	\262\312\262\323\224T\262\203h		%\206m\\\262\211\203\222\204{\262\203\215%\206\220\\\262)\266\212)\207" [case-fold-search dcl-margin-offset dcl-block-begin-regexp dcl-ws-r dcl-block-end-regexp dcl-comment-line-regexp beginning-of-line nil t 0 first-line dcl-indentation-point dcl-beginning-of-statement looking-at "^\\$" "^\\$[ 	]*$" "$" "^\\$[ 	]*" "\\(subroutine\\b\\)" 1 re-search-forward "^\\$[ 	]*\\(" "\\)*[ 	]*" "\\bthen\\b" indent "\\belse\\b" outdent "\\bendif\\b" dcl-label-r dcl-basic-offset dcl-calc-command-indent-function] 17 (#$ . 25857)])
#@690 Indent continuation lines to align with words on previous line.

Indent continuation lines to a position relative to preceding
significant command line elements.

Set `dcl-calc-cont-indent-function' to this function to customize
indentation of continuation lines.

Indented lines will align with either:

* the second word on the command line
  $ set default -
        [-]
* the word after an assignment
  $ a = b + -
        d
* the third word if it's a qualifier
  $ set terminal/width=80 -
                /page=24
* the innermost nonclosed parenthesis
  $ if ((a.eq.b .and. -
         d.eq.c .or. f$function(xxxx, -
                                yyy)))

(fn CUR-INDENT EXTRA-INDENT)
(defalias 'dcl-calc-cont-indent-relative #[514 "\303\304\212\305 \210\212\306y\210`)\307\310	\311Q\303#\203Q\312w\313V\203Q\304\314w\210\315\316!\2033\303\262\317w\210i\262\211\204P\320w\313V\203P\314w\210`f\321U\203Pi\262\210\210)\212\322 \210\212\305 \210`)\303\323`\"A@\211\203r\212\211b\210iT)\262)\266*\207" [case-fold-search dcl-label-r parse-sexp-ignore-comments t nil dcl-beginning-of-statement 1 re-search-forward "^\\$[ 	]*\\(" "\\)*[ 	]*" "@:[]<>$\\-a-zA-Z0-9_.;" 0 " 	" looking-at ":?==?" " 	:=" "a-zA-Z0-9_" 47 beginning-of-line parse-partial-sexp] 9 (#$ . 29161)])
#@169 Calculate how much the current line shall be indented.
The line is known to be a continuation line.

Go to the previous command line.
Find out how much it is indented.
(defalias 'dcl-calc-continuation-indent #[0 "\212\306 \210o\203\f\202\233\307\211\212\307\211\204l\310 \203c	\203/\311\312\n	Q!\203/\313\262\313\262\202\203E\311\312\nQ!\203E\313\262\313\262\202\311\f!\204\311\314!\204\311\312\n
\n\315\260!\204\313\262\202\262\313\262\202\204\205\203{\316\317!\210\202\202\316\320
\321Q!\210i\262\210)\203\225\"\206\231\211\\\266\202)\207" [dcl-margin-offset dcl-block-begin-regexp dcl-ws-r dcl-block-end-regexp dcl-comment-line-regexp dcl-label-r beginning-of-line nil dcl-beginning-of-statement looking-at "^\\$" t "^\\$[ 	]*$" "$" re-search-forward "^\\$[ 	]*" "^\\$[ 	]*\\(" "\\)*[ 	]*" dcl-calc-cont-indent-function dcl-continuation-offset] 9 (#$ . 30458)])
#@43 Indent a line known to be a command line.
(defalias 'dcl-indent-command-line #[0 "\304 d`Z\212\305 \210\306\307!\210\2033\310	!\2033\n\203!\310\n!\2043\203+\310!\2043\311!\210\306	!\210\311\312\"\210)dZ`V\205EdZb\207" [dcl-margin-label-offset dcl-label-r dcl-block-begin-regexp dcl-block-end-regexp dcl-calc-command-indent beginning-of-line re-search-forward "^\\$[ 	]*" looking-at dcl-indent-to 1] 5 (#$ . 31380)])
#@187 Indent a line known to be a continuation line.

Notice that no special treatment is made for labels.  They have to be
on the first part on a command line to be taken into consideration.
(defalias 'dcl-indent-continuation-line #[0 "\300 \212\301 \210\302\303!\210\304!\210)\305\306w\207" [dcl-calc-continuation-indent beginning-of-line re-search-forward "^[ 	]*" dcl-indent-to " 	" nil] 3 (#$ . 31817)])
#@66 Delete all characters in the set CHARS around point.

(fn CHARS)
(defalias 'dcl-delete-chars #[257 "\211\300x\210`\300w\210`|\207" [nil] 4 (#$ . 32227)])
#@115 The DCL version of `indent-line-function'.
Adjusts indentation on the current line.  Data lines are not indented.
(defalias 'dcl-indent-line #[0 "\300 \211\301\267\202\302 \207\303\304!\207\305\207\305\207\305\207\306 \207\307c\210\302 \207\303\310!\207" [dcl-get-line-type #s(hash-table size 7 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data ($ 8 \? 11 $! 15 data 17 empty-data 19 - 21 empty-$ 24)) dcl-indent-command-line message "Unknown line type!" t dcl-indent-continuation-line "$" "dcl-indent-line: unknown type"] 3 (#$ . 32389)])
#@86 Indent the complete command line that point is on.
This includes continuation lines.
(defalias 'dcl-indent-command #[0 "\300 \211\301=\204\211\302=\204\211\303=\205'\212\304\305\306!\204\307 \210`\310 \210`\311#)\207" [dcl-get-line-type $ - empty-$ indent-region looking-at "^\\$" dcl-beginning-of-statement dcl-end-of-statement nil] 5 (#$ . 32951) "*"])
#@228 Insert tab in data lines or indent code.
If `dcl-tab-always-indent' is t, code lines are always indented.
If nil, indent the current line only if point is at the left margin or in
the lines indentation; otherwise insert a tab.
(defalias 'dcl-tab #[0 "\301 `\302=\204\303=\203\304 \207\305\267\2029\212\306 \210\307\310\311#)n\2040\211\2033\211Y\2033\312 \207\304 \207\312 \207\302=\204E\303=\205G\304 \207" [dcl-tab-always-indent dcl-get-line-type data empty-data tab-to-tab-stop #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (nil 24 t 54)) beginning-of-line re-search-forward "^\\$?[ 	]*" t dcl-indent-line] 6 (#$ . 33320) "*"])
#@331 Insert a character and indent if necessary.
Insert a character if the user gave a numeric argument or the flag
`dcl-electric-characters' is not set.  If an argument was given,
insert that many characters.

The line is only reindented if the word just typed matches any of the
regexps in `dcl-electric-reindent-regexps'.

(fn ARG)
(defalias 'dcl-electric-character #[257 "\211\204\204\211\203\303\304!!\207\303\305!\207\303\305!\210\306\211\307\310\n\">\205'\311 )\207" [dcl-electric-characters case-fold-search dcl-electric-reindent-regexps self-insert-command prefix-numeric-value 1 t mapcar dcl-was-looking-at dcl-indent-line] 6 (#$ . 34013) "*P"])
#@93 Like `indent-to', but only indents if indentation would change.

(fn COL &optional MINIMUM)
(defalias 'dcl-indent-to #[513 "\300\211\211\212\301\300w\210i\262\301\300x\210i\262)\206\302\\]\262\211U?\205-\303\301!\210\304\"\207" [nil " 	" 0 dcl-delete-chars indent-to] 8 (#$ . 34680) nil])
#@121 Break line at point and insert text to keep the syntax valid.

Inserts continuation marks and splits character strings.
(defalias 'dcl-split-line #[0 "\300\301 \211\302=\204\211\303=\203s\304\212\305 \210`)`\"\3068\203+\307c\210\310 \210\311\262\210\202s\3128\204rl\204W`f\313U\203W`Sf\313U\203W\314u\210\307c\210\315u\210\310 \210\311\262\210\202s\316\317!\203c\320\321!\204r\322 \210\323c\210\324c\210\310 \210\311\262\210?\205z\325 \207" [nil dcl-get-line-type $ - parse-partial-sexp dcl-beginning-of-statement 3 "\" + -\n\"" indent-according-to-mode t 4 34 -1 1 dcl-was-looking-at "[ 	]*-[ 	]*" looking-at "[ 	]*\\(!.*\\)?$" delete-horizontal-space " -" "\n" indent-new-comment-line] 5 (#$ . 34988) "*"])
#@129 Join this line to previous like `delete-indentation'.
Also remove the continuation mark if easily detected.

(fn &optional ARG)
(defalias 'dcl-delete-indentation #[256 "\300!\210\301 \211\302>\205o?\205`Sf\303U\205\304\305!\210\306 \207" [delete-indentation dcl-get-line-type ($ - empty-$) 45 delete-char -1 fixup-whitespace] 4 (#$ . 35723) "*P"])
#@52 Guess a value for basic-offset.

(fn OPTION-ASSOC)
(defalias 'dcl-option-value-basic #[257 "\212\301 \210\212\302 \210i)\212\303 \205\302 \210i)\212\304 \210\305 \205%\301 \210\302 \210i)\205/\306Z!\211\203?\211\307U\204?\211\266\204\202X\203UZ\307U\204U\306Z!\266\204\202X\266\204)\207" [dcl-basic-offset dcl-beginning-of-command dcl-back-to-indentation dcl-backward-command dcl-end-of-command dcl-forward-command abs 0] 8 (#$ . 36084)])
#@138 Guess a value for an offset.
Find the column of the first non-blank character on the line.
Returns the column offset.

(fn OPTION-ASSOC)
(defalias 'dcl-option-value-offset #[257 "\212\300 \210\301\302\303\304#\210i)\207" [beginning-of-line re-search-forward "^\\$[ 	]*" nil t] 5 (#$ . 36549)])
#@166 Guess a value for margin offset.
Find the column of the first non-blank character on the line, not
counting labels.
Returns a number as a string.

(fn OPTION-ASSOC)
(defalias 'dcl-option-value-margin-offset #[257 "\212\300 \210\301 \210i)\207" [beginning-of-line dcl-back-to-indentation] 2 (#$ . 36850)])
#@87 Guess a value for `dcl-comment-line-regexp'.
Must return a string.

(fn OPTION-ASSOC)
(defalias 'dcl-option-value-comment-line #[257 "\301\302\212\303 \210\304\305!\203\306\224\306\225{\307\310!P\262\202)\"\207" [dcl-comment-line-regexp format "%S" beginning-of-line looking-at "^\\$[^!\n]*!" 0 "^" regexp-quote] 7 (#$ . 37161)])
#@78 Guess what value the user would like to give the symbol option.

(fn OPTION)
(defalias 'dcl-guess-option-value #[257 "\301\"\211@A@\302!\203\211!\202F\211\303\267\202=J?\202FJ;\204-J\247\2035\304\305J\"\202F\304\306J\"\202F\302!\205F\211!\211;\203L\207\304\305\"\207" [dcl-option-alist assoc fboundp #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (toggle 27 curval 33)) format "%S" "'%S"] 8 (#$ . 37504)])
#@125 Guess what option the user wants to set by looking around in the code.
Returns the name of the option variable as a string.
(defalias 'dcl-guess-option #[0 "\305\306 \307=\203
\310\202\321\212\311 \210\312\313!)\203\314\202\321\212\311 \210\312\315	\n\316R!\2060\212\317\305!)?)\2038\320\202\321\212\311 \210\306 \321=\205O\317 \205O\312\315	\n\316R!)\203W\320\202\321\212\311 \210\312\315	P!\205z\205l\312\315P!?\205z\f\205y\312\315\fP!?)\203\202\322\202\321\306 \321=\203\320\212\311 \210\212\323 \210i)\212\317 \205\235\323 \210i)\212\324 \210\325 \205\256\326 \210\323 \210i)\203\274Z\327U?\206\306\211\205\306Z\327U?\266\203)\203\320\330\202\321\331)\207" [case-fold-search dcl-label-r dcl-ws-r dcl-block-begin-regexp dcl-block-end-regexp t dcl-get-line-type - "dcl-calc-cont-indent-function" beginning-of-line looking-at "^\\$[ 	]*!" "dcl-comment-line-regexp" "^\\$[ 	]*" "subroutine" dcl-backward-command "dcl-margin-offset" $ "dcl-margin-label-offset" dcl-back-to-indentation dcl-end-of-command dcl-forward-command dcl-beginning-of-command 0 "dcl-basic-offset" ""] 5 (#$ . 37979)])
#@236 Set a value for one of the dcl customization variables.
The function tries to guess which variable should be set and to what value.
All variable names are available as completions and in the history list.

(fn OPTION-SYM OPTION-VALUE)
(defalias 'dcl-set-option #[514 "L\207" [] 4 (#$ . 39110) (byte-code "\301\302\303\304\305\"\306\307\310 \311&!\312\313\314\"\315!\"D\207" [dcl-option-alist intern completing-read "Set DCL option: " mapcar #[257 "\300\301@\"C\207" [format "%s"] 4 "\n\n(fn OPTION-ASSOC)"] nil t dcl-guess-option dcl-option-history eval-minibuffer format "Set DCL option %s to: " dcl-guess-option-value] 8)])
#@167 Save a variable in a `Local Variables' list.
Set or update the value of VAR in the current buffers
`Local Variables:' list.

(fn VAR &optional DEF-PREFIX DEF-SUFFIX)
(defalias 'dcl-save-local-variable #[769 "\212db\210\304\305d\306Ze]\307#\210\310\311\312\313\310#)\203\310\313\211\211\211\211\211\314\313w\210l\204.`\315 {\262\316\224b\210n\204>`\317 \210`{\262\203KG\262\320!\262\211\203V\320!\321P\262\205		\203f\322\323!\210\202i\324y\210\203~\325!\203zu\210\202~\326\327!\210\314\313w\210`\262\330\313w\210l\203\221\326\331!\210\314\313x\210`{\332!\227\333\230\203\277\313\262	\317 \210\334
!\335\336J!\337\340\260c\266\202V=\203\313\262	\341\313w\210\324u\210`\332p!\210`|\210\337c\210\342\fJp\"\210\340\313x\210\314\313w\210\203\365\325!\202\366l\204\326\343!\266\202V\313\210\266\202V\266\207\202wdb\210n\204\340c\210\203 \2028\n\2058\n\344\232\2041\345\346\n\"\2035\n\2028\n\337P\203@\202X\205X\344\232\204Q\345\347\"\203U\202X\337P\350\340Rc\210\334!\335\336J!\340\260c\210\351Qc\266\202)\207" [case-fold-search selective-display comment-start comment-end search-backward "\n\f" 3000 move t search-forward "Local Variables:" nil " 	" line-end-position 0 beginning-of-line regexp-quote "$" re-search-forward "[\n
]" 1 looking-at error "Local variables entry is missing the prefix" "^:\n" "Missing colon in local variables entry" read "end" symbol-name ": " prin1-to-string " " "\n" "^:" prin1 "Local variables entry is terminated incorrectly" "" string-match "[ 	]$" "^[ 	]" "Local variables:" "end:"] 19 (#$ . 39752)])
#@160 Save all `dcl-mode' options for this buffer.
Saves or updates all `dcl-mode' related options in a `Local Variables:'
section at the end of the current buffer.
(defalias 'dcl-save-all-options #[0 "\301\302\"\207" [dcl-option-alist mapcar #[257 "\211@\300\301\"\207" [dcl-save-local-variable "$! "] 5 "\n\n(fn OPTION-ASSOC)"]] 3 (#$ . 41384) "*"])
#@480 Save changed DCL mode options for this buffer.
Saves or updates all DCL mode related options that don't have their
default values in a `Local Variables:' section at the end of the
current buffer.

No entries are removed from the `Local Variables:' section.  This means
that if a variable is given a non-default value in the section and
later is manually reset to its default value, the variable's entry will
still be present in the `Local Variables:' section with its old value.
(defalias 'dcl-save-nondefault-options #[0 "\301\302\"\207" [dcl-option-alist mapcar #[257 "\211@\300!\211\301\302O\303\230\205\304!J\232?\205\305\306\"\207" [symbol-name 0 4 "dcl-" default-value dcl-save-local-variable "$! "] 6 "\n\n(fn OPTION-ASSOC)"]] 3 (#$ . 41739) "*"])
#@147 Save a DCL mode option for this buffer.
Saves or updates an option in a `Local Variables:'
section at the end of the current buffer.

(fn OPTION)
(defalias 'dcl-save-option #[257 "\300!\207" [dcl-save-local-variable] 3 (#$ . 42510) (byte-code "\301\302\303\"!\211C\207" [obarray intern completing-read "Option: "] 4)])
#@128 Save the current mode for this buffer.
Save the current mode in a `Local Variables:'
section at the end of the current buffer.
(defalias 'dcl-save-mode #[0 "\302!\303\304	\"\203\305	\306\211\224O!\307\301!)\202\310\311	\")\207" [major-mode mode prin1-to-string string-match "-mode$" intern 0 dcl-save-option message "Strange mode: %s"] 4 (#$ . 42838) nil])
#@26 Tempo tags for DCL mode.
(defvar dcl-tempo-tags nil (#$ . 43208))
(byte-code "\300\301\302\303\304\305%\210\300\306\307\310\304\305%\210\300\311\312\313\304\305%\210\300\314\315\316\304\305%\210\300\317\320\321\304\305%\210\300\322\323\324\304\305%\210\300\325\326\327\304\305%\210\300\330\331\332\304\305%\210\300\333\334\335\304\305%\210\300\336\337\340\304\305%\210\300\341\342\343\304\305%\210\300\344\345\346\304\305%\210\300\347\350\351\304\305%\210\300\352\353\354\304\305%\210\300\355\356\357\304\305%\210\300\360\361\362\304\305%\210\300\363\364\365\304\305%\210\300\366\367\370\304\305%\210\300\371\372\373\304\305%\210\300\374\375\376\304\305%\210\300\377\201@\201A\304\305%\210\300\201B\201C\201D\304\305%\210\300\201E\201F\201G\304\305%\210\300\201H\201I\201J\304\305%\210\300\201K\201L\201M\304\305%\210\300\201N\201O\201P\304\305%\210\300\201Q\201R\201S\304\305%\210\300\201T\201U\201V\304\305%\210\300\201W\201X\201Y\304\305%\210\300\201Z\201[\201\\\304\305%\210\300\201]\201^\201_\304\305%\210\300\201`\201a\201b\304\305%\210\300\201c\201d\201e\304\305%\210\300\201f\201g\201h\304\305%\210\300\201i\201j\201k\304\305%\207" [tempo-define-template "dcl-f$context" ("f$context" dcl-tempo-left-paren (p "context-type: ") dcl-tempo-comma (p "context-symbol: ") dcl-tempo-comma (p "selection-item: ") dcl-tempo-comma (p "selection-value: ") dcl-tempo-comma (p "value-qualifier: ") dcl-tempo-right-paren) "f$context" "" dcl-tempo-tags "dcl-f$csid" ("f$csid" dcl-tempo-left-paren (p "context-symbol: ") dcl-tempo-right-paren) "f$csid" "dcl-f$cvsi" ("f$cvsi" dcl-tempo-left-paren (p "start-bit: ") dcl-tempo-comma (p "number-of-bits: ") dcl-tempo-comma (p "string: ") dcl-tempo-right-paren) "f$cvsi" "dcl-f$cvtime" ("f$cvtime" dcl-tempo-left-paren (p "[input_time]: ") dcl-tempo-comma (p "[output_time_format]: ") dcl-tempo-comma (p "[output_field]: ") dcl-tempo-right-paren) "f$cvtime" "dcl-f$cvui" ("f$cvui" dcl-tempo-left-paren (p "start-bit: ") dcl-tempo-comma (p "number-of-bits: ") dcl-tempo-comma (p "string") dcl-tempo-right-paren) "f$cvui" "dcl-f$device" ("f$device" dcl-tempo-left-paren (p "[search_devnam]: ") dcl-tempo-comma (p "[devclass]: ") dcl-tempo-comma (p "[devtype]: ") dcl-tempo-comma (p "[stream-id]: ") dcl-tempo-right-paren) "f$device" "dcl-f$directory" ("f$directory" dcl-tempo-left-paren dcl-tempo-right-paren) "f$directory" "dcl-f$edit" ("f$edit" dcl-tempo-left-paren (p "string: ") dcl-tempo-comma (p "edit-list: ") dcl-tempo-right-paren) "f$edit" "dcl-f$element" ("f$element" dcl-tempo-left-paren (p "element-number: ") dcl-tempo-comma (p "delimiter: ") dcl-tempo-comma (p "string: ") dcl-tempo-right-paren) "f$element" "dcl-f$environment" ("f$environment" dcl-tempo-left-paren (p "item: ") dcl-tempo-right-paren) "f$environment" "dcl-f$extract" ("f$extract" dcl-tempo-left-paren (p "start: ") dcl-tempo-comma (p "length: ") dcl-tempo-comma (p "string: ") dcl-tempo-right-paren) "f$extract" "dcl-f$fao" ("f$fao" dcl-tempo-left-paren (p "control-string: ") dcl-tempo-comma ("argument[,...]: ") dcl-tempo-right-paren) "f$fao" "dcl-f$file_attributes" ("f$file_attributes" dcl-tempo-left-paren (p "filespec: ") dcl-tempo-comma (p "item: ") dcl-tempo-right-paren) "f$file_attributes" "dcl-f$getdvi" ("f$getdvi" dcl-tempo-left-paren (p "device-name: ") dcl-tempo-comma (p "item: ") dcl-tempo-right-paren) "f$getdvi" "dcl-f$getjpi" ("f$getjpi" dcl-tempo-left-paren (p "pid: ") dcl-tempo-comma (p "item: ") dcl-tempo-right-paren) "f$getjpi" "dcl-f$getqui" ("f$getqui" dcl-tempo-left-paren (p "function: ") dcl-tempo-comma (p "[item]: ") dcl-tempo-comma (p "[object-id]: ") dcl-tempo-comma (p "[flags]: ") dcl-tempo-right-paren) "f$getqui" "dcl-f$getsyi" ("f$getsyi" dcl-tempo-left-paren (p "item: ") dcl-tempo-comma (p "[node-name]: ") dcl-tempo-comma (p "[cluster-id]: ") dcl-tempo-right-paren) "f$getsyi" "dcl-f$identifier" ("f$identifier" dcl-tempo-left-paren (p "identifier: ") dcl-tempo-comma (p "conversion-type: ") dcl-tempo-right-paren) "f$identifier" "dcl-f$integer" ("f$integer" dcl-tempo-left-paren (p "expression: ") dcl-tempo-right-paren) "f$integer" "dcl-f$length" ("f$length" dcl-tempo-left-paren (p "string: ") dcl-tempo-right-paren) "f$length" "dcl-f$locate" ("f$locate" dcl-tempo-left-paren (p "substring: ") dcl-tempo-comma (p "string: ") dcl-tempo-right-paren) "f$locate" "dcl-f$message" ("f$message" dcl-tempo-left-paren (p "status-code: ") dcl-tempo-right-paren) "f$message" "dcl-f$mode" ("f$mode" dcl-tempo-left-paren dcl-tempo-right-paren) "f$mode" "dcl-f$parse" ("f$parse" dcl-tempo-left-paren (p "filespec: ") dcl-tempo-comma (p "[default-spec]: ") dcl-tempo-comma (p "[related-spec]: ") dcl-tempo-comma (p "[field]: ") dcl-tempo-comma (p "[parse-type]: ") dcl-tempo-right-paren) "f$parse" "dcl-f$pid" ("f$pid" dcl-tempo-left-paren (p "context-symbol: ") dcl-tempo-right-paren) "f$pid" "dcl-f$privilege" ("f$privilege" dcl-tempo-left-paren (p "priv-states: ") dcl-tempo-right-paren) "f$privilege" "dcl-f$process" ("f$process()") "f$process" "dcl-f$search" ("f$search" dcl-tempo-left-paren (p "filespec: ") dcl-tempo-comma (p "[stream-id]: ") dcl-tempo-right-paren) "f$search" "dcl-f$setprv" ("f$setprv" dcl-tempo-left-paren (p "priv-states: ") dcl-tempo-right-paren) "f$setprv" "dcl-f$string" ("f$string" dcl-tempo-left-paren (p "expression: ") dcl-tempo-right-paren) "f$string" "dcl-f$time" ("f$time" dcl-tempo-left-paren dcl-tempo-right-paren) "f$time" "dcl-f$trnlnm" ("f$trnlnm" dcl-tempo-left-paren (p "logical-name: ") dcl-tempo-comma (p "[table]: ") dcl-tempo-comma (p "[index]: ") dcl-tempo-comma (p "[mode]: ") dcl-tempo-comma (p "[case]: ") dcl-tempo-comma (p "[item]: ") dcl-tempo-right-paren) "f$trnlnm" "dcl-f$type" ("f$type" dcl-tempo-left-paren (p "symbol-name: ") dcl-tempo-right-paren) "f$type" "dcl-f$user" ("f$user" dcl-tempo-left-paren dcl-tempo-right-paren) "f$user" "dcl-f$verify" ("f$verify" dcl-tempo-left-paren (p "[procedure-value]: ") dcl-tempo-comma (p "[image-value]: ") dcl-tempo-right-paren) "f$verify"] 6)
#@75 Return t if point is at the beginning of a command.
Otherwise return nil.
(defalias 'dcl-beginning-of-command-p #[0 "n\205\300 \301=\207" [dcl-get-line-type $] 2 (#$ . 49250)])
#@188 Check if point is at the end of a command.
Return t if point is at the end of a command, either the end of an
only line or at the end of the last continuation line.
Otherwise return nil.
(defalias 'dcl-end-of-command-p #[0 "\300 l\205\211\301=\204\211\302=\205\212\303y\210\300 )\302=?\207" [dcl-get-line-type $ - nil] 3 (#$ . 49436)])
#@123 Check if point is on a command line.
Return t if point is on a command line or a continuation line,
otherwise return nil.
(defalias 'dcl-command-p #[0 "\300 \211\301=\206\211\302=\207" [dcl-get-line-type $ -] 3 (#$ . 49785)])
#@15 

(fn REGEXP)
(defalias 'dcl-was-looking-at #[257 "\212`\300\301\302#\211\205\301\225\232\266\202)\207" [re-search-backward 0 t] 6 (#$ . 50019)])
#@59 Jacket routine to make imenu searches non case sensitive.
(defalias 'dcl-imenu-create-index-function #[0 "\301\302 )\207" [case-fold-search t imenu-default-create-index-function] 1 (#$ . 50175)])
(byte-code "\300\301!\210\302\303\304\305#\210\306\303!\207" [provide dcl-mode make-obsolete-variable dcl-mode-load-hook "use `with-eval-after-load' instead." "28.1" run-hooks] 4)

Youez - 2016 - github.com/yon3zu
LinuXploit