Fission Fragments Weekly Links June 17th

Fission Fragments is our weekly links roundup. You can also subscribe by email.

Weekly Links

Welcome to the #vim edition! Vim is the ubiquitous command line text editor. If you’re an old school command line hacker, you’ve probably fought on one side or the other of the editor war between emacs and vim. Many developer focused apps include “vim bindings” – that is, being able to use common vim key commands “bound” to the interface and editing functions of the app. This vim cheat sheet has everything – including translations into many other languages.

The Vim Clutch

Boing Boing describes how vim is used as part of the background of explaining the “vim clutch”:

When you’re coding in Vim, you generally never touch the trackpad or mouse; everything is done with the keyboard. Indeed, your hands don’t even move around very much on the keyboard, because Vim doesn’t even use the arrow keys. To move the cursor left by one character, for example, hit the “h” key. The “l” key moves you one character right, “k” takes you up one line, “j” down one line.
Boing Boing, The Vim Clutch

Since the letters are used to move the cursor and other commands, you need to switch modes between typing and controlling, which is usually done with the escape key. Hence, the vim clutch, as described and pictured on Twitter by @pomeranian99:

If you want to follow in her footsteps (hah!), @expede bought this USB foot pedal on Amazon and used rgerganov/footswitch plus Better Touch Tool to get things setup on her Mac laptop.

VimCasts

From @chrismnicola, he suggests VimCasts as the obvious choice to learn everything vim.

Why I use Vim

Jonathan Warner has a page explaining why he uses Vim, which contains a series of GIFs showcasing commands and what he uses them for. Here’s an example of converting HTML to JSON by recording and repeating one conversion:

vim_macros2

Vim in the Future, Nov 2018

Emily St @emilyst wrote a great article about Vim in the Future:

What I want to contribute to the conversation about Vim, in this late year of 2018, is what role it still plays in a world that is technologically rushing by

I have learned Vim as a programming-centric tool, but I use it for other tasks, too. This post assumes a reader isn’t necessarily a programmer but is curious about how tech things get done.

Vim is old. It’s a program that was originally written for the Amiga operating system, first available in 1991. The even older program it emulates, vi , began in 1976 and was available in 1979. Vim has become the most common implementation of vi currently in use today, as Vim has become compatible with the vast majority of computers in existence.

VimWiki

Vim, like many other developer tools, has high “hackability” – it can be customized for individual user preferences, and extended with plugins.

vimwiki is a plugin that embeds a personal wiki engine into your Vim editor. You can use its own vimwiki syntax, Markdown, or Mediawiki as the wiki markup language. You can create wiki links and then new pages are created automatically, all without leaving your editor.

Running these two commands got vmwiki installed for us:

git clone https://github.com/vimwiki/vimwiki.git ~/.vim/pack/plugins/start/vimwiki

# to generate documentation i.e. ':h vimwiki'
vim -c 'helptags ~/.vim/pack/plugins/start/vimwiki/doc' -c quit

As well as maintaining your own local notes, you can export to HTML, which of course makes it a good fit for publishing with Fission :slight_smile:

UtahFS

And one non-Vim link to round things out :stuck_out_tongue_winking_eye:

Brendan McMillion @brentwentyten writes on the Cloudflare blog about his implementation of UtahFS:

UtahFS is a state-of-the art encrypted storage solution, meant to be similar to Dropbox. It has a FUSE binding that creates a synthetic drive on the user’s computer that they can interact with like an external hard-drive. Files stored in the drive are uploaded to a cloud storage provider, which means the drive will never run out of space and minimizes the likelihood of any files being lost. However the files are encrypted such that the cloud storage provider knows almost nothing about what’s being stored.
github.com/cloudflare/utahfs

This has a lot of similar ideas and goals to what we’re thinking about at Fission. :link:

~~ Fission Updates ~~

We’re heads down working on our big release including passwordless web sign in, the Fission SDK with our Fission file system (codename: FLOOFS), multiple app support, and showcasing all of this in Fission Drive.

If you aren’t already, make sure you’re signed up for the Product Updates newsletter to get all the info about this release.

As part of the Drive release, we want to include some openly licensed files in every user’s public folder. Browse a preview file listing, or suggest some music, video, photos, or ebooks in the forum.

Join us Thursday, June 18, 2020 4:00 PM for our weekly video chat. This week is going to be fireside chat style again, talking to Kyle Mitchell of License Zero about Indie Devs, licensing, and more.

1 Like

Here are screenshots of Better Touch Tool settings for your vim clutch on MacOS:

Since emacs is such a great operating system

https://www.emacswiki.org/emacs/Evil [Package]
https://www.spacemacs.org/ [My previous Evil editor]
https://github.com/hlissner/doom-emacs [My current Evil editor]