콘텐츠로 이동

NvimTree - 파일 탐색기

NvimTree

편집기는 기능적으로 원하는 파일을 열고 관리할 수 있는 기능을 제공해야 합니다. Neovim은 기본 설치에서 파일 관리 기능을 제공하지 않습니다. 이는 NvChad의 kyazdani42/nvim-tree.lua 플러그인을 통해 구현됩니다. 이 플러그인은 키보드 키를 통해 파일에 대한 모든 일반적인 작업을 수행할 수 있는 파일 탐색기를 제공합니다. 탐색기를 열려면 NORMAL 모드에서만 사용할 수 있는 Ctrl + n 조합을 사용하고, 동일한 키 조합으로 닫을 수 있습니다.

Nerd Fonts를 설치한 경우, 스크린샷에서 확인할 수 있듯이 텍스트 기반의 파일 탐색기가 있지만 파일 트리의 그래픽적 표현을 제공합니다.

일단 열리면 Ctrl + h 조합을 사용하여 탐색기 창에서 편집기 창으로 또는 그 반대로 전환하여 왼쪽으로 이동하고 Ctrl + l 오른쪽으로 이동할 수 있습니다.

파일 탐색기 사용하기

프로젝트의 파일 트리 작업을 위해 NvimTree 는 관리에 유용한 여러 바로 가기를 제공합니다. 이는 다음과 같습니다:

  • R(refresh) - 프로젝트에 포함된 파일을 다시 읽습니다.
  • H(hide) - 숨김 파일 및 폴더 숨기거나 표시합니다.(점. 으로 시작)
  • E (expand_all) - root 폴더(워크스페이스)부터 전체 파일 트리를 펼칩니다.
  • W(collapse_all) - root 폴더부터 열려 있는 모든 폴더 닫습니다.
  • - (dir_up) - 상위 폴더로 이동할 수 있습니다. 이러한 탐색은 루트 폴더(워크스페이스)를 벗어나서 홈 디렉터리로 이동할 수도 있습니다.
  • s(system) - 해당 파일 형식의 기본 시스템 응용 프로그램으로 파일을 엽니다.
  • f(find) - 필터를 적용할 수 있는 대화식 파일 검색을 엽니다.
  • F - 대화식 검색을 닫습니다.
  • Ctrl + k - 파일의 크기, 생성 날짜 등과 같은 파일에 대한 정보를 표시합니다.
  • g + ? - 빠른 참조를 위한 모든 미리 정의된 바로 가기를 포함한 도움말을 엽니다.
  • q - 파일 탐색기를 닫습니다.

Nvimtree Find

note

> < 화살표로 탐색하는 것과 같이 f로 수행되는 대화형 검색은 _NvimTree_가 현재 위치한 폴더로 제한됩니다. 전체 작업 공간에 대한 전역 검색을 수행하려면 먼저 E를 사용하여 전체 파일 트리를 연 다음 f를 사용하여 검색을 시작해야 합니다.

검색은 필터를 입력하기 위해 NvimTree_1 버퍼를 INSERT 상태로 가져옵니다. 파일을 선택하지 않은 경우 종료하려면 F를 눌러 검색을 닫기 전에 ESC를 눌러 버퍼를 NORMAL 상태로 되돌려야 합니다.

파일 선택

파일을 선택하기 위해서는 먼저 NvimTree_1로 하이라이트된 nvimtree 버퍼에 있는지 확인해야 합니다. 이를 위해 위에서 언급한 창 선택 키나 NvChad에서 제공하는 Space + e 명령어를 사용할 수 있습니다. 이 조합은 NvChad의 기본 매핑의 일부이며, 플러그인의 :NvimTreeFocus 명령어에 해당합니다.

파일 트리를 이동하기 위해 원하는 폴더에 도달할 때까지 트리를 위아래로 이동할 수 있는 >< 키가 제공됩니다. 일단 배치되면 Enter로 열고 BS로 닫을 수 있습니다.

>< 키를 사용한 탐색은 항상 현재 폴더를 참조한다는 점을 강조해야 합니다. 즉, 폴더가 열리고 그 안에 배치되면 탐색이 해당 폴더로 제한됩니다. 폴더를 나가려면 Ctrl + p(상위 디렉터리) 키를 사용하여 현재 폴더에서 편집기를 연 폴더로 이동할 수 있으며 오른쪽 상태 표시줄에 정의된 workspace 에 해당합니다.

파일 열기

