Giter Club home page Giter Club logo

alfred-ulysses-workflow's Introduction

Alfred Ulysses Workflow

Alfred 3 workflow to search and create tasks in Ulysses. There is a discussion thread on the Alfred forum.

Install

To install, download the latest Ulysses.alfredworkflow file and double-click to open in Alfred 3. Alternatively, download what should be the most recent version hosted on Packal.

Get help

  • u:help -- Show this brief summary of commands

Open group or sheet

  • uf -- Find a group or sheet based on internal content
  • u -- Open group or sheet (cmd-return to drill down)
  • ug -- Open group (cmd-return to drill down)
  • us -- Open sheet

Pop open Ulysses Open dialogue

  • uo <arg> -- Search for within Ulysses’ Open dialogue

Create sheets

  • un -- create new sheet with optional text (shift-enter to create in /Inbox)

Alfred file action

  • Use the Open in Ulysses file action to open text-like files in Ulysses
  • Use the Import into Ulysses file action to create a new sheet from text-like content

Configure view to open

  • u:setsheetview -- Set the view for opening sheets with (defaults to 'Editor Only')
  • u:setgroupview -- Set the view for opening groups with (defaults to 'Sheets')

Thanks

Versions

1.0.4

  • Fixed ExpatError exception that completely broke the workflow with Ulysses 13 update.

1.0.3

  • Fixed to work with unicode search strings

1.0.2

  • Fixed 'uo' command to work with renamed UlyssesMac application name under Ulysses 12 update

1.0.1

  • Fixed displayName KeyError exception that completely broke the workflow with Ulysses 12 update
  • Fixed an older issue with 'un' command

1.0

  • Fixed 100% cpu hang on Sierra with update of alfred-workflow to 1.25.1
  • Added uf command to find groups and sheets based on their internal content
  • u, ug and uf now use fuzzy search Ulysses' path to groups and sheets
  • Added un command to create new sheet with optional text
  • Added an Alfred file action to open text-like files in Ulysses
  • Added support for Inbox items
  • Added support for local Ulysses (non-iCloud) items (still no external folders)
  • Added warning when no iCloud files found
  • Fixed race condition with uo command when Ulysses is not activated

0.9.2

  • Fix race condition where toggling view state fails if Ulysses is launching

0.9.1

  • Added feature to select view for opening items with and commands to configure
  • Behind the scenes the workflow now uses (not enough of) deanishe's https://github.com/deanishe/alfred-workflow
  • Help now opens in Safari
  • ug command no longer lets user drill into empty groups

0.9

  • Initial public release

To contribute

To contribute to the workflow please fork on github: https://github.com/robwalton/alfred-ulysses-workflow .

alfred-ulysses-workflow's People

Contributors

poblue avatar robwalton avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

alfred-ulysses-workflow's Issues

Unicode bug

Whenever I try to use Danish letters æøå to search for items in the workflow I get thrown back to the Alfred fallback option. It's not limited to æøå, the ordering of letters is of no importance either and it doesn't matter which combination I use (uf, us, ug).

Workflow Results in 'displayName' error

Workflow isn't currently working for me; on macOS 10.13 with the latest version of Ulysses (12.1 I believe). Alfred debug console returns:

  File "/Users/Brad/Library/Mobile Documents/com~apple~CloudDocs/Alfred/Alfred.alfredpreferences/workflows/user.workflow.91651E89-D40D-4D2E-BEF5-03767EB7B9E2/workflow/workflow.py", line 2236, in run
    func(self)
  File "ulysses_items.py", line 85, in main
    include_sheets)
  File "ulysses_items.py", line 145, in parse_ulysses_for_groups_and_sheets
    groups_tree = parse_ulysses.create_tree(root_dir, None)
  File "/Users/Brad/Library/Mobile Documents/com~apple~CloudDocs/Alfred/Alfred.alfredpreferences/workflows/user.workflow.91651E89-D40D-4D2E-BEF5-03767EB7B9E2/parse_ulysses.py", line 113, in create_tree
    group = Group(rootgroupdir, parent_group)
  File "/Users/Brad/Library/Mobile Documents/com~apple~CloudDocs/Alfred/Alfred.alfredpreferences/workflows/user.workflow.91651E89-D40D-4D2E-BEF5-03767EB7B9E2/parse_ulysses.py", line 63, in __init__
    join(self.dirpath, 'Info.ulgroup'))['displayName']
KeyError: 'displayName'
22:11:12 workflow.py:2246 INFO     For assistance, see: https://github.com/robwalton/alfred-ulysses-workflow
22:11:12 workflow.py:2267 DEBUG    Workflow finished in 0.067 seconds.

How to modify Group search to default to three level pane?

Right now searching through groups will always go to two pane. I wish it would be three pane as I started to quite like to have all panes shown.

Would it be possible to add please. Perhaps have it as a setting so users can specify what mode they wish it was open in.

Thank you.

Favorites

I'd love to see a list of my sheets that have been favorited.

Error when using u/us/ug commands

