Releases: kupferlauncher/kupfer
v327
kupfer v327 (2024-04-28)
-
Fix:
-
Fix random crashes reported on Arch and Python 3.11.8 probably caused by
broken support for multi display/monitor support. Close: #176 -
Fix returning to previous leaf in browser (left key action); when leaves
come from action result there is not valid parent, so searching for it
is waste of time. -
Fix browser window placement; especially after text box is show/hide.
-
Fix random crashes on startup related probably to too fast application
start.
-
-
Plugins:
-
New:
- recoll: query Recoll full text search system
-
Fixed:
- tmux, libvirt - fix names
-
-
Dev:
- Minor fixes (types)
v326
kupfer v326
-
Fix:
- Do not lowercase entered search term when passing it to sources that
create text leaves. Sources like Shell Commands and Text now get
exact text that user entered/select. Close: #175
- Do not lowercase entered search term when passing it to sources that
-
Plugins:
-
Updated:
- clipboard: handle errors on creating file leaves from text when
text is not valid file path.
- clipboard: handle errors on creating file leaves from text when
-
-
Dev:
- Minor changes related to handling / logging errors.
v325
v324
kupfer v324 (2024-01-07)
-
New features:
- Allow user to choose how trim displayed text - add new options in preferences "Text ellipsization". Close: #98
- "Actions in first panel" - experimental feature that allow user to run actions by selecting it in first panel and then select target object in next panel. Require enabled "Kupfer Actions" plugin. Close: #77 (maybe).
-
Fix:
- Fix validator for URLs: better support for URLs without FQDN and netloc.
- Show only first line of multi-line descriptions. Whole description is in tooltip. Close: #116
- Fix refreshing sources cache on start - sources are force refreshed on plugin enabled and on Kupfer start when cache not contains items. This prevent bizarre behavior when Kupfer is restarted and sources depend on some unavailable files.
- Fix return to parent leave - try to load all leaves until parent leave is found instead of go to first leave.
-
Plugins:
-
New:
- Kupfer Actions: put actions into first panel.
-
Updated:
- clipboard: fix broken description for URL and file path; handle errors when text is recognized as file path but is broken.
- core: leaves with can text and uri representation can be used in "OpenTextUrl" action.
- ssh_hosts: add text representation in form of ssh://host... so now can be opened i.e. in external applications. Add new action "Send file to..." - send file/directory to remote host.
- websearch: new action "Search..." - search with default engine; user do not have to select search engine, default can be configured or is take from "user search engines" with DDG as fallback.
-
-
Dev:
- Fix loading plugin configuration that base on
ExtendedSetting
. For now no one plugin use it anyway... - Minor code cleanup
- Fix loading plugin configuration that base on
v323
This is new release of Kupfer, slightly refactored, optimized and updated.
Changes
-
New features:
- For grouping leaves (like hosts, contacts) add "copy to clipboard" action for each slot (email, adress, etc). Close: #169
- After launch some action for leave next time this action get some bonus that make it higher on the list. Also, this action get (smaller) bonus for each same type of leaves.
- URL-s can be opened with selected application ("Open with..." action)
- User can configure preferred text editor; list is loaded from application registry.
- List of terminals is loaded from application registry (applications with "terminal" tag). Some terminals are still preconfigured.
- In plugins settings user can choose files and directories by appropriate dialog instead of type path manually.
- Kupfer can more frequent refresh items in background and cache result; this make searching and browsing faster.
- If more than one action have the same accelerator pressing key navigate between them; previously first action was activated.
- Hosts and services have additional aliases "service:hostname"; this allow user to fast find items by entering e.g. "sshmyserverhostname".
- Add text representation to leaves representing songs (rhythmbox and audacious plugins) and leaves representing services; user can i.e. copy it to clipboard or use whenever text is acceptable.
-
Fix:
- Make Kupfer window rounded again. Close: #83
- After repoen Kupfer window, if current leaf has qf_id (leaf like selected dir, file, etc), update this leaf (research) and show current value. Close: #172
- Fix error on group merge when source was updated in background.
- Fix "mark as default" action broken in beta1. Close: #170
- Add some missing icons (stock_person, stock_mail)
- Strip whitespaces from url-s when calling "show url"
- Do not decorate leaves in third panel as there is no way to "enter" to it.
- If actions have the same name, make it unique by adding plugin name; previously module name was added.
- Improve detecting URLs, files path, and emails addresses in text.
- Fix not working "select clipboard text" accelerator.
- Fix presenting first line from Text leaves: now really show first line.
- Browser track history of selected leaves and allow return to parent leaf instead of top of list.
- Make sure that file opened in plugins are closed after load.
-
Plugins:
-
New:
- Aria2: download files be remote aria2 instance.
- Librewolf: load bookmarks from Librewolf web browser
- NetworkManager: manage network connections
- Screenshot: take desktop screenshot using 'scrot' or 'flamegraph'.
- Show QRCode plugin: generate qrcodes from text.
- Textutils: various tools that convert, format and generate text content (i.e. generate random strings, convert case, encode base64,
format json and xml). - Tmux: support tmux session and tmuxp workplaces.
- Tracker3: full-text search in Tracker 3 application.
- Vim: recent files opened in vim and quick access to configured VimWikis.
- Zoxide: load most used directories from zoxide database.
-
Updated:
-
Application:
- Add additional aliases do application: executable name and original (English) name.
- New action "Open With...": open file with one of application that support given file type.
- New action "Launch here": start application in selected folder.
- User can enable loading additional application aliases. This make possible to select application by application comment, keywords or generic name but may have impact on overall performance.
-
Apt: add new actions: "Search for file in packages..." and "Browse packages.debian.org".
-
Archive manager: user can select 7zip (7z or 7za) to use instead of file-roller.
-
Audacious: use D-Bus for interaction with audacious.
-
Chromium: monitor and load changes in bookmarks.
-
Clipboard: detect URLs and files path in clipboard items and selected text.
-
Dictionary: add support for GoldenDict
-
Favorites: allow user to add to favorite only leaves than can be added.
-
File actions: new action "Edit file content" that open configured text editor
-
Image: detect images files by mime type, not by extension.
-
Libvirt: monitor state of virtual machines; fix icons
-
Rhythmbox: fix errors when no mpris module available.
-
Session gnome, Session lxqt, Session xfce: user must confirm "logout" and "shutdown" actions
-
Session xfce: load favorite applications defined in Whisker Menu.
-
Show Text: bring back "Large Type" action. Close: 91
-
Ssh_hosts:
- Fix loading
Match
rules from ssh config file. - Fix monitoring for configuration changes.
- Load and use host name from ssh .config file
- Update icons
- Fix loading
-
Textfiles:
- New action "Copy content" (with "C" accelerator): copy content of text file to clipboard
- "Write To" action allow user to enter destination file name.
- Fix selecting destination directory
- Fix encoding on write files
-
Thunar: add "Open Trash" action
-
URL Actions: check response status code (accept only 2xx); if there is not exact filename in response or url, try to guess filename with extension by url and content type.
-
Web Search: allow user to define custom search engines by provide appropriate URLs.
-
Volumes:
- New "Mount" action
- Separate "Eject" and "Unmount" action.
-
Wikipedia:
- User can configure more than one language for Wikipedia search; action "Search in Wikipedia" allow user to select Wikipedia language.
- Add "S" accelerator for "Search in Wikipedia" action.
-
Windows: better detection of Kupfer windows.
-
some plugins now report error (import error) when required command or application is missing in system.
-
-
-
Dev:
-
BREAKING: refactor & modernize code; Python 3.9+ is now required.
-
BREAKING: reorganise and rename some modules, functions. Split long files into smaller.
-
BREAKING: there is no backward compatibility with old/external plugins.
-
Simplify, optimize code; remove legacy and duplicated code; drop unnecessary list creation (use iterators whenever possible); remove redundant caching. This improve performance and memory usage.
-
Add types to most core objects.
-
When run in "debug" mode, when available, use
typeguard
for checking types. This may slowdown Kupfer. -
Add
pyproject.toml
file. -
Refactor ui: remove deprecated components, fix layout.
-
Upgrade WAF v 2.0.25; fix & update wscript files.
-
Add
icons.get_gicon_from_file
: quick load gicon from file. -
Add
kupfer.support.validators
with some useful functions (validate URLs, etc). -
Add some debugging tools to debug.py (ic, etc).
-
FileLeaf
accept Path object. -
FilesystemWatchMixin
provide function to monitor single files. -
Add some caching for icons (esp.
ComposedIcons
) -
Add simpler caches in
kupfer.support.datatools
and some statistics to existing. Addget_or_insert
method to LruCache. -
Plugin preferences may use list of string (type list) and helpers (select directory, file). For int-type preferences can be set min and max value. See zoxide, firefox plugins for example use.
-
Dialog like preferences are destroyed on close.
-
Action may reload leaves list in browser as result of execute. See Volumes plugin and "Mount" action.
-
Refresh action do not duplicate sources in browser.
-
Sources can define minimal interval between background load data (
source_scan_interval
).mark_as_default
method have new parameterpostpone
(default False); when true, mark source to update in next rescan campaign but not clear cache. -
Purge mnemonics remove first oldest entries.
-
Plugins can register "favorite" items. See Session XFCE plugin.
-
AsyncFileResult
wait limited time for file result. -
Add some tests.
-
Add new dbus method - FindObject.
-
Cache
KupferObject
repr
value -
Colors in console output.
-
-
Update translation: pl
v323-beta3
This is (probably) last beta for next Kupfer release.
Changes
-
Fix:
- Fix detecting ssh configuration changes in
ssh_hosts
plugin
- Fix detecting ssh configuration changes in
-
Plugins:
-
Updated:
- applications: user can enable loading additional application aliases.
This make possible to select application by application comment,
keywords or generic name but may have impact on overall performance.
- applications: user can enable loading additional application aliases.
-
-
Dev:
- Simplify URL validators
v323-beta2
This is second beta of next Kupfer release.
Bring bugfixes and some minor new features.
Changes
-
New features:
- For grouping leaves (like hosts, contacts) add "copy to clipboard"
action for each slot (email, adress, etc). Close: #169 - After launch some action for leave next time this action get some
bonus that make it higher on the list. Also this action get (smaller)
bonus for each same type of leaves. - URL-s can be opened with selected application ("Open with..." action)
- For grouping leaves (like hosts, contacts) add "copy to clipboard"
-
Fix:
- Fix "mark as default" action broken in beta1. Close: #170
- Add some missing icons (stock_person, stock_mail)
- Strip whitespaces from url-s when calling "show url"
- Do not decorate leaves in third panel as there is no way to "enter" to
it.
-
Plugins:
-
New:
- textutils: various tools that convert, format and generate text
content (i.e. generate random strings, convert case, encode base64,
format json and xml). - librewolf: load bookmarks from Librewolf web browser
- textutils: various tools that convert, format and generate text
-
Updated:
- ssh_hosts: load and use host name from ssh .config file; update
icons - libvirt: fix icons
- some plugins now report error (import error) when required command or
application is missing in system.
- ssh_hosts: load and use host name from ssh .config file; update
-
-
Dev:
- Simplify caching icons/gicons
- Cache
KupferObject
repr
value - Fix types
- Colors in console output.
v323-beta1
First beta release of next Kupfer version.
This version introduce some breaking changes:
- Python 3.9+ is requires
- core code was refactored, so external plugins may required some rewrite.
Changes
-
New features:
- User can configure preferred text editor; list is loaded from
application registry. - List of terminals is loaded from application registry (applications
with "terminal" tag). Some terminal are still preconfigured. - In plugins settings user can choose files and directories by appropriate
dialog instead of type path manually. - Kupfer can more frequent refresh items in background and cache result;
this make searching and browsing faster. - Make Kupfer window rounded again.
- If more than one action have the same accelerator pressing key navigate
between them; previously first action was activated. - Hosts and services have additional aliases "service:hostname"; this allow
user to fast find items by entering e.g. "sshmyserverhostname". - Leaves representing songs (rhythmbox and audacious plugins) and
leaves representing services have text representation, so user can
i.e. copy it to clipboard or use whenever text is acceptable.
- User can configure preferred text editor; list is loaded from
-
Fix:
- If actions have the same name, make it unique by adding plugin name;
previously module name was added. - Improve detecting URLs, files path, and emails addresses in text.
- Fix not working "select clipboard text" accelerator.
- Fix presenting first line from Text leaves: now really show first line.
- Browser track history of selected leaves and allow return to parent leaf
instead of top of list. - Make sure that file opened in plugins are closed after load.
- If actions have the same name, make it unique by adding plugin name;
-
Plugins:
-
New:
- NetworkManager: manage network connections
- Tmux: support tmux session and tmuxp workplaces.
- Zoxide: load most used directories from zoxide database.
- Vim: recent files opened in vim and quick access to configured
VimWikis. - Tracker3: full-text search in Tracker 3 application.
- Show QRCode plugin: generate qrcodes from text.
- Aria2: download files be remote aria2 instance.
- Screenshot: take desktop screenshot using 'scrot' or 'flamegraph'.
-
Updated:
-
Apt: add new actions: "Search for file in packages..." and "Browse
packages.debian.org". -
Application:
- Add additional aliases do application: executable name and original
(English) name. - New action "Open With...": open file with one of application that
support given file type. - New action "Launch here": start application in selected folder.
- Add additional aliases do application: executable name and original
-
Web Search: allow user to define custom search engines by provide
appropriate URLs. -
Audacious: use D-Bus for interaction with audacious.
-
Wikipedia:
- User can configure more than one language for Wikipedia search;
action "Search in Wikipedia" allow user to select Wikipedia language. - Add "S" accelerator for "Search in Wikipedia" action.
- User can configure more than one language for Wikipedia search;
-
File actions: new action "Edit file content" that open configured
text editor -
Volumes:
- New "Mount" action
- Separate "Eject" and "Unmount" action.
-
Textfiles:
- new action "Copy content" (with "C" accelerator): copy content of
text file to clipboard - "Write To" action allow user to enter destination file name.
- Fix selecting destination directory
- Fix encoding on write files
- new action "Copy content" (with "C" accelerator): copy content of
-
Show Text: bring back "Large Type" action.
-
Chromium: monitor and load changes in bookmarks.
-
Dictionary: add support for GoldenDict
-
libvirt: monitor state of virtual machines
-
Archive manager: user can select 7zip (7z or 7za) to use instead
of file-roller. -
Session gnome, Session lxqt, Session xfce: user must confirm
"logout" and "shutdown" actions -
Session xfce: load favorite applications defined in Whisker Menu.
-
Image: detect images files by mime type, not by extension.
-
Rhythmbox: fix errors when no mpris module available.
-
SSH hosts: fix broken monitoring for configuration changes.
-
Windows: better detection of Kupfer windows.
-
Clipboard: detect URLs and files path in clipboard items and
selected text. -
Favorites: allow user to add to favorite only leaves than can be
added. -
Thunar: add "Open Trash" action
-
URL Actions: check response status code (accept only 2xx); if there
is not exact filename in response or url, try to guess filename with
extension by url and content type.
-
-
v322
-
Update translation: pl
-
Plugins:
- Add support mate-dictionary in dictionary plugin by Igor Santos
- Fix Firefox and Thunderbird database connection (closes: #153)
- Add support for
file://<local-hostname>/
URLs - Add Firefox tags plugin
- Fix Thunderbird plugin - support new database schema
- Fix Thunderbird plugin - support contact without proper name or other
fields (closes: #164) - Add libvirt plugin - manage libvirt domains
- Add zeal plugin - quick search in zeal docsets
- Fix window plugin - don't break on Wayland, fix switching workspace
- Fix segfault on Wayland and newer version of libwnck (closes: #165)
-
Dev:
- Don't embed timestamp in gzip header by kpcyrd
- remove some redundant list creation
- add missing file names in POTFILES.in
v321
-
Update translations: es, it, pl
-
Plugins:
- Add WhatsApp Web by leoen25demayo
- Add Instapaper by Peter Stuifzand
- Add Pinboard by Peter Stuifzand
- Add Brotab by Peter Stuifzand
- Fix loading data error in OpenSearchSource (closes: #142)
- Add chromium plugin (port old plugin to Py3) by emareg
- In thunderbird add support for addressbook in sqlite format
- In XFCE Session allow configure lock screen command (closes: #146)
-
Dev:
- Fix building distributing tar file (closes: #147)