cursorビューカーソル関連コマンドを入力する行でのキー操作に制限をかけるために現在のカーソル位置のテキスト範囲と最後の行のテキスト範囲を知る必要がある。その位置関係も調べる。現在の行内でのカーソルの桁位置。len(txt)フィールドがあると文字数が狂う。利用すれば、そのテキスト範囲内にある個別のフォーマット範囲やフィールドなどを分割して取得できるが...。移動できるが実行速度が遅い。してカーソルを最終行の最後に移動させると数分かかる。なしにすると二、三十秒。これでも普通のコンソールより非常に遅い。出力はバッファなどに入れて呼び出し回数?ごとに書き出す方がよさそう。cursor.collapseToEnd(False)大体。入れたりしない場合)。文字数を超えないようにする必要がある。メソッドでコントロールコードを挿入。ビューカーソルからなどの時には面倒なので次のようにしたりする。選択中の場合には置換される。シングルクォートも多分同じ。オートコレクトのオプションはさらに曲者...。マクロから勝手にオフにするわけには・・・?オートコレクトの設定はモジュール共通だからなぁ。オートコレクトで有効になっている項目にしたがって置換し直すとか。Extensions/Configuration/org.openoffice.Office.Writer/AutoFunction/Format/Option/org.openoffice.Office.Common/AutoCorrectクォーテーションマークは置換する必要あり。使用できるフィールドがコマンドの含まれていても特に問題ない。文字列だけを取得しようとするとフィールドに表示されている文字列が取得される。問題なのは、文字数をカーソルなどで数えるとき。フィールドは一文字だったはず...。"FIELD"キー操作制限キー操作によるプロンプトの削除やプロンプト行の破壊を防ぐ。登録することでキー操作を取得、無効化も行える。定義されている削除、ペースト、カットなどの機能的操作も検出できるため、それらも防げるはず。現在のカーソル位置も知る必要がある、上記。選択範囲を調べる必要がある。プロンプトのある最終行が選択範囲にある場合には操作を無効化するひつようあり?メニュー操作制限メニューからの操作を制限する。変な位置に挿入などを行うとプロンプトがおかしくなる。無効化してユーザーによる操作を制限する。コントローラに登録して特定のコマンドの実行を防ぐ。com.sun.star.frame.XDispatchProviderInterception。各ドキュメントフレームごとでコマンドの実行を制限できる。コンフィグレーションでの場合には全ての同一モジュールで制限されてしまう。この場合特定の条件下のみで無効化も可能。非常に面倒なインターフェース。右クリックでの操作の制限。コントローラに登録してコンテキストメニューから変な操作が行われるのを防ぐ。インターフェースのメソッド。