Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
等幅は死んだ(ぇ
Search
tsuda.a
April 18, 2024
Programming
0
110
等幅は死んだ(ぇ
等幅って昔は常識でそれしか選択肢がなかったけど、今は絶滅危惧種で死に体ですよね?という話(汗
tsuda.a
April 18, 2024
Tweet
Share
More Decks by tsuda.a
See All by tsuda.a
マジカルインクリメントと指数表記
tsudaahr
0
220
バックアップしていますか?
tsudaahr
0
130
RDB以前のファイル設計の話でもしようか(ぇ
tsudaahr
0
130
NPUわからん
tsudaahr
0
190
計算量オーダーの話
tsudaahr
1
410
クラウド初学者が抱える不安について
tsudaahr
0
290
キューとは何か
tsudaahr
0
250
いくら眺めてもエラーの理由がわからないコードについて
tsudaahr
0
200
何のために文字数をカウントするのか?
tsudaahr
0
110
Other Decks in Programming
See All in Programming
dchart: charts from deck markup
ajstarks
3
970
組織で育むオブザーバビリティ
ryota_hnk
0
150
ELYZA_Findy AI Engineering Summit登壇資料_AIコーディング時代に「ちゃんと」やること_toB LLMプロダクト開発舞台裏_20251216
elyza
2
1.2k
The Art of Re-Architecture - Droidcon India 2025
siddroid
0
170
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
2
500
疑似コードによるプロンプト記述、どのくらい正確に実行される?
kokuyouwind
0
340
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
600
実は歴史的なアップデートだと思う AWS Interconnect - multicloud
maroon1st
0
350
OSSとなったswift-buildで Xcodeのビルドを差し替えられるため 自分でXcodeを直せる時代になっている ダイアモンド問題編
yimajo
3
520
AI によるインシデント初動調査の自動化を行う AI インシデントコマンダーを作った話
azukiazusa1
1
550
CSC307 Lecture 02
javiergs
PRO
1
770
なるべく楽してバックエンドに型をつけたい!(楽とは言ってない)
hibiki_cube
0
130
Featured
See All Featured
How to Ace a Technical Interview
jacobian
281
24k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Music & Morning Musume
bryan
47
7k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
47
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Code Reviewing Like a Champion
maltzj
527
40k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.1k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
240
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
190
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
2.9k
Claude Code のすすめ
schroneko
67
210k
Transcript
等幅は死んだ(ぇ IT 系の濃ゆい話をする会 #14 LTDD 2024-4 #2 @tsuda_ahr
別のところのお話で • プログラミングで全角文字を使ったらエラーが出たでござる、という話があ りました。
岡山で話してきました。 https://speakerdeck.com/tsudaahr/ikuratiao-metemoeranoli-you-gawakaranaikodonituite
プログラミングするときに、どんなフォントを使っていますか? • もちろん等幅フォントですよね?
ここで言う「等幅フォント」とは? • 字種(‘M’と‘I’など)によらず、文字幅が固定。 • 和文を扱い、かつ、 英字部分と漢字部分の文字幅比が 1:2。 つまり英字部分は半角幅で、漢字部分は全角幅です。 • 全角幅の字形領域は正方形。
• 和文とは、主に過去 ShiftJIS を構成していた JIS X 0201(=英字部分) と JIS X 0208 (=漢字部分) のコードポイントの集合を指します。 したがって、それらコードに含まれる英数字および記号類も和文の範囲です。 • Unicode 系の JIS X 0208 以外の文字についての幅は未定義とします が、おおよそ半角幅または全角幅のどちらかに寄せてあるものとします。
選択肢 • Windows の場合 • MSゴシック • MS明朝 • Biz
UDゴシック • Biz UD明朝 • Mac • Osaka-Mono? • Linux • 知らぬ(汗
要するに? • 選択肢がほぼない、ということ(汗
プログラミング用フォント? • あれらって英字(=JIS X 0201) 部分を重視していて、漢字部分(=JIS X 0208) は重要 視してないですよね?
• あと、普通の人(=初学者/非プログラマー) の人はフォントをインストールしたりしない ので以下略(汗 意訳)標準フォント内でなんとかしたい
それでも • Windows だけで閉じられるなら、フォントを指定することで、なんとかなる。 • メールや Web など、異 OS 間で再現させようとすると死亡確定(汗
(相互互換するフォントがないので・・・)
たとえば • メールで、テキストで以下のような図を作っても、相手に正しく表示して もらえているかはわかりません。 MASTER SLAVE T+ ───┬─────── R+ T-
───│─┬───── R- R+ ───│─│─┬─── T+ R- ───│─│─│─┬─ T- │ │ │ │ ├─│─│─│─ R+ │ ├─│─│─ R- │ │ ├─│─ T+ │ │ │ ├─ T- │ │ │ │ └─│─│─│─ R+ └─│─│─ R- └─│─ T+ └─ T-
相手には • こんな感じでみえているかも? MASTER SLAVE T+ ───┬─────── R+ T- ───│─┬─────
R- R+ ───│─│─┬─── T+ R- ───│─│─│─┬─ T- │ │ │ │ ├─│─│─│─ R+ │ ├─│─│─ R- │ │ ├─│─ T+ │ │ │ ├─ T- │ │ │ │ └─│─│─│─ R+ └─│─│─ R- └─│─ T+ └─ T-
あと • 等幅と言っても、和文系フォントと英文系フォントで扱いが違う。
‘◦’が思ったより小さくなるフォントって見たことないですか? • たとえば Microsoft YaHei とか。 ABCxyz◦△□ghi123 • 同じ文字列を BIZ
UDPゴシック でみるとこんな。 ABCxyz◦△□ghi123
見たことない? • 等幅ではないですが、一番身近なのはサインインのパスワードかも? WinXP Win10 Win11 GitHub (Google Chrome v123)
昔は * だった。 Vista から • 従来に比べて太った感じ Win11から細身に? GitHubも細身
幅の概念が違う。 • 漢字 • 略(原稿用紙がイメージしやすい) • 英字 • x-Height (=高さ)を基準にして文字の幅が決まるっぽい。
( x-Height の高さ=等幅の場合の幅、みたいな感じ) ここが x-Height https://en.wikipedia.org/wiki/X-height
なので、欧文系の等幅は日本語の等幅と趣が異なる。 • 縦横比が必ずしも 1:2 ではない。 • 記号/罫線などの文字も英字と同じ幅。 (英字幅:記号類幅が 1:2 ではなく
1:1) • なので、日本語等幅と同じノリでレイアウトするとズレる。 https://dejavu-fonts.github.io/ DejaVu LGC Sans Mono ABCxyz◦△□ghi123 記号類が英字と同じ幅。
結局何さ? • かつてコンピューターのフォントといえば等幅が支配的だったのに、現在では プロポーショナルに席巻され死に体である。 • 昔は(特にインターネット以前は)等幅フォントによって成立していた表現が、 等幅フォントの衰退によって再現不能になりつつある。 • プログラミング界隈は等幅が使われているが、そのうちプログラミングもプ ロポーショナルフォントで行う時代がやってくるかも!!
(AI によって生身のプログラマーが淘汰されるのが先かもしれないが)
こちらからは以上です