在2.1.9版本之后,xmake不仅原生内置支持多种语言文件的构建,而且还可以通过自定义构建规则,让用户自己来实现复杂的未知文件构建。
具体使用介绍,可参考相关文档:rule规则使用手册
通用规则
我们可以通过预先设置规则支持的文件后缀,来扩展其他文件的构建支持:
```lua
-- 定义一个markdown文件的构建规则
rule("markdown")
set_extensions(".md", ".markdown")
on_build(function (target, sourcefile)
os.cp(sourcefile, path.join(target:targetdir()
继续阅读 »
此版本主要增加xmake f --menu实现用户自定义图形菜单配置,界面风格类似linux的make menuconfig:
更多使用说明,请阅读:文档手册。
项目源码:Github, Gitee.
新特性
添加del_files()接口去从已添加的文件列表中移除一些文件
添加rule(), add_rules()接口实现自定义构建规则,并且改进add_files("src/*.md", {rule = "markdown"})
添加os.filesize()接口
添加core.ui.xxx等cui组件模块,实现终端可视化界面,用于实现跟用户进行短暂的交互
通过xmake f --menu实现可视化菜单交互配置,简化工
继续阅读 »
欢迎来到深入解析 ES6 系列,本系列将探讨 JavaScript 即将面世的新版本 -- ECMAScript 6。ES6 包含许多新特性,这使得 JavaScript 语言更强大和更具表现力,接下来的每周我们将逐一揭开 ES6 的神秘面纱。在开始之前,我们值得花几分钟时间来谈谈什么是 ES6 或者你期待它是什么样的。
more
什么是 ECMAScript
JavaScript 语言的标准是由 ECMA(类似 W3C 的标准化组织)制定,并命名为 ECMAScript,除其他事项外,ECMAScript 还定义了:
语法规则 -- 解析规则、关键字、声明、操作符等
变量类型 -- 布尔、数字、字符串、对象等
原型和继承机
继续阅读 »
命名空间名称定义
非限定名称Unqualified name
名称中不包含命名空间分隔符的标识符,例如Foo
限定名称Qualified name
名称中含有命名空间分隔符的标识符,例如:Foo\Bar
继续阅读 »
参考原文:https://github.com/angular-ui/ui-router/wiki/The-Components
$state / $stateProvider:管理状态定义、当前状态和状态转换。包含触发状态转换的事件和回调函数,异步解决目标状态的任何依赖项,更新$location到当前状态。由于状态包含关联的 url,通过$urlRouterProvider生成一个路由规则来执行转换的状态。
ui-view指示器:渲染状态中定义的视图,是状态中定义的视图的一个占位符。
$urlRouter / $urlRouterProvider:管理了一套路由规则列表来处理当$location发生变化时如何跳转。最低级的方
继续阅读 »
参考原文:https://github.com/angular-ui/ui-router/wiki/The-Components
$state / $stateProvider:管理状态定义、当前状态和状态转换。包含触发状态转换的事件和回调函数,异步解决目标状态的任何依赖项,更新$location到当前状态。由于状态包含关联的 url,通过$urlRouterProvider生成一个路由规则来执行转换的状态。
ui-view指示器:渲染状态中定义的视图,是状态中定义的视图的一个占位符。
$urlRouter / $urlRouterProvider:管理了一套路由规则列表来处理当$location发生变化时如何跳转。最低级的方
继续阅读 »
原理:基于自定义的标签;
实现:目前只有文本框和密码域的验证
more
js
/*************************自定义的模式匹配函数
*********rule:匹配规则
*********vaule:匹配对象(表单元素的值)
*********warning:警告内容
*********note:显示警告的DIV层
************************************************/
function myReg(rule, value, warning, note) {
var reg = new RegExp(rule);
var noteDiv = documen
继续阅读 »
目录
前言
源文件基础
源文件结构
格式
命名约定
编程实践
Javadoc
后记
前言
这份文档是Google Java编程风格规范的完整定义。当且仅当一个Java源文件符合此文档中的规则,
我们才认为它符合Google的Java编程风格。
与其它的编程风格指南一样,这里所讨论的不仅仅是编码格式美不美观的问题,
同时也讨论一些约定及编码标准。然而,这份文档主要侧重于我们所普遍遵循的规则,
对于那些不是明确强制要求的,我们尽量避免提供意见。
more
1.1 术语说明
在本文档中,除非另有说明:
术语class可表示一个普通类,枚举类,接口或是annotation类型(@interface)
术语comment只用来指代
继续阅读 »
REST 是一种现代架构风格,它定义了一种设计 Web 服务的新方法。和之前的 HTTP 以及 SOA 不同,它不是一个协议(即:一套严格的规则),而是一些关于 Web 服务应该如何相互通信的一些建议和最佳实践。按照 REST 最佳实践开发的服务被称为 “RESTful Web 服务”。
继续阅读 »
import的主要用于导入xmake的扩展类库以及一些自定义的类库模块,一般用于 自定义脚本(on_build, on_run ..)、插件开发、模板开发、平台扩展、自定义任务task等地方。
导入机制如下:
优先从当前脚本目录下导入
再从扩展类库中导入
导入的语法规则:
基于.的类库路径规则,例如:
导入core核心扩展模块
```lua
import("core.base.option")
import("core.project")
import("core.project.task")
import("core")
function main()
-- 获取参数选项
继续阅读 »