「ファイルタイプ別の設定」にワイルドカNo.04206
naanfushi さん 09/10/14 16:06
 
【現状】
 「ファイルタイプ別の設定」の「ファイルタイプ」とは、実質的に「拡張子別」の
設定となっています。
 秀丸はエディタですので、誕生当時はプログラマの必要性が主で、拡張子別に設定
できれば事足りたのだろうと推測されます。
 しかし、現在では、日本語の文書を秀丸で書いているユーザーも相当な割合を占め
ると思われます。こうした「文書書き専用」で秀丸を使うユーザにとっては、ファイ
ルタイプ別の設定は、ほとんど動作環境と同等で、一度設定すると殆ど変えない(あ
る意味で十分に有用さを発揮されていない残念な)設定項目と化しています。
 例えば、日本語文書書き主体ユーザーは、社内の報告書はで「30字詰めの横書き」、
○○新聞への出稿原稿は「15字詰めの2段組得表示で縦書き」などと、多数の『文書
タイプ』があるにも関わらず、すべて「TXTという拡張子別設定」に押し込まれてし
まっているわけです。

 つまり、文書書きユーザにとって必要な「文書タイプ別」の設定がデフォルトで対
応出来ていない、というのが現状で、日本語主体で秀丸を使っている少なくないユー
ザーのニーズに十分には応えられていないとも言えます。


【要望】
 そこで、「拡張子別」に「タイルタイプ設定」という現状を一歩踏み出して、「ワ
イルドカードによるファイル指定別」ができるようになれば(「正規表現」までは言
いません)、文字書き専用ユーザーにとって本質的な「ファイルタイプ別」の設定が
出来ることになります。そうなれば、こうしたユーザー(潜在的な数はかなり膨大か
も…)にとっては、劇的に秀丸の利用度が上がると思われます。

 現実的には、先の例で「.TXT」の設定を「社内*.txt」とか「新聞*.txt」などに修
正すれば実現できるので、素人考えでは、比較的簡単ではないかというような気がす
るのですが、実現はやはり相当に難しいでしょうか?

※ と投稿する前に一応、過去ログを調べてみたら、3年前に下記に殆ど同様の要望
が書き込まれておりました。

>【ネタ】ファイルタイプ別の設定を拡張 No.11355
>Buckeye さん 06/11/21 07:53

 この時は「マクロ対応」などをアドバイスされておりましたが、昨今のセキュリテ
ィ地獄の時代ですので、簡単にマクロを入れられないの環境の秀丸ユーザも少なくな
いと思われます。
 V8という輝かしいバージョンアップに際して、再度、再検討していただければ大変
ありがたいです。
 
 以上、ご検討頂ければ幸いです。

[ ]
RE:04206 「ファイルタイプ別の設定」にワNo.04227
秀丸担当 さん 09/10/15 12:33
 

