Midnight Pub

Mice and keys

~detritus

Fuck I hate having to use the mouse.

Yeah, I am mostly used to ye olde virtual terminal, and to environments such as that of emacs, where everything is done with the keyboard. I find it a lot more immediate to issue my commands through a simple keystroke than chasing menus around with the mouse.

What is worse, I am terribly clumsy at the mouse. Say I want to resize a window. There is a corner with three buttons, one for hiding the window, one to enlarge it and one to close it. Whenever I want to click either of them, I run the risk of clicking the wrong one altogether! This happens everywhere that there are a few buttons all together, say, in the browser, when I want to select a tab I often end up closing it! I hate that I have to drag the pointer around in the touchpad, as it takes forever and often lands in the wrong place, as I just mentioned.

On the other hand, using the keyboard is not always exempt from these kind of mistakes. It happens to me a lot in Emacs. Sometimes I accidentally press a keybinding that does something wholly unexpected, by my clumsy fingers made all the more shaky by so many cups of coffee. Add to that the fact that Emacs has hundreds of keybindings that I don't even know of, and each mode has it's own set of keybindings. That's another source of friction I have with Emacs. Alright, cool, there is org-mode, and paredit, hyperbole, a crapload of modes, not to mention all those that compete with each other providing similar functionality through very different mechanisms and keybindings. A look at any of them reveals a shitload of documentation I ought to swallow. A survey of the current mode (C-h m) provides me with a huuuge list of keybindings, half of them which come from already existing modes, and a crapload of text which I have never really cared to pay attention to.... Excellent ingredients for mental overload.

I don't get the same experience with vi(m). Sure, vim has a lot of functionality that I haven't looked into, and I haven't really spent much time in the help section of vim, which I don't know how to navigate anyway. But with vi-style editors things are a lot easier. You have a set of standard keybindings that work across the board and that give a set of essential funcitonality which works for most if not all editing tasks. Sure, sometimes I have to make a macro on the fly, when I have a task for which a single key ought to do the work but there isn't any built-in to my knowledge. Sometimes it takes some time to get it right, but at any time I feel I am in control of things, instead of feeling bewildering by an ever-changing beast of hidden functionality.

I'm making a lot of noise about stuff that I don't even use anymore. I guess the only really relevant concern I still face is the annoyance I get from having to drag the pointer around the screen and to keep missing the right button.

Sometimes I feel like going back to the days of being interested in computers enough to stay focused and writing scripts and code to perform interesting tasks. Maybe I should, maybe I will, hard to tell.


inquiry
> What is worse, I am terribly clumsy at the mouse. Say
> I want to resize a window. There is a corner with three
> buttons, one for hiding the window, one to enlarge it and
> one to close it. Whenever I want to click either of them,
> I run the risk of clicking the wrong one altogether! This
> happens everywhere that there are a few buttons all
> together, say, in the browser, when I want to select a tab
> I often end up closing it! I hate that I have to drag the
> pointer around in the touchpad, as it takes forever and
> often lands in the wrong place, as I just mentioned.

I experience something similarly frustrating with terminal windows in my environment, as though someone went out of their way to turn what ought be a mostly mouse-free experience into hell.

I've yet to determine at what layer of code it's happening (because I've yet to string together search criteria that lead to reading others writing about the same thing), but http[s] URLS displayed in my terminal are "clickable", leading to a browser tab opening against them when clicking on them.

But that's a good thing, you retort, right?

No. It's not. I far more often than not simply want to copy/paste the URL in some other text-only context, and instead I often accidentally click (in order to get close enough to the start/end of the URL text) on such a URL, and then must suffer a focus going to a new browser tab attempting to display contant located by that URL.

ARGHGHGHHHGHGH!!!!

All I want to do is disable that, or maybe toggle its being enabled. But, again, I seem to be the only person who's ever lived with this problem -OR- words like 'terminal' and/or 'window' and/or 'hotlink', etc. aren't sufficiently specific for a search engine to bring me to discussion of such.

It just....

As for vim, I mis-press keys all the time, and thus am perpetually grateful for its single key-press undo.

> Sometimes I feel like going back to the days of being
> interested in computers enough to stay focused and writing
> scripts and code to perform interesting tasks. Maybe I
> should, maybe I will, hard to tell.

In my experience, following through on something is inversely proportional to number of times saying one should/will/etc....

reply

detritus

That's one thing I like about Emacs. The whole buffer of text is available for you to manipulate however you want; you can select and copy any portion of text therein. Unlike a terminal. Now with a terminal emulator you could use the pointer to select and copy text, a sub-optimal solution, mainly because, well, I would like to keep my hands on the keyboard at all times, and perhaps not always have I a mouse! Some of us like to stick to old-school virtual terminals, especially when we want to keep the noise of the web out!

tmux and screen I think allow you to navigate the buffer and idk, maybe they let you select text in it, I haven't really looked into that stuff. My own solution, the one I've wanted to adopt but I have never put myself to the task of it, is to have everything that would get printed to the screen saved and perhaps even parsed by default, so that I could select contents by referencing them through certain commands.... kind of like how the DOM works with websites. In fact, that's one of my um... "stashed" projects: a terminal based web browser that allows you to walk and selectively display parts of the document.

I should do that, oh I should. I've said it enough times already to know that should mostly means won't.

reply

inquiry
> tmux and screen I think allow you to navigate the buffer
> and idk, maybe they let you select text in it, I haven't
> really looked into that stuff.

Copying text in tmux:

- <meta> [
- hjkl (or /? (search forward/back) the
  cursor where you want it
- <space> to mark copy starting point
- hjkl (or /? (search forward/back) the
  cursor where you want it
- <space> to copy from "copy starting
  point" to where cursor is at

then paste however you normally do that in your terminal.

Hopefully that's both accurate, and not too confusing.

> My own solution, the one I've wanted to adopt but I have
> never put myself to the task of it, is to have everything
> that would get printed to the screen saved and perhaps
> even parsed by default, so that I could select contents by
> referencing them through certain commands.... kind of like
> how the DOM works with websites. In fact, that's one of
> my um... "stashed" projects: a terminal based web browser
> that allows you to walk and selectively display parts of
> the document.

Sounds interesting, although since I almost always want to copy visible stuff, to me the context shift from what I can see to some perpetually-appended-to copy might incur a focus (the mind kind) penalty.

> I should do that, oh I should. I've said it enough times
> already to know that should mostly means won't.

I hear Murphy is hiring. ;-)

reply