Google関連

[Google Apps Script]CLIツール「clasp」を試してみました。

今年の初めに話題になった、GASのCLI(Command Line Interface)ツール「clasp」を今更ながらに試してみました。

上記の通り、丁寧な解説が記載されたサイトがすでに数多くありますが、実際に手を動かしてみることが大事ですね!

準備

claspのインストールはnpmで行うため、Node.jsが必要となりますので、まずは下記記事を参考にNode.jsをインストールします。

Google Apps Script APIの有効化

claspは「Google Apps Script API」を使用するため、GASのユーザー設定画面(https://script.google.com/home/usersettings)から「Google Apps Script API」をオンにしておきます。

claspのインストール

コマンドプロンプトから下記コマンドを実行し、claspのインストールを行います。

npm install -g @google/clasp

ログイン

インストールが終わったら、下記コマンドを実行してGoogleアカウントでログインします。

clasp login

コマンドを実行すると、ブラウザーが表示されるので、画面に従ってGoogleアカウントへのアクセスを許可します。

プロジェクトの作成

ログインが終わったら、いよいよプロジェクトを作成してみます。
コマンドプロンプトで適当なフォルダを開き、下記コマンドを実行します(「project1」は作成するプロジェクト名)。

clasp create project1

下記コマンドでスクリプトエディタが表示されるはずなのですが、私の環境では何故か表示されなかったので、手動でGASのプロジェクト画面(https://script.google.com/home)を開いてみると、プロジェクトが作成されていることが確認できました。

clasp open

スクリプトエディタでもちゃんとプロジェクトが表示されます。

ローカルフォルダの方には、プロジェクトIDが記載された「.clasp.json」ファイルと、タイムゾーンやログの記録場所、スコープ等が記載された「appsscript.json」ファイルが作成されています。

コードのダウンロード

下記コマンドを実行すると、ローカルフォルダにプロジェクトのファイルをダウンロードします。

clasp pull

コードの編集

ダウンロードしたコード(Code.js)を適当に編集します(文字コード:UTF-8)。

function myFunction() {
  Logger.log("こんにちは、世界!");
}

コードのアップロード

下記コマンドを実行すると、ローカルフォルダのファイルをGASプロジェクトにアップロードします。

clasp push

スクリプトエディタを開くと、編集したコードが反映されていることが確認できます。

ログアウト

下記コマンドでログアウトを実行します。

clasp logout

claspを使うと、ローカルで簡単にGAS開発できることを体験できました!
バージョン管理やデプロイもできるようですが、それらについては「Google Apps Scriptの新しい3つの機能 その③ CLI Tool Clasp」や「GAS のGoogle謹製CLIツール clasp」といったサイトが参考になるでしょう。

Visual Studio Codeでのコード補完

GAS用の型定義ファイルは公開されているので(npm install –save @types/google-apps-script)、Visual Studio Codeを使えば、ローカルでインテリセンスを有効にすることもできますね!

私はまだ使ったことが無いのですが、下記のようなローカル開発用のテンプレートを作成された方もいらっしゃるようなので、興味がある方は使用されてはいかがでしょうか。

関連記事

  1. Google関連

    [Google Apps Script]UrlFetchApp.fetchからのアクセス情報

    UrlFetchApp.fetchしたときに、アクセス対象のサーバーに…

  2. Excel

    Google TTSで文字列を読み上げるマクロ(言語自動検出対応版)

    2012/2/15 追記:下記マクロをExcel 2007/201…

  3. Google関連

    [Google Apps Script]郵便番号から住所を取得する自作関数と住所から地図画像のURL…

    郵便番号検索APIを使って郵便番号から住所を取得する自作関数と、Sta…

  4. Google関連

    「Save to Drive」ボタンを試してみました。

    下記Webページでも紹介されていますが、Webサイト上のファイルを直接…

  5. Google関連

    以前のGoogle マップを使う。

    「「新しい Google マップ」正式公開、地図大きく、精緻すぎる3D…

  6. Excel

    Gmail APIを使ってメール送信するVBAマクロ(3)

    前回、前々回とGmail APIを扱ってきましたが、今回は前々回の記事…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

最近の記事

アーカイブ

RapidSSL_SEAL-90x50
PAGE TOP