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
WindowsにおけるRubyのエンコーディングの話 Ruby3版/Ruby's encodi...
Search
usa
April 17, 2020
Technology
0
380
WindowsにおけるRubyのエンコーディングの話 Ruby3版/Ruby's encoding on Windows at Ruby3
Ruby3サミット(2020-04-17)
usa
April 17, 2020
Tweet
Share
More Decks by usa
See All by usa
Rubyの安定版を保守する意義 / Why we maintain stable versions of Ruby?
unak
0
110
PIXIV TECH FES. short session / What kind of contribution to OSS is really pleased?
unak
0
2k
Internal of the image processing required on the developing of web applications
unak
5
5k
Schrödinger's branch, or Ruby is dead every year
unak
0
690
talk about IO
unak
4
1.8k
Other Decks in Technology
See All in Technology
役員・マネージャー・著者・エンジニアそれぞれの立場から見たAWS認定資格
nrinetcom
PRO
4
6.4k
リクルートのエンジニア組織を下支えする 新卒の育成の仕組み
recruitengineers
PRO
1
120
エンジニアリング価値を黒字化する バリューベース戦略を用いた 技術戦略策定の道のり
kzkmaeda
7
3k
AIエージェント元年@日本生成AIユーザ会
shukob
1
230
JavaにおけるNull非許容性
skrb
2
2.7k
偏光画像処理ライブラリを作った話
elerac
1
180
Snowflake ML モデルを dbt データパイプラインに組み込む
estie
0
110
Visualize, Visualize, Visualize and rclone
tomoaki0705
9
83k
AIエージェント開発のノウハウと課題
pharma_x_tech
5
3.6k
Potential EM 制度を始めた理由、そして2年後にやめた理由 - EMConf JP 2025
hoyo
2
2.8k
Snowflakeの開発・運用コストをApache Icebergで効率化しよう!~機能と活用例のご紹介~
sagara
1
490
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
19k
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Music & Morning Musume
bryan
46
6.4k
A Tale of Four Properties
chriscoyier
158
23k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Producing Creativity
orderedlist
PRO
344
40k
Agile that works and the tools we love
rasmusluckow
328
21k
Facilitating Awesome Meetings
lara
52
6.2k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
52k
Code Reviewing Like a Champion
maltzj
521
39k
Transcript
Windowsにおける Rubyのエンコーディングの話 Ruby3版 pixiv Inc. @Ruby3さみっと 2020.4.17
2 自己紹介 • Rubyのコミッタ ◦ Windows ◦ 安定版(今は2.6と2.5) ▪ 古いRubyを殺す係
• おしごとは画像変換・配信の仕組みを作ること
3 Ruby3でWindows版の エンコーディングが どうなるか 今日のお話
4 Ruby3では 全部UTF-8にするぞ! 結論
5 おしまい
6 ……これだけ、というのは あまりにもあんまりなので、 どういう話なのか一応解説
7 CodePage 背景
8 MS-DOS(知ってる?) 背景
9 MS-DOS由来 : OEM CodePage 古き良きコンソール画面用 ハードウェアに依存 背景
10 16bit Windows由来 : ANSI CodePage グラフィカル画面用 ソフトウェア的に表示 背景
11 32bit Windows由来 : UTF-16LE (※CodePageではないが) WindowsのAPI(いわゆるW版) 背景
12 ファイルシステムのエンコーディング MS-DOS時代からの資産を継承 → OEM CodePage 背景
13 I/Oのエンコーディング WindowsのAPI(いわゆるA版) → ANSI CodePage 背景
14 Ruby 1.8まで ANSI CodePageベース OEM CodePageとの違いは無視 Rubyでは?
15 Ruby 1.9から 多言語化の仕組みが入った 互換性を保つため、Windowsでは、 ・I/OはANSI CodePage ・ファイルシステムはOEM CodePage Rubyでは?
16 Ruby 2.0から スクリプトのエンコーディングの デフォルトがUTF-8になった Rubyでは?
17 結果、どうなったか? → ANSI CP、OEM CP、UTF-8が 入り乱れた状態 Rubyでは?
18 「全部UTF-8に統一しろよ!」 いや、わかる、わかるんだが、 今までのコード資産を守るために 互換性を保たないと…… Rubyでは?
19 202X、殺伐としたRuby界に 颯爽とRuby3が!!! → メジャーバージョン上がるなら 互換性壊しても、いいよね? Rubyでは?
20 Ruby3では 全部UTF-8にするぞ! 結論
21 今度こそ おしまい