Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Pishen's Emacs Journey
Search
Pishen Tsai
July 20, 2018
Programming
160
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Pishen's Emacs Journey
Pishen Tsai
July 20, 2018
More Decks by Pishen Tsai
See All by Pishen Tsai
Introduction to Minitime
pishen
1
190
都什麼時代了,你還在寫 while loop 嗎?
pishen
2
760
Scala + Google Dataflow = Serverless Spark
pishen
6
890
Shapeless Introduction
pishen
2
940
ScalaKitchen
pishen
1
490
sbt-emr-spark
pishen
1
170
My Personal Report of Scala Kansai 2016
pishen
0
440
SBT Basic Concepts
pishen
1
680
annoy4s
pishen
0
120
Other Decks in Programming
See All in Programming
AWS Step Functions 大規模並列の壁を越える / jaws-sonic-2026-niigata-step-functions
kasacchiful
PRO
1
460
変化を抱擁するドキュメントの作り方 - ビジネスルール駆動開発がもたらす、コードとの新しい関係
ioki
2
200
Go のフラットな パッケージに 「ファイル単位の private」を 〜Linter “declscope” を作った話〜
mpyw
0
320
WebMCP Challenge に星空観察アプリで参加した話
okajun35
0
170
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
470
AIを上手に使っていこうとしたら越境せざるを得なくなった話 〜実践1年で見えた境界を越えなければならない理由と進め方〜 / Crossing borders with AI
tomoyakitaura
4
1.2k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
370
AI に Inclusive UI を書かせよう — Design Rules Skill で Compose UI を作り直す
theoriatec2024
1
490
iOSDC Japan 2026 - Swiftで作って学ぼう!データベース自作入門
kaseken
2
160
A2UI for Android: Safely Rendering AI-Generated UI with Jetpack Compose - DroidKaigi 2026
itsmedreamwalker
0
140
XHTMLが残したもの
yosuke_furukawa
PRO
2
800
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
0
280
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.9k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
240
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
520
Testing 201, or: Great Expectations
jmmastey
46
8.3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
420
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.1k
Leo the Paperboy
mayatellez
10
2.3k
Transcript
@pishen's journey
Languages
Editors
Java IDE features type hint auto import auto complete refactoring
debugger Python SQL HTML Markdown YAML General light-weight easy to learn focus on editing Bash Script Edit on server fast edit-and-try cycle
Java IDE features type hint auto import auto complete refactoring
debugger Python SQL HTML Markdown YAML General light-weight easy to learn focus on editing Edit on server fast edit-and-try cycle Different Hot-Keys Fragmented UX Bash Script
IDE features Edit on server Easily extensible Support mouse General
Check email or Browse the web Draw charts ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ WARNING! Highly Subjective
Editor War https://en.wikipedia.org/wiki/Editor_war Editor macros Lisp, C Richard Stallman Since
1976 MIT AI Lab 編輯器之神 魔鬼的編輯器 vi-vi-vi 42 years ago 神的編輯器
Famous Emacs Users Donald Knuth 松本行弘 Mark Zuckerberg https://www.slideshare.net/yukihiro_matz/how-emacs-changed-my-life http://qr.ae/TUINae
heard about Emacs My Editor History 台南一中 台大資工 KKBOX Vpon
AlgoLab IRLab 2007 Scala Days 2015 Yahoo! Taiwan KKTV
Let's start the journey
Installation $ brew cask install emacs $ sudo apt-get install
emacs Latest version: 26.1 (Released on May 28, 2018)
Start $ emacs OR
Exit C-x C-c Ctrl Ctrl X C
Open File C-x C-f
Change Color Theme M-x customize-themes Meta Please make sure that
your terminal can send Meta Key signal. iTerm Terminal Alt Esc OR option
Moving C-f C-b C-e C-a C-p M-v C-n C-v
Caps Lock ➔ Ctrl
ADM-3A
ADM-3A
Erasing println("Hello, Emacs!") DEL C-d C-k
Cancel C-g When you mess up your command, press (several
times) to get back.
Undo C-/ There's no Redo in Emacs, you can Undo
your Undo. C-/ C-/ C-/ Undo Undo Undo Redo Redo Redo C-/ C-/ C-/ C-g
Same as 90% of text boxes C-f C-b C-p C-n
C-a C-e C-d (C-/)
Selection Shift-(Moving) or use your mouse!
Copy & Paste Cmd-c & Cmd-v
.scala .py *error-msg* *file-tree* buffers frame window window minibuffer modeline
UI
minibuffer .scala .py *error-msg* *file-tree* modeline window buffers frame window
UI
minibuffer .scala .py *error-msg* *file-tree* modeline window buffers frame window
UI C-x
minibuffer .scala .py *error-msg* *file-tree* modeline window buffers frame window
UI C-x C-x
minibuffer .scala .py *error-msg* *file-tree* modeline window buffers frame window
UI C-x C-x C-x
minibuffer .scala .py *error-msg* *file-tree* modeline window buffers frame window
C-x C-f UI
minibuffer .scala .py *error-msg* *file-tree* modeline window buffers frame window
C-x C-f .java UI
minibuffer .scala .py *error-msg* *file-tree* modeline window buffers frame window
.java C-x k ✗ UI
minibuffer .scala .py *error-msg* *file-tree* modeline window buffers frame window
C-x k UI
Split Windows C-x 3 C-x 2 C-x o ✗ C-x
0 ✗ ✗ C-x 1
Toggle Comment M-;
Indent your Code TAB
Edit on Server C-x C-f /ssh:
All Commands are Functions C-f forward-char M-x
All Commands are Configurable M-x forward-char C-f M-x global-set-key ✗
C-?
Configuration File ~/.emacs.d/init.el Emacs Lisp
60 years ago John McCarthy 1927 ~ 2011 Dynamic Typing
Functional (* 2 (+ 3 4)) Common Lisp Scheme Emacs Lisp Racket Since 1958 Clojure JVM Hy Python LISP 2 * (3 + 4)
Lazy to hack?
Built-in Package System M-x list-packages
None
Some interesting packages
minimap
magit
multiple-cursors
evil-mode
ensime
ein
None
M-x snake
M-x tetris
https://www.facebook.com/groups/emacs.taiwan/ Emacs Taiwan
M-x thank-you