SlideShare una empresa de Scribd logo
1 de 94
Descargar para leer sin conexión
A Introduction
Emacs
A Introduction
about:kanru
a Debian Developer
in Mozilla
Vim 5+ yr
Emacs 5+ yr
kanru@kanru.info
about:license
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.
Brief History
   簡明歷史
TECO
 起源
TECMAC & TMACS
 EditorMACroS in TECO
Multics Emacs & EINE
   第一個使用 LISP 的 Emacs
GNU Emacs 13.0?
     首次公開
Emacs Timeline
http://www.jwz.org/doc/emacs-timeline.html
Get Emacs
 如何取得?
apt-get install emacs
bzr://bzr.savannah.gnu.org/emacs/trunk

            Bleeding edge!
Windows?
http://alpha.gnu.org/gnu/emacs/windows
Jargons
  術語
-*- mode: C++ -*-
       模式
C-<key>
Control + <key>
M-<key>
Meta + <key>
M-<key>
Alt + <key>
C-x C-c
Control + x Control + c
Frame
程式外框
Window
 分割視窗
Buffer
Minibuffer
Region
Editing Commands
     編輯指令
Escape-Meta-Alt-Control-Shift
                    -- anonymous
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
      視窗操作
C-x 2
split-window-below
C-x 3
split-window-right
C-x 0
delete-window
C-x 1
delete-other-windows
C-x o
other-window
Help System
強大的說明輔助系統
Tutorial
 C-h t
C-h <key>
 取得各種說明
C-h ?
說明 C-h
C-h k <key>
   按鍵資訊
C-h v
變數資訊
C-h f
函數資訊
C-h i
Info 系統
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
      安裝更多擴充套件
ELPA
M-x list-packages
ELPA
http://marmalade-repo.org/
ELPA
http://melpa.milkbox.net/
el-get
https://github.com/dimitri/el-get
find el-get/recipes|wc -l
          2163
Emacs Lisp Intro.
     ELisp 簡介
GNU Emacs Lisp
Reference Manual
      必讀
*scratch*
 來塗鴉吧!
M-x ielm
互動式程式設計
(<op> <a1> <a2> ... <aN>)
        (+ 1 2 3) => 6
(defun hello ()
  "Hello World!")
     定義函式
(defun hello ()
  (interactive)
  (message "Hello"))
       M-x hello
(defun hello (who)
  (interactive "sSay hello to: ")
  (message "Hello %s" who))
            M-x hello
(defvar hello-times 0
  "Said how many times?")
      C-h v hello-times
