Repolode
SirVer

SirVer/ultisnips

Vim과 Neovim에서 트리거를 탭스톱, 플레이스홀더, Python 스크립트 로직이 포함된 템플릿으로 확장하는 스니펫 엔진입니다.

스타
7,697
포크
675
열린 이슈
0
마지막 커밋
2개월 전

어떤 프로젝트인가요?

UltiSnips는 Vim과 Neovim용 스니펫 엔진입니다. 짧은 트리거 단어를 입력하고 키를 누르면 클래스 뼈대나 디버그 출력문 같은 긴 텍스트 블록으로 확장됩니다. 스니펫에는 이동할 수 있는 탭스톱을 여러 개 정의할 수 있으며, 다른 플레이스홀더가 변경되면 값이 자동으로 업데이트되는 플레이스홀더도 설정할 수 있습니다.

스니펫은 전용 스니펫 파일 형식으로 작성하며, 확장 중에 실행되어 텍스트를 동적으로 계산하는 Python 코드를 넣을 수 있습니다. 엔진은 스니펫 모음과 분리되어 있으므로 스니펫 라이브러리와 함께 설치하거나 직접 작성하면 됩니다. YouCompleteMe, deoplete 같은 자동 완성 플러그인과 연동되며, 트리거 키는 Vim 변수로 설정할 수 있습니다.

핵심 기능

  • 01Vim과 Neovim에서 트리거 단어를 여러 줄로 된 스니펫으로 확장합니다.
  • 02여러 탭스톱과 함께 값이 연동되어 동시에 업데이트되는 플레이스홀더를 지원합니다.
  • 03확장 중에 스니펫에 삽입된 Python 코드를 실행할 수 있습니다.
  • 04YouCompleteMe, deoplete 같은 자동 완성 플러그인과 연동됩니다.
  • 05트리거 키와 이동 키를 설정할 수 있습니다.

활용 사례

  • Vim에서 코드를 편집할 때 클래스, 함수, 라이선스 헤더 같은 상용구를 삽입합니다.
  • 반복되는 코딩 패턴을 위한 개인 스니펫 라이브러리를 만듭니다.
  • 스니펫에서 Python 로직을 사용해 앞서 입력한 내용에 따라 달라지는 코드를 생성합니다.

빠른 시작

  1. 1

    플러그인 관리자를 사용해 UltiSnips 플러그인 행을 .vimrc에 추가하세요(README에서는 Vundle을 사용합니다)

  2. 2

    미리 만들어진 스니펫을 사용하려면 honza/vim-snippets 플러그인을 추가할 수 있습니다

  3. 3

    .vimrc에서 확장 및 이동 트리거 키를 설정하세요. YouCompleteMe 또는 completion-nvim을 사용한다면 <tab>을 다른 키로 바꾸세요

사용 전 알아둘 점

  • GPL-3.0 라이선스로 제공됩니다. 카피레프트 라이선스이므로 파생 저작물도 동일한 조건으로 오픈 소스화해야 합니다.
  • Vim과 Neovim 내에서만 작동하므로 독립 실행형 도구가 아닙니다.

토픽

자주 묻는 질문

ultisnips은(는) 무엇인가요?
Vim과 Neovim에서 트리거를 탭스톱, 플레이스홀더, Python 스크립트 로직이 포함된 템플릿으로 확장하는 스니펫 엔진입니다. UltiSnips는 Vim과 Neovim용 스니펫 엔진입니다. 짧은 트리거 단어를 입력하고 키를 누르면 클래스 뼈대나 디버그 출력문 같은 긴 텍스트 블록으로 확장됩니다. 스니펫에는 이동할 수 있는 탭스톱을 여러 개 정의할 수 있으며, 다른 플레이스홀더가 변경되면 값이 자동으로 업데이트되는 플레이스홀더도 설정할 수 있습니다.
ultisnips은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
ultisnips은(는) GPL-3.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
ultisnips은(는) 아직 유지보수되고 있나요?
6개월 이내 업데이트. ultisnips의 마지막 커밋은 2026년 9월 6일입니다.
ultisnips은(는) 어디에 사용할 수 있나요?
Vim에서 코드를 편집할 때 클래스, 함수, 라이선스 헤더 같은 상용구를 삽입합니다. 반복되는 코딩 패턴을 위한 개인 스니펫 라이브러리를 만듭니다. 스니펫에서 Python 로직을 사용해 앞서 입력한 내용에 따라 달라지는 코드를 생성합니다.
ultisnips는 어떻게 설치하나요?
플러그인 관리자를 사용해 UltiSnips 플러그인 행을 .vimrc에 추가하세요(README에서는 Vundle을 사용합니다) 미리 만들어진 스니펫을 사용하려면 honza/vim-snippets 플러그인을 추가할 수 있습니다 .vimrc에서 확장 및 이동 트리거 키를 설정하세요. YouCompleteMe 또는 completion-nvim을 사용한다면 <tab>을 다른 키로 바꾸세요
ultisnips은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/SirVer/ultisnips

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트

Neovim은 확장성을 고려해 재구성한 Vim 기반 텍스트 편집기로, 플러그인과 외부 UI가 편집기를 제어할 수 있도록 Lua 및 RPC API를 제공합니다.

개발 도구#text-editor#vim#lua
10.3만+214 이번 주7.4천Vim ScriptOther업데이트 7시간 전