자바 IDE로서의 Vim
6894 단어 javadebuggingvimprogramming
nvim
vim의 포크는 기본적으로 언어 서버 지원을 포함합니다.그러나 IDE에 대한 기대치는 무엇입니까?
내 마음에 오는 것은 자동 완성, 가져오기 관리, 정의/구현/참조 형식 지정 및 디버깅으로 이동합니다. 구문 강조도 물론입니다.
자동 완성 및 언어 서버 통합에 대해 가장 잘 알려진 플러그인은 coc-vim 입니다. 하지만 사용하려는 언어 서버를 설치해야 하는 자체 플러그인 관리자와 생태계를 구현한다는 단점이 있습니다. 내가 설치한 coc 플러그인은 다음과 같습니다.
"coc-java": ">=1.4.12",
"coc-java-debug": ">=0.1.4",
설치하기 위해서:
:CocInstall coc-java
:CocInstall coc-java-debug
자동 완성, 가져오기 관리 및 코드 구조를 탐색하기 위한 "이동"항목을 다룹니다.
디버그 부분은 vimspector 및 coc-java-debug 확장으로 다룹니다. 표준 매핑을 사용하지 않기 때문에 두 확장을 모두 사용하는 방법에 대해 자세히 설명하고 싶지는 않지만 추가 정보를 따르면 Vim은 IDE에 가깝습니다.
추가로: 테스트를 실행하거나 디버그 프로세스를 시작하기 위해 더 쉽게 만드는 몇 가지 키 바인딩이 있습니다.
" start the mvn build in a tmux pane with debug flag an the current buffer as filter parameter
" [vimux](https://github.com/benmills/vimux) is a plugin for tmux user to interact better between tmux and vim
" I just use it to kick of my maven build in debugmode with the actual Testclass
noremap <leader>ds :VimuxRunCommand "mvn -Dmaven.surefire.debug -Dtest=".expand("%:t:r")." test --offline"<CR>
" runs mvn test with the current buffer name a filter parameter.
noremap <leader>rs :call RunMvnThisTest(expand("%:t:r"))<CR>
" runs all tests, but catch the output and open a new buffer with the result of the mvn build
noremap <leader>rS :call RunMvnTest()<CR>
vim 함수here의 구현을 볼 수 있습니다.
디버그 모드를 시작할 때 사용하고 있습니다.
" after starting in debug mode, the build will stuck and waiting for the attaching debugger.
map <leader>at :CocCommand java.debug.vimspector.start<CR>
디버거에 연결하고 vimpector 탭으로 전환합니다.
그러나 다음 내용이 포함된 프로젝트 루트 a
.vimspector.json
가 필요하다는 것을 기억해야 합니다.{
"adapters": {
"java-debug-server": {
"name": "vscode-java",
"port": "${AdapterPort}"
}
},
"configurations": {
"Java Attach": {
"adapter": "java-debug-server",
"configuration": {
"request": "attach",
"host": "127.0.0.1",
"port": "5005"
},
"breakpoints": {
"exception": {
"caught": "N",
"uncaught": "N"
}
}
}
}
}
Reference
이 문제에 관하여(자바 IDE로서의 Vim), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/mafflerbach/vim-as-java-ide-3b1a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)