Show More
@@ -3195,7 +3195,7 b' Defaulting color scheme to \'NoColor\'"""' | |||||
3195 | exec b in self.user_ns |
|
3195 | exec b in self.user_ns | |
3196 | self.user_ns['pasted_block'] = b |
|
3196 | self.user_ns['pasted_block'] = b | |
3197 | else: |
|
3197 | else: | |
3198 | self.user_ns[par] = block |
|
3198 | self.user_ns[par] = SList(block.splitlines()) | |
3199 | print "Block assigned to '%s'" % par |
|
3199 | print "Block assigned to '%s'" % par | |
3200 |
|
3200 | |||
3201 | def magic_quickref(self,arg): |
|
3201 | def magic_quickref(self,arg): |
@@ -1137,7 +1137,7 b' class SList(list):' | |||||
1137 | res.append(" ".join(lineparts)) |
|
1137 | res.append(" ".join(lineparts)) | |
1138 |
|
1138 | |||
1139 | return res |
|
1139 | return res | |
1140 | def sort(self,field, nums = False): |
|
1140 | def sort(self,field= None, nums = False): | |
1141 | """ sort by specified fields (see fields()) |
|
1141 | """ sort by specified fields (see fields()) | |
1142 |
|
1142 | |||
1143 | Example:: |
|
1143 | Example:: | |
@@ -1148,7 +1148,10 b' class SList(list):' | |||||
1148 | """ |
|
1148 | """ | |
1149 |
|
1149 | |||
1150 | #decorate, sort, undecorate |
|
1150 | #decorate, sort, undecorate | |
1151 | dsu = [[SList([line]).fields(field), line] for line in self] |
|
1151 | if field is not None: | |
|
1152 | dsu = [[SList([line]).fields(field), line] for line in self] | |||
|
1153 | else: | |||
|
1154 | dsu = [[line, line] for line in self] | |||
1152 | if nums: |
|
1155 | if nums: | |
1153 | for i in range(len(dsu)): |
|
1156 | for i in range(len(dsu)): | |
1154 | numstr = "".join([ch for ch in dsu[i][0] if ch.isdigit()]) |
|
1157 | numstr = "".join([ch for ch in dsu[i][0] if ch.isdigit()]) | |
@@ -1161,11 +1164,15 b' class SList(list):' | |||||
1161 |
|
1164 | |||
1162 |
|
1165 | |||
1163 | dsu.sort() |
|
1166 | dsu.sort() | |
1164 | return [t[1] for t in dsu] |
|
1167 | return SList([t[1] for t in dsu]) | |
1165 |
|
1168 | |||
1166 | def print_slist(arg): |
|
1169 | def print_slist(arg): | |
1167 | """ Prettier (non-repr-like) and more informative printer for SList """ |
|
1170 | """ Prettier (non-repr-like) and more informative printer for SList """ | |
1168 |
print "SList (.p, .n, .l, .s, .grep(), .fields() available) |
|
1171 | print "SList (.p, .n, .l, .s, .grep(), .fields(), sort() available):" | |
|
1172 | if hasattr(arg, 'hideonce') and arg.hideonce: | |||
|
1173 | arg.hideonce = False | |||
|
1174 | return | |||
|
1175 | ||||
1169 | nlprint(arg) |
|
1176 | nlprint(arg) | |
1170 |
|
1177 | |||
1171 | print_slist = result_display.when_type(SList)(print_slist) |
|
1178 | print_slist = result_display.when_type(SList)(print_slist) |
@@ -32,6 +32,7 b' New features' | |||||
32 | * sh profile: ./foo runs foo as system command, no need to do !./foo anymore |
|
32 | * sh profile: ./foo runs foo as system command, no need to do !./foo anymore | |
33 | * String lists now support 'sort(field, nums = True)' method (to easily |
|
33 | * String lists now support 'sort(field, nums = True)' method (to easily | |
34 | sort system command output). Try it with 'a = !ls -l ; a.sort(1, nums=1)' |
|
34 | sort system command output). Try it with 'a = !ls -l ; a.sort(1, nums=1)' | |
|
35 | * '%cpaste foo' now assigns the pasted block as string list, instead of string | |||
35 |
|
36 | |||
36 |
|
37 | |||
37 |
|
38 |
General Comments 0
You need to be logged in to leave comments.
Login now