Content-Type: multipart/related; start=<op.mhtml.1347155245462.01811c3946789aa3@192.168.0.9>; boundary=----------a9APxZLKqhodIXhMP7ywl1
Content-Location: http://www.bigsmoke.us/readline/shortcuts
Subject: =?utf-8?Q?Readline=20keyboard=20shortcuts=20for=20bash,=20bc,=20ftp,=20gnuplot,=20gpg,=20ksh,=20mysql,=20psql,=20python,=20smbclient,=20xmllint=20and=20zsh?=
MIME-Version: 1.0

------------a9APxZLKqhodIXhMP7ywl1
Content-Disposition: inline; filename=shortcuts.xml
Content-Type: text/xml; name=shortcuts.xml
Content-ID: <op.mhtml.1347155245462.01811c3946789aa3@192.168.0.9>
Content-Location: file://localhost/home/felix/Download/shortcuts.xml
Content-Transfer-Encoding: 8bit

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="style.css"?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
  <head>
    <title>Readline keyboard shortcuts for bash, bc, ftp, gnuplot, gpg, ksh, mysql, psql, python, smbclient, xmllint and zsh</title>

    <meta name="created" scheme="W3CDTF" content="2006-05" />
    <meta name="issued" scheme="W3CDTF" content="2006-12-17" />
    <meta name="modified" scheme="W3CDTF" content="2007-05-13" />
    <meta name="identifier" scheme="URI" content="http://www.bigsmoke.us/readline/shortcuts" />
    <meta name="keywords" content="bash, bc, ftp, GNU, gnuplot, gpg, Linux, mysql, psql, python, Readline, smbclient, Un*x, xmllint" />

    <link rel="creator home" href="http://www.bigsmoke.us/" />
    <link class="generated" rel="meta" type="application/rdf+xml" href="shortcuts.rdf" />

    <style type="text/css">
      @media screen {
        body {
          padding-left: 250px;
        }

        .left_block {
          margin-top: 0;
          margin-left: -250px;
          width: 200px;
          float: left;
          clear: left;
        }

        .left_block p {
          margin-top: .75em;
          margin-bottom: 0;
        }

        h1, h2 {
          margin-top: 0;
        }

        #print-button {
          position: fixed;
          top: 4px;
          right: 4px;
        }
      }

      @media print {
        div.left_block {
          display: none;
        }

        #print-button {
          display: none;
        }
      }

      table#readline-commands {
        border-collapse: collapse;
        font-size: small;
      }

      table#readline-commands tr[title] td:hover {
        cursor: help;
      }

      table#readline-commands th,
      table#readline-commands td {
        border-bottom: 1px solid #eee;
        vertical-align: top;
      }

      table#readline-commands th {
        background-color: #eee;
      }

      table#readline-commands tr:last-child th,
      table#readline-commands tr:last-child td {
        border-bottom-color: #ccc;
      }

      table#readline-commands th.action_group {
        border-top: none;
        border-bottom-color: #ccc;
        background: inherit;
        color: #444;
      }

      table#readline-commands th#th-emacs,
      table#readline-commands td[headers=th-emacs] {
        border-left: solid 1px #dee;
        color: #500;
      }

      table#readline-commands th#th-action,
      table#readline-commands td[headers=th-action] {
        border-left: solid 1px #ede;
        color: #505;
      }

      table#readline-commands th#th-scope,
      table#readline-commands td[headers=th-scope] {
        border-left: solid 1px #dde;
        color: #005;
      }

      table#readline-commands th#th-direction,
      table#readline-commands td[headers=th-direction] {
        border-left: solid 1px #ded;
        color: #050;
      }
    </style>
  </head>

  <body>
    <div class="left_block">
      <h2>Readline shortcuts</h2>

      <p><abbr title="GNU's Not Unix">GNU</abbr> <a href="http://tiswww.case.edu/~chet/readline/rltop.html">Readline</a> is the library used to make advanced command-line wizardry convenient and conistent across a multitude of command-line applications. These programs include bash, bc, ftp, gnuplot, gpg, ksh, mysql, psql, python, smbclient, xmllint and zsh.</p>

      <p>The cheatsheet at the right contains a summary of many of the useful line editing command shortcuts which are available in all applications that use libreadline.</p>

      <p>See the <a href="http://tiswww.case.edu/~chet/readline/rltop.html#Documentation">documentation</a> on the Readline website for even more shortcuts with more elaborate descriptions.</p>

      <p style="text-align: right;">&#8211; <a href="mailto:rowan@bigsmoke.us">rowan@bigsmoke.us</a></p>
    </div>

    <table id="readline-commands" summary="This table contains a lot of useful line editing commands for apps that use the readline library.">
      <thead>
        <tr>
          <th style="background: inherit; border: none;" />
          <th id="th-emacs">Emacs keys</th>
          <th id="th-action">Action</th>
          <th id="th-scope">Scope</th>
          <th id="th-direction">Direction/Place</th>
        </tr>
      </thead>

      <tbody id="tgroup-move">
        <tr id="backward-char">
          <th rowspan="7" scope="row" class="action_group">Moving around</th>
          <td headers="th-emacs"><kbd>Ctrl-b</kbd></td>
          <td headers="th-action">Move the cursor</td>
          <td headers="th-scope">one character</td>
          <td headers="th-direction">&#8678; to the left</td>
        </tr>

        <tr id="forward-char">
          <td headers="th-emacs"><kbd>Ctrl-f</kbd></td>
          <td headers="th-action">Move the cursor</td>
          <td headers="th-scope">one character</td>
          <td headers="th-direction">&#8680; to the right</td>
        </tr>

        <tr id="backward-word" title="Move back to the start of the current or previous word. Words are composed of letters and digits.">
          <td headers="th-emacs"><kbd>Alt-b</kbd></td>
          <td headers="th-action">Move the cursor</td>
          <td headers="th-scope">one word</td>
          <td headers="th-direction">&#8678; to the left</td>
        </tr>

        <tr id="forward-word">
          <td headers="th-emacs"><kbd>Alt-f</kbd></td>
          <td headers="th-action">Move the cursor</td>
          <td headers="th-scope">one word</td>
          <td headers="th-direction">&#8680; to the right</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Ctrl-a</kbd></td>
          <td headers="th-action">Move the cursor</td>
          <td headers="th-scope"></td>
          <td headers="th-direction">&#8676; to the start of the line</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Ctrl-e</kbd></td>
          <td headers="th-action">Move the cursor</td>
          <td headers="th-scope"></td>
          <td headers="th-direction">&#8677; to the end of the line</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Ctrl-x-x</kbd></td>
          <td headers="th-action">Move the cursor</td>
          <td headers="th-scope"></td>
          <td headers="th-direction">
            &#8676;&#8677; to the start, and to the end again<br/>
          </td>
        </tr>
      </tbody>

      <tbody id="tgroup-cut-copy-paste">
        <tr>
          <th rowspan="8" scope="row" class="action_group">
          Cut, copy<br/>and paste
          </th>
          <td headers="th-emacs"><kbd>Backspace</kbd></td>
          <td headers="th-action">Delete</td>
          <td headers="th-scope">the character</td>
          <td headers="th-direction">&#8678; to the left of the cursor</td>
        </tr>

        <tr>
          <td headers="th-emacs">
            <kbd>DEL</kbd><br/>
            <kbd>Ctrl-d</kbd>
          </td>
          <td headers="th-action">Delete</td>
          <td headers="th-scope">the character</td>
          <td headers="th-direction">underneath the cursor</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Ctrl-u</kbd></td>
          <td headers="th-action">Delete</td>
          <td headers="th-scope">everything</td>
          <td headers="th-direction">&#8676; from the cursor back to the line start</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Ctrl-k</kbd></td>
          <td headers="th-action">Delete</td>
          <td headers="th-scope">everything</td>
          <td headers="th-direction">&#8677; from the cursor to the end of the line</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Alt-d</kbd></td>
          <td headers="th-action">Delete</td>
          <td headers="th-scope">word</td>
          <td headers="th-direction">&#8680; untill before the next word boundary</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Ctrl-w</kbd></td>
          <td headers="th-action">Delete</td>
          <td headers="th-scope">word</td>
          <td headers="th-direction">&#8678; untill after the previous word boundary</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Ctrl-y</kbd></td>
          <td headers="th-action">Yank/Paste</td>
          <td headers="th-scope">prev. killed text</td>
          <td headers="th-direction">at the cursor position</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Alt-y</kbd></td>
          <td headers="th-action">Yank/Paste</td>
          <td headers="th-scope">prev. prev. killed text</td>
          <td headers="th-direction">at the cursor position</td>
        </tr>
      </tbody>

      <tbody id="tgroup-history">
        <tr>
          <th rowspan="9" scope="row" class="action_group">History</th>
          <td headers="th-emacs"><kbd>Ctrl-p</kbd></td>
          <td headers="th-action">Move in history</td>
          <td headers="th-scope">one line</td>
          <td headers="th-direction">&#8679; before this line</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Ctrl-n</kbd></td>
          <td headers="th-action">Move in history</td>
          <td headers="th-scope">one line</td>
          <td headers="th-direction">&#8681; after this line</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Alt-></kbd></td>
          <td headers="th-action">Move in history</td>
          <td headers="th-scope">all the lines</td>
          <td headers="th-direction">&#8681; to the line currently being entered</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Ctrl-r</kbd></td>
          <td headers="th-action" colspan="2">Incrementally search the line history</td>
          <td headers="th-direction">&#8679; backwardly</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Ctrl-s</kbd></td>
          <td headers="th-action" colspan="2">Incrementally search the line history</td>
          <td headers="th-direction">&#8681; forwardly</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Ctrl-J</kbd></td>
          <td headers="th-action" colspan="3">End an incremental search</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Ctrl-G</kbd></td>
          <td headers="th-action" colspan="3">Abort an incremental search and restore the original line</td>
        </tr>

        <tr> 
          <td headers="th-emacs"><kbd>Alt-Ctrl-y</kbd></td>
          <td headers="th-action">Yank/Paste</td>
          <td headers="th-scope">arg. 1 of prev. cmnd</td>
          <td headers="th-direction">at the cursor position</td>
        </tr>

        <tr> 
          <td headers="th-emacs">
            <kbd>Alt-.</kbd><br/>
            <kbd>Alt-_</kbd>
          </td>
          <td headers="th-action">Yank/Paste</td>
          <td headers="th-scope">last arg of prev. cmnd</td>
          <td headers="th-direction">at the cursor position</td>
        </tr>
      </tbody>

      <tbody id="tgroup-undo">
        <tr>
          <th rowspan="4" scope="row" class="action_group">Undo</th>
          <td headers="th-emacs">
            <kbd>Ctrl-_</kbd><br/>
            <kbd>Ctrl-x</kbd><br/>
            <kbd>Ctrl-u</kbd>
          </td>
          <td headers="th-action" colspan="3">Undo the last editing command; you can undo all the way back to an empty line</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Alt-r</kbd></td>
          <td headers="th-action" colspan="3">Undo all changes made to this line</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Ctrl-l</kbd></td>
          <td headers="th-action" colspan="3">Clear the screen, reprinting the current line at the top</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Ctrl-l</kbd></td>
          <td headers="th-action" colspan="3">Clear the screen, reprinting the current line at the top</td>
        </tr>
      </tbody>

      <tbody id="tgroup-completion">
        <tr>
          <th rowspan="4" scope="row" class="action_group">Completion</th>
          <td headers="th-emacs"><kbd>TAB</kbd></td>
          <td headers="th-action" colspan="3">Auto-complete a name</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Alt-/</kbd></td>
          <td headers="th-action" colspan="3">Auto-complete a name (without smart completion)</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Alt-?</kbd></td>
          <td headers="th-action" colspan="3">List the possible completions of the preceeding text</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Alt-*</kbd></td>
          <td headers="th-action" colspan="3">Insert all possible completions of the preceeding text</td>
        </tr>
      </tbody>

      <tbody id="tgroup-transpose">
        <tr>
          <th rowspan="2" scope="row" class="action_group">Transpose</th>
          <td headers="th-emacs"><kbd>Ctrl-t</kbd></td>
          <td headers="th-action">Transpose/drag</td>
          <td headers="th-scope">char. before the cursor</td>
          <td headers="th-direction">&#8631; over the character at the cursor</td>
        </tr>

        <tr>
          <td headers="th-emacs"><kbd>Alt-t</kbd></td>
          <td headers="th-action">Transpose/drag</td>
          <td headers="th-scope">word before the cursor</td>
          <td headers="th-direction">&#8631; over the word at/after the cursor</td>
        </tr>
      </tbody>

    </table>
  </body>
