
My new favorite vim/tmux bug - luu
http://www.daniellesucher.com/2014/04/24/my-new-favorite-vim-tmux-bug
======
droob
I could read bug stories/refactoring stories all day. It's the programmer's
version of This Old House.

~~~
chadrs
I've always felt there should be a conference for bug hunting.

All talks about bugs, how they were solved, dead ends attempted,
tools/techniques used to diagnose, etc.

Would be really useful to see how other people approach debugging and you'd
probably get to learn about lots of tools you didn't know existed.

~~~
pavel_lishin
That would be fantastic. I imagine a fun format where you are presented with
the bug, and given some appropriate, but short, length of time to try and
diagnose it. (Let's say, 15 minutes to an hour.) Then, the presenter polls
everyone to see if anyone figured it out, and explains the actual bug and the
fix in an actual presentation.

------
kolme
Not a VIM bug, not a Tmux bug. Not even a "pivotal/tmux-config".

By the way, as I understand, one shouldn't fiddle with &t_* options, unless
strictly necessary. It's supposed to be a Bad Idea ® because it makes things
less portable.

(Although I'm also guilty of this, changing the cursor color in insert mode is
just too cool for me to resist).

~~~
maxlybbert
I agree. Both vim and tmux did exactly what they were told to do.

~~~
staticshock
Every bug in existence is a story of different software components doing
exactly what they were told to.

------
pyre
The explanation is wrong. In Normal Mode, 'te' is takes the cursor to the
character before the next occurance of 'e' on the line. E.g.

    
    
      Test Words Go Here
           ^
    

'te' would take the cursor to here:

    
    
      Test Words Got Here
                     ^

~~~
dsucher
Oh, nice catch! I use t as a motion all the time, but that still slipped by.
Just updated the post with the correction, thanks!

------
dfc
[https://webcache.googleusercontent.com/search?q=cache:_EPaIs...](https://webcache.googleusercontent.com/search?q=cache:_EPaIsdSiugJ:www.daniellesucher.com/2014/04/24/my-
new-favorite-vim-tmux-bug/&lr=lang_en|lang_nl|lang_no&client=firefox-
aurora&hs=8jN&hl=en&gl=us&tbs=lr:lang_1en|lang_1nl|lang_1no&strip=1)

------
toolz
I wish I was smart enough to document things as thoroughly as she did while
debugging this problem. The solution was simple and wouldn't really have been
a very exciting read, but since she was smart enough to document the process
she was able to produce a really meaningful post that shows off the fruits of
great documentation and sleuth work.

------
dbbolton
They could have saved some time by trying to reproduce the bug while running
`vim -u NONE`.

The first thing I do when I encounter a problem in vim is to run it a) without
plugins, b) without my .vimrc, and c) with neither plugins nor rc.

~~~
philsnow
exactly; in the emacs community, when somebody is chasing down a weird bug,
they get asked to run emacs with the flags that disable all the startup
customization as the very first thing, because 90% of the time, its a problem
with some interaction in the user's (byzantine) ~/.emacs.d

------
math0ne
"Verify all assumptions"

I swear I should just have a sticky with that on my monitor. Would really save
me a lot of time.

~~~
mikeash
I got stuck verifying my assumption that the sticky was real.

------
sneak
AKA why I hate unix and the developers responsible for most of its tools with
a seething passion, condensed down into a single webpage.

Anyone who reads the part where t_F9 actually means F19 and doesn't get
completely enraged at the person who made that decision never gets to work for
me...

~~~
illicium
I like UNIX, vim and tmux and I agree with you. They're not 21st century
tools, but for a lot of tasks, they're the best we've got.

------
sarum1990
Hrm, it seems to me that this is just a byproduct of not following the full
installation instructions of the plugin located at:
[https://github.com/pivotal/tmux-config](https://github.com/pivotal/tmux-
config)

------
al2o3cr
This reminds me of the stories about TECO, where programmers of the time would
play a game "guess what happens when you type in your name in command mode".

------
Fuxy
I love how excited he was when he got to take his bug friend home :)

~~~
randlet
Danielle is a _she_ not a _he_

~~~
Fuxy
More respect to her she sounds like a cool person.

~~~
Fuxy
I don't know why this is being voted down i wasn't being sarcastic or
anything.

I like her way of thinking and would probably get along with her if I were to
meet her.

------
zecho
I love the enthusiasm.

This read like a tech version of a Scooby Doo episode.

A great mystery solved with a little symlink.

------
badman_ting
Yuck.

------
johncoltrane
1\. Fail to read a short README and install plugin properly.

2\. Waste hours of your and other's time chasing the weird "bug" that's direct
consequence of point 1.

3\. Write a long pointless post where you don't even aknowledge your initial
stupidity.

4\. Get famous on the World Wide Web.

No fucking wonder why nobody RTFM anymore: failure _is_ success!

~~~
antimagic
She didn't do the install, she just encountered a pre-configured system that
wasn't working properly. The documentation for vim and tmux is _extensive_. If
you sit down to "RTFM", you're going to disappear for a week or two, and you
probably won't even realise it when you read (and then forget) the bit that
you actually needed.

Honestly, if you are not impressed by this piece of bug hunting, you are
either an absolute genius, or someone without enough experience to appreciate
just how difficult what she accomplished actually was (note the elegance of
the solution - simply applying a symbolic link). I'm going to go with option
2, because I would already know who you are if it was option 1, but I don't,
you're an anonymous internet 'nym.

~~~
johncoltrane
[https://github.com/pivotal/tmux-config#tmuxconf-
installation](https://github.com/pivotal/tmux-config#tmuxconf-installation)

No, I'm not impressed.

I'm not impressed because the "bug" she wasted so much time to hunt down is
not a vim or tmux bug at all. Even with quotes around "bug".

It's someone, somewhere, failing to read the aforelinked 42 lines long README.

Nothing to write home about.

