summary refs log tree commit diff stats
path: root/ranger
diff options
context:
space:
mode:
authorhut <hut@lavabit.com>2010-02-24 15:35:16 +0100
committerhut <hut@lavabit.com>2010-02-24 23:54:17 +0100
commitc5450bd180efd57f9cbd9d3315391b8cc8238be3 (patch)
tree76df12e4f869edbdce46de903ad7b66f3179e30a /ranger
parentd49cace95fb717d90e9d1e3b0088b0634071c0e3 (diff)
downloadranger-c5450bd180efd57f9cbd9d3315391b8cc8238be3.tar.gz
console: fixed tabcompletion in openconsole starting with !xyz!
Diffstat (limited to 'ranger')
-rw-r--r--ranger/gui/widgets/console.py17
1 files changed, 13 insertions, 4 deletions
diff --git a/ranger/gui/widgets/console.py b/ranger/gui/widgets/console.py
index a496f6a9..5439b2a8 100644
--- a/ranger/gui/widgets/console.py
+++ b/ranger/gui/widgets/console.py
@@ -396,11 +396,20 @@ class OpenConsole(ConsoleWithTab):
 
 	def _get_tab(self):
 		try:
-			position_of_last_space = self.line.rindex(" ")
+			i = self.line.index('!')+1
 		except ValueError:
-			return (program + ' ' for program in self.fm.executables \
-					if program.startswith(self.line))
-		if position_of_last_space == len(self.line) - 1:
+			line = self.line
+			start = ''
+		else:
+			line = self.line[i:]
+			start = self.line[:i]
+
+		try:
+			position_of_last_space = line.rindex(" ")
+		except ValueError:
+			return (start + program + ' ' for program in self.fm.executables \
+					if program.startswith(line))
+		if position_of_last_space == len(line) - 1:
 			return self.line + '%s '
 		else:
 			before_word, start_of_word = self.line.rsplit(' ', 1)
1c8eddccc7c'>cfcfd885 ^
712aa449
4ea0f69a ^


712aa449
0a32b684 ^

4ad365fc ^
0a32b684 ^
2144cf26 ^
36e4e71e ^

4ea0f69a ^

36e4e71e ^




78a7d762 ^
36e4e71e ^

78a7d762 ^
36e4e71e ^


4ea0f69a ^

36e4e71e ^
bd088c49 ^
36e4e71e ^
0a32b684 ^
36e4e71e ^

f6ae504c ^
4ea0f69a ^

0a32b684 ^

4ea0f69a ^
0a32b684 ^
4ea0f69a ^


0a32b684 ^

4ea0f69a ^



36e4e71e ^
7582555b ^
36e4e71e ^
7582555b ^








36e4e71e ^
4ea0f69a ^


36e4e71e ^




4ea0f69a ^
e71c8103 ^

36e4e71e ^

f6ae504c ^
4ea0f69a ^
36e4e71e ^

4ea0f69a ^

36e4e71e ^






4ea0f69a ^

306c76d8 ^






b6aff4c3 ^

306c76d8 ^
4ea0f69a ^

45cf5174 ^

08bc4ef9 ^

b34fd133 ^
08bc4ef9 ^











b34fd133 ^
08bc4ef9 ^


45cf5174 ^





fab4dc54 ^
45cf5174 ^



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