Live data from Hacker News

Switching from Vim to Intellij

browntreelabs.com

111–120 of 263 posts

Re: Switching from Vim to Intellij

#111
post #3

I switched from vim to Webstorm, which is based on IntelliJ. I agree with most of this article. IdeaVim is a pretty good vim emulator (although not perfect, but none of them are). There's something to be said by having sane defaults that do exactly what you want. Probably my biggest issue with vim is you can easily find yourself in no man's land because your setup inevitably becomes uniquely your own. For example I u…

Emacs Evil mode is the exception here. It’s possibly better than Vim itself.

I used to use Evil mode and now I use God-mode[1].

Evil is great, but you end up having to know Vim keybindings and some Emacs keybindings since Evil doesn't cover everything.

It certainly can with additional Evil extensions and modifying your .emacs, but I still felt like there were some parts of Emacs where I needed to know Emacs key bindings.

God-mode works since it just makes it so that you can use Emacs keybindings without modifier keys. Everything works out of the box. Best part is that you can install extensions without needing to come up with Evil keybindings for them.

[1] https://github.com/emacsorphanage/god-mode

Re: Switching from Vim to Intellij

#112
post #45

Little off topic, but it unfortunate that the ultimate edition doesn’t include C/C++ and I have to buy yet another pack of “all products” to get that. I pay out of pocket and have yearly subscription. Not sure if the next thing they make for, say Rust, will be yet another thing to buy

Isn't CLion rolling in Rust?

Currently that's where their Rust plugin runs. I could see them breaking it out into its own editor like they have with GoLand.

Re: Switching from Vim to Intellij

#113
My IntelliJ tips:

- exclude folders from indexing

- disable unused plugins

- install a theme like Nord

- setup debugging

- make sure you can run unit tests from the IDE

- add JSdoc tags so that IntelliJ can detect type mismatches.

- setup scopes in your project view to show only the files that you are working on.

And these are my personal preferences:

- Disable smooth scrolling

- Disable animations

- Disable code folding

- Hide status bar, navigation bar, toolbar. If you need something use the actions menu... Ctrl (or Cmd) Shift A.

My font settings: Monoid size 14, line spacing 1.5, greyscale antialiasing.

And check out distraction free mode + full screen

Re: Switching from Vim to Intellij

#114

Earlier quoted context omitted.

I started using Vim in mid/late 2000s, and successfully switched to Emacs. Without knowing your specific gripes, it's hard no know what'll end up helping you, but here are my two cents: - use emacsclient and have aliases for emacsclient -c and and emacsclient -n for popping up a new frame or using the console, respectively. I even have a window manager binding to open a new Emacs client window - Rainer König is the b…

Thank you for this list, I appreciate the effort. I've got some time off of work next week and the kids won't be home, so I'll spend the day digging into this.

To add onto this - I'm a huge org-mode user. If you're on iOS I highly recommend BeOrg[1]. It's the best org-mode app for iphones. It's highly extensible on it's own since you can put in settings and run scheme in a config file[2].

You can purchase extensions for it which are all pretty cheap. You can also pay for a membership to get all extensions - this costs only $10 a year.

The creator of the app is very active in the forums and is constantly updating and improving the app. I love it and it has made my usage of org-mode on the go much easier.

[1]: https://beorgapp.com/ [2]: https://beorgapp.com/manual/scripting/

Re: Switching from Vim to Intellij

#115

Earlier quoted context omitted.

Well, some mixed feelings on whether or not it's a point in favor or not. Just like any system, don't install plugins/copy+paste config that you don't understand or can't maintain. I've been able to open tsx files with linting/highlighting/testing plugins and everything works as expected. On the flip side, if you want easy configuration, then yes, vim/emacs/similar are not necessarily the right choices for you, but I…

> Just like any system, don't install plugins/copy+paste config that you don't understand or can't maintain. I don't think this advice makes sense at all. I can't maintain cc-mode and I don't understand how it works, yet I rely on it. Users should not be expected to understand how the TypeScript autocompletion works in order to get it working. I can open VS Code on a TypeScript project and get autocompletion working…

agreed 100%.

