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
300
いまさら始める(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
170
Crystalはいいぞ
eniehack
0
150
Other Decks in Technology
See All in Technology
「全員プロダクトマネージャー」を実現する、Cursorによる仕様検討の自動運転
applism118
21
11k
実践!カスタムインストラクション&スラッシュコマンド
puku0x
0
400
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
9
73k
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
220
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
410
BPaaSにおける人と協働する前提のAIエージェント-AWS登壇資料
kentarofujii
0
140
KotlinConf 2025_イベントレポート
sony
1
140
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
4
570
現場で効くClaude Code ─ 最新動向と企業導入
takaakikakei
1
250
Rustから学ぶ 非同期処理の仕組み
skanehira
1
140
OCI Oracle Database Services新機能アップデート(2025/06-2025/08)
oracle4engineer
PRO
0
150
Automating Web Accessibility Testing with AI Agents
maminami373
0
1.3k
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Visualization
eitanlees
148
16k
A Tale of Four Properties
chriscoyier
160
23k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
840
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Into the Great Unknown - MozCon
thekraken
40
2k
It's Worth the Effort
3n
187
28k
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