UnixScriptTools for mi
テキストエディタ mi で Unix スクリプト(bash、Perl、gnuplot、Octave など)の開発および実行を支援するアプリケーションおよびスクリプトのセットです。
mi の最前面のウィンドウの Unix スクリプトをコマンド一発でターミナルを起動して実行することができます。ターミナルでコマンドを入力する手間を省くことができ、スクリプトの開発効率を上げることができると思います。
さらに、対話型のプロセスをサポートします。ターミナルで対話型プロセスを起動し、そのプロセスに mi で選択しているテキストを送りつけることができます。
他に以下のような特徴があります。
- ターミナルで実行できるスクリプトでしたら、どんなもの(例えば gnuplot、octave)でも扱う事ができます。
- STDOUT への出力結果をクリップボードに入力することができます。
- Finder で選択しているファイルを引数にしてにしてスクリプトを実行できます。
また、
- Perl モード
- bash モード
- gnuplot モード
- Octave モード
- make モード
が付属します。
更新履歴
- 2.5.4 -- 2020-02-18
- App Notarization に対応。
- ターミナル.app で「新規リモート接続」ウインドウが表示されている時にエラーが起きる不具合を修正。
- 2.5.3 -- 2016-12-28
- コード署名を追加。
- 「選択範囲を送る」コマンドで、送信先のターミナルを間違えることがある不具合を修正。
- 2.5.2 -- 2016-05-26
- ターミナルが起動していない状態から、ターミナルでコマンドを実行する操作を行うと、2回目以降コマンドが実行できなくなる不具合を修正。
- 2.5.1 -- 2016-04-22
- OS X 10.10 以降でエラーが発生する不具合を修正。
- env を使った shebang (e.g. #!/usr/bin/env perl) に対応。
- OS X 10.9 以降が必要になった。
- 2.5 -- 2016-03-10
- コードのクリーアップと近代化。
- OS X 10.8 以降が必要になった。
- TerminalControl.osax が不必要になった。
- 2.4.2 -- 2014-10-01
- 初期実行コマンドのデフォルト値を削除
- unset PROMPT_COMMAND が設定されていましたが、ターミナルウインドウのプロキシアイコンを消してしまう不具合を発生させていました。
- Octave モード 「source コマンドを送る」が動作しない不具合を修正。
- 初期実行コマンドのデフォルト値を削除
- 2.4.1 -- 2013-07-12
- mi 3.0b に対応。
- スクロールされてターミナルウインドウに実行結果が表示されていない時に「最後の結果を挿入」が動作しない不具合を修正。
- mi 2.1.11 以降が必要です。
- 2.4 -- 2012-11-08
- AppleScript Studio から AppleScriptObjC に以降。
- Mac OS X 10.6 以降が必要になった。
- 2.3.4 -- 2012-11-01
- ヘルプを小さいウインドウのヘルプビューアでも見やすくした。
- その他、内部の変更
- 2.3.3 -- 2011-12-20
- gnuplot モードの「選択範囲を送る」が動作しなかった不具合を修正。
- Mac OS X 10.6 で、「ターミナル設定」がデフォルト以外の場合、エラーが発生する不具合を修正。
- 2.3.2 -- 2011-02-15
- TerminalBridge にアイコンをつけた。
- make モードを追加。
- mi 2.1.11b3 に対応
- ~/Library/Application Support/mi/ に TerminalBridge を配置できるようにした。
- Mac OS X 10.6 をサポート
- 「選択範囲を送る」で、前回送った内容が送られてしまうことがある不具合を修正。
- TerminalControl.osax を付属
- 多くの内部の変更
- 2.3.1 -- 2009-04-10
- 対話プロセス上でコマンドプロンプトが表示されなくなるプロセス(less など)が起動しているターミナルに、コマンドの送信しようとするとエラーが発生する不具合を修正。
- ターミナル.appが起動していない状態で、対話プロセスに対してコマンドを送信した時、ターミナル.app が隠れたままにならないようにした。
- Octave モード
- ツール「選択範囲の help」が動作しない不具合を修正。
- 2.3 -- 2009-03-09
- Mac OS X 10.5 に対応
- UnixScriptServer は TerminalBridge と名前を変更。
- ターミナルのカラー設定はなくなりました。代わりに、ターミナル.app の設定セットを指定できるようにした。
- モードごとに対話プロセスの設定セットを指定できるようにした。
- #process および対話プロセス名の設定を無くした。
- 対話プロセスのバックグラウンドプロセスはターミナルの設定セットで設定してください。
- あらかじめ設定しなくても、適時プロセス名を追加するダイアログが表示されます。
- ターミナルが busy の時、コマンドプロンプトによってコマンド入力が可能であるか判断するようにした。
- Mac OS X 10.5 に対応
- 2.2.3 -- 2008-11-03
- Intel Mac で ターミナルを前面に持って来れない不具合を修正。
- 正規表現エンジンを OgreKit から RegexKitLite に乗り換えた。
- 2.2.2 -- 2008-10-06
- UnixScriptServer を再起動した時に、対話プロセスのターミナルが再利用されない不具合を修正。
- Perl モード
- 「選択範囲を perldoc -f で調べる」が動作しない不具合を修正。
- 2.2.1 -- 2008-10-03
- 設定ウィンドウのヘルプボタンが動作しない不具合を修正。
- 対話プロセスのウィンドウタイトルが正しく設定されない不具合を修正。
- ツールファイルの拡張子をすべて削除した(mi のツールメニューで拡張子を隠すすべがないので)。
- Perl モード
- 「ブレークポイントを設定」が動作しない不具合を修正
- 「do を送る」が正しく動作しない不具合を修正
- 「デバッグ(ddd)」を削除
- 2.2 -- 2008-08-25
- 内部のコードのリファクタリング
- 細かい修正と改良
- Octave モードに function ファイルのヘルプを書く為の、Texinfo に関するツールを追加
- マニュアルへの記載はさぼっています。
- コマンドを実行するターミナルのタイトルを 「* UnixScript Console *」から「* Inferior Terminal *」に変更。
- 2.1 -- 2007.04.02
- Perl モードのツール
- 「選択範囲を送る」を機能強化
- 選択されているテキストが無い場合、キャレットがある周辺のブロックを自動的に検出して、まとめてターミナルに送信するようにした。
- これによって、注意深くブロック単位で選択する必要がなくなりました。
- 「選択範囲を perldoc で調べる」、「選択範囲を perldoc -f で調べる」を追加
- POD 関連のツールを追加
- 「選択範囲を送る」を機能強化
- Octave モードのツール「選択範囲を送る」を機能強化
- 選択されているテキストが無い場合、キャレットがある行の行末が「\」もしくは「...」で終わっている場合、自動的に次の行もまとめて送信するようにした。
- Perl モードのツール
- 2.0.6 -- 2006.10.24
- ヘッダーコマンド #escapeChars を追加
- ヘッダーコマンド #ineractive を追加
- Perl モードで対話環境のサポートを追加
- Perl モード用のツールを追加
- 選択範囲を print Dumper
- do を送る
- プレークポイントを設定
- sub にプレークポイントを設定
- gnuplot モード用のツールを追加
- load コマンドを送る
- reset を送る
- Octave モード用のツールを追加
- source コマンドを送る
- 2.0.5 -- 2006.08.27
- ターミナルのプロセスがすべて終了しているが、ターミナルウィンドウが残っている場合にコマンドを送信しようとしてエラーが起きる不具合に対処
- mi の編集中のウィンドウで行送りされている場合に、キャレットがある行を正しく取得できないことがある mi の不具合を回避
- ターミナルカラー設定を保存できなかった不具合を修正
- Octave モードのツール「ブレークポイントを送信」を追加
- 2.0.4 -- 2006.07.13
- #useOwnTerm が設定されているファイルから対話型プロセスにコマンドを送信した後、ファイルを削除するとエラーが起きる不具合を修正。
- 一度、ターミナルを閉じてしまうと「ターミナルを表示」ツールで新たなターミナルを開くことができない不具合を修正
- 対話型プロセスは exec を使って起動することにした。
- プロセス名を設定する手間が半減します。
- 2.0.3 -- 2006.05.31
- 「Finder の選択物に対して実行」ツールを実行すると、対話プロセスのターミナルが開かれてしまう不具合を修正
- 間違ったターミナルにコマンドを送ることがある不具合を修正
- 寄付を催促するダイアログを表示するようにした。
- Octave モードのツール「選択範囲を edit」を追加
- Octave モードのツール「選択範囲を help」を追加
- 2.0.2 -- 2006.04.18
- 保存されていないファイルに対しても、「選択範囲を送信」を実行できるようにした。
- 設定されているプロセス以外のプロセスがターミナルで起動していることが原因で、「選択範囲を送信」が実行できなくても、「ターミナルを表示」を実行できるようにした。
- コメントアウト/アンコメントアウト ツールを AppleScript で実装したものに変更
- mi 2.1.7 で検索文字列のハイライト機能の実装により、行頭の「#」がハイライトされてしまい、見苦しいため。
- コマンドとしてフルパスが設定されていると、対話型プロセスのターミナルタイトルがおかしくなる不具合を修正
- #output コマンドが機能しなかったかもしれない不具合を修正
- Octave モードのツール「function を送る」を追加
- 2.0.1 -- 2006.03.23
- 保存されていないファイルに対してコマンドを実行すると、それ以降、コマンドが実行できなくなる不具合を修正
- 「UnixScriptToolsLib はどこにありますか?」というメッセージが表示されることがある不具合を修正。
- 2.0 -- 2006.02.18
- 対話型プロセスをサポート
- gnuplot モードと Octave モードを追加
- 1.2.3 -- 2006.02.01
- Universal Binary 化
- 1.2.2 -- 2005.11.01
- MacOS X 10.4 との互換性を改善したつもり。
- 未だに MacOS X 10.3.9 を使用していますので、動作テストをした訳ではありません。
- MacOS X 10.4 との互換性を改善したつもり。
- 1.2.1 -- 2005.09.16
- ターミナルのカラー設定を保存できるようにした。
- 内部コードの整理
- 1.2 -- 2005.08.24
- 一部の機能を、Cocoaで再実装
- 設定ウィンドウのウィンドウシェード機能を削除。リサイズを可能にした。
- UnixScriptServer の起動時間の設定を無くし、mi の終了とともに UnixScriptServer を終了するようにした。
- 1.1 -- 2005.04.27
- 設定ウィンドウを再設計。設定の変更がすぐさま反映されるようにした。
- ターミナルを activate する時に、ウィンドウを一枚だけ最前面に持ってくるようにした。
- 1.0.2 -- 2005.02.18
- シェルの設定が正しく動作しなかった不具合を修正(「ログインシェルを使う」と「次のコマンドを使う」の動作が逆になっていた。)
- 1.0.1 -- 2005.02.11
- スプラッシュスクリーンを付け加えました。
- 複数の nib ファイルで構成するようにした。
- その他、細かい改良
- 1.0 -- 2005.01.17
- 初公開