Visual Studio CodeでDart Sassのコンパイルができる拡張機能「DartJS Sass Compiler and Sass Watcher」

Sassをコンパイルする方法は様々です。
案件レベルでがっつりする場合は開発環境を整える必要がありますが、ちょっと1人でSassを触りたいレベルであればVisual Studio Codeの拡張機能を使うとラクです。
今回はVisual Studio CodeでDart Sassのコンパイルができる「DartJS Sass Compiler and Sass Watcher」を紹介します。
DartJS Sass Compiler and Sass Watcher

下記2つの機能が使える拡張機能です。
- Sassのコンパイル
- Auto Prefix(CSSのベンダープレフィックス自動付与)
「Live Sass Compiler」という拡張機能も有名ですが、こちらはDart Sassには対応していません。
これから勉強するのであれば、Dart Sassを使うようにした方がいいでしょう。
基本的な使い方
インストールすれば、ワークスペース内でSassの.scssファイルを保存すると自動でコンパイルされます。
しかし、デフォルトの設定のままだと、CSSファイルはSassファイルと同じディレクトリに生成されます。

Sassは管理しやすいように別フォルダで管理することの方が多いので、設定を変えて使います。
設定の変更
Visual Studio Codeの設定を変更したり、settings.jsonファイルにコードを追加して設定を変更します。
CSSファイルの生成場所を変更
「dartsass.targetDirectory」でCSSファイルの生成場所を変更できます。
開いているフォルダのルートディレクトリに生成したい場合は「./」と設定します。
「assets」フォルダ内の「css」フォルダに生成したい場合は「assets/css/」とします。
{
"dartsass.disableAutoPrefixer": "assets/css/"
}これで生成場所が変更されました。
圧縮版のminファイルを生成するかどうかの設定
デフォルトでは通常のCSSに加えて、改行やスペースを全て除いて容量を節約した「○○.min.css」も一緒に生成されます。
通常版だけでいいか、それとも圧縮版だけ生成するかなどの設定ができます。
| 設定値 | 内容 |
|---|---|
| both | 通常版も圧縮版も両方生成する |
| cssonly | 通常版のCSS(○○.css)のみ生成する |
| minified | 圧縮版のCSS(○○.min.css)のみ生成する |
{
"dartsass.outputFormat": "both"
}不要な機能の無効化
デフォルトで有効化されている機能の中から、不要なものは無効化できます。
| 設定項目 | 内容 | 備考 |
|---|---|---|
| dartsass.disableAutoPrefixer | Autoprefixerを無効にする | マルチブラウザに対応するためのベンダープレフィックスを CSS生成時に自動で付与してくれる機能 |
| dartsass.disableCompileOnSave | ファイル保存時にコンパイルしてくれるのを無効化 | |
| dartsass.disableSourceMap | ソースマップの生成を無効化 | 一緒に生成される「style.css.map」ファイルで、これがあると、ブラウザの開発者ツールで、元の .scssファイルの何行目の記述か分かる |
| dartsass.enableStartWithUnderscores | 名前がアンダースコア(_)から始まるファイルもコンパイルを有効にする | 一般的にアンダースコアから始まるファイルはインポート用 |


Dashで「Secure Input is Enabled」と表示される場合の対処法
WordPressのカスタム投稿タイプを追加後、ページは存在しているはずなのに404になる場合の解決方法
WordPressで「予約投稿の失敗」となってしまう場合の対処方法
「DevTools z-index」でz-indexがかかっている要素をChrome開発者ツールに一覧表示させる
npm-scriptsでSCSSをコンパイルする環境を構築する方法
Backlogで2段階認証を設定後、SourceTreeでアカウントエラーが発生する場合の対処法
Vue.jsのv-forで生成した要素をクリックするたびに、classをトグルで付け外しする方法
Visual Studio Codeで英単語のスペルチェックをしてくれる拡張機能「Code Spell Checker」
ウェブ上でLaTeXで数式をキレイにプレビューするJavaScriptライブラリ「MathJax」
スクロール時に表示領域に画面がくっつくようになる処理をCSSだけで実現する「scroll-snap」
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
OnyXでターミナルを使わずにmacOSの詳細設定を行う
軽量で高速なターミナルエミュレーター「Ghostty」の設定方法
Eagleで実現するクリエイティブ素材の簡単管理
かゆいところに手が届く「Supercharge」でMac環境を便利にカスタマイズする
超軽量なコードエディタ 「Zed」をサブエディタとして活用する
Bartender 6で追加されたWidgets機能で自作メニューバーアイテムを簡単に作成する
Googleカレンダーを便利に活用するための小技集(祝日だけを表示・月末の繰り返しイベントを追加)
Obsidianを使った「自己流PKM」で行う知識トレーニング
テキストエディタ・ノートアプリ関連のショートカットキーをKeyboard Maestroで統一する
Path Finderを使ってキーボードだけでファイル操作する方法(応用編)