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 從入門到進階
Search
Kan-Ru Chen
August 03, 2013
Technology
2
300
Emacs 從入門到進階
COSCUP 2013 的 Emacs 社群議程介紹如何從各種角度自訂 Emacs
Kan-Ru Chen
August 03, 2013
Tweet
Share
More Decks by Kan-Ru Chen
See All by Kan-Ru Chen
Rust Introduction @ Rust Meetup Taipei #1
kanru
0
110
Rust @ OSDC.tw 2014
kanru
5
470
Emacs - COSCUP 2012
kanru
1
86
Android Boot Time Optimization
kanru
0
440
Android 2.3 Introduction
kanru
0
58
0xlab's Perspective on Android System Development
kanru
0
55
Other Decks in Technology
See All in Technology
プロダクト開発、インフラ、コーポレート、そしてAIとの共通言語としての Terraform / Terraform as a Common Language for Product Development, Infrastructure, Corporate Engineering, and AI
yuyatakeyama
6
1.6k
顧客の声を集めて活かすリクルートPdMのVoC活用事例を徹底解剖!〜プロデザ!〜
recruitengineers
PRO
0
200
ココナラのセキュリティ組織の体制・役割・今後目指す世界
coconala_engineer
0
220
extensionとschema
yahonda
1
100
Postman Vaultを使った秘密情報の安全な管理
nagix
3
130
[2024年10月版] Notebook 2.0のご紹介 / Notebook2.0
databricksjapan
0
1.6k
マルチデータプロダクト開発・運用に耐えるためのデータ組織・アーキテクチャの遷移
mtpooh
0
110
Agentic AI時代のプロダクトマネジメントことはじめ〜仮説検証編〜
masakazu178
3
400
信頼性を支えるテレメトリーパイプラインの構築 / Building Telemetry Pipeline with OpenTelemetry
ymotongpoo
9
5k
Grid表示のレイアウトで Flow layoutsを使う
cffyoha
1
150
トレードオフスライダーにおける品質について考えてみた
suzuki_tada
3
180
re:Invent Recap (January 2025)
scalefactory
0
340
Featured
See All Featured
How GitHub (no longer) Works
holman
312
140k
Bash Introduction
62gerente
610
210k
BBQ
matthewcrist
85
9.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
51k
Navigating Team Friction
lara
183
15k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
The Invisible Side of Design
smashingmag
299
50k
Being A Developer After 40
akosma
89
590k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Building an army of robots
kneath
302
45k
Transcript
Emacs 從入門到進階 COSCUP 2013
about:kanru a Debian Developer in Mozilla Vim 5+ yr Emacs
5+ yr
[email protected]
This work is licensed under the Creative Commons Attribution-ShareAlike 3.0
Unported License. To view a copy of this license, visit http://creativecommons. org/licenses/by-sa/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. about:license
Agenda Emacs 編輯器以其容易擴充的特性見長,本次將 介紹如何從不同的角度,用不同的方法來擴充 Emacs。從最簡單的使用內建 Customization 界 面,到安裝第三方的套件,到使用 advice 的方式
來擴充原有的功能,到自己自訂不同的編輯器 「模式」。本講假設聽眾皆有基礎的 Emacs 操作 能力,將不介紹如何使用 Emacs。
GNU Emacs 24.3 Latest stable release
Customization 超省力設定 Emacs
M-x customize
Themes
M-x customize-themes
M-x customize-create-theme
Packages
M-x list-packages
ELPA • GNU ELPA ◦ http://elpa.gnu.org • MELPA ◦ http://melpa.milkbox.net
• Marmalade ◦ http://marmalade-repo.org
Keyboard Macros
Demo
Advices
:before :around :after (defvar simple-user) (defvar simple-password) (defun simple-login ()
(interactive) (message "login with %s:%s" simple-user simple-password)) ;; no hooks ;; plain text password
defadvice Place your extension anywhere before, after and around the
target function.
:before :around :after (defadvice simple-login (before logging-before activate) (when (y-or-n-p
"Run simple login hooks") (run-hooks 'simple-login-hook))) (defadvice simple-login (around login-read-pw activate) (let ((simple-user "somebody") (simple-password "1234")) ad-do-it))
Modes
define-minor-mode
define-minor-mode (define-minor-mode highlight-fixme-mode "Highlight the document string like FIXME, XXX
and TODO in code." nil nil nil (let ((keywords '(("\\<\\(FIX\\|TODO\\|FIXME\\|HACK\\|REFACTOR\\|XXX\\)\\>" 1 font-lock-warning-face t)))) (if highlight-fixme-mode (font-lock-add-keywords nil keywords) (font-lock-remove-keywords nil keywords))))
define-dervied-mode
define-generic-mode
define-minor-mode (define-generic-mode my-js-mode '("//" ("/*" . "*/")) '("function" "alert" "return")
nil nil nil)
http://kanru.info/misc/ipdl-mode.el 擴充 cc-mode
Debugging
EDebug
Q & A
Emacs 從入門到進階 大家來學 VIM COSCUP 2014