From 031e20a5080942d25a1cd49c0d11b2435e916da0 Mon Sep 17 00:00:00 2001 From: Roman Zolotarev Date: Fri, 19 Apr 2019 20:11:33 +0000 Subject: [PATCH] add colophon, also, update style, suggest, thanx, index --- _footer.html | 6 -- _header.html | 251 +------------------------------------------------- also.md | 11 +++ colophon.html | 11 +++ index.md | 246 +++++++++++++++++++++++++++++++------------------ style.css | 244 ++++++++++++++++++++++++++++++++++++++++++++++++ suggest.html | 46 ++++----- suggest.png | Bin 0 -> 30144 bytes thanx.html | 5 + thanx.md | 3 - vi128.png | Bin 0 -> 148 bytes 11 files changed, 455 insertions(+), 368 deletions(-) create mode 100644 also.md create mode 100644 colophon.html create mode 100644 style.css create mode 100644 suggest.png create mode 100644 thanx.html delete mode 100644 thanx.md create mode 100644 vi128.png diff --git a/_footer.html b/_footer.html index 954939b..e69de29 100644 --- a/_footer.html +++ b/_footer.html @@ -1,6 +0,0 @@ -
- - - diff --git a/_header.html b/_header.html index ee1c3b6..8f00e02 100644 --- a/_header.html +++ b/_header.html @@ -1,256 +1,9 @@ - + - + - diff --git a/also.md b/also.md new file mode 100644 index 0000000..8064e84 --- /dev/null +++ b/also.md @@ -0,0 +1,11 @@ +

cool, take me back

