summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSam Tay <sam.chong.tay@gmail.com>2020-06-25 23:33:46 -0700
committerSam Tay <sam.chong.tay@gmail.com>2020-06-26 10:19:06 -0700
commit1b410e561cd932fb10f1c0884609a29889822a0f (patch)
tree75c79a8b87f0ee13254f46a3833ba9103c868e40
parent408660cb5d9a900921200d9cc43943e912f815e6 (diff)
Add demo gif
-rw-r--r--README.md9
-rw-r--r--TODO.md6
-rw-r--r--assets/demo.svg214
-rw-r--r--example.txt13
-rw-r--r--roadmap.md40
5 files changed, 243 insertions, 39 deletions
diff --git a/README.md b/README.md
index 23693ed..6453506 100644
--- a/README.md
+++ b/README.md
@@ -14,12 +14,15 @@
[s3]: https://img.shields.io/badge/license-MIT-blue.svg
[l3]: ./LICENSE
-<h5 align="center">A terminal interface for StackOverflow written in Rust</h5>
+<h5 align="center"> A terminal interface for StackOverflow written in Rust </h5>
-# so
+<h1 align="center">
+
+![](assets/demo.svg)
+
+</h1>
**Note**: still working out some kinks. Initial release not published just yet.
-**<Insert GIF here>**
## example usage
While I like the acronym *so*, this tool would actually be better described as
diff --git a/TODO.md b/TODO.md
index 3bfeec4..509b646 100644
--- a/TODO.md
+++ b/TODO.md
@@ -1,14 +1,14 @@
# TODO
### chores
-1. Make an example GIF
2. Move to github actions ASAP, travis & appveyor are a PITA. See resources below.
3. Benchmark parsing. Probaly way faster to use regex to find question IDs
within URLs (or *gasp* the entire doc).
4. Refactor layout handling (see TODO on `tui::views::LayoutView::relayout`)
+5. Release on AUR & Homebrew
### bugs
-0. Another parser bug: some links return /questions/tagged/; need to make sure
+0. **Priority** Another parser bug: some links return /questions/tagged/; need to make sure
we only select digits. Hello regex. (use test/duckduckgo/tagged.html to write
a new test).
1.
@@ -32,7 +32,7 @@ SpannedString, and own everything...
#### Endless improvements for the TUI
1. Add Shift+TAB to cycle focus backwards (just add CirculularFocus wrapper)
-3. Small text at bottom with '?' to bring up key mapping dialog
+3. **Priority** Small text at bottom with '?' to bring up key mapping dialog
1. Init with smaller layout depending on initial screen size.
2. Maybe cli `--auto-resize` option that changes layouts at breakpoints.
5. Maybe **[ESC]** cycles layout in the opposite direction? And stops at
diff --git a/assets/demo.svg b/assets/demo.svg
new file mode 100644
index 0000000..625cf30
--- /dev/null
+++ b/assets/demo.svg
@@ -0,0 +1,214 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="terminal" baseProfile="full" viewBox="0 0 720 495" width="720" version="1.1">
+ <defs>
+ <termtosvg:template_settings xmlns:termtosvg="https://github.com/nbedos/termtosvg">
+ <termtosvg:screen_geometry columns="90" rows="29"/>
+ <termtosvg:animation type="css"/>
+ </termtosvg:template_settings>
+ <style type="text/css" id="generated-style"><![CDATA[#screen {
+ font-family: 'DejaVu Sans Mono', monospace;
+ font-style: normal;
+ font-size: 14px;
+ }
+
+ text {
+ dominant-baseline: text-before-edge;
+ white-space: pre;
+ }
+
+ :root {
+ --animation-duration: 36716ms;
+ }
+
+ @keyframes roll {
+ 0.000%{transform:translateY(0px)}
+0.103%{transform:translateY(-510px)}
+1.422%{transform:translateY(-1020px)}
+1.694%{transform:translateY(-1530px)}
+1.953%{transform:translateY(-2040px)}
+2.955%{transform:translateY(-2550px)}
+3.086%{transform:translateY(-3060px)}
+3.285%{transform:translateY(-3570px)}
+3.516%{transform:translateY(-4080px)}
+3.936%{transform:translateY(-4590px)}
+4.276%{transform:translateY(-5100px)}
+4.317%{transform:translateY(-5610px)}
+5.839%{transform:translateY(-6120px)}
+6.022%{transform:translateY(-6630px)}
+6.692%{transform:translateY(-7140px)}
+7.239%{transform:translateY(-7650px)}
+7.490%{transform:translateY(-8160px)}
+7.898%{transform:translateY(-8670px)}
+8.075%{transform:translateY(-9180px)}
+8.863%{transform:translateY(-9690px)}
+9.369%{transform:translateY(-10200px)}
+9.688%{transform:translateY(-10710px)}
+11.554%{transform:translateY(-11220px)}
+11.575%{transform:translateY(-11730px)}
+13.199%{transform:translateY(-12240px)}
+16.886%{transform:translateY(-12750px)}
+16.889%{transform:translateY(-13260px)}
+20.457%{transform:translateY(-13770px)}
+20.650%{transform:translateY(-14280px)}
+20.800%{transform:translateY(-14790px)}
+21.388%{transform:translateY(-15300px)}
+21.898%{transform:translateY(-15810px)}
+22.069%{transform:translateY(-16320px)}
+22.601%{transform:translateY(-16830px)}
+22.840%{transform:translateY(-17340px)}
+23.230%{transform:translateY(-17850px)}
+23.576%{transform:translateY(-18360px)}
+23.772%{transform:translateY(-18870px)}
+24.235%{transform:translateY(-19380px)}
+24.355%{transform:translateY(-19890px)}
+25.931%{transform:translateY(-20400px)}
+26.381%{transform:translateY(-20910px)}
+26.593%{transform:translateY(-21420px)}
+27.473%{transform:translateY(-21930px)}
+27.732%{transform:translateY(-22440px)}
+28.004%{transform:translateY(-22950px)}
+28.522%{transform:translateY(-23460px)}
+28.993%{transform:translateY(-23970px)}
+29.407%{transform:translateY(-24480px)}
+29.864%{transform:translateY(-24990px)}
+30.229%{transform:translateY(-25500px)}
+30.540%{transform:translateY(-26010px)}
+30.799%{transform:translateY(-26520px)}
+31.395%{transform:translateY(-27030px)}
+31.801%{transform:translateY(-27540px)}
+31.992%{transform:translateY(-28050px)}
+36.886%{transform:translateY(-28560px)}
+37.343%{transform:translateY(-29070px)}
+37.526%{transform:translateY(-29580px)}
+38.275%{transform:translateY(-30090px)}
+38.610%{transform:translateY(-30600px)}
+40.081%{transform:translateY(-31110px)}
+40.179%{transform:translateY(-31620px)}
+40.424%{transform:translateY(-32130px)}
+40.783%{transform:translateY(-32640px)}
+41.630%{transform:translateY(-33150px)}
+41.954%{transform:translateY(-33660px)}
+42.142%{transform:translateY(-34170px)}
+44.351%{transform:translateY(-34680px)}
+44.534%{transform:translateY(-35190px)}
+44.686%{transform:translateY(-35700px)}
+44.874%{transform:translateY(-36210px)}
+45.226%{transform:translateY(-36720px)}
+45.972%{transform:translateY(-37230px)}
+46.394%{transform:translateY(-37740px)}
+46.753%{transform:translateY(-38250px)}
+46.933%{transform:translateY(-38760px)}
+47.176%{transform:translateY(-39270px)}
+47.516%{transform:translateY(-39780px)}
+47.636%{transform:translateY(-40290px)}
+48.083%{transform:translateY(-40800px)}
+48.401%{transform:translateY(-41310px)}
+48.548%{transform:translateY(-41820px)}
+48.777%{transform:translateY(-42330px)}
+48.829%{transform:translateY(-42840px)}
+49.243%{transform:translateY(-43350px)}
+49.504%{transform:translateY(-43860px)}
+49.719%{transform:translateY(-44370px)}
+49.989%{transform:translateY(-44880px)}
+50.245%{transform:translateY(-45390px)}
+50.929%{transform:translateY(-45900px)}
+50.997%{transform:translateY(-46410px)}
+51.659%{transform:translateY(-46920px)}
+51.887%{transform:translateY(-47430px)}
+52.190%{transform:translateY(-47940px)}
+52.579%{transform:translateY(-48450px)}
+52.936%{transform:translateY(-48960px)}
+53.271%{transform:translateY(-49470px)}
+53.688%{transform:translateY(-49980px)}
+53.726%{transform:translateY(-50490px)}
+55.861%{transform:translateY(-51000px)}
+55.913%{transform:translateY(-51510px)}
+58.754%{transform:translateY(-52020px)}
+58.756%{transform:translateY(-52530px)}
+61.485%{transform:translateY(-53040px)}
+61.537%{transform:translateY(-53550px)}
+61.540%{transform:translateY(-54060px)}
+61.543%{transform:translateY(-54570px)}
+66.568%{transform:translateY(-55080px)}
+66.570%{transform:translateY(-55590px)}
+68.804%{transform:translateY(-56100px)}
+69.964%{transform:translateY(-56610px)}
+71.457%{transform:translateY(-57120px)}
+75.172%{transform:translateY(-57630px)}
+79.625%{transform:translateY(-58140px)}
+81.044%{transform:translateY(-58650px)}
+84.012%{transform:translateY(-59160px)}
+85.829%{transform:translateY(-59670px)}
+85.922%{transform:translateY(-60180px)}
+86.025%{transform:translateY(-60690px)}
+86.120%{transform:translateY(-61200px)}
+86.216%{transform:translateY(-61710px)}
+86.393%{transform:translateY(-62220px)}
+86.485%{transform:translateY(-62730px)}
+86.578%{transform:translateY(-63240px)}
+86.673%{transform:translateY(-63750px)}
+86.766%{transform:translateY(-64260px)}
+86.943%{transform:translateY(-64770px)}
+87.038%{transform:translateY(-65280px)}
+87.131%{transform:translateY(-65790px)}
+87.229%{transform:translateY(-66300px)}
+87.322%{transform:translateY(-66810px)}
+87.417%{transform:translateY(-67320px)}
+87.594%{transform:translateY(-67830px)}
+87.689%{transform:translateY(-68340px)}
+87.785%{transform:translateY(-68850px)}
+87.877%{transform:translateY(-69360px)}
+87.973%{transform:translateY(-69870px)}
+88.150%{transform:translateY(-70380px)}
+88.242%{transform:translateY(-70890px)}
+88.338%{transform:translateY(-71400px)}
+88.433%{transform:translateY(-71910px)}
+88.536%{transform:translateY(-72420px)}
+88.623%{transform:translateY(-72930px)}
+88.801%{transform:translateY(-73440px)}
+88.896%{transform:translateY(-73950px)}
+88.991%{transform:translateY(-74460px)}
+89.087%{transform:translateY(-74970px)}
+89.182%{transform:translateY(-75480px)}
+90.917%{transform:translateY(-75990px)}
+90.919%{transform:translateY(-76500px)}
+92.829%{transform:translateY(-77010px)}
+92.834%{transform:translateY(-77520px)}
+97.271%{transform:translateY(-78030px)}
+97.276%{transform:translateY(-78540px)}
+100.000%{transform:translateY(-78540px)}
+ }
+
+ #screen_view {
+ animation-duration: 36716ms;
+ animation-iteration-count:infinite;
+ animation-name:roll;
+ animation-timing-function: steps(1,end);
+ animation-fill-mode: forwards;
+ }
+ ]]></style>
+ <style type="text/css" id="user-style">
+ /* The colors defined below are the default 16 colors used for rendering text of the terminal. Adjust
+ them as needed.
+ Solarized light color theme (http://ethanschoonover.com/solarized) */
+ .foreground {fill: #586e75;}
+ .background {fill: #fdf6e3;}
+ .color0 {fill: #fdf6e3;}
+ .color1 {fill: #dc322f;}
+ .color2 {fill: #859900;}
+ .color3 {fill: #b58900;}
+ .color4 {fill: #268bd2;}
+ .color5 {fill: #6c71c4;}
+ .color6 {fill: #2aa198;}
+ .color7 {fill: #586e75;}
+ .color8 {fill: #839496;}
+ .color9 {fill: #cb4b16;}
+ .color10 {fill: #eee8d5;}
+ .color11 {fill: #93a1a1;}
+ .color12 {fill: #657b83;}
+ .color13 {fill: #073642;}
+ .color14 {fill: #d33682;}
+ .color15 {fill: #002b36;}
+ </style>
+ </defs>
+ <svg id="screen" width="720" height="493" viewBox="0 0 720 493" preserveAspectRatio="xMidYMin slice"><rect class="background" height="100%" width="100%" x="0" y="0"/><defs><g id="g1"><text x="0" textLength="8" class="background"> </text></g><g id="g2"><text x="0" textLength="8" class="color4">~</text><text x="8" textLength="712" class="foreground"> </text></g><g id="g3"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="8" class="background"> </text><text x="24" textLength="696" class="foreground"> </text></g><g id="g4"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="8" text-decoration="underline" class="foreground">s</text><text x="24" textLength="8" class="background"> </text><text x="32" textLength="688" class="foreground"> </text></g><g id="g5"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="8" class="background"> </text><text x="40" textLength="680" class="foreground"> </text></g><g id="g6"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="8" class="foreground"> </text><text x="40" textLength="8" class="background"> </text><text x="48" textLength="672" class="foreground"> </text></g><g id="g7"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="16" class="foreground"> h</text><text x="48" textLength="8" class="background"> </text><text x="56" textLength="664" class="foreground"> </text></g><g id="g8"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="24" class="foreground"> ho</text><text x="56" textLength="8" class="background"> </text><text x="64" textLength="656" class="foreground"> </text></g><g id="g9"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="32" class="foreground"> how</text><text x="64" textLength="8" class="background"> </text><text x="72" textLength="648" class="foreground"> </text></g><g id="g10"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="40" class="foreground"> how </text><text x="72" textLength="8" class="background"> </text><text x="80" textLength="640" class="foreground"> </text></g><g id="g11"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="48" class="foreground"> how d</text><text x="80" textLength="8" class="background"> </text><text x="88" textLength="632" class="foreground"> </text></g><g id="g12"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="56" class="foreground"> how do</text><text x="88" textLength="8" class="background"> </text><text x="96" textLength="624" class="foreground"> </text></g><g id="g13"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="64" class="foreground"> how do </text><text x="96" textLength="8" class="background"> </text><text x="104" textLength="616" class="foreground"> </text></g><g id="g14"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="72" class="foreground"> how do I</text><text x="104" textLength="8" class="background"> </text><text x="112" textLength="608" class="foreground"> </text></g><g id="g15"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="80" class="foreground"> how do I </text><text x="112" textLength="8" class="background"> </text><text x="120" textLength="600" class="foreground"> </text></g><g id="g16"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="80" class="foreground"> how do I </text><text x="112" textLength="8" text-decoration="underline" class="foreground">e</text><text x="120" textLength="8" class="background"> </text><text x="128" textLength="592" class="foreground"> </text></g><g id="g17"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="80" class="foreground"> how do I </text><text x="112" textLength="16" text-decoration="underline" class="foreground">ex</text><text x="128" textLength="8" class="background"> </text><text x="136" textLength="584" class="foreground"> </text></g><g id="g18"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="104" class="foreground"> how do I exi</text><text x="136" textLength="8" class="background"> </text><text x="144" textLength="576" class="foreground"> </text></g><g id="g19"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="112" class="foreground"> how do I exit</text><text x="144" textLength="8" class="background"> </text><text x="152" textLength="568" class="foreground"> </text></g><g id="g20"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="120" class="foreground"> how do I exit </text><text x="152" textLength="8" class="background"> </text><text x="160" textLength="560" class="foreground"> </text></g><g id="g21"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="120" class="foreground"> how do I exit </text><text x="152" textLength="8" text-decoration="underline" class="foreground">V</text><text x="160" textLength="8" class="background"> </text><text x="168" textLength="552" class="foreground"> </text></g><g id="g22"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="120" class="foreground"> how do I exit </text><text x="152" textLength="16" text-decoration="underline" class="foreground">Vi</text><text x="168" textLength="8" class="background"> </text><text x="176" textLength="544" class="foreground"> </text></g><g id="g23"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="144" class="foreground"> how do I exit Vim</text><text x="176" textLength="8" class="background"> </text><text x="184" textLength="536" class="foreground"> </text></g><g id="g24"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="688" class="foreground"> how do I exit Vim </text></g><g id="g25"><text x="0" textLength="64" class="foreground">Hit the </text><text x="64" textLength="40" font-weight="bold" class="color15">[Esc]</text><text x="104" textLength="376" class="foreground"> key to enter "Normal mode". Then you can type </text><text x="480" textLength="8" class="color14">:</text><text x="488" textLength="184" class="foreground"> to enter "Command-line</text></g><g id="g26"><text x="0" textLength="128" class="foreground">mode". A colon (</text><text x="128" textLength="8" class="color14">:</text><text x="136" textLength="576" class="foreground">) will appear at the bottom of the screen and you can type in one of the</text></g><g id="g27"><text x="0" textLength="424" class="foreground"> following commands. To execute a command, press the </text><text x="424" textLength="56" font-weight="bold" class="color15">[Enter]</text><text x="480" textLength="40" class="foreground"> key.</text></g><g id="g28"><text x="0" textLength="8" fill="#585858">&#8226;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color14">:q</text><text x="32" textLength="168" class="foreground"> to quit (short for </text><text x="200" textLength="40" class="color14">:quit</text><text x="240" textLength="8" class="foreground">)</text></g><g id="g29"><text x="0" textLength="8" fill="#585858">&#8226;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="24" class="color14">:q!</text><text x="40" textLength="280" class="foreground"> to quit without saving (short for </text><text x="320" textLength="48" class="color14">:quit!</text><text x="368" textLength="8" class="foreground">)</text></g><g id="g30"><text x="0" textLength="8" fill="#585858">&#8226;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="24" class="color14">:wq</text><text x="40" textLength="144" class="foreground"> to write and quit</text></g><g id="g31"><text x="0" textLength="8" fill="#585858">&#8226;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="32" class="color14">:wq!</text><text x="48" textLength="632" class="foreground"> to write and quit even if file has only read permission (if file does not have</text></g><g id="g32"><text x="0" textLength="240" class="foreground">write permission: force write)</text></g><g id="g33"><text x="0" textLength="8" fill="#585858">&#8226;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color14">:x</text><text x="32" textLength="256" class="foreground"> to write and quit (similar to </text><text x="288" textLength="24" class="color14">:wq</text><text x="312" textLength="304" class="foreground">, but only write if there are changes)</text></g><g id="g34"><text x="0" textLength="8" fill="#585858">&#8226;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="40" class="color14">:exit</text><text x="56" textLength="224" class="foreground"> to write and exit (same as </text><text x="280" textLength="16" class="color14">:x</text><text x="296" textLength="8" class="foreground">)</text></g><g id="g35"><text x="0" textLength="8" fill="#585858">&#8226;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="24" class="color14">:qa</text><text x="40" textLength="192" class="foreground"> to quit all (short for </text><text x="232" textLength="64" class="color14">:quitall</text><text x="296" textLength="8" class="foreground">)</text></g><g id="g36"><text x="0" textLength="8" fill="#585858">&#8226;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="24" class="color14">:cq</text><text x="40" textLength="648" class="foreground"> to quit without saving and make Vim return non-zero error (i.e. exit with error)</text></g><g id="g37"><text x="0" textLength="480" class="foreground">You can also exit Vim directly from "Normal mode" by typing </text><text x="480" textLength="16" class="color14">ZZ</text><text x="496" textLength="216" class="foreground"> to save and quit (same as </text></g><g id="g38"><text x="0" textLength="16" class="color14">:x</text><text x="16" textLength="40" class="foreground">) or </text><text x="56" textLength="16" class="color14">ZQ</text><text x="72" textLength="184" class="foreground"> to just quit (same as </text><text x="256" textLength="24" class="color14">:q!</text><text x="280" textLength="304" class="foreground">). (Note that case is important here. </text><text x="584" textLength="16" class="color14">ZZ</text><text x="600" textLength="40" class="foreground"> and </text><text x="640" textLength="16" class="color14">zz</text><text x="656" textLength="56" class="foreground"> do not</text></g><g id="g39"><text x="0" textLength="176" class="foreground"> mean the same thing.)</text></g><g id="g40"><text x="0" textLength="432" class="foreground">Vim has extensive help - that you can access with the </text><text x="432" textLength="40" class="color14">:help</text><text x="472" textLength="232" class="foreground"> command - where you can find</text></g><g id="g41"><text x="0" textLength="472" class="foreground">answers to all your questions and a tutorial for beginners.</text></g><g id="g42"><text x="0" textLength="48" class="foreground">Press </text><text x="48" textLength="56" font-weight="bold" class="color15">[SPACE]</text><text x="104" textLength="368" class="foreground"> to see more results, or any other key to exit</text></g><g id="g43"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="16" class="foreground"> -</text><text x="48" textLength="8" class="background"> </text><text x="56" textLength="664" class="foreground"> </text></g><g id="g44"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="24" class="foreground"> -e</text><text x="56" textLength="8" class="background"> </text><text x="64" textLength="656" class="foreground"> </text></g><g id="g45"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="32" class="foreground"> -e </text><text x="64" textLength="8" class="background"> </text><text x="72" textLength="648" class="foreground"> </text></g><g id="g46"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="32" class="foreground"> -e </text><text x="64" textLength="8" text-decoration="underline" class="foreground">g</text><text x="72" textLength="8" class="background"> </text><text x="80" textLength="640" class="foreground"> </text></g><g id="g47"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="48" class="foreground"> -e go</text><text x="80" textLength="8" class="background"> </text><text x="88" textLength="632" class="foreground"> </text></g><g id="g48"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="56" class="foreground"> -e goo</text><text x="88" textLength="8" class="background"> </text><text x="96" textLength="624" class="foreground"> </text></g><g id="g49"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="64" class="foreground"> -e goog</text><text x="96" textLength="8" class="background"> </text><text x="104" textLength="616" class="foreground"> </text></g><g id="g50"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="72" class="foreground"> -e googl</text><text x="104" textLength="8" class="background"> </text><text x="112" textLength="608" class="foreground"> </text></g><g id="g51"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="80" class="foreground"> -e google</text><text x="112" textLength="8" class="background"> </text><text x="120" textLength="600" class="foreground"> </text></g><g id="g52"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="88" class="foreground"> -e google </text><text x="120" textLength="8" class="background"> </text><text x="128" textLength="592" class="foreground"> </text></g><g id="g53"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="96" class="foreground"> -e google -</text><text x="128" textLength="8" class="background"> </text><text x="136" textLength="584" class="foreground"> </text></g><g id="g54"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="104" class="foreground"> -e google -s</text><text x="136" textLength="8" class="background"> </text><text x="144" textLength="576" class="foreground"> </text></g><g id="g55"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="112" class="foreground"> -e google -s </text><text x="144" textLength="8" class="background"> </text><text x="152" textLength="568" class="foreground"> </text></g><g id="g56"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="120" class="foreground"> -e google -s a</text><text x="152" textLength="8" class="background"> </text><text x="160" textLength="560" class="foreground"> </text></g><g id="g57"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="128" class="foreground"> -e google -s as</text><text x="160" textLength="8" class="background"> </text><text x="168" textLength="552" class="foreground"> </text></g><g id="g58"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="136" class="foreground"> -e google -s ask</text><text x="168" textLength="8" class="background"> </text><text x="176" textLength="544" class="foreground"> </text></g><g id="g59"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="144" class="foreground"> -e google -s asku</text><text x="176" textLength="8" class="background"> </text><text x="184" textLength="536" class="foreground"> </text></g><g id="g60"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="152" class="foreground"> -e google -s askub</text><text x="184" textLength="8" class="background"> </text><text x="192" textLength="528" class="foreground"> </text></g><g id="g61"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="160" class="foreground"> -e google -s askubu</text><text x="192" textLength="8" class="background"> </text><text x="200" textLength="520" class="foreground"> </text></g><g id="g62"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="168" class="foreground"> -e google -s askubun</text><text x="200" textLength="8" class="background"> </text><text x="208" textLength="512" class="foreground"> </text></g><g id="g63"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="176" class="foreground"> -e google -s askubunt</text><text x="208" textLength="8" class="background"> </text><text x="216" textLength="504" class="foreground"> </text></g><g id="g64"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="184" class="foreground"> -e google -s askubuntu</text><text x="216" textLength="8" class="background"> </text><text x="224" textLength="496" class="foreground"> </text></g><g id="g65"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="192" class="foreground"> -e google -s askubuntu </text><text x="224" textLength="8" class="background"> </text><text x="232" textLength="488" class="foreground"> </text></g><g id="g66"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="200" class="foreground"> -e google -s askubuntu -</text><text x="232" textLength="8" class="background"> </text><text x="240" textLength="480" class="foreground"> </text></g><g id="g67"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="208" class="foreground"> -e google -s askubuntu -s</text><text x="240" textLength="8" class="background"> </text><text x="248" textLength="472" class="foreground"> </text></g><g id="g68"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="216" class="foreground"> -e google -s askubuntu -s </text><text x="248" textLength="8" class="background"> </text><text x="256" textLength="464" class="foreground"> </text></g><g id="g69"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="216" class="foreground"> -e google -s askubuntu -s </text><text x="248" textLength="8" text-decoration="underline" class="foreground">u</text><text x="256" textLength="8" class="background"> </text><text x="264" textLength="456" class="foreground"> </text></g><g id="g70"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="232" class="foreground"> -e google -s askubuntu -s un</text><text x="264" textLength="8" class="background"> </text><text x="272" textLength="448" class="foreground"> </text></g><g id="g71"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="240" class="foreground"> -e google -s askubuntu -s uni</text><text x="272" textLength="8" class="background"> </text><text x="280" textLength="440" class="foreground"> </text></g><g id="g72"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="248" class="foreground"> -e google -s askubuntu -s unix</text><text x="280" textLength="8" class="background"> </text><text x="288" textLength="432" class="foreground"> </text></g><g id="g73"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="256" class="foreground"> -e google -s askubuntu -s unix </text><text x="288" textLength="8" class="background"> </text><text x="296" textLength="424" class="foreground"> </text></g><g id="g74"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="264" class="foreground"> -e google -s askubuntu -s unix h</text><text x="296" textLength="8" class="background"> </text><text x="304" textLength="416" class="foreground"> </text></g><g id="g75"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="272" class="foreground"> -e google -s askubuntu -s unix ho</text><text x="304" textLength="8" class="background"> </text><text x="312" textLength="408" class="foreground"> </text></g><g id="g76"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="280" class="foreground"> -e google -s askubuntu -s unix how</text><text x="312" textLength="8" class="background"> </text><text x="320" textLength="400" class="foreground"> </text></g><g id="g77"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="288" class="foreground"> -e google -s askubuntu -s unix how </text><text x="320" textLength="8" class="background"> </text><text x="328" textLength="392" class="foreground"> </text></g><g id="g78"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="296" class="foreground"> -e google -s askubuntu -s unix how t</text><text x="328" textLength="8" class="background"> </text><text x="336" textLength="384" class="foreground"> </text></g><g id="g79"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="304" class="foreground"> -e google -s askubuntu -s unix how to</text><text x="336" textLength="8" class="background"> </text><text x="344" textLength="376" class="foreground"> </text></g><g id="g80"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="312" class="foreground"> -e google -s askubuntu -s unix how to </text><text x="344" textLength="8" class="background"> </text><text x="352" textLength="368" class="foreground"> </text></g><g id="g81"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="312" class="foreground"> -e google -s askubuntu -s unix how to </text><text x="344" textLength="8" text-decoration="underline" class="foreground">u</text><text x="352" textLength="8" class="background"> </text><text x="360" textLength="360" class="foreground"> </text></g><g id="g82"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="328" class="foreground"> -e google -s askubuntu -s unix how to us</text><text x="360" textLength="8" class="background"> </text><text x="368" textLength="352" class="foreground"> </text></g><g id="g83"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="336" class="foreground"> -e google -s askubuntu -s unix how to use</text><text x="368" textLength="8" class="background"> </text><text x="376" textLength="344" class="foreground"> </text></g><g id="g84"><text x="0" textLength="8" class="color5">&#10095;</text><text x="8" textLength="8" class="foreground"> </text><text x="16" textLength="16" class="color2">so</text><text x="32" textLength="344" class="foreground"> -e google -s askubuntu -s unix how to use </text><text x="376" textLength="8" class="background"> </text><text x="384" te