kupferlauncher / kupfer

kupfer, smart, quick launcher. `master' is kupfer's release branch.
http://kupferlauncher.github.io
GNU General Public License v3.0
366 stars 64 forks source link

Bring back bash aliases and functions in commands plugin #152

Closed zippy-zebu closed 9 months ago

zippy-zebu commented 3 years ago

Environment

Kupfer Version: 321 Window Manager: Unity/Compiz Desktop Environment: Ubuntu Unity 21.04 Linux Distribution: Ubuntu

There used to be a method to get bash aliases and functions from .bashrc and .bash_aliases. It would be nice if we can have it here as well (with slight modification.)

The quick actions could be

1) Run in terminal -> here leaf.object is the exact command without quote;ex ls -lcth

2) Copy to clipboard (CTRL+C) -> So that it can be used anywhere including remote terminal.

Thanks.

KarolBedkowski commented 9 months ago

After some research - I don't see any reliable method to handle aliases and functions.

For aliases and functions (simplified) you need interactive shell. But if you try run bash -i or bash -l from python - there are some quirks that can break everything. Bash try to do too much, execute some other programs etc - depending of user configuration. Of course - we can load some user defined files like .bash_aliases and use expand_aliases. Tricky, but work. But still - there is not simple way to call in reliable way.

As aliases are generally not recommended and should be replaced by functions or (better) by simple scripts - I don't see any value to add this.

Close this ticket for now; PR will be welcomed for this.