![vim을 사용하여 C/C++ 함수의 첫 번째 줄로 이동하는 방법은 무엇입니까?](https://linux55.com/image/171823/vim%EC%9D%84%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20C%2FC%2B%2B%20%ED%95%A8%EC%88%98%EC%9D%98%20%EC%B2%AB%20%EB%B2%88%EC%A7%B8%20%EC%A4%84%EB%A1%9C%20%EC%9D%B4%EB%8F%99%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
C/C++ 소스 코드의 다양한 요소 사이를 이동할 수 있는 명령 세트가 있습니까 vim
? 알아요. ctags
하지만 이는 제한된 기능을 제공합니다.
예를 들어, C/C++ 함수의 첫 번째 줄로 점프하고 함수 내의 어느 줄에서나 반환하는 것이 가능합니까?
나는 코드를 검사하거나 소스 코드에서 텍스트/패턴을 검색할 때 현재 있는 기능을 찾기 위해 끊임없이 위로 스크롤합니다.
답변1
답변2
내가 아는 한 간단한 vim 명령을 사용하는 것은 불가능합니다.
vim 매뉴얼(:help 섹션)에서:
"]" 및 "[" 명령은 첫 번째 열의 "{" 또는 "}"에서 중지됩니다. 이는 C 프로그램에서 함수의 시작이나 끝을 찾는 데 유용합니다.
(...)
"{" 또는 "}"가 첫 번째 열에 없고 여전히 "[[" 및 "]]"를 사용하려는 경우 다음 매핑을 시도하십시오.
:map [[ ?{<CR>w99[{ :map ][ /}<CR>b99]} :map ]] j0[[%/{<CR> :map [] k$][%?}<CR>
코드 방향을 정하는 데 필요한 경우 접기 사용을 고려하세요. 예를 들어, 함수에서 키를 누르면 set foldmethod=syntax
함수를 닫고 함수 이름을 볼 수 있으며, 함수를 반전하고 원래 있던 줄로 다시 이동할 수 있습니다.zC
zO
또 다른 타겟팅 가능성은 플러그인을 사용하는 것입니다.탭바현재 기능이 강조 표시됩니다.