기본 콘텐츠로 건너뛰기

NeoVim + LazyVim 사용기 - 자주 쓰는 단축 포함.

주로 쓰는 컴터들이 죄다 리모트로만 연결해서 iSH나 Termux 같은 모바일 터미널에서 간단하게 개발환경을 쓰고 싶었음.

사실 vi (vim 도 아님) 으로 충분하지만 avante.nvim 이라는 녀석이 Cursor 처럼 외부 LLM 모델을 쓸 수 있다고 해서 삽질을 시작함;;;

macOS 에서야 대충해도 되니 약간 삽질이 필요했던 windows 기준으로 기록.

NeoVim 설치

https://winstall.app/apps/Neovim.Neovim
winget 이 별도로 설치 없이 쓸 수 있는 package manager 라서 간단하게
winget install --id=Neovim.Neovim  -e

로 끝나는 점이 좋았음. 

LazyVim 설치

https://www.lazyvim.org/installation 보고 Powershell 로 설치.
깔끔하다!
lazyvim
생각보다 빠르다!











nvim-treesitter 관련 오류 수정

시작할 때 마다 nvim-treesitter 에서 오류 발생. 실행 속도도 느려지고 매우 불편!
다행스럽게도 reddit 에서 해결법을 알려줌.
choco install mingw 
refreshenv  

관리자모드에서 mingw 를 설치하고 (winget 으로는 설치 안되는 듯?) refreshenv 하니 해결.

필요한 외부 유틸들 설치

https://www.nerdfonts.com/font-downloads Nerdfonts 설치. ligature를 쓰고 싶어 FiraCode Nerd Font를 선택.
ripgrepfd 도 설치. search & replace 를 편하게 쓸 수 있다.

:, esc 눌렀을 때 모달 팝업 같은 UI가 나와서 당황.
https://www.youtube.com/watch?v=N93cTbtLCIM 보면서 사용법을 확인해본다.

<space> 키 활용

NORMAL (command 모드) 상태에서 space 를 누르면 단축 기능들이 나온다.
  1. e/E: neoTree 를 연다. Tree 형태로 파일을 찾아볼 수 있으며 e 는 root 기준, E 는 nvim 을 실행한 경로 기준으로 Tree 를 가져오고 토글로 껐다켰다 할 수 있다.
  2. -: 창 가로 분할
  3. |: 창 세로 분할
# 창 제어하기
  1. ^h, ^l, ^j, ^k: 창 간 이동
  2. ^좌 ^우 ^상 ^하: 창 크기 조절
나머지는 vim 에서 쓰던 습관대로 하면 되었다.

Avante.nvim 설치로 LLM 도움 받기

avante.nvim 은 생각보다 어렵지 않았는데 홈디렉토리 기준에서 ./nvim/lua/plugins (windows 의 경우 C:\Users\<사용자계정>\AppData\Local\nvim\lua\plugin) 으로 진입하여 아래와 같은 파일을 `avante.lua` 와 같이 .lua 파일로 넣어준다. 윈도우여서 powershell 관련 부분을 수정했다.

return {
  "yetone/avante.nvim",
  event = "VeryLazy",
  build = "powershell -ExecutionPolicy Bypass -File Build-LuaTiktoken.ps1",
  opts = {
    -- add any opts here
  },
  dependencies = {
    "nvim-tree/nvim-web-devicons", -- or echasnovski/mini.icons
    "stevearc/dressing.nvim",
    "nvim-lua/plenary.nvim",
    "MunifTanjim/nui.nvim",
    --- The below is optional, make sure to setup it properly if you have lazy=true
    {
      'MeanderingProgrammer/render-markdown.nvim',
      opts = {
        file_types = { "markdown", "Avante" },
      },
      ft = { "markdown", "Avante" },
    },
  },
}

그리고 nvim 을 실행하면 설치를 진행한다.

설치 후 command( : 키 누르기) 상태에서 Avante 로 시작하는 command 들이 추가된다.
OpenAI 의 GPT-4o mini 가 저렴해서 환경변수 OPENAI_API_KEY 에 API키를 넣고 AvanteSwitchProvier openai 라고 command를 입력하여 전환하고 사용했다.
:AvanteChat 으로 채팅 창을 생성할 수 있다.
멀티라인 입력이 가능하고 Ctrl+S 입력으로 LLM API 서버에 채팅을 보낸다.


댓글