Vim (TBD)
혹시 이 글을 읽고 Vim에 관심을 가지게 되셨나요?
Vim에 관심있는 사람들을 위한 Discord 커뮤니티
vim.kr 바로 여러분들을 위한 커뮤니티입니다.
개인적인 견해
- 플러그인을 만들어온 개인적인 경험에 기반하면, Vim/Neovim 플러그인을 개발하는 행위는 어떻게 보면 문자열 알고리즘 문제를 푸는 것과 같다고 느낄때가 많다. 버퍼에서 라인을 읽어들이는 것은 stdin에서 문자열을 입력받는 것과 같고, 버퍼에 라인을 집어넣는 것은 stdout에 출력하는 것과 같은 느낌이다. mastodon.nvim 프로젝트를 진행하고 있을때도 간만에 HTML 파서 구현체를 만들어서 버퍼에 알맞게 뿌리는 작업을 구현했던 적도 있었고, treesitter라는 파서 제네레이터를 응용해서 2차원 배열로서 다룰 수 있는 버퍼 내부의 소스코드를 트리 형태로 변환해서 문제를 접근할 수도 있었다. 알고리즘 문제 푸는걸 좋아했던 입장에서는 이만한 지적유희거리가 없다.
관련 문서
- [[vim/builtins]]{Vim에서 제공하는 기본 기능}
- [[vim/versus-neovim]]{Neovim과의 차이점}