원하는 폴더에 위치하고 수정할 파일을 선택한 상태에서 다음 조합 중 하나를 사용하여 열 수 있습니다:

  • Enter 또는 o - 파일을 새로운 버퍼에서 열고 파일의 첫 번째 줄에 커서를 위치시킵니다.
  • Tab - 파일을 새로운 버퍼에서 열면서 nvimtree 에서 커서를 유지합니다. 이는 한 번에 여러 파일을 열고자 할 때 유용합니다.
  • Ctrl + t - 파일을 별도로 관리할 수 있는 새로운 탭에서 엽니다.
  • Ctrl + v - 파일을 버퍼에 열면서 수직으로 두 부분으로 나눕니다. 이미 열려 있는 파일이 있는 경우 새 파일과 함께 나란히 표시됩니다.
  • Ctrl + h - 위와 같은 명령어로 파일을 엽니다. 단, 버퍼를 수평으로 분할합니다.

파일 관리

nvimtree_와 같은 모든 파일 탐색기는 파일 생성, 삭제, 이름 변경 등을 할 수 있습니다. 이는 항상 텍스트 기반으로 이루어지므로 편리한 그래픽 위젯은 없지만 방향은 _상태 표시줄 에 표시됩니다. 모든 조합에는 작업을 확인하기 위한 확인 프롬프트 (y/n) 가가 있어 작업을 확인하고 잘못된 변경을 방지할 수 있습니다. 특히 파일 삭제에 대해서는 삭제가 되돌릴 수 없으므로 확인이 매우 중요합니다.

수정을 위한 키는 다음과 같습니다:

  • a(add) - 파일 또는 폴더를 생성할 수 있습니다. 폴더 생성은 이름 뒤에 슬래시 /를 붙여서 생성합니다. 예. /nvcad/nvimtree.md는 관련 마크다운 파일을 생성하고 /nvcad/nvimtree/는 _nvimtree_폴더를 생성합니다. 생성은 기본적으로 파일 탐색기에서 커서 위치한 위치에서 발생하므로 파일을 생성할 폴더를 미리 선택해야 합니다. 또는 상태 행에 전체 경로를 작성하여 경로 자동 완성 기능을 사용할 수 있습니다.
  • r(rename) - 선택한 파일을 원래 이름에서 다시 이름을 지정합니다.
  • Ctrl + r - 원래 이름과 관계없이 파일 이름을 변경합니다.
  • d(delete) - 선택한 파일을 삭제하거나 폴더인 경우 폴더와 해당 내용을 모두 삭제합니다.
  • x(cut) - 선택한 항목(파일 또는 폴더와 해당 내용)을 잘라내고 클립보드에 복사합니다. 복사 명령어와 함께 사용하여 파일을 트리 내에서 이동시킬 수 있습니다.
  • c (copy) - 이전 명령과 마찬가지로 선택한 파일을 클립보드에 복사하지만 원래 파일은 해당 위치에 유지됩니다.
  • p(paste) - 클립보드의 내용을 현재 위치에 붙여넣습니다.
  • y - 파일 이름만 클립보드에 복사합니다. 상대 경로를 복사하는 Y와 절대 경로를 복사하는 g + y와 같은 변형도 있습니다.

고급 기능

기본적으로 사용하지 않도록 설정된 nvimtree는 가능한 Git 저장소를 제어하기 위한 일부 기능을 통합합니다. 이러한 기능은 Template Chadrc 페이지의 override 섹션에서 설명된 대로 기본 설정을 변경하여 사용할 수 있습니다.

관련 코드는 다음과 같습니다.

M.nvimtree = {
  git = {
    enable = true,
  },
  renderer = {
    highlight_git = true,
    icons = {
      show = {
        git = true,
      },
    },
  },
  view = {
    side = "right",
  },
}

Git 기능이 활성화되면 파일 트리는 로컬 파일이 Git 저장소와 어떻게 연관되어 있는지 실시간으로 상태를 나타냅니다.

결론

kyazdani42/nvim-tree.lua 플러그인은 Neovim 편집기에 파일 탐색기를 제공하며, 이는 NvChad IDE의 필수적인 구성 요소 중 하나입니다. 이를 통해 모든 일반 파일 작업을 수행할 수 있습니다. 또한 고급 기능을 통합하지만 이러한 기능은 활성화해야 합니다. 더 자세한 정보는 프로젝트 페이지에서 확인할 수 있습니다.

Author: Franco Colussi

Contributors: Steven Spencer