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
Emacsは便利なんだけど、もっと便利にしたいのでpackageを書いてみた件
Search
Taiju Aoki
May 08, 2019
Programming
5
2.7k
Emacsは便利なんだけど、もっと便利にしたいのでpackageを書いてみた件
Slide for 東京Emacs勉強会 端午の節句
https://tokyo-emacs.connpass.com/event/128038/
Taiju Aoki
May 08, 2019
Tweet
Share
More Decks by Taiju Aoki
See All by Taiju Aoki
本番運用中 Oracle を破壊してしまった話 ~ 破壊と創世 ~ / Oracle Destruction and Creation
blue0513
0
2.8k
オンプレ to オンプレした話/on-premises2on-premises
blue0513
0
2.8k
GitもCIもテストもないプロジェクトでデプロイを自動化するまでの道 / rebuild of DevOps
blue0513
0
3k
Git & GitLab & コードレビューって? / about Git, GitLab, CodeReview
blue0513
0
200
ElectronでSlackをさらに便利にしちゃう / Slack with Electron
blue0513
3
770
GitHub の README をいい感じにする / Cool Readme
blue0513
3
1.6k
Emacs × Sound やってみた / Emacs with Sound
blue0513
1
940
Slack を TweetDeck にしてみた件 / slackdeck-proto
blue0513
0
2.8k
知ってるとお得な iTerm2 と zsh/bash の小技
blue0513
2
770
Other Decks in Programming
See All in Programming
Kaigi on Rails 2024 - Rails APIモードのためのシンプルで効果的なCSRF対策 / kaigionrails-2024-csrf
corocn
5
3.7k
Content Security Policy入門 セキュリティ設定と 違反レポートのはじめ方 / Introduction to Content Security Policy Getting Started with Security Configuration and Violation Reporting
uskey512
1
470
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
satoshi256kbyte
5
410
Amazon Qを使ってIaCを触ろう!
maruto
0
350
Kubernetes for Data Engineers: Building Scalable, Reliable Data Pipelines
sucitw
1
210
PLoP 2024: The evolution of the microservice architecture pattern language
cer
PRO
0
2.2k
Pinia Colada が実現するスマートな非同期処理
naokihaba
4
200
Generative AI Use Cases JP (略称:GenU)奮闘記
hideg
0
180
Server Driven Compose With Firebase
skydoves
0
430
Macとオーディオ再生 2024/11/02
yusukeito
0
300
カラム追加で増えるActiveRecordのメモリサイズ イメージできますか?
asayamakk
4
1.9k
詳細解説! ArrayListの仕組みと実装
yujisoftware
0
530
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
222
8.9k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
15
2k
It's Worth the Effort
3n
183
27k
Writing Fast Ruby
sferik
627
61k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Embracing the Ebb and Flow
colly
84
4.5k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
46
2.1k
Measuring & Analyzing Core Web Vitals
bluesmoon
2
69
Fireside Chat
paigeccino
33
3k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Building Applications with DynamoDB
mza
90
6.1k
RailsConf 2023
tenderlove
29
890
Transcript
Emacs ศརͳΜ͚ͩͲɺ ͬͱศརʹ͍ͨ͠ͷͰ package Λॻ͍ͯΈͨ݅ @blue_1617
ࢲ୭ʁ ‣ ࡞ͬͨ package ͕ Reddit Ͱհ͞Εͨ blue (@blue_1617) https://blue0513.github.io/show_room/
‣ ivy-posframe ͷ collaborator ʹͳͬͨ 2 ࠷ۙͷ Emacs ͳ׆ಈ ‣ Ϋʔϧͳ Emacs PackageʢԶతʣ20 બ https://speakerdeck.com/blue0513 ‣ SpeakerDeck ‣ Qiita ‣ Emacs ͰաڈͷΧʔιϧҐஔΛهԱɾӾཡɾબɾҠಈ͢Δ ‣ Emacs Ͱྨޠม໊ͷީิΛαοͱௐΔ https://qiita.com/blue0513 ‣ GitHub https://github.com/blue0513 ‣ phantom-inline-comment ‣ point-history
͜ͷൃදԿʁ 3 ޕͷઅ۟ : உࢠͷ݈͔ͳΛفئ͢Δ ..... ͱ͍͏͜ͱʁ
͜ͷൃදԿʁ 4 ޕͷઅ۟ : உࢠͷ݈͔ͳΛفئ͢Δ զ͕ Emacs ͷ ݈͔ͳʂʂʂ
͜ͷൃදԿʁ 5 Emacs ศརͳΜ͚ͩͲɺ ͬͱศརʹ͍ͨ͠ͷͰ package Λॻ͍ͯΈͨ݅ Emacs ͷɺͱ͍͏͜ͱͰ...... ͡·ΔΑʂ
ʢGitHub Ͱ Star ͯ͘͠ΕΔͱٽ͍ͯتͼ·͢ʣ
No. 1
ͬͱݟͯΔWindowʹूத͍ͨ͠ʂ
Why? : ͬͱݟͯΔWindowʹूத͍ͨ͠ʂ 8 ׂͯ͠Δͱ 1 window ͕খ͍͞....
ैདྷ : ͬͱݟͯΔWindowʹूத͍ͨ͠ʂ 9 ϑΥʔΧε͞Εͨ window Λେ͖ͯ͘͠ɺίʔυͷҰཡੑΛߴΊΔ ‣ zoom ‣
golden-ratio https://github.com/cyrus-and/zoom https://github.com/roman/golden-ratio.el ʮ͍͍ײ͡ͷαΠζʯʮࣗಈͰʯ֦େ͢Δ package
ͬͱେ͖ͯ͘͠ݟ͍ͨ͘͢͠ͳ.....
ͬͱݟͯΔWindowʹूத͍ͨ͠ʂ ͬͱ ࡞ͬͯΈͨ
ͬͱʢͬͱʣݟͯΔWindowʹूத͍ͨ͠ʂ 12 ʮ࠷େαΠζʯʮ͖ͳλΠϛϯάͰʯ֦େ͢Δ package Λ࡞ͬͨ ‣ instant-maximized-window https://github.com/blue0513/instant-maximized-window
ͬͱʢͬͱʣݟͯΔWindowʹूத͍ͨ͠ʂ 13 1. ΊͬͪΌେ͖͘Ͱ͖Δ 2. ͖ͳ࣌ʹ֦େͰ͖Δ 3. ϑΥʔΧε͕֎ΕΔͱࣗಈղআ͞ΕΔ ར
No. 2
ͬͱίʔυϦʔυͰϝϞ͍ͨ͠ʂ
Why? : ͬͱίʔυϦʔυͰϝϞ͍ͨ͠ 16 ίʔυϦʔσΟϯάதʹϝϞ͢ΔͱࠩͰͪΌ͏......
ैདྷ : ͬͱίʔυϦʔυͰϝϞ͍ͨ͠ 17 annotation ΛຒΊࠐΜͰɺϝϞΛͱΔ ‣ annotate.el ‣ bm
https://github.com/bastibe/annotate.el https://github.com/joodland/bm ʮίʔυͷ֎ଆʯʹʮࠩͱͯ͠ѻΘΕͳ͍ʯϝϞΛهड़͢Δ package
1. ͬͱίʔυͷۙ͘ʹϝϞऔΓ͍ͨͳ..... 2. ෳߦͷϝϞ ΛऔΓ͍ͨͳ.....
ͱ͍͏͔ɺͦΕҎલʹ ࣗલͰ࣮ͯ͠Έ͍ͨͳ
ͬͱίʔυϦʔυͰϝϞ͍ͨ͠ʂ ͬͱ ࡞ͬͯΈͨ
ͬͱʢͬͱʣίʔυϦʔυͰϝϞ͍ͨ͠ 21 ίʔυԼʹෳߦͷϝϞΛ͔͚Δ package Λ࡞ͬͨ ‣ phantom-inline-comment https://github.com/blue0513/phantom-inline-comment
ͬͱʢͬͱʣίʔυϦʔυͰϝϞ͍ͨ͠ 22 1. ίʔυͷͦʹʢίʔυΛԚͣ͞ʣίϝϯτͰ͖Δ 2. ෳߦͷίϝϯτΛॻ͚Δ 3. ίϝϯτͷ Hide/Show ΛΓସ͑ΒΕΔ
ίϝϯτͷҰཡදࣔɺίϝϯτͷӬଓԽରԠͨ͠ ར
ͬͱʢͬͱʣίʔυϦʔυͰϝϞ͍ͨ͠ 23 ΊͬͪΌخ͍͠ Reddit Ͱհͯ͘͠ΕͯΔਓʂ Star ૿͑ͨʂ https://www.reddit.com/r/emacs/comments/bgpffw/phantom_inline_comment_add_inline_comments_that/
No. 3
ͬͱΧʔιϧҠಈΛָ͍ͨ͠ʂ
Why? : ͬͱΧʔιϧҠಈΛָ͍ͨ͠ʂ 26 ΧʔιϧΛతͷҐஔ·ͰҠಈͤ͞Δͷ͕໘.....
ैདྷ : ͬͱΧʔιϧҠಈΛָ͍ͨ͠ʂ 27 ΧʔιϧҠಈΛߴԽͯ͠ɺίʔσΟϯάΛޮԽ͢Δ ‣ ace-jump ‣ avy https://github.com/winterTTr/ace-jump-mode
https://github.com/abo-abo/avy දࣔ͞Εͨώϯτʹδϟϯϓ͢Δ `kf` ΛλΠϓͯ͠δϟϯϓ
ैདྷ : ͬͱΧʔιϧҠಈΛָ͍ͨ͠ʂ 28 ΧʔιϧҠಈΛߴԽͯ͠ɺίʔσΟϯάΛޮԽ͢Δ ‣ point-undo ‣ jump-back! https://www.emacswiki.org/emacs/point-undo.el
https://qiita.com/zk_phi/items/c145b7bd8077b8a0f537 ΧʔιϧΛݩ͍ͨʢݱࡏͷbufferͷʣҐஔʹ͢ C-f undo
1. ҧ͏buffer·Ͱundo͍ͨ͠ͳ...... 2. undo͢ΔॴࣗͰબͼ͍ͨͳ......
ͬͱΧʔιϧҠಈΛָ͍ͨ͠ʂ ͬͱ ࡞ͬͯΈͨ
ͬͱʢͬͱʣΧʔιϧҠಈΛָ͍ͨ͠ʂ 31 ҠಈཤྺΛදࣔͯ͠ϓϨϏϡʔ & δϟϯϓ͢Δ package Λ࡞ͬͨ ‣ point-history https://github.com/blue0513/point-history
ͬͱʢͬͱʣΧʔιϧҠಈΛָ͍ͨ͠ʂ 32 1. ҧ͏bufferʹΕΔ 2. ΔॴΛબͰ͖Δ
ͬͱʢͬͱʣΧʔιϧҠಈΛָ͍ͨ͠ʂ 33 3. ࣄલʹϓϨϏϡʔදࣔͰ͖Δ
ͬͱʢͬͱʣΧʔιϧҠಈΛָ͍ͨ͠ʂ 34 https://github.com/SuzumiyaAoba/ivy-point-history ivy ରԠͷ Extension Λॻ͍ͯ͘ΕͯΔਓʂ ΊͬͪΌخ͍͠
·ͱΊ
;Γ͔͑Γ 36 ʮ࠷େαΠζʯʮ͖ͳλΠϛϯάͰʯ֦େ͢Δ package Λ࡞ͬͨ ‣ instant-maximized-window https://github.com/blue0513/instant-maximized-window ҠಈཤྺΛදࣔͯ͠ϓϨϏϡʔ &
δϟϯϓ͢Δ package Λ࡞ͬͨ ‣ point-history https://github.com/blue0513/point-history ίʔυԼʹෳߦͷϝϞΛ͔͚Δ package Λ࡞ͬͨ ‣ phantom-inline-comment https://github.com/blue0513/phantom-inline-comment
࠷ޙʹ ‣ Emacs ·ͩ·ͩศརʹͰ͖Δ ‣ ίʔσΟϯάͰײͨ͡ෆຬɺ࣮ Emacs ΛڧԽ͢Εղܾʁ ‣ ղܾΛॿ͚ͯ͘ΕΔ
package Ͳ͔͜ʹ͋Δ 37 ‣ Ͱ͖Δʂpackage ࡞Γʂ ‣ MELPA Ͱͳ͘ GitHub Ͱެ։͢ΔͷOK ‣ ެ։͞Ε͍ͯΔ repository ʹ PR ΛૹΔͷOK ‣ ެ։͞Ε͍ͯΔ repository ʹ issue ΛཱͯΔͷOK ‣ ܅͚ͩͷ package Λ࡞ͯ͠܅͚ͩͷ Emacs Λʂ ‣ ͦΕͰͳ͚Εʮ࡞Ε͍͍ΜͰʯͷਫ਼ਆ