JaPy is a Python dialect in Japanese.
Project description
JaPy - 日本語カタカナPython方言
JaPyロゴ - 青と赤を使用した「Ja」の文字デザイン。
青い「J」の中にはPythonの蛇の目を表現した二つの白い円が配置され、愛と平和の融合を象徴している
JaPyは日本語カタカナキーワードを使用するPythonの方言です。なぜか全部カタカナでプログラミングしたくなった時のためのツールです。Pythonの構文はそのままに、なんとなく日本語っぽくコーディングできます。
🌟 フィーチャー
- フルカタカナキーワード:
デフ、イフ、フォーなど、なんか日本語っぽいキーワード群 - トランスパイラー: JaPyコードを普通のPythonコードにコンバート
- コマンドラインツール: ファイル変換、実行、検証機能
- VS Codeエクステンション: シンタックスハイライトとオートコンプリートをサポート
- ユニコード対応: 日本語アイデンティファイアーの完全サポート
📦 インストレーション
PyPIから(推奨)
# pipでインストール
pip install japy-lang
# または uvでインストール
uv add japy-lang
ローカル開発版
# リポジトリをクローン
git clone https://github.com/satoi8080/JaPy.git
cd JaPy
# デペンデンシーをインストール
uv sync
VS Codeエクステンション
VS Code Marketplaceから(推奨)
VS Code Marketplaceから直接インストールできます。
手動ビルド・インストール
まずエクステンションをビルドしてからインストール:
cd vscode-extension
# デペンデンシーをインストール
npm install
# エクステンションをビルド
./build.sh
ビルド後、ジェネレートされた.vsixファイルをインストール:
- VS Codeで
Ctrl+Shift+P(Mac:Cmd+Shift+P) - "Extensions: Install from VSIX..."をセレクト
vscode-extensionフォルダ内のjapy-language-support-*.vsixファイルをセレクト
🚀 ユーセージ
ベーシックなサンプル
# hello.japy
デフ 挨拶(名前):
プリント(f"こんにちは、{名前}さん!")
リターン トゥルー
クラス 人:
デフ __init__(self, 名前, 年齢):
self.名前 = 名前
self.年齢 = 年齢
デフ 自己紹介(self):
プリント(f"私の名前は{self.名前}で、{self.年齢}歳です。")
# メイン実行
イフ __name__ == "__main__":
人物 = 人("田中", 25)
人物.自己紹介()
挨拶(人物.名前)
コマンドラインユーセージ
# JaPyファイルをトランスパイルしてエグゼキュート
uv run python -m japy --input=hello.japy --execute
# Pythonコードをアウトプットファイルにセーブ
uv run python -m japy --input=hello.japy --output=hello.py
# トランスパイルリザルトをディスプレイ(デフォルト)
uv run python -m japy --input=hello.japy --show
# トランスパイルリザルトを表示しない
uv run python -m japy --input=hello.japy --show=false
# キーワードマッピングをバリデート
uv run python -m japy --validate
# デバッグモードで実行
uv run python -m japy --input=hello.japy --execute --debug
コマンドラインオプション
利用可能なフラグ:
--input: トランスパイルする.japyファイル(必須、--validateモード以外)--output: 出力Pythonファイル(指定しない場合は標準出力)--execute: トランスパイルされたPythonコードを実行--show: トランスパイルされたPythonコードを表示(デフォルト: true)--validate: キーワードと組み込み関数のマッピングを検証--debug: デバッグ出力を有効化
実用的なサンプル
# 1. JaPyファイルを作成して実行
echo 'プリント("ハロー、ワールド!")' > hello.japy
uv run python -m japy --input=hello.japy --execute
# 2. JaPyファイルをPythonファイルに変換
uv run python -m japy --input=hello.japy --output=hello.py
# 3. 変換結果を確認してから実行
uv run python -m japy --input=hello.japy --show --execute
# 4. システムの検証(開発者向け)
uv run python -m japy --validate
プログラムからユーズ
from japy import transpile_japy
japy_code = """
デフ テスト():
プリント("こんにちは、JaPy!")
リターン トゥルー
"""
python_code = transpile_japy(japy_code)
print(python_code)
exec(python_code)
📚 ランゲージリファレンス
サポートされているキーワード、ビルトイン関数、ビルトイン型のコンプリートなリストは、japy/ジャパイ.pyのソースコードをリファーしてください。
メジャーなキーワードサンプル:
デフ→def(ファンクションデフィニション)イフ→if(コンディショナルブランチ)フォー→for(ループ)プリント→print(アウトプット)レン→len(レングス)
🛠️ デベロップメント
テストエグゼキューション
# サンプルJaPyファイルをラン
uv run python -m japy --input=japy/ジャパイ.japy --execute
# キーワードマッピングをバリデート
uv run python -m japy --validate
# VS Code拡張機能のテストサンプルを実行
uv run python -m japy --input=vscode-extension/test-example.japy --execute
# デバッグモードでテスト
uv run python -m japy --input=japy/ジャパイ.japy --execute --debug
VS Codeエクステンションのデベロップメント
ディテールはvscode-extension/INSTALL.mdをリファーしてください。
cd vscode-extension
# デペンデンシーをインストール
npm install
# エクステンションをビルド
./build.sh
📄 ライセンス
MIT License - ディテールはLICENSEファイルをリファーしてください。
🔗 リンクス
JaPy - 日本語カタカナでプログラミングをエンジョイしよう!
なんでこんなものを作ったんだろう...
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file japy_lang-0.1.3.tar.gz.
File metadata
- Download URL: japy_lang-0.1.3.tar.gz
- Upload date:
- Size: 315.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
25296aa41f8ff207935419dd85f363b9dc40d54aafb92a7ca9be68ad3f92a7e5
|
|
| MD5 |
6e8456b588058ab9ab09884006c4b192
|
|
| BLAKE2b-256 |
487506a9aa7aa4d69ef97c0505212207dccb2b095b8582d7160213c125b0bbc3
|
File details
Details for the file japy_lang-0.1.3-py3-none-any.whl.
File metadata
- Download URL: japy_lang-0.1.3-py3-none-any.whl
- Upload date:
- Size: 287.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
75b9cdb82603a79ac9a8cb933d58b53c9ca52e7d83e2feff5de0a3ab756c64f0
|
|
| MD5 |
efc7c19d0bcd6eec48f7239d0658132e
|
|
| BLAKE2b-256 |
c7e9d15025278c944400f68af891a25ae4efd7e50396403ac8cf5ac3bc088892
|