ATOKforSolaris ユーザーガイ ド - OracleATOK パレットおよびATOK メニューの使用方法とATOK を使った基本的な入力方法につ いて説明ます。第2章
ATOK Spark のご紹介とJavaによるプラグイン開発について
-
Upload
justsystems-corporation -
Category
Engineering
-
view
721 -
download
0
Transcript of ATOK Spark のご紹介とJavaによるプラグイン開発について
3©2016 JustSystems Corporation
ATOK とは
日本語入力システム ATOK 弊社で開発・販売している日本語入力システム。 Windows / Mac / Android / iOS で動作します。
単純な「かな漢字変換」だけでなく、『コンピュータを用いた日本語での文章作成』という入力工程全体の効率化を目指しています。
4©2016 JustSystems Corporation
エンジニアのニーズの一部が取り残されていた
public class Main { public static void main(String[] arguments) { // 状態に応じて内部で処理を分岐する、仕様 functon( " 通信がタイムアウトしました " );}
「 ATOK は、 ソースのコメントや 文字列リソースの入力には 役立ってます、が…」
(日本語入力 OFF で)「プログラムを書いているときも入力を効率化してほしい」
ATOK で効率化できない場所としてプログラミング中があげられます。
しかし、プログラムコードは『日本語文章』でないので ATOK の適用範囲外とされていた。
→ このニーズを解決するため、 日本語入力システムではない新しいアプリを開発。
5©2016 JustSystems Corporation
とは
動作環境 Windows / Mac ※ 日本語入力システム ATOK がなくても動作します。
コンセプト ① エンジニアの文字入力を効率化 ② エンジニア自身の手でカスタマイズ可能
定型フレーズ入力システム ATOK Spark 弊社で開発し、 2016 年 8 月に公開を開始した、 『日本語入力が OFF のとき』でも動作する入力支援ツールです。 プログラムを作成しているときでも使えるように作られています。
6©2016 JustSystems Corporation
「文字入力の効率化」を実現する機能
【 1 】 定型フレーズ入力 あらかじめ指定したフレーズに、短い打鍵で置き換える。
【 2 】 閲覧機能 どのアプリ上でも、素早く情報を確認できます。
[ 次期アップデート提供予定 ] 画像入力 IME OFF の状態でも、かな漢字変換
デモします
7©2016 JustSystems Corporation
自分に必要な定型フレーズを使うために
「カスタマイズ」を行う方法 (2種類)
定義ファイル簡単に定型フレーズを
定義することができるXML (XSLT も利用可 )
プラグインプログラム言語で
任意の処理を動かせるプロセス間通信
ATOK Spark モジュール┗ 定義ファイルの実行機能
ATOK Spark モジュール
プラグイン
静的な結果を得るときに最適
外部プロセス
動的に結果が変わる場合に最適
読込通信
8©2016 JustSystems Corporation
ATOK Spark のプラグイン開発について
プロセス間通信のプロトコルテキストベースのプロトコルで、標準入出力で通信する。
HELLO ATOK Spark/0.0 CHECK yotei:
対応言語 Java 、 C++ 、 C# 、 Ruby 、 Python など、なんでも OK
【推奨】 「 OS 依存しないこと」 & 「実行速度が高速であること」
→ Java はかなり良い選択肢
9©2016 JustSystems Corporation
Java による ATOK Spark プラグインの開発例
① プラグインの作成 プロトコルを処理するプログラムを実装し、コンパイル javac -encoding utf8 SampleJava.java② プラグインの組み込み ATOK Spark の [plugin/plugin.lst] に次の行を追加 java -classpath plugin\bin SampleJava
通信プロトコルのイメージ ATOK Spark CHECK yotei:
プラグイン REPLACE 1 GETTEXT 1 TEXT 今日は 19:30 から勉強会です
CHECK~ REPLACE はOS のキーボードイベントを止めるためなるはやで返却することを推奨
10©2016 JustSystems Corporation
ATOK Spark プラグインの実装例( Java )
プラグインソース
ATOK Spark に対してプラグインのプロトコル通知
ATOK Spark からの処理の要求を標準入力で受け付ける。
要求された処理を実行し標準出力に結果を返す
このソースファイルは、リリースバイナリに同梱
11©2016 JustSystems Corporation
プラグインで広がる世界
考えられる実装例
WebAPI と接続して、最新のデータを取得する。 プロジェクトチーム内の Issue やチケットを確認、概要を貼り付ける メール入力中に、 Google Analytics から取得したアクセス数を入れる
動的に変化する情報を手軽に参照する コーディング中に、チーム内のコーディングルールの確認する
WebAPI で、何か別の処理を行う ソースエディタ上から Jenkins を実行する暑い( atui: )と入れたら、エアコンのスイッチを入れる遠隔操作でコーヒーを入れる ( RFC 2324; Hyper Text Coffee Pot Control Protocol)
12©2016 JustSystems Corporation
ATOK Spark は、 Github で開発中。Issue / プルリク 受け付けています
ATOK Spark のプラグイン便利なプラグイン面白いことをするプラグイン
フレームワーク/ SDKATOK Spark のプロトコルをラップした、プラグインのフレームワーク
開発に便利な定義ファイルJava 開発で「あるある」を解決するスニペット
ご要望「こんな機能があれば、こんなことができるのに」
一緒に育ててくれる人大歓迎