ゆるおたノート

Tomorrow is another day.

【Clasp】ローカルでGASを書く準備 ~Claspをインストールする~

Node.js、Claspの順にインストールしていきます。

Claspをインストール

node.jsを入れる

ダウンロード

OSにより選択してください。

Windowsの64bit版の場合
  1. 公式サイトにアクセス

    Node.js

  2. 左側の「推奨版」を任意の場所にダウンロード

    ※当記事の執筆時点で、推奨版は12.18.4 LTSです。
    Node.jsのダウンロード・ページ

それ以外の場合
  1. 公式サイトのバージョン一覧にアクセス

    ダウンロード | Node.js

  2. 「推奨版」タブから、自分のOSや目的に合うものを任意の場所にダウンロード

    例えばWindowsの32bit版であれば、画像中央あたりのWindows Installer (.msi)32-bitが良いようです。
    Node.jsのインストーラーの一覧

インストール
  1. インストーラを起動して、画面の指示に従いNode.jsをインストールする

    詳しい手順はこちら↓が参考になるかと思います。
    claspを使う事前準備-Node.jsをインストールする – 経理業務向けGoogle Apps Script講座

    Node.jsを入れる過程で、このあと使用するnpmというツールもインストールされます。

バージョンを確認
  1. Node.jsのインストールができたら、ターミナルを起動する

    特に理由が無ければPowerShellGit Bashがおすすめです。
    以下、原則Git Bashを使用する場合を前提に説明します。

  2. 下記のコマンドを入力して、インストールができているか確認する

    npm -v

    こんな風にnpmのバージョンが出力されればOK。

    ※バージョンは執筆時点のものです。

    6.9.0

Claspを入れる

インストール

npmというNode.js版のパッケージ管理ツールを使用してClaspをインストールします。

PowerShell用の記事ですが、「パッケージとは何ぞや?」な方はこちらへ。
【PowerShell】「そもそもパッケージって何?」っていうあなたに、少し説明します。 - ゆるおたノート

  1. 下記のコマンドを入力して、Google社が配布しているClaspの公式パッケージ(@google/clasp)をインストール
    npm i @google/clasp -g
コマンドの意味

npm i [パッケージ名]で、パッケージをダウンロードしてインストールする」という意味のコマンドです。

# パッケージをインストール
npm i [パッケージ名]

インストール先はカレントディレクトリの周辺(参考)で、基本はプロジェクト内の展開になると思います。

そこに-gというオプションをつけると、展開範囲は「OSのユーザー単位(=グローバル)」になります。

# パッケージをグローバルでインストール
npm i [パッケージ名] -g

パッケージ自体のインストール先もnpmのインストール場所」に変更されます。

ちなみにiinstallのショートハンドなので、下記のように書いてもOKです。

# パッケージをグローバルでインストール
npm install -g [パッケージ名]
バージョンを確認

インストールが出来たら、念のためClaspが正しくインストール出来ているか確認します。

  1. Claspのバージョンを確認

    ※バージョンは執筆時点のものです。

    # 入力
    clasp -v
    
    # 出力(例)
    2.1.0

「そんなコマンドは無いよ」と言われたら…

Claspのコマンドを使用する時、コマンドがシェル*1に登録できていないと下記のようなエラー文が出力されます。

command not found

コマンドが見つかりません。

この場合は、Claspのコマンド達を「Claspという名のコマンド」として端末に登録して、シェルがClaspコマンドを認識できるようにしておく必要があります。

書き方は、こんな感じ。

# コマンドを登録する
alias [コマンド名]=[ソースコード]

aliasは、別名・通称という意味です。「エイリアス」と読むことが多いと思います。

Claspを登録する場合は、こんな感じに書きます。

# Claspコマンドを登録する
alias Clasp=~/clasp/src/index.js

今回はClaspのパッケージをグローバルでインストールしているので、Claspコマンドのソースコードも端末の「ユーザーごと」に入っています。

そこで、エイリアスにもユーザー用のファイルを指定します。
Windowsの場合、ソースコードの保存場所はこちら。

/C/Users/[ユーザー名]/AppData/Roaming/npm/node_modules/\@google/clasp/src/index.js

なお、これはBash用の表記で、パスはC:\Users\~ではなく/C/Users/~のようにバックスラッシュ/で区切ることに注意してください。

これをコマンドに適用すると、こんな感じになります。

# aliasコマンドで「Claspコマンド」のソースを指定する
alias clasp=/C/Users/[ユーザー名]/AppData/Roaming/npm/node_modules/\@google/clasp/src/index.js

ターミナル上で上記のように入力し、Enterで実行します。

しかし、これを実行してもターミナルでは特に何も出力されません。(不安…)
そこで、ちゃんと登録できたか確認する意味も込めて、改めてClaspコマンドを使ってみます。

# 入力
clasp -v
 
# 出力(例)
2.1.0

このようにバージョンが出力されればOKです。

Googleアカウントの登録

GAS側の設定

GASのプロジェクトを外部から操作できるようにする

Google Apps Script APIを有効化します。

  1. Clasp作業用のGoogleアカウントでGoogleにログイン

  2. 下記の設定ページにアクセス

    Apps Script – Google Apps Script

  3. 背景が青い辺りにカーソルを合わせてクリック

    背景が青い辺りにカーソルを合わせてクリック

  4. 画面右側のスイッチをクリックして、Google Apps Script APIオンに変更

    Google Apps Script APIを「オン」にする

Clasp側の設定

作業用のChromeを「アクティブ」にしておく

※ここはChromeブラウザを複数ユーザー分作成している方向けです。
それ以外の方は次へ

  1. Claspで作業したいユーザーのブラウザで任意のページを開いてウィンドウをアクティブにしておく
ClaspにGoogleアカウントを紐付ける
  1. ターミナルに戻って下記のコマンドを入力

    clasp login

    自動でブラウザが開きます。

  2. Clasp作業用のGoogleアカウントでログイン

    アカウントが認証されると、ブラウザの上の方に下記のメッセージが表示されます。

    Logged in! You may close this page.

    ログインしました!このページは閉じて構いません。

    ここまで来たら、ブラウザは一旦閉じてもOKです。

このシリーズについて

Google Apps Scriptをローカルで編集する方法について、まとめています。

誤り、分かりづらい等ありましたら、ぜひコメント欄やTwitterお問い合わせフォーム等でご教示ください。

次回

【Clasp】ローカルでGASを書く準備 ~プロジェクトを作成する~ - ゆるおたノート

連載目次

  1. 【Clasp】ローカルでGASを編集するメリットとデメリット - ゆるおたノート
  2. 当記事【Clasp】ローカルでGASを書く準備 ~Claspをインストールする~ - ゆるおたノート
  3. 【Clasp】ローカルでGASを書く準備 ~プロジェクトを作成する~ - ゆるおたノート
  4. 【Clasp】ローカルでGASを書く準備 ~コーディングを楽にする~ - ゆるおたノート
  5. 【Clasp】ローカルでGASを書いてみる ~スクリプトを書いてアップロードする~ - ゆるおたノート
  6. 【Clasp】ローカルでGASを書いてみる ~スクリプトをGitで管理する~ - ゆるおたノート

参考

注釈

*1: シェルとは?

シェル(英:shell)とは

コンピュータ株式会社の受付のおねーさんのこと。

もう少し真面目に書くと
人間様からの入力をコンピュータさんに伝えるプログラムのこと
です。

イメージしにくければ
Windowsにおける「コマンドプロンプト」みたいなもの
と考えても構いません。

シェル (shell)とは|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典