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.9k
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
280
Coding Challenge Advent of Code 2019
ma2gedev
0
130
Developer Experience in GraphQL Schema-first Development
ma2gedev
0
2.2k
Dependency Inversion Principle in Keyboard Firmware
ma2gedev
0
480
OSSの歩き方 / Walking with OSS
ma2gedev
10
2.6k
GraphQL 開発で必要になったこと / What we needed for GraphQL development
ma2gedev
0
1.2k
キーボードをカスタムしてプログラミング環境を良くした話 / 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
プロダクト志向なエンジニアがもう一歩先の価値を目指すために意識したこと
nealle
0
120
GraphRAGの仕組みまるわかり
tosuri13
8
510
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
2
700
地方に住むエンジニアの残酷な現実とキャリア論
ichimichi
5
1.5k
今ならAmazon ECSのサービス間通信をどう選ぶか / Selection of ECS Interservice Communication 2025
tkikuc
20
3.8k
Google Agent Development Kit でLINE Botを作ってみた
ymd65536
2
210
Quand Symfony, ApiPlatform, OpenAI et LangChain s'allient pour exploiter vos PDF : de la théorie à la production…
ahmedbhs123
0
120
Hypervel - A Coroutine Framework for Laravel Artisans
albertcht
1
110
dbt民主化とLLMによる開発ブースト ~ AI Readyな分析サイクルを目指して ~
yoshyum
2
240
CursorはMCPを使った方が良いぞ
taigakono
1
210
新メンバーも今日から大活躍!SREが支えるスケールし続ける組織のオンボーディング
honmarkhunt
1
330
ruby.wasmで多人数リアルタイム通信ゲームを作ろう
lnit
2
330
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
140
7k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
60k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Facilitating Awesome Meetings
lara
54
6.4k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Building an army of robots
kneath
306
45k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
940
How to train your dragon (web standard)
notwaldorf
94
6.1k
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