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
130
0
Share
等幅は死んだ(ぇ
等幅って昔は常識でそれしか選択肢がなかったけど、今は絶滅危惧種で死に体ですよね?という話(汗
tsuda.a
April 18, 2024
More Decks by tsuda.a
See All by tsuda.a
マジカルインクリメントと指数表記
tsudaahr
0
240
バックアップしていますか?
tsudaahr
0
140
RDB以前のファイル設計の話でもしようか(ぇ
tsudaahr
0
150
NPUわからん
tsudaahr
0
200
計算量オーダーの話
tsudaahr
1
440
クラウド初学者が抱える不安について
tsudaahr
0
320
キューとは何か
tsudaahr
0
270
いくら眺めてもエラーの理由がわからないコードについて
tsudaahr
0
210
何のために文字数をカウントするのか?
tsudaahr
0
120
Other Decks in Programming
See All in Programming
t *testing.T は どこからやってくるの?
otakakot
1
680
実践CRDT
tamadeveloper
0
570
Offline should be the norm: building local-first apps with CRDTs & Kotlin Multiplatform
renaudmathieu
0
220
AWS re:Invent 2025の少し振り返り + DevOps AgentとBacklogを連携させてみた
satoshi256kbyte
3
160
瑠璃の宝石に学ぶ技術の声の聴き方 / 【劇場版】アニメから得た学びを発表会2026 #エンジニアニメ
mazrean
0
260
ハーネスエンジニアリングとは?
kinopeee
11
5.5k
How Swift's Type System Guides AI Agents
koher
0
270
ハンズオンで学ぶクラウドネイティブ
tatsukiminami
0
130
JAWS-UG横浜 #100 祝・第100回スペシャルAWS は VPC レスの時代へ
maroon1st
0
150
PCOVから学ぶコードカバレッジ #phpcon_odawara
o0h
PRO
0
270
Server-Side Kotlin LT大会 vol.18 [Kotlin-lspの最新情報と Neovimのlsp設定例]
yasunori0418
1
160
tRPCの概要と少しだけパフォーマンス
misoton665
2
210
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.5k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.1k
How to Ace a Technical Interview
jacobian
281
24k
Un-Boring Meetings
codingconduct
0
270
Become a Pro
speakerdeck
PRO
31
5.9k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.4k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Six Lessons from altMBA
skipperchong
29
4.2k
The Invisible Side of Design
smashingmag
303
52k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
170
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 によって生身のプログラマーが淘汰されるのが先かもしれないが)
こちらからは以上です