Alfred Workflow 개발 가이드
Alfred는 macOS의 강력한 생산성 도구입니다. 이 글에서는 Alfred Workflow를 개발하고 디버깅하는 방법을 정리합니다.
Script Filter
Script Filter는 Alfred에서 동적인 결과 목록을 표시하는 핵심 기능입니다.
기본 XML 구조
<items>
<item uid='' arg=''>
<title></title>
<subtitle></subtitle>
</item>
</items>
상세 예시
<items>
<item uid="home" valid="YES" autocomplete="Home Folder" type="file">
<title>Home Folder</title>
<subtitle>Home folder ~/</subtitle>
<subtitle mod="shift">Subtext when shift is pressed</subtitle>
<subtitle mod="fn">Subtext when fn is pressed</subtitle>
<subtitle mod="ctrl">Subtext when ctrl is pressed</subtitle>
<subtitle mod="alt">Subtext when alt is pressed</subtitle>
<subtitle mod="cmd">Subtext when cmd is pressed</subtitle>
<text type="copy">Text when copying</text>
<text type="largetype">Text for LargeType</text>
<icon type="fileicon">~/</icon>
<arg>~/</arg>
</item>
</items>
주요 속성
| 속성 | 설명 |
|---|---|
uid |
항목의 고유 식별자 |
arg |
선택 시 전달되는 인자 |
valid |
선택 가능 여부 (YES/NO) |
autocomplete |
Tab 자동완성 텍스트 |
type |
항목 유형 (file, default) |
수정자 키별 서브타이틀
mod 속성을 사용하여 수정자 키를 눌렀을 때 다른 서브타이틀을 표시할 수 있습니다:
shift: Shift 키fn: Fn 키ctrl: Control 키alt: Option 키cmd: Command 키
디버깅
Python (alfred-workflow)
wf.logger.debug(wf.args)
Bash에서 콘솔 출력
>&2 echo "Log this output to the console"
표준 에러(>&2)로 출력하면 Alfred의 디버그 콘솔에서 확인할 수 있습니다.
추천 워크플로우
다양한 커뮤니티 워크플로우를 활용하면 생산성을 크게 높일 수 있습니다.
워크플로우 다운로드 사이트
검색 관련
| 워크플로우 | 링크 |
|---|---|
| Naver Search | GitHub |
| Daum Search | GitHub |
| Google Similar Image | GitHub |
유틸리티
| 워크플로우 | 설명 | 링크 |
|---|---|---|
| bit.ly | URL 단축 | GitHub |
| Timer | 카운트다운 타이머 | GitHub |
| Clip Saver | 클립보드 저장 | GitHub |
Tip: 클립보드 이미지는 Preview에서 File -> Open from Clipboard로도 사용할 수 있습니다.
터미널 통합
| 워크플로우 | 설명 | 링크 |
|---|---|---|
| iTerm Integration | Alfred에서 iTerm 사용 | GitHub |
워크플로우 개발 팁
JSON 형식 (최신 방식)
Alfred 3.5+에서는 JSON 형식도 지원합니다:
{
"items": [
{
"uid": "home",
"title": "Home Folder",
"subtitle": "Home folder ~/",
"arg": "~/",
"icon": {
"type": "fileicon",
"path": "~/"
}
}
]
}
아이콘 유형
fileicon: 파일/폴더의 시스템 아이콘 사용filetype: 파일 확장자 기반 아이콘- 기본값: 워크플로우 내 아이콘 파일 경로
결론
Alfred Workflow를 개발하면 반복적인 작업을 빠르게 자동화할 수 있습니다. Script Filter를 활용해 동적인 검색 결과를 제공하고, 다양한 수정자 키 조합으로 풍부한 인터랙션을 구현해 보세요.
Comments