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 13, 2024
Programming
0
150
いくら眺めてもエラーの理由がわからないコードについて
見た目ではどこがエラーなのか全く分からないかもしれないコードは、実は全角で記述されているかもしれません、というお話です。
tsuda.a
April 13, 2024
Tweet
Share
More Decks by tsuda.a
See All by tsuda.a
マジカルインクリメントと指数表記
tsudaahr
0
130
バックアップしていますか?
tsudaahr
0
84
RDB以前のファイル設計の話でもしようか(ぇ
tsudaahr
0
88
NPUわからん
tsudaahr
0
140
計算量オーダーの話
tsudaahr
1
330
クラウド初学者が抱える不安について
tsudaahr
0
200
キューとは何か
tsudaahr
0
190
等幅は死んだ(ぇ
tsudaahr
0
64
何のために文字数をカウントするのか?
tsudaahr
0
70
Other Decks in Programming
See All in Programming
⚪⚪の⚪⚪をSwiftUIで再現す る
u503
0
120
もう少しテストを書きたいんじゃ〜 #phpstudy
o0h
PRO
21
4.3k
未経験でSRE、はじめました! 組織を支える役割と軌跡
curekoshimizu
1
200
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
210
Rubyと自由とAIと
yotii23
6
1.9k
From the Wild into the Clouds - Laravel Meetup Talk
neverything
0
180
クックパッド検索システム統合/Cookpad Search System Consolidation
giga811
0
140
Visual StudioのGitHub Copilotでいろいろやってみる
tomokusaba
1
220
仕様変更に耐えるための"今の"DRY原則を考える
mkmk884
9
3.3k
コミュニティ駆動 AWS CDK ライブラリ「Open Constructs Library」 / community-cdk-library
gotok365
2
260
LINE messaging APIを使ってGoogleカレンダーと連携した予約ツールを作ってみた
takumakoike
0
130
新宿駅構内を三人称視点で探索してみる
satoshi7190
2
130
Featured
See All Featured
The Invisible Side of Design
smashingmag
299
50k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.9k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
The Language of Interfaces
destraynor
156
24k
Code Reviewing Like a Champion
maltzj
521
39k
It's Worth the Effort
3n
184
28k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
Unsuck your backbone
ammeep
669
57k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
A designer walks into a library…
pauljervisheath
205
24k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
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?