-
256.gitignore
-
BINhow-to-vim.pdf
-
112how-to-vim.tex
-
BINimg/iamdeveloper.png
-
BINimg/insert-mode.png
-
2928img/normal-mode.eps
-
BINimg/normal-mode.png
-
BINimg/one-does-not-simply-learn-vim.jpg
-
BINimg/vim-luck-brian.jpg
-
BINimg/visual-mode.png
@ -0,0 +1,256 @@ |
|||||
|
## Core latex/pdflatex auxiliary files: |
||||
|
*.aux |
||||
|
*.lof |
||||
|
*.log |
||||
|
*.lot |
||||
|
*.fls |
||||
|
*.out |
||||
|
*.toc |
||||
|
*.fmt |
||||
|
*.fot |
||||
|
*.cb |
||||
|
*.cb2 |
||||
|
.*.lb |
||||
|
|
||||
|
## Intermediate documents: |
||||
|
*.dvi |
||||
|
*.xdv |
||||
|
*-converted-to.* |
||||
|
# these rules might exclude image files for figures etc. |
||||
|
# *.ps |
||||
|
# *.eps |
||||
|
# *.pdf |
||||
|
|
||||
|
## Generated if empty string is given at "Please type another file name for output:" |
||||
|
.pdf |
||||
|
|
||||
|
## Bibliography auxiliary files (bibtex/biblatex/biber): |
||||
|
*.bbl |
||||
|
*.bcf |
||||
|
*.blg |
||||
|
*-blx.aux |
||||
|
*-blx.bib |
||||
|
*.run.xml |
||||
|
|
||||
|
## Build tool auxiliary files: |
||||
|
*.fdb_latexmk |
||||
|
*.synctex |
||||
|
*.synctex(busy) |
||||
|
*.synctex.gz |
||||
|
*.synctex.gz(busy) |
||||
|
*.pdfsync |
||||
|
|
||||
|
## Build tool directories for auxiliary files |
||||
|
# latexrun |
||||
|
latex.out/ |
||||
|
|
||||
|
## Auxiliary and intermediate files from other packages: |
||||
|
# algorithms |
||||
|
*.alg |
||||
|
*.loa |
||||
|
|
||||
|
# achemso |
||||
|
acs-*.bib |
||||
|
|
||||
|
# amsthm |
||||
|
*.thm |
||||
|
|
||||
|
# beamer |
||||
|
*.nav |
||||
|
*.pre |
||||
|
*.snm |
||||
|
*.vrb |
||||
|
|
||||
|
# changes |
||||
|
*.soc |
||||
|
|
||||
|
# comment |
||||
|
*.cut |
||||
|
|
||||
|
# cprotect |
||||
|
*.cpt |
||||
|
|
||||
|
# elsarticle (documentclass of Elsevier journals) |
||||
|
*.spl |
||||
|
|
||||
|
# endnotes |
||||
|
*.ent |
||||
|
|
||||
|
# fixme |
||||
|
*.lox |
||||
|
|
||||
|
# feynmf/feynmp |
||||
|
*.mf |
||||
|
*.mp |
||||
|
*.t[1-9] |
||||
|
*.t[1-9][0-9] |
||||
|
*.tfm |
||||
|
|
||||
|
#(r)(e)ledmac/(r)(e)ledpar |
||||
|
*.end |
||||
|
*.?end |
||||
|
*.[1-9] |
||||
|
*.[1-9][0-9] |
||||
|
*.[1-9][0-9][0-9] |
||||
|
*.[1-9]R |
||||
|
*.[1-9][0-9]R |
||||
|
*.[1-9][0-9][0-9]R |
||||
|
*.eledsec[1-9] |
||||
|
*.eledsec[1-9]R |
||||
|
*.eledsec[1-9][0-9] |
||||
|
*.eledsec[1-9][0-9]R |
||||
|
*.eledsec[1-9][0-9][0-9] |
||||
|
*.eledsec[1-9][0-9][0-9]R |
||||
|
|
||||
|
# glossaries |
||||
|
*.acn |
||||
|
*.acr |
||||
|
*.glg |
||||
|
*.glo |
||||
|
*.gls |
||||
|
*.glsdefs |
||||
|
|
||||
|
# gnuplottex |
||||
|
*-gnuplottex-* |
||||
|
|
||||
|
# gregoriotex |
||||
|
*.gaux |
||||
|
*.gtex |
||||
|
|
||||
|
# htlatex |
||||
|
*.4ct |
||||
|
*.4tc |
||||
|
*.idv |
||||
|
*.lg |
||||
|
*.trc |
||||
|
*.xref |
||||
|
|
||||
|
# hyperref |
||||
|
*.brf |
||||
|
|
||||
|
# knitr |
||||
|
*-concordance.tex |
||||
|
# TODO Comment the next line if you want to keep your tikz graphics files |
||||
|
*.tikz |
||||
|
*-tikzDictionary |
||||
|
|
||||
|
# listings |
||||
|
*.lol |
||||
|
|
||||
|
# makeidx |
||||
|
*.idx |
||||
|
*.ilg |
||||
|
*.ind |
||||
|
*.ist |
||||
|
|
||||
|
# minitoc |
||||
|
*.maf |
||||
|
*.mlf |
||||
|
*.mlt |
||||
|
*.mtc[0-9]* |
||||
|
*.slf[0-9]* |
||||
|
*.slt[0-9]* |
||||
|
*.stc[0-9]* |
||||
|
|
||||
|
# minted |
||||
|
_minted* |
||||
|
*.pyg |
||||
|
|
||||
|
# morewrites |
||||
|
*.mw |
||||
|
|
||||
|
# nomencl |
||||
|
*.nlg |
||||
|
*.nlo |
||||
|
*.nls |
||||
|
|
||||
|
# pax |
||||
|
*.pax |
||||
|
|
||||
|
# pdfpcnotes |
||||
|
*.pdfpc |
||||
|
|
||||
|
# sagetex |
||||
|
*.sagetex.sage |
||||
|
*.sagetex.py |
||||
|
*.sagetex.scmd |
||||
|
|
||||
|
# scrwfile |
||||
|
*.wrt |
||||
|
|
||||
|
# sympy |
||||
|
*.sout |
||||
|
*.sympy |
||||
|
sympy-plots-for-*.tex/ |
||||
|
|
||||
|
# pdfcomment |
||||
|
*.upa |
||||
|
*.upb |
||||
|
|
||||
|
# pythontex |
||||
|
*.pytxcode |
||||
|
pythontex-files-*/ |
||||
|
|
||||
|
# tcolorbox |
||||
|
*.listing |
||||
|
|
||||
|
# thmtools |
||||
|
*.loe |
||||
|
|
||||
|
# TikZ & PGF |
||||
|
*.dpth |
||||
|
*.md5 |
||||
|
*.auxlock |
||||
|
|
||||
|
# todonotes |
||||
|
*.tdo |
||||
|
|
||||
|
# easy-todo |
||||
|
*.lod |
||||
|
|
||||
|
# xcolor |
||||
|
*.xcp |
||||
|
|
||||
|
# xmpincl |
||||
|
*.xmpi |
||||
|
|
||||
|
# xindy |
||||
|
*.xdy |
||||
|
|
||||
|
# xypic precompiled matrices |
||||
|
*.xyc |
||||
|
|
||||
|
# endfloat |
||||
|
*.ttt |
||||
|
*.fff |
||||
|
|
||||
|
# Latexian |
||||
|
TSWLatexianTemp* |
||||
|
|
||||
|
## Editors: |
||||
|
# WinEdt |
||||
|
*.bak |
||||
|
*.sav |
||||
|
|
||||
|
# Texpad |
||||
|
.texpadtmp |
||||
|
|
||||
|
# LyX |
||||
|
*.lyx~ |
||||
|
|
||||
|
# Kile |
||||
|
*.backup |
||||
|
|
||||
|
# KBibTeX |
||||
|
*~[0-9]* |
||||
|
|
||||
|
# auto folder when using emacs and auctex |
||||
|
./auto/* |
||||
|
*.el |
||||
|
|
||||
|
# expex forward references with \gathertags |
||||
|
*-tags.tex |
||||
|
|
||||
|
# standalone packages |
||||
|
*.sta |
||||
|
|
@ -0,0 +1,112 @@ |
|||||
|
\documentclass[xetex]{beamer} |
||||
|
|
||||
|
\usepackage[ngerman]{babel} |
||||
|
\usepackage{hyperref} |
||||
|
\usepackage[default]{sourcesanspro} |
||||
|
\usepackage[scale=0.9]{sourcecodepro} |
||||
|
\usepackage{graphicx} |
||||
|
\usepackage{keystroke} |
||||
|
\usepackage{csquotes} |
||||
|
\usepackage{minted} |
||||
|
|
||||
|
%\setmainfont{Source Serif Pro} |
||||
|
|
||||
|
%Information to be included in the title page: |
||||
|
\title{How to VIM} |
||||
|
\subtitle{Eine kurze Einführung in den Texteditor vim} |
||||
|
\author{Marcel Schneider\\{marcel@webschneider.org}} |
||||
|
\institute{Georg-August-Universität Göttingen} |
||||
|
\date{Info-O-Phase 2018} |
||||
|
|
||||
|
\newcommand*{\kbd}[1]{\keystroke{\texttt{#1}}} |
||||
|
|
||||
|
\begin{document} |
||||
|
|
||||
|
\frame{\titlepage} |
||||
|
|
||||
|
\begin{frame} |
||||
|
\frametitle{Was ist das?} |
||||
|
\emph{V}i \emph{Im}proved |
||||
|
\begin{itemize} |
||||
|
\item 1991 erstmals veröffentlicht |
||||
|
\item Erweiterung von \emph{vi} (1976), welcher auf \emph{ed} (1971) |
||||
|
aufbaute |
||||
|
\item Üblicherweise kein GUI, arbeitet im Terminal |
||||
|
\item Ungewöhnliche, aber hocheffiziente Eingabemöglichkeiten |
||||
|
\item Bietet Vielzahl an Funktionen, per Plugins noch erweiterbar |
||||
|
\item Quelle vieler Memes |
||||
|
\end{itemize} |
||||
|
\end{frame} |
||||
|
|
||||
|
\begin{frame}{Memes} |
||||
|
% https://img.devrant.io/devrant/rant/r_170390_1mBnJ.jpg |
||||
|
\includegraphics[height=5cm]{img/vim-luck-brian.jpg} |
||||
|
%https://www.barbarianmeetscoding.com/images/one-does-not-simply-learn-vim.jpg |
||||
|
\includegraphics[height=5cm]{img/one-does-not-simply-learn-vim.jpg} |
||||
|
\end{frame} |
||||
|
|
||||
|
\begin{frame}{Memes} |
||||
|
\includegraphics[width=\textwidth]{img/iamdeveloper.png} |
||||
|
\end{frame} |
||||
|
|
||||
|
\begin{frame}{Vim beenden} |
||||
|
Mit folgendem Kommando wird Vim beendet |
||||
|
\keystroke{:} \keystroke{q} |
||||
|
\end{frame} |
||||
|
|
||||
|
\begin{frame}{Modi in Vim} |
||||
|
Es gibt im Wesentlichen drei verschiedene Modi: |
||||
|
\begin{enumerate} |
||||
|
\item Normal mode |
||||
|
\item Insert mode |
||||
|
\item Visual mode |
||||
|
\end{enumerate} |
||||
|
\end{frame} |
||||
|
|
||||
|
\begin{frame}{Normal mode} |
||||
|
\begin{itemize} |
||||
|
\item Standardmodus, Vim startet mit diesem |
||||
|
\item Alle Eingaben werden als Kommandos interpretiert |
||||
|
\item Wird per \Esc aus anderen Modi erreicht |
||||
|
\end{itemize} |
||||
|
|
||||
|
\begin{center} |
||||
|
\includegraphics[width=0.9\textwidth]{img/normal-mode.png} |
||||
|
\end{center} |
||||
|
\end{frame} |
||||
|
|
||||
|
\begin{frame}{Insert mode} |
||||
|
\begin{itemize} |
||||
|
\item Eingabemodus, \enquote{normales} Verhalten, wie aus anderen |
||||
|
Editoren bekannt |
||||
|
\item Wird im Normal mode per \kbd{i}/\kbd{I} oder |
||||
|
\kbd{a}/\kbd{A} erreicht |
||||
|
\end{itemize} |
||||
|
|
||||
|
\begin{center} |
||||
|
\includegraphics[width=0.9\textwidth]{img/insert-mode.png} |
||||
|
\end{center} |
||||
|
\end{frame} |
||||
|
|
||||
|
\begin{frame}{Visual Mode} |
||||
|
\begin{itemize} |
||||
|
\item In diesem Modus kann Text selektiert werden |
||||
|
\item Selektion kann bearbeitet/gelöscht werden, oder als Argument für |
||||
|
ein Kommando dienen |
||||
|
\item Funktioniert Zeilen- und Blockweise |
||||
|
\item Aufruf per \kbd{v}/\kbd{V} |
||||
|
\end{itemize} |
||||
|
|
||||
|
\begin{center} |
||||
|
\includegraphics[width=0.8\textwidth]{img/visual-mode.png} |
||||
|
\end{center} |
||||
|
\end{frame} |
||||
|
|
||||
|
\begin{frame}[fragile]{Protipp: Esc-Taste} |
||||
|
Tauscht die Belegung von \kbd{Esc} und \kbd{CapsLock}, z.B. mit folgendem |
||||
|
Eintrag in \url{~/.profile} oder \url{~/.bashrc}: \\ |
||||
|
\begin{minted}[stripall]{bash} |
||||
|
xmodmap -e 'clear Lock' -e 'keycode 0x42 = Escape' |
||||
|
\end{minted} |
||||
|
\end{frame} |
||||
|
\end{document} |
After Width: 610 | Height: 318 | Size: 43 KiB |
After Width: 1005 | Height: 627 | Size: 103 KiB |
2928
img/normal-mode.eps
File diff suppressed because it is too large
View File
After Width: 1005 | Height: 627 | Size: 112 KiB |
After Width: 400 | Height: 400 | Size: 85 KiB |
After Width: 475 | Height: 561 | Size: 166 KiB |
After Width: 1005 | Height: 627 | Size: 104 KiB |