Search FAQ

ANSI

Script function

world.ANSI

Read about scripting

Type

Method

Summary

Generates an ANSI colour sequence

Prototype

BSTR ANSI(short Code);

View list of data type meanings

Description

This generates an ANSI colour sequence, like this:

ESC [ code m

The code number is supplied as an argument.

This is intended to be used with the ANSINote function - which lets you write to the output window with ANSI formatting, or to send to other clients via the chat system.

Useful numbers to use would be:

Miscellaneous

0: reset
1: bold
3: blink (is rendered as italic)
4: underline
7: inverse

22: cancel bold
23: cancel blink
24: cancel underline
27: cancel inverse

Foreground (text) colour

30: Black
31: Red
32: Green
33: Yellow
34: Blue
35: Magenta
36: Cyan
37: White

Background colour

40: Black
41: Red
42: Green
43: Yellow
44: Blue
45: Magenta
46: Cyan
47: White

// 256 colour ANSI foreground
38;5;n where n is 0 to 255

// 256 colour ANSI background
48;5;n where n is 0 to 255


Suggestion - you could conceivably replace colours in incoming chat messages by doing a world.Replace using ANSI, providing the incoming ANSI codes conform exactly to the rendering used here.

For example:

mymessage = world.Replace (incoming_message, ANSI (36), ANSI (37))

This would hopefully replace the code for Cyan with the code for White.


Available in MUSHclient version 3.37 onwards.



VBscript example

ANSINote "This is normal" & ANSI (33) & " and this is yellow"


Jscript example

ANSINote ("This is normal" + ANSI (33) + " and this is yellow");


PerlScript example

ANSINote ("This is normal" . ANSI (33) . " and this is yellow");


Python example

world.ANSINote ("This is normal", 
world.ANSI (33, 47), " and this is yellow")


Lua example

AnsiNote ("This is normal ",
          ANSI (33, 47),
          "and this is yellow on white")


Lua notes

You can supply multiple arguments, as in the above example. 
Each one will generate its own ANSI code, so you can easily do multiple changes 

(eg. foreground, background, bold) in a single call to ANSI.

If you supply multiple arguments they will be placed into the same ANSI sequence, like this:

ANSI (33, 47) --> ESC[33;47m


Return value

A string consisting of: ESC "[" Code "m"


See Also ...

Topics

Colour management
Default triggers/aliases/timers/macros/colours

Functions

(AdjustColour) Adjust an RGB colour
(AnsiNote) Make a note in the output window from text with ANSI colour codes imbedded
(BoldColour) Gets/sets the RGB colour for one of the 8 ANSI bold colours
(ChatMessage) Sends a message to a chat user (raw format)
(ChatNote) Does a note using ANSI codes for the chat system
(ColourNameToRGB) Converts a named colour to a RGB colour code.
(ColourNote) Sends a message to the output window in specified colours
(ColourTell) Sends a message to the output window in specified colours - not terminated by a newline
(CustomColourBackground) Sets the RGB value for the background of a custom colour
(CustomColourText) Sets the RGB value for the text of a custom colour
(GetCustomColourName) Gets the name of a custom colour
(GetMapColour) Returns the mapping for how a particular colour will be displayed
(MapColour) Changes the colour mapping - the way colours are displayed
(MapColourList) Returns an array of all the mapped colours
(NormalColour) Gets/sets the RGB colour for one of the 8 ANSI normal colours
(NoteColour) Chooses which custom colour will be used for world notes.
(NoteColourBack) Chooses which RGB colour will be used for world notes - background colour
(NoteColourFore) Chooses which RGB colour will be used for world notes - text colour
(NoteColourName) Chooses which RGB colour name will be used for world notes - text and background
(NoteColourRGB) Chooses which RGB colour will be used for world notes - text and background
(PickColour) Invokes the MUSHclient colour picker dialog
(RGBColourToName) Converts an RGB colour code to its equivalent name
(SetCustomColourName) Sets the name of a custom colour
(StripANSI) Strips ANSI colour sequences from a string

(Help topic: function=ANSI)

Documentation contents page


Search ...

Enter a search string to find matching documentation.

Search for:   

Information and images on this site are licensed under the Creative Commons Attribution 3.0 Australia License unless stated otherwise.