From a844afe6ffdcd76b178caa03b95a1f9ea2fce4c6 Mon Sep 17 00:00:00 2001 From: hut Date: Sun, 18 Apr 2010 15:13:18 +0200 Subject: default.commands: add documentation --- ranger/defaults/commands.py | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/ranger/defaults/commands.py b/ranger/defaults/commands.py index bf8830c7..ac18faae 100644 --- a/ranger/defaults/commands.py +++ b/ranger/defaults/commands.py @@ -13,6 +13,47 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . +''' +This is the default file for command definitions. + +Each command is a subclass of `Command'. Several methods are defined +to interface with the console: + execute: call this method when the command is executed. + tab: call this method when tab is pressed. + quick: call this method after each keypress in the QuickCommandConsole. + +The return values for tab() can be either: + None: There is no tab completion + A string: Change the console to this string + A list/tuple/generator: cycle through every item in it +The return value for quick() can be: + False: Nothing happens + True: Execute the command afterwards +The return value for execute() doesn't matter. + +If you want to add custom commands, you can create a file +~/.ranger/commands.py, add the line: + from ranger.api.commands import * + +and write some command definitions, for example: + + class tabnew(Command): + def execute(self): + self.fm.tab_new() + + class tabgo(Command): + """ + :tabgo + + Go to the nth tab. + """ + def execute(self): + num = self.line.split()[1] + self.fm.tab_open(int(num)) + +For a list of all actions, check /ranger/core/actions.py. +''' + from ranger.api.commands import * alias('e', 'edit') -- cgit 1.4.1-2-gfad0