libraries live or die based on their interface.

Re: Switching from Vim to Intellij

#116
post #66

As a long-term Emacs user, I started really enjoying typing with Vim bindings (evil mode). It feels to me that Vim is great at the low-level process of editing text. Everything else is fine - as good as any power editor, but not inherently great. This is the complement of Emacs, which to me is exactly the other way around.

I've tried evil mode a couple times over the years, but slight behavioral differences threw me off my game. I don't remember exactly (it was years ago on the last attempt), but it was something small like the cursor position being slightly different after some operation like shifting a line. My "problem" is that since I've been using the same editor for 30 years, I don't tend to think too much about the manipulation…

for me, the basic keybindings are what matter. I use a full fledged ide, but still have vim bindings. When you become comfortable enough, editing becomes quicker and more in line with my train of thought. Thought->action->code change becomes very quick

Re: Switching from Vim to Intellij

#117

Earlier quoted context omitted.

As for ram usage, I currently have two huge java projects open, and three elm/frontend projects with all the shared packages opened as modules, and it's about 5GB. While it's certainly more than a text editor (still less than chrome lol), is it really so bad? My laptop got 64GB of ram and 34GB of those are sitting unused and 8GB is just cache. I actually prefer it to use more ram than having to recompute stuff or loa…

well, there is your answer. You can afford to have it open, I'm running on 8GB ram so the jetbrains ram usage has a considerable cost.

Are you still in school? If yes, well just take RAM into consideration next time. If no, get your boss to buy you a decent laptop immediately.

Re: Switching from Vim to Intellij

#118
post #68

Earlier quoted context omitted.

That's... an interesting take. I'm not sure it's well founded, could you expand on your thought? The refactoring tools in JetBrains products are amazing for me. Renaming a variable and having all uses within scopes renamed too is great. Renaming classes by patterns is also great. Being able to move definitions to new files and have it update all my imports etc is great. Not sure I see any downsides to optional tools

I mean, Java is pretty notorious for sprawling names like INetworkSessionManagerFactorySidecarControllerFactoryHelper. It's pretty hard to argue that that phenomenon isn't driven by the ubiquity of IDEs in the Java community. With high-powered auto-completion and one-button refactoring, your brain stops processing the full name. No one's incentive to pause for a minute and come up with thoughtful variable names. For…

That's a valid complaint, but at the same time it's not always easy to come up with a good name from the start. I often find myself putting in placeholder names for variables/functions because I'm really not sure what it's going to encompass by the time everything is finished. IDE refactoring makes it easy to clean up names after spending some time with the feature and better understanding what the scope of each function is going to be.

It's great to pause and come up with meaningful names and I agree more developers should do it, but refactoring is a normal part of coding and I'd rather have an easy way of renaming things as the code evolves.

Re: Switching from Vim to Intellij

#119
Once coding no longer was on the critical path of my employment (as a middle manager in a large tech company) I went back to vim from IntelliJ with nothing more than syntax highlight and autoindent. The reason? I wanted to know my programming languages better.

Instead of auto-imports and auto-complete I was forced to have java/scala docs open for whatever library I was using. Beyond giving me better muscle memory for the core language libraries, this had the interesting side effect of only using well documented libraries.

The lack of jump-to-definition also made me think more about dependencies in the code I was writing since they would require a cognitive leap and reasonably heavy context switch. Since cross-file refactoring requires bash-fu and is also a heavy process, this furthered my desire to minimize coupling.

I can't say I'm more productive and if I were coding day in and day out for my day job I would probably still use IntelliJ (especially for large Java code bases that were crafted by advanced IDE usage), but I find coding to be a more holistic endeavor now.

Re: Switching from Vim to Intellij

#120

As a longtime WebStorm user I would really appreciate a WebStorm + let’s say PyCharm vs IntelliJ. I’m a bit happy by the default configuration of each dedicated IDE, rather than clicking around in IntelliJ and fix stuff. What’s your opinion on that?

According to this JetBrains engineer, WebStorm is a subset of PyCharm:

https://intellij-support.jetbrains.com/hc/en-us/community/po...

Post reply on HN