Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
いくら眺めてもエラーの理由がわからないコードについて
Search
tsuda.a
April 13, 2024
Programming
0
190
いくら眺めてもエラーの理由がわからないコードについて
見た目ではどこがエラーなのか全く分からないかもしれないコードは、実は全角で記述されているかもしれません、というお話です。
tsuda.a
April 13, 2024
Tweet
Share
More Decks by tsuda.a
See All by tsuda.a
マジカルインクリメントと指数表記
tsudaahr
0
210
バックアップしていますか?
tsudaahr
0
120
RDB以前のファイル設計の話でもしようか(ぇ
tsudaahr
0
130
NPUわからん
tsudaahr
0
180
計算量オーダーの話
tsudaahr
1
400
クラウド初学者が抱える不安について
tsudaahr
0
280
キューとは何か
tsudaahr
0
240
等幅は死んだ(ぇ
tsudaahr
0
100
何のために文字数をカウントするのか?
tsudaahr
0
100
Other Decks in Programming
See All in Programming
JJUG CCC 2025 Fall Javaコミュニティの歩き方 〜参加から貢献まで、すべて教えます〜
takasyou
0
100
Atomics APIを知る / Understanding Atomics API
ssssota
1
240
「文字列→日付」の落とし穴 〜Ruby Date.parseの意外な挙動〜
sg4k0
0
330
Reactive Thinking with Signals and the new Resource API
manfredsteyer
PRO
0
140
モデル駆動設計をやってみよう Modeling Forum2025ワークショップ/Let’s Try Model-Driven Design
haru860
0
210
複数人でのCLI/Infrastructure as Codeの暮らしを良くする
shmokmt
5
2k
sbt 2
xuwei_k
0
120
dnx で実行できるコマンド、作ってみました
tomohisa
0
120
乱雑なコードの整理から学ぶ設計の初歩
masuda220
PRO
32
15k
CloudNative Days Winter 2025: 一週間で作る低レイヤコンテナランタイム
ternbusty
7
1.8k
JJUG CCC 2025 Fall: Virtual Thread Deep Dive
ternbusty
3
510
Level up your Gemini CLI - D&D Style!
palladius
1
150
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
Designing for Performance
lara
610
69k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
Code Reviewing Like a Champion
maltzj
527
40k
Visualization
eitanlees
150
16k
What's in a price? How to price your products and services
michaelherold
246
12k
Embracing the Ebb and Flow
colly
88
4.9k
Site-Speed That Sticks
csswizardry
13
980
Designing for humans not robots
tammielis
254
26k
GitHub's CSS Performance
jonrohan
1032
470k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
Transcript
いくら眺めても エラーの理由がわからない コードについて 令和6年度能登半島地震チャリティ駆動 LT 大会 LTDD 2024-4 #1 @tsuda_ahr
某所で、こんな質問がありました。 • テキストの通りにコードを書いたんですが、エラーが出るんです。
なぜかエラーが出る。 (=質問者のコンソール)
これは OK。(=質問者のコードを自分の PC で入力/実行してみた)
• 違いが分かりますか? 比較
こたえ • 全角/半角の違い
フォントを変えて見るとこうなる。 • 「Biz UDPゴシック」から、「Biz UDゴシック」に変更。
納得。 • そりゃそーなるよね。
いや待て。 • なんでそうなった?
理由 • プロポーショナルフォントを使用していたから。 • IME を通してコードを入力したから。
理由1) プロポーショナルフォントを使用していたから。 • 世の中、今やプロポーショナルフォントばかり。 • 等幅フォントなんて絶滅危惧種。(プログラマ界隈を除く) https://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%83%9D%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%8A%E3%83%AB%E3%83%95%E3%82%A9%E3%83%B3%E3%83%88
BizUDPゴシック による全角/半角 • MS Pゴシックでは、全角/半角の判別はかろうじて可能だったが、 BIZ UDPゴシックでは、ほぼ判別不能。 BIZ UDPゴシック BIZ
UDゴシック(等幅) MS Pゴシック 半角 ABC123 ABC123 ABC123 全角 ABC123 ABC123 ABC123 見分けがつかない(汗
理由2) IME を通してコードを入力したから。 • IME (Input Method Editor /入力方法編集プログラム)を通して 入力すると、確定する際に変換されて全角になることがある。
なんで IME を通すのさ? • いや、逆になんで IME を外さないとならんの?
IME を切らなくても。 • IME 切らなくても、英字モードにすれば予測変換も効いて便利では? • スマホなどは IME を使わない選択そのものが希薄。 •
そもそも今時は IME がない環境そのものが少ない。 (= IME を通さずに入力した経験がない人がいる)
まとめ • プログラミングでプロポーショナルフォントや IME を使う人がいる。 • 現在、フォントはプロポーショナルが普通であって、等幅は知名度が低い。 • フォントによっては全角/半角で字形に差がない。 •
そもそも全角/半角の違いをプログラマーが意識していない。
なので! • 質問を受ける人は、 等幅フォント使用、および、英数記号入力時は IME OFF が普通であるとは思わないこと!(汗
こちらからは以上です • Any Question?