[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

26. Editing SIMULA 87 Code

This mode is used for editing SIMULA code. It is NOT automatically invoked for any particular file extension. To invoke this mode while editing a file, type M-x simula-mode.

The mode knows about Simula syntax and standard indentation commands. It also provides convenient abbrevs for Simula keywords.

The following key mappings are defined:

: simula-electric-label
tab simula-indent-command
C-c << Prefix Command >>
C-i simula-indent-command
C-c C-d simula-forward-down-level
C-c C-n simula-next-statement
C-c C-p simula-previous-statement
C-c C-u simula-backward-up-level

The following variables controlling indentation style:

Non-nil means TAB in SIMULA mode should always reindent the current line, regardless of where in the line point is when the TAB command is used.

Indentation of SIMULA statements with respect to containing block.

Extra indentation after DO, THEN, ELSE, WHEN and OTHERWISE.

Extra indentation for lines not starting a statement or substatement, e.g. a nested FOR-loop. If value is a list, each line in a multiple- line continued statement will have the car of the list extra indentation with respect to the previous line of the statement.

simula-label-offset -4711
Offset of SIMULA label lines relative to usual indentation.

simula-if-indent '(0 . 0)
Extra indentation of THEN and ELSE with respect to the starting IF. Value is a cons cell, the car is extra THEN indentation and the cdr extra ELSE indentation. IF after ELSE is indented as the starting IF.

simula-inspect-indent '(0 . 0)
Extra indentation of WHEN and OTHERWISE with respect to the corresponding INSPECT. Value is a cons cell, the car is extra WHEN indentation and the cdr extra OTHERWISE indentation.

simula-electric-indent nil
If this variable is non-nil, `simula-indent-line' will check the previous line to see if it has to be reindented.

simula-abbrev-keyword 'upcase
Determine how SIMULA keywords will be expanded. Value is one of the symbols `upcase', `downcase', `capitalize', (as in) `abbrev-table', or nil if they should not be changed.

simula-abbrev-stdproc 'abbrev-table
Determine how standard SIMULA procedure and class names will be expanded. Value is one of the symbols `upcase', `downcase', `capitalize', (as in) `abbrev-table', or nil if they should not be changed.

Turning on SIMULA mode calls the value of the variable simula-mode-hook with no arguments, if that value is non-nil.

Warning: simula-mode-hook should not read in an abbrev file without calling the function simula-install-standard-abbrevs afterwards, preferably not at all.

To configure this package, type:

  M-x customize-group RET simula RET

26.1 About SIMULA  

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

26.1 About SIMULA

The SIMULA programming language was designed and built by Ole-Johan Dahl and Kristen Nygaard at the Norwegian Computing Center (NCC) in Oslo between 1962 and 1967. It was originally designed and implemented as a language for discrete event simulation, but was later extended and reimplemented as a full scale general purpose programming language.

For more information, see http://www.engin.umd.umich.edu/CIS/course.des/cis400/simula/simula.html.

[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

This document was generated by XEmacs Webmaster on October, 2 2007 using texi2html