ctrl+shift+p filters: :st2 :st3 :win :osx :linux
浏览

更好的CoffeeScript

SublimeText 所有

语法高亮和检查、命令、快捷键、代码片段、实时编译等。

详细信息

  • 2.2.0
    0.6.32
  • github.com
  • github.com
  • 6年前
  • 22分钟前
  • 12年前

安装数

  • 202K
  • Win 49K
  • Mac 104K
  • Linux 49K
8月6日 8月5日 8月4日 8月3日 8月2日 8月1日 7月31日 7月30日 7月29日 7月28日 7月27日 7月26日 7月25日 7月24日 7月23日 7月22日 7月21日 7月20日 7月19日 7月18日 7月17日 7月16日 7月15日 7月14日 7月13日 7月12日 7月11日 7月10日 7月9日 7月8日 7月7日 7月6日 7月5日 7月4日 7月3日 7月2日 7月1日 6月30日 6月29日 6月28日 6月27日 6月26日 6月25日 6月24日 6月23日
Windows 2 0 0 0 0 1 0 0 0 0 0 1 0 1 2 0 0 0 0 0 5 1 0 0 0 2 4 1 0 0 0 0 0 1 0 0 2 0 0 3 1 1 2 0 1
Mac 1 1 0 1 0 2 1 3 3 1 1 4 1 1 1 1 0 0 1 0 1 1 0 0 0 2 2 0 1 3 0 1 0 0 4 3 2 0 0 0 1 1 0 1 0
Linux 0 1 0 1 1 0 2 0 0 0 0 0 0 0 0 1 0 0 3 0 0 0 0 0 0 0 0 0 1 0 0 0 0 2 0 0 0 1 0 0 0 0 0 0 0

README

源代码
raw.githubusercontent.com

概览

该软件包适用于Sublime Text 3及以上版本。 Sublime Text 2的旧版本可通过st2分支访问。

我们正在寻找维护者!有关详细信息,请参阅https://github.com/SublimeText/BetterCoffeeScript/issues/244

描述

CoffeeScript插件最初由@Xavura创建。随着我@aponxi开始大量编写CoffeeScript代码,我感到需要对于一个并排查看编译后的CoffeeScript的视图。由于Xavura的仓库已不再活跃,我决定分支出我自己的版本。我分支的最大变化是监视模式,它会在你修改CoffeeScript时更新编译后的JavaScript视图,从而让你可以并排查看进度。

贡献

  • 请使用问题页面提出请求或报告错误。
  • 请只为master分支创建pull请求。不再支持ST2。

安装

通过包管理工具

这是推荐的安装方法。

如果您有包管理工具,您知道该怎么做。如果没有,那么:它是Sublime Text 3的包管理工具。安装指南可在此处找到。安装包管理器后

  • 打开命令面板(ctrl+shift+Pcmd+shift+P)。
  • 输入“安装包”并按回车。
  • 输入“Better CoffeeScript”并按回车。

通过源代码管理

如果您计划贡献,那么您应该通过此方法安装。否则,建议您通过包管理工具安装该软件包,如上所述。

Sublime将软件包存储在以下位置

Nix: ~/.config/sublime-text-3/packages
Mac: ~/Library/Application\ Support/Sublime\ Text\ 3/Packages
Win: %APPDATA%\Sublime Text 3\Packages

当使用Sublime Text 4或更高版本时,将优先选择不带“3”的目录(以及前导分隔符)。

作为位于 packages 目录内的存储库

打开终端/控制台,运行以下命令,将 PACKAGE_PATH 替换为您操作系统对应的路径。

cd PACKAGE_PATH
git clone https://github.com/SublimeText/BetterCoffeeScript.git "Better CoffeeScript"

作为 packages 目录外的存储库

如果您使用 Github for Mac/Windows,这些存储库将存储在特定的位置,或者如果您不希望在 packages 目录中有一个存储库,那么您可以使用一个链接。

如果您还没有该存储库,请通过图形界面程序或命令行获取它

cd WHEREVER_YOU_WANT
git clone https://github.com/SublimeText/BetterCoffeeScript.git

完成此操作后,我们将创建链接

Windows

cd PACKAGE_PATH
mklink /D "Better CoffeeScript" ABSOLUTE_PATH_TO_REPOSITORY

Nix/Mac

cd PACKAGE_PATH
ln -s ABSOLUTE_PATH_TO_REPOSITORY "Better CoffeeScript"

命令/快捷键

您可以通过命令面板(ctrl+shift+Pcmd+shift+P)或通过快捷键访问命令。

alt+shift+t - Run a Cake task
alt+shift+r - Run some CoffeeScript (prints output to a panel on the bottom)
alt+shift+s - Run a syntax check
alt+shift+c - Compile a file
alt+shift+d - Display compiled JavaScript
alt+shift+l - Display lexer tokens
alt+shift+n - Display parser nodes
alt+shift+w - Toggle watch mode
alt+shift+p - Toggle output panel

上下文菜单包含 编译输出,该功能将当前 CoffeeScript 编译成一个在面板中运行的 JavaScript 代码。

注意:一些命令使用状态栏进行输出,您可能需要启用它(视图 » 显示状态栏)。

代码片段

  • 在输入触发器后,使用 TAB 运行代码片段。
  • 使用 TABShift+TAB 绑定向前或向后切换字段。
  • 使用 ESC 退出代码片段模式。

