-
Posts
175 -
Joined
-
Last visited
-
Days Won
10
Content Type
Blogs
Gallery
Downloads
Events
Profiles
Forums
Articles
Media Demo
Posts posted by Mr Pennyworth
-
-
My emoji search workflow has a JSON file with following stats:
Filesize: 2.1 MB
Character Count: 1304946
Line Count: 1Alfred loads it correctly without truncation.
Maybe it is worth investigating whether it is Alfred truncating your JSON file or something else causing the truncation... -
Ongoing discussion with two working solutions: https://github.com/biati-digital/alfred-calculate-anything/issues/22
-
Sorry folks for all the errors and failures you keep running into!
The workflow is way too hacky with no good logging, error reporting and very poor debugging... I started working on a revamped version with detailed logging, less moving parts and a consolidated code base in a single swift binary, but work at my day job has gotten way too hectic and the revamping of workflows and bugfixes have taken a backseat
I'd gladly merge pull requests though!
Thanks and apologies!
- lev78 and Prometheus
- 1
- 1
-
Quite likely not possible with just Alfred.
If you don't mind using https://karabiner-elements.pqrs.org/ which is free and open source, it is easy.
Note: for this to work, you'll have to set Alfred Preferences > Appearance > Options > Focusing to "Compatibility Mode"
Just add the following rule to ~/.config/karabiner/karabiner.json:
{ "description": "Tab as down arrow in Alfred", "manipulators": [ { "conditions": [ { "bundle_identifiers": [ "^com.runningwithcrayons.Alfred" ], "type": "frontmost_application_if" } ], "from": { "key_code": "tab" }, "to": [ { "key_code": "down_arrow" } ], "type": "basic" } ] }
For reference, here's an example of how the entire file would look like:
{ "global": { "check_for_updates_on_startup": true, "show_in_menu_bar": true, "show_profile_name_in_menu_bar": false }, "profiles": [ { "complex_modifications": { "parameters": { "basic.simultaneous_threshold_milliseconds": 50, "basic.to_delayed_action_delay_milliseconds": 500, "basic.to_if_alone_timeout_milliseconds": 1000, "basic.to_if_held_down_threshold_milliseconds": 500, "mouse_motion_to_scroll.speed": 100 }, "rules": [ { "description": "Tab as down arrow in Alfred", "manipulators": [ { "conditions": [ { "bundle_identifiers": [ "^com.runningwithcrayons.Alfred" ], "type": "frontmost_application_if" } ], "from": { "key_code": "tab" }, "to": [ { "key_code": "down_arrow" } ], "type": "basic" } ] }, ] }, "devices": [], "fn_function_keys": [ { "from": { "key_code": "f1" }, "to": { "consumer_key_code": "display_brightness_decrement" } }, { "from": { "key_code": "f2" }, "to": { "consumer_key_code": "display_brightness_increment" } }, { "from": { "key_code": "f3" }, "to": { "key_code": "mission_control" } }, { "from": { "key_code": "f4" }, "to": { "key_code": "launchpad" } }, { "from": { "key_code": "f5" }, "to": { "key_code": "illumination_decrement" } }, { "from": { "key_code": "f6" }, "to": { "key_code": "illumination_increment" } }, { "from": { "key_code": "f7" }, "to": { "consumer_key_code": "rewind" } }, { "from": { "key_code": "f8" }, "to": { "consumer_key_code": "play_or_pause" } }, { "from": { "key_code": "f9" }, "to": { "consumer_key_code": "fastforward" } }, { "from": { "key_code": "f10" }, "to": { "consumer_key_code": "mute" } }, { "from": { "key_code": "f11" }, "to": { "consumer_key_code": "volume_decrement" } }, { "from": { "key_code": "f12" }, "to": { "consumer_key_code": "volume_increment" } } ], "name": "Default profile", "parameters": { "delay_milliseconds_before_open_device": 1000 }, "selected": true, "simple_modifications": [], "virtual_hid_keyboard": { "country_code": 0, "mouse_key_xy_scale": 100 } } ] }
-
I love this discussion minus the part where @Chris Messina felt unwelcome. From my limited interactions with @deanishe and @vitor I feel damn confident that no one on this thread means to attack / argue in bad faith with anyone.
MacOS settings:
I don't agree with the thesis that Apple's "Default Web Browser" setting is misleading or incomplete. "Web" implies http(s), no? I don't see any ambiguity there. Apple is saying "choose an app to open http(s) urls". It is just that for all other URL schemes, Apple hasn't provided a UI. But whatever UI is present, it is precise, and complete. It claims to be about "web" and it is.
Alfred:
Reading the text for the "Open URL" object, presence of terms like "website's search URL" and example of twitter, I feel like there's a possibility that the original design intent behind the "Open URL" object was exclusively for http(s) URLs. The copy certainly reads like that. Another reason for me to believe so is the fact that it is grouped together with "Default *Web* Search".
To my eyes, being able to open other URL schemes with this workflow object seems like a case of "it is possible due to particular implementation details".
As @vitor has correctly pointed out, terms "Browser" or "Default Browser" are a bit of a lie.
Imagine the user (workflow user who has opened the object out of curiosity) experience:- User sees that the URL is "craft://..."
- Browser is "[firefox icon] Default Browser"- User rightly concludes that it'll open a firefox tab/window and the address bar will have "craft://..."
- User concluded wrong
- When workflow runs, craft app is opened
As a user, I don't like such surprises. This is where @vitor's another observation comes in.
- What fraction of users will feel "lied to"? (guess: teeny tiny)
- How easy is it for the above users to update their mental model? That is, them realizing that "when alfred says *default browser*, it means, under the hood, it is like calling 'open' without an app argument" (guess: very easy for most users)My interpretation of @vitor's view is that because it is only a teeny tiny fraction of users who will ever get confused (cuz most users won't know/bother about non-http(s) schemes), and those users (not all, but most) will quickly figure what is going on, it is not worth changing the UI as it would mean complicating the UI for the other users. This is the part where I disagree. What if the said change didn't complicate stuff?
Here's a mock:
- instead of "Browser:" it says "Open With:"
- instead of "[Firefox Icon] Default Browser" it says "[Generic Mac Icon] MacOS Default"
To my eyes, this change won't add or cause any confusion for the majority of users (who are concerned only with *web*).
At the same time, it eliminates the confusion for the minority too (who would enter "craft://..." and get confused as to why the dropdown has only web browsers)TL;DR: Presently, the following are simultaneously true
- As @Chris Messina pointed out, the UI is wrong in some cases. (It shows "[firefor icon] Default Browser, but opens in Craft, which is not a browser)
- As @deanishe pointed out, most users learn that even though the UI is wrong, the actual behavior is correct. Not all users, because Chris just gave us a data point.
- As @vitor pointed out, changing UI is a bad idea if it improves experience of a tiny minority while making it worse for the majority.
@vitor what do you think about my proposed changes? Do you think it'll degrade the "most users'" experience?
@Chris Messina what about you? Do you think these changes that I suggested would go a long way in addressing your complaint (which is my complaint too, by the way)?@Andrew it would be awesome if you chimed in. You're the OG and solo designer, and looking at Alfred, an outstanding one!
- Do you see this as an issue or non-issue?
- What do you think of the proposed changes?
- vitor and Chris Messina
- 1
- 1
-
@Shakti
Here's the download link: https://github.com/ibnuh/alfred-character-counter-workflow/releases/download/1.0/Character.Word.Counter.alfredworkflowHere's the link to the page, in which the downloads are listed: https://github.com/ibnuh/alfred-character-counter-workflow/releases
-
Edit:
Here's your workflow modified to do exactly what you were aiming for: https://drive.google.com/file/d/1eX_pa_E3thrMvdKVKzYDpjrKyOT2oLyS/view?usp=sharing
I haven't edited the python script at all, just re-arranged and edited some stuff in the workflow editor.
Now it looks like this:
For a crude explanation of how it works, refer below:
Before edit:
The following workflow does precisely what you've described:
https://github.com/mr-pennyworth/alfred-gif
I know you want to write your own, so, you can take a look at this workflow and see how it is done and do the same in your own workflow. Here's how it achieves the behavior you described:
-
This is a script filter. As @deanishe mentioned, in a script filter, you can't do wait-for-enter. So, I do this hack instead:
The script filter basically does no work except for storing the query in a file. When the user presses enter, (2) and (3) are activated simultaneously. - Returns immediately with a "search in progress..." message.
- Gets results from the gif website, returns a message about the gif.
- The messages from (2) or (3) are stored in an environment variable.
- Re-populate Alfred's search box with the query that was just executed.
-
This is a script filter. As @deanishe mentioned, in a script filter, you can't do wait-for-enter. So, I do this hack instead:
-
7 hours ago, Alfred0 said:
Any way to get that part working?
Hmm...
Not sure whether it is possible...
I for sure can't think of a way
I'm not sure whether this could be somehow used: https://karabiner-elements.pqrs.org/but give it a look?
Till then, I guess you're stuck with pressing enter to paste
-
18 minutes ago, cheeth said:
Thanks, it's just not efficient and goes against the grain having to reposition your both hands, especially for a shortcut that is used daily.
Agreed.
You can always create your own keybindings though. Check this link for an example and explanation:
Just create a workflow with the following:
-
1 hour ago, cheeth said:
then use arrow keys or cmd-# keys
The following work too:
control-n (for down)
control-p (for up) -
20 minutes ago, deanishe said:
I think he means Alfred's debugger. I don't think there's anything relevant in Console.app.
Whoops! My bad
Meant Alfred's debugger.7 minutes ago, robbedoes said:This is great!!
The browser tab for authentication opens.
There are no "command not found" errors in the debugger anymore.
If you do the exact same thing as in the video, but with the actual secret and ID. I want to say "it'll work!". However, you've repeatedly told us that it didn't
Sadly, I've got nothing further to help but to say, "try one last time exactly like in video, but with the id and the secret" -
5 minutes ago, deanishe said:
I've downloaded the workflow myself and changed the ID & secret. It works.
Same thing for me!
48 minutes ago, robbedoes said:It's the only thing I changed and it's still not working. I really wonder what I'm doing, getting kind of tired of it right now. I guess you guys are too, but you're my only hope.
Here's a last-ditch effort:
I loved how you shared that video! It was very helpful
Based on the back-and-forth so far, I feel like we'd be able to spot what's going wrong if you could share an entire video of the download-edit-save-run process with console open.
To make sure that you're not sharing the client secret in the video, in the "edit" phase, just add 'xxxxxxxxxxxxx' to the relevant lines in the rb file instead of actual secret. (by the way, I should clarify that it is perfectly fine to share the app id and client secret from the perspective of your security. from the perspective of quotas, maybe not so)
-
8 minutes ago, robbedoes said:
Tried debugging inside Alfred:
Can you confirm that this is the first line of google-drive.rb file?
#!/usr/bin/ruby -
As @deanishe has pointed out,
51 minutes ago, robbedoes said:This isn't how it should be done.
Try the following:
- Download the workflow (the .alfredworkflow file): https://github.com/azai91/alfred-drive-workflow/releases/download/v2.1/Google-Drive.alfredworkflow
- Double click on the downloaded file to open it with alfred
- Right click on the workflow inside Alfred, and select "Open in Finder"
- In the finder window that's opened in (3), edit the google-drive.rb file with your own credentials.
- Save the file
- Run the workflow
-
1 hour ago, Alan He said:
What's the feedback JSON ?
Can you post a link or example?
https://www.alfredapp.com/help/workflows/inputs/script-filter/json/
Search for "Rerunning script filters automatically" on that page
-
3 hours ago, bazerman said:
Free version might be all that's needed for this
That can easily be determined.
Free versions have a limit of 100 searches per month or so. (for all of the services listed there)
Q: Do you want "search as you type"?
A: If yes, free version won't be enough because because each query in alfred could result in tens of queries to the service.Q: Do you see yourself using this workflow more than thrice a day on average?
A: If yes, free version won't be enough because you'll run out of your quota way before the month ends.
-
@allenrowand try this:
import decimal import sys query = float("{query}") output = str(round(decimal.Decimal((query*.029)+.3),2)) sys.stdout.write(output) sys.stdout.flush()
The newline is coming from the `print` function
-
7 hours ago, deanishe said:
Does pasting directly from the clipboard (i.e. not via Alfred's history) work?
1) Copy image file in finder -> paste in firefox (Hangouts) works!
2) Copy something else -> Use Alfred's clipboard history to paste the same file from (1) -> doesn't work!It always works in chrome though. So looks like something wonky with firefox!
-
4 hours ago, Andrew said:
This is very interesting behaviour from iMessage
Cleanshot (a screenshotting tool) too does something similar (puts file as well as image data onto the pasteboard)
4 hours ago, Andrew said:one workaround is to turn off storing files in Alfred's clipboard history
Thanks sooooo much for pointing this out!!
-
2 hours ago, deanishe said:
What app isn't paste working in?
Hangouts, Facebook Messenger, Whatsapp for Web (all in firefox)
Works for this forum and google docs though.I guess each website handles paste according their own whims and fancies!
-
1 hour ago, deanishe said:
to save space
Very justifiable!!
It's just that the single-representation approach breaks my workflow (sounds too much xkcd-like I know 😂)
Cleanshot is a screenshot app with some handy features. I'm so used to just pasting the screenshot without thinking whether it is the browser or finder. That works because it puts a file as well as the png and tiff data onto the pasteboard. I keep getting tripped over "Why isn't Alfred pasting the screenshot I copied just a while ago?" and then "oh yeah, cuz now it is just a file".
I didn't post on the forums before as I felt it would be too entitled to ask for it 😝
But when I saw a post, I couldn't resist requesting the "feature" -
Many applications put multiple types of entries onto the pasteboard. Alfred, however seems to save only one of those. This creates unexpected behavior like the one described by @deanishe here:
I can imagine that an argument can be made that "it is not a bug, it is just that Alfred's clipboard manager is not as feature rich". And for that reason, I'm opening this thread as a feature request
-
14 hours ago, Andrew said:
I intended to monitor the feedback on this to see if indication was still needed
I found the old scrollbar behavior very helpful. It immediately told me that there are more results and not just the 9. From a UX perspective, I think the macOS behavior to "show scrollbar only while scrolling" isn't exactly the same Alfred's latest choice. In most places (like a browser for example), there are plenty other visual affordances to let you know that "there is more content". For example, looking at a webpage, or an article, it becomes apparent most of the times that there's more stuff below the fold. In contrast, the scrollbar was the sole indicator of it in Alfred.
So, here's another strong vote in favor of "I really really wish Alfred gave me a choice to restore old behavior"
-
@raphaelhuleux soon someone more knowledgeable will come along and give a more sensible solution...
In the meanwhile, here's how I've been solving the same problem:
In the hotkey setting, set "Argument" to "text"
and set the text to period "." followed by space
Clipboard Viewer - Delete entries with (⌥ + ⌫)
in Alfred Feature Suggestions
Posted
I have a suspicion that it might not be possible to change that keybinding...
Nonetheless, if you're okay with keeping "Fn + Backspace" and want to add your own shortcut in addition, you can follow this:
Check my post, and Andrew's explanation following right after that post. Hope it helps!