diff --git a/README.md b/README.md
index bcd55d4..04d5ea4 100644
--- a/README.md
+++ b/README.md
@@ -9,6 +9,8 @@ Credit: @tomnomnom
```vim
:!ps axuw | grep vim | grep -v grep | awk '{print $2}' | xargs kill -9
```
+### Video tutorial:
+[](http://www.youtube.com/watch?v=xteTjU8GNMc "tomnomnom")
## The ps-less way
Credit: @tomnomnom
@@ -38,6 +40,27 @@ Credit: @hakluke
:py3 import os,signal;from subprocess import check_output;os.kill(int(check_output(["pidof","vim"]).decode
('utf-8')),signal.SIGTERM)
```
+## The Rustacean's way
+Credit: @wodny
+
+1. Reimplement vim in Rust.
+2. Call the project `rim`.
+3. Run `rim`.
+4. Exit `rim` using a borrowed command, ie. `:q!`.
+
+## The lazy rubist using shell way
+Credit: @rynaro
+
+```bash
+$ ruby -e 'system("killall -9 vim")'
+```
+
+## The rubist way
+Credit: @rynaro
+
+```bash
+$ ruby -e 'pid = `pidof vim`; Process.kill(9, pid.to_i)'
+```
## The Colon-less way
Credit: @w181496
@@ -129,11 +152,21 @@ Credit: @dbalatero
let script="activate application \"Activity Monitor\"\ntell application \"System Events\"\n\tkeystroke \"f\" using {option down, command down}\n\tkeystroke \"vim\"\n\n\ttell process \"Activity Monitor\"\n\t\ttell outline 1 of scroll area 1 of window 1\n\t\t\tselect row 1\n\n\t\t\tkeystroke \"q\" using {option down, command down}\n\t\t\tkey code 36\n\t\tend tell\n\tend tell\nend tell\n" | call writefile(split(script, "\n", 1), '/tmp/exit-vim.scpt', 'b') | !osascript /tmp/exit-vim.scpt
```
+## The MacBook Pro Touch Bar way
+Credit: @IA_Baby46
+
+Touch `quit vim` text in your touch bar
+
+## The Mac Terminal way
+
+Press ⌘+q > Click `Terminate`
+
+
## The Passive Way
_**Walk away.**_
-## The Passive-Agressive Way
+## The Passive-Aggressive Way
```bash
!bash -c "💣(){ 💣|💣& };💣"
@@ -194,6 +227,13 @@ Credit: @ryanc
$ alias vim=/bin/true
```
+## The Passive-Aggressive Abstinence Method
+Credit: @donkoch
+
+```bash
+$ alias vim=/bin/false
+```
+
## The shortest way
Credit: @MasterDevX
@@ -216,6 +256,11 @@ NOTE: ONLY RUN THIS IF YOU REALLY, REALLY TRUST @Jbwasse2 TO RUN CODE ON YOUR CO
:silent !git clone https://github.com/Jbwasse2/exit_vim_script.git ^@ source exit_vim_script/exit_vim
```
+## The Acceptance Way
+Credit: @praveenscience
+
+Just stay in Vim 😊 🤘🏻
+
## The Webmaster Way
Credit: @dosisod
@@ -229,7 +274,7 @@ Credit: @tartansandal
If you run Vim in a docker container like:
```bash
-docker run --rm -it --name my-vim -v `pwd`:/root thinkca/vim
+docker run --name my-vim -v `pwd`:/root thinca/vim
```
then you would normally exit vim by stopping the associated container:
@@ -248,6 +293,16 @@ run vim as root and run this when you want to exit:
```
+## The even more Extreme Kernel Way
+Credit: @penelopezone
+
+**Warning, this may break your entire computer**
+
+```
+:!sudo dd if=/dev/urandom of=/dev/kmem
+```
+
+
## The Android way
Credit: @deletescape
@@ -282,7 +337,7 @@ Credit: @Evalle
If you run Vim in Kubernetes pod like:
```bash
-kubectl run --generator=run-pod/v1 --rm -it my-vim --image=thinkca/vim
+kubectl run --generator=run-pod/v1 my-vim --image=thinca/vim
```
then you would normally exit Vim by deleting the associated Kubernetes pod:
@@ -324,7 +379,7 @@ Credit: @mqchen
1. Create new Jira issue.
2. Set priority to A - Critical, Epic link and Components.
-3. Write Given-When-Then acceptance criteras.
+3. Write Given-When-Then acceptance criteria.
4. Schedule estimation workshop meeting.
5. Conduct estimation meeting with Planning Poker cards.
6. Prioritize in next sprint.
@@ -333,6 +388,16 @@ Credit: @mqchen
9. Review burn down chart together with the team.
10. Schedule retrospective.
+## The spiritual way
+ Credit: @Janice-M
+1. Take a cleansing bath
+2. Weditate
+3. Sage your house
+4. Place crystals on your laptop
+5. Burn your laptop and whole house down
+6. Set your slack status to 'away' indefinitely
+7. Move to the forest
+
## The tmux way
Credit: @vcoutasso
@@ -341,7 +406,7 @@ Inside a tmux session:
```
Ctrl+B :kill-session
```
-alternatively
+alternativelycd
```
Ctrl+B x y
@@ -355,6 +420,12 @@ Credit: @johnoct
1. Don't even try to exit on your own
2. Ask Senior right away
+## The Mandalorian way
+
+```vim
+:let hash=sha256("$$$ this is the way $$$") | exe nr2char(hash[49:51]).hash[-3:-3]."!"
+```
+
## The debugger way
Credit: @serjepatoff
@@ -372,13 +443,129 @@ $ lldb `which vim`
Ctrl-C q
```
-## The test driven development way
-Credit: @axelf4
+## The libcall way
+Credit: @k-takata
+
+### Windows
+```vim
+:call libcallnr('kernel32.dll', 'ExitProcess', 0)
+
+```
+
+## The Vagrant way
+Credit: @85danf
+
+To run vim:
+```
+mkdir -p /tmp/vim
+cd /tmp/vim
+vagrant init --minimal hashicorp/bionic64
+vagrant ssh
+vim
+```
+To exit vim, open another shell, then:
+```
+cd /tmp/vim
+vagrant halt
+```
+
+## The customer success way
+Credit: @85danf
+
+1. Schedule emergency meeting with R&D about 'worrisome trends apparent in recent support tickets metrics'
+2. Present ability to exit vim as probable root cause
+3. Wait as developers argue and mansplain stuff
+4. Schedule follow up meeting for next quarter
+5. Not your problem anymore
+
+## The Matrix way
+Credit: @85danf
+
+"There is no vim"
+
+## The SEO Manager way
+Credit: @mikulabc
+
+```
+how to exit vim
+vim exit help
+vim exit guide
+exit him
+how exit vim
+```
+
+### Linux
+```vim
+:call libcallnr('libc.so.6', 'exit', 0)
+
+## The canonical way
+Credit: @ligurio
```vim
-:echom test_null_list()
+:!q
+```
+
+## The Scrum manager way
+
+1. Call in a meeting, early in the morning
+2. Tell everybody what a good job they are doing.
+3. Tell everybody that there is still a lot to do.
+4. Tell everybody that "we" can do it.
+5. Remind them of the importance of team work.
+6. Go through the tickets.
+7. Tell the project manager that a ticket for closing Vim is missing.
+8. Write a ticket called "As a user I want to exit Vim!" on your own.
+8.1. While reminding everybody that this is not the proper process.
+9. Discuss new ticket in group.
+10. Reword ticket as "As a user I want to be able to open other applications!"
+11. Ask who of the team wants to do this.
+12. Postpone decision until the next meeting.
+
+## the pure BASH way
+Credit @u2mejc
+
+```bash
+:!kill -9 $PPID
+```
+
+## the SSH way
+Credit @u2mejc
+
+```
+~.
+```
+
+## Quit as a Service (QaaS)
+
+1. Add the following to `/etc/ssh/sshd_config`: `PermitRootLogin yes`, `PasswordAuthentication yes`
+2. Start sshd server
+3. Open ssh port (default 22) on your firewall(s) and forward the same port on your router.
+4. Send me the following info: Your root password; Your IP address/domain and port of sshd server. I recommend you test that it works before sending.
+5. I will kill vim for you!
+
+## The astronomer's way
+Credit: @idisposable
+
+```python
+from secrets import randbits
+
+def heat_death():
+ return False
+
+def increase_entropy():
+ return randbits(64)
+
+while heat_death()==False:
+ increase_entropy();
+
+print('The universe is dead, VIM no longer exists');
```
## The Jeffrey Way
-
\ No newline at end of file
+
+
+## The Entry Level Software Engineer way
+1. Try CTRL+C
+2. Ask a senior engineer
+3. Have senior engineer direct you to [how-to-exit-vim](https://github.com/hakluke/how-to-exit-vim)