Skip to main content

JaPy is a Python dialect in Japanese.

Project description

JaPy - 日本語カタカナPython方言

JaPyロゴ - 青と赤を使用した「Ja」の文字デザイン。青い「J」の中にはPythonの蛇の目を表現した二つの白い円が配置され、愛と平和の融合を象徴している

JaPyロゴ - 青と赤を使用した「Ja」の文字デザイン。
青い「J」の中にはPythonの蛇の目を表現した二つの白い円が配置され、愛と平和の融合を象徴している

License: MIT PyPI - Python Version PyPI PyPI - Version VS Code Extension

JaPy - カタカナでプログラミング

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ファイルをインストール:

  1. VS CodeでCtrl+Shift+P(Mac: Cmd+Shift+P
  2. "Extensions: Install from VSIX..."をセレクト
  3. 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

japy_lang-0.1.3.tar.gz (315.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

japy_lang-0.1.3-py3-none-any.whl (287.2 kB view details)

Uploaded Python 3

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

Hashes for japy_lang-0.1.3.tar.gz
Algorithm Hash digest
SHA256 25296aa41f8ff207935419dd85f363b9dc40d54aafb92a7ca9be68ad3f92a7e5
MD5 6e8456b588058ab9ab09884006c4b192
BLAKE2b-256 487506a9aa7aa4d69ef97c0505212207dccb2b095b8582d7160213c125b0bbc3

See more details on using hashes here.

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

Hashes for japy_lang-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 75b9cdb82603a79ac9a8cb933d58b53c9ca52e7d83e2feff5de0a3ab756c64f0
MD5 efc7c19d0bcd6eec48f7239d0658132e
BLAKE2b-256 c7e9d15025278c944400f68af891a25ae4efd7e50396403ac8cf5ac3bc088892

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page