runexとUTF-8No.08101
Kaz さん 13/11/08 17:30
 
runexコマンドでエンコードとしてANSIとUnicodeがサポートされていますが、UTF-8
のサポートもしていただけないでしょうか?

最近はオープンソース系のツールが幅を利かせて来ていますが、その多くはUTF-8を
標準としており、S-JISをサポートしていないものもあります。

runコマンドの説明のところに「ファイルのエンコードのまま入出力するマクロ」が
載っていますが、当方の環境だと制限があるためにこの回避策を採用するのが難しい
状態です。

どうかUTF-8のサポートを検討していただけないでしょうか?

[ ]
RE:08101 runexとUTF-8No.08102
秀丸担当 さん 13/11/11 09:59
 

runexなどでは確かにUTF-8はサポートしていないですが、秀丸エディタの現在の
編集内容に対して直接入出力する場合のことで、ファイルに対しては特に制限は
無いです。
回避用のマクロもファイルに対して行っているもので、一時ファイルのパスを求
めたりして少々ごちゃごちゃしていますが、わかりやすく書くと以下の様なこと
をしているだけになります。

run "xxx.exe >output.txt";
insertfile "output.txt",utf8;
deletefile "output.txt";

このような感じで、ファイル名を指定して行う方法ではどうでしょうか。

[ ]
RE:08102 runexとUTF-8No.08103
Kaz さん 13/11/14 03:35
 
>このような感じで、ファイル名を指定して行う方法ではどうでしょうか。

最初の投稿でも書きました通り、当方でもその方法で回避しようと思ったのですが、
少々問題があって断念しました。

まず一つ目は、閲覧専用状態になる場合。つまり、一時ファイルを作成できない場合。

もう一つ目は、実行中の状態が見られない。数十分以上かかるコマンドを実行した時
は実行中なのかどうか分からずに不安になるため。

UTF-8はWindowsのコマンドラインでもサポートされているみたいですので、何卒サ
ポートを検討してくださいませ。

[ ]
RE:08103 runexとUTF-8No.08104
秀丸担当 さん 13/11/14 11:14
 

一時ファイルの作成先がもし作成できない場所になりそうな場合は、環境変数
TMPの示す場所に作ると、まず作成できると思います。
参考までに、環境変数はgetenvで取得できます。
例:message getenv("TMP");

実行が長い場合に途中経過をリアルタイムに表示するのは、ファイルへの出力で
はできないですね。

直接のエンコード指定の対応は以前にやろうとしたことがありました。
ファイルを開く/保存の処理とは全く別に各種の処理を作る必要があるのですが、
現状で回避方法もあり使われる機会が少ないと思われ、内部的な処理の都合もあ
って保留にしていました。
すぐできるかわかりませんが、改めて検討してみます。

[ ]
RE:08104 runexとUTF-8No.08106
Kaz さん 13/11/14 17:27
 
>すぐできるかわかりませんが、改めて検討してみます。
よろしくお願いします。

[ ]
RE:08106 runexとUTF-8No.08109
秀丸担当 さん 13/11/21 16:50
 

手元のバージョンではUTF-8も直接選択できる対応しています。
基本的な処理に関わる修正も幾つかあるので、V8.33の次の区切りとなるバージ
ョンで反映を考え中です。

[ ]
RE:08109 runexとUTF-8No.08112
Kaz さん 13/11/21 21:00
 
分かりました。では次のバージョンでの対応をお待ちしています。

[ ]