Giter Club home page Giter Club logo

keypirinha-plugin-kill's Introduction

Keypirinha Plugin Kill

This is a package that extends the fast keystroke launcher keypirinha (http://keypirinha.com/) with a command to kill a running processes.

Usage

Type the trigger "kill" in the launch box and you'll see the item Kill:. After hitting Enter or Tab, you are present with a list of running processes where you can choose a process to kill.

There some alternative actions, if you hit Ctrl+Enter which should be self-explaining.

Usage

Installation

Install Package "Keypirinha-Plugin-Kill"

Manually

  • Download the Kill.keypirinha-package from the releases.
  • Copy the file into %APPDATA%\Keypirinha\InstalledPackages (installed mode) or <Keypirinha_Home>\portable\Profile\InstalledPackages (portable mode)

Acknowledgements

Parts of the code are taken from Keypirinha's Packages Repository. Specifically the alttab.py library file to obtain visible windows is taken from here

keypirinha-plugin-kill's People

Contributors

polyvertex avatar ueffel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

keypirinha-plugin-kill's Issues

Kill all processes that matches the query

Hi
This is more a feature request than an issue, but could you add a possibility to kill multiple processes at once? For example Chrome has multiple processes and killing them one at a time is a pain.
Killy for Launchy had this feature and I really miss it after migrating to Keypiranha.

Cheers

Exception on Keypirinha start

Hi there,

unfortunately there is an Error thrown when trying to install your new version or restarting Keypirinha with the new version in InstalledPackage folder.

07:42:59.743 Python: Traceback (most recent call last):
07:42:59.743 Python:   File "keypirinha_private.py", line 307, in reload_module
07:42:59.743 Python:   File "lib\importlib\__init__.py", line 126, in import_module
07:42:59.743 Python:   File "<frozen importlib._bootstrap>", line 986, in _gcd_import
07:42:59.743 Python:   File "<frozen importlib._bootstrap>", line 969, in _find_and_load
07:42:59.743 Python:   File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
07:42:59.743 Python:   File "<frozen importlib._bootstrap>", line 664, in _load_unlocked
07:42:59.743 Python:   File "<frozen importlib._bootstrap>", line 634, in _load_backward_compatible
07:42:59.743 Python:   File "keypirinha_private.py", line 205, in load_module
07:42:59.743 Python:   File "C:\Tools\Keypirinha\portable\Profile\InstalledPackages\Kill.keypirinha-package\kill.py", line 5, in <module>
07:42:59.743 Python:   File "keypirinha_private.py", line 205, in load_module
07:42:59.743 Python:   File "C:\Tools\Keypirinha\portable\Profile\InstalledPackages\Kill.keypirinha-package\lib\psutil.py", line 124, in <module>
07:42:59.743 Python:   File "keypirinha_private.py", line 205, in load_module
07:42:59.743 Python:   File "C:\Tools\Keypirinha\portable\Profile\InstalledPackages\Kill.keypirinha-package\lib\psutil\_pswindows.py", line 15, in <module>
07:42:59.743 Python: ImportError: cannot import name '_psutil_windows'

In case of an invalid _default_action

There's a potential bug at line 192 in case self._default_action is not found in self._actions. You probably want to correct that at line 33 in _read_config. For that matter, to call settings.get_enum should be more appropriate in your case.

Decoding of sub-process output

It occurred to me that you could use the chardet module to auto-detect the encoding of the output you get from your sub-processes. It's not ideal since you first have to record the whole output (which is what you do anyway) instead of being able to parse it on-the-fly, but your plugin would feel way more stable and bullet proof; plus the chardet.detect() function is straightforward.

One recommendation if I may: give the function the whole output, do not try to optimize the speed of the call by limiting the amount of bytes to analyze or your may end up with an incorrect result.

chardet will always be redistributed with KP so you can rely on its presence.

War and peace

Dear Steffen,

It seems the way you and I exchanged opinions last night on Gitter was misinterpreted by @polyvertex.
He believes I owe you an apology (despite no harm was meant) and because of that ban was set.
Could you be so kind to assure him no harm was done to you so we could resolve this misunderstanding?

P. S. Thank you for this plugin as well, works flawlessly.

How to install?

How is the Kill plugin installed?

The readme says refer to the "release notes" but I can't see any release notes in the repository.

Thanks

Option to (re)start process after killing

My laptop has a lot of scaling issues (yay 4k + windows 10) and I use this plugin to quickly kill explorer.exe when I see it glitching. This works great, but I have to start the process up again myself afterwards. Could we maybe add an option to restart the process instead?

Heavy loading of CPU

I reported a heavy CPU load here when launching KP as non-admin, and it turned out to be specific to the Kill plugin. I'm happy to help debugging.

KP version: 2.21, installed via choco install, Windows 10 64 bit. The Kill version is whatever is installed when running the PackageControl install command.

Here's the log for the startup and where it stops, when Kill is installed:

2018-10-31 11:57:04.413 [i] Loaded 586 items from history file.
2018-10-31 11:57:04.423 [i] Loaded 1138 items from catalog file.
2018-10-31 11:57:04.460 [i] Init done in 0.2694s, including 0.1681s (62%) for the Python interpreter.
2018-10-31 11:57:04.460 [i] Plugin loaded: Internal.About
2018-10-31 11:57:04.502 [i] Plugin loaded: Apps.CustomCmds (instance #1)
2018-10-31 11:57:04.502 [i] Plugin loaded: Apps.Desktop (instance #1)
2018-10-31 11:57:04.502 [i] Plugin loaded: Apps.EnvPath (instance #1)
2018-10-31 11:57:04.502 [i] Plugin loaded: Apps.ExtraPaths (instance #1)
2018-10-31 11:57:04.502 [i] Plugin loaded: Apps.StartMenu (instance #1)
2018-10-31 11:57:04.513 [i] Plugin loaded: Bookmarks.Bookmarks (instance #1)
2018-10-31 11:57:04.525 [i] Plugin loaded: Calc.Calc (instance #1)
2018-10-31 11:57:04.527 [i] Plugin loaded: ControlPanel.ControlPanel (instance #1)
2018-10-31 11:57:04.537 [i] Plugin loaded: Currency.Currency (instance #1)
2018-10-31 11:57:04.541 [i] Plugin loaded: Env.Env (instance #1)
2018-10-31 11:57:04.546 [i] Plugin loaded: Everything.Everything (instance #1)
2018-10-31 11:57:04.549 [i] Plugin loaded: FileBrowser.FileBrowser (instance #1)
2018-10-31 11:57:04.562 [i] Plugin loaded: FilesCatalog.FilesCatalog (instance #1)
2018-10-31 11:57:04.570 [i] Plugin loaded: FileZilla.FileZilla (instance #1)
2018-10-31 11:57:04.573 [i] Plugin loaded: GoogleTranslate.GoogleTranslate (instance #1)
------------------------ STOPS HERE WITH KILL INSTALLED ---------------------------
2018-10-31 11:57:04.638 [i] Plugin loaded: Kill.Kill (instance #1)
2018-10-31 11:57:04.644 [i] Plugin loaded: PackageControl.PackageControl (instance #1)
2018-10-31 11:57:04.646 [i] Plugin loaded: PuTTY.PuTTY (instance #1)
2018-10-31 11:57:04.650 [i] Plugin loaded: RegBrowser.RegBrowser (instance #1)
2018-10-31 11:57:04.654 [i] Plugin loaded: String.String (instance #1)
2018-10-31 11:57:04.656 [i] Plugin loaded: SystemCommands.SystemCommands (instance #1)
2018-10-31 11:57:04.659 [i] Plugin loaded: TaskSwitcher.TaskSwitcher (instance #1)
2018-10-31 11:57:04.662 [i] Plugin loaded: Units.Units (instance #1)
2018-10-31 11:57:04.664 [i] Plugin loaded: URL.URL (instance #1)
2018-10-31 11:57:04.667 [i] Plugin loaded: WebSearch.WebSearch (instance #1)
2018-10-31 11:57:04.672 [i] Plugin loaded: WebSuggest.WebSuggest (instance #1)
2018-10-31 11:57:04.675 [i] Plugin loaded: Winamp.Winamp (instance #1)
2018-10-31 11:57:04.677 [i] Plugin loaded: WinSCP.WinSCP (instance #1)
2018-10-31 11:57:04.757 [i] Apps.Desktop: Cataloged 4 items in 0.0 seconds
2018-10-31 11:57:04.775 [i] Apps.StartMenu: Cataloged 158 items in 0.1 seconds
2018-10-31 11:57:04.794 [i] PackageControl.PackageControl: Package list loaded from file cache 'ueffel's Package Repository' (28 packages)
2018-10-31 11:57:04.810 [i] Apps.EnvPath: Cataloged 744 items in 0.1 seconds
2018-10-31 11:57:05.148 [i] Bookmarks.Bookmarks: Referenced 42 bookmarks
2018-10-31 11:57:11.747 [i] PackageControl.PackageControl: Removed package: Keypirinha-Plugin-Kill
2018-10-31 11:57:13.245 [i] Unloaded package: Kill
2018-10-31 11:57:21.849 [i] PackageControl.PackageControl: Installed package 'Keypirinha-WindowsApps'
2018-10-31 11:57:23.399 [i] Plugin loaded: WindowsApps.WindowsApps (instance #1)
2018-10-31 11:57:25.561 [i] WindowsApps.WindowsApps: Cataloged 78 items in 2.2 seconds

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.