unclecheese / meta-languages
允许您将 CoffeeScript、SCSS 和 LESS 添加为标准依赖项,并在页面加载时自动编译。
dev-master
2014-08-20 00:21 UTC
Requires
- coffeescript/coffeescript: 1.3.1
- silverstripe/cms: 3.*
- silverstripe/framework: 3.*
Replaces
- silverstripe/meta-languages: *
This package is auto-updated.
Last update: 2024-08-29 03:52:45 UTC
README
此模块允许将未编译的元语言依赖项(如 CoffeeScript、LESS 和 SASS)直接包含到您的项目中,并在运行时编译它们。
基本用法
只需在控制器中引入依赖项,就像使用 Requirements 一样使用它。
<?php MetaLanguages::require_scss('themes/my-theme/css/sass/my-sass.scss'); MetaLanguages::require_coffeescript('mysite/javascript/coffee/my-coffee.coffee');
限制编译
默认情况下,文件仅在 "test" 和 "dev" 环境中编译。要限制特定环境中的编译
<?php MetaLanguages::set_compile_environments(array( 'dev', 'localhost:8888', 'staging.example.com' ));
指定目标目录
默认情况下,CoffeeScript 编译到 project-dir/javascript,而 SASS/LESS 编译到 themes/my-theme/css,但那些路径可以被覆盖。
Requirement_coffeescript:
compiled_path: mysite/coffee
Requirement_scss:
compiled_path: mysite/sass
指定 "coffee" 可执行文件的路径
默认情况下,/usr/local/bin 路径通过 shell 环境强制,但如果你需要更多控制
Requirement_coffeescript:
coffee_exec: /my/path/to/coffee
更改触发编译的修改时间容差
除非原始文件和未编译文件之间的 "最后编辑" 时间差大于特定数量的秒数(默认为 5),否则不会进行编译
MetaLanguages:
modification_tolerance: 10;
待办事项
由于 SASS 是 Ruby gem,因此从 PHP 内部编译 SASS 非常困难,因此存在许多环境问题。此模块使用第三方 PHP 编译器进行 SASS,已知存在一些错误。