GNU Emacs is an extensible, customizable text editor—and more. At its core is an interpreter for Emacs Lisp, a dialect of the Lisp programming language with extensions to support text editing. [fn:1]
Emacs is not an extensible text-editor. It’s a programming environment with a nice built-in library for editing text. [fn:2]
Emacs was created by Richard Stallman and Guy L. Steele in 1976, using Emacs Lisp, a dialect of Lisp language. There are many Emacs variant, but the most widely used was GNU Emacs by Richard Stallman.
- It’s not just an editor, everything is possible [
Almost to be exact:) ]- good language support [fn:3]
- pdf and image viewer
- e-mail reader
- IRC
- breeze org-mode <=> latex support
- chart with graphviz-mode
- terminal session
- write blog entry
- coffee-mode [fn:4]
- git integration
- play tetris anyone? :)
- M-x phases-of-moon
- M-x doctor
- many more…
- Divine Editing Experience [fn:5]
- custom jump-start
- bookmark
- org-mode
- keyboard macro 8000
- clear ring
- expand-region
- multi-cursor
- ace-jump-mode
- key-chord
- helm-mode
- Emacs is extensible [fn:6]
- Integrates well with lots of external tools
- shell-mode, ansi-term, eshell
- dired [fn:7]
- cvs, svn, bazaar, git, mercurial
- proced (emacs process manager)
- Emacs Doesn’t let you repeat yourself [fn:6]
- Emacs is Modern
- GTK2/3, Coca, WinAPI
- OSes clipboard support
- TTF Fonts support [fn:8]
- apt-get or brew like package manager
- Emacs is constantly evolving
- Other prominent tools use Emacs’s keybindings
- bash, zsh, Cocoa toolkit use Emacs keybindings by default
- IDE and Code Editors Stats 2014 [fn:9]
- Emacs vs vim
Emacs pros:
- it has better default extension language.
- it’s modeless.
- it has better integration with external systems.
- it has better support for the things that matter to me. [fn:10]
- it has a built-in package manager.
Vim pros:
- nicer navigation
- much smaller core and much faster to load
- very simple initial config
- it has a more stylish icon than Emacs :)
- Emacs vs IDEs
IDEs pros:
- good refactoring support
- semantic code analysis
- integrated GUI debuggers and GUI design tools
- precise auto-completions
- good integration with external systems, i.e. version control
IDEs cons:
- dependent to the mouse and an X environment
- not resource efficient
- IDEs impair your thinking by thinking instead of you
- No adequate embedded browser in Emacs!
- Still have to learn Lisp to extend Emacs more
- Emacs Pinky
It only takes 2 steps:
- run the built-in Emacs tutorial
C-h t
. - use Emacs day and night for all your work or even use it as your window manager. [fn:11]
- Learn basic survival guide: [fn:12]
- opening/closing file/buffer
- movement
- search (forward/backward)
- basic region, copy, paste
- getting help
- Read/listen/watch emacs tutorial For me, youtube is the best resource for learning.[fn:13]
- However, whatever your editor choice is, as long as you feel efficient and productive, then it’s good…
- Lastly, you are not picking Emacs vs others, but rather you are picking Emacs and others! Use the best tool for the job.
my ~/.emacs file
- http://www.emacswiki.org/
- http://ergoemacs.org/emacs/emacs.html
- http://www.masteringemacs.org/
- http://emacsrocks.com/
- http://whattheemacsd.com/
- http://emacsredux.com/
- http://sachachua.com/
- http://batsov.com/articles/2011/11/30/the-ultimate-collection-of-emacs-resources/
- http://sachachua.com/blog/2013/05/how-to-learn-emacs-a-hand-drawn-one-pager-for-beginners/
- https://www.youtube.com/watch?v=16Rd46SE-20
- https://www.youtube.com/playlist?list=PL8tzorAO7s0he-pp7Y_JDl7-Kz2Qlr_Pj
- http://www.howardism.org/
- http://endlessparentheses.com/
- http://blog.aaronbieber.com/blog/2015/01/11/learning-to-love-emacs/
- http://bling.github.io/blog/2013/10/27/emacs-as-my-leader-vim-survival-guide/
- http://www.reddit.com/r/vim/comments/22w1li/a_fair_comparison_between_vim_and_emacs/
Ask me for questions
About me:
- twitter: https://twitter.com/sopier
- fb: https://www.facebook.com/kholid.fuadi
- github: https://github.com/sopier
Materi techtalk ini juga tersedia di github berikut: https://github.com/sopier/techtalk_emacs
[fn:1] https://www.gnu.org/software/emacs/
[fn:2] Austion Bingham at Youtube
[fn:3] demo.py
[fn:4] wikipedia
[fn:6] snippets.el
[fn:7] dired\_demo
[fn:8] arab.txt
[fn:9] codeanywhere
[fn:10] tesis.org :: beamer.org
[fn:11] howardism
[fn:12] survival guide :: video 1 :: video 2