Programming

Vim을 Java IDE로 사용하기위한 팁?

procodes 2020. 5. 11. 21:14
반응형

Vim을 Java IDE로 사용하기위한 팁? [닫은]


나는 Vim에 중독되어 이제 텍스트 파일을 편집하는 사실상의 방법입니다.

주로 IDE가 아닌 텍스트 편집기이기 때문에 Java 앱을 개발할 때 더 쉽게 만들 수있는 사람이 있습니까?

내가 가진 몇 가지 질문 :

  • vi를 떠나지 않고 maven 작업을 어떻게 호출합니까?
  • 코드 완성을 할 수 있습니까?
  • 구문은 어떻게 강조됩니까?

내가 알아야 할 다른 것 ( "하지 마십시오!"이외)이 있습니까?


몇 가지 팁 :

  • vim (vi 개선)을 사용해야합니다. Linux 및 일부 버전의 UNIX symlink vi에서 vim.
  • eclim으로 코드 완성을 얻을 수 있습니다
  • 또는 viPlugin을 사용 하여 Eclipse 내에서 vi 기능을 사용할 수 있습니다
  • 구문 강조는 vim에서 훌륭합니다.
  • Vim은 ant / maven 빌드 실행과 같은 작은 매크로 작성을 지원 합니다.

재밌게 :-)


나는 수년간 Vim 사용자였습니다. 나는 때때로 Eclipse를 시작하기 시작했다 (vi 플러그인을 사용하면 여러 가지 문제가 있음). 주된 이유는 Java 빌드가 꽤 오랜 시간이 걸리고 maven과 같이 고도로 구성 요소 화 된 빌드 프레임 워크를 추가함에 따라 점점 느려지고 있습니다. 따라서 변경 사항을 확인하는 데 꽤 오랜 시간이 걸리므로 나중에 해결 해야하는 많은 컴파일 문제가 누적되고 커밋 메시지를 통해 필터링하는 데 시간이 걸립니다.

너무 많은 컴파일 문제가 발생하면 Eclipse를 시작합니다. 그것은 변화의 케이크 작업을 할 수 있습니다. 사용하기가 느리고 잔인하며 Vim만큼 편집기가 좋지 않습니다 (Vim을 거의 10 년 동안 사용해 왔기 때문에 두 번째 특성입니다). 정밀한 편집을 원합니다. 특정 버그를 수정하고 특정 비트의 논리 등을 리팩토링해야 할 필요가 있습니다 ... Vim 에서처럼 Eclipse에서 편집하는 것만 큼 효율적일 수는 없습니다.

또한 팁 :

:set path=**
:chdir your/project/root

이것은 ^wf클래스 이름을 큰 프로젝트를 탐색하는 데 매우 유용한 기능으로 만듭니다 .

어쨌든, 스키니는 새로운 코드를 많이 추가해야 할 때 컴파일 문제와 비슷한 것들을 쫓는 데 시간이 걸리기 때문에 속도가 느려지는 것 같습니다. 특정 소스를 찾아서 편집해야 할 때 Eclipse는 썰매 망치처럼 느껴집니다. 나는 여전히 Vim을위한 마법의 IDE를 기다리고있다. 내가 아는 세 가지 주요 시도가있었습니다. 많은 기능을 추가하지만 사용할 수없는 것처럼 보이는 순수한 viml IDE 유형 플러그인이 있습니다. eclim이 있는데, 나는 많은 문제를 겪었습니다. 그리고 실제로 Vim을 포함하는 Eclipse 용 플러그인이 있습니다. 마지막은 실제로 진지한 Java EE 작업에 가장 유망한 것으로 보이지만 Eclipse의 모든 기능을 내장 Vim과 완벽하게 통합하거나 실제로 통합하지는 않습니다.

