diff options
author | Samuel Walladge <samuel@swalladge.id.au> | 2017-02-05 00:06:24 +1030 |
---|---|---|
committer | nfnty <git@nfnty.se> | 2017-02-05 08:58:54 +0100 |
commit | 2841f7b86b1d464eb5280a9c9e5c29c4f4fda249 (patch) | |
tree | 6b2bd5550248d3a1a217eef9d9df3f276347cb07 /ranger | |
parent | 6d5893eed201a92cfd09db15685aa73e2720c201 (diff) | |
download | ranger-2841f7b86b1d464eb5280a9c9e5c29c4f4fda249.tar.gz |
Add setting `wrap_scroll`
Adds ability to wrap around when scrolling. Fixes #176
Diffstat (limited to 'ranger')
-rw-r--r-- | ranger/config/rc.conf | 4 | ||||
-rw-r--r-- | ranger/container/settings.py | 1 | ||||
-rw-r--r-- | ranger/core/actions.py | 1 | ||||
-rw-r--r-- | ranger/ext/direction.py | 2 |
4 files changed, 7 insertions, 1 deletions
diff --git a/ranger/config/rc.conf b/ranger/config/rc.conf index a36ce9e4..991c1d3a 100644 --- a/ranger/config/rc.conf +++ b/ranger/config/rc.conf @@ -215,6 +215,10 @@ set clear_filters_on_dir_change false # Disable displaying line numbers in main column set line_numbers false +# Enable scroll wrapping - moving down while on the last item will wrap around to +# the top and vice versa. +set wrap_scroll false + # =================================================================== # == Local Options # =================================================================== diff --git a/ranger/container/settings.py b/ranger/container/settings.py index 6e5e44f1..df9a45c7 100644 --- a/ranger/container/settings.py +++ b/ranger/container/settings.py @@ -78,6 +78,7 @@ ALLOWED_SETTINGS = { 'vcs_backend_git': str, 'vcs_backend_hg': str, 'vcs_backend_svn': str, + 'wrap_scroll': bool, 'xterm_alt_key': bool, 'clear_filters_on_dir_change': bool, } diff --git a/ranger/core/actions.py b/ranger/core/actions.py index c78f61e2..d3bbce7c 100644 --- a/ranger/core/actions.py +++ b/ranger/core/actions.py @@ -455,6 +455,7 @@ class Actions( # pylint: disable=too-many-instance-attributes,too-many-public-m self.move(to=80, percentage=True) # moves to 80% """ cwd = self.thisdir + kw.setdefault('cycle', self.fm.settings['wrap_scroll']) direction = Direction(kw) if 'left' in direction or direction.left() > 0: steps = direction.left() diff --git a/ranger/ext/direction.py b/ranger/ext/direction.py index 7268d5d6..2bc58395 100644 --- a/ranger/ext/direction.py +++ b/ranger/ext/direction.py @@ -92,7 +92,7 @@ class Direction(dict): return 'percentage' in self and self['percentage'] def cycle(self): - return self.get('cycle') in ('true', 'on', 'yes') + return self.get('cycle') in (True, 'true', 'on', 'yes') def multiply(self, n): for key in ('up', 'right', 'down', 'left'): |