Jump to content


  • Posts

  • Joined

  • Last visited

  • Days Won


alfredclough last won the day on January 10 2014

alfredclough had the most liked content!

Recent Profile Visitors

2,585 profile views

alfredclough's Achievements


Member (4/5)



  1. Alfred appears to block it so I'm checking if there is a way.
  2. The title says it all. I have a keyword that triggers a snippet when it is typed and would love to have it trigger a workflow where I can send some custom keystrokes. Is that possible? Or can I insert keystrokes into a snippet (I'm guessing not since it is text).
  3. Setting up a new computer and want to sync my Alfred preferences. I've always use the Apps folder and yes I know about the restriction. In the past this always fixed it: defaults write com.runningwithcrayons.Alfred-Preferences-3 dropbox.allowappsfolder -bool TRUE However it is not working on the new machine. I even tried changing the above to Preferences-4 and it still did not work. My other machine is still synching fine. Any idea what I need to do on the new machine to allow Alfred to load my synced preferences from the Apps folder?
  4. Thanks! That fixed it. Hmm. I wonder why it worked for years 🤔
  5. Every since I've upgraded to Catalina I have a workflow that is throwing an error but I cannot figure out why. It is a script folder that searches file in a folder. Here is the error: [08:11:59.413] Logging Started... [08:12:03.783] Recent Downloads[Script Filter] Queuing argument '' [08:12:04.065] Recent Downloads[Script Filter] Script with argv '(null)' finished [08:12:04.069] Recent Downloads[Script Filter] Warning: Use of undefined constant BASE_DIR - assumed 'BASE_DIR' (this will throw an Error in a future version of PHP) in Command line code on line 1 Warning: Use of undefined constant FILE_PATTERN - assumed 'FILE_PATTERN' (this will throw an Error in a future version of PHP) in Command line code on line 8 Here is the code for the script filter: define(BASE_DIR, getenv('HOME') . '/Downloads'); $file_pattern = "{query}"; if ( $file_pattern ) { $file_pattern = trim($file_pattern); $file_pattern = preg_quote($file_pattern); $file_pattern = '/' . str_replace(' ', '.', $file_pattern) . '/i'; } define(FILE_PATTERN, $file_pattern); $dir_contents = scandir(BASE_DIR); $files = array(); foreach ( $dir_contents as $file ) { $files[$file] = filemtime(BASE_DIR . '/' . $file); } arsort($files, SORT_NUMERIC); //filter out non matching files if ( $file_pattern ) { foreach ( $files as $file => $modtime ) { if ( ! preg_match(FILE_PATTERN, $file) ) { unset($files[$file]); } } } $items = new SimpleXMLElement("<items></items>"); if ( count($files) == 0 ) { $c = $items->addChild('item'); $c->addAttribute('arg', 'No Match'); $c->addAttribute('valid', 'no'); $c->arg = 'No Match'; $c->addAttribute('type', 'file'); $c->title = 'No Match'; $c->subtitle = ''; $c->icon = 'icon.png'; $c->icon->addAttribute('type', 'default'); } foreach( $files as $basename => $modtime ) { $fullpath = BASE_DIR . '/' . $basename; if ( substr($basename, 0, 1) != '.' ) { $c = $items->addChild( 'item' ); $c->addAttribute('arg', $fullpath); $c->arg = $fullpath; $c->addAttribute('type', 'file'); $c->title = $basename; $c->subtitle = $fullpath; $c->icon = $fullpath; $c->icon->addAttribute('type', 'fileicon'); } } echo $items->asXML(); I can't quite figure out what went wrong? I've used this for a long time however if there is an easier way to do this I'm also open for ideas.
  6. Sorry about that--I updated the link.
  7. To make a long story short, I updated a workflow. It has a long action that is done by an Alfred Script object in AppleScript. In certain cases, I want to do some of the work via a python script rather than in AppleScript. To do this I added the following which checks a variable already set and if so tries to run a python script I put in the workflow folder. (The argument passed is encapsulated in quotes) --check if online and if so, use Python. if contents of online is "online" then --run script to put passage onto the clipboard do shell script "python ./get_verse.py \"" + passageRef + "\"" --paste the passage into the current app keystroke "v" using command down else The réponse I'm getting back in Alfred debugging is: [2019-01-16 15:18:30][ERROR: action.script] /Users/samuel/Library/Caches/com.runningwithcrayons.Alfred-3/Workflow Scripts/27C48708-2D1A-4008-BCBF-CCABCD6247DC:801:811: execution error: Can’t make "python ./get_verse.py \"" into type number. (-1700) This tells me it's not executing the python script. I'm sure there's something simple here I'm missing but cannot figure out what it is.
  8. Thank you! It's a solution I found that seemed to work reasonable quickly. If there's a better option I'm open to it.
  9. I have a strange problem I am trying to solve. I must be missing something because this should be quite simple. I have a script to check and see if the computer is online. Here is the script: echo -e "GET http://google.com HTTP/1.0\n\n" | nc google.com 80 > /dev/null 2>&1 if [ $? -eq 0 ]; then echo "online" else echo "offline" fi After this I have two filters. One filter checks if the value is online and the other checks if the value is offline. The problem is when I run the workflow it always stops at the filter and does not continue. I ran Alfred in debut and here is what I see: [2019-01-10 07:38:49][action.script] Processing output of 'utility.filter' with arg 'online ' [2019-01-10 07:38:49][action.script] Processing output of 'utility.filter' with arg 'online ' It appears to me that there is an extra new line after "online" which would explain why the filter is not successfully completing. However, I cannot see any reason why an extra new line would be inserted? This seems like it should be something very simple so I must be missing something but I cannot see what it is.
  10. I found the bug fix for tags with spaces. In the script that is run by the Bear Search Tag trigger to open Bear, the first line of the script is: orig_query={query} It needs to be changed to enclose {query} in quotes otherwise any tag with spaces in it will fail. Here is what the corrected line should be: orig_query="{query}"
  11. I'm not sure if anyone else has run into this, but it seems like the ability to open a tag in bear does not work if a tag has spaces in it. I'm guessing something's not getting encoded properly somewhere?
  • Create New...