秀丸マクロの複数行コメントについてNo.10878
草餅 さん 06/07/27 09:07
 
こんにちは。

「秀丸マクロ」のファイルで、
「ファイルタイプ別の設定−複数行コメント」でユーザー定義すると、
デフォルトの「//〜」部分の文字色がコメント色にならなくなります。
あらためて、強調表示で「//〜」を正規表現で再定義するのも厄介なので、
何かスマートな解決法をご存知ないでしょうか。
個人的には、「秀丸マクロ」にデフォルトで複数行コメント文(/*〜*/など)の導入が
わかりやすいと思っています。


[ ]
RE:10878 秀丸マクロの複数行コメントにつNo.10884
秀丸担当 さん 06/07/27 11:04
 

>「秀丸マクロ」のファイルで、
>「ファイルタイプ別の設定−複数行コメント」でユーザー定義すると、
>デフォルトの「//〜」部分の文字色がコメント色にならなくなります。
>あらためて、強調表示で「//〜」を正規表現で再定義するのも厄介なので、
>何かスマートな解決法をご存知ないでしょうか。
>個人的には、「秀丸マクロ」にデフォルトで複数行コメント文(/*〜*/など)の導
>入が
>わかりやすいと思っています。

ユーザー定義にした場合は、言語指定によるコメントなどの強調との併用はでき
ないです。

強調表示で正規表現で指定するより、ユーザー定義に「//〜」と同等のものを定
義すればそれなりにスマートだと思います。
ユーザー定義で開始文字列「//」、高度な設定「単一行(行末まで)」としておく
と、デフォルトのコメント色と同等にできると思います。

[ ]
RE:10884 秀丸マクロの複数行コメントにつNo.10886
kaisan さん 06/07/27 13:43
 
横から失礼します。

秀丸マクロに関してはプロパティで/*〜*/の可否を設定する方が
スマートだと思います。

一般的には、複数行コメント定義でシングルラインコメントも
定義できた方がよいと思います。
> ユーザー定義で開始文字列「//」、高度な設定「単一行(行末まで)」としておく
> と、デフォルトのコメント色と同等にできると思います。
・・・こんなところに;;

「高度な設定」のUIは(存在が)分かりづらいです。

色をテキストボックスの色にして、クリックしたら「変更」ボタンと同じ
メニューを出しては如何でしょうか。

後、複数行〜単一の文字列は、上のUIを変更するので、もっと上に有った方が
よいと思います。



また、イレギュラーなケースなのですが、画面が崩れる?ことが有ります。

再現手順
1.ファイル別設定を開く(複数行コメントが言語指定になっているもの)

2.複数行コメントを「言語指定」から「ユーザ指定」に変更

3.追加で入力しないでOK
 開始文字のみ入力でもOK(複数行モード)

4.設定対象のツリーから他の対象を選択

5.「OK」または「保存をしないで更新」を押す

6.エラーメッセージのOKボタンを押す

4.設定対象のツリーから複数行コメントを選択

ここで画面が崩れます。
(本来非表示のものが表示されている)


3でエラー表示した方がよいと思うのですが。


環境
 秀丸 6.00β36
 WinXP SP2

[ ]
RE:10884 秀丸マクロの複数行コメントにつNo.10887
草餅 さん 06/07/27 13:45
 
