合乎语言(中文)习惯(格式、标点符号等),书写自由,象篇文章。
    除关键字必须写对外没有限制(关键字、文本不必连续,即可多行书写)。
    有些关键字的位置不是非一定处()。一些呼应型的可拆成两句(如“赋予变量以值。”与“赋予变量,以值。”“如果1等于1那么显示=。”与“如果1等于1,那么显示=。”)。一些埋头便不见(这是一个普遍情况。如一句“谁显示。”就只是作为文本处理,类似的还有;只要它前面不是关键字便)。一些有前导才为(“了”等)。
    外国的词间才用空格分隔。
    语法检查宽松。
    注释、文本、标号、结合、关键字允许嵌套,层数不限。如((()))、“““”””、[[[]]]是合法的,而显示显示显示“显示”所得为显示3个“显示”
如果要包括单个的前导符或终止符就须使用字符换码,列下表
字符A1字符00B0
字符A1字符00B1
字符 字符D7字符D6符
    可以多重赋值,层数不限。形如赋予名1以赋予名2以赋予名3以□□□□。
    如果变量名第一个字符是0表示内存地址。
    变量使用“内容”来显式置换。一变量必须有定义,二可实现多重置换且每一级都可得到,三文本也能
一些参数在DOS与Windows中的差别:
显示

 

文本……
文本……、标题(省略则为“”)、风格(省略则为0(MB_OK))
执行

 

命令行……
初始状态(一个参数时省略为5(SW_SHOW))、命令行……
调用

 

方式、程序名、参数、……
LoadLibrary、库名
GetProcAddress 函数类型、库名内容、函数名、参数类型……
函数名内容、参数……
FreeLibrary、库名内容……
类型:
char 字符
int 整数
unsigned 无符号
long 长
* 指针
& 地址
cdecl C风格
... 自标识序列
如果数第一个字符是0表示十六进制
    关键字、错误信息允许修改。
    语法文件中,包含在字符串内的回车(空格符)有效。
    语法文件中也包含一部分说明。
Windows版的自控消息:通过SendMessage或PostMessage。
消息号 8000(十六进制)
消息参数1 1:获得指定message
2:缺省处理
4:返回1
8:返回0
9:删除
11:控制
0:撤消设置状态
消息参数2 获时 1:所有消息参数1
     2:所有消息参数2
控制时 1:IsDialogMessage
       其他必须为0
而随后
消息号 message
消息参数1 wParam或任意(获所有时)
消息参数2 lParam或任意(获所有时)
已预设获得的Windows消息:
1//WM_CREATE
273//子窗口或菜单项
276//水平滚动条
277//垂直滚动条
513//按下鼠标左按钮
514//释放鼠标左按钮
515//双击鼠标左按钮
516//按下鼠标右按钮
517//释放鼠标右按钮
518//双击鼠标右按钮
519//按下鼠标中按钮
520//释放鼠标中按钮
521//双击鼠标中按钮
256//按下普通按键
257//释放普通按键
258//ASCII码字符
275//定时器
16//关闭
15//重新绘制用户区域内容
17//请求允许终止

    允许标号相同,转向前面最近的。另外以~打头的标号只搜寻该处以后的
  只有字符串一种类型。在某些场合将串视为数。利用工具库(GJK432.DLL)中的读写结构函数可以将串变量做为结构使用。
    没有数组这个概念,但利用如下(“和”“先”“了”)可以实现(没有越界、没有空占):
显示变量1至变量10的内容

赋予号以1。
[显示]
显示先变量和号内容了内容。
赋予号以算术号内容和+1。
如果号内容小于等于10那么转向“显示”。

    加载时的参数所传递的名依次为参数0(源文件名)至参数n-1
    变量名、变量内容的长度没有限制
    一个文本其前的空格总被忽略
    变量名所用字符任意,关键字除外,但可包含在引号中来用
    注释、标号可插在任何中间
    由于意义相近,实现上,“?”、“!”与“。”及“;”与“,”是用作等同的。“〔”、“【”与“[”及“〕”、“】”与“]”亦
    一般情况下的“如果”可以省略。如“如果1等于1那么显示1。”与“1等于1。那么显示1。”
    双字节内核
    如果源文件名第一个字符是0表示内存地址即解释一段内存,文件0就须.\0或“0”
    函数类型为char *而返回值为NULL时返回“NULL”,同样,值为“NULL”的char *就简单地对应char &的0
    定义为复合关键字,相当于执行一段代码,这样就可以摆脱语法的限制在用户界面上
    变量名前使用^来进行内部处理(去引号(^)、换码(^^))的方法,通过“赋予”,默认情况下是自动处理的,在需要直接传地址的场合就需要直接处理内容,如定义中就需要去掉最外层的引号,所以一般定义都是有一个^的,除非“以”是没有引住
    中文间的空格的作用只是用于排版,所以视之为无,当然引号内不,这一点类似于fortran

    autorun.ini和default.ini被调用的场合,当完全没有参数而执行L的时候,L会试图在他所在的目录下调用autorun.ini,以获得语法文件和错误信息文件的路径,同时也将解释放入的源文件,这种情况出现在,例如双击L,而L在给定了他需解释的源文件却无语法文件指定的时候,同样,他是为了寻找路径,这种情况出现在,例如把一个源文件拖到了L上
    L在找不到文件(包括任何文件)的情况下,会再一次在他目录下寻找,缘于此,可以将一些例程放在跟他相同的目录,以便调用

