STEa Help STEaは SDIY(Software D.I.Y.) Text Editor by AvalonEdit の略です。 ステアと読んでください。 Tabインデントによるテキストの折りたたみが可能なテキストエディタがほしいと思い 自分で作りました。メモを書くことが主目的です。 STEaは多くの無償で公開されているリソースに依存しています。 これらのリソースを公開している方々に深く感謝いたします。 使用しているリソースの詳細はSTEa.About.txtを参照してください。 STEa本体のメニューやメッセージは英語のみです。 (STEArgumentGeneratorの起動パラメーター説明のみ日本語) 1.ライセンス A.免責事項 本ソフトウェアは「現状のままで」で提供され、明示的/暗黙的に拘らずあらゆる保証はありません。 作成者は、本ソフトウェアに起因または関連する事項、本ソフトウェアの使用、またはその扱いによって生じる一切の請求、損害、その他の義務について責任を負いません。 B.配布制限 一次配布サイトは http://sdiy.rdy.jp/ です。 作成者(S.D.I.Y.)が許諾したサイトを除き、インターネット上での再配布を禁止します。 再配布する場合、一次配布サイトに掲載しているファイルの名称、内容を変更することを禁止します。 許諾サイトは 一次配布サイトで公開します。 また、自動アップデートツール等の対象とすることも禁止します。 但し、イントラネットや家庭内LANにおける共有や自動アップデートツールの提供は制限しません。 この条項の目的はマルウェア、アドウェアなどが添付されたり、悪意ある改変がなされた配布物が流通することを防止することです。 C.無償使用 本ソフトウェアは本来の目的(テキストの編集、印刷)に使う限りにおいて、個人・商用目的を問わず無償で使用できます。 本ソフトウェア自体を販売することはできません。 無償で取得、使用できることを説明したうえで有償サポートサービスの対象とすることは妨げません。 D.リバースエンジニアリング等の禁止 本ソフトウェアに対しリバースエンジニアリング等の解析行為を行うことを禁止します。 2.インストール、アンインストール .Net Framework 4.7.2.2 以上を必要とします。(ビルド時の指定。但し動作確認は4.8のみ行っています。) zipファイルを適当なディレクトリに解凍してください。レジストリは使用しません。 プログラムのアンインストールはディレクトリごと削除すれば完了です。 デフォルトでは環境変数TEMPで指定されたディレクトリにファイル履歴などを保存します。(起動パラメーターで変更可) STEa*.History ファイルを削除してください。 3.特徴 A.Tabインデントによるテキストの折りたたみが可能 "{", "}" による折りたたみ、XMLのタグによる折りたたみもあります。 B.ウィンドウ幅でテキストを折り返した場合、折り返し行が先頭行のインデントを引き継ぐ(AvalonEditの機能) C.印刷でも上記が可能(こちらはSTEaオリジナル) D.BookMark ・メモを付けることが可能です。BookMark箇所をMouseOverするとPopupでメモの表示、編集が可能です。 ・縦スクロール可能な状態ではスクロールバー上にBookMarkの位置が表示されます。 ToolTipで内容が確認できます。クリックすると当該箇所へジャンプします。 ・一覧表示のコントロール有、当該箇所へのジャンプ、削除、メモの編集、Save,Loadができます。 E.変更表示 ・テキストを変更すると当該行のエディタ領域の左側にマーカーが付きます。(追加:青、削除:赤、変更:紫) [変更:紫]の場合、色のついた箇所にMouseOverすると[差分/変更前テキスト]の確認ができます。 [削除:赤]の場合、色のついた箇所にMouseOverすると[削除されたテキスト]の確認ができます。 ・縦スクロール可能な状態ではスクロールバー上にも色が付き、クリックすると当該箇所へジャンプします。 ※新規ドキュメントは保存するか、[Tool]メニューの[Reset Change Marker Base]を実行すると変更表示が有効になります。 F.ドキュメントのスナップショット ・スナップショット作成を指示した時点のドキュメントの内容のコピーを内部的に保持します。 (AvalonEditの機能を使ってます。ソースの中を確認していませんがCopy on Write的なことをやっていると思います。) 作成時に元ファイルのFullPathにID番号、タイムスタンプが追加情報で付きます。メモを付けることも可能です。 ・作成したスナップショットは下記の2つの用途あがあります。 [E.変更表示]の変更前状態として使う。 通常のドキュメントとして開く G.シンタックス・ハイライト 以下のプログラミング言語等に対してシンタックス・ハイライトが可能です。(AvalonEditの機能) ASP/XHTML, Boo, Coco, C++, C#, CSS, HTML, Java, JavaScript, MarkDown, Patch, PowerShell, Python, TSQL, VB, XML 3.使用方法 A.設定ファイル、起動パラメータ、モードと多重起動制御 a.設定ファイル デフォルトの設定ファイルは存在しません。 "-cfg"パラメータで設定ファイルを指定可能です。 例: STEa.exe -cfg=%USERPROFILE%\STEa\STEa.cfg 設定ファイルは1行につき1つ起動パラメーター、もしくはファイル名を記載したものです。 "-cfg","-key","-mi"は設定ファイルに記載できません。 b.起動パラメーター "STEArgumentGenerator.exe"で一覧を確認できます。 テキストボックスへの入力、コンボボックスの選択が画面上部の"Parameters"欄に反映されます。 (初期表示の状態がパラメータをしたいしなかった場合のSTEaの動作を示しています。) コピーしてショートカット、設定ファイルを作成する際に利用してください。 "--"以降のパラメーターはすべてファイル名として扱います。 "-"で始まるファイル名を指定したい場合は"--"の後に記載してください。 c.モードと多重起動制御 STEaは3つのモードを持っています。 SDIモード:"-SDI"を指定して起動 1インスタンス対して1つのドキュメントしか開けません。 多重起動制御はありません。このためファイル履歴等を残しません。(ファイルの整合性を保てないので) ブックマークも保存されないので注意が必要です。 主にメールクライアントやFTPクライアントの外部エディタとして使用することを想定しています。 (これらのソフトは外部エディタの終了を監視して場合があり、編集の終了を通知するためにエディタを終了させる必要がある。) 多重起動制御用のパラメータ-Key,-miはこのモードでは意味がありません。 MDIモード:"-MDI"を指定して起動 複数のドキュメントを独立した複数のWindowで開きます。 多重起動制御を行います。-Keyを指定しない場合、1つのインスタンスのみ起動可能です。 -Keyを指定した場合、-Key=xxxx で指定した値が異なれば複数のインスタンスを起動可能です。 -Key=xxxxの場合、履歴ファイルの名称はSTEa.XXXX.hisotryになります。(Keyは内部で大文字に変換します) 履歴ファイルには終了時に"ファイル履歴","検索置換履歴","BookMark"の情報を保存します。 TABモード:"-SDI"、"-MDI"を指定しない、または"-TAB"を指定して起動 複数のドキュメントを1つのWindow内のTABに表示します。 多重制御、履歴ファイルはMDIと同様です。 また-Memoを付けて起動するとXTMemeライクなメモ入力ができるようになります。 http://www.towofu.net/soft/xtmemo.php (このソフトにも大変お世話になりました。) XTMemoはタブインデントされたテキスト形式でメモを保存します、ファイルも互換性があります。 但し、STEaのメモモードにあるチェックボックスの状態は、XTMemoではタイトルの先頭に-:,+:で表示されます。 XTMemoのファイルを読み込んだ場合はすべてチェックオフになります。 B.ショートカットキー メニュー、コンテキストメニューの右側の記載を見てください。 かつて存在したPeggyというエディタやExcelのショートカットキーがもとになっている場合が多いです。 カスタマイズの方法はありません。AutoKey_Lなどを試してみてください。 4.デフォルトの表示フォント パラメータをしてせずに起動した場合、"MS Gothic"の12ptを使用します。 S.D.I.Yのサイト配布している "38LS UD Gothic"、"5c-Yen Gothic Mono 932"または"5c-Yen Gothic Mono JP"をインストールしている 場合はこれらを使用します。 5.既知の問題点、制限事項等 A.ISO-2022-jpのByte数 StatusBarのLenBは選択した文字列のバイト数を表示します。 Encodingが"ISO-2022-jp"の場合、常に制御コード分をカウントしてしまいます。 .NetのEncoding.GetByteCountの仕様と思われます。 参考(上記に関する説明は存在しません) https://docs.microsoft.com/ja-jp/dotnet/api/system.text.encoding.getbytecount?view=netframework-4.7.2 B.BookMarkの存在する範囲を削除した後、UndoしてもBookMarkは復活しない C.BookMarkがあるファイルを変更し、保存せずに閉じるとBookMarkの位置がずれる D.ChangeMarkerが有効な状態かつ行数が多い場合、全行一括置換を行うとアプリケーションが反応しなくなる。 このような場合はChangeMarkerを無効にしてください。