서버에서 간단히 편집하기 위한 도구로는 vim 만한게 없다. 맥 os 환경에서도 굳이 vscode나 메모앱을 켜지 않고 터미널로 간단하게 config, yaml을 수정하고는 하는데, 개인적인 공부를 위한 코딩으로 vim을 사용해보는게 어떨까 했다.
평소에 코드를 위해 사용하는 VScode나 여타 다른 IDE처럼 나름 사용하기 위해서는 몇가지 조건이 필요했다.
사실 이런거 하나하나 플러그인을 테스트 하고 입맛대로 커스텀 하는 건 나름대로 재미가 있지만....
설정하는게 간단하지도 않고.. neovim으로 옮기면서 config를 작성할 때, lua 스크립트로 작성하는 것도 그렇고..
그냥 다 만들어진걸 쓰는게 어떨까..?
라는 생각이 들어 AstroNvim을 선택했다.
이러한 프로젝트들은 여러 개가 있다.
그런데도 AstroNvim을 선택한 이유는
유튜브에서 제일 먼저 봐서 이미 약간 키바인딩이 익숙해져버림 ㅎㅎㅎ..
알아보니까 다른 것들도 크게 다르지는 않았다.
설치는 최근에 친구가 몇년 된 노트북을 줘서 장난감으로 쓰기 위해 우분투를 설치하여 작업을 진행했다.
싱싱한 우분투 22.04 로다가 설치
# 바로 설치가 되어버린다.
git clone https://github.com/AstroNvim/AstroNvim ~/.config/nvim
nvim +PackerSync
원래는 vim-plug를 애용했는데,
AstroNvim에서는 Packer를 기본으로 사용한다.
위의 커맨드를 작성하면 위와 같은 화면이 나오면서 필요한 패키지들이 설치가 완료된다.
특정 플러그인들이 설치가 안되기도 하는데
우분투의 경우 build-essentials를 설치해보거나,
github 레포에 가서 사전 설치해야 하는 것들이 있는 지 확인해보면 될 듯.
처음 설치하면 위와 같은 모양인데, 이미 훌륭하다.
하지만 약간의 변경사항을 줘보기로 했다.
-- ~/.config/nvim/lua/core/plugin.lua
...
-- Colorscheme 추가
["overcache/NeoSolarized"] = {},
-- Transparent 추가
["tribela/vim-transparent"] = {},
...
-- Smooth scrolling 주석처리
-- ["declancm/cinnamon.nvim"] = {
-- event = { "BufRead", "BufNewFile" },
-- config = function() require "configs.cinnamon" end,
-- },
user_example 디렉토리를 복사해서 새로운 user를 만든다.
$ cp -r lua/user_example lua/user
-- ~/.config/nvim/lua/user/init.lua
...
-- colorscheme="default_theme",
colorscheme="NeoSolarized",
...
$ nvim +PackerSync
결과물
자주쓰는 단축키
스페이스바가 leader로 보통 스페이스바를 누르는 것으로 명령어를 시작한다.