+ +# See also + +[Edit text with vi(1)](https://rgz.ee/vi.html) by Roman Zolotarev
+[vi is not vim](https://hugodaniel.pt/posts/vi-is-not-vim/) by Hugo Daniel
+[vi help](http://www.jeffw.com/vi/vi_help.txt) by Jeff W
+[vi reference](http://www.ungerhu.com/jxh/vi.html) by Maarten Litmaath and James Hu
+[extremely concise cheatsheet](http://www.alphanrrrd.org/vi.html) by alphanrrrd
+[Graphical vi cheatsheet](http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html) by ViEmu
+[The vi archive and FAQ](http://git.larryhynes.net/vi/) (a mirror) by Ove Ruben R Olsen
diff --git a/colophon.html b/colophon.html new file mode 100644 index 0000000..991a6bc --- /dev/null +++ b/colophon.html @@ -0,0 +1,11 @@ +

got it, nice

+ +

Colophon

+ +

+This site is +created with vi,
+generated by ssg,
+running on OpenBSD and
+hosted by obsda.ms +

diff --git a/index.md b/index.md index 79f8948..a9abf26 100644 --- a/index.md +++ b/index.md @@ -1,175 +1,245 @@ -# Why vi Rocks +

+suggestion box – +latest additions – +see also – +colophon +

-**[vi](https://en.wikipedia.org/wiki/Vi)** is the _de facto_ standard -Unix editor, you find it in every *NIX derived OS. + -Here you will find a collection of commands, command sequences in -[vi(1)](https://man.openbsd.org/vi.1)/[ex(1)](https://man.openbsd.org/ex.1) -or with 3rd party unitilities which make -**[vi](https://en.wikipedia.org/wiki/Vi)** rock \m/. These all work -with at least [nvi](https://en.wikipedia.org/wiki/Nvi) 1.79 and -2.1.3 (unicode). +_[vi](https://en.wikipedia.org/wiki/Vi) is the **de facto** standard +text editor in any Unix-like operating system._ -We are always looking for [suggestions](/suggest.html) that go beyond the basics.
-For the latest additions check the [git repo](https://git.high5.nl/why-vi.rocks). -Helpful documents: +Here is a collection of [vi(1)](https://man.openbsd.org/vi.1)/[ex(1)](https://man.openbsd.org/ex.1) commands and command sequences.
+Tested with [nvi](https://en.wikipedia.org/wiki/Nvi) 1.79 and 2.1.3 (unicode). -- [Roman Zolotarev: Edit text with vi(1)](https://rgz.ee/vi.html)
-- [Hugo Daniel: vi is not vim](https://hugodaniel.pt/posts/vi-is-not-vim/)
-- [Jeff W: vi help](http://www.jeffw.com/vi/vi_help.txt) / [Maarten Litmaath: vi reference](http://www.ungerhu.com/jxh/vi.html)
-- [alphanrrrd: extremely concise cheatsheet](http://www.alphanrrrd.org/vi.html) / [ViEmu: Graphical vi cheatsheet](http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html)
-- [The vi archive and FAQ (mirror)](http://git.larryhynes.net/vi/) -#### Yank / delete an arbitrary number of lines +## Yank/delete lines - 1) mark the first line: mk - 2) move to last line - 3a) yank: y'k - 3b) delete: d'k - 4) move to destination line - 5) put with P or p +(1) mark the first line: `mk`
+(2) move to last line
+(3a) yank: `y'k`
+(3b) delete: `d'k`
+(4) move to destination line
+(5) put with `P` or `p`
-#### Apply regex to an arbitrary number of lines - 1) mark the first line: mk - 2) mark the last line: ml - :'k,'ls/regex/power/g +## Apply regex to lines -#### Add # to block of text +(1) mark the first line: `mk`
+(2) mark the last line: `ml`
- :'k,'ls/^/#/ +
+:'k,'ls/regex/power/g
+
-#### Remove trailing whitespace of block of text + +## Add # to a block + +
+:'k,'ls/^/#/
+
+ + +## Remove trailing whitespace from a block :'k,'ls/\ *$// -#### Remove the first N (5) characters from every line - :%s/^.\{0,5\}// +## Remove the first N characters from every line -#### Delete all lines N (10) characters long +N = 5 - :g/^.\{10\}$/d +
+:%s/^.\{0,5\}//
+
-#### Delete all lines _except_ N (10) characters long - :g!/^.\{10\}$/d +## Delete all lines N-character long -#### Search and replace PATHs, using different delimiter +N = 10 - :%s#/usr/local/log#/var/log#g +
+:g/^.\{10\}$/d
+
-#### Write file as root + +## Delete all lines _except_ N-character long + +N = 10 + +
+:g!/^.\{10\}$/d
+
+ + +## Search/replace paths using # as delimiter + +
+:%s#/usr/local/log#/var/log#g
+
+ + +## Write the file as root :w !doas tee % -#### Diff the file on disk with the file in the buffer + +## Diff the file on disk with the buffer :w !diff -u % - -#### Make a backup of the file on disk + +## Make a backup of the file on disk :!cp % %.bak -#### Sort all lines + +## Sort all lines :%!sort -#### Sort paragraph - !}sort +## Sort a block -} won't be shown in the command. +`}` won't be shown -#### Sort from current line to EOF +
+!}sort
+
- !Gsort -G won't be shown in the command. +## Sort from the current line to EOF -#### Uniq all lines +`G` won't be shown + +
+!Gsort
+
+ + +## Delete duplicated lines in the file :%!uniq -#### Uniq paragraph +## Delete duplicated lines in the block - !}uniq +`}` won't be shown -} won't be shown in the command. +
+!}uniq
+
-#### Uniq from current line to EOF +## Delete duplicated lines till EOF - !Guniq +`G` won't be shown -G won't be shown in the command. +
+!Guniq
+
-#### Underline all lines starting with CHAPTER - :g/^CHAPTER /t.|s/./=/g +## Underline all lines starting with `pattern` -#### Search for "pattern", print the containing function (start with def) and line number +
+:g/^pattern /t.|s/./=/g
+
- :g/pattern/?^ *def ?# -#### Add # to paragraph containing "pattern" +## Search for `pattern`, print the containing function (start with `def`) and line number - :g/pattern/?^$?+,//-s/^/# +
+:g/pattern/?^ *def ?#
+
-#### Sort content of multiline CSS blocks + +## Add # to paragraph containing `pattern` + +
+:g/pattern/?^$?+,//-s/^/#
+
+ + +## Sort content of a multiline CSS block :g/{$/+,/^}/-!sort -#### Sort content of multiline CSS blocks (media queries) + +## Sort content of a multiline CSS block (media queries) :g/^[^@].*{$/+,/}/-!sort -#### Reformat HTML paragraphs to a fixed width (40) - :g/

/+,/<\/p>/-!fmt -40 +## Format content of `

` tag to fixed width -#### Invert the order of all lines, move (m) all lines to 0 +width = 40 + +

+:g/<p>/+,/<\/p>/-!fmt -40
+
+ + +## Reverse all lines, move `m` all lines to 0 :g/1*/m0 -#### Swap "Lastname, Firstname" to "Firstname, Lastname" + +## Swap `Lastname, Firstname` to `Firstname, Lastname` :%s/\(.*\), \(.*\)/\2 \1/ -#### Change all text to lowercase + +## Convert to lowercase :%s/.*/\L&/ -#### Join all lines + +## Join all lines :%j -#### Copy (t) or move (m) lines containing "pattern" +## Copy `t` or move `m` lines containing `pattern` - :g/pattern/t$ - :g/pattern/m$ +
+:g/pattern/t$
+:g/pattern/m$
+
-#### Select a column (3rd) from formated text seperated by ':' +## Select a column of a table +Select 3rd column separated by colon (`:`) - :%!awk -F':' '{print $3}' +
+:%!awk -F':' '{print $3}'
+
-#### Insert the sum of a list of numbers after an arbitrary number of lines +## Insert the sum of a list of numbers after an arbitrary number of lines - 1) mark the first line: mk - 2) mark the last line: ml - :'k,'l!awk 'END{print "Total:", i}{i+=$1; print}' +1) mark the first line: `mk` +2) mark the last line: `ml` - More compact version: - :'k,'l!awk 'END{print "Total:", i} ++i || 1' +
+:'k,'l!awk 'END{print "total:", i}{i+=$1; print}'
+
-#### Email the current paragraph +or - :?^$?+,//-w !mail -s "" email@example.com +
+:'k,'l!awk 'END{print "total:", i} ++i || 1'
+
-#### Enable and use ex history +## Email the block - 1) Set ESC key to enable history, or add to .exrc: - :set cedit= +
+:?^$?+,//-w !mail -s "subject" email@example.com
+
- 2) Use it with: - : +## Enable and use `ex` history + +
+1) Set `ESC` key to enable history or add to `~/.exrc`:
+:set cedit=<CTRL-V><ESC>
+
+2) Use it with:
+:<ESC>
+
diff --git a/style.css b/style.css new file mode 100644 index 0000000..04cece5 --- /dev/null +++ b/style.css @@ -0,0 +1,244 @@ +html { font-size: 16px; -webkit-text-size-adjust: 100%; } +a { color: #204fd5; } +a:hover, a:visited:hover { color: #204fd5; } +a:visited { color: #334f83; } +hr { border: 0; margin-top: 2rem; } +li { padding: .125rem 0; } +p img, table { max-width: 100%; } +pre em { background-color: #fea; font-style: normal; } +pre i { font-style: normal; color: #333; } +pre b { color: #333; } +pre u { text-decoration: none; background-color: #c0e0ee; } +pre i::before { content: "> "; color: #aaa; } +pre strong { background-color: #0000cc; color: #fff; } +pre { font-size: 15px; overflow-x: auto; color: #000; } + + +a { background-color: transparent; } +a, blockquote, body, code, div, form, h1, h2, h3, html, input, li, ol, p, pre, table, td, textarea, th, tr, ul { box-sizing: border-box; } +button, input[type="submit"], input[type="text"], input[type="email"] { -webkit-appearance: none; -moz-appearance: none; overflow: visible; } +button, input, optgroup, select, textarea { font-family: inherit; font-size: 1rem; line-height: 1.5; margin: 0; } +button, select { text-transform: none; } +img { border-style: none; } +textarea { overflow: auto; } +h1, h2 { margin-bottom: 0; } +h1, h2 { margin-top: 2em; } +h2 { font-size: 1.25rem; } + +.b--black, .hover-b--black:hover { border-color: #000; } +.b--dark-gray, .hover-b--dark-gray:hover { border-color: #333; } +.b--dark-green, .hover-b--dark-green:hover, .hover-b--dark-green:focus { border-color: #116611; } +.b--dark-yellow, .hover-b--dark-yellow:hover, .hover-b--dark-yellow:focus { border-color: #e6e3b9; } +.b--light-gray, .hover-b--light-gray:hover { border-color: #ccc; } +.b--white-60, .hover-b--white-60 { border-color: rgba(255, 255, 255, .6); } +.b--yellow, .hover-b--yellow:hover, .hover-b--yellow:focus { border-color: #ffc439; } +.bg-black, .hover-bg-black:hover, .hover-bg-black:focus { background-color: #000; } +.bg-blue, .hover-bg-blue:hover, .hover-bg-blue:focus { background-color: #334f83; } +.bg-center { background-repeat: no-repeat; background-position: center center; } +.bg-dark-gray, .hover-bg-dark-gray:hover, .hover-bg-dark-gray:focus { background-color: #181b1b; } +.bg-gold, .hover-bg-gold:hover, .hover-bg-gold:focus { background-color: #ffb700; } +.bg-green, .hover-bg-green:hover, .hover-bg-green:focus { background-color: #34af00; } +.bg-light-yellow, .hover-bg-light-yellow:hover, .hover-bg-light-yellow:focus { background-color: #ffeeaa; } +.bg-navy, .hover-bg-navy:hover, .hover-bg-navy:focus { background-color: #001b44; } +.bg-near-white { background-color: #f4f4f4; } +.bg-oams, .hover-bg-oams:hover, .hover-bg-oams:focus { background-color: #ec0000; } +.bg-payp, .hover-bg-payp:hover, .hover-bg-payp:focus { background-color: #0070ba; } +.bg-ptrn, .hover-bg-ptrn:hover, .hover-bg-ptrn:focus { background-color: #f96854; } +.bg-vltr, .hover-bg-vltr:hover, .hover-bg-vltr:focus { background-color: #1e88e5; } +.bg-washed-yellow { background-color: #fffceb; } +.bg-white, .hover-bg-white:hover, .hover-bg-white:focus { background-color: #fff; } +.bg-xrpb, .hover-bg-xrpb:hover, .hover-bg-xrpb:focus { background-color: #808080; } +.bg-yellow, .hover-bg-yellow:hover, .hover-bg-yellow:focus { background-color: #ffc439; } +.black, .black:visited, .hover-black:hover, .hover-black:hover:visited, .hover-black:focus, .hover-black:hover:focus { color: #000; } +.black-60, .black-60:visited { color: rgba(0, 0, 0, .6); } +.contain { background-size: contain !important; } +.cover { background-size: cover !important; } +.dark-gray, .dark-gray:visited, .hover-dark-gray:hover, .hover-dark-gray:hover:visited, .hover-dark-gray:focus, .hover-dark-gray:hover:focus { color: #333; } +.dark-gray, .hover-dark-gray:hover { color: #333; } +.dark-red { color: #e7040f; } +.gray, .gray:visited, .hover-gray:hover, .hover-gray:hover:visited, .hover-gray:focus, .hover-gray:hover:focus { color: #808080; } +.hover-b--gold:hover { border-color: #ffb700; } +.hover-b--navy:hover { border-color: #001b44; } +.hover-b--oams:hover { border-color: #ec0000; } +.hover-b--payp:hover { border-color: #0070ba; } +.hover-b--ptrn:hover { border-color: #f96854; } +.hover-b--vltr:hover { border-color: #1e88e5; } +.hover-b--xrpb:hover { border-color: #808080; } +.near-white { color: #f4f4f4; } +.red, .red:visited, .hover-red:hover, .hover-red:hover:visited, .hover-red:focus, .hover-red:hover:focus { color: #b22; } +.white, .white:visited, .hover-white:hover, .hover-white:hover:visited, .hover-white:focus, .hover-white:hover:focus { color: #fff; } +.white-60 { color: rgba(255, 255, 255, .6); } + +.blur3 { filter: blur(3px) opacity(0.3); } +.right-1 { right: 1rem; } +.sticky { position: sticky; } +.top-0 { top: 0; } +.top-1 { top: 1rem; } +.z-index--1 { z-index: -1; } +.z-index-1 { z-index: 1; } + +.b { font-weight: bold; } +.b--dashed { border-style: dashed; } +.ba { border-width: 1px; border-style: solid; } +.bb { border-bottom-style: solid; border-bottom-width: 1px; } +.bb--dashed { border-bottom-style: dashed; border-bottom-width: 1px; } +.bn { border-width: 0; border-style: none; } +.br-100 { border-radius: 100%; } +.br1 { border-radius: .125rem; } +.br2 { border-radius: .25rem; } +.br3 { border-radius: .5rem; } +.br4 { border-radius: 1rem; } +.bt { border-top-style: solid; border-top-width: 1px; } +.bw-1 { border-width: 1px; } +.bw1 { border-width: .125rem; } +.bw2 { border-width: .25rem; } +.bw3 { border-width: .5rem; } +.cb { clear: both; } +.center { margin-right: auto; margin-left: auto; } +.cf { *zoom: 1; } +.cf:after { clear: both; } +.cf:before, .cf:after { content: " "; display: table; } +.code, pre, code { font-family: Consolas, Monaco, monospace; } +.dib { display: inline-block; } +.dim { opacity: 1; transition: opacity .15s ease-in; } +.dim:active { opacity: .8; transition: opacity .15s ease-out; } +.dim:hover, .dim:focus { opacity: .5; transition: opacity .15s ease-in; } +.f1 { font-size: 3rem; } +.f2 { font-size: 2.25rem; } +.f3 { font-size: 1.5rem; } +.f4 { font-size: 1.25rem; } +.f5 { font-size: 1rem; } +.f6 { font-size: .875rem; } +.f7 { font-size: .75rem; } +.fl { float: left; } +.fs-normal{ font-style: normal; } +.i { font-style: italic; } +.lh-copy { line-height: 1.5; } +.lh-solid, h1 { line-height: 1; } +.lh-title, h2, h3, pre { line-height: 1.25; } +.link { text-decoration: none; } +.link:focus, .outline:focus { outline: 1px solid #333; } +.ma0 { margin: 0; } +.mb0 { margin-bottom: 0; } +.mb2 { margin-bottom: .5rem; } +.mb3 { margin-bottom: 1rem; } +.mb4 { margin-bottom: 2rem; } +.ml0 { margin-left: 0; } +.ml2 { margin-left: .5rem; } +.mr1 { margin-right: .25rem; } +.mr2 { margin-right: .5rem; } +.mr3 { margin-right: 1rem; } +.mr4 { margin-right: 2rem; } +.mt0 { margin-top: 0; } +.mt2 { margin-top: .5rem; } +.mt3 { margin-top: 1rem; } +.mt4 { margin-top: 2rem; } +.mt5 { margin-top: 3rem; } +.mw-100 { max-width: 100%; } +.mw4 { max-width: 8rem; } +.mw5 { max-width: 16rem; } +.mw6 { max-width: 32rem; } +.mw7 { max-width: 48rem; } +.mw8 { max-width: 64rem; } +.ni { text-indent: -.5rem; } +.normal { font-weight: normal; } +.pa0 { padding: 0; } +.pa1 { padding: .25rem; } +.pa2 { padding: .5rem; } +.pa3 { padding: 1rem; } +.pb3 { padding-bottom: 1rem; } +.pb4 { padding-bottom: 2rem; } +.pl4 { padding-left: 2rem; } +.ph1 { padding-left: .25rem; padding-right: .25rem; } +.ph2 { padding-left: .5rem; padding-right: .5rem; } +.ph3 { padding-left: 1rem; padding-right: 1rem; } +.ph4 { padding-left: 2rem; padding-right: 2rem; } +.pointer:hover { cursor: pointer; } +.pv1 { padding-top: .25rem; padding-bottom: .25rem; } +.pv2 { padding-top: .5rem; padding-bottom: .5rem; } +.pv3 { padding-top: 1rem; padding-bottom: 1rem; } +.pv4 { padding-top: 2rem; padding-bottom: 2rem; } +.sans-serif { font-family: "Noto Sans", sans-serif; } +.serif { font-family: "Noto Serif", Georgia, Times, serif; } +.tc { text-align: center; } +.tl { text-align: left; } +.tr { text-align: right; } +.tracked-tight { letter-spacing: -.05em; } +.underline { text-decoration: underline; } +.v-base { vertical-align: baseline; } +.v-top { vertical-align: top; } +.v-mid { vertical-align: middle; } +.w-100 { width: 100%; } +.w-20 { width: 20%; } +.w-50 { width: 50%; } +.w-80 { width: 80%; } +.w2 { width: 2rem; } +.w3 { width: 3rem; } +.w4 { width: 8rem; } +.w5 { width: 16rem; } +.w6 { width: 32rem; } +.w8 { width: 64rem; } + +@media screen and (min-width: 30em) { + .f3-ns { font-size: 1.5rem; } + .f4-ns { font-size: 1.25rem; } + .f5-ns { font-size: 1rem; } + .w-100-ns { width: 100%; } +} +@media screen and (min-width: 30em) and (max-width: 60em) { + .f1-m { font-size: 3rem; } + .f2-m { font-size: 2.25rem; } + .f3-m { font-size: 1.5rem; } + .f4-m { font-size: 1.25rem; } + .f5-m, h3 { font-size: 1rem; } + .f6-m { font-size: .875rem; } + .f7-m { font-size: .75rem; } + .h3-m { height: 4rem; } + .h4-m { height: 8rem; } + .h5-m { height: 16rem; } + .mw6-m { max-width: 32rem; } + .pb3-m { padding-bottom: 1rem; } + .pl2-m { padding-left: .5rem; } + .ph2-m { padding-left: .5rem; padding-right: .5rem; } + .pr2-m { padding-right: .5rem; } + .w-100-m { width: 100%; } + .w-20-m { width: 20%; } + .w-25-m { width: 25%; } + .w-50-m { width: 50%; } + .w-75-m { width: 75%; } + .w-80-m { width: 80%; } + .w-third-m { width: 33.33%; } + .w4-m { width: 8rem; } + .w5-m { width: 16rem; } + .tr-m { text-align: right; } + .mt5-m { margin-top: 3rem; } +} +@media screen and (min-width: 60em) { + .f1-l { font-size: 3rem; } + .f2-l { font-size: 2.25rem; } + .f3-l { font-size: 1.5rem; } + .f4-l { font-size: 1.25rem; } + .f5-l { font-size: 1rem; } + .f6-l { font-size: .875rem; } + .f7-l { font-size: .75rem; } + .h3-l { height: 4rem; } + .h4-l { height: 8rem; } + .h5-l { height: 16rem; } + .pb3-l { padding-bottom: 1rem; } + .ph2-l { padding-left: .5rem; padding-right: .5rem; } + .pl2-l { padding-left: .5rem; } + .pr2-l { padding-right: .5rem; } + .w-100-l { width: 100%; } + .w-20-l { width: 20%; } + .w-25-l { width: 25%; } + .w-50-l { width: 50%; } + .w-75-l { width: 75%; } + .w-80-l { width: 80%; } + .w-third-l { width: 33.33%; } + .w4-l { width: 8rem; } + .w5-l { width: 16rem; } + .tr-l { text-align: right; } + .mt5-l { margin-top: 3rem; } +} + +.cut *, .cut *::before { color: #ccc; background-color: #f4f4f4; } diff --git a/suggest.html b/suggest.html index d68a849..fd9c573 100644 --- a/suggest.html +++ b/suggest.html @@ -1,9 +1,13 @@ -

Suggest your vi and/or ex commands

+

never mind

-

you can not do without beyond the basics.

+

Did we miss your favorite command?
Oh dear, let us fix that.

+

Suggestion box

+ +
+ +
@@ -15,43 +19,41 @@ - + - + + placeholder="alice@example.com"> - - - - + + value="Swoosh! 💨">
+
+ +
+ +
diff --git a/suggest.png b/suggest.png new file mode 100644 index 0000000000000000000000000000000000000000..e9fd799812a265078cad651efb02ac675b580273 GIT binary patch literal 30144 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�y{FALsf3=Qu*jM@u+FD!HIUf+mb_M*mc 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 JnXF0h{{h3-C7l2O literal 0 HcmV?d00001 diff --git a/thanx.html b/thanx.html new file mode 100644 index 0000000..63cfb08 --- /dev/null +++ b/thanx.html @@ -0,0 +1,5 @@ +

go back home

+ +

Thank you

+ +

Yay! Your suggestion has been sent.

diff --git a/thanx.md b/thanx.md deleted file mode 100644 index adb0585..0000000 --- a/thanx.md +++ /dev/null @@ -1,3 +0,0 @@ -# Thanx - -Your suggestion is sent. diff --git a/vi128.png b/vi128.png new file mode 100644 index 0000000000000000000000000000000000000000..1fc74d66c0fe46f3fff2a26d688753dc0985ced0 GIT binary patch literal 148 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?O3?zSk_}l@c*aCb)T>t<74`hZOx?BgO7)yfu zf*Bm1-ADs+Y&=~YLp;2b6C_x79Qgmg**QU^f#E;9#!q=E2WDM{o|TOv44V}fEoKT3 q