salvadorbs / Asuite

ASuite is a simple open source portable launcher for Microsoft Windows.
http://www.salvadorsoftware.com/asuite
GNU General Public License v3.0
102 stars 14 forks source link

[Feature Request] File associations #70

Open vatterspun opened 3 years ago

vatterspun commented 3 years ago

Current behavior

Right now if you want to open a file in a program located inside the Asuite program, you have to open the menu, launch the program, and do a drag-and-drop (if that function is present) or do a File-Open.

Requested functionality

Add a feature in Asuite to override the system associations so that you can double-click on a given file and have it open in one of the programs in the menu. So for example, Notepad++ could be set to open all .TXT files without going through the system associations menu.

There is an (open source) program called CAFE and later Coffee that managed this, but it was never very user-friendly and is now over 10 years old (unmaintained).

Workaround

Use the "Open with" menu, navigate to the program in question, select it, and then re-open it again, this time checking "always use this program." Windows has never been very good about managing file associations, but Windows 10 in particular is very sluggish in using file associations with programs that haven't been installed.

This workaround is also problematic because it will always open with that file type, not just when Asuite is running, for example if launched from a external USB drive.

===

I can mockup some ideas about how to include this in a more intuitive way if that's interesting, or if it doesn't sound worthwhile, feel free to close the issue.

salvadorbs commented 3 years ago

Last version of Coffee is eXpresso (updated 9 years ago). https://github.com/gluxon/eXpresso/tree/master/Other/Source This is the source code and we can port it in Pascal.

For now it is low priority (and other your issues) because before I need to consolidate ASuite 2.1: I ported sources from Delphi to Lazarus and so ASuite is unstable yet (porting issues, lack of testing and etc...). This is a slow process due to the limited free time available.