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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Taiju Aoki
May 08, 2019
Programming
3k
5
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Emacsは便利なんだけど、もっと便利にしたいのでpackageを書いてみた件
Slide for 東京Emacs勉強会 端午の節句
https://tokyo-emacs.connpass.com/event/128038/
Taiju Aoki
May 08, 2019
More Decks by Taiju Aoki
See All by Taiju Aoki
本番運用中 Oracle を破壊してしまった話 ~ 破壊と創世 ~ / Oracle Destruction and Creation
blue0513
0
3.2k
オンプレ to オンプレした話/on-premises2on-premises
blue0513
0
3.2k
GitもCIもテストもないプロジェクトでデプロイを自動化するまでの道 / rebuild of DevOps
blue0513
0
3.4k
Git & GitLab & コードレビューって? / about Git, GitLab, CodeReview
blue0513
0
270
ElectronでSlackをさらに便利にしちゃう / Slack with Electron
blue0513
3
920
GitHub の README をいい感じにする / Cool Readme
blue0513
3
1.7k
Emacs × Sound やってみた / Emacs with Sound
blue0513
1
1.1k
Slack を TweetDeck にしてみた件 / slackdeck-proto
blue0513
0
3.1k
知ってるとお得な iTerm2 と zsh/bash の小技
blue0513
3
890
Other Decks in Programming
See All in Programming
PHPだって関数型したい 〜できること、できないこと〜 / fp-in-php
jsoizo
1
250
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
390
鹿野さんに聞く!『TypeScriptコードレシピ集』で磨く実践力
tonkotsuboy_com
4
1.2k
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
16
3.6k
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
1k
Hatena Engineer Seminar #37「言語モデルの活用に関する研究」
slashnephy
0
550
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
110
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
150
AI時代の仕事技芸論〜ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ(スクフェス仙台 2026バージョン)
kuranuki
0
720
FDEが実現するAI駆動経営の現在地
gonta
2
220
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
0
120
AWS CDK を「作」ってみた 〜フルスクラッチで見えた CDK の裏側〜 / aws-cdk-from-scratch
gotok365
3
2.4k
Featured
See All Featured
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Design in an AI World
tapps
1
270
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
72
40k
My Coaching Mixtape
mlcsv
0
180
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
390
Java REST API Framework Comparison - PWX 2021
mraible
34
9.5k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
190
Automating Front-end Workflow
addyosmani
1370
210k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
760
The Limits of Empathy - UXLibs8
cassininazir
1
540
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
180
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 Λʂ ‣ ͦΕͰͳ͚Εʮ࡞Ε͍͍ΜͰʯͷਫ਼ਆ