Commit 6bef6913 authored by Johan Busk Eriksson's avatar Johan Busk Eriksson
Browse files

Skrivit stora delar av det jag tänkt prata om

parent b25ac343
all:
@echo "Nothing to do... try \"clean\""
clean:
rm -f *~
rm -f *.nav
rm -f *.pdf
rm -f *.vrb
rm -f *.snm
rm -f *.tex
......@@ -9,7 +9,6 @@
* Enkla finesser
** Rectangular cut & paste
** Krypterade filer
#+BEGIN_LaTeX
\begin{lstlisting}[language=lisp]
......@@ -17,13 +16,164 @@
\end{lstlisting}
#+END_LaTeX
** ...
** generic-mode
** re-builder
** Ediff/emerge
** cua-mode
*** För de som är vana/vill använda "windowskortkommandon"
**** C-x, C-c, C-v -- klipp ut, kopiera, klistra in
(Aktivt vid markeringar, annars konflikt med andra kortkommandon)
**** Shift-piltangenter för att markera områden
*** För att aktivera:
#+BEGIN_LaTeX
\begin{lstlisting}[language=lisp]
(cua-mode t)
(transient-mark-mode 1) ; Se markerat omr.
\end{lstlisting}
#+END_LaTeX
*** Mer info:
**** info Emacs CUA Bindings
**** http://www.emacswiki.org/CuaMode
** kill-ring 101
*** Kill-ring innehåller de 60 senast "dödade" elementen.
*** C-w dödar region, C-k till slutet av raden du är på, M-k dödar en mening
*** Det som "dödas" hamnar först i kill-ring
*** C-y yankar ut det första elementet i kill-ring
*** Vill man yanka något annat i kill-ring kan man därefter cycla med M-y
** Align:a text
*** M-x align-regexp <RET> REGEXP <RET>
**** Exempel:
#+BEGIN_LaTeX
\begin{lstlisting}
TODO: Hitta på exempel
\end{lstlisting}
#+END_LaTeX
** fill-paragraph, auto-fill-mode
*** fill-paragraph
fill-paragraph (M-q) radbryter paragrafen till 70 tecken (värdet på fill-column)
**** Med prefix-argument (t.ex. C-u M-q) så marginaljusteras paragrafen också.
*** auto-fill-mode
**** Om man vill radbryta all text i en buffer när man editerar den.
**** Som hook till LaTeX-mode (auctex), t.ex:
#+BEGIN_LaTeX
\begin{lstlisting}[language=lisp]
(add-hook 'LaTeX-mode-hook 'turn-on-auto-fill)
\end{lstlisting}
#+END_LaTeX
**** auto-fill på kommentarer i c-mode
#+BEGIN_LaTeX
\begin{lstlisting}[language=lisp]
(add-hook 'c-mode-hook (lambda ()
(auto-fill-mode 1)
(setq comment-auto-fill-only-comments t)))
\end{lstlisting}
#+END_LaTeX
** Quote:a tecken
*** Tabb ofta bundet till någon funktion
**** C-q tab
*** Även för tecken som saknas på tangentbordet
**** C-q 007 -> "bell"
** iswitchb, ido-mode
Alternativ till C-x b (switch-to-buffer)
*** Bufferurval minskas vartefter man skriver
#+BEGIN_LaTeX
\begin{lstlisting}[language=lisp]
(iswitchb-mode 1)
\end{lstlisting}
#+END_LaTeX
*** ido-mode är en utvecklad version av iswitchb
**** Ändrar även beteendet för t.ex. find-file (C-x C-f) till att vara mer interaktiv.
** emacs-server+daemon
Nytt i och med Emacs 23.
*** .bashrc
#+BEGIN_LaTeX
\begin{lstlisting}[language=sh]
export ALTERNATE_EDITOR=""
\end{lstlisting}
#+END_LaTeX
*** emacsclient
**** -c skapar ny frame (X)
**** -n väntar inte på att du ska "vara klar" med emacs (bra om man startar med -c i terminal)
**** -t startar en terminalemacs i den terminal du skriver in det
*** Skapa kortare alias eller script för att starta klienter
*** Tips: skriv init-filer som startar/stoppar emacs --daemon ;)
** Stavningskontroll
*** Flyspell stavningskontrollerar ord allteftersom de skrivs
**** Använder aspell/ispell
**** flyspell-prog-mode kan stavningskontrollera kommentarer i kod
*** ispell
**** Har inbyggt stöd i emacs
**** M-x ispell
**** M-$
** Tangentbordsbindningar
(C-h k [tangent] för att ta reda på vad tangenten heter)
*** Globala tangentbordsbindningar
Exempel
#+BEGIN_LaTeX
\begin{lstlisting}[language=lisp]
(global-set-key (kbd "<f9>") 'funktion)
\end{lstlisting}
#+END_LaTeX
*** Mode-lokala
Lämpligast att definiera i hooks
**** Generellt
(local-set-key (kbd "C-c C-t") 'funktion)
**** CC-modederiverade modes
(define-key c-mode-base-map [f10] 'step-over)
** Hooks
Sätt att hooka in funktioner när t.ex. ett mode laddas.
*** T.ex.
#+BEGIN_LaTeX
\begin{lstlisting}[language=lisp]
(add-hook 'xxx-mode-hook 'funktion)
\end{lstlisting}
#+END_LaTeX
Funktionen kan också vara en lambda-funktion.
** Windmove
*** Flytta markören mellan olika fönster enklare
**** Shift+piltangenter istället för C-x o
*** Aktivera:
#+BEGIN_LaTeX
\begin{lstlisting}[language=lisp]
(windmove-default-keybindings)
\end{lstlisting}
#+END_LaTeX
M-piltangenter istället för shift:
#+BEGIN_LaTeX
\begin{lstlisting}[language=lisp]
(windmove-default-keybindings 'meta)
\end{lstlisting}
#+END_LaTeX
** Hippie-expand, msf-abbrev,
** Tramp
Transparent sätt att redigera filer remote
C-x C-f /user@host:filenamn
*** Även lokala filer som root:
**** C-x C-f /sudo::/etc/hosts
**** C-x C-f /su::/etc/hosts
**** :: -> root, för andra användare, skriv user@localhost mellan ::
** whitespace-mode
*** Visualiserar whitespace-tecken (blanksteg, radbrytningar, tabb)
*** Kan visa rader som går över 80 tecken (whitespace-line-column) med annat face
*** (M-x delete-trailing-whitespace)
** i-search
** shell-kommandon
* Makron
** ...
#+BEGIN_SRC c
/* verbatim code */
#+END_SRC
** Introduktion
** Spara, editera, binda makron
** Effektiv makroanvändning
*** Stepwise editing
*** Fortsätta skapa
** ...
#+LaTeX:\includegraphics{bild.png}
* Applikationer
** Dired
** Org och remember, I
** Org och remember, II
** Calc
** Wanderlust
** Gnus
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment