Merge branch 'master' into prolog-pl-samples

Conflicts:
	lib/linguist/languages.yml
	lib/linguist/samples.json
This commit is contained in:
Arfon Smith
2014-09-04 15:51:30 -05:00
4 changed files with 163 additions and 3 deletions

View File

@@ -1203,6 +1203,16 @@ LLVM:
extensions:
- .ll
LSL:
type: programming
lexer: LSL
ace_mode: lsl
extensions:
- .lsl
interpreters:
- lsl
color: '#3d9970'
LabVIEW:
type: programming
lexer: Text only

View File

@@ -311,6 +311,9 @@
"LFE": [
".lfe"
],
"LSL": [
".lsl"
],
"Lasso": [
".las",
".lasso",
@@ -848,8 +851,8 @@
"exception.zep.php"
]
},
"tokens_total": 659134,
"languages_total": 904,
"tokens_total": 659332,
"languages_total": 905,
"tokens": {
"ABAP": {
"*/**": 1,
@@ -36039,6 +36042,72 @@
"info": 1,
"reproduce": 1
},
"LSL": {
"integer": 8,
"someIntNormal": 2,
";": 29,
"someIntHex": 2,
"someIntMath": 2,
"PI_BY_TWO": 2,
"event": 2,
"//": 5,
"is": 3,
"invalid.illegal": 2,
"key": 3,
"someKeyTexture": 2,
"TEXTURE_DEFAULT": 2,
"string": 5,
"someStringSpecial": 2,
"EOF": 2,
"some_user_defined_function_without_return_type": 2,
"(": 19,
"inputAsString": 2,
")": 19,
"{": 9,
"llSay": 1,
"PUBLIC_CHANNEL": 4,
"}": 9,
"user_defined_function_returning_a_string": 2,
"inputAsKey": 2,
"return": 1,
"default": 2,
"state_entry": 2,
"someKey": 3,
"NULL_KEY": 1,
"llGetOwner": 1,
"someString": 2,
"touch_start": 1,
"num_detected": 2,
"list": 1,
"agentsInRegion": 3,
"llGetAgentList": 1,
"AGENT_LIST_REGION": 1,
"[": 1,
"]": 1,
"numOfAgents": 2,
"llGetListLength": 1,
"index": 4,
"defaults": 1,
"to": 1,
"for": 2,
"<": 1,
"-": 1,
"+": 2,
"each": 1,
"agent": 1,
"in": 1,
"region": 1,
"llRegionSayTo": 1,
"llList2Key": 1,
"touch_end": 1,
"llSetInventoryPermMask": 1,
"MASK_NEXT": 1,
"PERM_ALL": 1,
"reserved.godmode": 1,
"llWhisper": 2,
"state": 3,
"other": 2
},
"Lasso": {
"<": 7,
"LassoScript": 1,
@@ -73057,6 +73126,7 @@
"Kit": 6,
"Kotlin": 155,
"LFE": 1711,
"LSL": 198,
"Lasso": 9849,
"Latte": 759,
"Less": 39,
@@ -73271,6 +73341,7 @@
"Kit": 1,
"Kotlin": 1,
"LFE": 4,
"LSL": 1,
"Lasso": 4,
"Latte": 2,
"Less": 1,
@@ -73397,5 +73468,5 @@
"fish": 3,
"wisp": 1
},
"md5": "50b2227d023291a6a909ca3866c171c8"
"md5": "3778b7ad7414915c83e6960531006542"
}

74
samples/LSL/LSL.lsl Normal file
View File

@@ -0,0 +1,74 @@
/*
Testing syntax highlighting
for the Linden Scripting Language
*/
integer someIntNormal = 3672;
integer someIntHex = 0x00000000;
integer someIntMath = PI_BY_TWO;
integer event = 5673;// 'event' is invalid.illegal
key someKeyTexture = TEXTURE_DEFAULT;
string someStringSpecial = EOF;
some_user_defined_function_without_return_type(string inputAsString)
{
llSay(PUBLIC_CHANNEL, inputAsString);
}
string user_defined_function_returning_a_string(key inputAsKey)
{
return (string)inputAsKey;
}
default
{
state_entry()
{
key someKey = NULL_KEY;
someKey = llGetOwner();
string someString = user_defined_function_returning_a_string(someKey);
some_user_defined_function_without_return_type(someString);
}
touch_start(integer num_detected)
{
list agentsInRegion = llGetAgentList(AGENT_LIST_REGION, []);
integer numOfAgents = llGetListLength(agentsInRegion);
integer index; // defaults to 0
for (; index <= numOfAgents - 1; index++) // for each agent in region
{
llRegionSayTo(llList2Key(agentsInRegion, index), PUBLIC_CHANNEL, "Hello, Avatar!");
}
}
touch_end(integer num_detected)
{
someIntNormal = 3672;
someIntHex = 0x00000000;
someIntMath = PI_BY_TWO;
event = 5673;// 'event' is invalid.illegal
someKeyTexture = TEXTURE_DEFAULT;
someStringSpecial = EOF;
llSetInventoryPermMask("some item", MASK_NEXT, PERM_ALL);// 'llSetInventoryPermMask' is reserved.godmode
llWhisper(PUBLIC_CHANNEL, "Leaving \"default\" now...");
state other;
}
}
state other
{
state_entry()
{
llWhisper(PUBLIC_CHANNEL, "Entered \"state other\", returning to \"default\" again...");
state default;
}
}

View File

@@ -33,6 +33,7 @@ class TestLanguage < Test::Unit::TestCase
assert_equal Lexer['Java'], Language['ChucK'].lexer
assert_equal Lexer['Java'], Language['Java'].lexer
assert_equal Lexer['JavaScript'], Language['JavaScript'].lexer
assert_equal Lexer['LSL'], Language['LSL'].lexer
assert_equal Lexer['MOOCode'], Language['Moocode'].lexer
assert_equal Lexer['MuPAD'], Language['mupad'].lexer
assert_equal Lexer['NASM'], Language['Assembly'].lexer
@@ -186,6 +187,7 @@ class TestLanguage < Test::Unit::TestCase
def test_programming
assert_equal :programming, Language['JavaScript'].type
assert_equal :programming, Language['LSL'].type
assert_equal :programming, Language['Perl'].type
assert_equal :programming, Language['PowerShell'].type
assert_equal :programming, Language['Python'].type
@@ -326,6 +328,7 @@ class TestLanguage < Test::Unit::TestCase
assert_equal '#3581ba', Language['Python'].color
assert_equal '#f1e05a', Language['JavaScript'].color
assert_equal '#31859c', Language['TypeScript'].color
assert_equal '#3d9970', Language['LSL'].color
end
def test_colors
@@ -338,6 +341,7 @@ class TestLanguage < Test::Unit::TestCase
assert_equal 'coffee', Language['CoffeeScript'].ace_mode
assert_equal 'csharp', Language['C#'].ace_mode
assert_equal 'css', Language['CSS'].ace_mode
assert_equal 'lsl', Language['LSL'].ace_mode
assert_equal 'javascript', Language['JavaScript'].ace_mode
end
@@ -352,6 +356,7 @@ class TestLanguage < Test::Unit::TestCase
end
def test_extensions
assert Language['LSL'].extensions.include?('.lsl')
assert Language['Perl'].extensions.include?('.pl')
assert Language['Python'].extensions.include?('.py')
assert Language['Ruby'].extensions.include?('.rb')