Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[feature request ] Take a lot of cues from https://github.com/properlypurple/braus :-) #9

Closed
cocoonkid opened this issue Mar 16, 2024 · 6 comments
Assignees

Comments

@cocoonkid
Copy link

cocoonkid commented Mar 16, 2024

[feature request ] Take a lot of cues from https://github.com/properlypurple/braus :-)

Very well done. Use it since years. But looking forward to switch to linkquisition.

Especially helpful would be a rule e.g that any link opened in obsidianmd would open in chrome only, skipping the manual switch.

Looking foward to this project. Thanks for your work!

Edit:

https://apps.apple.com/us/app/link-unshortener/id1506953658
Is also an application for macos that I use that is very nice. Lot's of cues to gain from that one as well.

@Strobotti
Copy link
Owner

Thank you for your feedback!

The link-unshortener could be made as a plugin rather easily, the biggest caveats probably being sites needing authentication, but I suppose that's a problem to be solved as well 🙂

Now for the rules part, I should update the screenshots and documentation as the latest version already supports rules based on site, domain or even regular expression, however the UI only exposes the site one:

image

There's no technical reason for making it possible to have the app ask remembering by domain or writing a regular expression as well, but its rather a UX-thing: the UI quickly becomes cluttered and complex, or "busy" if you will, if I keep just adding components to it 😆

In practise I just have to sit down and try to think the UX through: even the terminology is a mess! I use "domain" when I mean "*.example.com", meaning it would match all the subdomains as well; then I use "site" where I refer to the exact match, e.g. "www.example.com" but I'm totally unsure if this makes sense at all. Its rather telling that I actually had to double-check this from source-code when writing this...

If I understood correctly, you would like to be able to pick browser based on which application is requesting the link to be opened? Not sure if I'm able to get that information when the xdg-open (which in turn is launching Linkquisition) is called, but if this information indeed is available it would be relatively easy to implement... you could also consider checking if there are any tell-tale parts in the URL itself and use a regular expression -rule for this?

...

I haven't been releasing a new version for a while as I have been trying to have a Windows-version up and running, but haven't been able to finish that yet. Unfortunately the combination of Golang and Windows don't work with plugins yet, which hasn't exactly given me a motivational boost here 😞

@Strobotti Strobotti self-assigned this Apr 5, 2024
@Strobotti
Copy link
Owner

I created a proof-of-consept pull-request for testing a link-unshortener -type plugin, which I named "terminus":

#10

I didn't implement configuration options yet (timeouts, max redirects), but its quickly added if this makes sense 🙂

@cocoonkid
Copy link
Author

cocoonkid commented Apr 6, 2024

wow thanks! highly appreciated. I was able to solve the obsidian part with https://github.com/MamoruDS/obsidian-open-link-with
and that took care of it. In my case that is the only application where I need this feature (so far) but of course a generic solution would be awesome.

Thanks so much for considering these ideas.

I just had another one.

Using vimium extensively for browsing and an autogenerated hotkey for browser selection in the chooser would also be a nice feature. (or just h j k l ; ..possible very few users have more browser than that?)

The Image here is only the vimium example. in LQ it would be only one key per browser of course to keepo the UI minimal.

image

have a great day!

@Strobotti
Copy link
Owner

hehe, I have another confession to make: you can already press numbers 1-9 to choose a browser (numbers match the browsers respectively from the top), just that I struggle to implement good UI so there's no indication for the user 🤣

I think its time to add the browser icons to the buttons and include the hotkey-indicators somewhere there as well. The label at the bottom of the dialog feels too crowded already, so I need to think about alternative solutions.

@Strobotti
Copy link
Owner

Published a new release containing this "terminus" -plugin with configuration options and bells & whistless but realized I have a bug in the redirect -logic, e.g. if the redirect points to the same host so that the location is just something like /the/path/ instead of https://www.example.com/the/path/ it fails to follow it, but then I started thinking if this is actually a bug or a feature...? 😆

Well, have to keep using Linkquisition now with "logLevel": "debug" and keep looking at the cases where the plugin "gives up" and what would the resulting redirect be like...

tail -f ~/.local/state/linkquisition/linkquisition.log

@Strobotti
Copy link
Owner

If you don't mind I'll close this one now as it's not very exact "issue" but a motivational and inspirational boost, as I would call it 😄

I also just released a new version (1.6.0) which has support for Browser icons on those picker buttons - I hope it works as intended and improves the usability.

I now also have a lot of TODOs to complete:

  • I wish to add support for horizontal browser selection with just icons (or maybe text at the bottom of the button as well)
  • the codebase is a mess and test-coverage to match it; need to find good abstraction between components, but as I'm by no means a desktop-application developer this is a lot more work i thought
  • support for Windows and Apple computers (this adds more places for potential abstraction layers, see above point)

By all means give more ideas if you come up with them, I'll try to make this tool better with every release, but I don't always know what "better" means 😆

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants