tagsファイルが作成できないNo.31926
Tetra さん 13/01/19 17:20
 
【環境】
 OS:Windows7 SP1 32bit
 秀丸ver 8.21

メニュー→その他→tagsファイルの作成からtagsファイルの作成ダイアログを表示し、
それぞれの項目を入力後にOKを押しtagsファイルの作成を行ったのですが、毎回0kb
のファイルが作成されてしまいます。

フォルダ構成を変更してみたり、適応ルールを変更してみたり色々と試しましたが、
解決に至らなかったため質問をさせて頂きました。

※"C:\a"内に"a.cpp"ファイルを作成し、強調表示となる"bool a::a(void)"だけを記
述しファイルの作成を行っても同様の結果でした。

[ ]
RE:31926 tagsファイルが作成できないNo.31927
秀丸担当 さん 13/01/21 09:43
 

同じ条件のファイルを作ってみて、こちらで確認してみたところではうまくいき、
こちらで試した方法と何か違う点があると原因がわかるのではないかと思います。

以下のようにして試しました。
・c:\a\a.cppを開く
・1行目が行の強調表示されていることを確認
・[その他]→[tagsファイルの作成]を選ぶ
・対象ファイルは「*.cpp」
・ルールは「(自動)」
・出力ファイル名は「tags」
・「サブフォルダも検索」と「ファイル名をフルパスで出力」はOFF

このようにしてOKしたところ、tagsファイルには

a.cpp(1) : bool a::a(void)

という一行が出力されました。

対象ファイルがもし「*.txt」など、cppがマッチしない場合は空のファイルにな
ってしまいます。


あと、ルールが「(C言語の関数一覧)」の場合は、このサンプルではうまく解釈
されないです。
a.cppの内容が

bool a::a(void){
}

といった感じで関数の内容として{〜}が書かれている場合は「(C言語の関数一
覧)」で出力できました。

[ ]
RE:31927 tagsファイルが作成できないNo.31928
Tetra さん 13/01/22 13:48
 
>以下のようにして試しました。
>・c:\a\a.cppを開く
>・1行目が行の強調表示されていることを確認
>・[その他]→[tagsファイルの作成]を選ぶ
>・対象ファイルは「*.cpp」
>・ルールは「(自動)」
>・出力ファイル名は「tags」
>・「サブフォルダも検索」と「ファイル名をフルパスで出力」はOFF
>
>このようにしてOKしたところ、tagsファイルには
>
>a.cpp(1) : bool a::a(void)
>
>という一行が出力されました。

同条件で作成を行ったところ、正常に作成されました。
私の試した条件との違いを調べたところ以下の違いがありました。

・作成が失敗する条件
 対象ファイルの記述を「*.cpp, *.h」とした場合

・作成が成功する条件
 対象ファイルの記述を「*.h, *.cpp」とした場合
 対象ファイルの記述を「*.cpp」とした場合

複数の拡張子を並べて記述したのが原因であったと考えられます。
ご回答ありがとうございました。

[ ]
RE:31928 tagsファイルが作成できないNo.31929
秀丸担当 さん 13/01/22 15:11
 

> 対象ファイルの記述を「*.cpp, *.h」とした場合

そうでしたか。
複数のファイル名の記述は、「;」または「 」(半角空白)で区切れるようにな
っています。
この場合は「*.cpp,」と「*.h」として解釈されてしまっていると思います。
「*.cpp;*.h」または「*.cpp *.h」と書くと両方の拡張子についてできると思い
ます。

[ ]
RE:31929 tagsファイルが作成できないNo.31930
Tetra さん 13/01/22 16:00
 
区切りの入力の形式が間違っていたのですね。
ご教示頂いた方法で解決に至りました。ありがとうございます。

[ ]