Language Sensitive Editor Menu MODIFY — VMS LSE_3.0
=TITLE MODIFY
Additional information available:
LANGUAGE
=TITLE LANGUAGE
Modifies the characteristics of a specified language.
Format
MODIFY LANGUAGE language-name
Additional information available:
Qualifiers
=TITLE Qualifiers
Additional information available:
/CAPABILITIES/COMMENT/COMPILE_COMMAND/EXPAND_CASE
/FILE_TYPES/FORTRAN/HELP_LIBRARY/IDENTIFIER_CHARACTERS
/INITIAL_STRING/LEFT_MARGIN/OVERVIEW_OPTIONS/PLACEHOLDER_DELIMITERS
/PUNCTUATION_CHARACTERS/QUOTED_ITEM/RIGHT_MARGIN
/TAB_INCREMENT/TOPIC_STRING/VERSION/WRAP
/CAPABILITIES
/CAPABILITIES=DIAGNOSTICS
/CAPABILITIES=NODIAGNOSTICS
Specifies whether the compiler can generate diagnostic
files.
/COMMENT
/COMMENT=(specifier,...)
Specifies the character sequences of comments in the
language. The specifiers are as follows:
o ASSOCIATED_IDENTIFIER=keyword
Indicates the preferred association of comments to
identifier. You can specify one of the following
values:
- NEXT-Indicates that comments should be
associated with the next identifier,
- PREVIOUS-Indicates that comments should be
associated with the preceding identifier
o BEGIN=list of quoted strings
END=list of quoted strings
Defines the character sequences that start and end
bracketed comments. A bracketed comment begins and
ends with explicit comment delimiters. (Note that
the beginning and ending comment delimiters can
be the same, but need not be.) The list provided
with the specifiers BEGIN and END can be any of the
following:
- A string that is the one open comment sequence
for the language. You must enclose this in
quotes.
- A parenthesized list of strings, each one of
which can be an open comment sequence for the
language. You must enclose each one in quotes.
The list accompanying the BEGIN specifier must
be consistent with the list acompanying the END
specifier. If the BEGIN specifier lists a string,
then the END specifier must also list a string.
Bracketed comments are recognized by the formatting
commands (see the ALIGN and FILL commands) and
placeholder operations (see the ERASE PLACEHOLDER
command and the /DUPLICATION qualifier of the DEFINE
PLACEHOLDER command).
o TRAILING=list of quoted strings
Defines the character sequence that introduces line-
oriented comments. A line-oriented comment begins
with a special character sequence (consisting of one
or more characters) and ends at the end of the line.
The list provided with the TRAILING specifier can be
any of the following:
- A string that is the one-line comment sequence
for the language.
- A list of strings enclosed in parentheses; each
string can be a line-comment sequence for the
language.
Line comments are recognized by the formatting
commands and placeholder operations, just as
bracketed comments are.
o LINE=list of quoted strings
Requires that the comment delimiter be the first
character that is not blank on the line. The
LINE specifier is particularly useful with block
comments, such as the following:
/*
** Here is the inside of a comment
** which has LINE="**" specified
*/
o FIXED=quoted string, column number
Used for languages that require that a specific
comment delimiter be placed in a specific column,
such as FIXED=("*",1) for COBOL.
/COMPILE_COMMAND
/COMPILE_COMMAND=string
Specifies the default command string for the COMPILE
command. (See the explanation of the command-string
parameter in the COMPILE command entry.)
/EXPAND_CASE
/EXPAND_CASE=AS_IS
/EXPAND_CASE=LOWER
/EXPAND_CASE=UPPER
Specifies the case of the text of the inserted
template. AS_IS specifies that the inserted template
be expanded according to the case in the token or
placeholder definition. LOWER and UPPER specify that
the inserted template be expanded in lowercase or
uppercase, respectively.
/FILE_TYPES
/FILE_TYPES=(file-type[,...])
Specifies a list of file types that are valid for the
language being defined. The file types must be enclosed
in quoted strings. When LSE reads a file into a buffer,
it sets the language for that buffer automatically if
it recognizes the file type. For example, a FORTRAN
file type (.FOR) sets the language to FORTRAN. Note
that the period character must be included with the
file type.
/FORTRAN
/FORTRAN=ANSI_FORMAT
/FORTRAN=NOANSI_FORMAT
Specifies special processing for ANSI FORTRAN. Note
that some commands behave differently when you use the
/FORTRAN qualifier. Specifying NOANSI_FORMAT causes LSE
to insert templates in non-ANSI (tab) format.
/HELP_LIBRARY
/HELP_LIBRARY=file-spec
/NOHELP_LIBRARY
Specifies the HELP library where you can find help
text for placeholders and tokens defined in this
language. LSE applies the default file specification
SYS$HELP:HELPLIB.HLB. If you want to access some
HELP library other than SYS$HELP, you must supply an
explicit device name.
/IDENTIFIER_CHARACTERS
/IDENTIFIER_CHARACTERS=string
Specifies the characters that may appear in token and
alias names in that language. This list of characters
is used in various contexts for the /INDICATED
qualifier.
The list of identifier characters also determines what
LSE considers to be a word. A word is a sequence of
identifier characters, possibly followed by one or
more blanks. All nonblank, nonidentifier characters are
considered to be distinct words.
If you do not specify the /IDENTIFIER_CHARACTERS
qualifier, LSE supplies the following values by
default:
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ%$_0123456789"
/INITIAL_STRING
/INITIAL_STRING=string
Specifies the initial text that is to appear in a newly
created buffer.
/LEFT_MARGIN
/LEFT_MARGIN=n
/LEFT_MARGIN=1 (D)
/LEFT_MARGIN=CONTEXT_DEPENDENT
Specifies the left margin setting that is to be
associated with the language.
If you specify CONTEXT_DEPENDENT as the column number,
then LSE uses the indentation of the current line
to determine the left margin when you use the /WRAP
qualifier. When you use the FILL command, LSE uses
the indentation of the first line of each selected
paragraph to determine the left margin.
/OVERVIEW_OPTIONS
/OVERVIEW_OPTIONS=(MINIMUM_LINES=m, TAB_
RANGE=(t1,t2))
Specifies both the minimum number of lines an overview
line must hide and the range of acceptable tab
increments.
The specifiers are as follows:
o MINIMUM_LINES=m
Specifies the minimum number of lines an overview
line must hide. The default is 1. For example, if
the value of the parameter on MINIMUM_LINES is 5,
then a line hides other lines only if there are at
least five lines to hide. This specifier helps the
user to avoid having very small source-line groups,
and thus to avoid many expansion levels.
o TAB_RANGE=(t1,t2)
The TAB_RANGE specifier indicates the range of tab
values for which the adjustment definitions are
valid. The default is (4,8). The second value must
be at least twice the first value; both values must
be positive. For example, if the tab range is (4,8),
then LSE assumes that the adjustment definitions
will work for any DEFINE LANGUAGE/TAB_INCREMENT
value from 4 to 8 inclusive. If you specify a /TAB_
INCREMENT value outside the tab range, then LSE
recomputes indentation to make the adjustments work.
For best performance, it is recommended that you
avoid recomputation by choosing a range that
covers reasonable values. The numbers specified
for the DEFINE ADJUSTMENT/CURRENT and DEFINE
ADJUSTMENT/SUBSEQUENT commands must work for any
tab increment value in the tab range.
/PLACEHOLDER_DELIMITERS
/PLACEHOLDER_DELIMITERS=(delimiter-
specification[,...])
Specifies the starting and ending strings that
delimit placeholders. Placeholders can specify single
constructs or lists of constructs. The delimiters for
each type of placeholder are specified as a pair of
quoted strings separated by commas and enclosed in
parentheses.
The format of a delimiter specification is as follows:
keyword=(starting-string,ending-string)
Possible keywords are REQUIRED, REQUIRED_LIST,
OPTIONAL, OPTIONAL_LIST, or PSEUDOCODE. If you do
not use the PSEUDOCODE keyword, the default is
NOPSEUDOCODE. The maximum length of these strings is
seven characters.
The following is an example of a complete set of
placeholder delimiter specifications:
/PLACEHOLDER_DELIMITERS = ( -
REQUIRED =("{<",">}"), -
REQUIRED_LIST=("{<",">}..."), -
OPTIONAL =("[<",">]"), -
OPTIONAL_LIST=("[<",">]..."), -
PSEUDOCODE=("«" , "»"))
If any of the five keywords are not specified with
the /PLACEHOLDER_DELIMITERS qualifier, LSE applies the
following defaults:
/PLACEHOLDER_DELIMITERS = ( -
REQUIRED =("{","}"), -
REQUIRED_LIST=("{","}..."), -
OPTIONAL =("[","]"), -
OPTIONAL_LIST=("[","]..."), -
NOPSEUDOCODE)
/PUNCTUATION_CHARACTERS
/PUNCTUATION_CHARACTERS=string
Specifies the characters that are considered
punctuation marks, or delimiters, in the language.
When a placeholder name and its enclosing brackets
are deleted, preceding white space is also deleted if
there are punctuation characters to delimit the program
constructs.
/QUOTED_ITEM
/QUOTED_ITEM=(QUOTES=string [,ESCAPES=string])
/NOQUOTED_ITEM
Describes the syntax of certain language elements, such
as strings, that require special handling for proper
text formatting. LSE uses the /QUOTED_ITEM qualifier
to detect comments properly. LSE does not acknowledge
comment strings that occur within quoted items, nor
does LSE acknowledge quoted elements that occur within
comments.
The value of the /QUOTED_ITEM qualifier indicates the
syntax of a quoted item. This value must be a keyword
list. The keywords are as follows:
o QUOTES
This keyword is required, and must have an explicit
value. The value must be a quoted string denoting
all of the quote characters in the language. LSE
assumes that quoted items begin and end with the
same character.
o ESCAPES
This keyword is optional. If given, then the value
is required and must be a quoted string containing
the escape characters for quoted items. Some
languages use escape characters to insert quoting
characters into strings. For example, C uses the
backslash (\) as an escape character. If you omit
this keyword, then LSE assumes that the language
inserts quote characters into strings by doubling
them.
/RIGHT_MARGIN
/RIGHT_MARGIN=n
Specifies the right margin setting that is to be
associated with the language. By default, the right
margin is set at column 80.
/TAB_INCREMENT
/TAB_INCREMENT=n
Specifies that tab stops be set every n columns,
beginning with column 1.
/TOPIC_STRING
/TOPIC_STRING=string
Specifies a prefix string to be concatenated to the
/TOPIC_STRING qualifier specified in a placeholder or
token definition before LSE looks up the help text for
that placeholder or token. (Typically, this is the name
of the language in the HELP library.)
/VERSION
/VERSION=string
Specifies a string that represents the version number
of the tokens and placeholders associated with this
language. You use the SHOW LANGUAGE command to display
this string.
/WRAP
/WRAP
/NOWRAP
Specifies whether the ENTER SPACE command (bound to
the space bar by default) should wrap text when there
is too much to fit on the current line. The /NOWRAP
qualifier disables such text wrapping.
Parameter
=TITLE Parameter language-name Specifies the name of the language whose characteristics are to be defined.