Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Make it easy to input `|>`
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Takayuki Matsubara
November 01, 2017
Programming
3.1k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Make it easy to input `|>`
M3 Tech Talk #81 2017/11/01 #m3dev
I talked about how to input `|>` with just press one key.
Takayuki Matsubara
November 01, 2017
More Decks by Takayuki Matsubara
See All by Takayuki Matsubara
Rails Web Development with AWS Lambda
ma2gedev
0
370
Coding Challenge Advent of Code 2019
ma2gedev
0
180
Developer Experience in GraphQL Schema-first Development
ma2gedev
0
2.4k
Dependency Inversion Principle in Keyboard Firmware
ma2gedev
0
580
OSSの歩き方 / Walking with OSS
ma2gedev
10
2.7k
GraphQL 開発で必要になったこと / What we needed for GraphQL development
ma2gedev
0
1.3k
キーボードをカスタムしてプログラミング環境を良くした話 / Improved programming environment with customizing keybords
ma2gedev
0
1.4k
Translating "Erlang in Anger" with Erlang & Elixir community members
ma2gedev
0
3k
Dive into Elixir v1.6 Code Formatter
ma2gedev
1
220
Other Decks in Programming
See All in Programming
IBM Bob でAI駆動開発『QC-Playbook』
ichirokano2
0
120
Performance Optimization With LLMs
xleitix
0
180
AIに “答え“を書かせるのを やめてみた
___akari11
0
130
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
510
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
830
複雑なUIコンポーネントとの ⻑い付き合い⽅:波及するバグからテスト戦略を経て、安全な再設計へ
mixplace
0
440
機械に任せるテスト、人が見るテスト ⽣成AIで引き直した、運⽤保守フェーズの線引き
dske104
0
200
Seven New Principles of Software Engineering
yegor256
0
190
Long Living Tokens, Die, Die, Die! (or: The One Ring is Banned in Modern)
sylph01
0
350
golang-bob.pdf
iwatsukayura
0
130
[2026-10-14](C)Re:ゼロから始める異世界生活〜始まりの終わりと終わりの始まり〜
tosite
0
140
ChromeでローカルLLM
ryu1013
0
160
Featured
See All Featured
Facilitating Awesome Meetings
lara
57
7.2k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
580
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
2
2k
SEO for Brand Visibility & Recognition
aleyda
0
4.8k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.2k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Agile that works and the tools we love
rasmusluckow
331
22k
brightonSEO & MeasureFest 2025 - Winning Strategies for Black Friday CRO & PPC - Christian Goodrich
cargoodrich
3
870
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
310
Speed Design
sergeychernyshev
33
2.2k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Transcript
Make it easy to input |>
Who am I? me |> name # Takayuki "Taka" Matsubara
|> job # Software Engineer |> work_at # M3, Inc. |> like # Ruby, Elixir and OSS |> twitter # ma2ge |> github # ma2gedev |> oss # PowerAssertEx, bundle-star, breadcrumble, # chrono_logger, faraday-encoding
Make it easy to input |>
Elixir's |> h"ps:/ /elixir-lang.org/ge2ng-started/enumerables-and-streams.html#the-pipe-operator
Example 1..100_000 |> Enum.map(&(&1 * 3)) |> Enum.filter(odd?) |> Enum.sum
h"ps:/ /elixir-lang.org/ge2ng-started/enumerables-and-streams.html
PROBLEM
Enter twice with Shi, key | and >
|> with 1 key !
ErgoDox
ErgoDox • Keymap is customizable • QMK(firmware) is OSS
None
h"ps:/ /www.massdrop.com/buy/infinity-ergodox
wai$ng... ☕
5 months later
None
! soldering ⾠
None
Finished!!
NEXT
Customize keymaps
h"ps:/ /input.club/configurator/
QMK h"ps:/ /github.com/qmk/qmk_firmware
Prepara&on for change $ git clone
[email protected]
:qmk/qmk_firmware.git $ cd qmk_firmware
$ cp -r keyboards/ergodox_infinity/keymaps/{default,your_own} # you can change keyboards/ergodox_infinity/keymaps/your_own/keymap.c
Add code to action_get_macro func+on // For Elixir pipe operator
case 2: if (record->event.pressed) { SEND_STRING ("|>"); } break; h"ps:/ /github.com/ma2gedev/qmk_firmware/commit/7f8e633f791a035e15ad27fd2584c2f8e248b165
Change KEYMAP array # you can change the place you
want to set KEYMAP(..., M(2), ...) h"ps:/ /github.com/ma2gedev/qmk_firmware/commit/7f8e633f791a035e15ad27fd2584c2f8e248b165
How to flash the firmware? h"ps:/ /github.com/qmk/qmkfirmware/blob/master/keyboards/ergodoxinfinity/readme.md
Completed! press_key |> infinity_ergodox # "|>"
Enjoy! M3 Tech Talk #81 2017/11/01 #m3dev @ma2ge
Resources • Infinity ErgoDox Ergonomic Keyboard Kit | Price &
Reviews | Massdrop h@ps:/ /www.massdrop.com/buy/infinity-ergodox • qmk/qmkfirmware: keyboard controller firmware for Atmel AVR and ARM USB families h=ps://github.com/qmk/qmkfirmware
Resources • Adding SUSHI key to my ErgoDox EZ -
yhara.jp h=p:/ /yhara.jp/ 2017/09/27/qmk-sushi-key • ErgoDox Advent Calendar 2016 - Qiita h=ps:/ /qiita.com/advent- calendar/2016/ergodox • MacbookPro15inchͰInfinityErgodoxʹϑΝʔϜΛম͘ - ਓੜͷՋ௵͠ h=p:/ /hidekingerz.hatenablog.com/entry/ 2017/10/04/231532