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
Make it easy to input `|>`
Search
Takayuki Matsubara
November 01, 2017
Programming
2
2.8k
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
Tweet
Share
More Decks by Takayuki Matsubara
See All by Takayuki Matsubara
Rails Web Development with AWS Lambda
ma2gedev
0
260
Coding Challenge Advent of Code 2019
ma2gedev
0
120
Developer Experience in GraphQL Schema-first Development
ma2gedev
0
2.2k
Dependency Inversion Principle in Keyboard Firmware
ma2gedev
0
460
OSSの歩き方 / Walking with OSS
ma2gedev
10
2.5k
GraphQL 開発で必要になったこと / What we needed for GraphQL development
ma2gedev
0
1.1k
キーボードをカスタムしてプログラミング環境を良くした話 / Improved programming environment with customizing keybords
ma2gedev
0
1.3k
Translating "Erlang in Anger" with Erlang & Elixir community members
ma2gedev
0
2.8k
Dive into Elixir v1.6 Code Formatter
ma2gedev
1
170
Other Decks in Programming
See All in Programming
安全に倒し切るリリースをするために:15年来レガシーシステムのフルリプレイス挑戦記
sakuraikotone
5
2.7k
Compose Hot Reload is here, stop re-launching your apps! (Android Makers 2025)
zsmb
1
450
Rollupのビルド時間高速化によるプレビュー表示速度改善とバンドラとASTを駆使したプロダクト開発の難しさ
plaidtech
PRO
1
160
英語 × の私が、生成AIの力を借りて、OSSに初コントリビュートした話
personabb
0
170
Fluent UI Blazor 5 (alpha)の紹介
tomokusaba
0
170
生成AIを使ったQAアプリケーションの作成 - ハンズオン補足資料
oracle4engineer
PRO
3
160
AIコーディングワークフローの試行 〜AIエージェント×ワークフローでの自動化を目指して〜
rkaga
2
3k
AI Coding Agent Enablement - エージェントを自走させよう
yukukotani
13
5.6k
Defying Front-End Inertia: Inertia.js on Rails
skryukov
0
440
コンテナでLambdaをデプロイするときに知っておきたかったこと
_takahash
0
170
Signal-Based Data FetchingWith the New httpResource
manfredsteyer
PRO
0
160
Django for Data Science (Boston Python Meetup, March 2025)
wsvincent
0
310
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
223
9.6k
Building a Modern Day E-commerce SEO Strategy
aleyda
39
7.2k
The Cost Of JavaScript in 2023
addyosmani
48
7.6k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
The Invisible Side of Design
smashingmag
299
50k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Thoughts on Productivity
jonyablonski
69
4.6k
A Modern Web Designer's Workflow
chriscoyier
693
190k
The World Runs on Bad Software
bkeepers
PRO
67
11k
For a Future-Friendly Web
brad_frost
176
9.7k
Docker and Python
trallard
44
3.3k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.3k
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 git@github.com: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