Bearbeiten ~/.config/ranger/commands.py
, um etwas zu enthalten:
from ranger.api.commands import * class newcmd(Command): def execute(self): if not self.arg(1): self.fm.notify('Wrong number of arguments', bad=True) return # First argument. 0 is the command name. self.fm.notify(self.arg(1)) # Current directory to status line. self.fm.notify(self.fm.thisdir) # Run a shell command. self.fm.run(['touch', 'newfile')
Jetzt können Sie Folgendes eingeben:
:newcmd myarg
den definierten Befehl ausführen.
Weitere Optionen finden Sie unter: https://github.com/hut/ranger/blob/9c585e48e14525f11d2405ea0bb9b5ba92e63e9/ranger/config/commands.py
Sie können dann einen Schritt weitergehen und eine Karte dafür definieren, z. B .: Hinzufügen zu ~/.config/ranger/rc.conf
:
map ,n console newcmd map ,m newcmd default-arg
Und jetzt können Sie einfach Folgendes eingeben:
,n
innewcmd
die Statuszeile schreiben, und machen Sie sich bereit für den Benutzer, das erste Argument einzugeben,m
und führen Sie den Befehl sofort mit einem Standardargument aus
Getestet auf Ranger 1.6.1.