摘要:Koala是一款预处理器语言图形编译工具,支持Less、Sass、CoffeeScript、Compass框架的即时编译。无需手动输入命令去编译,后台监听文件是否有改变,如有修改会自动进行编译,能够大大提升Web开发中的工作效率。

近期,我们对腾讯Koala团队进行了专访 ,一款预处理器语言图形编译工具,支持Less、Sass、CoffeeScript、Compass框架的即时编译。本篇文章为大家着重介绍Koala工具的使用进行讲解,以供参考。

Koala代码托管地址: https://code.csdn.net/Tencent/koala


一、安装Koala

开发者可以直接下载安装包,或者选择从源码编译Koala,两种方式都可以。

1. 直接下载

可前往 Koala项目主页,根据系统平台下载对应的版本,Sass编译要求Windows/Linux系统且已安装好Ruby运行环境。

2. 从源码编译Koala

a. 首先克隆Koala源码到本地:

$ git clone <a href="https://code.csdn.net/Tencent/koala.git">https://code.csdn.net/Tencent/koala.git</a>

b. 下载与你系统环境相对应已编译好的node-webkit(<=0.8.x)文件 
c. 根据使用的操作系统,进行不同的操作:

  • Windows 系统:复制 nw.exe, nw.pak, icudt.dll 到 koala/src 目录,并安装  Ruby 到koala/src/ruby目录;
  • Linux系统:复制 nw, nw.pak,并安装 Ruby 环境: sudo apt-get install ruby
  • Mac OS X 系统:复制 node-webkit.app,Mac OSX 已内置 Ruby,无需额外安装。

d. 最后运行nw可执行程序。

二、Koala基本操作

那如何在Koala中添加项目,如何批量处理文件?下面为大家介绍下Koala的基本操作。

Koala运行界面

  • 添加项目: 拖拽文件夹到Koala界面,即可添加项目。如果项目目录下有新增文件,点击文件列表上方的刷新按钮,将自动添加新文件。
  • 修改文件输出目录: 选择某个文件后,点击路径旁边的“编辑”图标,或单击右键出现操作菜单。可按下Ctrl键同时选中多个文件,然后右键操作批量设置。
  • 多文件批量设置: 可像文件管理器一样,同时选择多个文件;目前功能有设置输出目录、切换自动编译、执行编译、移除文件。
  • 指定编译器:如果开发者 希望使用指定的某个版本的编译器,如希望使用“Sass pre version”,此时可以打开Koala设置面板,在对应的编译器设置栏,勾选“使用系统设置”;关于“使用指定的编译器”,如果在全局环境中(终端)可以直接执行该编译器命令,如sass -h,则无需填写,否则则填写具体的执行路径。

三、详解“项目配置”

项目配置功能可以对所有项目文件进行设置,制定属于该项目的编译配置,同时以配置文件的形式保存,可以方便团队间配置同步,协作更加高效。

创建配置文件

在Koala界面左侧项目列表中选择某个项目,单击右键,“项目配置—新建配置”,然后选择相应项目类型,JS、CSS项目可以选择“默认”配置。这样,Koala将在该项目根目录下创建koala.config文件。首次创建配置文件后,右键点击项目,选择“重新载入”即可生效配置;后续修改的配置,Koala将自动读取配置并立即生效。

配置字段介绍

mappings (Array):指定对应的输入目录与输出目录。

如:

"mappings": [
{
"src": "path/to/source",
"dest": "path/to/output"
},
{
"src": "path/to/source2",
"dest": "path/to/output2"
}
]

ignores (Array):过滤文件或目录。

添加过滤规则后,Koala将过滤匹配的文件或目录。

如: "ignores": ["*.json", "*.txt", "test", "path/libs"]

options (Object) :设置项目默认编译选项。

设置后项目中所有文件都将自动同步该配置,当然还是允许在文件编译选项区单独对文件进行设置。

customOptions(Array)

如果你需要的某些编译选项不在"options"中,你可以在"customOptions"中添加它们。

注意,请使用完整的选项名,而不是缩写,如,["--scss", ... ,"--no-cache"]

requireLibs (Array)

指定使用的Ruby类库,将会在执行Sass命令前引入它们,相当于Sass的"--require LIB"选项。


更多内容,如怎样在Koala中添加Source Map选项、如何在Koala中安装并使用第三方Ruby库,可以参考详细使用文档: https://code.csdn.net/Tencent/koala/wikis

