diff options
Diffstat (limited to 'ranger/core/actions.py')
-rw-r--r-- | ranger/core/actions.py | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/ranger/core/actions.py b/ranger/core/actions.py index ac6cfc95..7b8d192d 100644 --- a/ranger/core/actions.py +++ b/ranger/core/actions.py @@ -542,16 +542,22 @@ class Actions(FileManagerAware, EnvironmentAware, SettingsAware): self.env.cut = False self.ui.browser.main_column.request_redraw() - def copy(self): + def copy(self, narg=None, dirarg=None): """Copy the selected items""" - - selected = self.env.get_selection() + direction = Direction(dirarg or {}) + selected = direction.select( + override=narg, + lst=self.env.cwd.files, + current=self.env.cwd.pointer, + pagesize=self.env.termsize[0]) + + selected = selected or self.env.get_selection() self.env.copy = set(f for f in selected if f in self.env.cwd.files) self.env.cut = False self.ui.browser.main_column.request_redraw() - def cut(self): - self.copy() + def cut(self, narg=None, dirarg=None): + self.copy(narg=narg, dirarg=dirarg) self.env.cut = True self.ui.browser.main_column.request_redraw() |