HN🔥 200
💬 68

消えたポーランド語の「S」の謎:文字化けトラブルから学ぶエンコーディングの教訓

colinprince
約20時間前

ディスカッション (11件)

0
colinprinceOP🔥 200
約20時間前

この記事では、2015年に話題となった、特定のポーランド語の文字が突如として消滅してしまうという不可解な現象(The curious case of the disappearing Polish S)について取り上げています。文字エンコーディングの不一致や変換処理の落とし穴が、いかに予期せぬデータ欠損を引き起こすかという技術的な教訓が語られています。

1
quibono
約18時間前

ポーランド語がラテンアルファベットを使っている(独自の音を表現するためにスラブ語特有のひねりは少しあるけど)という事実は、ポーランドが西側諸国と足並みを揃えるのをずっと容易にしたと思う。平均的なポーランド人は、文化的にはウクライナ人やロシア人よりも西側の隣国に近い気がするな(食文化は別かもしれないけど)。

2
TRiG_Ireland
約18時間前

言語学的、歴史的、文化的な情報がすごく興味深いし、説明も本当にわかりやすいね。

3
nashashmi
約18時間前

面白かった。要約するとこんな感じ:

盲目的にCtrl+Sをブロックするんじゃなくて、Altキーが押されていない時だけブロックすればよかったんだ。

Ctrl+Alt+Sはポーランド語の「Ś」を入力するショートカットキーなんだけど、保存機能を改善するためにCtrl+Sをブロックした結果、Ctrl+Alt+Sまで巻き添えでブロックされちゃったんだよね。

4
paweladamczuk
約18時間前

まさに今のCopilot 365がそんな感じだよ。"Ć"を入力しようとするたびにCopilotが立ち上がってきて、そのたびにアプリを閉じなきゃいけないから本当に困る。

5
notathrowaway51
約17時間前

豆知識だけど、Unicode正規化(NFD)を適用すると、ポーランド語の9文字のうち8文字(ż,ó,ć,ę,ś,ą,ź,ń)は「ベースの文字+結合ダイアクリティカルマーク」に分解されるんだけど、łだけはそのまま残るんだよね。つまり、sqliteのunicode61のremove_diacriticsトークナイザを使ってFTS用にポーランド語のテキストを正規化することはできないってこと。

6
f33d5173
約16時間前

ここでの本当の問題は、ブラウザがキーの組み合わせを簡単にチェックする方法を提供していないことと、開発者が自分たちでそれを作る手間を惜しんでいることの2点だね。多くのサイトで、意図したキー操作がAltやShiftなどの修飾キーの組み合わせによって発動してしまう問題が見つかるはず。ここで提示されたコードでさえ、Windows上のより広い問題を解決しているだけで、Alt+Cmd+Sはまだブロックされてしまう。

ブラウザがkeydown/up/pressイベントに、キーの組み合わせを示すコードを含むプロパティ("CTRL+S"や"CTRL+ALT+S"のようなもの)を追加するような提案がなされるべきだよ。そうすればプログラマーはキーコードや修飾キーを個別にチェックするんじゃなくて、そのプロパティで条件分岐できるからね。

自分としては、Web開発者にはキー判定のロジックを自作して、修飾キーを直接チェックするのではなくそれを参照するようにすることをお勧めしたい。そうすれば、今回のようなバグを防げるだけじゃなくて、実装としてもずっと楽になるはず。

7
egorfine
約16時間前

ポーランド語はロシア語に次いで2番目に使われているスラブ語で、ウクライナ語よりも上

ウクライナ語に関してはちょっと正確じゃないかも。一応ウクライナの公用語ではあるけど、実際問題……ウクライナの人全員が話せるわけではないしね。

8
pzel_
約16時間前

右手の人差し指がつりそうな変な体勢を解消する、僕のキーボードレイアウトを宣伝させてくれ:https://pzel.name/pl-lefty.html (https://pzel.name/pl-lefty.html)

最近はxorgに同梱されているから、xorg.confでこう書けば使えるよ:

  Option                "XkbVariant" "lefty"
9
edukite
約14時間前

Ctrl+Sを3/4で使うの、まさに今の自分だ。:waが筋肉に刻み込まれすぎてて、外から帰ってきて手を洗うことよりも無意識にやってるレベル。

プラグインなしでもオートセーブ状態だね。

10
mlukaszek
約13時間前

かたや2026年の自分は、MacのEdgeで突然大文字のŚが入力できなくなってる。25年前にタイムスリップしたような気分だよ。