|
|
Line 5: |
Line 5: |
| {{WIP}} | | {{WIP}} |
| {{Template:Nasal Navigation}} | | {{Template:Nasal Navigation}} |
|
| |
| == Hello world ==
| |
|
| |
| A simple hello world example in Nasal would be:
| |
|
| |
| <syntaxhighlight lang="php">
| |
| # hello.nas
| |
| print('Hello World!');
| |
| </syntaxhighlight>
| |
|
| |
| This will show the "Hello World" string during startup in the console window. The hash sign (#) just introduces comments (i.e. will be ignored by the interpreter).
| |
|
| |
| Note: Script-specific symbols such as global variables (or functions) will be put into a scope (namespace) based on the script's name, scripts embedded via aircraft-set.xml files can separately specify a corresponding module name (see [[Howto: Make an aircraft]] for details).
| |
|
| |
| Strings in Nasal can also use double quotes which support escaping:
| |
| <syntaxhighlight lang="php">
| |
| # hello.nas
| |
| print("Hello\nWorld!");
| |
| </syntaxhighlight>
| |
|
| |
| Double quotes support typical escape sequences:
| |
|
| |
| * \n Newline
| |
| * \t Horizontal Tab
| |
| * \v Vertical Tab
| |
| * \b Backspace
| |
| * \r Carriage Return
| |
| * \f Form feed
| |
| * \a Audible Alert (bell)
| |
| * \\ Backslash
| |
| * \? Question mark
| |
| * \' Single quote
| |
| * \" Double quote
| |
|
| |
| For example, to print a new line, use:
| |
|
| |
| print ("\n");
| |
|
| |
| To print a quoted string, use:
| |
|
| |
| print ("\"quoted string\"");
| |
|
| |
| and so on.
| |
|
| |
| Single quotes treat everything as literal except for embedded single quotes (including embedded whitespace like newlines).
| |
|
| |
| Nasal strings are always arrays of bytes (never characters: see the utf8 library if you want character-based equivalents of substr() et. al.). They can be indexed just like in C (although note that there is no nul termination -- get the length with size()):
| |
|
| |
|
| ==Built-in functions== | | ==Built-in functions== |