Happy WS 之 控制台

Stella981
• 阅读 728

支持多行增加了几个函数,看结果吧
0. 多行模式: 任意数量的> 开始 同等数量的< 结束
1. 文件系统函数 cd  ls dir
2. 执行执行模版函数 exec(tmpl)
3. 错误行定位
4. 错误信息默认不显示详情, 使用 showLastException() 函数显示错误详情
5. 变量/常量导入全局变量/常量

============================================
    Wellcome Webit Script World  \(^o^)/
                   build:2014.06.02
                    QQ群:302505483
============================================
F:\Workspace\happy-console>
echo "Hello WS";
>>>
Hello WS
F:\Workspace\happy-console>
>>>
 1| var sayHello = function(){
 2|     echo "I: Hello";
 3| };
 4| sayHello();
 5| <<<
>>>
I: Hello
F:\Workspace\happy-console>
sayHello();
>>>
I: Hello
F:\Workspace\happy-console>
>>>
 1| var sayHello = function(){
 2|     echo "Hello again";
 3| };
 4| <<<
>>>

F:\Workspace\happy-console>
sayHello();
>>>
Hello again
F:\Workspace\happy-console>
"Oops"
>>>
语法错误: Syntax error before: 2(7). Hints: forget ';' ?
 1| "Oops"
          ^
F:\Workspace\happy-console>
showLastException();
>>>
webit.script.exceptions.ParseException: Syntax error before: 2(7). Hints: forget ';' ?
template: cmd:"Oops"
    at line 1(7)

F:\Workspace\happy-console>
ls("R:");
>>>
Find 5 files:
    System Volume Information
    $RECYCLE.BIN
    _FFCACHE
    hello.wit
    webit-script-1.4.2.jar

F:\Workspace\happy-console>
exec("R:\\hello.wit");
>>>
Hello WS
F:\Workspace\happy-console>
cd("R:");
>>>

R:\>
ls();
>>>
Find 5 files:
    System Volume Information
    $RECYCLE.BIN
    _FFCACHE
    hello.wit
    webit-script-1.4.2.jar

R:\>
exec("hello.wit");
>>>
Hello WS
R:\>
exit();
>>>

Bye (^_^)∠※

git@osc: https://git.oschina.net/zqq90/happy-console

点赞
收藏
评论区
推荐文章
Karen110 Karen110
3年前
一篇文章带你了解JavaScript 函数闭包
大家好,我是前端进阶者。JavaScript变量属于本地或者全局范围,使用闭包可以让私有变量成为可能。一、全局变量一个函数可以访问所有定义在函数内部的变量。functionmyFunction()vara4;returnaa;但是函数也可以访问定义在函数之外的变量。vara4;//全局变量funct
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
从Vue.js源码中我学到了尤大大几点精妙方法
话不多说,赶快试试尤大大教给我们的这几个精妙方法吧!在工作中肯定会用得到。立即执行函数页面加载完成后只执行一次的设置函数。(function (a, b)  console.log(a, b); // 1,2)(1, 2);通常,全局变量被作为一个参数传递给立即执行参数,这样它在函数内部不使用window也可以被访问到。(function (g
Wesley13 Wesley13
3年前
thinkphp 3.x下的任意文件包含(有条件)分析
漏洞原理实现自己的模版引擎不当,在模版渲染的情况下存在任意变量覆盖漏洞。。漏洞详情漏洞位置1ThinkPHP/Library/Think/View.class.php需要修改配置文件指定TMPL\_ENGINE\_TYPE为phpif('php'strtolower(C('TMPL_ENGINE
Easter79 Easter79
3年前
Typescript 常见的几种函数重载方法详解与应用示例
所谓的重载,其实就是使用相同的函数名,传入不同数量的参数或不同类型的参数,以此创建出多个方法或产生不同结果。1\.最常见的,也就是根据定义傻瓜式地判断参数类型与数量functionshowPerson(name,...others){console.log(name,others)}
Wesley13 Wesley13
3年前
Java8之Stream
在使用Stream之前先介绍几个概念:1、函数式接口2、常用的函数式接口3、Lambda4、方法引用 1、函数式接口  1.只定义了一个抽象方法的接口。  2.JDK8接口中的静态方法和默认方法,都不算是抽象方法。  3.接口默认继承java.lang.Object,所以如果接口显示声明覆盖了Object中方法,
Wesley13 Wesley13
3年前
C++中内置变量的初始化
对于全局的变量如果内置类型的变量未被显示地初始化,它的值将由定义的位置决定。(1).定义在函数体之外的变量将被初始化为0;(2).定义在函数体内部的变量将不被初始化,它的值将是任意的。对于(1)举例如下:shortsn;intin;longln;longlonglln;
Wesley13 Wesley13
3年前
oracle小数点前零丢失的问题
1.问题起源 oracle数据库字段值为小于1的小数时,使用char类型处理,会丢失小数点前面的0 例如0.35就变成了.35 2.解决办法:(1)用to\_char函数格式化数字显示 select    to\_char(0.338,'fm9999999990.00')fromdual; 结果:0.34 
Easter79 Easter79
3年前
Thinking in C++ Notes 拷贝构造函数
1.默认拷贝构造函数不会调用构造函数,而通过位拷贝来实现。2.可以使用多个构造函数,并使用默认参数。3.小心使用默认构造函数,当属性中有指针时,会造成多次析构而产生错误Reference:http://blog.csdn.net/lwbeyond/article/details/6202256(https://www.oschina
Wesley13 Wesley13
3年前
2、Linux汇编——函数的工作原理
第四章函数的工作原理1、函数的组成部分    函数主要由以下几个成分组成:函数名、函数参数、局部变量、静态变量、全局变量、返回地址、返回值(1)函数参数及几个变量:这是在逻辑上对函数的涉及到的数据进行规划,实际上当前运行的指令只能通过直接、间接、立即数三种方式访问数据。(2)返回地址:在汇编语言中,实际上是某