</html>

------------a9APxZLKqhodIXhMP7ywl1
Content-Disposition: inline
Content-Type: text/css
Content-Location: file://localhost/home/felix/Download/screen.css
Content-Transfer-Encoding: 8bit

body {
  font-family: sans-serif;
}

h1, h2, h3, h4, h5, h6 {
  font-family: serif;
}

h2, h3, h4, h5, h6 {
  margin-bottom: -.2em;
}

/* A centered block */
.centered {
  /* Center the block */
  margin-left: auto;
  margin-right: auto;

  /* Make the block somewhat smaller than most browser windows. Otherwise, there'd be nothing to center.*/
  max-width: 600px;
}

.poetry {
  /* Poetry always looks ugly in sans-serif */
  font-family: serif;
}

/* BigSmoke Branding */

body.branded, body.has_header {
  padding-top: 60px;
}

#header {
  z-index: 30;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
  background: url('/img/banner-bw-1x60.png') repeat-x top;
}

/*
#header * {
  opacity: 0.2;
}

#header:hover * {
  opacity: 1.0;
}

body.index #header * {
  opacity: 1.0;
}
*/

#avatar {
  border: 1px solid #ccf;
  height: 50px;
  position: absolute;
  display: block;
  top: 2px;
  right: 2px;
  text-decoration: none;
}

