emacs és vim fej fej mellett

Download Emacs és Vim fej fej mellett

Post on 11-Apr-2015

454 views

Category:

Documents

4 download

Embed Size (px)

DESCRIPTION

Slides on presenting Emacs and Vim . Talk was given in the Hungarian Ubuntu Conference 2008.

TRANSCRIPT

Emacs s Vim fej-fej mellettHork Gyrgy, Trk Gbor Magyarorszgi Ubuntu Konferencia 2008.09.13.

Mirl nem lesz sz?

Mirl lesz sz?

Hogyan indthat el?

emacs emacs -nw emacsclient

vi vim gvim

Hol fut?

mindenhol telepthet emacs csomag Windows, Linux, OS X stb.

mindenhol telepthet *nix alapbl vi Windows, Linux, OS X stb.

Milyen nyelven rhet el?

csak angol nincs tmogats tbbnyelvsghez beptett dokumentci angol

elsdlegesen angol gvim kezelfellete lokalizlt beptett dokumentci angol

Indulsi sebessg

gyri kiszerels 1-2 mp alatt indul bekapcsolt funkciktl fgg emacs -Q kliens-szerver md javasolt byte-compile

Vim can load and fully syntaxcolour a file before Emacs even displays its window. azonnal indul pluginekkel lassthat

Konfigurci, testreszabs

An extensible, customizable, selfdocumenting real-time text editor. .emacs menbl Emacs Customization

.vimrc menbl (csak session idejre)

Felhasznli fellet felptse

Billentykombincik

GNU stlus (bash, most) Escape/Meta/Alt-Control-Shift major mode, minor mode M-x segtsg: C-h c, C-h k

Unix stlus (bash -v, less, more) vim mode-ok:normal insert (i, a, o, c, s, r) command (:) visual (v) [select (gh), ex (Q)]

Mozgs a pufferben

GNU stlus (C-a, C-e, C-n, C-v) C-, M- M-g M-g C-l

insert mode-ban nem mozgunk hjkl d, c :, gg, G zz

Puffer pozici mentse

register bookmark C-u C-space

marks m, ', ` '., `. jumps viminfo

Inkrementlis s regex-alap keress

C-s, C-r grep-szer regex tuds M-x grep kisbets keressz case insensitive inkrementlis keress nha lass M-/ (csere akr regexen)

/ ?, n N regex set incsearch set ignorecase s///

Menekls

C-g ESC ESC ESC jelzi a lenyomott billentyket

set showcmd ESC, de inkbb ^[

Egyidej szerkeszts tbb fl kztt

M-x make-frame-on-display tty-mode, kliens-szerver

nem igazn tmogatott vim remote*

Verzikezels

elterjedt VCS-ek tmogatsa kzs fellet valamennyi VCS-hez aktv VCS vlaszthat

vcscommand plugin (CSV, SVN, SVK, git)http://www.vim.org/scripts/script.php?script_id=90

clearcase pluginhttp://www.vim.org/scripts/script.php?script_id=15

Undo-redo

undo: C-_ redo: C-_ az undk is undozhatk vgtelen elzmnylista redo-mode

u, Ctrl-r :earlier , :later g-, g+ :undolist

Parancsok ismtlse, makrk

C-u F3, F4, M- F4 makrk trolhatk, mdosthatk Emacs Lisp

q, [mveletek], q @

Dolgozs kijellt terleten

kijellssel dolgozhatunk**tbbnyire

narrowing: szktett munkaterlet

kijellssel dolgozhatunk narrowing plugin

Shell elrse

parancs futtatsa: M-/ parancs futtatsa kijellsen: M-| M-x term: shell indtsa pufferben M-x eshell: Emacs Lisp Shell

:!, :.! :[tartomny]! (filter) :shell vimshell plugin

Ms felhasznl birtokolta file-ok szerkesztse

tramp (sudo, su) C-x C-f /sudo:/

sudo vim :) :e scp://root@localhost/

Tvoli file-ok elrse

tramp (rcp, scp, ftp stb.) C-x C-f /ssh:user@host:/ tvoli knyvtr s file bngszs

rcp, scp, ftp stb. :e scp://user@host/ knyvtrakat is lehet bngszni

Bvthetsg, skriptelhetsg

An extensible, customizable, selfdocumenting real-time text editor. Emacs Lisp (.el) nincs hivatalos trol emacswiki.org-on sszegyjtve

VimScript TCL, Python, Perl, Ruby, MzScheme getscript, :GLVS www.vim.org-on sszegyjtve, rangsorolhatan .vba

Fejlesztst tmogat eszkzk

szintaxis kiemels, auto-indent CEDET debugger ctags/etags flymake rope, emacs-rails, jde, slime skeleton, yasnippet

szintaxis kiemels auto-indent vimdiff Omni complete (Ctrl-X Ctrl-O) :make, quickfix taglist plugin snippetsEmu plugin

tjrs

viper-mode vile NetBeans, Eclipse conkeror Firemacs

vimacs cream MS VisualStudio, Eclipse

Legnagyobb megnyithat file

brmekkora*bizonyos mode-ok lassthatjk

brmekkora

Memriafoglals

gyri kiszerels: 15M enym: 43M szerver-kliens

kb. 9M

Beptett segtsgek

beptett tutorial: C-h t M-x help Elisp referencia

vimtutor :help

Kilps

C-x C-c C-5 0

:q ZQ

Mire hasznlom?

fejleszts (JS, Python, PHP, Elisp) mindennapi let (:

konfigurcis file-ok fejleszts (Python, rgebben C++) mindig, amikor szveget kell szerkeszteni :)

Ksznjk a figyelmetHork Gyrgygyuri@horak.hu

Trk Gborgabor@20y.hu

Felhasznlt irodalom

John Dierdorf: Vi and Emacshttp://www.io.com/~dierdorf/emacsvi.html

http://www.gnu.org/

http://www.vim.org/