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

24. Editing REXX Code

This mode is used for editing REXX code. It is automatically invoked for buffers visiting the following types of files:

The following key mappings are defined:

backspace backward-delete-char-untabify
return rexx-indent-and-newline
tab rexx-indent-command
C-c << Prefix Command >>
C-i rexx-indent-command
C-m rexx-indent-and-newline
C-c C-c rexx-debug
C-c C-p rexx-find-matching-do

The following variables control indentation style:


The basic indentation for do-blocks.


The relative offset of the \"end\" statement. 0 places it in the same column as the statements of the block. Setting it to the same value as rexx-indent places the \"end\" under the do-line.


The indention for lines following \"then\", \"else\" and \",\" (continued) lines.


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

If you have set rexx-end-indent to a nonzero value, you probably want to remap RETURN to rexx-indent-newline-indent. It makes sure that lines indents correctly when you press RETURN.

An extensive abbreviation table consisting of all the keywords of REXX are supplied. Expanded keywords are converted into upper case making it easier to distinguish them. To use this feature the buffer must be in abbrev-mode. (See example below.)

Turning on REXX mode calls the value of the variable rexx-mode-hook with no args, if that value is non-nil.

For example:

  (setq rexx-mode-hook '(lambda ()
                          (setq rexx-indent 4)
                          (setq rexx-end-indent 4)
                          (setq rexx-cont-indent 4)
                          (local-set-key \"\\C-m\" 'rexx-indent-newline-indent)
                          (abbrev-mode 1)

will make the END aligned with the DO/SELECT. It will indent blocks and IF-statements four steps and make sure that the END jumps into the correct position when RETURN is pressed. Finally it will use the abbrev table to convert all REXX keywords into upper case.

To configure this package, type:

  M-x customize-group RET rexx RET

24.1 About REXX  

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

24.1 About REXX

REXX is a programming language designed by Michael Cowlishaw of IBM UK Laboratories. Rexx is an acronym which stands for "Restructured Extended Executor Language". In Mike's own words: "REXX is a procedural language that allows programs and algorithms to be written in a clear and structured way."

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

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