Raycast Snippets: 개발자를 위한 텍스트 확장 가이드 (2026)
2026년 2월 22일 게시 • 9분 읽기
같은 이메일 답변, 같은 console.log 패턴, 같은 Git 커밋 접두어, 같은 스탠드업 템플릿을 하루에 몇 번씩 반복해서 입력하나요? 두 번을 넘는다면 이미 텍스트 확장이 필요한 상태입니다. 그리고 이미 Raycast를 쓰고 있다면, 그 기능은 별도 앱이나 별도 구독 없이 기본으로 들어 있습니다.
Raycast Snippets는 키워드 기반의 텍스트 단축어를 만들어 입력 중 자동으로 확장해 주는 기능입니다. ;;email을 입력하면 전체 이메일 주소로 바뀌고, ;;pr을 입력하면 오늘 날짜가 포함된 PR 템플릿으로 확장할 수 있습니다. 이 글에서는 스니펫 생성, 동적 플레이스홀더, 실제 개발자 예시, TextExpander 같은 도구에서의 마이그레이션까지 모두 다룹니다. Raycast가 아직 익숙하지 않다면 먼저 Raycast 완전 가이드부터 읽어보세요.
Raycast Snippets란?
Snippets는 Raycast에 기본 탑재된 텍스트 확장 기능입니다. 각 스니펫은 두 부분으로 구성됩니다.
- 키워드 트리거 — 직접 입력하는 짧은 문자열 예:
;;email,;;sig,;;log - 확장 텍스트 — 트리거가 실행될 때 실제로 삽입되는 전체 텍스트
어떤 앱에서든 키워드를 입력하면 Raycast가 이를 감지해 확장 텍스트로 즉시 교체합니다. 코드 에디터, 메일 앱, Slack, 터미널, 브라우저 등 텍스트 입력이 가능한 거의 모든 곳에서 동작합니다.
;; 접두어는 가장 흔한 관례이자 기본 설정입니다. 핵심은 평소 타이핑에서 거의 쓰지 않는 접두어를 고르는 것입니다. 그래야 의도치 않게 스니펫이 실행되지 않습니다.
첫 번째 스니펫 만들기
첫 스니펫 설정에는 10초면 충분합니다.
- Raycast를 엽니다 (
Cmd+Space) - “Create Snippet”을 입력하고 Enter를 누릅니다
- 이름을 입력합니다 (예: “Email Address”)
- 키워드를 설정합니다 (예:
;;email) - 스니펫 내용을 입력합니다 (예:
alex@example.com) - 저장합니다
이제 Mac 어디서든 ;;email을 입력하면 즉시 확장됩니다. 확인 팝업도 없고 딜레이도 없습니다.
“Search Snippets”를 검색하면 만들어 둔 모든 스니펫을 찾아보고 관리할 수 있습니다.
동적 플레이스홀더
정적인 텍스트 확장만으로도 충분히 유용하지만, 진짜 강력한 부분은 동적 플레이스홀더입니다. Raycast는 확장 시점의 맥락을 반영하는 여러 종류의 플레이스홀더를 지원합니다.
날짜와 시간
현재 날짜나 시간을 원하는 형식으로 삽입할 수 있습니다.
{date}— 현재 로캘 기준 날짜 형식{date:YYYY-MM-DD}— 사용자 지정 날짜 형식{date:MMMM D, YYYY}— 긴 날짜 형식{time}— 현재 시간{time:HH:mm}— 24시간 형식
일일 로그, 저널, 회의 기록, 날짜가 꼭 들어가는 템플릿에 특히 유용합니다.
클립보드 내용
{clipboard} 플레이스홀더는 현재 클립보드에 있는 내용을 그대로 넣어줍니다. 예를 들어 마크다운 링크 템플릿은 이렇게 만들 수 있습니다.
[{clipboard}](url)
URL을 복사한 뒤 스니펫을 실행하면 링크 템플릿 안에 해당 URL이 자동 삽입됩니다.
커서 위치
{cursor} 플레이스홀더는 스니펫 확장 후 커서가 어디에 위치할지 지정합니다. 특정 칸만 바로 입력하면 되는 템플릿에서 매우 중요합니다.
console.log('{cursor}', );
확장 후 커서가 따옴표 사이에 배치되어 라벨을 바로 입력할 수 있습니다.
랜덤 UUID
{uuid} 플레이스홀더는 랜덤 UUID를 생성합니다. 테스트 데이터, 임시 식별자, 개발 중 샘플 ID가 필요할 때 유용합니다.
개발자를 위한 스니펫 아이디어
아래는 제가 가장 자주 쓰는 스니펫들입니다. 그대로 가져가도 좋고, 자신의 워크플로에 맞게 변형해도 됩니다.
코드 보일러플레이트
;;log→console.log('{cursor}', );— 라벨이 있는 빠른 디버그 로그;;imp→import { {cursor} } from '';— ES 모듈 import;;raf→ React 화살표 함수 컴포넌트 템플릿;;ust→const [{cursor}, set] = useState();— React useState 훅;;uef→useEffect(() => { {cursor} }, []);— React useEffect 훅;;try→ 에러 로깅이 포함된 try/catch 블록;;af→const {cursor} = async () => { };— async 화살표 함수
Git & PR 템플릿
;;commit→ Conventional Commit 템플릿:feat({cursor}):;;pr→ “What changed”, “Why”, “How to test”, “Screenshots”가 포함된 PR 설명 템플릿;;fixcommit→fix({cursor}):;;wip→WIP: {cursor} [skip ci]
이메일과 커뮤니케이션
;;email→ 내 이메일 주소;;sig→ 전체 이메일 서명 블록;;thanks→Thanks for the quick response! {cursor};;lgtm→LGTM! Looks good to merge. Nice work on {cursor}.;;ooo→ 복귀 날짜 플레이스홀더가 있는 부재중 자동 응답 템플릿
일상 워크플로
;;standup→## Standup {date:YYYY-MM-DD} **Yesterday:** - {cursor} **Today:** - **Blockers:** - None;;meeting→ 날짜, 참석자, 안건, 액션 아이템이 들어간 회의록 템플릿;;todo→- [ ] {cursor}— 마크다운 할 일 항목;;now→{date:YYYY-MM-DD} {time:HH:mm}— 현재 타임스탬프
문서화와 마크다운
;;link→[{cursor}]({clipboard})— 클립보드 URL을 사용하는 마크다운 링크;;img→— 클립보드 URL을 사용하는 마크다운 이미지;;table→ 마크다운 표 골격;;code→ 언어 플레이스홀더가 포함된 fenced code block;;details→ HTML<details><summary>접기 섹션
스니펫 컬렉션과 그룹
스니펫이 늘어나면 정리가 중요해집니다. Raycast는 스니펫을 그룹 또는 컬렉션으로 묶을 수 있습니다. 예를 들어 다음과 같이 나눌 수 있습니다.
- Code — 프로그래밍 관련 스니펫
- Communication — 이메일 템플릿, Slack 답변, PR 코멘트
- Personal — 주소, 전화번호, ID
- Work — 회사 전용 템플릿, 프로젝트 이름, API 엔드포인트
- Markdown — 문서 작성을 위한 서식 단축어
그룹은 작동 방식 자체를 바꾸지는 않지만, 스니펫이 50개를 넘어가기 시작하면 “Search Snippets”에서 카테고리별로 찾아볼 수 있다는 점이 크게 편해집니다.
TextExpander와 Alfred에서 가져오기
이미 TextExpander, Alfred, 혹은 다른 텍스트 확장 도구를 사용 중이라면 처음부터 다시 만들 필요는 없습니다. Raycast는 다른 도구의 스니펫 가져오기를 지원합니다.
TextExpander에서 가져오기
- TextExpander에서 스니펫을 CSV 파일로 export 합니다
- Raycast에서 Snippets 설정으로 이동해 import 옵션을 사용합니다
- CSV 열을 Raycast 필드(키워드, 내용, 이름)에 매핑합니다
- 검토 후 저장합니다
Alfred에서 가져오기
- Alfred 스니펫 컬렉션을 export 합니다
- 대부분의 경우 Raycast가 Alfred 스니펫 형식을 직접 가져올 수 있습니다
- 호환성을 위해 각 스니펫을 검토합니다 — 중첩 스니펫 같은 고급 기능은 수동 조정이 필요할 수 있습니다
단순한 텍스트 확장 스니펫은 대부분 무리 없이 옮겨집니다. 스크립트나 복잡한 로직이 포함된 경우에는 Raycast Script Commands로 다시 만드는 편이 낫습니다. 확장과 스니펫이 어떻게 보완되는지까지 보고 싶다면 최고의 Raycast 확장 가이드도 참고하세요.
Raycast Snippets vs TextExpander vs Alfred Snippets
| 기능 | Raycast | TextExpander | Alfred |
|---|---|---|---|
| 가격 | 무료 | $3.33/월 | $34 (Powerpack) |
| 자동 확장 | ✓ | ✓ | ✓ |
| 동적 플레이스홀더 | ✓ | 고급 | 기본 |
| 날짜/시간 변수 | ✓ | ✓ | ✓ |
| 클립보드 변수 | ✓ | ✓ | ✓ |
| 커서 위치 지정 | ✓ | ✓ | — |
| 입력 폼 | — | ✓ | — |
| 중첩 스니펫 | — | ✓ | — |
| 팀 공유 | Teams 플랜 | ✓ | — |
| 런처와 함께 제공 | ✓ | — | ✓ |
결론: 대부분의 개발자에게 Raycast Snippets는 텍스트 확장 요구의 90%를 무료로 해결해 줍니다. TextExpander는 입력 폼, 중첩 스니펫, JavaScript 매크로 같은 고급 기능이 더 강력하지만 월 구독이 필요합니다. Alfred 역시 Powerpack에 스니펫 기능이 포함되어 있지만, 전반적인 사용감은 Raycast 쪽이 더 매끄럽습니다. 더 깊게 들어가고 싶다면 Raycast를 TextExpander 대체재로 쓰는 가이드를 보세요.
이미 TextExpander 비용을 내고 있고 Raycast도 쓰고 있다면, 스니펫을 옮겨서 실제로 무엇이 부족한지 먼저 확인해 보는 것이 좋습니다. 많은 사용자가 의외로 고급 기능이 없어도 충분하다고 느낍니다.
팀과 스니펫 공유하기
Raycast Teams 플랜에서는 모든 팀원에게 자동으로 동기화되는 공유 스니펫 라이브러리를 만들 수 있습니다. 특히 이런 경우에 유용합니다.
- 코드 스타일 통일 — 공통 보일러플레이트를 공유해 패턴을 통일
- 고객 응대 템플릿 — 자주 쓰는 답변을 표준화
- 문서화 규칙 통일 — README, ADR, 변경 로그 템플릿 공유
- 온보딩 — 새 팀원이 별도 수동 설정 없이 바로 팀 스니펫 사용 가능
Teams가 없어도 export/import 방식으로 수동 공유는 가능합니다. 작은 팀이라면 그것만으로도 충분할 수 있습니다.
스니펫 활용을 더 잘하는 팁
- 접두어를 일관되게 쓰기 — 예:
;;c-는 코드,;;e-는 이메일,;;m-은 마크다운 - 키워드는 짧게 — 속도가 핵심이므로
;;consolelog보다;;log가 낫습니다 - 검색 적극 활용 — 키워드를 잊었으면 “Search Snippets”에서 전체 라이브러리를 검색하세요
- 클립보드와 조합하기 — 먼저 내용을 복사한 뒤
{clipboard}를 쓰는 스니펫으로 확장하면 맥락 있는 템플릿을 빠르게 만들 수 있습니다 - 스니펫 체인 만들기 — 하나의 스니펫으로 틀을 만들고 다른 스니펫으로 일부를 채우는 방식도 좋습니다
- 날짜 형식 익히기 — YYYY, MM, DD, HH, mm 같은 형식 코드를 익혀두면 프로젝트 규칙에 맞는 타임스탬프를 빠르게 만들 수 있습니다
- 분기별 정리 — 더 이상 쓰지 않는 스니펫은 지워서 검색성을 유지하세요
시작하기
이미 Raycast를 설치했다면 바로 시작할 수 있습니다. Snippets는 무료 플랜에서 제공되는 핵심 기능이라 별도 확장 설치도, 업그레이드도 필요 없습니다. Raycast를 열고 “Create Snippet”을 입력한 뒤 첫 스니펫을 만들어 보세요.
아직 Raycast를 설치하지 않았다면 단계별 설정 가이드를 먼저 따라오면 됩니다. 5분 안에 스니펫을 만들 수 있는 상태가 됩니다.
여러 Mac 사이에서 스니펫을 동기화하고 싶거나 AI를 포함한 Pro 기능 전체를 원한다면 현재 최고 Raycast Pro 할인을 확인해 보세요. 14일 무료 체험과 함께 80% 할인이 적용되며, 쿠폰 코드는 필요하지 않습니다.
자주 묻는 질문
Raycast Snippets는 무료인가요?
네. Raycast Snippets는 무료 플랜에서 개수 제한 없이 사용할 수 있습니다. 동적 플레이스홀더, 키워드 트리거, 자동 확장도 모두 무료입니다. Raycast Pro는 여러 Mac 간 클라우드 동기화를 제공하고, Teams 플랜에서는 공유 스니펫 라이브러리를 지원합니다.
Raycast Snippets에 동적 콘텐츠를 넣을 수 있나요?
네. 날짜, 시간, 클립보드 내용, 확장 후 커서 위치, 랜덤 UUID 같은 동적 플레이스홀더를 지원합니다. 예를 들어 오늘 날짜를 YYYY-MM-DD 형식으로 넣거나 현재 클립보드 내용을 템플릿에 붙여 넣는 식으로 활용할 수 있습니다.
TextExpander나 Alfred에서 스니펫을 가져올 수 있나요?
네. Raycast는 다른 도구에서 스니펫을 가져올 수 있습니다. TextExpander는 CSV export 후 import 하면 되고, Alfred 스니펫 컬렉션도 대부분 이전 가능합니다. 다만 중첩 스니펫이나 복잡한 스크립트는 일부 수동 수정이 필요할 수 있습니다.
팀과 스니펫을 공유할 수 있나요?
자동 동기화 방식의 팀 공유는 Raycast Teams 플랜이 필요합니다. Teams에서는 팀 전원이 함께 쓰는 공유 스니펫 라이브러리를 만들 수 있어, 코드 패턴, 이메일 템플릿, 문서 규칙을 표준화하는 데 유용합니다. export/import 기반 개별 공유는 모든 플랜에서 가능합니다.