Module:Escape/doc

From blackwiki
< Module:Escape
Revision as of 00:26, 14 January 2015 by blackwiki>Codehydro (starting..)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This is the documentation page for Module:Escape

Usage

This module is designed as an way to escape strings in a customized manner. There are two ways to call this module:

From another module:

local escape = require('Module:Escape')

From a template:

Template:Invoke:Escape

By default, this module will escape the \ char. To escape the { char instead, you can do require('Module:Escape'):char('{') (or esc:char('{') if you've stored table returned by this module in the local variable esc). When used in a template, set |char= equal to the char code.

test test \ test, \test, \,test\ \ \ \

To get an escaped string:

local foo = escape:

Here's some sample output from the debug consol below the module editor:

local escape = require('Module:Escape')
test = 'test, \\test, \\{,test\\\\ \\\\ \\\\\\\\'

test2 = escape:init('{'):text(test)
=test2

test, \test, \�7b�44�7btest\\ \\ \\\\

test3 = escape:init('\\'):text(test2)

=test3

test, �5c�116�5cest, �5c�24�5c7b�44�7btest�5c�92�5c �5c�92�5c �5c�92�5c�5c�92�5c

test4 = escape:init('{', {undo = test3})

=test4

test, �5c�116�5cest, �5c�24�5c7b�44�7btest�5c�92�5c �5c�92�5c �5c�92�5c�5c�92�5c

test4 = escape:init('\\', {undo = test3})

=test4

test, \test, \�7b�44�7btest\\ \\ \\\\

test5 = escape:init('{', {undo = test4})

=test5 == test

true

=escape:undo(test3)
test, �5c�116�5cest, �5c�24�5c7b�44�7btest�5c�92�5c �5c�92�5c �5c�92�5c�5c�92�5c

=escape:undo(test4)
test, \test, \,test\\ \\ \\\\

=escape:init('\\'):undo(test3)
test, test, �7b�44�7btest\ \ \\

=escape:init('{', {undo = escape:init('\\'):undo(test3)})
test, test, {,test\ \ \\

=test == escape:init('{', {undo = escape:init('\\'):undo(test3)})
false

=test == escape:init('{', {undo = escape:init('\\'):undo(test3, '\\')})
true