フォーラムの返信を作成しました。
- 作成者投稿
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
お願いがあるのですが、ご質問の意味を正しく理解するため、できるだけご質問だけを明確に書いていただけますでしょうか? AI のこともご質問に関連しているのでしょうか?
希望しています拡張子や行数ごとの設定やプログラミングファイルのように時間おきの別バージョンを細かく作るなどは見当たりませんでした。
ということの多くは、設定のプロパティの [バックアップ] ページで設定できます。
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
念のため、誤解がないように書いておきますと、[検索] ダイアログの [一致する文字列を数える] を設定しておけば、yasuji 様の希望通り、検索対象のテキスト文書の中で検索文字列が重複なくどこに何個出現するかを、ステータス バーに表示します。また、[置換] や [すべて置換] も yasuji 様の希望の動作になります。つまり、[次を検索] とそのほかの動作が異なるということになります。
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
少なくとも Visual Studio では、EmEditor と同様の動作をします。
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
ファイルの自動バックアップは、設定のプロパティの [バックアップ] ページで設定できます。
ワークスペースの自動バックアップは、[カスタマイズ] の [ワークスペース] ページで設定できます。よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
メールまたは「お問い合わせ」でご連絡の際に、「不具合の報告のためファイルを送付したいのでアップロード先を教えてください。」と書いていただければ、お知らせいたします。
アップロードした結果のファイルは、弊社しかダウンロードすることはできないため、そのリンクは一般には公開できません。
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
EmEditorの検索においては、上記の条件を用意した場合、[次を検索] (F3) を押下すると、1回目は先頭から1文字目からのAAを選択、2回目は先頭から2文字目からのAAを選択、3回目は先頭から3文字目からのAAを選択、4回目は先頭から4文字目からのAAを選択、これ以上選択できるものがないため検索が終了する(一致する文字列はもうないというメッセージが表示される)という動作になっている。
それで正しいです。
(1)この検索の動作仕様は、何かメリットがあって実装されたのか、または何か当時課題があってその課題を解決するために実装されたのでしょうか?
この動作が通常の動作であり、他の動作は思い付きませんでした。
(2)この検索の動作仕様は(不具合などは抜きで)、EmEditorのどのバージョンから実装されたのか?または初期から搭載されていたのか教えていただけないでしょうか?
初期からです。
(3)検索の動作仕様については、オンラインヘルプ等などに記載されている箇所を教えていただけないでしょうか?または常識の動作のため記載がなくても実用上差しさわりがないということも考えられます。
特に記載されていません。しかしながら、私の知る限り、ほとんどのテキスト エディターは EmEditor と同様の動作をするはずです。その理由ですが、検索の際には、考えられるすべての一致を検索するべきだからではないでしょうか? そうでないと、重要な検索一致箇所を見逃す可能性があります。例えば、
&A&B&C&
という文書があったとします。そこで、
&.&
という正規表現を検索したいとします。
yasuji 様のお考えの動作 (強調表示や、[すべて置換] と同様な検索) だと、
&A&
が一致した直後に、[次を検索] (F3) コマンドを実行すると、
&C&
が一致します。
しかし、ユーザーは
&A&
と&C&
の間にある&B&
も一致されることを期待するはずです。&A&
、&B&
、&C&
の 3箇所の重要性は同じだと考えられます。そこで、[次を検索] コマンドでは、できるだけ多くの可能性を見逃さずに一致させることを意識しています。
しかしながら、yasuji 様のお考えの動作を希望される場合には、オプションの追加も検討いたしますので、再度、その理由も含めてご連絡ください。
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
「正規表現不具合2」の以下の内容については、見落としておりました。回答が遅くなり申し訳ありません。
改行のないテキストファイル(数百キロバイト規模)で任意を含む正規表現で検索すると本来は一致しない文字列にも一致する。緑色マークは正しい文字列をマークしているが、検索選択される文字列はマーク済み以外も検索選択する
これについて回答させていただきます。検索により一致した文字列と、強調表示により一致する文字列とは、必ずしも一致しません。強調表示は、[置換] ダイアログで、[すべて置換] を選択して全置換と動作が似ています。
これを簡単な例で説明しますと、次のようになります。例えば、
AAAAA
という文書があったとします。そこで、
AA
を検索します。すると、最初の4文字の
AAAA
だけが強調表示されますが、[次を検索] (F3) コマンドを実行すると、1個ずつ検索位置がずれて表示されるため、最後のAA
まですべて検索することができます。本件のサンプルと正規表現においても、同様に、強調表示されていない部分に検索結果が一致することもありますが、特に不具合は確認できませんでした。
また、設定のプロパティの [表示] ページに行くには、[ツール] メニューで、[現在の設定のプロパティ] または [すべての設定のプロパティ] を選択してください
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
本件は、さきほど修正しましたので、まもなく公開する次のバージョン (v23.0.913) が公開されたら更新してください。
本件の理由ですが、速度とのバランスです。もっと以前のバージョンでは、常に、スクロール バーが行全体の長さを反映するようになっていました。そうすると、非常に長い行が含まれている場合に、例えば、垂直スクロールが遅くなるという問題や指摘がありました。その問題を回避するため、現在のような動作になっていました。マウスでなく、End キーなどを使用して右に移動した場合には、スクロール バーが行全部の長さを反映するようになり、問題は発生しません。次のバージョンでは、マウスだけを使用してスクロール バーを操作した場合でも、一番右に移動できるように、次のバージョンで修正いたしました。
なお、お願いがあるのですが、サンプル ファイルはダウンロード用のリンクを 1 つだけ書いていただくだけで充分ですので、本フォーラムに長いサンプルを投稿されないようお願いいたします。そのまま投稿しても、文字が変更されてしまいますし、多くのユーザーには無関係の内容になってしまいます。なお、メールでやり取りする際には、弊社指定のアップロードのサイトがありますので、添付ファイルに依存する必要はありません。アップロード先の URL は非公開になっていますので、まずメールかお問い合わせでご連絡いただければ、お知らせします。
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
さきほど公開した v23.0.912 にて高速化しました。
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
本件は、検索文字列の強調表示 (正規表現にマッチする文字列が黄緑色に表示されるもの) が有効になっている場合に、発生する問題だと考えられます。既定では、有効になっていますが、これを無効にするためには、設定のプロパティの [表示] ページで、[検索色] に 0 を指定してください。
しかし、これが有効の場合でも、もっと速く動作するようにならないか最適化してみます。また何かわかりましたら、ここに回答を追加します。
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
さきほど公開した v23.0.911 にてご希望の動作に変更いたしました。
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
正規表現の 10 個以上の後方参照は、次のフォームで可能です。
\k<10>, \k<11>, \k<12>, ...
置換表現では、次のフォームも使用できます:
$10, $11, $12, ...
これらの機能は、v19.1 で追加されました。
https://jp.emeditor.com/text-editor-features/history/new-in-version-19-1/
ヘルプでは、置換表現構文
https://www.emeditor.org/ja/howto/search/replacement_expression_syntax.html
に記載されていますが、誤字がありました。これは修正いたします。Boost でも Onigmo でも記載方法は同じです。
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
問題が再現しましたので、さきほど公開した v23.0.910 で修正しました。
https://jp.emeditor.com/forums/topic/emeditor-v23-1-preview-23-0-901/
原因は、正規表現を使用する [前を検索] が遅くなっていたためです。Boost の Regex は、[前を検索] には対応していません。そのため、アプリ側で追加の処理が必要になるのですが、正確な検索を行おうとすると、前から後方向に検索する必要が生じる場合があり、そのため、1行が非常に長い今回のようなサンプルだと、遅くなっていました。最新版 v23.0.910 では、アルゴリズムの最適化により、[前を検索] も高速化しました。なお、Notepad++ では、正規表現を使用した [前を検索] はサポートされていないため、EmEditor と同列には比較できないと思います。なお、Onigmo の Regex では、[前を検索] には対応されているため、アプリ側で特に追加の処理は必要なく、高速に動作します。
他にも何かお気付きの点がございましたら、ご連絡ください。
今後もよろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
ご迷惑をおかけして申し訳ありません。yasuji 様には、いつも貴重なご意見と不具合報告をいただいており、大変感謝しております。
今回の 2023/11/14 に報告していただいたメールですが、残念ながら、私のところには、届いておりません。私が使用しているメール ソフト (Outlook) の中のすべてのフォルダを yasuji 様のメール アドレスで検索しましたが、届いていませんでした。本メールに .js (JavaScript) のファイルを添付されていたそうですが、おそらく、それが原因で、メール ソフト、あるいはメール サーバー側で、ブロックされてしまったのではないかと思います。参考までに Outlook でブロックされる添付ファイルの種類については、こちらをご参照ください。
今後、メールをお送りいただいたにもかかわらず、もし長らく回答をお待たせしている場合には、再度、添付ファイル無しでお送りいただければ幸いです。
本メールのご質問については、今からすぐにお調べいたします。何かわかりましたら、またここに回答を追加いたします。
今後もよろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
まもなく公開する v23.1 preview 5 (23.0.905) で、さらに改善しました。お試しいただけると幸いです。
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
「仕様じたいがコロコロ変わると」というのは、EmEditor の仕様ではなく、AI のサイトの仕様がコロコロ変わるという意味ですよね?
そうだとすると、AI のサイトの仕様がコロコロ変わるからこそ、EmEditor 本体の機能にはできないことになります。したがって、マクロにするべき機能です。よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
ディスクの空き領域が少ない場合には、一時ファイルを作成できなくなる可能性があり、Windowsシステム全体が不安定となります。EmEditor は、Windows システムが安定に動作していることが前提となっていますので、そのような状態での動作はサポートの対象外となります。
まずは、ディスクの空き領域が充分にあることを確認してから、EmEditor を使用してください。
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
CSV文書の場合、[HTML/CSS/JSON/XML 文書用] と書かれたボックスの中のオプションは関係ありません。したがって、[次の行数を超えると構文チェックを無効] の設定には無関係となります。
列数の不一致エラーということですが、その前に発生するエラーが原因のこともあります。これが唯一のエラーの場合には、不具合の可能性があります。もし問題を再現できるサンプル ファイルがありましたら、提供していただくことは可能でしょうか? 問題が再現できれば、できるだけシンプルにしたもので結構です。構文チェックボタンが無効化される件についても、同様に問題を再現する条件がわかりましたらご連絡ください。
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
さきほど公開した v23.0.901 以上に更新されていることを確認してから、次のマクロを使ってください。
nStatus = editor.QueryStatusByID(4585); // Enable All Markers
if (nStatus & eeStatusEnabled) {
editor.ExecuteCommandByID(4585); // Enable All Markers
}
else {
editor.ExecuteCommandByID(4586); // Disable All Markers
}
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
ご希望のマクロを作成することは可能ですので、それを好きなショートカットに割り当てると良いと思います。
もしそれでよろしければ、マクロを作成しますのでお知らせください。よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
こちらで、簡単なマクロを作成して試してみましたが、特に問題は発生していません。Find() 以外にも何か関係しているのでしょうか?
何か問題が再現できるマクロで、できるだけシンプルなマクロを書いていただけますでしょうか?
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
自動ワークスペースについては、[カスタマイズ] ダイアログの [ワークスペース] で設定できます。
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
「長さが異なる行であっても選択された行末が選択されるようになる」という状態は、複数選択の状態です。[カスタマイズ] ダイアログの [編集] ページで、[複数選択を有効にする] がオフなのに、複数選択が可能になるというは、矛盾している状態でした。確かに以前のバージョンでは、このような曖昧な状態が可能だったのですが、これは矛盾している状態だったので、新バージョンでは、このような状態は無いように改良したわけです。ご理解いただけますと幸いです。
よろしくお願いいたします。
Yutaka Emura
Keymasterいつもお世話になっております。江村です。
ファイルを受け取りました。ありがとうございました。
お調べしたところ、[カスタマイズ] ダイアログの [編集] ページで、[複数選択を有効にする] がオフになっていました。これはオンにしてお使いください。
よろしくお願いいたします。
Yutaka Emura
Keymaster- 作成者投稿