:find – where have you been all my life?

Over the last fourteen years of using vim, the rate at which I discover features and commands probably slowed a lot after the first six to eight years. As knowledge of awesomeness expanded, and business reasons limit my lurking in #vim irc, the the intake has been kinda slow. It didn’t really take long to learn enough vi to be highly editing effective, and some years of using vim all the fricken time, will probably teach anyone most of the important stuff.

Today, I discovered a new-old thing. Or had one of those “Where have you been all my life?” moments.

I often find myself copying a path; usually done via tmux’s copy/paste features, as I’m a keyboard whore, and not every terminal I rely on lets you use a mouse so readily for that. And then pasting it into a vim command to open a file, be it :e[dit], :tabe[dit], :sp[lit], or :vsp[lit], or even just to go do `vim somefile’.

Today, I was doing a fair bit of find commands to go look up a file, because when you have a solid state drive and some people like dozens of folders in nesting, sometimes that’s faster than remembering enough for tab completion.

Then I had a thought, “Hey, isn’t there a :find for looking up files? There’s gotta be a way to open those results in a buffer.” And of course there is!

Much to my disappointment, :find foo doesn’t really search many places. The default path on *nix is something like ., /usr/include, and the heck a trailing coma means (path=.,/usr/include,,). Which is great for something like :find sysexits.h but not so much for crawling a directory structure. But there’s a solution!

    :set path+=**
:find foo
-> suddenly qux/ham/spam/eggs/and/yippee/ki/yay/foo opens in the current buffer.

There’s a fair number of vim things that I’ve learned over the years, and don’t often need. On an occasion they teach me good things when I am smart enough to go look for them again.

Some random numbers

If I run a split screen on my 23” at a usable font size, I arrive at approx 119×52 characters of display.

Comparably, if I SSH into my machine with a font size easy on the peepers for the 11” screen, the results are a very respectable 109×32 characters display. Which is probably the Shelly app’s default, or a notch or two above.

Running iVim locally, with a default font that’s hard on the peepers unless using the external monitor: 149×47 characters.

Generally, I aim for about 80×35~45 characters as a terminal. Going around 160 is when I start consider :vsplit windows viable instead of relying on regular :split windows. Maybe I’m weird but I tend to like having a source file | header file combo in my vim session, when I’m afforded a big ass editing surface.

Thinking about these numbers, I kind of hope that Apple fixes the brokeness for keyboard/mouse support. I can use my keyboard, or I can use my mouse, but the moment that both are connected, iPadOS 13.2.3 decides that keyboard I/O should become like packet flow over a smoke signals modem. Which makes me less thrilled to dock my iPad until OS 13.2.4 or 13.3 happens, and cross my fingers that I won’t be stuck waiting until iPadOS 14.

I suppose that I could try pairing another Bluetooth mouse to see if for some reason, it simply hates my Logitech mouse, but I don’t imagine that I’d be that lucky with how much of a buggy mess iOS 13 has been.

Musing from an E6430S

The things I’d actually change about my Latitude:

  1. Not weigh 3~4 lbs.
  2. Have more than 16GB of RAM.
  3. Have USB-C where the USB2 + ESATA is.
  4. Swap the rear USB3 and side VGA cables.
  5. Have internal Bluetooth instead of dongle in my rear USB3 port.

Notice, these are pretty much in the order of impossible, lol.

Newer machines offer faster processors and better capabilities for USB-C than Stark does, but not by much. I think the hardest to solve is the weight problem. The closest thing to a lightweight laptop in Stark’s formfactor is the X1 Carbon, and I say that’s lightweight relative to its peers rather than my tastes.

And there in lays why when I reach for my laptop at home, it usually has more to do with an x-terminal than a keyboard. Because my tablet’s weight is < 0.5 kg and my laptop’s weight is < 4 kg.

On the flipside, one of these days I should probably dig up one of the old E-series docks and see how well that works with Linux. I seem to recall the D-series docks worked pretty good with FreeBSD if you followed polite undocking procedures, and I don’t think Linux gives as many farts about the hotplugging.

Damn it, fruit co!

Reasons to look forward to a knew iPadOS version: if I connect my keyboard or my mouse individually, they work excellently. If I have both connected: the keyboard lags at a rate of 5+ seconds per character with frequent drops and repretitions.

So basically, Apple seems to have broken the ability to use a keyboard and a mouse at the same time in 13.2.3. Nevermind that that mouse support and productivity are cornerstone goals for iPad OS 13 o/.

On the positive side, disconnecting the mouse fixes the keyboard distruption about as instant as the connection terminates. And restores it as fast as the mouse reconnects.  So unlike most issues I’ve experienced with iOS 13 bugs, reboots aren’t required.

I find this less amusing when you take both the fact that I am more inclined to use my tablets with mouse/monitor/keyboard than most people, and that the touchscreen keyboard vs the physical keyboard is a delta of about 40~50 words per minute in my typing speed. And Apple’s floatly keyboard with the pen input is one of the buggist mother fuckers ever shipped.

Signs that you’re a tablet whore:

  1. When you get to work and realize your tablet is still sitting on your desk.
  2. You wonder if forgetting your laptop would bother you less than forgetting your tablet.
  3. You’re pretty sure forgetting your tablet is worse.
  4. When you get home, you snuggle your tablet after hugging the dogs.

One thing that I actually do like about using an iPad with a mouse is the spell check.

PC’s typically follow the model of right click → menu → suggestions or right click → suggestions on top of the context menu. Where the particulars of everything are application specific and very non portable, usually.

My iPad? Click the word → just give the suggestions and make you click again for the menu. Subsequent clicks toggle between spell check suggestions and the menu. Android usually just opens a context menu when you click the word, and keeps text selection different from spell checking. +/- some OEMs like to disable that by default (and Samsung used to remove the feature, way back when), iOS and Android mostly make it the OS’s job for text input things.

HDMI extension and switching time

Well, it’s taken about six years, but I think I’ve finally found something the first generation Chromecast is good at, aside from demonstrating the meaning of choking hazard. They came with these little extension cables, so that you could put a bit of distance between your display’s HDMI port and the device itself versus shoving the Chromecast G1 into your TV.

Simply put, my old Asus monitor only has two real problems. One is the speakers are utterly and completely crap—that audio should never and under no circumstances have audio routed through them. Thankfully, Asus put a 3.5 mm port that let’s me hook up external speakers to handle the HDMI audio input. The other problem that is less easily solved: is there is only one HDMI port. It’s from an era where even a nice monitor only had one if any. Thus with my conversion to HDMI all the things around 2013~2014 thereabouts, It has been the real sticking point.

To swap cables: I’ve got to either blind man finger for the port until the HDMI goes in, or flip the monitor forward so I can get a visual on the port. Yeah, my top request for HDMI 3.0 is going to be a reversible connector like USB-C.

Today I did a bit of experiment. I connected my old HDMI switch, so I could check if my 780GTX or iPad took offense to it. At least under Linux, I’ve not been able to use Skylake or Braswell graphics with the switch, so it’s mostly been underutilized since my Xbox and Fire TV went to different displays. Much to my happiness, the GTX doesn’t care about the switch and my iPad Pro 11 -> HooToo adapter setup doesn’t seem to mind; although I didn’t test HDCP on either, I doubt that’s an issue here.

As a follow up, I decided to test if doing a hotplug from the iPad end would be smart enough to trigger the switches input auto switch behavior and it is not. Since the Chromecast G1 extension cable makes it easier to swap cables on my Asus monitor, I think what I will do is just toggle cables and spare myself wiring up yet another thing with an idiot light.

Final signs that the tablet has won:

  1. Posting from my desk usually means my tablet is between my keyboard, and monitor, and the keyboard is paired to the monitor.
  2. If it doesn’t involve video playback, Direct3D games, or compling code, I’m probably going to use my tablet when I’m at my desk more than my desktop.
  3. The urge to hook up my HDMI switch again, so that I can share the monitor with my tablet.
Yes, I’m weird.

Breffo Spiderpodiums as an Xbox controller caddy and headphone stand

The Breffo Spiderpodium was originally made with holding an iPhone in mind, but I have to admit that it works pretty good as an Xbox controller caddy.

Two middle legs are folded to create stand, two back legs to lip over the controller, and two front legs are folded to make a sort of rest by the accessory port. So I can pretty much tilt the controller about ten degrees downward, slide it into place, and relax.

The larger model originally designed for the iPad, also works pretty neatly as a headphones holder. Hehe.

Plus whatever Breffo’s definition of British steel or whatever the interior is made out of, I’ve never actually managed to break one of these things. The most damage I’ve ever done is melting the plastic a bit by hanging one out of my car’s air vents for a lustrum or more.

I think I’ve finally found something my iPad truly does better than my Androids, lol.

By in large, my many years of using my Android tablets docked to a keyboard, mouse, and monitor has been a pleasant experience. Enough that the only real beefs I’ve had, have been when apps (read Google’s) break the scroll wheel support. Mostly, it just works(tm).

One sore spot however was anything that involves a pinch gesture. Like trying to zoom in and out on Google Maps, which did not always have eat double tap and slide gestures to it. Everything else worked pretty well.

Well, I think I finally smiled. Apple binds the right mouse button to penning the accessibility menu, which is an artifact I guess, of mouse support being more of an accessibility minded thing then a general feature like Android’s support. But when you open this menu and goto Custom it offers the ability to trigger a pich. Which changes the cursor and left click behavior to let you navigate pinching in multiple axis of movement. It doesn’t suck, although naturally it might be a tad confusing.

That’s kind of cool. Good job, Apple. I know I rarely say that instead of four letter gestures, but this one made me happy.