>

Vim에서 편집중인 파일 이름을 찾으려고합니다. 따라서이 파일을 컴파일하기 위해F5를 매핑하는 데 사용할 수 있습니다. 파일 형식을 인식하고 그에 따라 컴파일러를 선택할 수 있지만 실제로는 필요하지 않은 경우 물론 좋을 것입니다. 파일 이름을 찾으면 직접 할 수 있습니다. 하지만 편집중인 파일 이름을 얻는 방법을 찾을 수 없습니다.

나는 :make 를 알고있다  명령을 작성하고 이미 매핑했지만 작은 스크립트/테스트 프로그램의 경우 먼저 간단한 makefile을 작성하고 싶지 않습니다.


  • 답변 # 1

    와이즈 비즈

    현재 버퍼의 경우 파일 이름을 알려줍니다.

    I'm trying to find the name of the file I'm editing inside of vim.

    (일부 file.vim에 넣고 ": so %"로 지정하십시오. 그러나 이것이 여러분이 필요하다고 생각하지 않습니다.

    와이즈 비즈

    여러 가지 일을 할 수 있습니다. vim이 편집중인 파일 형식을 인식하면F5를 컴파일러 명령에 매핑하고 해당 명령을 특정 ftplugin 디렉토리에 넣을 수 있으므로 해당 파일 형식에 대해서만 유효합니다. 예를 들어

    echo "You're editing " bufname("%")
    
    
    cpp.vim, fortran.vim, python.vim 등에서

     편집중인 현재 파일의 이름을 제공합니다.

    So I can use it to mapF5to compile this file, for testing purposes. Would of course be great if I could recognize the file format, and choose compiler accordingly, but really not necessary. If I find the name of the file, I could do that myself. But I really can't find any way to get the name of the file I'm editing.

    를 호출 한 것처럼 컴파일러를 실행합니다.  명령 프롬프트에서.

    물론, nmap <f5> :!compilername %<cr>  파일 유형마다 다릅니다. 당신은 cpp 컴파일러로 포트란을 컴파일하지 않을 것입니다.  이 경우

    하나의 옵션입니다. % 의 확장 세트 autocmd 명령에 따라 시도해 볼 수도 있습니다  파일 확장자에 따라 파일 형식을 인식합니다. 이것은 vim의 모든 표준 사용법이며, 드문 일이 아닙니다. 이제 어떻게 진행하고 싶은지 잘 모르겠습니다. Vim Wiki에서이 기사를 다루는 모든 기사 (그리고 일부 컴파일러에 대한 몇 가지 팁)를 찾을 수있는 Vim Wiki를 소개하겠습니다.

    와이즈 비즈 와이즈 비즈  명령을 작성하고 이미 매핑했지만 작은 스크립트/테스트 프로그램의 경우 먼저 간단한 makefile을 작성하고 싶지 않습니다.

    예, 그것은 과잉 인 것 같습니다. 개인적으로 (Windows를 사용하는 경우) 큰 프로젝트를 제외한 대부분의 경우 간단한 배치 파일을 작성하는 것이 훨씬 쉽습니다. 프로그램이 하나 또는 두 개의 파일에있는 경우, 일부 oneliner 매핑을 사용하여 프로그램을 컴파일하면됩니다.

  • 답변 # 2

    vim 명령에서 % 문자를 사용하여 확장자가있는 현재 파일 이름을 얻을 수 있습니다. 예를 들어

    와이즈 비즈 와이즈 비즈

    현재 파일에서 javac를 실행합니다.

    더 자세한 내용은

    와이즈 비즈 와이즈 비즈

    points

    다른 점은 매우 유용합니다. 파일 이름이 완전한 경로로 전달되도록 : p를 사용하고 싶을 것입니다. 이를 사용하지 않으면 Vim은 Vim의 현재 경로를 기준으로하는 경로로 경로를 전달할 수 있습니다.이 경로는 컴파일러에서 사용하는 경로와 같거나 같지 않을 수 있습니다. 한 가지 해결책은 다음과 같습니다.

    compilername file.cpp
    
    

    파일 형식을 자동으로 감지하려면 AutoCommand를 사용할 수 있습니다

    compilername
    
    

  • 답변 # 3

    다른 사람들이 이미 언급했듯이 fortrancompiler %  현재 파일로 확장됩니다. vim 스크립트에서 해당 문자열을 얻으려면 .vimrc 를 사용하십시오. .

    그러나 간단히 makeprg를

    I know of the 와 같은 것으로 설정하고 싶을 수도 있습니다  그리고 :make 를 실행  -당신은 그런 식으로 빠른 수정 지원을 얻을 수 있습니다. (

    와 함께 열린 오류/경고 창 )

  • 답변 # 4

    : w와 같은 대체 코드로%입니다.: w blah %는 'blah'가 앞에 붙은 파일 사본을 씁니다. 또는!! echo %는 현재 줄을 그 줄로 바꿉니다. 그것이 귀하의 요구를 충족시키는 지 아닌지 모르겠습니다.

    :!javac %

  • 이전 python - 튜플 목록을 두 번째 값, reverse = True로 정렬 한 다음 키, reverse = False로 정렬
  • 다음 기본적으로 IPv6 대신 IPv4를 사용하도록 git 구성