Live data from Hacker News

Tmux and Vim – better together

blog.bugsnag.com

181–190 of 297 posts

Re: Tmux and Vim – better together

#181
post #155
post #107

Earlier quoted context omitted.

Pretty much everyone knows the price of admission to using tools like Vim and Emacs is the time investment in config and learning the quirks. What the OP is saying that this doesn't have to be a perpetual state. Once you invest effort early on getting it right you often don't need to touch it, beyond a few tweaks now and then. The maintenance burden definitely declines over time. Then all you need is a storage soluti…

Honestly, I learned to code with vim, and it never struck me as particularly complicated. The commands follow a pretty consistent logic... the defaults aren't great but it took me one google search to find out what a vimrc file is. emacs on the other hand, even as an experienced programmer, I found near unusable in its default and after a week of frustration with all the inconsistencies and oddities gave up on it. Wh…

I get the feeling Emacs is where things like Atom and VS Code are looking for a lot of inspiration.

Unfortunately, they used bloated Electron framework.

Little over a year ago I began sketching out a native Mac OS editor, taking ideas from xiki, ia writer, emacs.

The core API was mostly fleshed out. I just got wrapped up in personal life stuff. Might have to take another look at that soon.

Re: Tmux and Vim – better together

#182
post #173

Earlier quoted context omitted.

If you really want I'm sure we could list out plenty of "serious programmers" that use vim.

Their existence doesn't surprise me, but they deserve less respect for making foolish choices. An idiot savant is still an idiot. I'll welcome any points made for VIM that acknowledge the immense value provided by IDEs, but if I had already seen such points I wouldn't even be posting here today. Every argument I've seen for VIM systematically denies: * That programming is hard work. * That making life easier is a goo…

Your tone and absolutism is getting you down voted like crazy. You're placing the IDE experience on a pedastal and it's really not warranted. IDE's can have lots of problems, speaking as 15 year enterprise java developer. The primary problem is hiding complexity from the developer, which is obviously good and bad. For example, IDE's typically maintain an internal representation of a project, which can get out of sync in wierd ways. It's easy to spend multiple minutes rebuilding and refreshing "objects" (ie file and subprojects, and maven modules, etc) trying to get things back in sync. Here I'm speaking from years of fighting Eclipse, other Java IDE's like in IntelliJ are purportedly better in this regard. The fact remains, it provides an abstraction over the source files on disk, which are the source of truth.

Where vim and command line tools shine is giving the developer powerful tools to examine and manipulate projects, as they exist, on disk.

I personally believe there's a place for both. Vim and the cli are my secret weapon when it comes to comprehending, researching, and working with large, legacy, java enterprise applications. I only use an IDE when I'm actually editing java source files, which isn't very often. YMMV.

Re: Tmux and Vim – better together

#183

Earlier quoted context omitted.

I think that's a little harsh. What a lot of people (including myself) dislike about IDEs is that you lose a lot of tool composability, and to some extent you have to play by the IDE's rules. With a Vim + CLI setup, you get to define the optimal flow, but the tradeoff is maintainability. For many, though, once you get your environment set up, it feels amazingly natural, more than an IDE could provide. It's more a mat…

Here is the key value provided by an IDE: * Autocomplete. This deserves way more recognition than it gets. Having function signatures, documentation, overloads, types, available IN-LINE while you type saves so much work from programming and is essential to delivering correct code. If you want to be an effective programmer, this is a fundamental tool. * Debugger. Easy breakpoints, conditional breakpoints, built-in pro…

I've noticed your trolling re: emacs & vim vs IDEs in the previous days (ie: mostly argumentless name calling), but I'll bite anyway.

Linus uses microEMACS, Guido uses emacs, Bjarne uses sam. The list goes on. What is your point exactly? That they are all fools & idiots? Or that the Linux, python & C++ projects do not qualify as serious programming?

Is it unfathomable that they know something you don't? Is it inconceivable that some people out there have a different yet valid opinion?

My personal experience with the few large codebases I've had to work on in the past is that IDEs would choke on them. If we wanted to get any work done that day we'd have to do it in a lighter code editor. As an added bonus, if we used vim or emacs we could now be as proficient remotely as we were locally.

Re: Tmux and Vim – better together

#184
post #155
post #107

Earlier quoted context omitted.

Pretty much everyone knows the price of admission to using tools like Vim and Emacs is the time investment in config and learning the quirks. What the OP is saying that this doesn't have to be a perpetual state. Once you invest effort early on getting it right you often don't need to touch it, beyond a few tweaks now and then. The maintenance burden definitely declines over time. Then all you need is a storage soluti…

Honestly, I learned to code with vim, and it never struck me as particularly complicated. The commands follow a pretty consistent logic... the defaults aren't great but it took me one google search to find out what a vimrc file is. emacs on the other hand, even as an experienced programmer, I found near unusable in its default and after a week of frustration with all the inconsistencies and oddities gave up on it. Wh…

