contents

# lim_test Scanner test program

'lim_test' scans the given source file and lists the tokens on stdout. The source file must be conform with the language parameter. It uses the image file of the scanner table [Language.lim].

The current version doesn't support the embedded language facility.

## Arguments

Name | Type | Semantic
Language | name | language name
FileName | path | path of source file to scan

## Options

An option will be specified as follows: -<Name>=<Value>
A flag is toggled that way: -<Name>
The default value will be applied when the option wasn't specified.

Name | Type | Default value | Semantic
charset | string | "" | source file character set ( UTF-8, UCS4, ... )
skipset | string | "" | ( ascii ) characters to be skipped
lookahead | flag | false | enable n character lookahead
binmode | flag | false | scan source file in binary mode ( not with charset-option )
wprint | flag | false | unicode / UTF-8 output ( on non-default character set )
prepar | string | "" | standard preprocessing: yes or list index~value , ...
premac | string | "" | standard preprocessing: pre-defined macro , ...
prefun | string | "" | user-defined preprocessing: Function@Library ( not with prepar-option )
tokens | flag | true | create list of all scanned tokens
symbols | flag | false | create list of all symbols in the internal symbol table

The options 'prepar' and 'premac' are only useful with styx-like preprocessing.

If your language uses the same preprocessing directives as specified in [styx.sty], but differnt macro token identifiers and keywords, the option 'prepar' can be used to enable preprocessing and specify the differences as a comma separated list:

1. 0~name of identifier token
2. 1~name of macro definition token
3. 2~name of argument separator token
4. 3~name of include token
5. 4~name of conditional token
6. 5~name of undefine token
7. 6~#macro keyword
8. 7~#end keyword
9. 8~#ifdef keyword
10. 9~#ifndef keyword
11. 10~#else keyword
12. 11~#include keyword
13. 12~#undefine keyword
14. 13~environment variable or path list as search path for include files
15. 14~include file character set ( default: charset-option )

The option 'premac' supports pre-defined macros in connection with styx-like preprocessing.

Dynamic library support is a prerequisite for the user-defined callback handler.

## Environment

An environment variable will be specified as follows: -<Name>=<Value>
The default value will be applied when no environment variable was specified.

Name | Type | Default value | Semantic
BINSTYX | path | PATH | search environment for [Language.lim]