7

好的,这就是我想要的:

  1. 我写的是 .scss 文件,而不是 .sass 文件
  2. 保存文件时,我在同一文件夹中获得了相应的 .css 文件

现在 Sublime Text2 上有很多 SASS 插件,但似乎没有一个为我提供语法高亮之外的任何东西。

关于如何在 Sublime Text2 上进行自动编译的任何建议。

4

5 回答 5

6

我没有找到任何这样做的现有插件,所以这里是:

假设您已经从 Package Control 安装了 SCSS 插件,您可以将其保存为 Packages/User/SCSS.py。

import sublime_plugin
import subprocess
import os
from threading import Thread

def compile(input_file):
    output_file = os.path.splitext(input_file)[0] + ".css"
    cmd = "sass '{0}':'{1}'".format(input_file, output_file)
    subprocess.call(cmd, shell=True)

class SCSS(sublime_plugin.EventListener):

    def on_post_save(self, view):
        scope = (view.syntax_name(view.sel()[0].b)).split().pop()
        if scope == "source.scss":
            input_file = view.file_name()
            t = Thread(target=compile, args=(input_file,))
            t.start()

当然,这作为一个官方的包控制插件会更好,它具有用户可配置的设置(保存文件的位置、开/关等),但这符合您的要求并且不会阻塞编辑器。

于 2012-08-10T18:48:11.387 回答
5

您应该考虑使用构建系统而不是它的专用插件。这很简单。

http://docs.sublimetext.info/en/latest/file_processing/build_systems.html

像这样的东西:

{
  "cmd": ["sass","$file"],
  "selector": "source.scss",
  "path": "/usr/local/bin"
}

只需点击ctrl + bt 构建当前文件。如果您有多个 scss 构建,您可以从构建菜单 ( Tools -> Build Systems) 中选择一个。

于 2012-08-12T14:42:26.967 回答
3

你可以使用SublimeOnSaveBuild插件。在插件过滤器设置中只留下 .scss 文件!它的效果很好!

于 2013-12-27T10:42:08.103 回答
1

我一直在为 Sublime Test 寻找 sass/scss 编译器插件,但我的源文件夹与我的 css 文件夹分开。所以,离开这里留下的评论,我写了 SassBuilder,它运行存储在你的源文件夹中的配置文件。它也已提交到 Sublime Package Control 存储库。一旦他们提出请求,您就可以从那里安装它。

github 上的 SassBuilder

于 2012-11-15T09:56:18.817 回答
1

Sass Builder 是 sublime text 包管理器中的新插件。这不需要任何配置。只需编写您的 scss 并按 cmd + b 进行编译。您的 css 文件将在与 scss 相同的文件夹中生成。

于 2014-05-14T10:10:27.750 回答