【腾讯开源】前端预处理器语言图形编译工具 Koala使用指南的更多相关文章

  1. Koala – 开源的前端预处理器语言图形编译工具

    koala 是一个前端预处理器语言图形编译工具,支持 Less.Sass.Compass.CoffeeScript,帮助 Web 开发者更高效地使用它们进行开发.跨平台运行,完美兼容 Windows. ...

  2. Sass:一种CSS预处理器语言

    http://sass-lang.com/ Sass是一种CSS预处理器语言,通过编程方式生成CSS代码.因为可编程,所以操控灵活性自由度高,方便实现一些直接编写CSS代码较困难的代码. 同时,因为S ...

  3. Blade - 腾讯开源的构建系统 c/c++编译环境

    ,Blade是软件project的利器.有助于模块化,模块化的力度控制自如.对于提高系统的可维护性.复杂性的隔离.代码复用的最大化.都有非常大的优点. 2,Blade提供了单元測试的最佳使用方式. 假 ...

  4. Sass预处理器

    CSS预处理器 less,sass和stylus sass:较早,缩进风格 scss:完全兼容css3,使用大括号 编写css的编程语言,引入变量,函数,重复代码等功能,如果编译成css文件 Sass ...

  5. koala预编译工具的使用

    Koala是一个开源的预处理语言图形编译工具,目前已支持Less.Sass.Compass与CoffeeScript. 安装Koala 在Koala官网根据你的系统平台下载对应的版本.Linux系统要 ...

  6. [Objective-C语言教程]预处理器(18)

    Objective-C预处理器不是编译器的一部分,而是编译过程中的一个单独步骤. 简单来说,Objective-C预处理器只是一个文本替换工具,它指示编译器在实际编译之前进行必要的预处理. 我们将Ob ...

  7. CSS预处理器——Sass、LESS和Stylus实践

    CSS(Cascading Style Sheet)被译为级联样式表,做为一名前端从业人员来说,这个专业名词并不陌生,在行业中通常称之为“风格样式表(Style Sheet)”,它主要是用来进行网页风 ...

  8. CSS预处理器实践之Sass、Less大比拼[转]

    什么是CSS预处理器? CSS可以让你做很多事情,但它毕竟是给浏览器认的东西,对开发者来说,Css缺乏很多特性,例如变量.常量以及一些编程语法,代码难易组织和维护.这时Css预处理器就应运而生了.Cs ...

  9. Css预处理器实践之Sass、Less大比拼

    xwei | 2012-07-07 | 网页重构 什么是CSS预处理器? Css可以让你做很多事情,但它毕竟是给浏览器认的东西,对开发者来说,Css缺乏很多特性,例如变量.常量以及一些编程语法,代码难 ...

随机推荐

  1. You Don't Know JS: Scope & Closures (第2章: Lexical Scope)

    2种主要的models for how scope work. 最普遍的是Lexical Scope. 另一种 Dynamic Scope.(在Appendix a中介绍.和Lexical Scope ...

  2. java开学第一周测试代码

    Account.java /* 信1705-3 20173612  陈阳阳 */package ATM; public class Account { private String accountID ...

  3. EventBus 3.0使用相关

    一 引入方法 可以去github的官网中下载EventBus的相关资源  地址:https://github.com/greenrobot/EventBus 当然还有他的官方网站 http://gre ...

  4. 第一阶段——站立会议总结DAY09

    1.昨天做了什么:未做. 2.今天准备做什么:准备将之前讲的东西,要付诸实践.所以,为了使界面更加耐看,向微信,QQ这样的看齐,查一查个人中心界面中间的条条框框的实现代码,借鉴,并运用到自己的代码上. ...

  5. 封装jsonp

    1.写一个类封装jsonp: jsonp(url, params, success, funName)     参数url:请求地址     参数params:请求数据,可以是json对象,或形如&q ...

  6. 【Oracle】【6】去掉字符串最后一个特殊字符

    --去除字符串末尾的省字,若无省字则无变化 SELECT DISTINCT TRIM('省' FROM PROVINCE) PROVINCE FROM ADDRESS 参考博客: 1,使用oracle ...

  7. 二十一、MVC的WEB框架(Spring MVC)

    一.基于注解方式配置 1.首先是修改IndexContoller控制器类 1.1.在类前面加上@Controller:表示这个类是一个控制器 1.2.在方法handleRequest前面加上@Requ ...

  8. Android应用启动时Activity被创建两次

    项目需要使用到播放器,用开源的ijkplayer播放器改装. 但是在调试过程中Activity的OnCreate()被调用两次,调试时直接连接手机调试,有时候又不一定是两次. 后来偶尔看到一句话 “当 ...

  9. qml 设置tooltip,Customizing ToolTip

    Button {            id: btn            text: "Tip"            anchors.horizontalCenter: pa ...

  10. 撤销commit

    如果不小心commit了一个不需要commit的文件,可以对其进行撤销. 先使用git log 查看 commit日志 commit 422bc088a7d6c5429f1d0760d008d86c5 ...