Hatena::Groupnadesiko

そっとなでしこ RSSフィード


メインのブログに書くまでもない、なでしこ学習帳【記事一覧】 【このブログは何?】


特設!→【目次】なでしこ用Twitter 連携ライブラリ「なこったー」で遊ぶ


2010-07-14

【主要機能2】カーソル位置への定型文挿入機能、を実装

| 【主要機能2】カーソル位置への定型文挿入機能、を実装 - そっとなでしこ を含むブックマーク はてなブックマーク - 【主要機能2】カーソル位置への定型文挿入機能、を実装 - そっとなでしこ

 エディタ部品上のカーソル位置に定型文を挿入する処理を実装。

 実装する機能は、【主要機能2】の内、

  • カーソル位置に、画像表示用@wiki記法のテンプレートを挿入する
  • カーソル位置に、サムネイル画像表示用@wiki記法(blankimg)のテンプレートを挿入する

■ソースコード

#-----------------------------------------------------------------------
# GUI定義
#-----------------------------------------------------------------------
母艦のX=0
母艦のY=0
母艦のH=500
母艦のW=900

スレ引用ツールとはTエディタ
スレ引用ツールについて
 レイアウトは「全体」
 #ポップアップメニューは右クリックメニュー
 #左バーはオフ
 #ルーラーはオフ
 表示記号は「スペース{~}タブ{~}全角スペース{~}EOF{~}改行」
 折り返しは110
 オートインデントはオフ

# メニューバーの定義
「#親,部品名,テキスト,ショートカット,チェック,イベント
なし,ファイルメニュー,ファイル(&F)
-,出力メニュー,出力(&Q),Ctrl+Q,,出力処理
なし,編集メニュー,編集(&E)
-,AA記法挿入メニュー,AA記法挿入,F1,,AA記法挿入処理
-,画像記法挿入メニュー,画像記法挿入,F2,,画像記法挿入処理
-,サムネ画像記法挿入メニュー,サムネ画像記法挿入,F3,,サムネ画像記法挿入処理
-,-
-,文字装飾メニュー,文字装飾(&E),Ctrl+E,,文字装飾処理
」を、メニュー一括作成。
#-----------------------------------------------------------------------
# イベント処理
#-----------------------------------------------------------------------
スレ引用ツールのクリックした時は
 文字列選択状態別処理
スレ引用ツールのキー押した時は
 文字列選択状態別処理
#-----------------------------------------------------------------------
# 起動処理
#-----------------------------------------------------------------------
文字列選択状態別処理する。

#-----------------------------------------------------------------------
# 関数定義
#-----------------------------------------------------------------------
●文字列選択状態別処理
 もし、(スレ引用ツールの選択文字列)が「」ならば、
  画像記法挿入メニューの有効はオン。
  サムネ画像記法挿入メニューの有効はオン。
  AA記法挿入メニューの有効はオフ。
  文字装飾メニューの有効はオフ。
 違えば
  画像記法挿入メニューの有効はオフ。
  サムネ画像記法挿入メニューの有効はオフ。
  AA記法挿入メニューの有効はオン。
  文字装飾メニューの有効はオン。

●出力処理
 「エディタ上の文字列を出力変換処理をしてメモ記入する」と言う。

●AA記法挿入処理
 「選択した文字をAA記法で囲う」と言う。 

●画像記法挿入処理
 #「画像記法を挿入する」と言う。
 スレ引用ツールの選択文字列は、「#ref(【ファイル名】,【ページ名】,width=【幅】)」。

●サムネ画像記法挿入処理
 #「サムネ画像記法を挿入する」と言う。 
 スレ引用ツールの選択文字列は、「&blankimg(【ファイル名/URL】)←クリックで拡大表示」。

●文字装飾処理
 「選択した文字のサイズ・色を選択するフォームをポップアップする」と言う。

■コメント

■エディタ上のカーソル位置に文字列を挿入

 ググって、以下の記事が見つからなければ、自分には実装できなかったかも…orz

項目「選択文字列」に代入すると、カーソル位置に挿入されます。

エディタで文字列が選択状態の場合は、選択文字列との置き換えになります。

元の文字列を活かしたい場合は「選択文字列」を参照し、代入文字列に含めます。

●日本語プログラミング言語なでしこ 初心者掲示板 [One Message View / 選択文字列]

http://www.himanavi.net/cgi/nade-1st/cbbs.cgi?mode=one&number=3337&type=3331&space=15&no=0

 今回実装した機能は、エディタ上で文字列が選択状態の場合は無効になり呼び出されることは無いので、「元の文字列を活かしたい場合」を考慮する必要は無し。

■画像系の@wiki記法のパラメータ

 例えば、挿入される画像表示用@wiki記法のテンプレート。

#ref(【ファイル名】,【ページ名】,width=【幅】)

【】で囲まれている場所にはパラメータを指定する。

 このパラメータを入力するフォームを作った方が便利だろうかとも考えた。

 しかし、自作の不恰好なフォームでパラメータを入力するより、エディタ上で編集した方が作業効率が良いのでは、と考え却下した。

 ただし、今後実際に使い続けてみて、パラメータ入力フォームがあった方が作業が楽になるかも、と思う時がくれば、それが更なる機能改良の"母"になるかも。