Compass 应用中的 Sass 和 SCSS
借助 GoLand 中的 Compass 支持 ,Compass 应用中的 Sass 或 SCSS 样式表会自动编译为 CSS。
开始之前
按照 从 JetBrains Marketplace 安装插件 中的说明,在 设置 | 插件 页签 Marketplace 上安装并启用 Compass 插件。
请确保设置中启用了 File Watchers 插件。 按 Ctrl+Alt+S 打开设置页面,然后选择 。 点击 已安装 页签。 在搜索字段中输入 File Watchers。 如需了解更多插件信息,请参阅 插件管理。
安装 Compass
在嵌入式 终端 (Alt+F12 )中键入:
gem install compassCompass 安装在包含 Ruby 可执行文件和 gem.bat 文件的文件夹中。
创建新 Compass 应用
如果您尚未创建 Compass 应用,可以新建该应用或在空的 GoLand 项目中添加 Compass 支持。 在这两种情况下,都会生成一个 conf.rb 配置文件。
在嵌入式 终端 (Alt+F12 )中键入:
compass create <the name of the application to be created>创建一个空的 GoLand 项目,打开嵌入式 终端 (Alt+F12 ),然后键入:
cd <application folder> compass init
在应用中启用 Compass 感知支持
打开一个 .sass 或 .scss 文件,点击
@import 'compass'语句旁的红色小灯泡或按 Alt+Enter ,然后在建议列表中选择 配置 Compass。选中 启用 Compass 支持 复选框,并指定 Compass 可执行文件和 conf.rb 配置文件的路径。
从现有 Compass 应用开始
打开已在本地计算机上的应用源代码
点击 打开 屏幕上的 欢迎 或从主菜单中选择 。 在打开的对话框中,选择存储源代码的文件夹。
从版本控制中检出应用源代码
点击 克隆 屏幕上的 欢迎。
或者,从主菜单中选择 或 。
在主菜单中,您可能看到与项目相关联的其他版本控制系统,而不是 Git。 例如, Mercurial 或 Perforce。

编译 Sass 和 SCSS
要使代码自动编译,您需要安装编译器并配置一个 Compass Sass 或 Compass SCSS File Watcher ,用于监控文件变化并运行编译器。
当您打开一个文件时,GoLand 会检查当前项目中是否存在适用的 File Watcher。 如果配置了适用的 File Watcher 但未启用,GoLand 会弹出提示,告知您已配置 File Watcher 并建议启用。
如果在当前项目中已经配置并启用了适用的 File Watcher,则在指定事件发生时,GoLand 会自动启动编译器,事件定义位于 新建 Watcher 对话框 中。
如果选中了 自动保存已编辑的文件以触发监视器 复选框,则在对源码进行任何更改后会立即调用 File Watcher。
如果未选中 自动保存已编辑的文件以触发监视器 复选框,则 File Watcher 会在保存(、 Ctrl+S )或从 GoLand 失去焦点时(窗口失活)启动。
可从 文件监视器 了解更多信息。
GoLand 会为生成的输出创建单独的文件。 该文件名称与源 Sass 或 SCSS 文件相同,扩展名为 .css 。 生成文件的位置在 要刷新的输出路径 字段中定义,位于 新建 Watcher 对话框 中。 但是,在 项目树 中,它们显示在源文件下,该文件现在作为一个节点显示。
创建 File Watcher
在 设置 对话框中(Ctrl+Alt+S ),单击 File Watchers ,位于 工具 下。 打开的 File Watchers 页面将显示已配置的 File Watcher 列表。
单击
或按下 Alt+Insert。 根据您将要使用的工具,从列表中选择 compass sass 或 compass scss 预定义模板。 New Watcher 对话框将会打开。
在 程序 字段中,指定可执行文件的路径:
用于 Windows 的 compass.bat
用于 Unix 和 macOS 的 compass
在 参数 字段中,根据所使用的操作系统输入以下之一:
compile $UnixSeparators($ProjectFileDir$)$用于处理整个目录compile $UnixSeparators($FilePath$)$用于处理单个文件
compile $ProjectFileDir$用于处理整个目录compile $ProjectFileDir$ $FilePath$用于处理单个文件
compile $ProjectFileDir$用于处理整个目录compile $ProjectFileDir$ $FilePath$用于处理单个文件
按照 文件监视器 中的描述继续操作。