好吧,這裏就是我想:自動編譯SCSS文件崇高文本2
- 我寫.scss文件,而不是.sass文件
- 在保存文件時,我得到了相應的.css文件在同一個文件夾中
現在Sublime Text2上有很多SASS插件,但似乎沒有提供任何超出語法突出顯示的內容。
關於如何讓自動編譯Sublime Text2的任何建議。
好吧,這裏就是我想:自動編譯SCSS文件崇高文本2
現在Sublime Text2上有很多SASS插件,但似乎沒有提供任何超出語法突出顯示的內容。
關於如何讓自動編譯Sublime Text2的任何建議。
我沒有發現這樣做的任何現有的插件,所以這裏是:
假設您已經安裝了包控制的SCSS插件,您可以將此保存爲包/用戶/ 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()
當然,這將是與用戶配置的設置正式的程序包控制插件更好(其中保存文件,開/關,等等),但是這符合您的要求,並不會阻止編輯器。
Sublime Text2如何調用此文件? – Rajat 2012-08-11 05:27:47
爲了明確:它的工作原理。我測試了它。 Sublime Text 2解析其Packages文件夾下的所有Python文件。在這種情況下,Sublime Text分析SCSS.py,並在其中定義的類繼承自sublime的EventListener類。因爲它覆蓋了on_post_save方法,Sublime會在每次保存後調用該方法。 以下是EventListener插件類的官方文檔:http://www.sublimetext.com/docs/2/api_reference.html#sublime_plugin.EventListener – 2012-08-12 00:23:41
我試過了。不適合我。我的包文件夾具有以下內容:1)SCSS文件夾2)您的SCSS.py文件3)SCSS.pyc文件。 – Rajat 2012-08-12 05:50:03
你應該考慮使用構建系統而不是專用插件。這很簡單。
http://docs.sublimetext.info/en/latest/file_processing/build_systems.html
事情是這樣的:
{
"cmd": ["sass","$file"],
"selector": "source.scss",
"path": "/usr/local/bin"
}
而且正好碰上ctrl + b
噸建立當前文件。如果你有多個scss版本,你可以從build菜單中選擇一個版本(Tools -> Build Systems
)。
我正在尋找一個用於Sublime Test的sass/scss編譯器插件,但我的源文件夾與我的css文件夾分開。所以,在這裏留下的留言我寫了SassBuilder,它運行存儲在源文件夾中的配置文件。它也被提交給Sublime Package Control存儲庫。一旦他們提出請求,你可以從那裏安裝它。
你可以使用SublimeOnSaveBuild插件。 而在插件過濾器設置中,只需保留.scss文件! 這是偉大的作品!
這正是我所需要的。 – fredley 2016-04-19 09:14:24
Sass Builder是一個新的插件,可以在包裝管理器中使用。 這不需要任何配置。只需編寫你的scss,然後點擊cmd + b進行編譯。 你的css文件將在scss的同一文件夾中生成。
這裏[答案] [1],利用建立系統buils在崇高的文本2青菜 [1]:http://stackoverflow.com/questions/12448546/sublime-text-2-doesnt -save-built-sass-file/30068537#30068537 – 2015-05-06 06:07:57