Commit 9cdf92d
authored
Fix completion tuple (ipython#14594)
In progress work toward ipython#14585
guarded eval strip leading characters until it find soemthing, this is
problematic as `(1, x`, becomes valid after 1 char strip: `1, x` is a
tuple;
So now we trim until it is valid an not a tuple.
This is still imperfect as things like `(1, a[" "].y` will be trimmed to
`y`, while it should stop with `a[" "].y` ?
I think maybe we should back-propagate; build back up from `y`, to `a["
"].y`, greedily until we get the last valid expression – skipping any
unbalanced parentheses/quotes if we encounter imblanced.2 files changed
+144
-62
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
184 | 184 | | |
185 | 185 | | |
186 | 186 | | |
| 187 | + | |
187 | 188 | | |
188 | 189 | | |
189 | 190 | | |
| |||
347 | 348 | | |
348 | 349 | | |
349 | 350 | | |
350 | | - | |
| 351 | + | |
351 | 352 | | |
352 | 353 | | |
353 | 354 | | |
| |||
368 | 369 | | |
369 | 370 | | |
370 | 371 | | |
371 | | - | |
| 372 | + | |
372 | 373 | | |
373 | 374 | | |
374 | 375 | | |
| |||
449 | 450 | | |
450 | 451 | | |
451 | 452 | | |
452 | | - | |
| 453 | + | |
453 | 454 | | |
454 | 455 | | |
455 | 456 | | |
456 | | - | |
| 457 | + | |
457 | 458 | | |
458 | 459 | | |
459 | 460 | | |
| |||
752 | 753 | | |
753 | 754 | | |
754 | 755 | | |
755 | | - | |
| 756 | + | |
756 | 757 | | |
757 | 758 | | |
758 | 759 | | |
| |||
961 | 962 | | |
962 | 963 | | |
963 | 964 | | |
964 | | - | |
965 | | - | |
| 965 | + | |
| 966 | + | |
966 | 967 | | |
967 | 968 | | |
968 | 969 | | |
| |||
1141 | 1142 | | |
1142 | 1143 | | |
1143 | 1144 | | |
1144 | | - | |
1145 | | - | |
| 1145 | + | |
| 1146 | + | |
| 1147 | + | |
| 1148 | + | |
| 1149 | + | |
| 1150 | + | |
| 1151 | + | |
1146 | 1152 | | |
1147 | 1153 | | |
1148 | 1154 | | |
| |||
1204 | 1210 | | |
1205 | 1211 | | |
1206 | 1212 | | |
| 1213 | + | |
| 1214 | + | |
| 1215 | + | |
| 1216 | + | |
| 1217 | + | |
| 1218 | + | |
| 1219 | + | |
| 1220 | + | |
| 1221 | + | |
| 1222 | + | |
| 1223 | + | |
| 1224 | + | |
| 1225 | + | |
| 1226 | + | |
| 1227 | + | |
| 1228 | + | |
| 1229 | + | |
| 1230 | + | |
| 1231 | + | |
| 1232 | + | |
| 1233 | + | |
| 1234 | + | |
| 1235 | + | |
| 1236 | + | |
1207 | 1237 | | |
1208 | 1238 | | |
1209 | 1239 | | |
| |||
1225 | 1255 | | |
1226 | 1256 | | |
1227 | 1257 | | |
1228 | | - | |
| 1258 | + | |
1229 | 1259 | | |
1230 | 1260 | | |
1231 | 1261 | | |
1232 | 1262 | | |
1233 | 1263 | | |
1234 | 1264 | | |
1235 | | - | |
| 1265 | + | |
1236 | 1266 | | |
1237 | 1267 | | |
1238 | 1268 | | |
| |||
1447 | 1477 | | |
1448 | 1478 | | |
1449 | 1479 | | |
1450 | | - | |
| 1480 | + | |
1451 | 1481 | | |
1452 | 1482 | | |
1453 | 1483 | | |
| |||
1495 | 1525 | | |
1496 | 1526 | | |
1497 | 1527 | | |
1498 | | - | |
| 1528 | + | |
1499 | 1529 | | |
1500 | 1530 | | |
1501 | 1531 | | |
| |||
2112 | 2142 | | |
2113 | 2143 | | |
2114 | 2144 | | |
2115 | | - | |
| 2145 | + | |
2116 | 2146 | | |
2117 | 2147 | | |
2118 | 2148 | | |
| |||
2469 | 2499 | | |
2470 | 2500 | | |
2471 | 2501 | | |
2472 | | - | |
| 2502 | + | |
| 2503 | + | |
2473 | 2504 | | |
2474 | 2505 | | |
2475 | 2506 | | |
| |||
2489 | 2520 | | |
2490 | 2521 | | |
2491 | 2522 | | |
2492 | | - | |
| 2523 | + | |
| 2524 | + | |
2493 | 2525 | | |
2494 | 2526 | | |
2495 | 2527 | | |
| |||
3215 | 3247 | | |
3216 | 3248 | | |
3217 | 3249 | | |
3218 | | - | |
| 3250 | + | |
3219 | 3251 | | |
3220 | 3252 | | |
3221 | 3253 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
| 12 | + | |
12 | 13 | | |
13 | 14 | | |
14 | 15 | | |
15 | | - | |
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| 24 | + | |
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
| |||
31 | 32 | | |
32 | 33 | | |
33 | 34 | | |
| 35 | + | |
| 36 | + | |
34 | 37 | | |
35 | 38 | | |
36 | 39 | | |
37 | 40 | | |
38 | 41 | | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
39 | 53 | | |
40 | 54 | | |
41 | 55 | | |
| |||
66 | 80 | | |
67 | 81 | | |
68 | 82 | | |
69 | | - | |
| 83 | + | |
70 | 84 | | |
71 | 85 | | |
72 | 86 | | |
| |||
77 | 91 | | |
78 | 92 | | |
79 | 93 | | |
80 | | - | |
| 94 | + | |
81 | 95 | | |
82 | 96 | | |
83 | 97 | | |
| |||
87 | 101 | | |
88 | 102 | | |
89 | 103 | | |
90 | | - | |
91 | 104 | | |
92 | 105 | | |
93 | 106 | | |
| |||
148 | 161 | | |
149 | 162 | | |
150 | 163 | | |
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 | | - | |
| 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 | + | |
190 | 203 | | |
191 | 204 | | |
192 | 205 | | |
| |||
297 | 310 | | |
298 | 311 | | |
299 | 312 | | |
300 | | - | |
301 | | - | |
302 | 313 | | |
303 | 314 | | |
304 | 315 | | |
| |||
1734 | 1745 | | |
1735 | 1746 | | |
1736 | 1747 | | |
| 1748 | + | |
| 1749 | + | |
| 1750 | + | |
| 1751 | + | |
| 1752 | + | |
| 1753 | + | |
| 1754 | + | |
| 1755 | + | |
| 1756 | + | |
| 1757 | + | |
| 1758 | + | |
| 1759 | + | |
| 1760 | + | |
| 1761 | + | |
| 1762 | + | |
| 1763 | + | |
| 1764 | + | |
| 1765 | + | |
| 1766 | + | |
| 1767 | + | |
| 1768 | + | |
| 1769 | + | |
| 1770 | + | |
| 1771 | + | |
| 1772 | + | |
| 1773 | + | |
| 1774 | + | |
| 1775 | + | |
| 1776 | + | |
| 1777 | + | |
| 1778 | + | |
| 1779 | + | |
| 1780 | + | |
| 1781 | + | |
| 1782 | + | |
| 1783 | + | |
| 1784 | + | |
| 1785 | + | |
| 1786 | + | |
1737 | 1787 | | |
1738 | 1788 | | |
1739 | 1789 | | |
| |||
0 commit comments