ページ内検索でひらがなを検索すると、カタカナにもマッチしてしまう
-
環境
Windows 10 - Vivaldi 2.1.1337.35 (公式ビルド) (64-bit)
再現手順
- https://forum.vivaldi.net/category/76/不具合報告 にアクセスする
- [Ctrl] + [F] でページ内検索を起動する
- 「あ」と入力する
本来あるべき挙動
ひらがなの「あ」にのみマッチする
実際の挙動
ひらがなの「あ」だけでなく、カタカナの「ア」にもマッチしてしまう
補足情報
Google Chrome バージョン: 70.0.3538.77(Official Build) (64 ビット)と全く同じ挙動です。Vivaldi固有の問題ではないのかもしれません。
-
何もコメントをいただいていないので、もう少しマトモな再現手順を考えてみました。
再現手順1のテストコードを次のようにしますと、
<!DOCTYPE html> <html lang="ja"> <head> <meta charset=utf-8> <title>matching test</title> </head> <body> <ul> <li>あいうえお <li>アイウエオ <li>アイウエオ </ul> </body> </html>
再現手順3のスクリーンショットは次のようになります。
このように、U+30A2 「あ」で検索すると、U+30A2「ア」にも、U+FF71「ア」にもマッチします。
Edge、Firefox(いずれもsable)では、このようにはならず、「あ」にのみマッチした結果が返ります。
-
@momdo
「大文字と小文字を区別する」にチェックを入れることで回避できるようです。 -
@syobon_official
なるほど、確かに[大文字と小文字を区別する]をチェックすると、回避はできますね(予測できない挙動ではありますが)。 -
何を隠そう、「大文字と小文字を区別する」で仮名が区別できること、知りませんでした
Vivaldiのページ内検索はChromeのAPIを使用しており、大文字・小文字の区別(原語'Match Case')は以下のオプションを利用しています。
https://developer.chrome.com/apps/tags/webview#type-FindOptionsFindOptions
boolean
(optional) matchCase
Flag to match with case-sensitivity. The default value is false.実装方法の詳細は分からないですが、仮名もcase-sensitivityの範疇に入っているようです。
現在Vivaldi上の日本語訳は「大文字と小文字を区別する」となっていますが、「仮名や大文字・小文字を区別する」などとしても良いかも知れませんね。
(不具合ではなく、改善提案なので、要望欄に移動しますね。)
-
@takaaki
コメントありがとうございます。何を隠そう、「大文字と小文字を区別する」で仮名が区別できること、知りませんでした
私も@syobon_officialさんに指摘いただくまで、気づきませんでした…。
Vivaldiのページ内検索はChromeのAPIを使用しており、大文字・小文字の区別(原語'Match Case')は以下のオプションを利用しています。
やはり、Chrome依存なのですね。了解しました。ただ、「あ」と「ア」がcase-sensitivityなのか、と言われるとやはり微妙な感じがしますが…。(先にも書かせてもらったとおり、Chrome系以外のブラウザーと挙動が異なるのが気になります。)
(不具合ではなく、改善提案なので、要望欄に移動しますね。)
こちらも了解です。Chromeの問題と言うことなので、たとえVivaldiが要望に前向きになったとしても、すぐには挙動が変更されなさそう、ということもあわせて理解しました。
-
@momdo ご了承いただき、ありがとうございます。
Match Caseの日本語訳を、実挙動に合うよう「仮名や大文字・小文字を区別」に変更しました。 -
Chromiumのbug trackを軽く漁った感じでは、下記が該当しますかね……。
71741 - Find-in-page does not allow 'diacritic-sensitive' search : do we need case-sensitive search as in Firefox? - chromium - Monorail
https://bugs.chromium.org/p/chromium/issues/detail?id=717412011年に登録されていますが、解決される気配がないあたりは……。