> そこで、「拡張子別」に「タイルタイプ設定」という現状を一歩踏み出して、「ワ
>イルドカードによるファイル指定別」ができるようになれば(「正規表現」までは言

この手の要望は他にもあったことが何回かあるのですが、判断基準が一定ではな
いようです。
過去ログをいろいろ検索してみたところ、以下のようなものがありました。
・正規表現で判断
・拡張子なしの特定ファイル
・指定ファイルのみ
・指定フォルダ
・エンコードの種類別
・アウトライン解析の結果の有無、別

あと、要望には無いですが、個人的には読み取り専用ファイルであるかどうかで
背景色を変える、というのを使っていたりします。

判断したい基準はすごく多岐にわたり、敷居は高いかもしれないですがやはりマ
クロでやっていただくのがいいのではないかと思います。

[ ]
RE:04227 「ファイルタイプ別の設定」にワNo.04250
naanfushi さん 09/10/18 10:13
 
 これまでにもこんなに多岐な「ファイルタイプ別の設定」への要望が出ていたとは
…。
 ただ、これは逆に考えると、それだけ多くのユーザが、現行の「ファイルタイプ別
の設定」に対して、十分に満足してはいない事との現れと受け取ることも出来ます。
また、秀丸で日本語文書を書いている者にとっては、非常に不十分という意見も耳に
します。
 マクロでの対応も可能ですが、やはり、日本語文書を扱うユーザ(マクロが苦手/
不可な環境の人も含め)、多言語/多エンコード文書(自動判定では難しいケースも
当然発生)を扱うユーザにとっては、秀丸のデフォルトで実装して頂きたい機能であ
ることを以下に記します。

【要望の内容とその対応策】
 まず、これまでに寄せられた、多岐にわたる要望をまとめて当機能案一つで対応で
きるかどうか、あるいは実装が可能な範囲なのかどうかといった方向性を探るべく、
その要望内容の整理と対応策などの素案を列挙してみました。

・正規表現で判断
 →理想的な処理。ただし、実装に過大な工数がかかるようであれば「ワイルドカー
ド」も現実的な落としどころかも。
・拡張子なしの特定ファイル
 →「正規表現」または「指定ファイル」にてこの課題は吸収されて問題ナシと思わ
れる。
・指定ファイルのみ
 →ベースネームを判別するのであれば処理はそれほど難しくないと思われる。ただ
し、フルパスや指定ファイルの数が巨大になった場合の立ち上げ負荷が課題。20個な
どの現実的な制限が必要かも。あるいは負荷を了承の元で制限をユーザ側が設定する。
・指定フォルダ
 →「正規表現」やワイルドカードで対応可能。大量時には、指定ファイルと同様の
課題も。
・エンコードの種類別
 →開いてからの判別になる(?)と思われるので、スムーズなfileopenが可能か心配
される。ただし、多言語/多エンコなファイルを扱う事もごく一般的となった現在、
自動判定が困難な文書を扱う場では、かなり緊急な実装が望まれる。
・アウトライン解析の結果の有無、別
 →内容が理解出来ませんでした。

(寄せられた判別への要望まとめ)「ファイルタイプ別の設定」と関連づけて判別す
べき情報は、(1)正規表現(ワイルドカード)での「ファイル名」、(2)文字
コード、(3)その他の情報。以上、3種の情報と判断されます。
 これらの3種の情報から成るファイル属性的なものを「ファイルタイプ」と呼び、
拡張子だけの時より「設定」を適用するファイルを限定させることで、ユーザのニー
ズに合わせた複数の「設定」を関連づけることが簡単に実現されます。

【ファイルタイプで実現される操作感】
 同じTXT拡張子のテキストファイルを次々と開く状態を想定します。まず、「英字
新聞*.TXT」というファイルを開けば、自動的にTimesNewRomanが使われており、「英
文レポート*.TXT」は40字の2段組で開かれます。さらに続けて「韓国*.TXT」を開け
ば指定したハングルフォント…と言った具合に、指定した設定で『確実』に開けます。
 日本語の文書の場合でも、「A新聞フォルダ」にあるファイルはすべて「縦書き3段
組」で表示され、「住所録*.TXT」はすぐ表計算ソフトのごとく「TSVモード」で表示
される…と言った具合です。
 もちろん、既存の「設定」を引き継ぐわけですから、強調表示やアウトラインなど
の「設定」も自動で切り替わるという、なかなか、気持ちの良い状態が想像されます。


【実装案1】…「ファイルタイプ別の設定」は現状のままで、新規に「ファイルタイ
プの関連付け(仮称)」ダイアログを新設する対応案です。
・概要
 これは、新規に「ファイルタイプ別の設定」に手を加えるより、これをそのまま流
用し、別ダイアログに新しい処理を任せた方が、制作コストが少しでも省けます。同
時に、「ファイルタイプ別の設定」という多少難しさをユーザに感じさせる設定箇所
でありますので、「ここの変化がないことから、既存のユーザにも不要な不安を与え
ない」安定感もあります。
 また、「ファイルタイプの関連付け」という新しい作業も、下記のように2段階に
なることで、理解して頂けやすくなると思われます。

・[ファイルタイプの関連付け]の実作業例
 具体的には次の2段階の設定作業が行われます。2段階に分けることで、作業内容
の見通しを良くします。
 (1)まず「ファイルタイプ別の設定」で「拡張子をベースにした、必要かつ多彩
な設定」をどんどん作る。
 (2)「ファイルタイプの関連付け」では、「[ファイルタイプ別の設定]と各種の
ファイル情報とを関連づける」作業を行う。

・「ファイルタイプの関連付け」ダイアログ
 以下のダイアログを新設します。このダイアログで、「各種のファイル情報」と関
連づけるべき「ファイルタイプ別の設定」とを判別する作業を行います。(メニュー
上の位置としては[その他]→[ファイルタイプ別の指定]のすぐ下が望まれます)

 [「ファイルタイプの関連付け」ダイアログ]
  *[ファイルタイプ名](テキストボックス)
      (登録したい「ファイルタイプ名」を入力する)
      (例えば「A新聞原稿(縦書き11字詰/3段組)」)
  *[関連づける「ファイルタイプ別の設定」の指定](選択で指定)
      (上記名のファイルタイプと関連づけたい「ファイルタイプ別の設定」
を選択するリスト)
      (ファイルタイプ別の設定の「設定のリスト」と同様の一覧表示によっ
て選択)
    −−−−(以下、判別の条件)−−−−−−−−−−−−−−
  *[ファイルタイプの指定](3個のチェックボタン)
    (3種類までの複数判定が可能)
    □ファイル名でファイルタイプを指定
      (「希望するファイル名」を入力するテキストボックス)
      (正規表現が使える事が理想だが、ワイルドカードも現実的)
      (例えば「A新聞*.txt」)
      (ベースネームか、フルパスを元にしたファイル名を指定)
      (パスを指定することでフォルダ指定もここで行う)
      (例えば「C:\data\report\」)
    □エンコードの種類でタイプを指定
      ([ファイル]→[エンコードの種類]で出るメニューと同一から選択)
      (例えば「UTF-8」)
    □マクロ変数でファイルタイプを指定(ネタレベルですが…)
      (「マクロ変数でファイルタイプを判定」のテキストボックス)
      (このボックスにはマクロの変数と値を記入。例:「readonly=1」)
  *[「ファイルタイプ別の設定」で詳細設定]ボタン
     [関連づける「ファイルタイプ別の設定」の指定]で指定している設定リス
ト名を「.〜の設定」に選択した状態の「ファイルタイプ別の設定」ダイアログが表
示され、詳細を変更できる。

(*課題1 [ファイルタイプの設定]の3個のチェックボタンでは、判別条件を複数
指定できる。過度な負荷がかかるようであれば、これを3個のチェックボタンにして
判別条件を1個に限定することも)
(*課題2 「指定ファイル」への対応は、指定ファイルリストを作って対応するの
か、指定ファイルの数だけ「ファイルタイプの関連付」を作って対応するのか)

【実装案2】…現行のファイルタイプ別の設定を改修】
・「ファイルタイプ別の設定」ダイアログに「ファイルタイプの関連付け」ボタンを
新設。このボタンを押すと上記の「ファイルタイプの関連付け」ダイアログが出る。

【欠点と対応】
 「ファイルタイプの関連付け」が非常に多くなった場合、ファイルを開く時間が長
くなる可能性があります。
 ただし、現実的な「ファイルタイプ」数は、意外にそれほど多くない(数十個以
下)と楽観してします。
 また、事前に「ファイルタイプの関連づけ」が過多になると、起動スピードに影響
する旨を明示して、あくまで「自己責任」の元で運用して頂くように告知することで、
各自のハードウエア環境に適した関連付けの数が定まってくると期待します。
 さらに、そもそも「ファイルタイプの関連付け」を使わなければ、完全に既存の状
態を維持できるわけですから、決定的なマイナス機能とはならないと思われます。

 以上、多少長くなって申し訳ありませんが、「デフォルトでの実装」を改めてご検
討頂けますと幸いです。

[ ]
RE:04250 「ファイルタイプ別の設定」にワNo.04262
秀丸担当 さん 09/10/19 15:32
 

詳しいご提案ありがとうございます。
これらをやるのはいろいろ大変になりそうということもあるので、ネタというこ
とにさせていただいて、いまのところやめておこうと思います。申し訳ありませ
ん。
また、現状のファイルタイプ別ということが初心者にとっては分かりづらいとい
うこともあって、さらに複雑な設定になりそうという懸念もあります。

マクロライブラリのマクロ作者様によるマクロを利用されると多少敷居は下がる
かもしれません。

スレッドの最初の投稿にあった過去ログの参考URLがリンク切れになっていたので
改めて書いておきます。

ezaq様のマクロ
正規表現によるファイルタイプ別の設定(自動起動マクロ対応)
http://hide.maruo.co.jp/lib/macro/regconf101.html

[ ]