Agree on Emacs. Tried to get into Emacs few times because I am not the biggest fan of VimScript (I use it quite often though). So, I thought that it's worth learning Emacs with a proper Lisp underneath. But I failed everytime and getting back to Vim felt just natural and as easy as turning on my PS4.

One thing with emacs is that some Alt bindings do not work over remote connections. Maybe it was my fault but I could not get all Alt bindings to work.

Re: Tmux and Vim – better together

#185

Earlier quoted context omitted.

I'm really intrigued by what all you're doing that you have this kind of problem. I maintain a pretty complex vimrc, and deploying it is normally just a git clone. I've never had any of these issues, and when I started at google (which provides a nice collection of internal vim configs and plugins), combining the two and getting everything set up took me O(hours), not O(days). What are you doing?

I simply updated mvim and :E stopped working on OSX. I could work around with NERDtree, but its one of those things turned into a timesink when I didn't need it.

Wait, that doesn't sound like a problem with your vim config, it just sounds like you had a broken version of macvim.

Re: Tmux and Vim – better together

#186

Earlier quoted context omitted.

Have you actually tried to get YouCompleteMe[1] to work for C/C++ autocomplete? It's a huge PIA. Autocomplete just works in VSCode and many other IDEs once you point them at the right directory. https://github.com/Valloric/YouCompleteMe

I'm a front end web dev who decided to learn C (the other week actually). Took about 5 minutes to download and install YouCompleteMe.. What problems did you have? The one problem I had was that I had to use the system version of clang as I'm using Arch.

Basically I am not able to compile my particular codebase in clang or gcc too easily since it's an embedded system. But many other IDEs have no problem inferring autocompletion without requiring compilation. YouCompleteMe itself was a bit of an issue as I have to develop in Windows and it's not quite as well supported.

Re: Tmux and Vim – better together

#187
I've found my flow with vim+i3+ranger

i3 is a window manager that can outcompete anything you can do with vim splits or a tool like tmux/screen. It's whole existence is based around putting windows in the right place at the right time.

Ranger is a vim-like ncurses file browser. I think it's genuinely one of the most underappreciated tools in programming. The ability to hjkl through your file system, with quick marks, with vim-style cut/paste, with visual mode, with about 20 other things that I use daily which just means that no other viewer comes remotely close.

My typical flow has between 4 and 12 terminals open, with the bulk being ranger->vim, which allows me to easily navigate complex project structures. The others are usually make, or htop, or some ssh.

I'll usually have a couple of web browsers open in another workspace as well. i3 tiling extends to all applications.

Re: Tmux and Vim – better together

#188

Earlier quoted context omitted.

> Pretty much everyone knows the price of admission to using tools like Vim and Emacs is the time investment in config and learning the quirks. To me, the real hurdle to vim (or emacs) isn't configuration : it's learning vim (or emacs). That muscle memory doesn't come from a .vimrc file, and it doesn't come overnight. Is that what you meant by "quirks"?

This can be said about anything, though. You still have to develop muscle memory for shortcuts and menu paths in other applications.

It can be said about anything, but it obviously applies more to CLI based editors since literally everything requires specialized muscle memory. Take a super simple example : Unless I've literally never used a computer before, I don't need new muscle memory to copy or cut out a block of text with VS Code, or Sublime, or Atom.

Re: Tmux and Vim – better together

#189

Earlier quoted context omitted.

> Pretty much everyone knows the price of admission to using tools like Vim and Emacs is the time investment in config and learning the quirks. To me, the real hurdle to vim (or emacs) isn't configuration : it's learning vim (or emacs). That muscle memory doesn't come from a .vimrc file, and it doesn't come overnight. Is that what you meant by "quirks"?

This can be said about anything, though. You still have to develop muscle memory for shortcuts and menu paths in other applications.

[deleted]

Re: Tmux and Vim – better together

#190

Earlier quoted context omitted.

Their existence doesn't surprise me, but they deserve less respect for making foolish choices. An idiot savant is still an idiot. I'll welcome any points made for VIM that acknowledge the immense value provided by IDEs, but if I had already seen such points I wouldn't even be posting here today. Every argument I've seen for VIM systematically denies: * That programming is hard work. * That making life easier is a goo…

Your tone and absolutism is getting you down voted like crazy. You're placing the IDE experience on a pedastal and it's really not warranted. IDE's can have lots of problems, speaking as 15 year enterprise java developer. The primary problem is hiding complexity from the developer, which is obviously good and bad. For example, IDE's typically maintain an internal representation of a project, which can get out of sync…

Yea you're right I've overstated my position. Don't really see how vim is useful for excploring a codebase.
Post reply on HN