diff options
Diffstat (limited to 'examples/plugin_hello_world.py')
-rw-r--r-- | examples/plugin_hello_world.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/examples/plugin_hello_world.py b/examples/plugin_hello_world.py new file mode 100644 index 00000000..187f428e --- /dev/null +++ b/examples/plugin_hello_world.py @@ -0,0 +1,21 @@ +# This is a sample plugin that displays "Hello World" in ranger's console after +# it started. + +# We are going to extend the hook "ranger.api.hook_ready", so first we need +# to import ranger.api: +import ranger.api + +# Save the previously existing hook, because maybe another module already +# extended that hook and we don't want to lose it: +old_hook_ready = ranger.api.hook_ready + +# Create a replacement for the hook that... +def hook_ready(fm): + # ...does the desired action... + fm.notify("Hello World") + # ...and calls the saved hook. If you don't care about the return value, simply + # return the return value of the previous hook to be on the safe side. + return old_hook_ready(fm) + +# Finally, "monkey patch" the existing hook_ready function with our replacement: +ranger.api.hook_ready = hook_ready |