“结束”关键字的用法:
其后若带有参数 将数化并返回给系统 程序终止
Windows中 -1构筑循环,返回缺省 -2返回0 -3返回1

“错误”系统变量的用法:
处理机制:通过赋值与求内容。
-1为所有 -2在“加载”时忽略错误(禁止传递,不退出整个程序) -3恢复默认
0清除错误 其他具体的错误号码(每次为追加)
有些错误号在万千位,其后是具体。例如23102,就是23号错,后面是文件读写的具体错误号
实现方法:在须捕获的语句前赋值,判断后置0(因为有错误发生的话,除赋值外的其他语句将不被执行,所以首先清除)

    错误信息在没有带数字的情形下,返回值为错误发生时的位置和错误类型,而后带1至n的数字时指具体错误号所对应信息
    关键字的编号为1至n-1

变量的分配:
默认的是如果该变量未在父程序分配,则在子程序中为私有变量,即结束时被自动删除,若已分配则将可以访问、改写、删除它
在名前加~则明确为私有,加~~为父程序变量,加~~~为最祖父程序(可类推)

“算术”关键字的用法:
接受多个参数,返回最后一个表达式的结果,参数若以%打头则视为输出格式(默认%f)
有26个存储单元

“读源文件”关键字的其他参数:
1分隔符表、2甩掉符表、3控制(* /)、4忽略始标记、5忽略终标记、6文本始标记、7文本终标记

L[1[1]][(3 | 4)[32 | 64]][2 | 5]
1-----------分析版
1-----------動態版
3-----------Windows / linux-kde 版
4-----------DLL / so 版
32----------32位版
64----------64位版
2-----------英文版
5-----------繁體版

l4c的“隧道”方法
方法名 参数 说明
输出 内容…… 把内容(串)输出到stdout(标准输出)上
格式输出 格式、内容、…… 格式为c函数printf所使用格式,只是每组只能包含一种,另有S格式相当于s,区别在于S参数传的是地址
内容将根据格式转换为 串 或者 字符 或者 整数 或者 实数
输入 长度 从stdin(标准输入)获得指定长度的内容(串)
得环境变量 环境变量名 得到环境变量的内容。QUERY_STRING为url参数部分;CONTENT_LENGTH为post提交的数据的长度
网址解析 url…… url为a=1&b=2这样的名值对,调用的结果是拆析分配成变量,并将值中的+还原为空格,%ascii还原为相应字符
得路径 文件名(、分隔符) 得到文件名的路径名部分,可选参数用来设定分隔符是 \ 或者 /
得名字 文件名 得到文件名的名字部分
系统 (命令) 执行系统命令(dos),省略则为外壳
路径名(、<UL>、</UL>(、<LI>、</LI>)) 依次接受排过序的路径名,生成“树”代码。路径名为空时生成“树”结束关闭代码。可选部分为html缩进标签,默认为UL对,一个可见的选择为OL对。生成代码里包含的“文本1”为文本的占据位置
表替换 源串、对应表名 返回根据对应表对源串进行多重替换后的结果。源串为地址;对应表为每行一组替换设置的文本文件,格式为:如果存在Tab字符就以它为关键字与值的分界,否则,取前两个字符为关键字其后部分为值,关键字支持正则表达式进行多匹配 ,第一个字符为Tab或者空格的话,视为无效或者注释,使用时被忽略
得配置文件 配置文件名、数组名 配置文件同上对应表;数组名为读取的关键字-值对所自动生成的变量名的前面部分,这些变量名形如“数组之123之0”,另外,生成“数组-1”表示数组的一维个数,“数组-2”表示数组的二维个数
重复 (次数) 或 串、次数 默认串是“□”,默认次数是1
l3i32的命令行参数:
max(最大化)
notop(隐藏网址栏)
noright(隐藏调试栏)
nobutton(隐藏按钮栏)
url(其后是网址,以后的“肇事者”)
script(其后是调用的脚本)
script2(其后是自动调用的脚本,自动是指在网页装入完成之后)
button(其后为工具栏按钮标题,若包含“---”则更其后为提示文本,点击后按钮标题将作为“动作”变量传给脚本)
button2(同button,但点击后同时将把页面表单元素以“表单名.元素名”形式传给脚本,在网页装入过程该按钮灰)
sleep(其后是自动调用脚本的延迟时间,默认.00001)
l3i32的“隧道”方法
方法名 参数 说明
显示 内容(、标题(、风格)) 风格是数字
结束
循环 构成script2的调用循环
变量 (设置值) 一个保存在l3i32里的变量
计数器 返回script2被调用的次数
转向 url
脚本 文件名
内容 页面表单元素名称(、设置值) 设置值时允许使用[]来指定相同名称中的第几个,二维的[]是指定第几个框架(frame)
点击 页面表单元素名称 点击相应的按钮
类型 页面表单元素名称 更改input type
只读 页面表单元素名称 使相应元素变成不可更改
得 / 置 / 法 html标签名、页面元素名、属性名(、设置值 / 参数……) 一组可以获得任意标签的方法。属性名常用的有value、text、InnerText、InnerHTML等