すいません。説明不足でした(^^;
前投稿は、

 ・ 一行コメント「//〜」
 ・ 複数行コメント「/*〜*/」

という環境を実現したい、とういう趣旨です。
そこで、複数行コメントで「/*〜*/」をユーザー定義すると
一行コメント「//〜」が無効になるのを何とかしたい、
というのがお伺いしたい内容です。


[ ]
RE:10886 秀丸マクロの複数行コメントにつNo.10889
秀丸担当 さん 06/07/27 16:04
 

>秀丸マクロに関してはプロパティで/*〜*/の可否を設定する方が
>スマートだと思います。

それがあるとスマートだと思います。
それをするとC言語と同じになるので、あまりオプションは増やしたくないとこ
ろです。

>「高度な設定」のUIは(存在が)分かりづらいです。
>
>色をテキストボックスの色にして、クリックしたら「変更」ボタンと同じ
>メニューを出しては如何でしょうか。
>
>後、複数行〜単一の文字列は、上のUIを変更するので、もっと上に有った方が
>よいと思います。

確かに分かりづらいです。
極力シンプルにするために分かりづらいところに押し込みました。
そろそろ正式版にしたいと思っているところではありますが、やっぱりもう少し
改善したほうがよさそうです。


>また、イレギュラーなケースなのですが、画面が崩れる?ことが有ります。

手順通りにして確認することができました。
なぜかクラシックなビジュアルスタイルだと再現しました。
乱れないように改善してみます。

[ ]
RE:10887 秀丸マクロの複数行コメントにつNo.10890
秀丸担当 さん 06/07/27 16:11
 

> ・ 一行コメント「//〜」
> ・ 複数行コメント「/*〜*/」
>
>という環境を実現したい、とういう趣旨です。

そういう意味で、ユーザー定義に一行コメントを定義すればできますということ
です。
文字定数も同じにするのであれば、以下のようにすればできます。

開始文字列「//」
終了文字列「」
表示方法「コメント」
高度な設定「単一行(行末まで)」

開始文字列「/*」
終了文字列「*/」
表示方法「コメント」

開始文字列「"」
終了文字列「"」
エスケープ文字「\」
表示方法「文字定数」

開始文字列「'」
終了文字列「'」
エスケープ文字「\」
表示方法「文字定数」

[ ]
RE:10884 秀丸マクロの複数行コメントにつNo.10892
白雲斎 さん 06/07/27 16:18
 
こんにちは 秀丸担当 さん、白雲斎です。
草餅さんの話とは直接関係がないですが、横から失礼します。

以下のマクロを実行します。

-- マクロここから ------------
/*
message "11";
*/
// message "22";
message "33";
-- マクロここまで ------------

複数行コメントに“/*  */”を設定してもしなくても、「message "33";」文の
みが実行されます。

コメント・カラーが変化するのは理解できますが、マクロ言語の構文定義が変化
するのは不思議です。

マクロ・ヘルプには『コメントを入れるにはC++言語と同様に//が使えます』と
だけ書かれていますが、“/*  */”もコメントと解釈されるようになったのでし
ょうか?

[ ]
RE:10892 秀丸マクロの複数行コメントにつNo.10893
白雲斎 さん 06/07/27 16:27
 
白雲斎です。

先の発言の、

>コメント・カラーが変化するのは理解できますが、マクロ言語の構文定義が変化す
>るのは不思議です。

部分は、必要ない一文でした、無視してください。

[ ]
RE:10892 秀丸マクロの複数行コメントにつNo.10894
秀丸担当 さん 06/07/27 16:31
 

>マクロ・ヘルプには『コメントを入れるにはC++言語と同様に//が使えます』と
>だけ書かれていますが、“/*  */”もコメントと解釈されるようになったのでし
>ょうか?

V6.00β13から、/*〜*/もコメントとして書けるようになりました。

秀丸マクロ用のカラー表示ではコメント色にしていません。
汎用的なマクロ(V6.00未満でも動くマクロや秀丸メール用のマクロ)を書く場
合は、コメント色になってしまうと誤解が生まれてしまうためです。

カラー表示したい場合は、C言語/Javaのカラー表示にするか、ユーザー定義する
かでできます。
「/*〜*/」もコメント色とするかどうかというチェックボックスを追加するとい
うのもネタとして挙がったので検討しているところです。

[ ]
RE:10894 秀丸マクロの複数行コメントにつNo.10895
白雲斎 さん 06/07/27 16:53
 
こんにちは 秀丸担当 さん、白雲斎です。

>V6.00β13から、/*〜*/もコメントとして書けるようになりました。

改変履歴に書いてありました。失礼しました。

>「/*〜*/」もコメント色とするかどうかというチェックボックスを追加するとい
>うのもネタとして挙がったので検討しているところです。

/*〜*/ がコメントとして解釈されることが公になった今(前から?)となって
は、オプション設定なしでコメント色を適用して欲しい所ですが、お任せします。

[ ]
RE:10890 秀丸マクロの複数行コメントにつNo.10896
草餅 さん 06/07/27 16:53
 
>
>> ・ 一行コメント「//〜」
>> ・ 複数行コメント「/*〜*/」
>>
>>という環境を実現したい、とういう趣旨です。
>
>そういう意味で、ユーザー定義に一行コメントを定義すればできますということ
>です。

複数行コメントのユーザー定義は1つしか出来ない、という
非常に単純な思い込みをしてしまったために、
おかしなコメントをしてしまいました。(^^;;;
強調表示のように、いくらでも追加できるんですね。
仰られた件は全て理解しました。
失礼しました。



[ ]
RE:10889 秀丸マクロの複数行コメントにつNo.10931
kaisan さん 06/08/04 12:15
 
> >秀丸マクロに関してはプロパティで/*〜*/の可否を設定する方が
> >スマートだと思います。
> それがあるとスマートだと思います。
> それをするとC言語と同じになるので、あまりオプションは増やしたくないとこ
> ろです。

a)開き直って複数行コメントの秀丸マクロのプロパティにその旨を書いておく
b)秀丸マクロの強調ファイルに複数行コメントの定義を入れておく

> >「高度な設定」のUIは(存在が)分かりづらいです。

> 確かに分かりづらいです。

 私は広げっぱなしにするのでこれでも問題有りませんが、
初めての人はどうだろう・・・。

> >また、イレギュラーなケースなのですが、画面が崩れる?ことが有ります。
>
β37で修正されていることを確認しました。

ただ、強調表示文字列の追加でOKボタンを押したとき必須チェックはした方が
よいのではないでしょうか。

あと、重隅ですが、エスケープ文字のところに全角文字が入力できますが
機能しません。
入力でき無くすればよいと思います。

[ ]
RE:10931 秀丸マクロの複数行コメントにつNo.10932
秀丸担当 さん 06/08/04 16:24
 

>a)開き直って複数行コメントの秀丸マクロのプロパティにその旨を書いておく
>b)秀丸マクロの強調ファイルに複数行コメントの定義を入れておく

どんな方法であれ、簡単にできてしまうと意味が無いので、ヘルプに説明を書い
て、/*〜*/についてはヘルプを参照するように書いておくようにしようと思いま
す。

> 私は広げっぱなしにするのでこれでも問題有りませんが、
>初めての人はどうだろう・・・。

初めての人のために隠しているので、初めての人にはわからないというのは当然
の結果ではありますが、どうしたものやら。

>ただ、強調表示文字列の追加でOKボタンを押したとき必須チェックはした方が
>よいのではないでしょうか。

文字列が空かどうかのチェックも入れるようにさせていただきます。
強調表示のほうも昔から空かどうかのチェックは無かったので入れておきます。

>あと、重隅ですが、エスケープ文字のところに全角文字が入力できますが
>機能しません。
>入力でき無くすればよいと思います。

半角のみ入力可能にするというのはNT系ではちょっと面倒です。
現状で文字化けしたものが記憶されてしまうことは問題でした。
全角文字を入れてしまった場合は空として記憶するようにしようと思います。

[ ]