Unit Shell - Ultibo.org

Return to Unit Reference

Description


Ultibo Generic Shell unit

Constants


Shell specific constants SHELL_*

SHELL_LINE_END = Chr(13) + Chr(10); {CR LF}  
 
SHELL_DEFAULT_BANNER = 'Ultibo Core (Release: ' + ULTIBO_RELEASE_NAME + ' Version: ' + ULTIBO_RELEASE_VERSION + ' Date: ' + ULTIBO_RELEASE_DATE + ')';  
SHELL_DEFAULT_PROMPT = '>';  
SHELL_DEFAULT_ERROR = 'Huh?';  

Shell flag SHELL_FLAG_*

SHELL_FLAG_NONE = $00000000;  
SHELL_FLAG_CLEAR = $00000001;  
SHELL_FLAG_SIZE = $00000002;  
SHELL_FLAG_CURSOR = $00000004;  
SHELL_FLAG_COLORS = $00000008;  
SHELL_FLAG_COORDINATES = $00000010;  

Shell cursor mode SHELL_CURSOR_MODE_*

SHELL_CURSOR_MODE_INSERT = 0;  
SHELL_CURSOR_MODE_OVERWRITE = 1;  

Shell cursor shape SHELL_CURSOR_SHAPE_*

SHELL_CURSOR_SHAPE_LINE = 0;  
SHELL_CURSOR_SHAPE_BAR = 1;  
SHELL_CURSOR_SHAPE_BLOCK = 2;  

Shell session flag SHELL_SESSION_FLAG_*

SHELL_SESSION_FLAG_NONE = $00000000;  

Shell command flag SHELL_COMMAND_FLAG_*

SHELL_COMMAND_FLAG_NONE = $00000000;  
SHELL_COMMAND_FLAG_HIDDEN = $00000001; Hidden command, do not show in HELP or INFO
SHELL_COMMAND_FLAG_HELP = $00000002; Command has HELP available
SHELL_COMMAND_FLAG_INFO = $00000004; Command has INFO available
SHELL_COMMAND_FLAG_DEFAULT = $00000008; Default command, pass unknown commands to this before showing error
SHELL_COMMAND_FLAG_EXTENDED = $00000008; Extended command, pass command name to command for extended handling
SHELL_COMMAND_FLAG_COMPLETION = $00000008; Command supports auto completion

Shell alias flag SHELL_ALIAS_FLAG_*

SHELL_ALIAS_FLAG_NONE = $00000000;  
SHELL_ALIAS_FLAG_HIDDEN = $00000001; Hidden alias, do not show in HELP or INFO

Shell command SHELL_COMMAND_*

SHELL_COMMAND_HELP = 'HELP';  
SHELL_COMMAND_INFO = 'INFO';  
SHELL_COMMAND_VER = 'VER';  
SHELL_COMMAND_TIME = 'TIME';  
SHELL_COMMAND_CLS = 'CLS';  
SHELL_COMMAND_RESTART = 'RESTART';  
SHELL_COMMAND_SHUTDOWN = 'SHUTDOWN';  
SHELL_COMMAND_CPU = 'CPU';  
SHELL_COMMAND_UPTIME = 'UPTIME';  
SHELL_COMMAND_WORKER = 'WORKER';  
SHELL_COMMAND_THREAD = 'THREAD';  
SHELL_COMMAND_MEMORY = 'MEMORY';  
SHELL_COMMAND_DEVICE = 'DEVICE';  

Shell alias SHELL_ALIAS_*

SHELL_ALIAS_HELP = '?';  
SHELL_ALIAS_VERSION = 'VERSION';  
SHELL_ALIAS_CLEAR = 'CLEAR';  
SHELL_ALIAS_REBOOT = 'REBOOT';  

Shell history SHELL_HISTORY_*

SHELL_HISTORY_MAX_COUNT = 100;  

Shell logging SHELL_LOG_*

SHELL_LOG_LEVEL_DEBUG = LOG_LEVEL_DEBUG; Shell debugging messages
SHELL_LOG_LEVEL_INFO = LOG_LEVEL_INFO; Shell informational messages
SHELL_LOG_LEVEL_WARN = LOG_LEVEL_WARN; Shell warning messages
SHELL_LOG_LEVEL_ERROR = LOG_LEVEL_ERROR; Shell error messages
SHELL_LOG_LEVEL_NONE = LOG_LEVEL_NONE; No Shell messages

Type definitions


None defined

Class definitions



Shell specific classes

Public variables



Shell logging

SHELL_DEFAULT_LOG_LEVEL:LongWord = SHELL_LOG_LEVEL_DEBUG; Minimum level for Shell messages. Only messages with level greater than or equal to this will be printed.
SHELL_LOG_ENABLED:Boolean;

Function declarations



Initialization functions

procedure ShellInit;

Description: To be documented

Shell functions

function ShellGetShell(APrevious:TShell; ALock,AUnlock:Boolean):TShell;

Description: To be documented

function ShellFindShell(const AName:String):TShell;

Description: To be documented

function ShellRegisterShell(AShell:TShell):Boolean;

Description: To be documented

function ShellDeregisterShell(AShell:TShell):Boolean;

Description: To be documented

function ShellGetCommand(APrevious:TShellCommand; ALock,AUnlock:Boolean):TShellCommand;

Description: To be documented

function ShellFindCommand(const AName:String):TShellCommand;

Description: To be documented

function ShellRegisterCommand(ACommand:TShellCommand):Boolean;

Description: To be documented

function ShellDeregisterCommand(ACommand:TShellCommand):Boolean;

Description: To be documented

Shell helper functions

procedure ShellLog(Level:LongWord; const AText:String);

Description: To be documented

procedure ShellLogInfo(const AText:String); inline;

Description: To be documented

procedure ShellLogWarn(const AText:String); inline;

Description: To be documented

procedure ShellLogError(const AText:String); inline;

Description: To be documented

procedure ShellLogDebug(const AText:String); inline;

Description: To be documented

Return to Unit Reference