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 - COSCUP 2012
Search
Kan-Ru Chen
August 19, 2012
Technology
1
90
Emacs - COSCUP 2012
Kan-Ru Chen
August 19, 2012
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
480
Emacs 從入門到進階
kanru
2
300
Android Boot Time Optimization
kanru
0
500
Android 2.3 Introduction
kanru
0
71
0xlab's Perspective on Android System Development
kanru
0
58
Other Decks in Technology
See All in Technology
dbt開発 with Claude Codeのためのガードレール設計
10xinc
2
1.2k
AWSを利用する上で知っておきたい名前解決のはなし(10分版)
nagisa53
10
3.1k
slog.Handlerのよくある実装ミス
sakiengineer
4
160
まずはマネコンでちゃちゃっと作ってから、それをCDKにしてみよか。
yamada_r
2
110
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
4
570
ハードウェアとソフトウェアをつなぐ全てを内製している企業の E2E テストの作り方 / How to create E2E tests for a company that builds everything connecting hardware and software in-house
bitkey
PRO
1
150
La gouvernance territoriale des données grâce à la plateforme Terreze
bluehats
0
180
はじめてのOSS開発からみえたGo言語の強み
shibukazu
1
170
生成AI時代のデータ基盤設計〜ペースレイヤリングで実現する高速開発と持続性〜 / Levtech Meetup_Session_2
sansan_randd
1
150
MCPで変わる Amebaデザインシステム「Spindle」の開発
spindle
PRO
3
3.3k
スマートファクトリーの第一歩 〜AWSマネージドサービスで 実現する予知保全と生成AI活用まで
ganota
2
220
S3アクセス制御の設計ポイント
tommy0124
3
200
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
It's Worth the Effort
3n
187
28k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Bash Introduction
62gerente
615
210k
Navigating Team Friction
lara
189
15k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Transcript
A Introduction
A Introduction Emacs
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
Brief History 簡明歷史
起源 TECO
EditorMACroS in TECO TECMAC & TMACS
第一個使用 LISP 的 Emacs Multics Emacs & EINE
首次公開 GNU Emacs 13.0?
http://www.jwz.org/doc/emacs-timeline.html Emacs Timeline
如何取得? Get Emacs
apt-get install emacs
Bleeding edge! bzr://bzr.savannah.gnu.org/emacs/trunk
http://alpha.gnu.org/gnu/emacs/windows Windows?
Jargons 術語
模式 -*- mode: C++ -*-
Control + <key> C-<key>
Meta + <key> M-<key>
Alt + <key> M-<key>
Control + x Control + c C-x C-c
程式外框 Frame
None
分割視窗 Window
None
Buffer
None
Minibuffer
None
Region
Editing Commands 編輯指令
-- anonymous Escape-Meta-Alt-Control-Shift
逃生鍵 C-g
塊陶阿 C-g C-g C-g
離開 C-x C-c
開檔 C-x C-f
上下左右 C-{p,n,b,f}
刪除 C-k
行頭 C-a
行尾 C-e
刪除一行 C-a C-k
各有功用 C-[a-z]
執行指令 M-x
視窗操作 Window Operations
split-window-below C-x 2
split-window-right C-x 3
delete-window C-x 0
delete-other-windows C-x 1
other-window C-x o
Help System 強大的說明輔助系統
C-h t Tutorial
取得各種說明 C-h <key>
說明 C-h C-h ?
按鍵資訊 C-h k <key>
變數資訊 C-h v
函數資訊 C-h f
Info 系統 C-h i
取得各種資訊 M-x describe-*
Easy Customization 簡易設定法
進入設定模式 M-x customize
進入分類設定模式 M-x customize-group
進入主題設定模式 M-x customize-themes
使用者設定檔 ~/.emacs
亂中有序直到有一天... .emacs bankruptcy
新・使用者設定檔 ~/.emacs.d/init.el
省錢收納小技巧 (誤) http://github.com/kanru/.emacs.d
安裝更多擴充套件 Install More Extensions
M-x list-packages ELPA
http://marmalade-repo.org/ ELPA
http://melpa.milkbox.net/ ELPA
https://github.com/dimitri/el-get el-get
2163 find el-get/recipes|wc -l
Emacs Lisp Intro. ELisp 簡介
必讀 GNU Emacs Lisp Reference Manual
來塗鴉吧! *scratch*
互動式程式設計 M-x ielm
(+ 1 2 3) => 6 (<op> <a1> <a2> ...
<aN>)
定義函式 (defun hello () "Hello World!")
M-x hello (defun hello () (interactive) (message "Hello"))
M-x hello (defun hello (who) (interactive "sSay hello to: ")
(message "Hello %s" who))
C-h v hello-times (defvar hello-times 0 "Said how many times?")
M-x customize-group uuid (defcustom uuid-interface "eth0" "The default interface" :type
'string :group 'uuid)
(add-hook HOOK FUNCTION)
(defadvice FUNCTION ARGS &rest BODY)
(require '<feature>) (provide '<feature>)
Misc Tips 小技巧
$ emacsclient <file> M-x server-start
回報問題 Bug Report
http://debbugs.gnu.org/cgi/pkgreport.cgi?package=emacs M-x report-emacs-bug
Community Resources 社群資源
http://www.emacswiki.org/ EmacsWiki
http://planet.emacsen.org/ Planet Emacsen
http://news.gmane.org/index.php?prefix=gmane.emacs Mailing Lists
#emacs{.tw} @ freenode IRC
Q & A