I get the following error message when trying to run this workflow. Any idea of what I could try?

00:53:52 workflow.py:2207 ERROR    [Errno 2] No such file or directory: '/Users/rogerio/Library/Mobile Documents/X5AZV975AG~com~soulmen~ulysses3/Documents/Library/Groups-ulgroup'
Traceback (most recent call last):
  File "/Users/rogerio/Dropbox/Private/Alfred/Alfred.alfredpreferences/workflows/user.workflow.CFA40A37-6ED5-43BA-8847-E6DA782D50D3/workflow/workflow.py", line 2200, in run
    func(self)
  File "ulysses_items.py", line 55, in main
    groups_tree = parse_ulysses.create_tree(parse_ulysses.GROUPS_ROOT, None)
  File "/Users/rogerio/Dropbox/Private/Alfred/Alfred.alfredpreferences/workflows/user.workflow.CFA40A37-6ED5-43BA-8847-E6DA782D50D3/parse_ulysses.py", line 58, in create_tree
    filelist = os.listdir(rootgroupdir)
OSError: [Errno 2] No such file or directory: '/Users/rogerio/Library/Mobile Documents/X5AZV975AG~com~soulmen~ulysses3/Documents/Library/Groups-ulgroup'

I'm running El Capitan, latest Alfred and Ulysses.

Thank you for both the workflow and attention.

Getting ERROR not well-formed (invalid token)

I'm getting workflow.py:2243 ERROR not well-formed (invalid token): line 1, column 9 after a fresh install of v1.0.3 of your workflow on Ulysses 13 (v42335) that was released last week. I attempted running uf, but I'm pretty sure it happens on all commands.

Thanks! Here's the full output from the Alfred debug window:

Starting debug for 'Ulysses'

[2018-06-06 10:45:24][ERROR: input.scriptfilter] Code 1: 10:45:24 workflow.py:2225 DEBUG    Workflow version : 1.0.3
10:45:24 workflow.py:1628 DEBUG    Reading settings from `/Users/Evan/Library/Application Support/Alfred 3/Workflow Data/com.github.robwalton.alfred-ulysses-workflow/settings.json` ...
10:45:24 workflow.py:2514 DEBUG    Update check not due
10:45:24 ulysses_items.py:59 INFO     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
10:45:24 ulysses_items.py:60 INFO     ulysses_items.main(wf): args = 
Namespace(kind='all', limit_scope_dir=None, query=u'', search_content=True, search_ulysses_path=False)
10:45:24 ulysses_items.py:61 INFO     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
10:45:24 workflow.py:1859 DEBUG    Loading cached data from : /Users/Evan/Library/Caches/com.runningwithcrayons.Alfred-3/Workflow Data/com.github.robwalton.alfred-ulysses-workflow/__workflow_update_status.cpickle
10:45:24 workflow.py:2444 DEBUG    update_data : {u'available': False}
10:45:24 ulysses_items.py:86 INFO     Added iCloud items from '/Users/Evan/Library/Mobile Documents/X5AZV975AG~com~soulmen~ulysses3/Documents/Library/Groups-ulgroup'
10:45:24 workflow.py:2243 ERROR    not well-formed (invalid token): line 1, column 9
Traceback (most recent call last):
  File "/Users/Evan/Dropbox/settings/Alfred.alfredpreferences/workflows/user.workflow.A5704485-717B-40BA-83C7-A0F75BCDDF25/workflow/workflow.py", line 2236, in run
    func(self)
  File "ulysses_items.py", line 89, in main
    include_sheets)
  File "ulysses_items.py", line 149, in parse_ulysses_for_groups_and_sheets
    groups_tree = parse_ulysses.create_tree(root_dir, None)
  File "/Users/Evan/Dropbox/settings/Alfred.alfredpreferences/workflows/user.workflow.A5704485-717B-40BA-83C7-A0F75BCDDF25/parse_ulysses.py", line 126, in create_tree
    group = Group(rootgroupdir, parent_group)
  File "/Users/Evan/Dropbox/settings/Alfred.alfredpreferences/workflows/user.workflow.A5704485-717B-40BA-83C7-A0F75BCDDF25/parse_ulysses.py", line 62, in __init__
    self.name = self.title = self._get_group_name(dirpath)
  File "/Users/Evan/Dropbox/settings/Alfred.alfredpreferences/workflows/user.workflow.A5704485-717B-40BA-83C7-A0F75BCDDF25/parse_ulysses.py", line 69, in _get_group_name
    return plistlib.readPlist(join(self.dirpath, 'Info.ulgroup'))['displayName']
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plistlib.py", line 78, in readPlist
    rootObject = p.parse(pathOrFile)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plistlib.py", line 406, in parse
    parser.ParseFile(fileobj)
ExpatError: not well-formed (invalid token): line 1, column 9
10:45:24 workflow.py:2246 INFO     For assistance, see: https://github.com/robwalton/alfred-ulysses-workflow
10:45:24 workflow.py:2267 DEBUG    Workflow finished in 0.030 seconds.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.