トピック > アドオン

アドオン


アドオン言語

アドオン言語はJavaScript(正確にはECMAScript)
コードエディタウィンドウに記述する方法とメニューのアドオンに登録する方法の2種類ある。
メニューのアドオンに登録するには、addonフォルダにアドオン本体(JavaScriptソースコード(xxx.js))と設定ファイル(conf.json)を格納する。

XISMO Wiki
http://mqdl.jpn.org/dw/doku.php
developの項参考

 

コードエディタウィンドウ

JavaScriptの記述を行いながら実行が可能。
記述したコードは非表示にしてもクリアされない、またxsmファイルに保存される。
print文の結果が表示されるのは、コードエディタウィンドウの内容が実行された場合。アドオン組み込みでは表示されない。

書き出し機能の実装が予定されているようです。

実行は、コードエディタウィンドウの実行ボタンの他に
メニュー→アドオン→実行(F7)で実行可能

コードエディタウィンドウを閉じた状態で実行可能

コードエディタウィンドウの詳細

+ ...

①未実装(書き出し機能の実装が予定されているようです)
②元に戻す:コード記述欄の記述を直前に戻す
③やり直す:元に戻すを取り消す
④実行:コード記述欄のコードを実行する。メニュー→アドオン→実行(F7)でも実行可能
⑤クリア:メッセージ欄を初期化する
⑥コメント化:選択行をコメント化(行の先頭に//を挿入)する ⇒コメント
⑦コメント解除:選択行のコメントを解除(行の先頭の//を削除)する ⇒コメント
⑧インデント挿入:選択行のインデント挿入(行の先頭にTabを挿入) ⇒インデント
⑨インデント削除:選択行のインデント削除(行の先頭にあるTabを削除) ⇒インデント
⑩検索:指定した文字でコード記述欄を検索する。大文字と小文字を区別する
 ×マーク:検索文字をクリア
 虫眼鏡マーク:検索実行
 マウス操作:右クリックで全て選択、コピーなどのメニューあり。
⑪コード記述欄:JavaScriptコードの記述
 マウス操作:右クリックで全て選択、コピーなどのメニューあり。
⑫メッセージ欄:コード記述欄の実行結果 ⇒メッセージ欄
 マウス操作:右クリックで全て選択、コピーのメニューあり。

 
コメント
⑥コメント化 ⑦コメント解除
 
インデント
⑧インデント挿入 ⑨インデント削除
 
⑫実行結果
print文の結果 コーディングミスの表示

ウィンドウ表示/非表示

+ ...
メニュー→ウィンドウよりコードエディタウィンドウをチェックで表示

チェックOFFで非表示


 

アドオン登録



メニューのアドオンに登録するには、addonフォルダにアドオン本体(JavaScriptソースコード(xxx.js))と設定ファイル(conf.json)を格納する。
アドオン本体(xxx.js)はコードエディタウィンドウに内容をコピーしても実行できる。
アドオン本体及び設定ファイルはXsimo起動時に取り込まれるため、修正した場合は再起動が必要。

設定ファイル定義

addonフォルダ内にフォルダを作成しアドオン本体(JavaScriptコードファイル(xxx.js))と設定ファイル(conf.json)を格納する。
設定ファイルのファイル名はconf.json固定、アドオン本体(xxx.js)のファイル名は任意。
設定ファイルに複数のアドオン本体を登録する場合、図のconf.jsonの青く反転した部分を追加する。
設定ファイルに記述された、アドオン本体(xxx.js)の実ファイルが存在しない場合、設定ファイルに記述されたアドオンの登録をすべてスキップする。尚、別フォルダの設定ファイルの登録は行う。


addonフォルダとアドオン(メニュー)の関連

アドオン一覧と設定ファイル(conf.json)の関連

アドオン一覧の上段は登録されたアドオンの一覧、下段は選択したアドオンについての補足が表示される。

設定ファイル(conf.json)
 xismo◇204に付属する設定ファイル(conf.json)を整形し使用
+ ...
{
   "addons": [
       {
           "description": "Averaging Vertex",  ・・・①
           "enable": true,
           "jsCode": "main.js",         ・・・②
           "name": "OnePosition",        ・・・③
           "objectName": "actionJSOnePoint",   ・・・オブジェクト名
           "translations": [           ・・・翻訳
               {
                   "language": "ja",       ・・・言語:日本語
                   "words": {
                       "description": "頂点位置を平均化します", ・・・①(日本語)
                       "name": "均一座標化"           ・・・③(日本語)
                   }
               }
           ],
           "type": "action"
       }
   ],
   "author": "xismo sample", ・・・④
   "crypt": false,
   "license": "MIT",     ・・・⑤
   "name": "OnePosition",   ・・・③
   "package": false,
   "readme": "README",    ・・・⑥
   "translations": [
       {
           "language": "ja",
           "words": {
               "name": "均一座標化" ・・・③(日本語)
           }
       }
   ],
   "url": "http://mqdl.jpn.org",
   "version": 1.1
}


①description:アドオン概要
②jsCode:JavaScriptコードファイル名(xxx.js)
 実行するアドオン本体、実ファイルが存在すること。
③name:アドオン名
③name(ja):アドオン名(日本語)
 メニュー及びアドオン一覧のtrNameに表示する。(日本語モードで起動した場合。英語モードの場合は上位のnameを表示する)
④author:アドオン著者
⑤license:ライセンス(規約)
⑥readme:リードミー(説明書)

備考
MIT License
https://ja.wikipedia.org/wiki/MIT_License
このソフトウェアを誰でも無償で無制限に扱って良い。ただし、著作権表示および本許諾表示をソフトウェアのすべての複製または重要な部分に記載しなければならない。
作者または著作権者は、ソフトウェアに関してなんら責任を負わない。



補足

アドオンの仕様について

Xismoのアドオンについてのツィート
https://twitter.com/mqdl/status/1007866895289053187
xismoのアドオン言語はJavaScript。(正確にはECMAScript)
https://twitter.com/mqdl/status/1006802207763779589
ソースコードとは別に設定ファイルを定義する事にしました。
https://twitter.com/mqdl/status/1006808701704065024
アドオンのインストールはxismoの中の「addon」フォルダに入れるだけ。

お役立ちサイト

XISMO Wiki (developの項参考)
http://mqdl.jpn.org/dw/doku.php


JSONの整形と構文チェック
https://lab.syncer.jp/Tool/JSON-Viewer/


JavaScript?

JavaScriptはブラウザ固有の表記があるため、どこでも使用できるコードとしてECMAScriptがあるっぽい。
あとJavaScriptとjavaとはぜんぜん違うらしいのでjavaを調べて泣かない
参考
http://www.tohoho-web.com/js/what.htm



特に記載の無い場合、xismo◇204を使用し作成
編集履歴
+ ...
2019.02.10:新規作成


私dbotが確認したものになります。
用語の間違い、実際の機能と相違することがあります。予めご了承下さい。
記事の間違い、質問は下記メールアドレスまでお願いします。
すぱむ怖いので画像です。
内容の如何にかかわらず、メールを公開させて頂くことがございますので、ご了承下さい。
また必ずしも満足のできる回答が出来るとは限らないことをご了承下さい。
最終更新:2019年02月11日 14:32