vipsi - the friendly vip script interpreter

Operators

Item selector "[]"

<var_ref> = <list> [ <number> ]
<var_ref> = <list> [ <number> , <number> [, …] ]
<list> = <list> [ <number> to ]
<list> = <list> [ to <number> ]
<list> = <list> [ <number> to <number> ]

<text> = <text> [ <number> ]
<text> = <text> [ <number> to ]
<text> = <text> [ to <number> ]
<text> = <text> [ <number> to <number> ]

Operators: Item selector "[]"
Operators: Select "? :"
Select
item Operators: Boolean Or with Variable "||="
Operators: Bitwise Or with Variable "|="
Operators: Bitwise Or "|"
Operators: Boolean Or "||"
or
range of items from Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
.
Operators: Item selector "[]"
Operators: Select "? :"
Select
Character Operators: Boolean Or with Variable "||="
Operators: Bitwise Or with Variable "|="
Operators: Bitwise Or "|"
Operators: Boolean Or "||"
or
range of characters from Data Types: Text
Item selector "[]": Text
Glossary: text, text_val
text
.

Flow control: returnReturns a Glossary: Variable, var_refvariable reference, Glossary: list, list_vallist value Operators: Boolean Or with Variable "||="
Operators: Bitwise Or with Variable "|="
Operators: Bitwise Or "|"
Operators: Boolean Or "||"
or
Glossary: text, text_valtext value.

Flow control: if … then
Flow control: try … then
The
[…] Vipsi command syntax: Operators
Operators
Glossary: Operator
operator
Operators: Item selector "[]"
Operators: Select "? :"
selects
an item Operators: Boolean Or with Variable "||="
Operators: Bitwise Or with Variable "|="
Operators: Bitwise Or "|"
Operators: Boolean Or "||"
or
a range of items from a Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
Operators: Boolean Or with Variable "||="
Operators: Bitwise Or with Variable "|="
Operators: Bitwise Or "|"
Operators: Boolean Or "||"
or
Data Types: Text
Item selector "[]": Text
Glossary: text, text_val
text
.

Numeric functions: indexIndexes start Operators: Make Identifier "@"at 1.

Ranges are start to Flow control: end
Shell Immediate Commands: exit, quit, end
end
inclusive. Flow control: if … then
Flow control: if … then
If the
start Numeric functions: indexindex is omitted, Flow control: if … then
Flow control: try … then
then
Flow control: if … then
Flow control: try … then
the
range starts Operators: Make Identifier "@"at Flow control: if … then
Flow control: try … then
the
start of Flow control: if … then
Flow control: try … then
the
Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
Operators: Boolean Or with Variable "||="
Operators: Bitwise Or with Variable "|="
Operators: Bitwise Or "|"
Operators: Boolean Or "||"
or
Data Types: Text
Item selector "[]": Text
Glossary: text, text_val
text
. Flow control: if … then
Flow control: if … then
If the
Flow control: end
Shell Immediate Commands: exit, quit, end
end
Numeric functions: indexindex is omitted, Flow control: if … then
Flow control: try … then
then
Flow control: if … then
Flow control: try … then
the
range extends to Flow control: if … then
Flow control: try … then
the
Flow control: end
Shell Immediate Commands: exit, quit, end
end
of Flow control: if … then
Flow control: try … then
the
Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
Operators: Boolean Or with Variable "||="
Operators: Bitwise Or with Variable "|="
Operators: Bitwise Or "|"
Operators: Boolean Or "||"
or
Data Types: Text
Item selector "[]": Text
Glossary: text, text_val
text
. Flow control: if … then
Flow control: if … then
If the
start Operators: Boolean Or with Variable "||="
Operators: Bitwise Or with Variable "|="
Operators: Bitwise Or "|"
Operators: Boolean Or "||"
or
Flow control: end
Shell Immediate Commands: exit, quit, end
end
Numeric functions: indexindex of a range is outside Flow control: if … then
Flow control: try … then
the
Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
Operators: Boolean Or with Variable "||="
Operators: Bitwise Or with Variable "|="
Operators: Bitwise Or "|"
Operators: Boolean Or "||"
or
Data Types: Text
Item selector "[]": Text
Glossary: text, text_val
text
size, Flow control: if … then
Flow control: try … then
then
it is forced inside.

Flow control: if … then
Flow control: if … then
If the
Numeric functions: indexindex of a single item is less Operators: Boolean Or with Variable "||="
Operators: Bitwise Or with Variable "|="
Operators: Bitwise Or "|"
Operators: Boolean Or "||"
or
equal 0, Flow control: if … then
Flow control: try … then
then
List functions: thisthis yields an error. Flow control: if … then
Flow control: if … then
If the
Numeric functions: indexindex in a Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
is beyond Flow control: if … then
Flow control: try … then
the
Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
Flow control: end
Shell Immediate Commands: exit, quit, end
end
, Flow control: if … then
Flow control: try … then
then
Flow control: if … then
Flow control: try … then
the
Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
is extended to create that item. Flow control: if … then
Flow control: if … then
If the
Numeric functions: indexindex in a Data Types: Text
Item selector "[]": Text
Glossary: text, text_val
text
is beyond Flow control: if … then
Flow control: try … then
the
Data Types: Text
Item selector "[]": Text
Glossary: text, text_val
text
Flow control: end
Shell Immediate Commands: exit, quit, end
end
, Flow control: if … then
Flow control: try … then
then
List functions: thisthis yields an error.