代码片段触发器

理解

Array:  forin
Object: forof
Range:  fori (inclusive)
Range:  forx (exclusive)

语句

If:        if
Else:      el
If Else:   ifel
Else If:   elif
Switch:    swi
Ternary:   ter
Try Catch: try
Unless:    unl

Class - cla
Class extends SuperClass - clx

其他

Function:      -
Function:      = (bound)
Interpolation: #

构建

在使用构建系统时,假设您的 .sublime-project 文件位于您的项目基本目录中(由于构建系统的限制)。

按下 F7(工具 » 构建)将运行 Cake 任务 'sbuild'。

如果您不确定这点的用途,请继续阅读。

假设在分发您的项目之前,您希望将所有的 .js 文件合并成一个,然后使用 UglifyJS 或类似的东西压缩它们。

这正是它的用武之地!您将创建一个 Cakefile,并在其中编写任务

task 'sbuild', 'Prepare project for distribution.', ->
    # ...

设置

转到 首选项 > 包设置 > Better CoffeeScript > 设置 - 用户 以更改设置。

{
    /*
        The directories you would like to include in $PATH environment variable.
        Use this if your node installation is at a separate location and getting errors such as `cannot find node executable`

        example:
        "envPATH": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

    */
    "envPATH": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
    /*
        The directory containing your coffee binary. Usually
        /usr/local/bin.
    */
    "binDir": "/usr/local/bin"

    /*
        Compile without the top-level function wrapper (coffee -b).
    */

,    "noWrapper": true

    /*
        Enable or disable refresh the compiled Output on Save.
        Only available for watch mode.
    */
,    "watchOnSave": true
    /*
        Enable refreshing compiled JS when CoffeeScript is modified.

        Put false to disable
        Put a number of seconds to delay the refresh
    */
,    "watchOnModified": 0.5
    /*
        Enable Compiling on save. It will compile into the same folder.
    */
,    "compileOnSave": true
    /*
        ## Enable outputting the results of the compiled coffeescript in a panel
    */
,    "showOutputOnSave": false
    /*
        ## Enable compiling to a specific directory.
        #### Description

        if it is a string like 'some/directory' then `-o some/directory` will be added to `coffee` compiler.
        if it is false or not string then it will compile your `script.coffee` to the directory it is in.

        #### Example:
        Directory is relative to the file you are editing if specified such as
            compileDir": "out"
        Directory is absolute if specified such as
            compileDir": "/home/logan/Desktop/out"

    */
,    "compileDir": false
    /*
        ## Enable compiling to a specific relative directories.

        #### Example:
        Set absolute path for compile dir:
            "compileDir": "/home/user/projects/js"
        And specified folders
            "relativeDir": "/home/user/projects/coffee"
            "compilePaths":
            {
                "/home/user/projects/coffee": "/home/user/projects/first/js",
                "/home/user/projects/second/coffee": "../js",
            }

        So
            "/home/user/projects/coffee/app.coffee" will compile to "/home/user/projects/first/js/app.js"
            "/home/user/projects/coffee/models/prod.coffee" will compile to "/home/user/projects/first/js/models/prod.js"
            "/home/user/projects/coffee/second/coffee/app2.coffee" will compile to "/home/user/projects/second/js/app2.js"
            "/home/user/projects/main.coffee" will compile to "/home/user/projects/js/main.js"

    */
,    "compilePaths": false



}

项目设置

转到 项目 > 编辑项目 以更改项目设置。

{
    "folders":
    [
        ...
    ],
    "settings":
    {
        "CoffeeScript":
        {
            "noWrapper": true,
            "compileOnSave": true,
            "compileDir": "out"
        }
    }
}

常见问题解答(FAQ)

这里 written 的大多数 Linux 终端命令都可以通过 cygwin 运行 - 也就是 Windows 中的 Linux 终端。

  • 大多数问题都与配置相关。请在安装后记得配置 binDir

  • 我是否已安装了 coffee-script?

尝试在您的全局 npm 列表中找到 coffee-script,使用 npm ls -g | grep coffee,这会输出如下内容:

npm ls -g | grep coffee

# will output:
#├── [email protected]
#├─┬ [email protected]
#│ ├── [email protected]
#├── UNMET DEPENDENCY generator-coffee *
#│ │ ├── [email protected]
  • 我在哪里可以找到 coffee 二进制的路径?

在 Linux 中,使用 which 命令可以告诉您一个命令的来源。在终端中输入

which coffee
# /usr/bin/coffee

此路径将进入 binDir 设置。

  • 当保存时,我得到错误信息 'coffee' 不是内部或外部命令

咖啡脚本二进制很可能未安装。请安装咖啡脚本或在 首选项 > 包设置 > Better CoffeeScript > 设置 - 用户 中将 checkSyntaxOnSavecompileOnSave 设置为 flalse

最新更改记录

v0.7.0 01/June/2013

  • 合并了 st3 与 master 分支
  • 现在 sublime text 2 的支持在 st2 分支
  • 修复了语言定义中 @ 的高亮显示问题
  • 修复了当在非编辑项目查找项目设置时出现的错误

特别感谢

感谢所有为这个项目做出贡献的人 [链接]。你们都很棒!