(defcustom uuid-interface "eth0"
  "The default interface"
  :type 'string
  :group 'uuid)
    M-x customize-group uuid
(add-hook HOOK FUNCTION)
(defadvice FUNCTION ARGS
                 &rest BODY)
(provide '<feature>)
   (require '<feature>)
Misc Tips
  小技巧
M-x server-start
 $ emacsclient <file>
Bug Report
  回報問題
M-x report-emacs-bug
http://debbugs.gnu.org/cgi/pkgreport.cgi?package=emacs
Community Resources
       社群資源
EmacsWiki
http://www.emacswiki.org/
Planet Emacsen
http://planet.emacsen.org/
Mailing Lists
http://news.gmane.org/index.php?prefix=gmane.emacs
IRC
#emacs{.tw} @ freenode
Q&A

Más contenido relacionado

Destacado

Emacs intro
Emacs introEmacs intro
Emacs intro
Khon
 
Emacs入门
Emacs入门Emacs入门
Emacs入门
yinhm .
 
My Emacs Configs
My Emacs ConfigsMy Emacs Configs
My Emacs Configs
Qin Jian
 
Emacs Modes I can't work without
Emacs Modes I can't work withoutEmacs Modes I can't work without
Emacs Modes I can't work without
Hitesh Sharma
 
How Emacs changed my life
How Emacs changed my lifeHow Emacs changed my life
How Emacs changed my life
yukihiro_matz
 
Linux booting procedure
Linux booting procedureLinux booting procedure
Linux booting procedure
Dhaval Kaneria
 

Destacado (15)

Emacs intro
Emacs introEmacs intro
Emacs intro
 
Emacs入门
Emacs入门Emacs入门
Emacs入门
 
Emacs, a performant IDE for Perl
Emacs, a performant IDE for PerlEmacs, a performant IDE for Perl
Emacs, a performant IDE for Perl
 
My Emacs Configs
My Emacs ConfigsMy Emacs Configs
My Emacs Configs
 
Learn Linux: Emacs
Learn Linux: EmacsLearn Linux: Emacs
Learn Linux: Emacs
 
Emacs tutorial
Emacs tutorialEmacs tutorial
Emacs tutorial
 
Emacs Modes I can't work without
Emacs Modes I can't work withoutEmacs Modes I can't work without
Emacs Modes I can't work without
 
Emacs presentation
Emacs presentationEmacs presentation
Emacs presentation
 
Linux boot process
Linux boot processLinux boot process
Linux boot process
 
Code4vn - Linux day - linux boot process
Code4vn - Linux day - linux boot processCode4vn - Linux day - linux boot process
Code4vn - Linux day - linux boot process
 
How Emacs changed my life
How Emacs changed my lifeHow Emacs changed my life
How Emacs changed my life
 
Linux booting procedure
Linux booting procedureLinux booting procedure
Linux booting procedure
 
(IDEユーザのための) ClojureのEmacs開発環境について
(IDEユーザのための) ClojureのEmacs開発環境について(IDEユーザのための) ClojureのEmacs開発環境について
(IDEユーザのための) ClojureのEmacs開発環境について
 
我在豆瓣使用Emacs
我在豆瓣使用Emacs我在豆瓣使用Emacs
我在豆瓣使用Emacs
 
Rhel6 vs rhel7
Rhel6 vs rhel7Rhel6 vs rhel7
Rhel6 vs rhel7
 

Similar a Emacs - COSCUP 2012

Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Carlos Sanchez
 
From Dev to DevOps - Codemotion ES 2012
From Dev to DevOps - Codemotion ES 2012From Dev to DevOps - Codemotion ES 2012
From Dev to DevOps - Codemotion ES 2012
Carlos Sanchez
 
From Code to Cloud - PHP on Red Hat's OpenShift
From Code to Cloud - PHP on Red Hat's OpenShiftFrom Code to Cloud - PHP on Red Hat's OpenShift
From Code to Cloud - PHP on Red Hat's OpenShift
Eric D. Schabell
 

Similar a Emacs - COSCUP 2012 (20)

Composer for busy developers - DPC13
Composer for busy developers - DPC13Composer for busy developers - DPC13
Composer for busy developers - DPC13
 
How we used ruby to build locaweb's cloud (http://presentations.pothix.com/ru...
How we used ruby to build locaweb's cloud (http://presentations.pothix.com/ru...How we used ruby to build locaweb's cloud (http://presentations.pothix.com/ru...
How we used ruby to build locaweb's cloud (http://presentations.pothix.com/ru...
 
Getting instantly up and running with Docker and Symfony
Getting instantly up and running with Docker and SymfonyGetting instantly up and running with Docker and Symfony
Getting instantly up and running with Docker and Symfony
 
DEV Čtvrtkon #76 - Makefile
DEV Čtvrtkon #76 - MakefileDEV Čtvrtkon #76 - Makefile
DEV Čtvrtkon #76 - Makefile
 
Elixir on Containers
Elixir on ContainersElixir on Containers
Elixir on Containers
 
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
 
Slackware Demystified [SELF 2011]
Slackware Demystified [SELF 2011]Slackware Demystified [SELF 2011]
Slackware Demystified [SELF 2011]
 
Composer, putting dependencies on the score
Composer, putting dependencies on the scoreComposer, putting dependencies on the score
Composer, putting dependencies on the score
 
Adopt DevOps philosophy on your Symfony projects (Symfony Live 2011)
Adopt DevOps philosophy on your Symfony projects (Symfony Live 2011)Adopt DevOps philosophy on your Symfony projects (Symfony Live 2011)
Adopt DevOps philosophy on your Symfony projects (Symfony Live 2011)
 
Fullstack conf 2017 - Basic dev pipeline end-to-end
Fullstack conf 2017 - Basic dev pipeline end-to-endFullstack conf 2017 - Basic dev pipeline end-to-end
Fullstack conf 2017 - Basic dev pipeline end-to-end
 
Twig Templating
Twig TemplatingTwig Templating
Twig Templating
 
Revoke-Obfuscation
Revoke-ObfuscationRevoke-Obfuscation
Revoke-Obfuscation
 
Continuous Delivery: The Next Frontier
Continuous Delivery: The Next FrontierContinuous Delivery: The Next Frontier
Continuous Delivery: The Next Frontier
 
Terraform Modules and Continuous Deployment
Terraform Modules and Continuous DeploymentTerraform Modules and Continuous Deployment
Terraform Modules and Continuous Deployment
 
Infrastructureascode slideshare-160331143725
Infrastructureascode slideshare-160331143725Infrastructureascode slideshare-160331143725
Infrastructureascode slideshare-160331143725
 
Infrastructureascode slideshare-160331143725
Infrastructureascode slideshare-160331143725Infrastructureascode slideshare-160331143725
Infrastructureascode slideshare-160331143725
 
Infrastructure as code: running microservices on AWS using Docker, Terraform,...
Infrastructure as code: running microservices on AWS using Docker, Terraform,...Infrastructure as code: running microservices on AWS using Docker, Terraform,...
Infrastructure as code: running microservices on AWS using Docker, Terraform,...
 
From Dev to DevOps - Codemotion ES 2012
From Dev to DevOps - Codemotion ES 2012From Dev to DevOps - Codemotion ES 2012
From Dev to DevOps - Codemotion ES 2012
 
From Code to Cloud - PHP on Red Hat's OpenShift
From Code to Cloud - PHP on Red Hat's OpenShiftFrom Code to Cloud - PHP on Red Hat's OpenShift
From Code to Cloud - PHP on Red Hat's OpenShift
 
Managing Eclipse Preferences for Teams (EclipseCon 2011)
Managing Eclipse Preferences for Teams (EclipseCon 2011)Managing Eclipse Preferences for Teams (EclipseCon 2011)
Managing Eclipse Preferences for Teams (EclipseCon 2011)
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 

Emacs - COSCUP 2012