Skip to content

Latest commit

 

History

4,119 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

日本語プログラミング言語「なでしこ3」

MIT License npm version

「なでしこ3」とは

「なでしこ3」とは、日本語のプログラミング言語です。「誰でも簡単プログラマー」を合い言葉に開発しています。 日本語プログラミング言語は、読みやすく理解しやすいのが特徴で、初めてでも楽しくプログラミングを覚えることができます。 日本語話者にとって、母国語で行うプログラミング教育にも最適です! また、なでしこは、もともと業務改善のためのツールとして開発されましたので、定型処理やバッチ処理などを手軽に記述するのも得意です。ゲームやツール、さまざまな用途でお使いいただけます。

はじめて「なでしこ」に挑戦する方は、次のチュートリアルから始めることをオススメします。日本語プログラミング言語の雰囲気が容易に理解できます。

対応機器/ブラウザ

WEB版なでしこ3は、内部的にJavaScriptに変換されて実行されます。そのため、JavaScriptが動作するさまざまな端末で実行できます。

  • Webブラウザ(wnako3) - 主要ブラウザ(Chrome/Safari/Edge/Firefox)に対応し、PC/スマートフォンで動作
  • コマンドライン(cnako3) - JavaScriptの実行エンジン「Node.js」上で動作

具体的な対応ブラウザについて詳しくは、対応機器/ブラウザ をご覧ください。Node.jsの対応バージョンは、v22以上です。

また、本リポジトリとは別に、PC版のなでしこ3(Go言語で実装されたもの)があります。

  • PC版(gonako/gonako-gui) - デスクトップアプリ(gonako-gui)やコマンドライン(gonako)アプリを開発できます。作成したアプリを実行ファイル1個に梱包でき配布も簡単です。エディタ一体型のツールです。

ブラウザで利用する方法

次のWebエディタ上で、なでしこを実行できます。ブラウザがあれば動作します。

なでしこ3をインストールする方法

なでしこ3をインストールして動かす方法は下記にまとめています。

AIと一緒になでしこを使う

AIになでしこの文法を読み込ませることで、なでしこのプログラムをエラーなく動かすことが可能です。

Node.jsでなでしこ3コマンドライン版をインストール

先にNode.js/npmをインストールします。次いで、コマンドラインから次のコマンドを実行します。

npm install -g nadesiko3

すると、cnako3というコマンドで、なでしこを利用できます。

# コマンドラインからプログラムを実行
cnako3 -e "「こんにちは」と表示。"
# ソースコード hello.nako3 を実行
cnako3 hello.nako3

GitHubからインストール

Gitコマンドをインストールした上で、次のコマンドを実行すると、なでしこの開発環境をセットアップできます。

git clone https://github.com/kujirahand/nadesiko3.git
cd nadesiko3
npm install
npm run build

全てのコマンドが正しく動くかを確認するには、次のコマンドを実行します。

npm test

ブラウザ系テストについては、doc/browser-tests.md を参照してください。

コマンドライン版なでしこをインストールして使えるコマンド

ローカルPCになでしこをインストールしたら、次のコマンドを実行して、ブラウザで動作するエディタを起動できます。

# なでしこエディタ(WEB版)のサーバーを起動
npm start
# なでしこエディタ(Node.js版)を起動
npm run nako3edit

命令を検索するコマンド

なでしこ3の命令一覧(doc/command_list.json)を、ターミナルから検索できます。 検索処理は、なでしこ3自身(batch/search_command.nako3)で書かれています。

# 命令名・読み方・説明から部分一致検索
npm run search:command -- ファイル
# Node.js版で使える命令だけを検索
npm run search:command -- ファイル --target cnako
# JSON形式で出力(AIエージェントや別ツール向け)
npm run search:command -- CSV --json
# 使い方を表示
npm run search:command -- --help

詳しくは、doc/search_command.md をご覧ください。

なでしこの開発履歴

日本語プログラミング言語「なでしこ」の開発は2004年にはじまりました。その後、何度も作り直しを行って、現在の「なでしこ3」ができています。 「なでしこ3」の開発は、2017年からコツコツと継続され、現在まで定期的にバージョンアップが続いています。 2004年に掲げた「誰でも簡単プログラマー」の目標を実現するために開発を続けます。

  • (2026-09-07) 現行TS版と互換性のあるなでしこ3(Go版)を公開
  • (2026-09-01) v3.8.1で古い__getProp/__setPropによるプロパティアクセスを廃止
  • (2026-04-05) v3.7.17より生成AIの活用を大々的に開始
  • (2024-07-22) v.3.6.11でcoreに分割した開発用リポジトリを再び本家に統合
  • (2024-07-04) v3.6.8で、バンドルツールをwebpackからesbuildに変更(#1690)
  • (2024-05-02) v3.6.2で、プラグイン用APIを一新、なでしこの変数管理をObjectからMapに変更(#1638)
  • (2022-05-19) v3.3.18でJavaScriptからTypeScriptへ変更。言語コアを別リポジトリcoreに移動
  • (2022-04-20) v3.3.2を公開(モジュール構造をCommonJSからESModuleへ変更/非同期関数asyncFnの実装)
  • (2021-04-09) v3.2.1を公開
  • (2020-04-24) v3.1.2を公開
  • (2017-12-29) v3.0.19を公開(無名関数「には」の実装)。これ以降、releaseに履歴を記録
  • (2017-06-25) 内部構造を大幅に修正(PEGパーサーから独自のパーサーに変更)
  • (2017-02-13) 「なでしこ3」のプロジェクトが開始
  • (2005-02-17) 「なでしこ」の正式版が公開
  • (2004-08-01) 「ひまわり2」としてゼロから「なでしこ」の開発が開始
  • (2001-08-03) 「なでしこ」の前身「ひまわり」の開発を開始

なでしこ3の開発に参加

なでしこ3自身を開発するために、開発環境を整えようという方は、 doc/SETUP.md をご覧ください。 なでしこユーザーと開発者用のためのDiscordがあります。

プルリク大歓迎

プルリクエスト大歓迎です。なでしこ3の開発に参加したい方は、次の手順に沿って作業をお願いします。

  1. まずGitHubのIssuesに修正したい内容や作業したい内容を書き込んでください。
  2. git checkout -b branch_name を実行して、ブランチを作成します。
  3. ソースコードを修正して、git commit -a -m コメント と git push --set-upstream origin branch_name コマンドを実行します。
  4. ここで、ブラウザでGitHubのなでしこのリポジトリを表示すると、画面上部に「Compare & pull request」ボタンが表示されるのでクリックして、プルリクエストを作成します。
  5. プルリクエストの画面では、何を修正したのかと、上記(1)のIssuesの番号を #1762 のように記述してください。
  6. なでしこ開発者がプルリクエストをレビューします。そして、必要な修正箇所を指摘しますので、お手数ですが修正をお願いします。
  7. 上記(3)に戻ります。修正箇所がなければ、修正がメインブランチにマージされます。

現在、マスターブランチ保護のため、直接コミットを禁止しています。既にコラボレータに登録されている方も、お手数ですがプルリクエストを作成してください。

なでしこ3プラグインの開発について

なでしこ3を拡張するプラグインを作るには、以下のドキュメントを参考にしてください。

なでしこ関連リポジトリへのリンク

About

Japanese Programming Language Nadesiko v3 (JavaScript/TypeScript)

Topics

Resources

Stars

314 stars

Watchers

5 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages