コンテンツにスキップ

CLI

Purus CLIはPurusプロジェクトのコンパイル、実行、チェック、管理のためのコマンドを提供します。

コマンド説明
purus build [file]PurusファイルをJavaScriptにコンパイル
purus run [file]ファイルを生成せずにコンパイル&実行
purus check <file>構文チェックのみ
purus new [name]新しいプロジェクトを作成
purus init現在のディレクトリでプロジェクトを初期化
purus versionバージョンを表示
purus helpヘルプを表示

エイリアス: compile = build, create = new

PurusソースファイルをJavaScriptにコンパイルします。単一ファイル、ディレクトリ、設定ファイルベースのコンパイルに対応しています。

Terminal window
purus build hello.purus
# 出力: hello.js
purus build app.cpurus
# 出力: app.cjs
purus build lib.mpurus
# 出力: lib.mjs
拡張子出力形式
.purus.js標準JavaScript
.cpurus.cjsCommonJSモジュール
.mpurus.mjsESモジュール

ディレクトリ内のすべての .purus.cpurus.mpurus ファイルをコンパイルします。出力ディレクトリの構造はソースと同じになります。

Terminal window
# src/ 内のすべてのファイルを dist/ にコンパイル
purus build --directory src
# 出力先ディレクトリを指定
purus build --directory src --output build

ファイルやディレクトリが指定されていない場合、カレントディレクトリまたは親ディレクトリから config.purus を読み込みます。

Terminal window
# config.purusのentryとoutputの設定を使用
purus build

詳細はconfig.purusを参照してください。

オプションエイリアス説明
--directory <dir>-dディレクトリ内のすべてのPurusファイルをコンパイル
--output <dir>-o出力先ディレクトリを指定(config.purusより優先)
--no-header// Generated by Purus ヘッダーコメントを省略
--stdoutコンパイル結果をファイルではなく標準出力に出力
Terminal window
# ヘッダーコメントなしでコンパイル
purus build --no-header hello.purus
# コンパイル結果を標準出力に出力
purus build --stdout hello.purus
# ディレクトリを指定して出力先を変更
purus build -d src -o build
# config.purusを使用し、出力先を上書き
purus build --output public/js

ファイルを生成せずにPurusファイルをコンパイルして実行します。テストや開発時に便利です。

Terminal window
purus run hello.purus

ディレクトリ内のすべてのPurusファイルを実行:

Terminal window
purus run --directory src
Terminal window
# config.purusのentry設定を使用
purus run
オプションエイリアス説明
--directory <dir>-dディレクトリ内のすべてのPurusファイルを実行

コンパイルせずに構文チェックのみ行います。構文が正しければ OK: <file> と表示します。

Terminal window
purus check hello.purus
# OK: hello.purus

新しいPurusプロジェクトを対話形式で作成します。対象ディレクトリは存在しないか、空である必要があります。

Terminal window
# 対話形式で作成
purus new my-project
# すべてのプロンプトをスキップ
purus new my-project -y
ファイル説明
src/main.purusHello Worldサンプル付きのエントリポイント
config.purusビルドとリンターの設定
.prettierrcPurus用のPrettier設定
README.mdスクリプトリファレンス付きのREADME
.gitignoreGitの無視ルール
package.jsonスクリプト付きのnpmパッケージ
スクリプトコマンド説明
puruspuruspurus CLIの実行
buildpurus buildプロジェクトをコンパイル
compilepurus compileプロジェクトをコンパイル(エイリアス)
execpurus runプロジェクトを実行
formatprettier --write ./srcソースファイルをフォーマット
lintpurus-lintソースファイルをリント

プロンプトで確認(または -y で自動インストール):

  • purus — コンパイラ
  • @puruslang/linter — リンター
  • @puruslang/prettier-plugin-purus — Prettierプラグイン
  • prettier — コードフォーマッター

現在のディレクトリでPurusプロジェクトを初期化します。src/src/main.purus が存在しなければ作成します。

Terminal window
purus init

インストールされているPurusのバージョンを表示します。

Terminal window
purus version
# purus v0.2.1

エイリアス: purus --version, purus -v


すべてのコマンドを含むヘルプメッセージを表示します。

Terminal window
purus help

エイリアス: purus --help, purus -h


プロジェクトルートに config.purus を配置して、ビルド・実行・リンターの設定を行います。ファイルはPurusの構文自体で記述します。

-- Purus Configuration
const entry be ///src///
const output be ///dist///
const header be true
-- Linter settings
const lint.no-var be ///warn///
const lint.indent-size be 2
const lint.max-line-length be ///off///
キーデフォルト説明
entrystring"src"ソースディレクトリ
outputstring"dist"出力先ディレクトリ
headerbooleantrue// Generated by Purus ヘッダーコメントを含める
キーデフォルト説明
lint.no-varstring"warn"var 使用時に "warn" または "error"
lint.indent-sizenumber2期待されるインデントサイズ
lint.max-line-lengthstring/number"off"最大行長("off" で無効化)

以下のコマンドはファイル引数がない場合、自動的に config.purus を読み込みます:

  • purus buildentryoutputheader 設定を使用
  • purus runentry 設定を使用
  • purus-lintlint.* 設定と entry によるファイル検出を使用

コマンドラインオプション(例: --output--directory)は設定ファイルの値を上書きします。


PurusはNode.jsライブラリとしても使用できます。

const { compile, check, version } = require("purus");

PurusソースコードをJavaScriptにコンパイルします。

const js = compile("const x be 42");
// => "// Generated by Purus 0.2.1\nconst x = 42;\n"
const js = compile("const x be 42", { header: false });
// => "const x = 42;\n"
オプションデフォルト説明
headerbooleantrueヘッダーコメントを含める

Purusソースコードの構文エラーをチェックします。有効であれば true を返し、エラーがあれば例外を投げます。

check("const x be 42"); // => true
check("const x be"); // throws Error

現在のPurusバージョン文字列です。

console.log(version); // => "0.2.1"