Jump to content

Would love a big new release :-)


ctwise
 Share

Recommended Posts

Andrew has been doing a great job fixing defects and he's probably got a big new release in development. Hopefully it's not too late to bring back up old feature requests and throw in a few new ones. So here's my personal pain list.

 

Interface Changes
 

1. Support images in clipboard history

2. Support full Spotlight syntax in searches, e.g., tag:tagname name:xyz

3. Assigned keystrokes, e.g., control-m for move, for command file operations in addition to command-1, command-2, etc.

4. Display keystroke hints for multi-file select (I can never remember them)

5. Make clipboard merging less fussy. I had to turn it off because it triggered constantly when I didn't want it to.

6. Copy workflows

7. Add all displayed files to the file buffer (http://www.alfredforum.com/topic/2296-add-all-files-to-the-buffer/)

8. Email compressed versions of files (http://www.alfredforum.com/topic/1173-email-compressed/)

9. Allow file actions to perform complex checks to make sure they're applicable to the selected file (http://www.alfredforum.com/topic/779-add-additional-filtering-to-file-actions/)

 
Workflow Changes
 
1. Support debugging and/or show errors/intermediate results
2. File path completion when workflows call for filename inputs (and yes, I'm aware I could _also_ make them file actions) (http://www.alfredforum.com/topic/728-shell-command-line-completion-for-shell-commands/)
4. Add a contact results type to workflows so a workflow can return not just generic results or filename results but also contact results (http://www.alfredforum.com/topic/2884-return-contacts-from-a-workflow/). So, for example, an LDAP search workflow could return contacts.
5. Allow filter stages to pass multiple results instead of having to concatenate results in query and parse them back out again. See Pipe Dream #4.
7. Provide initial query to all stages of the workflow (http://www.alfredforum.com/topic/412-provide-original-query/)
 
Pipe Dream
 
1. TextExpander-like workflow triggers
2. TextExpander-like snippet expansion
3. Add Keyboard Maestro functionality
4. Switch from XML to JSON both for result lists and for complex result values.
 
In general, I'd love to subsume the complete functionality for Keyboard Maestro and TextExpander into Alfred.
 
Link to comment
Share on other sites

  • 4 weeks later...

All my upvotes for some form of workflow debugging feedback. I understand this is in the works, but I know nothing about the scope of the feedback.

 

IMO, in order to be useful, it must provide

  1. Precise details of why Alfred rejected a workflow's results if it did exit cleanly, i.e. not simply "bad XML" (which is, by simple fact of the failure, kinda obvious) but an actionable error report and the line & character that caused the error.
  2. Any output generated by the workflow (on stdout and stderr) if the workflow doesn't exit cleanly.

It would be very nice if Alfred provided, in the case of a workflow error

  1. The environmental variables
  2. The precise input sent to the workflow

These are all common sources of errors when adding scripts to apps like Automator, Hazel and Alfred. Both Automator and Hazel report errors, but neither provides sufficient information to debug them easily.

 

The last 3 can usually be worked around by the script author, the first cannot.

 

Personally, I'd be more than happy if Alfred simply provided a log file containing the above information. Anything else in unnecessary.

Link to comment
Share on other sites

All my upvotes for some form of workflow debugging feedback. I understand this is in the works, but I know nothing about the scope of the feedback.

 

IMO, in order to be useful, it must provide

  1. Precise details of why Alfred rejected a workflow's results if it did exit cleanly, i.e. not simply "bad XML" (which is, by simple fact of the failure, kinda obvious) but an actionable error report and the line & character that caused the error.
  2. Any output generated by the workflow (on stdout and stderr) if the workflow doesn't exit cleanly.

It would be very nice if Alfred provided, in the case of a workflow error

  1. The environmental variables
  2. The precise input sent to the workflow

These are all common sources of errors when adding scripts to apps like Automator, Hazel and Alfred. Both Automator and Hazel report errors, but neither provides sufficient information to debug them easily.

 

The last 3 can usually be worked around by the script author, the first cannot.

 

Personally, I'd be more than happy if Alfred simply provided a log file containing the above information. Anything else in unnecessary.

 

@Alfredapp posted some screenshots of the upcoming workflow debugging interface. Personally, I can hardly wait for the v2.2 pre-release :)

Link to comment
Share on other sites

Thanks, Tyler! Hadn't seen that.

 

To be honest, I'm not overly comforted by the screenshot. Do you know if it shows the full output of a script error?

 

For example, a Python traceback looks like this:

Traceback (most recent call last):
  File "smartfolders.py", line 280, in <module>
    sys.exit(main())
  File "smartfolders.py", line 270, in main
    results = search_folders(query)
  File "smartfolders.py", line 214, in search_folders
    folders = get_smart_folders()
  File "smartfolders.py", line 98, in get_smart_folders
    oops
NameError: global name 'oops' is not defined

Just showing the last line, as Automator does, for example, is not very helpful. This is an obviously contrived example (I just typed "oops" on a random line in the script), but nevertheless, the really helpful information is not contained in the last line.

Link to comment
Share on other sites

I'm not sure how much information Alfred will give, but I think the error's logged are shown exactly as given by the interpreter in question.

 

I ran a few quick tests. It looks like the error output shown in the image is complete. Bash (first error) would return a simple line number with a small piece of code, as would PHP (the second error). I imagine the workflow in the screenshot is using quick and dirty syntax errors as tests.

 

I'm not sure how much information Alfred will give, but I think the error's logged are shown exactly as given by the interpreter in question.

 

I ran a few quick tests. It looks like the error output shown in the image is complete. Bash (first error) would return a simple line number with a small piece of code, as would PHP (the second error). I imagine the workflow in the screenshot is using quick and dirty syntax errors as tests.

Link to comment
Share on other sites

You have it? Hot damn! I want it! (Well, I want it to give to the users for whom my workflow isn't working and I can't debug the problem).

 

Any chance you could whip up a quick Python script filter and see what the output of the following is:

def f1():
	1 / 0

def f2():
	f1()

def f3():
	f2()

def f4():
	f3()

f4()
Link to comment
Share on other sites

 

You have it? Hot damn! I want it! (Well, I want it to give to the users for whom my workflow isn't working and I can't debug the problem).

 

Any chance you could whip up a quick Python script filter and see what the output of the following is:

def f1():
	1 / 0

def f2():
	f1()

def f3():
	f2()

def f4():
	f3()

f4()

 

I think you misunderstood me. I do not have the new debugging feature in my installation of Alfred. I don't have any special access to releases.

 

I did, however, compare what I saw in the image on Twitter to an actual syntax error from Terminal. They matched, so I concluded the errors in the image were pulled verbatim from actual error outputs.

 

P.S. I'm sure you already know this, but for the sake of completeness, the code above returns a 'DivideByZero' traceback (obviously) when run from the Terminal ;)

Edited by Tyler Eich
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...