summaryrefslogtreecommitdiff
path: root/talks/workshop-vim-hackmeet/index.html
diff options
context:
space:
mode:
authorCarlos Sosa <gnusosa@gnusosa.net>2020-03-19 15:09:32 -0700
committerCarlos Sosa <gnusosa@gnusosa.net>2020-03-19 15:09:32 -0700
commit1213016d5e1d535237b28935ae1a859abb6bf307 (patch)
tree78054752a2891400344c6c5b388084c6a525844f /talks/workshop-vim-hackmeet/index.html
parentadb1a4da84fdd5c12a0ed48736d1bbca69a943fa (diff)
Add platicas and talks assets
Diffstat (limited to 'talks/workshop-vim-hackmeet/index.html')
-rw-r--r--talks/workshop-vim-hackmeet/index.html807
1 files changed, 807 insertions, 0 deletions
diff --git a/talks/workshop-vim-hackmeet/index.html b/talks/workshop-vim-hackmeet/index.html
new file mode 100644
index 0000000..b693e44
--- /dev/null
+++ b/talks/workshop-vim-hackmeet/index.html
@@ -0,0 +1,807 @@
+<!DOCTYPE html>
+<head>
+ <title>Make use of Vim</title>
+ <meta charset="utf-8" >
+ <meta name="author" content="Carlos Ivan Sosa" />
+ <meta name="author" content="gnusosa" />
+ <link rel="stylesheet" type="text/css" media="screen, projection, print"
+ href="slidy.css" />
+ <link rel="stylesheet" type="text/css" media="screen, projection, print"
+ href="w3c-black.css" />
+ <script src="slidy.js" charset="utf-8" type="text/javascript"></script>
+</head>
+<body>
+<div class="background">
+<img class="head-icon" alt="head-icon"
+src="img/chibibonsa.jpg" />
+<h3 class="head-logo-fallback">Make use of Vim</h3>
+</div>
+<div class="background dos">
+<img class="head-icon" alt="vim-fuego"
+src="img/vim-fire.gif" />
+<h3 class="head-logo-fallback">Make use of Vim</h3>
+</div>
+<div class="slide cover">
+<br />
+<h1>Make use of Vim</h1>
+<img src="img/vim-editor_logo.png"
+alt="vim editor logo" class="vimlogo" />
+<p><a href="http://gnusosa.net">Carlos Sosa</a><br />
+<a href="mailto:gnusosa@gnusosa.net">gnusosa@gnusosa.net</a></p>
+</div>
+<div class="slide">
+ <h1>Index</h1>
+ <br />
+ <div>
+ <div class="head-logo-fallback"><img src="img/bonsai.jpg" alt="bonsai" /></div>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>Introduction
+ <ul class='incremental'>
+ <li>What is Vim? </li>
+ <li>Vim is not.</li>
+ <li>History.</li>
+ <li>Vim ne Vi</li>
+ <li>How do you use it? (How do you eat it?)</li>
+ <li>Modular = Modes</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+ <div class="slide">
+ <h1>Index</h1>
+ <br />
+ <div>
+ <div class="head-logo-fallback"><img src="img/monje.jpg" alt="monje" /></div>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>Philosophy
+ <ul class='incremental'>
+ <li>KISS.</li>
+ <li>Programmer Virtues.</li>
+ <li>Edit, Don't type. </li>
+ <li>Seven habits of effective text editing.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+ <div class="slide">
+ <h1>Index</h1>
+ <br />
+ <div>
+ <div class="head-logo-fallback"><img src="img/zen2.gif" alt="zen2" /></div>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>The Zen of Vim
+ <ul class='incremental'>
+ <li>Control your energy. (Command line)</li>
+ <li>Don't waste your energy moving. (Command Mode)</li>
+ <li>Don't run through the valley, jump it. (Advance Command Mode)</li>
+ <li>Recycle, Reduce, Reuse. (Visual Mode)</li>
+ <li>Only record the essential. (Insertion Mode)</li>
+ <li>The one that repeats itself, loses. (dot and macros)</li>
+ <li>Beauty is essence. (Editing code)</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+ <div class="slide">
+ <h1>Index</h1>
+ <br />
+ <div>
+ <div class="head-logo-fallback"><img src="img/iching.png" alt="img/iching.png" /></div>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>Seven habits of effective text editing.
+ <ul class='incremental'>
+ <li>Move around quickly.</li>
+ <li>Don't type it twice.</li>
+ <li>Fix it when it's wrong.</li>
+ <li>A file seldom comes alone.</li>
+ <li>Let's work together.</li>
+ <li>Text is structured.</li>
+ <li>Make it a habit (sharpen the saw).</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide cover">
+ <br />
+ <h1>OH HAI!</h1>
+<div style="text-align: center;">
+ <img src="img/me.jpg" alt="Me" />
+</div>
+ <p>Vim is mah editor.<br />
+ I can't work without Vim (sadly). KTHX. BAI</p>
+</div>
+<div class="slide cover">
+ <br />
+ <h1>Work</h1>
+<div style="text-align: center;">
+ <img src="img/screen.jpg" alt="Escritorio" />
+</div>
+ <p>Life is suffering.</p>
+</div>
+<div class="slide cover">
+ <br />
+ <h1>I &lt; Graphs</h1>
+<div style="text-align: center;">
+ <img src="img/grafica.jpg"
+ alt="grafica" />
+</div>
+ <p>PAYS RENT<br />
+ SUPER BORING COMPARED TO A WEB APP.</p>
+</div>
+<div class="slide cover">
+ <br />
+ <h1>I &lt; Graphs</h1>
+<div style="text-align: center;">
+ <img src="img/grafica2.jpg"
+ alt="grafica" />
+</div>
+ <p>PAYS RENT<br />
+ SUPER BORING COMPARED TO A WEB APP.</p>
+</div>
+<div class="slide dos">
+ <h1>Introduction</h1>
+ <br />
+ <div>
+ <!--<div class="head-logo-fallback"><object type="image/svg+xml" data="img/abuela.svg" width="401px" height="500.115px"></div>-->
+ <div class="head-logo-fallback"><img src="img/vim-screenshot1.png" alt="vim-screenshot" /></div>
+ <h3>What is Vim? </h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>Vim is a modular text editor.<br /> A clone of the infamous editor vi.<br /><br /> Main Features:
+ <ul class='incremental'>
+ <li>Spell check integrated.</li>
+ <li>Auto complete of text and tokens.</li>
+ <li>Redo and Undo.</li>
+ <li>Tabs and buffer.</li>
+ <li>Multiple Window Area.</li>
+ <li>Syntax Highlighting and Tags.</li>
+ <li>Scripting language to create your own extensions.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide dos">
+ <h1>Introduction</h1>
+ <br />
+ <div>
+ <!--<div class="head-logo-fallback"><object type="image/svg+xml" data="img/abuela.svg" width="401px" height="500.115px"></div>-->
+ <div class="head-logo-fallback"><img src="img/vim-screenshot1.png" alt="vim-screen" /></div>
+ <h3>Vim is not:</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>Vim is a text editor, NOT an IDE.
+ <ul class='incremental'>
+ <li>Not graphical. Sorry, terminal or gvim.</li>
+ <li>Not a text formatter.</li>
+ <li>Not WYSIWYG.</li>
+ <li>Not for everyone.</li>
+ <li>Vim script works only with text.</li>
+ <li>Not Emacs.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide cover">
+ <br />
+ <h1>BUT...</h1>
+<div style="text-align: center;">
+<p>You can make use of Vim like the latter.</p>
+</div>
+ <p>Vim Script enables developers to create plugins.<br />
+ But don't abuse plugins, make use of what really is essential.</p>
+</div>
+<div class="slide dos">
+ <h1>Introduction</h1>
+ <br />
+ <div>
+ <div class="head-logo-fallback"><img src="img/Bram_Moo.jpg" alt="BramMoo-vim" /></div>
+ <h3>History</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>Bram Moolenaar. In 1991, he published the first version of Vim.
+ <ul class='incremental'>
+ <li>Vim was first written for the Amiga.</li>
+ <li>Vim exists since the times of USENET.</li>
+ <li>Vim started with a strong community.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide dos">
+ <h1>Introduction</h1>
+ <br />
+ <div>
+ <div class="head-logo-fallback"><img src="img/Bill_joy.jpg" alt="Billjoy-vi" /></div>
+ <h3>History</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>Bill Joy. He wrote Vi inspired by the union of ed and ex.
+ <ul class='incremental'>
+ <li>Learn to read when he was 3 years old.</li>
+ <li>Prodigy alumni of UC Berkeley.</li>
+ <li>One of the main contributors and designers of BSD.</li>
+ <li>One of the core devs of the foundation of SunOS, now Solaris.</li>
+ <li>Sun Microsystems engineer.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide cover">
+ <br />
+ <!--<h1>Vim ne Vi</h1> -->
+<div style="text-align: center;">
+<p><strong>Vim ne Vi</strong></p>
+ <p> ne eq "not equal"<br />
+ eq === "equal"</p>
+</div>
+</div>
+<div class="slide dos">
+ <h1>Introduction</h1>
+ <br />
+ <div>
+ <h3>How do you use it?</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>How do you eat it?
+ <ul class='incremental'>
+ <li>Vim is modular.</li>
+ <li>Depending on the mode it is, it will be its interpretation.</li>
+ <li>Each key is a command or an action.</li>
+ <li>Vim is never wrong, Vim never makes mistakes, We make mistakes.</li>
+ <li>Vim handles texts, not files.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide">
+ <h1>Philosophy</h1>
+ <br />
+ <div>
+ <h3>KISS.</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li><strong>K</strong>eep <strong>I</strong>t <strong>S</strong>imple <strong>S</strong>tupid
+ <ul class='incremental'>
+ <li>Minimalism is beauty.</li>
+ <li>Write software that only manages text.</li>
+ <li>Choose portability over efficiency.</li>
+ <li>Every file should be a text file.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide">
+ <h1>Philosophy</h1>
+ <br />
+ <div>
+ <h3>Programmer Virtues.</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>1. Laziness
+ <ul class='incremental'>
+ <li>Repetitive tasks must be automated.</li>
+ <li>Put your focus and attention in complex and interesting problems.</li>
+ <li>Let the computer work for you, after all, it is the computer!</li>
+ <li>Computer = Computing.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide">
+ <h1>Philosophy</h1>
+ <br />
+ <div>
+ <h3>Programmer Virtues.</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>2. Impatience
+ <ul class='incremental'>
+ <li>Solve the task or problem as soon as possible.</li>
+ <li>Don't leave an unsolved problem for tomorrow.</li>
+ <li>Solve today, to relax tomorrow. :D </li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide">
+ <h1>Philosophy</h1>
+ <br />
+ <div>
+ <h3>Programmer Virtues</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>3. Hubris
+ <ul class='incremental'>
+ <li>Try to make a good implementation.</li>
+ <li>A short code that solves a hard task, will always be acclaimed.</li>
+ <li>Good code has its consequences: Respect, opportunities and good future.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide">
+ <h1>Philosophy</h1>
+ <br />
+ <div>
+ <h3>Don't type, edit</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>Not typing is good. (Laziness) </li>
+ <li>Living in Insert Mode is the biggest sin. (Laziness)</li>
+ </ul>
+ </div>
+</div>
+<div class="slide dos">
+ <h1>The Zen of Vim</h1>
+ <br />
+ <div>
+ <h3>Control your energy.</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>Command line. Press ' : '
+ <ul class='incremental'>
+ <li><code>:e file</code> - <strong>e</strong>dit file.(open)</li>
+ <li><code>:q</code> - <strong>q</strong>uit.
+ <li><code>:w</code> - <strong>w</strong>rite.(save)</li>
+ <li><code>:r</code> - <strong>r</strong>ead.(insert another file)</li>
+ <li><code>!date</code> - call an external application an pipe it to Vim.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide dos">
+ <h1>The Zen of Vim</h1>
+ <br />
+<div style="text-align: center;">
+ <h3>Don't waste your energy moving.</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>Command Mode.
+ <ul class='incremental'>
+ <li>Use <code>h,j,k,l</code>.</li>
+ <li><code>left,down,up,right</code>.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide dos">
+ <h1>The Zen of Vim</h1>
+ <br />
+<div style="text-align: center;">
+ <h3>Don't waste your energy moving.</h3>
+ <div class='incremental'>
+ <table>
+ <tr>
+ <th class="vi_key">fx</th>
+ <td class="vi_explanation"><code><strong>f</strong>orward</code> - Moves the cursor to the next character defined by <code>x</code></td>
+ </tr>
+ <tr>
+ <th class="vi_key">tx</th>
+ <td class="vi_explanation">Moves the cursor to the next character after <code>x</code></td>
+ </tr>
+ <tr>
+ <th class="vi_key">Fx</th>
+ <td class="vi_explanation">Inverse action of <code>fx</code>.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">w</th>
+ <td class="vi_explanation">Moves the cursor to the first word infront of it.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">b</th>
+ <td class="vi_explanation">Inverse action of <code>w</code>.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">0</th>
+ <td class="vi_explanation">Moves the cursor to the beginning of the current line.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">^</th>
+ <td class="vi_explanation">Moves the cursor to the first character of the current line.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">$</th>
+ <td class="vi_explanation">Moves the cursor to the last character of the current line.</td>
+ </tr>
+ </table>
+ </div>
+ </div>
+</div>
+<div class="slide dos">
+ <h1>The Zen of Vim</h1>
+ <br />
+<div style="text-align: center;">
+ <h3>Don't run through the valley, jump it.</h3>
+ <div class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <table>
+ <tr>
+ <th class="vi_key">)</th>
+ <td class="vi_explanation">Moves the cursor to the next sentence.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">(</th>
+ <td class="vi_explanation">Inverse action of <code>)</code>.</td>
+ </tr>
+<tbody><tr>
+ <th class="vi_key">&lt;C-F&gt;</th>
+ <td class="vi_explanation">Moves the cursor through a whole window block.</td>
+</tr>
+<tr>
+ <th class="vi_key">&lt;C-B&gt;</th>
+ <td class="vi_explanation">Inverse action of <code>C-F</code>.</td>
+</tr>
+<tr>
+ <th class="vi_key">gg</th>
+ <td class="vi_explanation">Moves the cursor to the beginning of the file.</td>
+</tr>
+<tr>
+ <th class="vi_key">G</th>
+ <td class="vi_explanation">Moves the cursor to the end of the file.</td>
+</tr>
+<tr>
+ <th class="vi_key"><em>num</em>G</th>
+ <td class="vi_explanation">Moves the cursor to the line <em>num</em>.</td>
+</tr>
+ </table>
+ </div>
+ </div>
+</div>
+<div class="slide dos">
+ <h1>The Zen of Vim</h1>
+ <br />
+<div style="text-align: center;">
+ <h3>Don't run through the valley, jump it.</h3>
+ <div class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <table>
+ <tr>
+ <th class="vi_key">H</th>
+ <td class="vi_explanation">Moves the cursor to the top of the window.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">M</th>
+ <td class="vi_explanation">Moves the cursor to the half of the window.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">L</th>
+ <td class="vi_explanation">Inverse action of <code>H</code>.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">*</th>
+ <td class="vi_explanation">Selects the word under cursor, and seeks forward for the next occurrence.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">#</th>
+ <td class="vi_explanation">Inverse action of <code>*</code>.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">/<em>palabra</em></th>
+ <td class="vi_explanation">Seeks the word after '/', and moves the cursor.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">?<em>palabra</em></th>
+ <td class="vi_explanation">Inverse action of <code>'/'</code>.</td>
+ </tr>
+ </table>
+ </div>
+ </div>
+</div>
+<div class="slide dos">
+ <h1>The Zen of Vim</h1>
+ <br />
+<div style="text-align: center;">
+ <h3>Don't run through the valley, jump it.</h3>
+ <div class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <table>
+<tr>
+ <th class="vi_key">ma</th>
+ <td class="vi_explanation">Creates a Mark in current position</td>
+</tr>
+<tr>
+ <th class="vi_key">`a</th>
+ <td class="vi_explanation">Moves the cursor to the mark 'a' in the file.</td>
+</tr>
+<tr>
+ <th class="vi_key">`.</th>
+ <td class="vi_explanation">Go to the last modification made.</td>
+</tr>
+ </table>
+ </div>
+ </div>
+</div>
+<div class="slide dos">
+ <h1>The Zen of Vim</h1>
+<div style="text-align: center;">
+ <h3>Recycle, Reduce, Reuse</h3>
+ <div class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <table>
+ <tbody>
+<tr>
+ <th class="vi_key">v</th>
+ <td class="vi_explanation">Selection per character.</td>
+</tr>
+<tr>
+ <th class="vi_key">V</th>
+ <td class="vi_explanation">Selection per lines.</td>
+</tr>
+<tr>
+ <th class="vi_key">&lt;C-V&gt;</th>
+ <td class="vi_explanation">Underlines blocks of characters.</td>
+</tr>
+ <tr>
+ <th class="vi_key">d{acción}</th>
+ <td class="vi_explanation"><strong>d</strong>elete. Erase(cuts) the text, and sends it to the clipboard.</td>
+</tr>
+ <tr>
+ <th class="vi_key">dd</th>
+ <td class="vi_explanation">Erase(cut) the entire line under the cursor, and sends it to the clipboard.</td>
+</tr>
+<tr>
+ <th class="vi_key">y</th>
+ <td class="vi_explanation"><strong>y</strong>ank. (Copy). Similar action as <code>d</code>, but this only sends to the clipboard.</td>
+</tr>
+<tr>
+ <th class="vi_key">c</th>
+ <td class="vi_explanation"><strong>c</strong>ut. Similar action as <code>d</code>, but this ones activates insert mode.</td>
+</tr>
+<tr>
+ <th class="vi_key">p</th>
+ <td class="vi_explanation"><strong>p</strong>aste. Paste what is in current clipboard.</td>
+</tr>
+ </tbody>
+ </table>
+ </div>
+ </div>
+</div>
+<div class="slide dos">
+ <h1>The Zen of Vim</h1>
+ <br />
+<div style="text-align: center;">
+ <h3>Only record the essential.</h3>
+ <div class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <table>
+ <tr>
+ <th class="vi_key">i</th>
+ <td class="vi_explanation">Enters Insert Mode.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">I</th>
+ <td class="vi_explanation">Enters Insert Mode, and places the cursor at the beginning of the current line.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">a</th>
+ <td class="vi_explanation">Inverse action of <code>i</code>.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">A</th>
+ <td class="vi_explanation">Inverse action of <code>I</code>.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">o</th>
+ <td class="vi_explanation">Creates a new line below current position of the cursor, <br />and enters Insert mode.</td>
+ </tr>
+ <tr>
+ <th class="vi_key">O</th>
+ <td class="vi_explanation">Inverse action of <code>o</code>.</td>
+ </tr>
+ </table>
+ </div>
+ </div>
+</div>
+<div class="slide dos">
+ <h1>The Zen of Vim</h1>
+ <br />
+<div style="text-align: center;">
+ <h3>The one that repeats itself, loses</h3>
+ <div class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <table>
+<tr>
+ <th class="vi_key">q<em>keyword</em></th>
+ <td class="vi_explanation">Starts recording of a macro under the name keyword.</td>
+</tr>
+<tr>
+ <th class="vi_key">q</th>
+ <td class="vi_explanation">Ends the recording of the macro.</td>
+</tr>
+<tr>
+ <th class="vi_key">@<em>registro</em></th>
+ <td class="vi_explanation">Activates the macro keyword.</td>
+</tr>
+<tr>
+ <th class="vi_key"><code>.</code></th>
+ <td class="vi_explanation"><strong>Dot</strong>. Repeats the last action made.</td>
+</tr>
+ </table>
+ </div>
+ </div>
+</div>
+<div class="slide dos">
+ <h1>The Zen of Vim</h1>
+ <br />
+<div style="text-align: center;">
+ <h3>Beauty is essence.</h3>
+ <div class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <table>
+<tr>
+ <th class="vi_key">]p</th>
+ <td class="vi_explanation">Pre-formats the text that will be paste.</td>
+</tr>
+<tr>
+ <th class="vi_key">%</th>
+ <td class="vi_explanation">If the cursor is placed at <strong>{,[,(</strong>, seeks for the related closing cursor.</td>
+</tr>
+<tr>
+ <th class="vi_key">&gt;&gt;</th>
+ <td class="vi_explanation">Formats a block of text.</td>
+</tr>
+<tr>
+ <th class="vi_key">&lt;&lt;</th>
+ <td class="vi_explanation">Inverse action of <strong>&lt;&lt;</strong>.</td>
+</tr>
+ </table>
+ </div>
+ </div>
+</div>
+<div class="slide">
+ <h1>Siete hábitos para editar<br /> texto efectivamente.</h1>
+ <br />
+ <div>
+ <h3>Move around quickly</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>Navigating a text file is a common habit.<br />
+ Learn to browse while you jump text, without typing repeatedly.
+ <ul class='incremental'>
+ <li>Use <strong><code>/pattern</code></strong> to search and move to a keyword.</li>
+ <li>Use <strong><code>%</code></strong> to move between logic blocks and loops.</li>
+ <li>For repeating functions, words, and variables, use <strong><code>*</code></strong>.</li>
+ <li>Use <strong><code>ngg</code></strong> where <strong>n</strong> is the number of a line.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+
+<div class="slide cover">
+ <br />
+ <h1>Don't type it twice</h1>
+ <p>Three simple steps:</p>
+<div style="text-align: center;">
+ <ul>
+ <li>1. While editing a text file, notice how many times you repeat the same keystrokes or movements.</li>
+ <li>2. Lookup for a command, action, or a plugin, so that editor works around the repetition.</li>
+ <li>3. Practice that command or action until it's part of your muscle memory</li>
+ </ul>
+</div>
+</div>
+<div class="slide">
+ <h1>Seven habits of effective text editing.</h1>
+ <div>
+ <h3>Don't type it twice</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>Typing the same thing in insert mode, is like reinventing the wheel.<br />
+ <ul class='incremental'>
+ <li>Use <strong><code>:s</code></strong> to automagically substitute a keyword in the entire file.</li>
+ <li>Use <strong><code>.</code></strong> to insert the last word written.</li>
+ <li>For inserting functions, variables, and words, that repeat a lot in the entire file, use <strong><code>C-N</code></strong>.</li>
+ <li>To insert files, directories, and paths, use <strong><code>C-X + C-F</code></strong>.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide">
+ <h1>Seven habits of effective text editing.</h1>
+ <div>
+ <h3>Fix it when it's wrong</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>If you keep typing a wrong word or it repeats, it must be corrected.<br />
+ <ul class='incremental'>
+ <li>Use <strong><code>:abbr Lunix Linux</code></strong> to fix a keyword in the entire file.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide">
+ <h1>Seven habits of effective text editing</h1>
+ <div>
+ <h3>A file seldom comes alone.</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>Every text file has another text file in common.<br />
+ Edit with various windows, tabs, and buffers. Divide and conquer.
+ <ul class='incremental'>
+ <li>Use <strong><code>C-w + s</code></strong> to divide the window area horizontally.</li>
+ <li>Use <strong><code>C-w + v</code></strong> to divide the window area vertically.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide">
+ <h1>Seven habits of effective text editing</h1>
+ <div>
+ <h3>Unity makes strength</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>Vim was made around Unix philosophy,<br />
+ make use of that text stream .
+ <ul class='incremental'>
+ <li>Use <strong><code>:r file</code></strong> to insert a entire content of a file to the current window.</li>
+ <li>Use <strong><code>:r ! grep 192.168.1.102 log</code></strong> to insert text from the stream of another application.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide">
+ <h1>Seven habits of effective text editing</h1>
+ <div>
+ <h3>Text is structured</h3>
+ <ul class='incremental'>
+ <!-- topic 1 starts cullapsed -->
+ <li>In code and formal texts,<br />
+ the format and the order, matter more than the content of a file.
+ <ul class='incremental'>
+ <li>To format a text to the default setting, use <strong><code>=G</code></strong>.</li>
+ <li>To structure a text line or block, utiliza <strong><code>>></code></strong>.</li>
+ <li>Inverse action of <strong><code>>></code></strong>, use <strong><code>&lt;&lt;</code></strong>.</li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="slide">
+ <h1>Seven habits of effective text editing</h1>
+ <div class='incremental'>
+ <h3>Make it a habit (sharpen the saw)</h3>
+ <!--<ul class='incremental'>-->
+ <!-- topic 1 starts cullapsed -->
+ <p>More than practice, mastery comes from analyzing your actions.
+ Every time you take the time to analyze and study your moves, you can slowly grow to a zero point.
+ <p>Every IDE, text editor has its learning curve, ride it.</p>
+ <p>Like in any other Zen practice and philosophy, you have to think first, and then act.</p>
+ <!--</ul>-->
+ </div>
+</div>
+<div class="slide cover">
+ <br />
+ <h1>Making use of Vim</h1>
+<div style="text-align: center;">
+<p>Thanks for your time.<br /> Don't use Emacs.<br />No, I kid ^_^! use whatever you want.<br /> But please, please don't use nano, Por favor.</p>
+<strong>Carlos Ivan Sosa</strong> <p>gnusosa</p>
+<p><a href="http://github.com/gnusosa">github</a></p>
+<p><a href="http://log.gnusosa.net">log.gnusosa.net</a></p>
+</div>
+</div>
+</body>
+</html>
+