半角#の後に、半角英数字の文字列を3個続けると、色が反映されない場合がある
-
不具合なのか、仕様なのか、環境が原因なのか、不明なので投稿します
状況としては
半角#の後に、半角英数字の文字列を3個続けると、色が反映されない場合がある事象は、その行のみの場合や、複数行での場合があり、条件は不明です
私のざっとの試験で、半角英数字でのみ、発生するのを確認しました
行頭に、半角スペースが存在する場合においても、発生を確認しました私の環境の
C:\Users\<ユーザー名>\AppData\Roaming\Mery\Mery.his
C:\Users\<ユーザー名>\AppData\Roaming\Mery\Mery.ini
を削除したり
Meryインストール版を、アンインストールと、インストールを試行しましたが、改善しませんでした■環境
エディション:Windows 11 Home
バージョン:25H2
OS ビルド:26200.7019
エクスペリエンス:Windows 機能エクスペリエンス パック 1000.26100.265.0
システムの種類:64 ビット オペレーティング システム、x64 ベース プロセッサMery: 3.8.1 (x64)
Onigmo: 6.2.0
C/Migemo: 1.3
Tidy: 5.8.0
Hunspell: 1.7.1
uchardet: 0.0.8
QuickJS: 0.11.0
OS: Windows 11 (Version 25H2, OS Build 26200.7019, 64-bit Edition)導入しているマクロ:なし
導入しているプラグイン:なし■環境の設定と、実際の挙動
文字に色の設定をする
通常:標準。黒
半角英字:カスタム、R0、G128、B255。薄青
半角数字:カスタム、R0、G192、B0。緑
半角記号:カスタム、R0、G0、U255。青編集モード:Text
CR+LF
UTF-8(BOM無し)Mery上で、下記の様に、文字列を入力する
#ab
#abc
#abcd
の場合
1行目の文字列"#ab"は、想定通りの色になる
2行目の文字列"#abc"は、想定外の色(黒)になる
3行目は文字列"#abcd"は、想定通りの色になる#12
#123
#1234
1行目の文字列"#12"は、想定通りの色になる
2行目の文字列"#123"は、想定外の色(黒)になる
3行目は文字列"#1234"は、想定通りの色になる#aaa
#aaaaaa
の場合は
1行目の文字列"#aaa"は、想定外の色(黒)になる
2行目の1文字目と2文字目の"#a"は、想定外の色(黒)になる
2行目の3文字目以降の文字列"aaaaa"は、想定通りの色になる#
#abc
#abcde
#abcdef
の場合は
1行目の文字列"#"は、想定通りの色になる
2行目の1文字目と2文字目の"#b"は、想定外の色(黒)になる
2行目の3文字目と4文字目の"bc"は、想定通りの色になる
3行目の文字列"#abcde"は、想定通りの色になる
4行目の文字列"#abcdef"は、想定外の色(黒)になる| いかいそ | 返信 -
ご報告ありがとうございます。
現象、確認しました。
Ver 3.7.13 で HTML カラー コードをダブルクリックで編集できる機能を追加したのですが、その仕様の影響で、
#fffや#ffffffといった「# + 3 桁 or 6 桁」の文字列が HTML カラー コードとして認識されてしまっていることが原因のようです。カラー コード編集機能を使っていない場合は、こうした文字列を特別扱いする必要はないので、次のバージョンで改善しておきますね。
さらに、[カラー コードを開く]をオンにしている場合でも、いただいたサンプルのように # で始まる文字列が続けて並んでいるケースだと、うまく構文解析できないことが分かりましたので、こちらも合わせて修正しておきます。
| Kuro | 返信