body > #header,
body > #header #avatar {
  position: fixed;
}

/*
#header img.avatar {
  opacity: 0.6;
}*/

body.has_sidebar {
  margin-right: 40ex;
}

#sidebar {
  z-index: 20;
  background-color: white;
  color: inherit;
  position: absolute;
  position: fixed;
  opacity: .9;
  top: 60px;
  right: 0;
  border: none;
  width: 40ex;
  height: 100%;
  padding-left: 1ex;
  padding-right: .5ex;
  text-align: left;
  font-size: small;
}

/*
body.index > #sidebar,
#sidebar:hover {
  opacity: .9;
}
*/

/* A guide within a sidebar */
#sidebar .guide {
  margin-top: 1em;
  border-top: 1px solid #cdc;
  background: url('/img/corner-top-right.png') top right no-repeat;
}

/* A guide on the index page */
.index .guide {
  margin-top: 1em;
  margin-right: 1em;
  float: left;
  width: 40ex;
  border-top: 1px solid #cdc;
  background: url('/img/corner-top-right.png') top right no-repeat;
  font-size: small;
}

.guide h2 {
  margin: 0;
  color: #21746a;
  font-family: sans-serif;
  font-size: inherit;
  font-weight: bold;
}

.guide a:link,
.guide a:visited {
  text-decoration: none;
}