키 입력으로 누락 된 가져 오기 추가, 입력 문제가있는 hilight 코드 등은 대형 Java 프로젝트에서 작업 할 때 IDE에서 귀중한 것으로 보입니다.


  • vi를 떠나지 않고 maven 작업을 어떻게 호출합니까?

    Maven은 다른 쉘 명령과 다르지 않습니다.

    :!mvn

    :set makeprg=mvn대한 즐겨 찾기 키 매핑이 이미있는 경우 가능합니다 :make.

  • 코드 완성을 할 수 있습니까?

    예, eclim 은 vim의 편집 효율성과 Eclipse의 Java 언어 별 인식 사이의 다리입니다.

    <C-n>그리고 <C-p>그다지 크지 만, 놀랍게도 도움이됩니다.

  • 구문은 어떻게 강조됩니까?

    정규식 기반의 리그 마거에 충분합니다.

코드 템플릿 ( snippetEmu-기본 스 니펫은 빠르지 만 사용자 정의 가능성은 밝음 ), 사용법 검색 및 선언 (eclim, grep, ctags), 게터 및 세터 생성 ( java_getset , 또는 eclim), 자동 수입 (eclim). 빠른 실험을 위해 자바 쉘 ( BeanShell , aka bsh)이 필요할 수도 있습니다 .


Java Maven 프로젝트 개발을 위해이 Vim 플러그인업로드 했습니다.

아직 강조 표시하지 않은 경우 강조 표시를 설정하십시오.

여기에 이미지 설명을 입력하십시오 https://github.com/sentientmachine/erics_vim_syntax_and_color_highlighting


다음 요약이 매우 유용하다는 것을 알았습니다 : http://www.techrepublic.com/article/configure-vi-for-java-application-development/5054618 . : make에 대한 설명은 개미가 아니라 개미를위한 것이지, 그렇지 않으면 좋은 요약입니다.


나는 이것이 꽤 몇 년 후인 것을 알고 있지만 여기에 흥미로운 플러그인이 있습니다. 나는 아직 YMMV를 시도하지 않았습니다.

https://github.com/mikelue/vim-maven-plugin

https://github.com/vim-scripts/maven-ide

편집 : 아 BTW, 나는 eclim을 껐다 켰지 만, vim을 좋아하는 이유는 가벼움입니다. 헤드리스 모드에서도 이클립스를 실행하는 것은 나에게 너무 정신적 인 리프팅입니다.

EDIT2 : 최근에 playframework를 사용하고 있으며 아마도 maven 빌드에서도 작동합니다.

  • 컴파일을 위해 VIM의 make를 maven으로 실행하거나 제 경우에는 빌드 스크립트를 실행하여 파일에 구성 할 수 있습니다.

    autocmd Filetype java setl makeprg=play_compile
    autocmd Filetype java setl efm=%A\ %#[error]\ %f:%l:\ %m,%-Z\ %#[error]\ %p^,%-C%.%#
    

"play_compile" is just a compile script. It uses SBT so Maven should work just fine here. Even direct javac will work. This way, you can use VIM"s quickfix buffer (:cnext, :clist: cprev, etc).

  • For jumping around the classes, I use ctrl-p. Its beautiful. Use it. Faster than eclipse in jumping around files.

  • For jumping around methods, I use tagsearch with exuberant c-tags. Jump into method declarations by using ctrl-]. Go back using Ctrl-o. Doesnt work as good as eclipse, but it works good enough.

  • I use supertab for code completion. Javacomplete is pretty slow, so I stick with omni-complete. Again, not as accurate as eclipse, but its fast and works good enough for me.


Use vim. ^-^ (gVim, to be precise)

You'll have it all (with some plugins).

Btw, snippetsEmu 는 유용한 스 니펫 (TextMate와 같은)으로 코딩하기위한 훌륭한 도구입니다. 미리 만들어진 패키지를 사용 (또는 수정)하거나 직접 만들 수 있습니다.

참고 URL : https://stackoverflow.com/questions/253170/tips-for-using-vim-as-a-java-ide

반응형