オブジェクトメンバ補間No.29755
紋白熊 さん 11/04/20 01:17
 
オブジェクトやクラスの定義からドットシンタックスでメンバの入力補完をしたいの
ですが、どうすれば良いのでしょうか。ご指南お願いします。

[ ]
RE:29755 オブジェクトメンバ補間No.29756
秀丸担当 さん 11/04/20 10:07
 

>オブジェクトやクラスの定義からドットシンタックスでメンバの入力補完をしたいの
>ですが、どうすれば良いのでしょうか。ご指南お願いします。

単語補完の設定が、[その他]→[ファイルタイプ別の設定]→[その他]→[単語補
完]のところにあります。
ドットシンタックスの場合、「単語補完の検索対象」の「詳細(X)...」の中の
「単語の種類」を「ドットシンタックス」にすると、「.」も単語の一部として
認識するようになります。

補完の検索対象は、あらかじめドットで繋がっている必要があります。
例えば以下のような本文テキスト(または辞書)が書かれているとします。

  class1.member1
  class1.member2
  class2.memberA
  class2.memberB

そして、「class2.」と入力した段階で単語補完すると、「memberA」と
「memberB」が候補にあがります。

オブジェクトやクラスの定義があらかじめ繋がっていない定義を解析してそれを
補完するということは現状ではできないです。
例えば言語にもよると思いますが、以下のような感じの定義だとするとできない
です。

  class1 {
    member1
    member2
  }

[ ]
RE:29756 オブジェクトメンバ補間No.29757
紋白熊 さん 11/04/20 11:29
 
型名と変数名は普通違いますが、単語の型による補間は出来るのでしょうか。
あと、プロジェクトと言いますか、複数のファイルまたは辞書ファイルを一つのグ
ループとして、その範囲内で入力補完する事は出来るのでしょうか。

[ ]
RE:29757 オブジェクトメンバ補間No.29758
秀丸担当 さん 11/04/20 11:45
 

>型名と変数名は普通違いますが、単語の型による補間は出来るのでしょうか。

具体的にどういう操作方法かわからないですが、例えば int と入力したら int
型で定義されている変数が候補に現れ、そこから入力できるといったようなこと
だとしたら、そういうことはできないです。

辞書を利用する場合は、行単位の補完はできます。
辞書ファイルに
int a;
int b;
int c;
と書いておき、設定で辞書ファイルの種類を「行単位」にしておいた場合、
「int」と入力したら候補から選んで「int a;」を入力することはできます。
「int」を「a」に置き換えることはできないです。

>あと、プロジェクトと言いますか、複数のファイルまたは辞書ファイルを一つのグ
>ループとして、その範囲内で入力補完する事は出来るのでしょうか。

設定で、「追加の検索対象」で「直前の秀丸エディタ」をONにすると、裏にある
1つの開いているファイルも対象にできますが、3つ以上はできないです。

辞書ファイルの指定はワイルドカードも指定できます。
例えば辞書ファイルに「c:\folder\*.txt」として、複数のファイルを対象にで
きます。
そうすると数に関しては幾つでもできます。
ただ、ファイルが多いと遅くなってしまうかもしれないです。
複数のサブフォルダにまたがったファイルはできないです。


[ ]
RE:29758 オブジェクトメンバ補間No.29761
紋白熊 さん 11/04/20 13:37
 
分かりました。
ありがとうございました。

[ ]