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
いまさら始める(vimmerのための)Emacs
Search
eniehack
September 05, 2021
Technology
0
280
いまさら始める(vimmerのための)Emacs
電算部老人会 #1 (2021.09.05)で発表したスライド。
Meta = Altである話をすっぽかしてたことに気がついたorz……。
eniehack
September 05, 2021
Tweet
Share
More Decks by eniehack
See All by eniehack
大学の自販機を一覧できる地図サイトを作ってみた.pdf
eniehack
0
150
Crystalはいいぞ
eniehack
0
140
Other Decks in Technology
See All in Technology
ハノーバーメッセ2025座談会.pdf
iotcomjpadmin
0
160
AWS テクニカルサポートとエンドカスタマーの中間地点から見えるより良いサポートの活用方法
kazzpapa3
2
540
A2Aのクライアントを自作する
rynsuke
1
170
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
200
強化されたAmazon Location Serviceによる新機能と開発者体験
dayjournal
2
210
Javaで作る RAGを活用した Q&Aアプリケーション
recruitengineers
PRO
1
110
第9回情シス転職ミートアップ_テックタッチ株式会社
forester3003
0
230
MySQL5.6から8.4へ 戦いの記録
kyoshidaxx
1
200
~宇宙最速~2025年AWS Summit レポート
satodesu
1
1.8k
Welcome to the LLM Club
koic
0
170
Yamla: Rustでつくるリアルタイム性を追求した機械学習基盤 / Yamla: A Rust-Based Machine Learning Platform Pursuing Real-Time Capabilities
lycorptech_jp
PRO
3
120
Claude Code Actionを使ったコード品質改善の取り組み
potix2
PRO
6
2.2k
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Adopting Sorbet at Scale
ufuk
77
9.4k
Visualization
eitanlees
146
16k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
5
210
Docker and Python
trallard
44
3.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.8k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Transcript
いまさら始める (vimmerのための)Emacs 電算部老人会 #1 2021/09/05 Nakaya
近況 • 大学合格しました • デザイン実験で4bitCPUを作っています • 卒研の進捗は……。 • 日記を書いています→eniehack.hatenablog.com •
工華祭でFM放送局をやる……かも……? • phpでblogサービスを作っています • NimとLuaでノベルゲームエンジン開発中
卒研 • アウトラインプロセッサの制作 – 箇条書きで文章の概形を書いてから、細部の書いて ゆく – 文章を階層構造で
ところで
Q. 使っているエディタは? • メモ帳 • (Neo)Vim • Emacs • VSCode
• Atom • Sublime Text
私はEmacsを使っています
org-mode • 著名なMinor modeの1つ • プレインテキストで – TODOリスト – Read
it laterリスト(like Pocket) – 文章を書く • アウトラインプロセッサ – 表計算(?! アイコン: https://simple-icon.org
org-modeの機能 • 文書のエクスポート先が豊富 – HTML、ODT、Markdown、PDF、 LaTeX、Beamer…… • LaTeX埋め込み可 • 文書内のソースコードを実行可
• 文芸的プログラミングができる
emacs用語 • Buffer: ソースファイルを編集する場所 • Window: frameのペイン • Frame: ウインドウ
• Minibuffer: 一番下のコマンドを入力する場所
Minibuffer Modeline window buffer Window buffer Modeline
mode Minor mode Major mode Major mode Major mode ………
アイコン: https://simple-icon.org
mode • Major mode – 言語、拡張子、バッファ(タブ相当?)ごと – バッファ1つに対し1つのみ – Cpp-mode、org-mode、ruby-mode……
• Minor mode – 1つのバッファに複数使用可 – ddskk(入力メソッド)、ivy/helm(minibuffer補完)、company(補完)……
Emacsを使いたい でも、キーバインドはvimがいい
Evilがある • Extensible VI Layer • Emacsにはvi/vim派を受け入れられる心の広さ がある – vimにはない
画像はGitHubから (https://github.com/emacs-evil/evil)
Q. Emacsは遅い? • daemonを起動しておくと、すぐ起動する – daemonなし(doom emacs): 4s – daemonあり:
1s以下 • Emacs Lispをバイトコンパイルしておく
Emacsだって近代的だもん! • LSP • イカすテーマ
LSP • Language Server Protocol • 補完とかLintとかエラーとか • lspmode •
Eglot
Q.設定が面倒? • スターターキットがある – Spacemacs – Doom Emacs – Scimax
Spacemacs • 元祖vimmerのためのEmacsフレーバー • layerごとに有効無効の設定する • 拡張性はいまいち……
Doom Emacs • ~/.emacs.dにインストール ~/.doom.dに設定を記述 • spacemacsより拡張性がある • Emacs Lispのバイトコンパイルを念頭に置いている
• DSLで必要な機能を直感的に選択可
None
None
Emacsにあるもの • ゲーム • Eliza • Twitter Client
Emacsはゲームセンターだった?! • Tetris • Gomoku