Lists

Flow control: if … thenIf if only one item in a Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
varibale is selected, Flow control: if … then
Flow control: try … then
then
a reference to that item is returned. Flow control: if … then
Flow control: try … then
Then
you can overwrite Flow control: if … then
Flow control: try … then
the
contents of List functions: thisthis Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
item. e.g.:

vipsi> Instructions: var
How does VScript::Value() work?: Var*&
var
mylist = {1,2,3}
vipsi> mylist[3] = "4711" vipsi> Instructions: putput mylist { 1, 2, "4711" } vipsi>

Overwriting ranges of items is Operators: Bitwise Not "~"
Operators: Boolean Negation "!"
not
yet implemented. (version 0.8.7)

Flow control: if … then
Flow control: if … then
If the
selected item again is a Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
, an item in List functions: thisthis Operators: Subtract "-"sub Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
can be selected by either of these versions:

Instructions: putput mylist[i,j]
Instructions: putput mylist[i][j]

You can also Operators: Item selector "[]"
Operators: Select "? :"
select
a range in a Operators: Subtract "-"sub Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
like List functions: thisthis:

Instructions: putput mylist[i,a to e]
Instructions: putput mylist[i][a to e]

You can access items beyond Flow control: if … then
Flow control: try … then
the
Flow control: end
Shell Immediate Commands: exit, quit, end
end
of a Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
. Flow control: if … then
Flow control: try … then
Then
List functions: thisthis Operators: Boolean And with Variable "&&="
Operators: Bitwise And with Variable "&="
Operators: Bitwise And "&"
Operators: Boolean And "&&"
and
all intermediate items are instantly created, all unnamed Operators: Boolean And with Variable "&&="
Operators: Bitwise And with Variable "&="
Operators: Bitwise And "&"
Operators: Boolean And "&&"
and
set to 0.0.

vipsi> Instructions: var
How does VScript::Value() work?: Var*&
var
mylist={}
vipsi> mylist[10] vipsi> Instructions: putput mylist { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } vipsi>

vipsi - the friendly one.: The nameThe name of a selected item is preserved, even Flow control: if … thenif […] operates on a Glossary: list, list_vallist value (Operators: Boolean And with Variable "&&="
Operators: Bitwise And with Variable "&="
Operators: Bitwise And "&"
Operators: Boolean And "&&"
and
Operators: Bitwise Not "~"
Operators: Boolean Negation "!"
not
a Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
Glossary: Variable, var_refvariable).

vipsi> Instructions: putput Vipsi command syntax: Identifiers (names)
Identifiers, names
Operators: Make Identifier "@"
Text functions: name
Glossary: Name, Identifier
name
List functions: env
Shell Immediate Commands: env
Shell Immediate Commands: env
env
[1]
KDE_MULTIHEAD vipsi>
Text

Flow control: if … then
Flow control: if … then
If the
left-side Glossary: Operator
Glossary: Operand
operand
is a Glossary: text, text_valtext value, Flow control: if … then
Flow control: try … then
then
you can access individual characters Operators: Boolean And with Variable "&&="
Operators: Bitwise And with Variable "&="
Operators: Bitwise And "&"
Operators: Boolean And "&&"
and
ranges of charracters with Flow control: if … then
Flow control: try … then
the
same syntax. List functions: thisThis syntax is preferred over Text functions: leftstrleftstr Operators: Boolean And with Variable "&&="
Operators: Bitwise And with Variable "&="
Operators: Bitwise And "&"
Operators: Boolean And "&&"
and
Flow control: if … then
Flow control: try … then
the
like.

Overwriting single characters Operators: Boolean Or with Variable "||="
Operators: Bitwise Or with Variable "|="
Operators: Bitwise Or "|"
Operators: Boolean Or "||"
or
ranges of characters is Operators: Bitwise Not "~"
Operators: Boolean Negation "!"
not
yet implemented. (version 0.8.7)

You can Operators: Item selector "[]"
Operators: Select "? :"
select
a character Operators: Boolean Or with Variable "||="
Operators: Bitwise Or with Variable "|="
Operators: Bitwise Or "|"
Operators: Boolean Or "||"
or
range of characters of a Data Types: Text
Item selector "[]": Text
Glossary: text, text_val
text
in a Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
just like an item in a Operators: Subtract "-"sub Data Types: Lists and arrays
Item selector "[]": Lists
Glossary: list, list_val
list
by either of these versions:

Instructions: putput mytextlist[i,j]
Instructions: putput mytextlist[i][j]
Instructions: putput mytextlist[i,a to e]
Instructions: putput mytextlist[i][a to e]

Valid HTML   Valid CSS