Change Log¶
Change log of Keypirinha
v2.25 - 2020-05-25¶
Application¶
Longer delay before writing catalog file (might help in fixing #377; delay changed from 5 to 15 seconds)
Limit applied to pasted text increased from 512 to 8192 characters
Slightly improved stability
Calc package¶
Fixed:
'module' object is not callable
error ofrand()
(thanks @caltaojihun)Fixed: Calc plugin was getting triggered with some URLs containing an
=
sign for instance (#407; thanks @DrorHarari)Fixed a bug that would make the plugin to produce a lot of log messages
FilesCatalog package¶
String package¶
Added Unescape conversion (thanks @alexandr-san4ez)
Added Slug Case conversion (#445; thanks @marcus-at-localhost)
WinSCP package¶
v2.24 - 2019-08-18¶
Application¶
The following warning message will be printed in the console when a
.keypirinha-package
file could not be read as a Zip archive:Failed to load/read what appears to be a package file
(#368)
GUI¶
Bookmarks package¶
Added support for Falkon web browser (formerly QupZilla; thanks @nuno-andre)
Fixed erroneous detection of the encoding of some files (a.k.a. the “unicode / charmap” bug; #336, #375, #396)
Calc package¶
Added support for (persistent) variables (#354; thanks @DrorHarari)
Fixed value type conversion bug when using
gcd
function for instance (#367; thanks @dreadnaut)
Everything package¶
Added inline documentation and extra search example in default configuration file (thanks @DrorHarari)
String package¶
Added multiple case conversion features (thanks @DrorHarari)
URL package¶
Added support for extra TLDs
.test
,.example
,.invalid
and.localhost
(#359; thanks @dreadnaut)
Docs¶
Keypirinha.ini
: added theme’s colors descriptions as inline documentation (#382; thanks @imswebra)Keypirinha.ini
: default value of theshow_on_taskbar
setting was incorrectly documented asno
whereas it is hard-coded asyes
in the application (#383)Referenced third-party packages in Third-Party Packages and Theming (including #345; thanks community!)
API¶
PyJWT
package is now part of Keypirinha’s Python Library
v2.23 - 2018-11-14¶
Application¶
Fixed a bug that prevented search terms with special characters like
=
,-
or+
to be matched (#343)
GUI¶
Fixed: pressing
Alt+Left
to step back (orBackspace
from Actions list) was sometimes jumping to initial search step even though there were arguments specifiedFixed: the number of available actions for the selected item was not always displayed
Docs¶
Added documented examples to FilesCatalog Package
Referenced third-party packages in Third-Party Packages (thanks community!)
Documented Ctrl+1 and Ctrl+Numpad1 in the Keyboard Shortcuts chapter (#326)
API¶
Embedded Python interpreter upgraded from v3.6.3 to v3.6.7
v2.22.1 - 2018-11-03¶
Reverted the change made in v2.22 regarding #332 since it impacted the
Open as Administrator
action
v2.22 - 2018-11-01¶
Application¶
The Catalog of each Package can now be refreshed individually via either the context menu or by executing the new items
Keypirinha: Refresh Catalog: AnyPackageName
populated by theInternal
package (#156 partly)Fixed a bug that would prevent the last used GUI application to get back the focus (#332)
Fixed a bug that would very rarely prevent a message to be transmitted to a plugin
v2.21 - 2018-10-12¶
v2.20 - 2018-10-09¶
Application¶
Added the
font_snormal_size
,font_snormal_style
andlistitem_title_font
settings for GUI theming (#327)Added the
write_log_file
setting to help improving privacySearch algorithm modified to be more strict in matching acronyms (#320)
.history
and.catalog
files are now written into a temporary file first before overwriting the target file in order to limit the risk of data corruption (#321)The type of the
retain_last_search
setting changed so that it can acceptunselected
as a value (backward compatibility is preserved; #319)
TaskSwitcher package¶
Added the
proc_name_first
andshow_app_icons
settings (thanks @AngelEzquerra)
WebSearch package¶
Added
MDN
to predefined search sites (thanks @dreadnaut)Added
npm
to predefined search sites (thanks @m0xx)
Docs¶
Configuration chapter improved
First steps chapter corrected and slightly improved
Corrected misleading sentence in Frequently Asked Questions (FAQ) (#318)
Minor corrections
API¶
Extending Keypirinha (API) chapter reviewed. Applied minor corrections to the documentation of the
keypirinha
andkeypirinha_util
modulesKeypirinha’s Python Lib now has got its own source code repository to ease contributions at: https://github.com/Keypirinha/PythonLib (#75)
v2.19 - 2018-09-13¶
Application¶
Added the
config_editor
setting so that Keypirinha’s configuration files can be edited with a specific text editor (#264)Added:
satellite_size
setting now accepts thesuperjumbo
value to render 256x256 icon (#298)Added support for environment variables notation like
%USERNAME%
in theportable.ini
file (#315)Added the
loop_list
setting (#301)Fixed: the satellite icon was not always positioned and scaled properly in HiDPI (#210)
Fixed: the
space_as_tab
setting is now ignored unless the caret is at the end of the search terms while the Space key is pressedFixed: Ctrl+BackSpace did not erase anything when the text box selection was not empty (#302)
Fixed:
color_title
value was overwritten bycolor_foreground
internally (#316)Fixed:
color_status
value was overwritten bycolor_faded
internally (#316)Fixed: Keypirinha should now be able to run from a shared folder or a mounted network drive (Python failed to initialize from a UNC path; #267)
Minor improvements
FilesCatalog package¶
String package¶
Added
String: Base64
item (base64 encoder/decoder; thanks to @alexandr-san4ez)
API¶
keypirinha_wintypes.get_known_folder_path()
accepts known folder’s name
Docs¶
Referenced several third-party packages in Third-Party Packages (thanks community!)
Referenced the theme builder made by @Fuhrmann in Theming (thanks!)
Corrections and improvements
v2.18.2 - 2017-11-13¶
Removed a visual glitch that would make the old content of the edit control of the LaunchBox still visible when the LaunchBox is invoked
Fixed: the edit control of the LaunchBox was not always entirely drawn (#262)
v2.18.1 - 2017-11-12¶
Application¶
Edit controls: removed some occasional visual glitches
Edit controls: added support for the conventional Ctrl+Shift+... shortcuts to extend selection (#260)
Edit controls: improved the handling of the PageDown and PageUp events (Console and Diagnostic Window)
Calc package¶
Show the width of binary results in item’s description
v2.18 - 2017-11-08¶
v2.17 - 2017-11-03¶
Application¶
If the Paste hotkey (
hotkey_paste
setting) is pressed twice in a row, the selected item will be executed without having to press EnterAdded a Diagnostic Window, accessible by pressing F3 from the LaunchBox, via the main menu, or by executing the
Keypirinha: Diagnostic Window
itemDesktop and Start Menu items are not automatically refreshed anymore if Keypirinha is installed in the Desktop or Start Menu folder (#229)
Invoking the LaunchBox does not bring back the Console to front anymore
Edit
generic action added for FILE items. It makes use of theeditor
setting if possible.
FileBrowser package¶
Fixed: the plugin will not try to make suggestions from input
::
FilesCatalog package¶
URL package¶
Minor improvements
WebSearch package¶
Added the
multi_url_delay
setting to help ensuring multiple URLs are opened in order
API¶
keypirinha.Events.DESKTOP
andkeypirinha.Events.STARTMENU
events are not sent anymore in case Keypirinha is installed in one of the Desktop or Start Menu folders (documentation updated)The generic
globex.py
andfilefilter.py
modules embedded in theFilesCatalog
package are now distributed with Keypirinha and are usable by any plugin
v2.16.3 - 2017-10-26¶
Application¶
Added the generic action
Edit
for FILE items. It uses Keypirinha’seditor
setting to open the selected item, or by default, tries to execute the item with Shell’sedit
verb.File path of items is not fully normalized internally anymore (#252)
FilesCatalog package¶
An
on_imported
function can be implemented in thefilescatalog_user_callbacks.py
module so it is possible to implement init routineFixed: python_callback setting
v2.16.2 - 2017-10-23¶
Application¶
The
--show
command line argument will also launch the application if it is not already running
FilesCatalog package¶
Fixed: it was not possible to specify arguments to the items of this package
Fixed: catalog was not always refreshed when settings were modified at runtime
v2.16 - 2017-10-20¶
NEW PACKAGE: FilesCatalog Package
Application¶
Added support of a
portable.ini
file to manually specify the location of theportable
directory (see Installation for more info; #233)Added support of the
--show
and--hide
command line arguments (#237)Added predefined configuration variables
APP_DRIVE
andAPP_ARCH
(see Configuration; #240)Minor optimizations
Fixed: the
Browse Profile Dir
menu/item now uses thefile_explorer
settingFixed: the Ctrl+Del shortcut did not work in History Mode
Fixed: the results list was not refreshed when an item was removed from the history in History Mode
Fixed: configuration files were not loaded when the character
$
was used in any value of the[var]
section (#235)Fixed: Keypirinha failed to parse system’s proxy settings if no proxy scheme was specified. Proxy scheme now defaults to HTTP and a warning message is emitted to the console (#243)
Apps package¶
The
extra_paths
setting has been obsoleted by the new FilesCatalog Package. It is still supported but is not documented anymore in the default configuration file and will not receive any further improvement.More informational messages
GoogleTranslate package¶
Fixed: only the translation of the first sentence was shown when multiple sentences were to translate. Thanks to @alexandr-san4ez (#234, PR #5)
API¶
Fixed:
keypirinha_util.execute_default_action()
now opens directories using thefile_explorer
setting (#241)Embedded Python interpreter upgraded from 3.6.0 to 3.6.3
Updated documentation chapter: Embedded Python Interpreter
v2.15.4 - 2017-08-27¶
Application¶
Added the hotkey_history setting to the LaunchBox can be shown directly in History mode (#220)
Ctrl+Home and Ctrl+End respectively allow to jump to the top and the bottom of the results list (#223)
Multi-lines text pasted in the LaunchBox will be converted to a single line like it is the case already for the
hotkey_paste
feature (#228)
FileBrowser package¶
Added support for UNCs (#212)
Recently typed paths in Windows Explorer’s address bar are now shown as you type. See the new
show_recents
setting for more info.
GoogleTranslate package¶
Added
idle_time
setting. Thanks to @alexandr-san4ez (PR #5)
String package¶
Added the
Case Conversion
feature to change the case of a string. Thanks to @alexandr-san4ez (PR #3)
URL package¶
Suggest
https
URL in addition tohttp
when no scheme is specified
WebSuggest package¶
Offer to search on website even if no suggestion has been returned by the provider. Thanks to @alexandr-san4ez (PR #4)
Added
idle_time
setting. Thanks to @alexandr-san4ez (PR #4)
v2.15.2 - 2017-07-19¶
Application¶
Search algorithm is more accurate in some cases
Added the
exclude_nonexistent_local_files
setting (#216)Fixed: acronym matches were not pushed up in the results list anymore (#215)
Fixed: system error messages could popup due to missing files, typically when Keypirinha was used across several machines (#206)
Fixed: the satellite icon was not always positioned and scaled properly in HiDPI (#210)
v2.15.1 - 2017-05-10¶
Application¶
All orphan items are filtered-out of the search (only history items were)
Search algorithm is slightly more accurate
Fixed: Keypirinha can be launched from a network drive (#190)
Fixed: the satellite icon was positioned nearby the top-left corner of the screen in some cases
Docs¶
WebSuggest Package: referenced @bege10’s config for German suggestions. Thanks! (#189)
Minor corrections in Extending Keypirinha (API)
Minor corrections in Keyboard Shortcuts
Minor corrections in the default
Keypirinha.ini
file ([theme/Default]
section)
v2.15 - 2017-04-26¶
Application¶
Search algorithm is slightly faster
Search algorithm is more accurate in some cases
Added the
Explore Final Path
action forFILE
items (#179)Special shell links (
.lnk
files) that link directly to Shell Objects like the Recycle Bin for example, are now launchable (#177)Fixed: no keyword association would occur in some cases, when arguments were added to an item
GUI: item’s hits and actions are both visible when both
list_hits
andlist_actions
flags are specified for thelayout
settingFixed a GUI glitch: the height of the LaunchBox was not readjusted when the font size of the title changed (#175)
Fixed a GUI glitch: the LaunchBox was not erased properly when moved/resized (#178)
FileBrowser package¶
Automatically expands environment variables, like in
%USERPROFILE%\Documents
(documentation updated: FileBrowser Package)
Docs¶
v2.14.1 - 2017-04-14¶
Application¶
On some keyboards, the use of the
Right Alt
key while typing in the LaunchBox could simulate aCtrl+1
,Ctrl+2
… shortcutFixed: satellite icon was not always updated during a search (#174)
Calc package¶
Allow expressions with mixed types like
0x2a + .5
Always try to do base conversion on integer results. In the previous versions, the decimal part in result
1.0
for example, prevented conversion even though the value itself could be considered as an integer
v2.14 - 2017-04-12¶
GUI¶
Added Theming support:
Theme can be changed via the new
theme
setting ([gui]
section)Themes are cascadable
Opacity of the LaunchBox can be changed
Font faces, sizes and styles can be changed
Colors are specified with CSS syntax
GUI elements can be hidden (satellite icon, status bar, scroll bar, selection mark, results icons, score and history hits)
The satellite icon can be hidden, resized or embedded into the LaunchBox
Check out the Theming chapter
Added the
auto_width
settingF2 key opens the Console
Single-click mode support (#80)
Items can be launched directly using the Ctrl+Numpad0 to Ctrl+Numpad9 shortcuts, or Ctrl+0 to Ctrl+1
max_height
default value changed to10
(was0
)max_height
setting is not honored anymore in maximized state. The LaunchBox will use the full height of the screen minus system’s taskbar if anyThe Alt modifier, when used in the
hotkey_run
setting (e.g. Alt+Space) should not be an issue anymore (#162)
CAUTION¶
space_as_tab
default value changed tono
The following settings from the
[gui]
section have been obsoleted in favor of the[theme/*]
sections:compact_results
,show_scores
,show_history_hits
andfont_size
. Please review your config file(s), Keypirinha will issue a warning message in the console for each one of them until they are not used.
v2.12.1 - 2017-03-18¶
v2.12 - 2017-03-17¶
Application¶
Everything package¶
A folder being browsed can be opened using item
.
FileBrowser package¶
Pasting a full path of a folder and directly pressing Enter now opens the folder itself (i.e. the
.
item), instead of the first found file
GoogleTranslate package¶
Several translations may be returned for a single query
Translated text is now located in item’s label so it can be read even when the
compact_results
global setting is enabledFixed: items properties were not updated correctly when a non-default item was declared (#157)
WebSuggest package¶
Use the English domain
en.wikipedia.org
by default to avoid argument encoding problems (#158)
API¶
Embedded Python interpreter upgraded from 3.5.2 to 3.6.0
keypirinha.arch()
now returnsx86
instead ofx32
.x64
value remains unchanged.keypirinha_util.read_link()
now also returns theflags
andis_msi
fieldskeypirinha_util.shell_execute()
avoids introspecting shortcut files created by an MSI installer
v2.11 - 2017-02-06¶
New Packages¶
Documentation¶
Table of contents restructured
API¶
keypirinha_net.UrllibOpener
implements__setattr__
to fully comply tourllib.request.OpenerDirector
’s interface. Allowing the setup of itsaddheaders
member for example.
v2.10 - 2017-01-26¶
Application¶
Keypirinha now keeps its Catalog persistent and up-to-date using a local per-machine file, which makes Keypirinha usable even right after a restart, while plugins are still gathering their items (#22)
Orphan items (of which parent package is not loaded) are not displayed in the result lists anymore but are still kept in history (#60)
Added the
Remove Orphans
action, accessible via either its item or the main contextual menu.The
Unloaded package: X
message is now logged when a package file/directory has been deletedFixed: environment variables in shortcut arguments are now expanded (#149)
Fixed: the
Configure Package
sub-menu is now correctly updated when a package is marked as ignoredFixed the incorrect detection of the encoding of the configuration files that could occur in rare cases (UTF-16 BOM)
Apps package¶
Catalog is automatically updated when the content of the Start Menu or the Desktop changes. Typically when an application has been (un)installed.
More fine-grained control on what is updated. The package does not refresh its full catalog if only Desktop’s content has changed for example.
Calc package¶
Fixed a bug appeared in v2.9.10 that pushed an incorrect result for some expressions like
40/2
due to too aggressive result formatting (#153)
WebSearch package¶
Default configuration file does not overwrite user’s default
incognito
setting forpredefined_site/
sections anymore
API¶
Plugins are now notified about any change in user’s Desktop or Start Menu via the
keypirinha.Plugin.on_events()
method, using the newkeypirinha.Events.DESKTOP
andkeypirinha.Events.STARTMENU
flagsExtended documentation of
keypirinha.ItemCategory
keypirinha_util.read_link()
now also returns theexpanded_params_list
fieldImproved documentation of
keypirinha
andkeypirinha_util
modules (corrections and minor additions)
v2.9.10 - 2017-01-14¶
Application¶
Added the
F5
keyboard shortcut to full refresh the Catalog (#79)Added the
N workers active
message in the status bar to indicate any plugin activity, like cataloging, suggesting, …Fixed a CPU-eating bug that occurred right after the launch of an item (#146)
Fixed: in some cases, the best available icon resource from an executable file was not always chosen to render the “big icon” on the LaunchBox (#143)
Fixed a bug that prevented to move a hotkey sequence from one setting to an other in some cases
Calc package¶
Thousand separated results are now added to the list. The thousand separator is deduced from the
decimal_separator
setting.Fixed: do not show results like
100,
whendecimal_separator
is set tocomma
Documentation¶
Updated the Third-Party Packages chapter
v2.9.9 - 2016-11-22¶
Application¶
Fixed a bug that prevented the use of the “Predefined variables” listed in Configuration, in the configuration files
The noisy error messages
Failed to get path of KnownFolder ...
are only printed when they should (i.e. when the OS should actually support the given Known Folder)
Documentation¶
Keyboard Shortcuts chapter more readable
API¶
Fixed #136:
keypirinha_util.web_browser_command()
produced an invalid result in case of an unknown web browser or when the command line specified in theweb_browser
setting was quoted. This prevented the WebSearch package to work properly.keypirinha_util.shell_execute()
reads a quoted command line properly from theterminal
setting
v2.9.8 - 2016-11-20¶
RegBrowser package¶
Added the
Copy full path
,Copy parent's path
andCopy value
actions (thanks @ueffel)
WebSearch package¶
If a search site is assigned several URLs, they will be launched altogether if the configured/detected web browser supports it (Chrome, Firefox, Iridium, Opera, Palemoon, Vivaldi). Edge and Internet Explorer do not support this. Note that the
web_browser_new_window
option must probably be disabled to allow this to be taken into account by the browser (with Chrome at least).
API¶
keypirinha_util.file_attributes()
evaluates only*.lnk
files asLINK
(#132)keypirinha_util.shell_execute()
tries to resolve executables by their name, if needed, using currentPATH
(#134)keypirinha_util.web_browser_command()
can handle the launch of several URLs altogether if supported by the configured/detected web browser
v2.9.7 - 2016-10-10¶
General Notes¶
WinReg package renamed to RegBrowser Package. This doesn’t impact its use.
Application¶
Added the Shift+Enter shortcut to execute an item without closing the LaunchBox, and reset the search (#122)
Added the Ctrl+Shift+Enter shortcut to execute an item without closing the LaunchBox, and go back to the initial step of the current search (#122)
Added a launch-and-paste hotkey so the content of the clipboard is pasted to the LaunchBox when shown (see the new
hotkey_paste
setting; #123)Catalog’s insertion speed and memory usage have been improved
RegBrowser package¶
Show the currently selected key so it can be opened instead of having to open a subkey
Show the “(Default)” value
WebSearch package¶
Added
Bitbucket
andGitHub
to the list of predefined search sites
API¶
Overhaul of the
keypirinha_wintypes
modulekeypirinha.CatalogItem
comparison operators have been improved and__hash__
uses the internal unique id of the item.
v2.9.6 - 2016-09-29¶
General Notes¶
Software Development Kit (SDK) is now available at: https://github.com/Keypirinha/SDK
Packages repository is now public and open to contributions at: https://github.com/Keypirinha/Packages
Application¶
Added the
[network]
section in application’s configuration file, that can now be used by the plugins through the new network-dedicated APIGot rid of the
Test
package that has been obsoleted by the SDKDo not log anymore the message:
Monitors configuration changed.
Fixed #124 where configuration could not be edited with an other editor than the default one and when the paths to the files to edit contain space character(s)
Apps package¶
Added the
elevated
setting to the Custom Commands feature
Bookmarks package¶
Added support for the Iridium browser
RegBrowser package¶
New package! More info: RegBrowser Package
WebSearch package¶
Added
Baidu
andQwant
to the list of predefined search sites
API¶
Added network support (see:
keypirinha_net
)Plugins now get notified about network settings changes with the
keypirinha.Events.NETOPTIONS
event passed to thekeypirinha.Plugin.on_events()
method.Rules for package naming are slightly more strict. See the Packages Structure chapter for more info
keypirinha_util.read_link()
now also return therunas
fieldkeypirinha_util.shell_execute()
tries to execute the target with elevated privileges if it is a shell link that has got the related option enabled (#120)keypirinha.IconHandle
:is_init()
deprecated in favor of the standard__bool__()
operatorUpdated
natsort
package from version4.0.4
to5.0.1
Documentation format corrections
v2.9.5 - 2016-09-10¶
Application¶
Fixed the Explore action that did not work for some items #118
Fixed a bug that crashed the application when trying to Backspace from the Action step, after doing a Ctrl+Enter
Apps package¶
Corrected the documentation of the Custom Commands feature in the configuration file (i.e. placeholders format)
v2.9.4 - 2016-09-08¶
CAUTION¶
KNOWNFOLDER_...
configuration values now expand to the final path of the known folder. Former values (i.e. the GUIDs) can still be used via the newKNOWNFOLDERGUID_...
variables.
Application¶
Added the
KNOWNFOLDERGUID_...
predefined variables to configuration files ([var] section
). Note that they replace the formerKNOWNFOLDER_...
variables which are now assigned the final path of their respective known folder. See the Configuration chapter for more info.Fixed a bug that would prevent the LaunchBox to be resized properly when search is reset #113
Fixed a bug that would move the LaunchBox out of screen when using the
persistent
mode of thegeometry
setting #116Fixed a bug that prevented history items to be loaded if they had a non-standard category ID
Fixed a bug that appeared in 2.9.2 and prevented similar items from history to be added to the results list when no argument were typed
Apps package¶
Added the Custom Commands feature, which is similar to Launchy’s Runner plugin, in a more flexible fashion
API¶
Added the
keypirinha_util.shell_resolve_exe_path()
functionkeypirinha.Settings.get()
:unquote
argument isFalse
by default
v2.9.3 - 2016-08-25¶
v2.9.2 - 2016-08-25¶
Application¶
Drastically optimized catalog search speed, most notably for big catalogs (up to 15 times faster)
Drastically optimized catalog insertions/updates speed (up to 19 times faster) Note that this optimization only includes the indexing part of the catalog building process. It excludes the time taken by a plugin to actually build its list of items before pushing it to Keypirinha (for example, a list of files resulting from a hard-drive scan).
Stability tested on large catalogs, containing up to 360,000 items
v2.9.1 - 2016-08-23¶
Application¶
Search speed improved in some cases
Application and packages are more permissive with file paths specified in configuration files that have unix-style separators (
/
) instead of windows-style ones (\
)
Calc package¶
Added the
rounding_precision
settingFixed: representation of floating point numbers #104
API¶
Fixed
keypirinha_util.shell_execute()
that would fail ifthing
to execute was not a file (e.g. a URL) #107keypirinha_util.file_attributes()
inserts file path in exception’s message (in case of error)
v2.9 - 2016-08-20¶
Application¶
Improved
geometry
setting for both LaunchBox and Console that also allows auto positioning according to current context: current working monitor, mouse current monitor or nearby mouse position. #50Persistent geometry state for both LaunchBox and Console remembers positioning and sizing according to current monitors configuration. #39
LaunchBox’s Y position is now automatically pushed up in order to have enough room to display at least one result item in case it was too low (only in persistent geometry mode)
LaunchBox position is not forcefully restored to default anymore when user has moved it, until search is reset or window re-displayed
LaunchBox now accepts the Alt+Left shortcut to forcefully go back to the previous search step. The Alt+Right shortcut is equivalent to Tab. #97
LaunchBox displays the list of history items when Ctrl+Down is pressed (or Down if search state is clean) #45
.keypirinha-package
files can now be updated at runtime #73Fixed: Keypirinha does not rely on Windows’ Shell anymore to get a folder icon and tries instead to get system’s default from registry. #89
Keypirinha now tries to detect automatically the working directory of the launched applications #101
The
editor
,terminal
andweb_browser
application settings now accept shortcuts (link’s arguments will be prepended to the extra ones specified in the setting value)Fixed a long standing bug that prevented Keypirinha to properly auto-detect configured editor’s type (Atom, SublimeText, …) via the
editor
setting
Calc package¶
Improved results readability: result is in item’s label instead of its description
Got rid of most common rounding precision problems that occured with floating point numbers #98
The
=
keyword can be specified as a prefix to query the plugin to evaluate the remaining of the typed string #93Added the
decimal_separator
setting #70Integer results are now automatically declined in multiple bases (i.e. decimal, hexadecimal, binary and octal)
Currency formatting is now available (see the
currency
configuration section for more information)Added support for the
bin()
function #96Added support for bitwise operators:
|
(orOR
),~
(orXOR
) and&
(orAND
)^
is now an alias to the**
(power of) operatorAdded support for Python’s
FloorDiv
operator (//
), also referred as Integer DivisionAdded the
ans
constant that evaluates to the last valid result (reset to zero at Keypirinha’s startup or when package is reloaded)Added support for Metric System suffixes (e.g. “K”, “da”, …). See documentation for more info.
Added support for suffixes of Orders of Magnitude of Data (e.g. “Ki”, “Gi”, …). See documentation for more info.
Upgraded the underlying Python module that is used to evaluate mathematical expressions (i.e.
simpleeval
)
Everything package¶
FileBrowser package¶
Added the
follow_shell_links
setting
TaskSwitcher package¶
Fixed a bug that prevented the plugin to show its suggestions when the
always_suggest
option was enabled #102
WebSearch package¶
Made the
{plugin_name}
format field less confusing (i.e.WebSearch
instead ofWebSearch.WebSearch
)
Documentation¶
Added the
How to support the project?
question to the Frequently Asked Questions (FAQ) listAdded the
Is it open source?
question to the Frequently Asked Questions (FAQ) listAdded the
Current Developments
section in main pageAdded new Third-Party Packages:
KiTTY
,Calc
andIntegrated Patches
Improved Calc Package chapter
Added social buttons
Corrections
API¶
Package Naming rules are stricter
Added the
keypirinha.Plugin.friendly_name()
methodkeypirinha.Plugin.name()
has been deprecated in favor ofkeypirinha.Plugin.full_name()
keypirinha.Plugin.package_name()
has been deprecated in favor ofkeypirinha.Plugin.package_full_name()
keypirinha_util.read_link()
also returns theshow_cmd
andicon_location
propertieskeypirinha_util.shell_execute()
has been refactored to handle the case where theterminal_cmd
itself is a shell link and to automatically guess theworking_dir
value in case none has been specified #101Fixed a rare bug that could occur in
keypirinha_util.execute_default_action()
in case the call tokeypirinha_util.shell_execute()
failedAdded the
unquote
parameter to thekeypirinha.Settings.get()
,keypirinha.Settings.get_stripped()
,keypirinha.Settings.get_enum()
andkeypirinha.Settings.get_mapped()
methods.Fixed:
keypirinha.Settings.get_enum()
andkeypirinha.Settings.get_mapped()
would not always match a valid value when thecase_sensitive
argument wasTrue
Improved documentation of
keypirinha.Settings
v2.8 - 2016-07-11¶
Application¶
Fixed a bug that prevented the results to be displayed when the
retain_last_search
option was enabled #88Added the ability to erase all the references of a package from history by selecting a result item and clicking the dedicated action in its contextual menu (mouse only; documentation updated) #65
The
show_history_hits
setting does not depend onshow_scores
anymore so items hits counts can be shown without having to enable theshow_scores
option as well #84Added the
KNOWNFOLDER_...
predefined variables to configuration files ([var] section
). They may come handy for some theApps
andFileBrowser
packages at least. See the Configuration chapter for more info.
FileBrowser package¶
Fixed: typing
C:\W
would lead to an empty results list instead of returning at least aC:\Windows
item for example #81
WebSearch package¶
Search sites do not require argument anymore. If no argument is provided by the user, the guessed home address of the site will be launched instead of the provided
url
, unless ahome_url
setting (new) has been specified #85Pre-defined search sites can now be all disabled at once using the new
enable_predefined_sites
setting (#57). Note that the section name of pre-defined sites is nowpredefined_site/
instead ofsite/
.A single search site (pre-defined or not) can now be enabled/disabled using the new
enable
boolean settingAdded the
Python3 Mod
predefined site
Documentation¶
Added the Third-Party Packages chapter that references available third-party packages and patches to the official packages #82
API¶
Plugin.create_error_item
now copies the content of theshort_desc
argument iflabel
is empty. Items with an emptylabel
are filtered out by the application and the createdERROR
item would not be displayed.Corrected a potential bug in
Settings.get_multiline
when the returned fallback value was modified by the caller, then re-used (due to Python’s “mutable default arguments”)
v2.7 - 2016-07-03¶
Application¶
LaunchBox: item’s
data_bag
property is now also printed in the Console whenAlt+Enter
is pressedCtrl+Backspace
conventional shortcut to erase the previously typed word in an edit control is now supported by the LaunchBox and the Console #77
Apps package¶
Fixed a bug that occurred when a line in
extra_paths
was containing only a GUID (i.e. format::{guid}
)
Everything package¶
Now takes advantage of the ‘browse directory as you type’ feature introduced with the
FileBrowser
package. After a search viaEverything
and once a directory item has been selected, it can be browsed using theTab
key.
FileBrowser package¶
A new package that allows file browsing as you type (request #32). More info available in documentation and configuration file.
API¶
Embedded Python interpreter upgraded from 3.5.1 to 3.5.2
Signature of
Plugin.on_suggest
has changed, refer to the documentation for more information. This change breaks retro-compatibility.Corrected
GUID.__init__
,get_known_folder_path
and the declaration ofshell32.SHGetKnownFolderPath
from thekeypirinha_wintypes
site module
v2.6.1 - 2016-06-10¶
v2.6 - 2016-05-30¶
Application¶
Configuration is now reloaded if and only if at least one value has changed (previously, it was always reloaded when a change notification was pushed by the file system). This helps preventing the catalog to be updated because of modifications to comments or blank lines for example. This also applies to packages configuration.
For the same reasons, the detection of modifications to the environment variables has been improved.
API¶
Replaced
Plugin.on_config_changed
andPlugin.on_env_changed
methods byPlugin.on_events
. This change breaks retro-compatibility.Added the
show
parameter tokeypirinha_util.shell_execute()
#68
v2.5.6 - 2016-05-10¶
Application¶
Fixed: the Internal package was still loaded on startup despite being specified in the
ignored_packages
list #59The
ignored_packages
setting is more flexible by allowing the<all>
value and the-
and+
operatorsDisabled the auto-repeat flag of every hotkeys to avoid trouble
Rules for package naming are slightly more strict. See the Packages Structure chapter for more info
Minimum auto-width of the LaunchBox is 600 pixels in case 1/3 of the screen width is less than that
Log file is now machine specific and is named accordingly. Old “Keypirinha.log” file can be deleted manually (not done by Keypirinha)
Documentation¶
Added the Customize your Catalog chapter #57
Corrections here and there
v2.5.5 - 2016-04-26¶
API¶
Corrected the
keypirinha_util.chardet_open()
function due to #55
v2.5.4 - 2016-04-23¶
v2.5.3 - 2016-04-22¶
CAUTION¶
The type of the
hide_on_focus_lost
setting has changed to allow a more fine-grained tweaking. While effort has been made to keep retro-compatibility, please ensure your existing configuration complies to this modification.If at least one of your
geometry
settings is set topersistent
, you may have to manually reposition the window(s) the first time you start this new version due to the fix of #39.
Application¶
Fixed: icons of remote files are now displayed properly #20
Fixed: dragging the LaunchBox by its icon in maximized mode was resulting in an unexpected behavior #47
Fixed: made persistent geometry and more generally, application state, user AND machine-specific #39
Added the
space_as_tab
setting #49Added the Shift+Alt+Enter shortcut to the LaunchBox to directly invoke the Shell “Properties” dialog of the selected FILE item.
The
hotkey_run
andhotkey_console
settings accept new special keys and combinations. A message dialog also pops up in case of malformed value #46The
hide_on_focus_lost
setting is more flexibleApplication is more verbose about malformed configuration values (console) instead of just silently falling back to hard-coded default
Bookmarks package¶
Try to automatically detect the text encoding of some files the plugins need to read from Chrome, Firefox and others #51
API¶
Added the
keypirinha_util.chardet_open()
functionAdded the
keypirinha_util.chardet_slurp()
functionkeypirinha_util.slurp_text_file()
function is deprecated
Documentation¶
Added the “Clear the history” section in the First steps chapter
Corrections here and there
v2.5.2 - 2016-04-16¶
Application¶
Documentation¶
Added the Keyboard Shortcuts chapter to list the available shortcuts
Added the “Drag and Drop” section in the First steps chapter
Typo corrections
v2.5.1 - 2016-04-14¶
v2.5 - 2016-04-13¶
Application¶
New package: URL Package
Fixed: the LaunchBox and Console windows now give back the focus to the previous application/window when closed #37
The LaunchBox can now be maximized by hitting Alt+X or standard Win+Up combination (toggle). Double-click also works. See the Maximize the LaunchBox documentation section.
Added the
hide_on_focus_lost
setting #34Added the
retain_last_search
setting #35ERROR items have been implemented. Keypirinha can now display error messages from the plugins directly to the results list so the user can have a direct feedback on what’s going on in some cases. Note that the Console remains the best source of information to track down issues. Best example for now is the
=
item of theCalc
package (try typing an invalid expression like2+
).The LaunchBox now supports drag-and-drop operations:
A file can be dropped to the edit box so its full path is inserted
FILE items can be dragged out of the results list and be copied/linked to the Windows Explorer or any other application that accepts drops of Shell items
URL, CMDLINE, EXPRESSION and ERROR items can also be dragged out and their content (i.e. the target property) will be copied to the drop destination. For example, you could drop a URL item to your web browser.
In the LaunchBox, the Alt+Enter combination allows to show up the properties of the currently selected item.
User can now press Ctrl+Space or Shift+Space during the initial search to force include a space character instead of switching to the next step.
Improved speed when merging a large list of suggestions from plugins
Calc package¶
Added support for the left-shift and right-shift operators (
<<
and>>
).Added the
always_evaluate
setting #38
Everything package¶
Full support of Everything’s search syntax #27
Added the
Regex Search
item to allow a search based on regular expressionFixed: the list of returned results was not always complete in case Everything was not fast enough #36
Fixed: extra arguments could not be added to items that had been executed already (Everything items only)
WebSearch package¶
Added
Bing Maps
,Google Maps
andOpenStreetMaps
search sites in the default configuration file.
API¶
Added optional argument
wait_seconds
tokeypirinha.Plugin.should_terminate()
andkeypirinha.should_terminate()
Added
keypirinha.ItemCategory.ERROR
.ERROR
items are highlighted in the results list and cannot be executed.Added the optional parameters
match_method
andsort_method
tokeypirinha.Plugin.set_suggestions()
Added the
data_bag
property tokeypirinha.CatalogItem
to allow plugins to associate arbitrary data to a specific item. Modifiedkeypirinha.Plugin.create_item()
andkeypirinha.Plugin.create_error_item()
accordingly. Added thekeypirinha.CatalogItem.data_bag()
andkeypirinha.CatalogItem.set_data_bag()
methods.Added the
keypirinha_util.shell_url_scheme_to_command()
function to find the application associated with a given URL scheme by the system; and the location of its default icon.
v2.4 - 2016-03-24¶
CAUTION¶
The default value of the
launch_at_startup
setting has been changed fromyes
tono
to be less invasive. You may need to update your configuration if you want Keypirinha to keep being launched at startup.WebSearch package: the default value of the
new_window
setting in the[defaults]
section has been changed fromyes
tono
to comply to default system preferences.
Added¶
The Reload Configuration command and menu to reload all configuration files (application and plugins), and to clear the runtime icons cache
Non-existent files referenced by items in the history are now filtered out from search results, but kept in history (as it was the case already). Related setting:
exclude_nonexistent_remote_files
.Docs: some questions in the Frequently Asked Questions (FAQ) chapter
Fixed¶
The new_window and inognito/private_mode settings (global and plugin-specific) where not working when Firefox was the system’s default web browser #25
LaunchBox: web icons (Bookmarks, WebSearch, … items) are now refreshed properly when the
web_browser
setting is changed #26Apps package: made
extra_paths
, envPATH
and Start Menu scans more bullet-proof in case an unreadable file/folder gets on its way (#19, #29)Bookmarks: Firefox bookmarks provider could not read Firefox’s
profiles.ini
file when its nomenclature format was not exactly the expected one #30
Changed¶
LaunchBox: last executed action is now pre-selected in the ACTIONS list. If user skips the ACTIONS list, item will be executed with the default action.
The default value of the
launch_at_startup
setting has been changed fromyes
tono
to be less invasive.WebSearch package: the default value of the
new_window
setting in the[defaults]
section has been changed fromyes
tono
to comply to default system preferences.Minor corrections and improvements
API: Changed¶
keypirinha_util.raise_winerror()
accepts a new optionalmsg
argument to override system’s default messagekeypirinha_util.scan_directory()
raisesOSError
instead ofIOError
to comply to Python 3.3 changeskeypirinha_util.scan_directory()
accepts new flagABORT_ON_ERROR
v2.3 - 2016-03-22¶
WARNING: This version breaks compatibility of the
keypirinha.Plugin.on_suggest()
API with previous versions. If you are a
plugin developer or if you have modified the shipped packages, please ensure to
update your code before starting the application. Otherwise, just follow the
Install/Update instructions from the documentation.
Added¶
New package: Everything (query the Everything application to search files and folders from Keypirinha).
Docs: the First steps chapter has been stuffed with features that were undocumented so far.
geometry
settings in the[gui]
and[console]
sections. Note that due to this addition, default behavior has changed from previous release (i.e. frompersistent
toauto
)web_browser
,web_browser_new_window
andweb_browser_private_mode
global settings #12Bookmarks package:
force_new_window
,bookmarks_files
,places_files
andfavorites_dirs
settingsWebSearch package: Metacritic and MSDN sites in default configuration
LaunchBox: the status bar shows the name of the owner package of the currently selected item
Fixed¶
Application was failing to launch if the value of an environment variable had a single dollar sign in it #14
The default text editor was launched too quickly, which could make its taskbar buttons not to be in order.
The windows of the default text editor were not positioned properly on the screen when there were 3 or more configuration files to edit.
Changed¶
Drastically improved the speed of the internal logger in case of flooding
Minor corrections, optimizations and improvements
Docs: corrections and added some screen shots
TaskSwitcher package: item is now kept in history, without its arguments
Support chat room has moved
API: Changed¶
keypirinha.Plugin.on_suggest()
(compatibility break)
v2.1 - 2016-03-09¶
Added¶
New package: Bookmarks (supports Chrome, Firefox and Internet Explorer)
Position and size of the LaunchBox and the Console window are now persistent #2
always_on_top
setting #1max_height
settingShow Change Log menu item and its ChangeLog catalog item
Online Documentation menu item and the Online Documentation and Online Help (alias) catalog items
Apps package:
scan_start_menu
andscan_env_path
settings #4Docs: Update Procedure section
Docs: Change Log section
Docs: Credits section
Changed¶
GUI: Improved readability by brightening default text colors #6
Calc package: the
=
item is not kept in History anymore
API: Added¶
API: Fixed¶
keypirinha.Plugin.create_action()
was missing thedata_bag
parameter #7keypirinha.Plugin.set_actions()
andkeypirinha.Plugin.clear_actions()
(due to #7)
API: Deprecated¶
keypirinha.packages_path()
andkeypirinha.package_path()
are deprecated in favor ofkeypirinha.live_package_dir()
to avoid confusion
v2.0 - 2016-03-01¶
First public release
v0 - 2013-05-21¶
Development started