| Authors: | Mike Spindel |
|---|---|
| Version: | 0.3 |
AlfredApp is an application launcher and general productivity tool for Mac OS X. It can be extended and customized with custom workflows and plugin scripts.
Plugin scripts, called
"script filters"
by AlfredApp, operate by printing an XML document to standard
output. python-alfred is a Python library for easily building these
XML documents.
$ pip install alfred
As an example, consider a filter that converts numeric input into binary and hexadecimal.:
import sys
import alfred
if __name__ == "__main__":
try:
val = int(sys.argv[1])
except:
sys.exit(1)
# Use the icon associated with the Calculator app
icon = alfred.Icon(filepath="/Applications/Calculator.app")
# Create an item for the hex conversion
hex_item = alfred.Item(
uid='hex',
arg="",
title=hex(val),
subtitle="Hexadecimal",
valid=False,
icon=icon)
# Create an item for the binary conversion
bin_item = alfred.Item(
uid='bin',
arg="",
title=bin(val),
subtitle="Binary",
valid=False,
icon=icon)
# Call alfred.render to generate the XML document
print alfred.render([hex_item, bin_item])
python-alfred requires lxml.
- Expose [NSWorkspace launchApplication:] via ctypes
- Add Python 3 support
- Added support for new
<arg></arg>elements
- Initial release