From bd1cd0d67060f8305655e2edb1ba095c7e1445ac Mon Sep 17 00:00:00 2001 From: Wojciech Siewierski Date: Mon, 24 Jul 2017 22:38:48 +0200 Subject: Make the pagewise scrolling symmetrical Moving half a page down and back up should put the user in the original position. It was true only if the file count was even. If it was odd, the user ended up one file above the originally focused one. --- ranger/ext/direction.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/ranger/ext/direction.py b/ranger/ext/direction.py index bbb69c9b..e337c26e 100644 --- a/ranger/ext/direction.py +++ b/ranger/ext/direction.py @@ -20,6 +20,8 @@ False from __future__ import (absolute_import, division, print_function) +import math + class Direction(dict): @@ -142,8 +144,16 @@ class Direction(dict): if self.cycle(): cycles, pos = divmod(pos, (maximum + offset - minimum)) self['_move_cycles'] = int(cycles) - return int(minimum + pos) - return int(max(min(pos, maximum + offset - 1), minimum)) + ret = minimum + pos + else: + ret = max(min(pos, maximum + offset - 1), minimum) + # Round towards the direction we're moving from. + # From the UI point of view, round down. See: #912. + if direction < 0: + ret = int(math.ceil(ret)) + else: + ret = int(ret) + return ret def move_cycles(self): return self.get('_move_cycles', 0) -- cgit 1.4.1-2-gfad0 From 35f47f53a32b29f746c5ddcd4fb367bf2ad7e640 Mon Sep 17 00:00:00 2001 From: nfnty Date: Sun, 30 Jul 2017 16:14:20 +0200 Subject: doc/tools: Fix shebang --- doc/tools/convert_papermode_to_metadata.py | 2 +- doc/tools/performance_test.py | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/doc/tools/convert_papermode_to_metadata.py b/doc/tools/convert_papermode_to_metadata.py index e4010a73..57459097 100755 --- a/doc/tools/convert_papermode_to_metadata.py +++ b/doc/tools/convert_papermode_to_metadata.py @@ -1,4 +1,4 @@ -#!/bin/python +#!/usr/bin/env python """ usage: ./convert_papermode_to_metadata.py diff --git a/doc/tools/performance_test.py b/doc/tools/performance_test.py index f9562f0c..3b9099d5 100755 --- a/doc/tools/performance_test.py +++ b/doc/tools/performance_test.py @@ -1,6 +1,7 @@ -#!/usr/bin/python -# pylint: disable=wrong-import-position +#!/usr/bin/env python + from __future__ import (absolute_import, division, print_function) + import sys import time -- cgit 1.4.1-2-gfad0