summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--doc/ranger.113
-rw-r--r--doc/ranger.pod13
-rw-r--r--doc/rifle.12
-rw-r--r--ranger/config/rc.conf1
-rw-r--r--ranger/container/directory.py2
-rw-r--r--ranger/container/fsobject.py5
-rw-r--r--ranger/container/settings.py1
7 files changed, 34 insertions, 3 deletions
diff --git a/doc/ranger.1 b/doc/ranger.1
index 045d8b95..4c8267f2 100644
--- a/doc/ranger.1
+++ b/doc/ranger.1
@@ -129,7 +129,7 @@
 .\" ========================================================================
 .\"
 .IX Title "RANGER 1"
-.TH RANGER 1 "ranger-1.9.0b5" "2017-06-16" "ranger manual"
+.TH RANGER 1 "ranger-1.9.0b5" "07/16/2017" "ranger manual"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
@@ -489,6 +489,12 @@ Move up and down in the parent directory.
 .IP "^R" 14
 .IX Item "^R"
 Reload everything
+.IP "F" 14
+.IX Item "F"
+Toggle \fIfreeze_files\fR setting.  When active, directories and files will not be
+loaded, improving performance when all the files you need are already loaded.
+This does not affect file previews, which can be toggled with \fIzI\fR.  Also try
+disabling the preview of directories with \fIzP\fR.
 .IP "^L" 14
 .IX Item "^L"
 Redraw the screen
@@ -767,6 +773,11 @@ currently running tasks which support progress bars?
 Flush the input after each key hit?  One advantage is that when scrolling down
 with \*(L"j\*(R", ranger stops scrolling instantly when you release the key.  One
 disadvantage is that when you type commands blindly, some keys might get lost.
+.IP "freeze_files [bool] <F>" 4
+.IX Item "freeze_files [bool] <F>"
+When active, directories and files will not be loaded, improving performance
+when all the files you need are already loaded.  This does not affect file
+previews.
 .IP "hidden_filter [string]" 4
 .IX Item "hidden_filter [string]"
 A regular expression pattern for files which should be hidden.  For example,
diff --git a/doc/ranger.pod b/doc/ranger.pod
index d9dd6b3d..f5e03b5a 100644
--- a/doc/ranger.pod
+++ b/doc/ranger.pod
@@ -401,6 +401,13 @@ Move up and down in the parent directory.
 
 Reload everything
 
+=item F
+
+Toggle I<freeze_files> setting.  When active, directories and files will not be
+loaded, improving performance when all the files you need are already loaded.
+This does not affect file previews, which can be toggled with I<zI>.  Also try
+disabling the preview of directories with I<zP>.
+
 =item ^L
 
 Redraw the screen
@@ -758,6 +765,12 @@ Flush the input after each key hit?  One advantage is that when scrolling down
 with "j", ranger stops scrolling instantly when you release the key.  One
 disadvantage is that when you type commands blindly, some keys might get lost.
 
+=item freeze_files [bool] <F>
+
+When active, directories and files will not be loaded, improving performance
+when all the files you need are already loaded.  This does not affect file
+previews.
+
 =item hidden_filter [string]
 
 A regular expression pattern for files which should be hidden.  For example,
diff --git a/doc/rifle.1 b/doc/rifle.1
index 95c9ce50..aefc3979 100644
--- a/doc/rifle.1
+++ b/doc/rifle.1
@@ -129,7 +129,7 @@
 .\" ========================================================================
 .\"
 .IX Title "RIFLE 1"
-.TH RIFLE 1 "rifle-1.9.0b5" "2017-03-23" "rifle manual"
+.TH RIFLE 1 "rifle-1.9.0b5" "07/16/2017" "rifle manual"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
diff --git a/ranger/config/rc.conf b/ranger/config/rc.conf
index e088b660..92428312 100644
--- a/ranger/config/rc.conf
+++ b/ranger/config/rc.conf
@@ -271,6 +271,7 @@ map     q quit
 copymap q ZZ ZQ
 
 map R     reload_cwd
+map F     set freeze_files!
 map <C-r> reset
 map <C-l> redraw_window
 map <C-c> abort
diff --git a/ranger/container/directory.py b/ranger/container/directory.py
index c73e2408..97a3f0aa 100644
--- a/ranger/container/directory.py
+++ b/ranger/container/directory.py
@@ -471,6 +471,8 @@ class Directory(  # pylint: disable=too-many-instance-attributes,too-many-public
         Use this sparingly since it takes rather long.
         """
         self.content_outdated = False
+        if self.settings.freeze_files:
+            return
 
         if not self.loading:
             if not self.loaded:
diff --git a/ranger/container/fsobject.py b/ranger/container/fsobject.py
index 121fac22..640d0c48 100644
--- a/ranger/container/fsobject.py
+++ b/ranger/container/fsobject.py
@@ -270,9 +270,12 @@ class FileSystemObject(  # pylint: disable=too-many-instance-attributes,too-many
         filesystem and caches it for later use
         """
 
+        self.loaded = True
+        if self.settings.freeze_files:
+            return
+
         self.display_data = {}
         self.fm.update_preview(self.path)
-        self.loaded = True
 
         # Get the stat object, either from preload or from [l]stat
         self.permissions = None
diff --git a/ranger/container/settings.py b/ranger/container/settings.py
index 243e1eb8..521583c4 100644
--- a/ranger/container/settings.py
+++ b/ranger/container/settings.py
@@ -41,6 +41,7 @@ ALLOWED_SETTINGS = {
     'draw_borders': bool,
     'draw_progress_bar_in_status_bar': bool,
     'flushinput': bool,
+    'freeze_files': bool,
     'global_inode_type_filter': str,
     'hidden_filter': str,
     'idle_delay': int,
tter Kartik Agaram <vc@akkartik.com> 2019-09-18 11:42:08 -0700 5663' href='/akkartik/mu/commit/apps/mulisp.subx?h=hlt&id=fd2b373ad0a99a606883acd78126044a391a0e2f'>fd2b373a ^
57fa808b ^
7a583220 ^
1fafe7af ^


fd2b373a ^
0fba3393 ^
d7dc6cf1 ^




2c3dda21 ^











31bbb6ac ^
2c3dda21 ^
1fafe7af ^


d7dc6cf1 ^


fd2b373a ^
7a583220 ^
fd2b373a ^




2c3dda21 ^
fd2b373a ^




2c3dda21 ^
fd2b373a ^































7a583220 ^
fd2b373a ^


2c3dda21 ^
fd2b373a ^

7a583220 ^
d7dc6cf1 ^


1fafe7af ^
fd2b373a ^



57fa808b ^
7a583220 ^
1fafe7af ^





7a583220 ^
1fafe7af ^



57fa808b ^
7a583220 ^
1fafe7af ^








7a583220 ^
1fafe7af ^








1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234