News for hackers. Stuff that matters.

tommyallen

Have your calls forwarded to a service you can answer from your computer. Securely strap your phone to the back of an outdoor cat. Be sure to set a strong passcode so the cat can't use the phone. To keep the phone charged, invent a charger that can convert the kinetic energy of the cat's attempts at walking away from the phone. Use the money earned from your invention to buy more phones.
Re:Newsletter #7 - Summer of Road on Wednesday December 07, 2016 @10:23AM (#13123148)
Vim already allows you to use :shell. Neovim took it a step further with the added benefit that you can treat the output as buffer text. Just because you can't see the advantages this gives developers doesn't mean it was a waste of time.
Re:Newsletter #7 - Summer of Road on Wednesday December 07, 2016 @12:11AM (#13120605)
The same question can be asked about Vim 7.4 and Vim 8.0. Which should a plugin developer choose to support? I'm a plugin developer and choose to support any version that has the right features for what I'm accomplishing. For most things, there isn't anything special that needs to be done.
Re:Newsletter #7 - Summer of Road on Tuesday December 06, 2016 @05:16PM (#13118786)
Speaking practically, if you're using a terminal to use Neovim, you get consistent window management. If you're using one of Neovim's GUI clients, you also get a terminal in the GUI's frame.
Re:Newsletter #7 - Summer of Road on Tuesday December 06, 2016 @04:52PM (#13118657)
Vim didn't eat Neovim's lunch. It made its own lunch. Vim8's async feature is a copy only in name. Comparing both async APIs, I'm almost certain that Vim8's was added spitefully. It's just so obtuse compared to Neovim's.
The backtick is also used for for jumping to marks. I wouldn't recommend overriding that one. `. will put your cursor back to the last insertion point. '. will put you back on the last insertion line. They're quite handy. A common key that is used is <space>. There' is also using CAPSLOCK as a leader key, but it's not very portable since it requires configuring the OS. I think ? is fine for a leader key as long as you know that you're not going to use reverse search ever.

Looks like HN is slowing down the post speeds here. If you want to talk about Vim more, send me a message @cloudsiphon on Twitter.

Don't worry about me. I won't be discouraged about anything :)

I want to be able to produce GIFs since that's relatively easy enough, but it got me thinking that there just needs to be support for embedding an iframe in (Github's) markdown. Just strip scripts out of it and let authors worry about making it look right in the markdown in terms of size and using CSS for animations. GIFs are just huge and look bad when making their size reasonable.

In regard to key overlays, I feel the same way. I'm having that issue right now with my other project[1]. There was a little bit of effort put into making the animations with key overlays, and I really don't want to update them so that the images are correct with the current fixes.

In the scope of tmux, is it even possible to capture what keys were pressed? I'd be interested in adding such a feature to tmux2html since having an overlay with CSS and HTML would be trivial.

BTW, vis is pretty cool.

[1]: https://github.com/tweekmonster/braceless.vim

A leader key will expand the number of keys available to you. You can have maps like <leader>j that doesn't interfere with the default j map. There is also <localleader> that does the same thing. They're like having a sticky <ctrl> or <alt> but more comfortable. Read up on them (:h mapleader) and you will have more sun shine fun with Vim! For the record I use the comma as the <leader> key and leave <localleader> as the backslash since it's used rarely.
You like the backslash as the leader key?! Well I never!
This doesn't meet my criteria for easy peasy :(

If there was a utility that converted that json file to a single HTML file, that'd be a different story. If you feel up to doing that, tmux2html uses an MIT license, so feel free to use the parts that parses the escape sequences.

Here's an example of not-so-real time rendering: https://share.esdf.io/log.html

It's a tmux window displaying the log file for the share.esdf.io domain. It refreshes every second, so the message above about animated examples applies.

The thing I love so far about Vim is no one argues about key bindings because no one is right. But, almost everyone agrees that the default leader key is awful. I imagine it's the same for the Emacs community.
A convert! (Score!) To make navigating Vim and tmux splits more palatable, I highly recommend this plugin: https://github.com/christoomey/vim-tmux-navigator
I thought about it, but it would bring this outside of the scope of a weekend project :) Besides, gotty might be better suited for that task: https://github.com/yudai/gotty
Not real-time, but yes, kind of. Add `--stream` to the command. Here's an example of it rendering every second: https://share.esdf.io/log.html

It is displaying the log file for my share.esdf.io domain (with IPs masked). I may take that link down in an hour or two if my puny server gets hammered.

asciinema is a very useful. But, what I found unappealing about it was that I needed asciinema to play the recordings (is that still the case?). I wanted to be able to put the rendered session anywhere I wanted.

The example links are actually hosted on my server and were uploaded using Dropshare. Pretty easy peasy if I need to share something that I don't want public.

Like I mentioned there, I use it to pester my friends :)

tmux is simply fantastic for keeping a session active. Not to mention you won't need to use multiple disjointed emulator windows to do something like keep tabs on a log file while you're working. You can even "full screen" a pane by pressing `Ctrl+b z`! I love being able to ssh into a server (or even my home computer) and simply resume where I left off, from any computer! My friend, let me also take a moment to tell you about Vim.... ;)

Back on topic: I think it would be good for anything where you want things to look almost exactly what's on your screen with high fidelity. Someone submitted an issue to have tmux2html continuously write to the same file that reloads itself. That could be used to have a not-so-realtime snapshot of a pane that's accessible from a browser. Perhaps, some weirdly draconian workplace that requires all employees to use tmux can routinely take a snapshot of all workstation sessions to make sure they aren't goofing off watching ASCII youtube[1]. Who knows!

1: http://annasagrera.com/on-ascii-youtube-and-letting-go/

Example rendered sessions. Warning: The animated examples might not be impressive on low performance devices, and they may drain your battery if you leave them opened.

Color [disk: 135KB, gzip: 17KB]: https://share.esdf.io/FGlV4sufpt/color.html

Single Pane [disk: 65KB, gzip: 6KB]: https://share.esdf.io/saRkuNriJt/single.html

Full Window (Big) [disk: 134KB, gzip: 11KB]: https://share.esdf.io/h5lGMPdcZF/full.html

Animated [disk: 638KB, gzip: 262KB]: https://share.esdf.io/3qdZm2szkN/animated.html

Partially Animated (Big) [disk: 192KB, gzip: 79KB]: https://share.esdf.io/EJHQXoIQDT/partial-animated.html (Only some panes are animating)

The examples are linked on the github page. This was something I had a tiny internal debate about. This thing renders HTML, but I wanted something visual on the README. But, that would require a screenshot...of the rendered HTML page. I don't know why, but that was very silly to me. If it's a screenshot, who is to say that I didn't just take a screen shot of my terminal?

I posted this on /r/coolgithubprojects and one of the comments was someone thought that the linked examples were screenshots until they selected the text.

In any case I'll post a separate comment with the linked examples.

Re:How the Tough Got Going in Kentucky on Friday January 08, 2016 @10:54AM (#10865706)
Change for the sake of change can reveal good ideas. Every time I hear someone talk like this, I can't help but think of what we wouldn't have now if we kept sticking with things that "just worked."

In my opinion, introducing change that isn't a patently bad idea will always be a step towards something positive. If the change proves that an old idea is still the better idea, then we will have a better defined idea.