.guide a:link {
  color: #a1440a;
}

.guide a:hover,
.guide a:visited {
  color: #21746a;
}

.guide:hover a {
  border-bottom: 1px dotted;
}

.guide:hover a:hover {
  border-bottom: 1px solid;
}

body.branded #footer {
  position: relative;
}

#index .keywords {
  font-size: small;
}

#index .highlight {
  font-weight: bold;
}

#index .keyword.highlight {
  background-color: #ffc;
}

#index dl a.keyword {
  text-decoration: none;
  color: inherit;
}

#index dl a.keyword:hover {
}

table {
  border-collapse: collapse;
  font-size: 95%;
}

th {
  background-color: #eee;
}

th[scope=row] {
  border-right: 1px solid #eee;
  text-align: right;
}

th, td {
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  padding: 0 1ex;
}

th.invisible, td.invisible {
  border-top: none;
  border-bottom: none;
  visibility: hide;
}

.geek-code, .hacker-key {
  font-size: small;
}

abbr {
  cursor: help;
}

------------a9APxZLKqhodIXhMP7ywl1
Content-Disposition: inline
Content-Type: text/css
Content-Location: file://localhost/home/felix/Download/print.css
Content-Transfer-Encoding: 8bit

body {
  background-color: white;
  font-family: serif;
  color: black;
}

.poetry {
  font-family: fantasy, serif;
}

hr {
  margin: 1em 0;
  border-style: solid;
  border-color: black;
  border-width: 1pt 0 0 0;
  height: 0;
}

body > #header {
  display: none;
}

.ads, #bottom-ads iframe {
  display: none;
}

q {
  quotes: "\201C" "\201D" "\2018" "\2019";
}

a {
  background-color: inherit;
  text-decoration: none;
  color: inherit;
}

h2, h3, h4, h5, h6 {
  page-break-after: avoid;
}

------------a9APxZLKqhodIXhMP7ywl1
Content-Disposition: inline; filename=style.css
Content-Type: text/css; name=style.css
Content-Location: file://localhost/home/felix/Download/style.css
Content-Transfer-Encoding: 8bit

@import url('screen.css') screen;
@import url('print.css') print;

/* The following styles are for all media */

/* For poetry, it's usually nicest to center the text within the block. */
.centered.poetry {
  /* Center the text within the block */
  text-align: center;
}

/* For pages with very short content, it's nicest to vertically align the content to the middle as well. */
.short.centered {
  /* Center this block vertically */
  margin-top: auto;
  margin-bottom: auto;
}

.center.img {
  margin: 0 auto;
}

body {
}

hr.space {
  border: none;
  margin: 1.5em 0;
}

img {
  border: none;
}

.numbered-headings {
  counter-reset: h2 h3 h4 h5 h6;
}

.numbered-headings h2 {
  counter-increment: h2;
  counter-reset: h3;
}

.numbered-headings h3 {
  counter-increment: h3;
  counter-reset: h4;
}

.numbered-headings h4 {
  counter-increment: h4;
  counter-reset: h5;
}

.numbered-headings h2:before {
  content: counter(h2) ". ";
}

.numbered-headings h3:before {
  content: counter(h2) "." counter(h3) ". ";
}

.numbered-headings h4:before {
  content: counter(h2) "." counter(h3) "." counter(h4) ". ";
}

------------a9APxZLKqhodIXhMP7ywl1--
