If you ask 100 vimers about this question (I mean players who really understand vim, not ordinary users), it is estimated that 99 of them will tell you: "It can be done, but it is not suitable." (This is a universal answer, You should believe it)
But there will always be that one genius who can do things that 99% of people can’t do, such as this one: http://www.lucianofiandesio.c...
So what he did can perfectly replace Intellij IDEA or eclipse? The answer is: No - but it depends on who it is for. For a few people, they do not rely on things that IDEs have but vim does not have and are difficult to implement (or the cost of implementation is not worth it) , so they can still use vim to write Java and write it faster and better than many people. Having said that, people who are good at using IDEs will not be slower than vim, not to mention that IDEs can now implement most of the vim editing modes - but vim has some advantages that IDEs can never match, such as lightness, speed, and server Almost standard configuration, remote connection is immediately available... If you are proficient in IDE, you may only be able to do one thing well. If you are proficient in vim, who knows what you can do!
Then the question is: Are you this kind of person? The above answer is basically applicable to Emacs. In terms of transforming it to be infinitely close to the IDE, Emacs can go even further.
I once spent a year doing Java Swing development, and tried to switch from IDE to VIM for 2 months. In fact, the answer is the same as above, and the same as most people: yes, but it is not suitable. I have already tried all the plug-ins that should be bothered, including NerdTree, AutoComplete, Supertab, Snippets... Perhaps my understanding of VIM is not deep enough, or it may be due to various other reasons, but there are still inconveniences in the following aspects: 1. File switching is inconvenient: Although there is NerdTree, it is still inconvenient to switch between various files. But you can use the mouse, but if you use the mouse, why do you need VIM? 2. Code prompts are inconvenient: Java’s third-party Jar package is very famous. Although the AutoComplete code has been manually changed, it can prompt the functions in the Jar, but it often fails to prompt. Even if prompted, there are no method comments or method signatures (no matter which IDE you choose, there will be method comments and method signatures). The familiar methods are fine. If you encounter a Jar that you are using for the first time, you can only check the official API. . 3. Import needs to be done manually: Those who are used to Eclipse must know that Ctrl + O, the IDE can automatically help import the required packages, and will also prompt if there are multiple Java classes with the same name. In this aspect, VIM does not yet have a plug-in in this area (of course, if there are experts, I believe that such a plug-in can be developed). Every time after writing the code, when compiling, there will be a lot of prompts that there is no import. Then manually writing import is also very time-consuming. 4. It is inconvenient to create new files: In the IDE, different files will be generated based on different templates based on the selected new file. But in VIM, the new file is a blank text file, and all codes must be filled in by yourself. J2SE projects are okay, but if it is a Web project, all kinds of pain will be waiting for you. 5. Overriding methods is inconvenient: The IDE can prompt which methods can be overridden, but VIM can only rely on experience or query the API.
In fact, there are still many problems, only those who have struggled with them will know. Later, I returned to IDE because the efficiency was really low, but fortunately, all IDEs now have VIM plug-ins. Before I actually started working on VIM, I spent 2 weeks debugging and tinkering with the VIM plug-in. I can only say that there are many pitfalls, so be careful when entering.
@TroyLiu None of the problems you mentioned are problems. In my configuration, these problems can be solved completely, and the solutions are better than those in the IDE; https://github.com/wsdjeg/Dot...
Recommend an article about using vim to develop java programs:
Yes, just writing code is not a problem at all. As long as you are so awesome that you don’t need the 调试 function. Can I create an IDE debugging environment through Niubi's VIM configuration?
If you ask 100 vimers about this question (I mean players who really understand vim, not ordinary users), it is estimated that 99 of them will tell you: "It can be done, but it is not suitable." (This is a universal answer, You should believe it)
But there will always be that one genius who can do things that 99% of people can’t do, such as this one: http://www.lucianofiandesio.c...
So what he did can perfectly replace Intellij IDEA or eclipse? The answer is: No - but it depends on who it is for. For a few people, they do not rely on things that IDEs have but vim does not have and are difficult to implement (or the cost of implementation is not worth it) , so they can still use vim to write Java and write it faster and better than many people. Having said that, people who are good at using IDEs will not be slower than vim, not to mention that IDEs can now implement most of the vim editing modes - but vim has some advantages that IDEs can never match, such as lightness, speed, and server Almost standard configuration, remote connection is immediately available... If you are proficient in IDE, you may only be able to do one thing well. If you are proficient in vim, who knows what you can do!
Then the question is: Are you this kind of person? The above answer is basically applicable to Emacs. In terms of transforming it to be infinitely close to the IDE, Emacs can go even further.
I once spent a year doing Java Swing development, and tried to switch from IDE to VIM for 2 months.
In fact, the answer is the same as above, and the same as most people: yes, but it is not suitable.
I have already tried all the plug-ins that should be bothered, including NerdTree, AutoComplete, Supertab, Snippets...
Perhaps my understanding of VIM is not deep enough, or it may be due to various other reasons, but there are still inconveniences in the following aspects:
1. File switching is inconvenient: Although there is NerdTree, it is still inconvenient to switch between various files. But you can use the mouse, but if you use the mouse, why do you need VIM?
2. Code prompts are inconvenient: Java’s third-party Jar package is very famous. Although the AutoComplete code has been manually changed, it can prompt the functions in the Jar, but it often fails to prompt. Even if prompted, there are no method comments or method signatures (no matter which IDE you choose, there will be method comments and method signatures). The familiar methods are fine. If you encounter a Jar that you are using for the first time, you can only check the official API. .
3. Import needs to be done manually: Those who are used to Eclipse must know that Ctrl + O, the IDE can automatically help import the required packages, and will also prompt if there are multiple Java classes with the same name. In this aspect, VIM does not yet have a plug-in in this area (of course, if there are experts, I believe that such a plug-in can be developed). Every time after writing the code, when compiling, there will be a lot of prompts that there is no import. Then manually writing import is also very time-consuming.
4. It is inconvenient to create new files: In the IDE, different files will be generated based on different templates based on the selected new file. But in VIM, the new file is a blank text file, and all codes must be filled in by yourself. J2SE projects are okay, but if it is a Web project, all kinds of pain will be waiting for you.
5. Overriding methods is inconvenient: The IDE can prompt which methods can be overridden, but VIM can only rely on experience or query the API.
In fact, there are still many problems, only those who have struggled with them will know. Later, I returned to IDE because the efficiency was really low, but fortunately, all IDEs now have VIM plug-ins.
Before I actually started working on VIM, I spent 2 weeks debugging and tinkering with the VIM plug-in.
I can only say that there are many pitfalls, so be careful when entering.
@TroyLiu None of the problems you mentioned are problems. In my configuration, these problems can be solved completely, and the solutions are better than those in the IDE;
https://github.com/wsdjeg/Dot...
Recommend an article about using vim to develop java programs:
https://spacevim.org/2017/02/...
Don’t bother, I recommend it
eclipse
和JetBrains
.Yes, the premise is that you want to play with Vunble’s set of things
Related interests: heavy vim users
Yes, just writing code is not a problem at all. As long as you are so awesome that you don’t need the
调试
function. Can I create an IDE debugging environment through Niubi's VIM configuration?