Merge lp:~villemvainio/leo-editor/fix-nhist into lp:leo-editor/old-trunk
- fix-nhist
- Merge into trunk
Proposed by
Ville M. Vainio
Status: | Needs review |
---|---|
Proposed branch: | lp:~villemvainio/leo-editor/fix-nhist |
Merge into: | lp:leo-editor/old-trunk |
Diff against target: | None lines |
To merge this branch: | bzr merge lp:~villemvainio/leo-editor/fix-nhist |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
The Leo editor team | Pending | ||
Review via email: mp+9271@code.launchpad.net |
Commit message
Description of the change
To post a comment you must log in.
Unmerged revisions
- 2264. By Ville M. Vainio
-
validPosition considers 'root' (for chapter support)
- 2263. By Ville M. Vainio
-
augment unit test for c.positionExists() (handle root level positions)
- 2262. By Ville M. Vainio
-
different implementation of positionExists(): if we are at root node, check in children of hidden root vnode
- 2261. By Ville M. Vainio
-
use try-finally with skipBeadUpdate
- 2260. By Ville M. Vainio
-
safety precaution of skipping over nonexisting positions
- 2259. By Ville M. Vainio
-
Remove trace
- 2258. By Ville M. Vainio
-
fix nodeHistory & beadList logic
- 2257. By Edward K. Ream
-
added tag
- 2256. By Edward K. Ream
-
Preparing for Leo 4.6.1 final.
Updated version info.
Added @int qt_max_colorized_ chars setting with default zero.
Added support for qt_max_colorized_ chars setting in qtGui.py.
All unit tests pass. - 2255. By Edward K. Ream
-
Made minimal change to eliminate properties dialog crasher.
Implementation of g.app.gui.runProperties dialog will happen in Leo 4.7.
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'leo/config/leoSettings.leo' | |||
2 | --- leo/config/leoSettings.leo 2009-07-17 18:23:31 +0000 | |||
3 | +++ leo/config/leoSettings.leo 2009-07-24 15:35:43 +0000 | |||
4 | @@ -9,7 +9,7 @@ | |||
5 | 9 | <preferences/> | 9 | <preferences/> |
6 | 10 | <find_panel_settings/> | 10 | <find_panel_settings/> |
7 | 11 | <vnodes> | 11 | <vnodes> |
9 | 12 | <v t="ekr.20070622214401" str_leo_pos="5,7,9"><vh>Startup</vh> | 12 | <v t="ekr.20070622214401" str_leo_pos="5"><vh>Startup</vh> |
10 | 13 | <v t="ekr.20070326094544"><vh>@chapters</vh></v> | 13 | <v t="ekr.20070326094544"><vh>@chapters</vh></v> |
11 | 14 | <v t="ekr.20060112110750"><vh>Buttons</vh> | 14 | <v t="ekr.20060112110750"><vh>Buttons</vh> |
12 | 15 | <v t="ekr.20051010093913"><vh>@@button Save</vh></v> | 15 | <v t="ekr.20051010093913"><vh>@@button Save</vh></v> |
13 | @@ -98,7 +98,7 @@ | |||
14 | 98 | <v t="ekr.20080514065934.1"><vh>About vim-like bindings</vh></v> | 98 | <v t="ekr.20080514065934.1"><vh>About vim-like bindings</vh></v> |
15 | 99 | <v t="ekr.20080513060549.3"><vh>@strings [command,insert, overwrite] top_level_unbound_key_action = command</vh></v> | 99 | <v t="ekr.20080513060549.3"><vh>@strings [command,insert, overwrite] top_level_unbound_key_action = command</vh></v> |
16 | 100 | </v> | 100 | </v> |
18 | 101 | <v t="ekr.20041119034357.1" a="E"><vh>@settings</vh> | 101 | <v t="ekr.20041119034357.1"><vh>@settings</vh> |
19 | 102 | <v t="ekr.20070926132045"><vh>Common @button nodes</vh> | 102 | <v t="ekr.20070926132045"><vh>Common @button nodes</vh> |
20 | 103 | <v t="ekr.20070926082407"><vh>@buttons</vh> | 103 | <v t="ekr.20070926082407"><vh>@buttons</vh> |
21 | 104 | <v t="ekr.20090703122042.7463"><vh>@@button a-common-button</vh></v> | 104 | <v t="ekr.20090703122042.7463"><vh>@@button a-common-button</vh></v> |
22 | @@ -320,7 +320,7 @@ | |||
23 | 320 | </v> | 320 | </v> |
24 | 321 | </v> | 321 | </v> |
25 | 322 | </v> | 322 | </v> |
27 | 323 | <v t="ekr.20061003173413" a="E"><vh>File options</vh> | 323 | <v t="ekr.20061003173413"><vh>File options</vh> |
28 | 324 | <v t="ekr.20041119034357.7"><vh>.leo file options</vh> | 324 | <v t="ekr.20041119034357.7"><vh>.leo file options</vh> |
29 | 325 | <v t="ekr.20041119034357.8"><vh>@string output_initial_comment = None</vh></v> | 325 | <v t="ekr.20041119034357.8"><vh>@string output_initial_comment = None</vh></v> |
30 | 326 | <v t="ekr.20041119034357.9"><vh>@string stylesheet = ekr_test</vh></v> | 326 | <v t="ekr.20041119034357.9"><vh>@string stylesheet = ekr_test</vh></v> |
31 | @@ -1078,6 +1078,7 @@ | |||
32 | 1078 | <v t="ekr.20060919171527.2"><vh>@string opml_namespace = leo:com:leo-opml-version-1</vh></v> | 1078 | <v t="ekr.20060919171527.2"><vh>@string opml_namespace = leo:com:leo-opml-version-1</vh></v> |
33 | 1079 | </v> | 1079 | </v> |
34 | 1080 | <v t="ekr.20081018053140.11"><vh>qtGui plugin</vh> | 1080 | <v t="ekr.20081018053140.11"><vh>qtGui plugin</vh> |
35 | 1081 | <v t="ekr.20090724102452.6058"><vh>@int qt_max_colorized_chars = 0</vh></v> | ||
36 | 1081 | <v t="ekr.20081023060109.14"><vh>@bool qt-use-scintilla = False</vh></v> | 1082 | <v t="ekr.20081023060109.14"><vh>@bool qt-use-scintilla = False</vh></v> |
37 | 1082 | <v t="leohag.20081204085551.13"><vh>@string qt-ui-file-name = qt_main.ui</vh></v> | 1083 | <v t="leohag.20081204085551.13"><vh>@string qt-ui-file-name = qt_main.ui</vh></v> |
38 | 1083 | <v t="ekr.20081018053140.12"><vh>@data qt-gui-plugin-style-sheet</vh></v> | 1084 | <v t="ekr.20081018053140.12"><vh>@data qt-gui-plugin-style-sheet</vh></v> |
39 | @@ -7924,6 +7925,8 @@ | |||
40 | 7924 | <t tx="ekr.20090630073313.8521"></t> | 7925 | <t tx="ekr.20090630073313.8521"></t> |
41 | 7925 | <t tx="ekr.20090630073313.8522"></t> | 7926 | <t tx="ekr.20090630073313.8522"></t> |
42 | 7926 | <t tx="ekr.20090703122042.7463">print 'hi'</t> | 7927 | <t tx="ekr.20090703122042.7463">print 'hi'</t> |
43 | 7928 | <t tx="ekr.20090724102452.6058">If zero, all nodes are colorized, regardless of length of body text. | ||
44 | 7929 | If > 0, only nodes whose body text are smaller than this limit are colorized.</t> | ||
45 | 7927 | <t tx="leohag.20081204085551.13"></t> | 7930 | <t tx="leohag.20081204085551.13"></t> |
46 | 7928 | <t tx="tbrown.20081003103821.1">True: if the same file (basename) occurs more than once in the recent files | 7931 | <t tx="tbrown.20081003103821.1">True: if the same file (basename) occurs more than once in the recent files |
47 | 7929 | list, i.e. on two different paths it will appear as a submenu with the basename | 7932 | list, i.e. on two different paths it will appear as a submenu with the basename |
48 | 7930 | 7933 | ||
49 | === modified file 'leo/core/leoApp.py' | |||
50 | --- leo/core/leoApp.py 2009-07-18 14:53:39 +0000 | |||
51 | +++ leo/core/leoApp.py 2009-07-18 14:55:12 +0000 | |||
52 | @@ -711,7 +711,7 @@ | |||
53 | 711 | def computeSignon (self): | 711 | def computeSignon (self): |
54 | 712 | 712 | ||
55 | 713 | app = self | 713 | app = self |
57 | 714 | # buildNumber = leoVersion.buildNumber | 714 | buildNumber = leoVersion.buildNumber |
58 | 715 | date = leoVersion.date | 715 | date = leoVersion.date |
59 | 716 | guiVersion = app.gui.getFullVersion() | 716 | guiVersion = app.gui.getFullVersion() |
60 | 717 | leoVer = leoVersion.version | 717 | leoVer = leoVersion.version |
61 | @@ -727,10 +727,8 @@ | |||
62 | 727 | 727 | ||
63 | 728 | else: sysVersion = sys.platform | 728 | else: sysVersion = sys.platform |
64 | 729 | 729 | ||
69 | 730 | # app.signon = 'Leo %s build %s, %s' % ( | 730 | app.signon = 'Leo %s build %s, %s' % ( |
70 | 731 | # leoVer,buildNumber,date) | 731 | leoVer,buildNumber,date) |
67 | 732 | app.signon = 'Leo %s, %s' % ( | ||
68 | 733 | leoVer,date) | ||
71 | 734 | app.signon2 = 'Python %s.%s.%s, %s\n%s' % ( | 732 | app.signon2 = 'Python %s.%s.%s, %s\n%s' % ( |
72 | 735 | n1,n2,n3,guiVersion,sysVersion) | 733 | n1,n2,n3,guiVersion,sysVersion) |
73 | 736 | #@nonl | 734 | #@nonl |
74 | 737 | 735 | ||
75 | === modified file 'leo/core/leoCommands.py' | |||
76 | --- leo/core/leoCommands.py 2009-07-18 14:53:39 +0000 | |||
77 | +++ leo/core/leoCommands.py 2009-07-25 12:02:30 +0000 | |||
78 | @@ -5407,8 +5407,12 @@ | |||
79 | 5407 | p = c.nodeHistory.goNext() | 5407 | p = c.nodeHistory.goNext() |
80 | 5408 | 5408 | ||
81 | 5409 | if p: | 5409 | if p: |
84 | 5410 | c.selectPosition(p) | 5410 | c.nodeHistory.skipBeadUpdate = True |
85 | 5411 | c.redraw_after_select(p) | 5411 | try: |
86 | 5412 | c.selectPosition(p) | ||
87 | 5413 | finally: | ||
88 | 5414 | c.nodeHistory.skipBeadUpdate = False | ||
89 | 5415 | c.redraw_after_select(p) | ||
90 | 5412 | 5416 | ||
91 | 5413 | #@-node:ekr.20031218072017.1628:goNextVisitedNode | 5417 | #@-node:ekr.20031218072017.1628:goNextVisitedNode |
92 | 5414 | #@+node:ekr.20031218072017.1627:goPrevVisitedNode | 5418 | #@+node:ekr.20031218072017.1627:goPrevVisitedNode |
93 | @@ -5421,8 +5425,12 @@ | |||
94 | 5421 | p = c.nodeHistory.goPrev() | 5425 | p = c.nodeHistory.goPrev() |
95 | 5422 | 5426 | ||
96 | 5423 | if p: | 5427 | if p: |
99 | 5424 | c.selectPosition(p) | 5428 | c.nodeHistory.skipBeadUpdate = True |
100 | 5425 | c.redraw_after_select(p) | 5429 | try: |
101 | 5430 | c.selectPosition(p) | ||
102 | 5431 | finally: | ||
103 | 5432 | c.nodeHistory.skipBeadUpdate = False | ||
104 | 5433 | c.redraw_after_select(p) | ||
105 | 5426 | #@-node:ekr.20031218072017.1627:goPrevVisitedNode | 5434 | #@-node:ekr.20031218072017.1627:goPrevVisitedNode |
106 | 5427 | #@+node:ekr.20031218072017.2914:goToFirstNode | 5435 | #@+node:ekr.20031218072017.2914:goToFirstNode |
107 | 5428 | def goToFirstNode (self,event=None): | 5436 | def goToFirstNode (self,event=None): |
108 | @@ -7145,7 +7153,12 @@ | |||
109 | 7145 | if i >= len(children) or children[i] != old_v: | 7153 | if i >= len(children) or children[i] != old_v: |
110 | 7146 | return False | 7154 | return False |
111 | 7147 | else: | 7155 | else: |
113 | 7148 | p.moveToBack() | 7156 | # root position, check from hidden root vnode |
114 | 7157 | i = p._childIndex | ||
115 | 7158 | rootchildren = root.v.parents[0].t.children | ||
116 | 7159 | if i >= len(rootchildren) or rootchildren[i] != p.v: | ||
117 | 7160 | return False | ||
118 | 7161 | return True | ||
119 | 7149 | 7162 | ||
120 | 7150 | return False | 7163 | return False |
121 | 7151 | #@-node:ekr.20040307104131.3:c.positionExists | 7164 | #@-node:ekr.20040307104131.3:c.positionExists |
122 | @@ -7884,6 +7897,7 @@ | |||
123 | 7884 | # nav_buttons and nodenavigator plugins. | 7897 | # nav_buttons and nodenavigator plugins. |
124 | 7885 | self.beadPointer = -1 | 7898 | self.beadPointer = -1 |
125 | 7886 | self.trace = False | 7899 | self.trace = False |
126 | 7900 | self.skipBeadUpdate = False | ||
127 | 7887 | #@nonl | 7901 | #@nonl |
128 | 7888 | #@-node:ekr.20070615131604.1: ctor (nodeHistory) | 7902 | #@-node:ekr.20070615131604.1: ctor (nodeHistory) |
129 | 7889 | #@+node:ekr.20070615131604.3:canGoToNext/Prev | 7903 | #@+node:ekr.20070615131604.3:canGoToNext/Prev |
130 | @@ -7914,24 +7928,35 @@ | |||
131 | 7914 | def goNext (self): | 7928 | def goNext (self): |
132 | 7915 | 7929 | ||
133 | 7916 | '''Return the next visited node, or None.''' | 7930 | '''Return the next visited node, or None.''' |
135 | 7917 | if self.beadPointer + 1 < len(self.beadList): | 7931 | |
136 | 7932 | c = self.c | ||
137 | 7933 | while self.beadPointer + 1 < len(self.beadList): | ||
138 | 7918 | self.beadPointer += 1 | 7934 | self.beadPointer += 1 |
139 | 7919 | p,chapter = self.beadList[self.beadPointer] | 7935 | p,chapter = self.beadList[self.beadPointer] |
142 | 7920 | self.selectChapter(chapter) | 7936 | if c.positionExists(p): |
143 | 7921 | return p | 7937 | break |
144 | 7922 | else: | 7938 | else: |
145 | 7923 | return None | 7939 | return None |
146 | 7924 | 7940 | ||
147 | 7941 | self.selectChapter(chapter) | ||
148 | 7942 | return p | ||
149 | 7943 | |||
150 | 7925 | def goPrev (self): | 7944 | def goPrev (self): |
151 | 7926 | 7945 | ||
152 | 7927 | '''Return the previous visited node, or None.''' | 7946 | '''Return the previous visited node, or None.''' |
154 | 7928 | if self.beadPointer > 0: | 7947 | |
155 | 7948 | c = self.c | ||
156 | 7949 | while self.beadPointer > 0: | ||
157 | 7929 | self.beadPointer -= 1 | 7950 | self.beadPointer -= 1 |
158 | 7930 | p,chapter = self.beadList[self.beadPointer] | 7951 | p,chapter = self.beadList[self.beadPointer] |
161 | 7931 | self.selectChapter(chapter) | 7952 | if c.positionExists(p): |
162 | 7932 | return p | 7953 | break |
163 | 7933 | else: | 7954 | else: |
164 | 7934 | return None | 7955 | return None |
165 | 7956 | |||
166 | 7957 | |||
167 | 7958 | self.selectChapter(chapter) | ||
168 | 7959 | return p | ||
169 | 7935 | #@-node:ekr.20070615134813:goNext/Prev | 7960 | #@-node:ekr.20070615134813:goNext/Prev |
170 | 7936 | #@+node:ekr.20070615132939.1:remove | 7961 | #@+node:ekr.20070615132939.1:remove |
171 | 7937 | def remove (self,p): | 7962 | def remove (self,p): |
172 | @@ -7961,30 +7986,36 @@ | |||
173 | 7961 | if cc and chapter and chapter != cc.getSelectedChapter(): | 7986 | if cc and chapter and chapter != cc.getSelectedChapter(): |
174 | 7962 | cc.selectChapterByName(chapter.name) | 7987 | cc.selectChapterByName(chapter.name) |
175 | 7963 | #@-node:ekr.20070615140032:selectChapter | 7988 | #@-node:ekr.20070615140032:selectChapter |
177 | 7964 | #@+node:ekr.20070615131604.2:update | 7989 | #@+node:ville.20090724234020.14676:update |
178 | 7965 | def update (self,p): | 7990 | def update (self,p): |
179 | 7966 | 7991 | ||
180 | 7967 | c = self.c | 7992 | c = self.c |
197 | 7968 | 7993 | if self.skipBeadUpdate: | |
198 | 7969 | self.beadList = [z for z in self.beadList | 7994 | return |
199 | 7970 | if c.positionExists(z[0])] | 7995 | |
200 | 7971 | 7996 | p = p.copy() | |
201 | 7972 | positions = [z[0] for z in self.beadList] | 7997 | if self.beadList and self.beadList[-1][0] == p: |
202 | 7973 | 7998 | # do not re-append the same node | |
203 | 7974 | try: | 7999 | return |
204 | 7975 | self.beadPointer = positions.index(p) | 8000 | |
205 | 7976 | except ValueError: | 8001 | cc = c.chapterController |
206 | 7977 | cc = c.chapterController | 8002 | theChapter = cc and cc.getSelectedChapter() |
207 | 7978 | theChapter = cc and cc.getSelectedChapter() | 8003 | data = (p,theChapter) |
208 | 7979 | data = (p.copy(),theChapter) | 8004 | |
209 | 7980 | self.beadList.append(data) | 8005 | if self.beadPointer < len(self.beadList) - 1: |
210 | 7981 | self.beadPointer = len(self.beadList)-1 | 8006 | # if we came to new node, truncate bead list |
211 | 7982 | 8007 | self.beadList = self.beadList[0:self.beadPointer] | |
212 | 7983 | if self.trace: | 8008 | |
213 | 8009 | self.beadList.append(data) | ||
214 | 8010 | self.beadPointer = len(self.beadList) - 1 | ||
215 | 8011 | |||
216 | 8012 | |||
217 | 8013 | if self.trace: | ||
218 | 7984 | g.trace('bead list',p.h) | 8014 | g.trace('bead list',p.h) |
219 | 7985 | g.pr([z[0].h for z in self.beadList]) | 8015 | g.pr([z[0].h for z in self.beadList]) |
220 | 7986 | 8016 | ||
222 | 7987 | #@-node:ekr.20070615131604.2:update | 8017 | |
223 | 8018 | #@-node:ville.20090724234020.14676:update | ||
224 | 7988 | #@+node:ekr.20070615140655:visitedPositions | 8019 | #@+node:ekr.20070615140655:visitedPositions |
225 | 7989 | def visitedPositions (self): | 8020 | def visitedPositions (self): |
226 | 7990 | 8021 | ||
227 | 7991 | 8022 | ||
228 | === modified file 'leo/core/leoProjects.txt' | |||
229 | --- leo/core/leoProjects.txt 2009-07-18 14:53:39 +0000 | |||
230 | +++ leo/core/leoProjects.txt 2009-07-18 14:55:12 +0000 | |||
231 | @@ -466,7 +466,7 @@ | |||
232 | 466 | def computeSignon (self): | 466 | def computeSignon (self): |
233 | 467 | 467 | ||
234 | 468 | app = self | 468 | app = self |
236 | 469 | # buildNumber = leoVersion.buildNumber | 469 | buildNumber = leoVersion.buildNumber |
237 | 470 | date = leoVersion.date | 470 | date = leoVersion.date |
238 | 471 | guiVersion = app.gui.getFullVersion() | 471 | guiVersion = app.gui.getFullVersion() |
239 | 472 | leoVer = leoVersion.version | 472 | leoVer = leoVersion.version |
240 | @@ -482,10 +482,8 @@ | |||
241 | 482 | 482 | ||
242 | 483 | else: sysVersion = sys.platform | 483 | else: sysVersion = sys.platform |
243 | 484 | 484 | ||
248 | 485 | # app.signon = 'Leo %s build %s, %s' % ( | 485 | app.signon = 'Leo %s build %s, %s' % ( |
249 | 486 | # leoVer,buildNumber,date) | 486 | leoVer,buildNumber,date) |
246 | 487 | app.signon = 'Leo %s, %s' % ( | ||
247 | 488 | leoVer,date) | ||
250 | 489 | app.signon2 = 'Python %s.%s.%s, %s\n%s' % ( | 487 | app.signon2 = 'Python %s.%s.%s, %s\n%s' % ( |
251 | 490 | n1,n2,n3,guiVersion,sysVersion) | 488 | n1,n2,n3,guiVersion,sysVersion) |
252 | 491 | #@nonl | 489 | #@nonl |
253 | 492 | 490 | ||
254 | === modified file 'leo/core/leoVersion.py' | |||
255 | --- leo/core/leoVersion.py 2009-07-17 18:23:06 +0000 | |||
256 | +++ leo/core/leoVersion.py 2009-07-24 15:35:43 +0000 | |||
257 | @@ -5,10 +5,10 @@ | |||
258 | 5 | #@@language python | 5 | #@@language python |
259 | 6 | #@@tabwidth -4 | 6 | #@@tabwidth -4 |
260 | 7 | 7 | ||
265 | 8 | buildString = "$Revision: 4.7.0$" # sccs updates this. | 8 | buildNumber = 2255 |
266 | 9 | buildNumber = buildString[10:-1] # Strip off $Revision and training $ | 9 | # For now, just manually updated to bzr branch number. |
267 | 10 | date = "July 17, 2009" | 10 | date = "July 24, 2009" |
268 | 11 | version = "4.7 devel" | 11 | version = "4.6.1 final" |
269 | 12 | #@nonl | 12 | #@nonl |
270 | 13 | #@-node:ekr.20090717092906.12765:@thin leoVersion.py | 13 | #@-node:ekr.20090717092906.12765:@thin leoVersion.py |
271 | 14 | #@-leo | 14 | #@-leo |
272 | 15 | 15 | ||
273 | === modified file 'leo/dist/leo-post-install-script.py' | |||
274 | --- leo/dist/leo-post-install-script.py 2009-07-10 17:08:24 +0000 | |||
275 | +++ leo/dist/leo-post-install-script.py 2009-07-18 14:35:31 +0000 | |||
276 | @@ -12,7 +12,7 @@ | |||
277 | 12 | #@nl | 12 | #@nl |
278 | 13 | #@<< make version >> | 13 | #@<< make version >> |
279 | 14 | #@+node:ekr.20080916084557.2:<< make version >> | 14 | #@+node:ekr.20080916084557.2:<< make version >> |
281 | 15 | version = '4-6-rc1' | 15 | version = '4-6-1-final' |
282 | 16 | #@nonl | 16 | #@nonl |
283 | 17 | #@-node:ekr.20080916084557.2:<< make version >> | 17 | #@-node:ekr.20080916084557.2:<< make version >> |
284 | 18 | #@nl | 18 | #@nl |
285 | 19 | 19 | ||
286 | === modified file 'leo/dist/leoDist.leo' | |||
287 | --- leo/dist/leoDist.leo 2009-07-10 19:13:07 +0000 | |||
288 | +++ leo/dist/leoDist.leo 2009-07-18 14:35:31 +0000 | |||
289 | @@ -9,7 +9,7 @@ | |||
290 | 9 | <preferences/> | 9 | <preferences/> |
291 | 10 | <find_panel_settings/> | 10 | <find_panel_settings/> |
292 | 11 | <vnodes> | 11 | <vnodes> |
294 | 12 | <v t="ekr.20050315084904" str_leo_pos="2,4"><vh>Startup</vh> | 12 | <v t="ekr.20050315084904" str_leo_pos="5"><vh>Startup</vh> |
295 | 13 | <v t="ekr.20070325123540"><vh>@chapters</vh></v> | 13 | <v t="ekr.20070325123540"><vh>@chapters</vh></v> |
296 | 14 | <v t="ekr.20050315084922"><vh>@button Spell</vh></v> | 14 | <v t="ekr.20050315084922"><vh>@button Spell</vh></v> |
297 | 15 | </v> | 15 | </v> |
298 | @@ -20,7 +20,7 @@ | |||
299 | 20 | <v t="EKR.20040519082027.34"><vh>@@file-thin ../../uninstall</vh></v> | 20 | <v t="EKR.20040519082027.34"><vh>@@file-thin ../../uninstall</vh></v> |
300 | 21 | </v> | 21 | </v> |
301 | 22 | </v> | 22 | </v> |
303 | 23 | <v t="EKR.20040519091259" a="E"><vh>Annoucements</vh> | 23 | <v t="EKR.20040519091259"><vh>Annoucements</vh> |
304 | 24 | <v t="EKR.20040519091259.1"><vh>Download statistics</vh></v> | 24 | <v t="EKR.20040519091259.1"><vh>Download statistics</vh></v> |
305 | 25 | <v t="EKR.20040519091259.2"><vh>Quotes of the month</vh> | 25 | <v t="EKR.20040519091259.2"><vh>Quotes of the month</vh> |
306 | 26 | <v t="ekr.20080901114425.2"><vh>Sept 2008</vh></v> | 26 | <v t="ekr.20080901114425.2"><vh>Sept 2008</vh></v> |
307 | @@ -33,10 +33,13 @@ | |||
308 | 33 | <v t="EKR.20040519091259.3"><vh>November 2003</vh></v> | 33 | <v t="EKR.20040519091259.3"><vh>November 2003</vh></v> |
309 | 34 | <v t="EKR.20040519091259.4"><vh>October 2003</vh></v> | 34 | <v t="EKR.20040519091259.4"><vh>October 2003</vh></v> |
310 | 35 | </v> | 35 | </v> |
311 | 36 | <v t="ekr.20090718093249.5927"><vh>ANN: Leo 4.6.1 final</vh></v> | ||
312 | 37 | <v t="EKR.20040519091259.30"><vh>Previous announcements</vh> | ||
313 | 38 | <v t="ekr.20090718093249.5928"><vh>4.6</vh> | ||
314 | 39 | <v t="ekr.20090709085944.1401"><vh>ANN: Leo 4.6 rc1</vh></v> | ||
315 | 40 | <v t="ekr.20090620122333.1392"><vh>ANN: Leo 4.6 b2</vh></v> | ||
316 | 36 | <v t="ekr.20090325065530.1"><vh>ANN: Leo 4.6 b1</vh></v> | 41 | <v t="ekr.20090325065530.1"><vh>ANN: Leo 4.6 b1</vh></v> |
320 | 37 | <v t="ekr.20090620122333.1392"><vh>ANN: Leo 4.6 b2</vh></v> | 42 | </v> |
318 | 38 | <v t="ekr.20090709085944.1401"><vh>ANN: Leo 4.6 rc1</vh></v> | ||
319 | 39 | <v t="EKR.20040519091259.30"><vh>Previous announcements</vh> | ||
321 | 40 | <v t="ekr.20080807093308.2"><vh>4.5</vh> | 43 | <v t="ekr.20080807093308.2"><vh>4.5</vh> |
322 | 41 | <v t="ekr.20080628062747.73"><vh>ANN: Leo 4.5 b1</vh></v> | 44 | <v t="ekr.20080628062747.73"><vh>ANN: Leo 4.5 b1</vh></v> |
323 | 42 | <v t="ekr.20080807093308.1"><vh>ANN: Leo 4.5 b2</vh></v> | 45 | <v t="ekr.20080807093308.1"><vh>ANN: Leo 4.5 b2</vh></v> |
324 | @@ -49,7 +52,7 @@ | |||
325 | 49 | </v> | 52 | </v> |
326 | 50 | </v> | 53 | </v> |
327 | 51 | </v> | 54 | </v> |
329 | 52 | <v t="EKR.20040519090846" a="E"><vh>Distribution files</vh> | 55 | <v t="EKR.20040519090846"><vh>Distribution files</vh> |
330 | 53 | <v t="EKR.20040519090846.2"><vh>@asis ../doc/INSTALL.TXT</vh> | 56 | <v t="EKR.20040519090846.2"><vh>@asis ../doc/INSTALL.TXT</vh> |
331 | 54 | <v t="EKR.20040519090846.3"><vh>System requirements</vh></v> | 57 | <v t="EKR.20040519090846.3"><vh>System requirements</vh></v> |
332 | 55 | <v t="ekr.20080825083632.262"><vh>Leo's HOME directory</vh></v> | 58 | <v t="ekr.20080825083632.262"><vh>Leo's HOME directory</vh></v> |
333 | @@ -63,7 +66,7 @@ | |||
334 | 63 | <v t="EKR.20040519090846.9"><vh>@asis ../doc/README.TXT</vh></v> | 66 | <v t="EKR.20040519090846.9"><vh>@asis ../doc/README.TXT</vh></v> |
335 | 64 | </v> | 67 | </v> |
336 | 65 | <v t="ekr.20090620072519.1389"><vh>Distribution checklist</vh></v> | 68 | <v t="ekr.20090620072519.1389"><vh>Distribution checklist</vh></v> |
338 | 66 | <v t="ekr.20080916084557.1" a="E"><vh>Make stuff</vh> | 69 | <v t="ekr.20080916084557.1"><vh>Make stuff</vh> |
339 | 67 | <v t="ekr.20080916084557.2" a="M"><vh><< make version >></vh></v> | 70 | <v t="ekr.20080916084557.2" a="M"><vh><< make version >></vh></v> |
340 | 68 | <v t="ekr.20080913110741.1" | 71 | <v t="ekr.20080913110741.1" |
341 | 69 | marks="ekr.20080916084557.2,"><vh>@thin leo-post-install-script.py</vh></v> | 72 | marks="ekr.20080916084557.2,"><vh>@thin leo-post-install-script.py</vh></v> |
342 | @@ -168,7 +171,7 @@ | |||
343 | 168 | 171 | ||
344 | 169 | Do a search and replace on this suffix. | 172 | Do a search and replace on this suffix. |
345 | 170 | 173 | ||
347 | 171 | Latest suffix: -rc1 | 174 | Latest suffix: -final |
348 | 172 | 175 | ||
349 | 173 | 176 | ||
350 | 174 | </t> | 177 | </t> |
351 | @@ -308,7 +311,7 @@ | |||
352 | 308 | </t> | 311 | </t> |
353 | 309 | <t tx="EKR.20040519090846.8">Metadata-Version: 1.0 | 312 | <t tx="EKR.20040519090846.8">Metadata-Version: 1.0 |
354 | 310 | Name: leo | 313 | Name: leo |
356 | 311 | Version: 4.6-rc1 | 314 | Version: 4.6.1-final |
357 | 312 | Summary: Leo: Literate Editor with Outlines | 315 | Summary: Leo: Literate Editor with Outlines |
358 | 313 | Home-page: http://webpages.charter.net/edreamleo/front.html | 316 | Home-page: http://webpages.charter.net/edreamleo/front.html |
359 | 314 | Author: Edward K. Ream | 317 | Author: Edward K. Ream |
360 | @@ -328,15 +331,20 @@ | |||
361 | 328 | Download tkIcon from http://www.effbot.org/downloads/#tkIcon | 331 | Download tkIcon from http://www.effbot.org/downloads/#tkIcon |
362 | 329 | Platform: Windows, Linux, Macintosh | 332 | Platform: Windows, Linux, Macintosh |
363 | 330 | </t> | 333 | </t> |
365 | 331 | <t tx="EKR.20040519090846.9">Leo 4.6 release candidate 1 July 9, 2009 | 334 | <t tx="EKR.20040519090846.9">Leo 4.6.1 final July 18, 2009 |
366 | 332 | 335 | ||
368 | 333 | Leo 4.6 rc1 is now available at: | 336 | Leo 4.6.1 final is now available at: |
369 | 334 | http://sourceforge.net/project/showfiles.php?group_id=3458&package_id=29106 | 337 | http://sourceforge.net/project/showfiles.php?group_id=3458&package_id=29106 |
370 | 335 | 338 | ||
371 | 336 | Leo is a text editor, data organizer, project manager and much more. See: | 339 | Leo is a text editor, data organizer, project manager and much more. See: |
372 | 337 | http://webpages.charter.net/edreamleo/intro.html | 340 | http://webpages.charter.net/edreamleo/intro.html |
373 | 338 | 341 | ||
375 | 339 | The highlights of Leo 4.6: | 342 | Leo 4.6.1 fixes two bugs in Leo 4.6: |
376 | 343 | |||
377 | 344 | - Leo's signon is now printed properly. | ||
378 | 345 | - Opening a file from the File menu now leaves the new window on top. | ||
379 | 346 | |||
380 | 347 | The highlights of Leo 4.6 | ||
381 | 340 | -------------------------- | 348 | -------------------------- |
382 | 341 | 349 | ||
383 | 342 | - Cached external files *greatly* reduces the time to load .leo files. | 350 | - Cached external files *greatly* reduces the time to load .leo files. |
384 | @@ -1035,7 +1043,7 @@ | |||
385 | 1035 | os.system('dir %s' % (top)) | 1043 | os.system('dir %s' % (top)) |
386 | 1036 | </t> | 1044 | </t> |
387 | 1037 | <t tx="ekr.20080916084557.1"></t> | 1045 | <t tx="ekr.20080916084557.1"></t> |
389 | 1038 | <t tx="ekr.20080916084557.2">version = '4-6-rc1'</t> | 1046 | <t tx="ekr.20080916084557.2">version = '4-6-1-final'</t> |
390 | 1039 | <t tx="ekr.20090325065530.1">Leo 4.6 b1 is now available at: | 1047 | <t tx="ekr.20090325065530.1">Leo 4.6 b1 is now available at: |
391 | 1040 | http://sourceforge.net/project/showfiles.php?group_id=3458&package_id=29106 | 1048 | http://sourceforge.net/project/showfiles.php?group_id=3458&package_id=29106 |
392 | 1041 | 1049 | ||
393 | @@ -1189,5 +1197,41 @@ | |||
394 | 1189 | Bzr: http://code.launchpad.net/leo-editor/ | 1197 | Bzr: http://code.launchpad.net/leo-editor/ |
395 | 1190 | Quotes: http://webpages.charter.net/edreamleo/testimonials.html | 1198 | Quotes: http://webpages.charter.net/edreamleo/testimonials.html |
396 | 1191 | </t> | 1199 | </t> |
397 | 1200 | <t tx="ekr.20090718093249.5927">Leo 4.6.1 final July 18, 2009 | ||
398 | 1201 | |||
399 | 1202 | Leo 4.6.1 final is now available at: | ||
400 | 1203 | http://sourceforge.net/project/showfiles.php?group_id=3458&package_id=29106 | ||
401 | 1204 | |||
402 | 1205 | Leo is a text editor, data organizer, project manager and much more. See: | ||
403 | 1206 | http://webpages.charter.net/edreamleo/intro.html | ||
404 | 1207 | |||
405 | 1208 | Leo 4.6.1 fixes two bugs in Leo 4.6: | ||
406 | 1209 | |||
407 | 1210 | - Leo's signon is now printed properly. | ||
408 | 1211 | - Opening a file from the File menu now leaves the new window on top. | ||
409 | 1212 | |||
410 | 1213 | The highlights of Leo 4.6 | ||
411 | 1214 | -------------------------- | ||
412 | 1215 | |||
413 | 1216 | - Cached external files *greatly* reduces the time to load .leo files. | ||
414 | 1217 | - Leo now features a modern Qt interface by default. | ||
415 | 1218 | Leo's legacy Tk interface can also be used. | ||
416 | 1219 | - New --config, --file and --gui command-line options. | ||
417 | 1220 | - Leo tests syntax of .py files when saving them. | ||
418 | 1221 | - Leo can now open any kind of file into @edit nodes. | ||
419 | 1222 | - @auto-rst nodes allow easy editing of reStructuredText files. | ||
420 | 1223 | - Properties of commanders, positions and nodes simplify programming. | ||
421 | 1224 | - Improved Leo's unit testing framework. | ||
422 | 1225 | - Leo now requires Python 2.5 or later. | ||
423 | 1226 | - Dozens of small improvements and bug fixes. | ||
424 | 1227 | |||
425 | 1228 | Links: | ||
426 | 1229 | ------ | ||
427 | 1230 | Leo: http://webpages.charter.net/edreamleo/front.html | ||
428 | 1231 | Forum: http://groups.google.com/group/leo-editor | ||
429 | 1232 | Download: http://sourceforge.net/project/showfiles.php?group_id=3458 | ||
430 | 1233 | Bzr: http://code.launchpad.net/leo-editor/ | ||
431 | 1234 | Quotes: http://webpages.charter.net/edreamleo/testimonials.html</t> | ||
432 | 1235 | <t tx="ekr.20090718093249.5928"></t> | ||
433 | 1192 | </tnodes> | 1236 | </tnodes> |
434 | 1193 | </leo_file> | 1237 | </leo_file> |
435 | 1194 | 1238 | ||
436 | === modified file 'leo/doc/LeoDocs.leo' | |||
437 | --- leo/doc/LeoDocs.leo 2009-07-17 18:23:31 +0000 | |||
438 | +++ leo/doc/LeoDocs.leo 2009-07-18 14:32:43 +0000 | |||
439 | @@ -9,7 +9,7 @@ | |||
440 | 9 | <preferences/> | 9 | <preferences/> |
441 | 10 | <find_panel_settings/> | 10 | <find_panel_settings/> |
442 | 11 | <vnodes> | 11 | <vnodes> |
444 | 12 | <v t="ekr.20070610174018" str_leo_pos="4"><vh>Startup</vh> | 12 | <v t="ekr.20070610174018" str_leo_pos="6,1,1"><vh>Startup</vh> |
445 | 13 | <v t="ekr.20070325123558"><vh>@chapters</vh></v> | 13 | <v t="ekr.20070325123558"><vh>@chapters</vh></v> |
446 | 14 | <v t="ekr.20050404094627"><vh>Buttons</vh> | 14 | <v t="ekr.20050404094627"><vh>Buttons</vh> |
447 | 15 | <v t="ekr.20090712122931.10453"><vh>Disabled buttons</vh> | 15 | <v t="ekr.20090712122931.10453"><vh>Disabled buttons</vh> |
448 | @@ -64,7 +64,7 @@ | |||
449 | 64 | <v t="ekr.20080301071818.1"><vh>@thin html/front.html</vh></v> | 64 | <v t="ekr.20080301071818.1"><vh>@thin html/front.html</vh></v> |
450 | 65 | </v> | 65 | </v> |
451 | 66 | <v t="ekr.20090711120622.10446"><vh>Screen shots page</vh> | 66 | <v t="ekr.20090711120622.10446"><vh>Screen shots page</vh> |
453 | 67 | <v t="ekr.20090711120622.10447" tnodeList="ekr.20090711120622.10447"><vh>@edit screen-shots.html</vh></v> | 67 | <v t="ekr.20090711120622.10447"><vh>@@edit screen-shots.html</vh></v> |
454 | 68 | </v> | 68 | </v> |
455 | 69 | <v t="ekr.20090717084250.10703"><vh>Leo's users Guide</vh> | 69 | <v t="ekr.20090717084250.10703"><vh>Leo's users Guide</vh> |
456 | 70 | <v t="ville.20090521211406.6348" descendentVnodeUnknownAttributes="7d710028550b302e302e31302e302e313971017d710258120000007273745f687474705f61747472696275746571035d71042855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d343122206e616d653d22687474702d6e6f64652d6d61726b65722d3431223e710555043c2f613e71065d710728553d3c64697620636c6173733d2273656374696f6e222069643d2266756e6374696f6e732d646566696e65642d696e2d6c656f676c6f62616c732d7079223e710855063c2f6469763e71095d710a28553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e710b55063c2f6469763e710c5d710d2855063c626f64793e710e55073c2f626f64793e710f5d71102855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e711155073c2f68746d6c3e71124e6565656555073c2f6469763e0a7113553b3c64697620636c6173733d2273656374696f6e222069643d227265646972656374696e672d6f75747075742d66726f6d2d73637269707473223e0a711455783c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964323122206e616d653d227265646972656374696e672d6f75747075742d66726f6d2d73637269707473223e5265646972656374696e67206f75747075742066726f6d20736372697074733c2f613e3c2f68313e0a71156573550b302e302e31302e302e313571167d711758120000007273745f687474705f61747472696275746571185d71192855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d333122206e616d653d22687474702d6e6f64652d6d61726b65722d3331223e711a55043c2f613e711b5d711c28553a3c64697620636c6173733d2273656374696f6e222069643d2267657474696e672d616e642d73657474696e672d707265666572656e636573223e711d55063c2f6469763e711e5d711f28553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e712055063c2f6469763e71215d71222855063c626f64793e712355073c2f626f64793e71245d71252855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e712655073c2f68746d6c3e71274e6565656555073c2f6469763e0a712855503c64697620636c6173733d2273656374696f6e222069643d2266756e6374696f6e732d666f722d66696e64696e672d616e642d6368616e67696e672d746578742d66726f6d2d73637269707473223e0a712955a23c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313622206e616d653d2266756e6374696f6e732d666f722d66696e64696e672d616e642d6368616e67696e672d746578742d66726f6d2d73637269707473223e46756e6374696f6e7320666f722066696e64696e6720616e64206368616e67696e6720746578742066726f6d20736372697074733c2f613e3c2f68313e0a712a6573550b302e302e31302e302e3134712b7d712c58120000007273745f687474705f617474726962757465712d5d712e2855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d323922206e616d653d22687474702d6e6f64652d6d61726b65722d3239223e712f55043c2f613e71305d71312855393c64697620636c6173733d2273656374696f6e222069643d22696e766f6b696e672d636f6d6d616e64732d66726f6d2d73637269707473223e713255063c2f6469763e71335d713428553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e713555063c2f6469763e71365d71372855063c626f64793e713855073c2f626f64793e71395d713a2855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e713b55073c2f68746d6c3e713c4e6565656555073c2f6469763e0a713d553b3c64697620636c6173733d2273656374696f6e222069643d2267657474696e672d616e642d73657474696e672d707265666572656e636573223e0a713e55783c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313522206e616d653d2267657474696e672d616e642d73657474696e672d707265666572656e636573223e47657474696e6720616e642073657474696e6720707265666572656e6365733c2f613e3c2f68313e0a713f6573550b302e302e31302e302e313671407d714158120000007273745f687474705f61747472696275746571425d71432855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d333922206e616d653d22687474702d6e6f64652d6d61726b65722d3339223e714455043c2f613e71455d71462855343c64697620636c6173733d2273656374696f6e222069643d2272756e6e696e672d6c656f2d696e2d62617463682d6d6f6465223e714755063c2f6469763e71485d714928553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e714a55063c2f6469763e714b5d714c2855063c626f64793e714d55073c2f626f64793e714e5d714f2855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e715055073c2f68746d6c3e71514e6565656555073c2f6469763e0a7152553e3c64697620636c6173733d2273656374696f6e222069643d2266756e6374696f6e732d646566696e65642d696e2d6c656f676c6f62616c732d7079223e0a7153557e3c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964323022206e616d653d2266756e6374696f6e732d646566696e65642d696e2d6c656f676c6f62616c732d7079223e46756e6374696f6e7320646566696e656420696e206c656f476c6f62616c732e70793c2f613e3c2f68313e0a71546573550b302e302e31302e302e313171557d715658120000007273745f687474705f61747472696275746571575d71582855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d323522206e616d653d22687474702d6e6f64652d6d61726b65722d3235223e715955043c2f613e715a5d715b28553e3c64697620636c6173733d2273656374696f6e222069643d2274657374696e672d776865746865722d612d706f736974696f6e2d69732d76616c6964223e715c55063c2f6469763e715d5d715e28552e3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e715f55063c2f6469763e71605d716128553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e716255063c2f6469763e71635d71642855063c626f64793e716555073c2f626f64793e71665d71672855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e716855073c2f68746d6c3e71694e656565656555073c2f6469763e0a716a55073c2f6469763e0a716b552f3c64697620636c6173733d2273656374696f6e222069643d227570646174696e672d7468652d73637265656e223e0a716c55603c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313322206e616d653d227570646174696e672d7468652d73637265656e223e5570646174696e67207468652073637265656e3c2f613e3c2f68313e0a716d6573550b302e302e31302e302e3130716e7d716f58120000007273745f687474705f61747472696275746571705d71712855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d313122206e616d653d22687474702d6e6f64652d6d61726b65722d3131223e717255043c2f613e71735d71742855453c64697620636c6173733d2273656374696f6e222069643d2267657474696e672d616e642d73657474696e672d686561646c696e652d616e642d626f64792d74657874223e717555063c2f6469763e71765d717728553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e717855063c2f6469763e71795d717a2855063c626f64793e717b55073c2f626f64793e717c5d717d2855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e717e55073c2f68746d6c3e717f4e6565656555073c2f6469763e0a7180552f3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e0a7181555f3c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643622206e616d653d2274726176657273696e672d6f75746c696e6573223e54726176657273696e67206f75746c696e65733c2f613e3c2f68313e0a71826573550b302e302e31302e302e313271837d718458120000007273745f687474705f61747472696275746571855d71862855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d323722206e616d653d22687474702d6e6f64652d6d61726b65722d3237223e718755043c2f613e71885d718928552e3c64697620636c6173733d2273656374696f6e222069643d227570646174696e672d7468652d73637265656e223e718a55063c2f6469763e718b5d718c28553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e718d55063c2f6469763e718e5d718f2855063c626f64793e719055073c2f626f64793e71915d71922855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e719355073c2f68746d6c3e71944e6565656555073c2f6469763e0a7195553a3c64697620636c6173733d2273656374696f6e222069643d22696e766f6b696e672d636f6d6d616e64732d66726f6d2d73637269707473223e0a719655763c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313422206e616d653d22696e766f6b696e672d636f6d6d616e64732d66726f6d2d73637269707473223e496e766f6b696e6720636f6d6d616e64732066726f6d20736372697074733c2f613e3c2f68313e0a71976573550d302e302e31302e302e32352e3171987d719958120000007273745f687474705f617474726962757465719a5d719b2855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d343722206e616d653d22687474702d6e6f64652d6d61726b65722d3437223e719c55043c2f613e719d5d719e2855243c64697620636c6173733d2273656374696f6e222069643d226974657261746f7273223e719f55063c2f6469763e71a05d71a12855443c64697620636c6173733d2273656374696f6e222069643d2273756d6d6172792d6f662d7468652d766e6f64652d616e642d706f736974696f6e2d636c6173736573223e71a255063c2f6469763e71a35d71a428553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e71a555063c2f6469763e71a65d71a72855063c626f64793e71a855073c2f626f64793e71a95d71aa2855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e71ab55073c2f68746d6c3e71ac4e656565656555073c2f6469763e0a71ad55233c64697620636c6173733d2273656374696f6e222069643d2267657474657273223e0a71ae55483c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964323422206e616d653d2267657474657273223e476574746572733c2f613e3c2f68323e0a71af6573550d302e302e31302e302e32352e3071b07d71b158120000007273745f687474705f61747472696275746571b25d71b32855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d343522206e616d653d22687474702d6e6f64652d6d61726b65722d3435223e71b455043c2f613e71b55d71b62855443c64697620636c6173733d2273656374696f6e222069643d2273756d6d6172792d6f662d7468652d766e6f64652d616e642d706f736974696f6e2d636c6173736573223e71b755063c2f6469763e71b85d71b928553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e71ba55063c2f6469763e71bb5d71bc2855063c626f64793e71bd55073c2f626f64793e71be5d71bf2855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e71c055073c2f68746d6c3e71c14e6565656555253c64697620636c6173733d2273656374696f6e222069643d226974657261746f7273223e0a71c2554c3c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964323322206e616d653d226974657261746f7273223e4974657261746f72733c2f613e3c2f68323e0a71c36573550d302e302e31302e302e32352e3271c47d71c558120000007273745f687474705f61747472696275746571c65d71c72855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d343922206e616d653d22687474702d6e6f64652d6d61726b65722d3439223e71c855043c2f613e71c95d71ca2855223c64697620636c6173733d2273656374696f6e222069643d2267657474657273223e71cb55063c2f6469763e71cc5d71cd2855443c64697620636c6173733d2273656374696f6e222069643d2273756d6d6172792d6f662d7468652d766e6f64652d616e642d706f736974696f6e2d636c6173736573223e71ce55063c2f6469763e71cf5d71d028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e71d155063c2f6469763e71d25d71d32855063c626f64793e71d455073c2f626f64793e71d55d71d62855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e71d755073c2f68746d6c3e71d84e656565656555073c2f6469763e0a71d955233c64697620636c6173733d2273656374696f6e222069643d2273657474657273223e0a71da55483c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964323522206e616d653d2273657474657273223e536574746572733c2f613e3c2f68323e0a71db65735509302e302e342e302e3971dc7d71dd58120000007273745f687474705f61747472696275746571de5d71df2855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d333722206e616d653d22687474702d6e6f64652d6d61726b65722d3337223e71e055043c2f613e71e15d71e22855263c64697620636c6173733d2273656374696f6e222069643d22672d726566696e64616c6c223e71e355063c2f6469763e71e45d71e528554f3c64697620636c6173733d2273656374696f6e222069643d2266756e6374696f6e732d666f722d66696e64696e672d616e642d6368616e67696e672d746578742d66726f6d2d73637269707473223e71e655063c2f6469763e71e75d71e828553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e71e955063c2f6469763e71ea5d71eb2855063c626f64793e71ec55073c2f626f64793e71ed5d71ee2855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e71ef55073c2f68746d6c3e71f04e656565656555073c2f6469763e0a71f155073c2f6469763e0a71f255353c64697620636c6173733d2273656374696f6e222069643d2272756e6e696e672d6c656f2d696e2d62617463682d6d6f6465223e0a71f3556c3c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313922206e616d653d2272756e6e696e672d6c656f2d696e2d62617463682d6d6f6465223e52756e6e696e67204c656f20696e206261746368206d6f64653c2f613e3c2f68313e0a71f46573550b302e302e31302e302e323571f57d71f658120000007273745f687474705f61747472696275746571f75d71f82855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d343322206e616d653d22687474702d6e6f64652d6d61726b65722d3433223e71f955043c2f613e71fa5d71fb28553a3c64697620636c6173733d2273656374696f6e222069643d227265646972656374696e672d6f75747075742d66726f6d2d73637269707473223e71fc55063c2f6469763e71fd5d71fe28553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e71ff55063c2f6469763e72000100005d72010100002855063c626f64793e720201000055073c2f626f64793e72030100005d72040100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e720501000055073c2f68746d6c3e72060100004e6565656555073c2f6469763e0a720701000055453c64697620636c6173733d2273656374696f6e222069643d2273756d6d6172792d6f662d7468652d766e6f64652d616e642d706f736974696f6e2d636c6173736573223e0a7208010000558c3c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964323222206e616d653d2273756d6d6172792d6f662d7468652d766e6f64652d616e642d706f736974696f6e2d636c6173736573223e53756d6d617279206f662074686520766e6f646520616e6420706f736974696f6e20636c61737365733c2f613e3c2f68313e0a72090100006573550b302e302e31302e302e3237720a0100007d720b01000058120000007273745f687474705f617474726962757465720c0100005d720d0100002855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d333722206e616d653d22687474702d6e6f64652d6d61726b65722d3337223e720e01000055043c2f613e720f0100005d72100100002855263c64697620636c6173733d2273656374696f6e222069643d22672d726566696e64616c6c223e721101000055063c2f6469763e72120100005d721301000028554f3c64697620636c6173733d2273656374696f6e222069643d2266756e6374696f6e732d666f722d66696e64696e672d616e642d6368616e67696e672d746578742d66726f6d2d73637269707473223e721401000055063c2f6469763e72150100005d721601000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e721701000055063c2f6469763e72180100005d72190100002855063c626f64793e721a01000055073c2f626f64793e721b0100005d721c0100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e721d01000055073c2f68746d6c3e721e0100004e656565656555073c2f6469763e0a721f01000055073c2f6469763e0a722001000055353c64697620636c6173733d2273656374696f6e222069643d2272756e6e696e672d6c656f2d696e2d62617463682d6d6f6465223e0a7221010000556c3c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313922206e616d653d2272756e6e696e672d6c656f2d696e2d62617463682d6d6f6465223e52756e6e696e67204c656f20696e206261746368206d6f64653c2f613e3c2f68313e0a72220100006573550d302e302e31352e302e31382e3072230100007d72240100005808000000616e6e6f746174657225010000540c01000037643731303032383535303837303732363936663732363937343739373130313238363336313665366536663734363137343635306135343662353036393633366236633635353636313732306137313032366637313033346430663237363235353034366536663634363537313035323836383032366637313036353530343636363936633635373130373632353530323632363737313038323836383032366637313039353530303731306136323535303936313732363336383635373437393730363537313062323836383032366637313063353530353466373436383635373237313064363235353032363636373731306532383638303236663731306636383061363237353265722601000073550a302e302e31302e302e3272270100007d722801000058120000007273745f687474705f61747472696275746572290100005d722a0100002855443c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d3122206e616d653d22687474702d6e6f64652d6d61726b65722d31223e722b01000055043c2f613e722c0100005d722d01000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e722e01000055063c2f6469763e722f0100005d72300100002855063c626f64793e723101000055073c2f626f64793e72320100005d72330100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e723401000055073c2f68746d6c3e72350100004e65656555243c64697620636c6173733d2273656374696f6e222069643d226f76657276696577223e0a723601000055493c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643122206e616d653d226f76657276696577223e4f766572766965773c2f613e3c2f68313e0a72370100006573550a302e302e31302e302e3572380100007d723901000058120000007273745f687474705f617474726962757465723a0100005d723b0100002855443c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d3722206e616d653d22687474702d6e6f64652d6d61726b65722d37223e723c01000055043c2f613e723d0100005d723e0100002855353c64697620636c6173733d2273656374696f6e222069643d22672d65732d77726974652d746f2d7468652d6c6f672d70616e65223e723f01000055063c2f6469763e72400100005d724101000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e724201000055063c2f6469763e72430100005d72440100002855063c626f64793e724501000055073c2f626f64793e72460100005d72470100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e724801000055073c2f68746d6c3e72490100004e6565656555073c2f6469763e0a724a01000055463c64697620636c6173733d2273656374696f6e222069643d226170702d77696e646f776c6973742d7468652d6c6973742d6f662d616c6c2d6f70656e2d6672616d6573223e0a724b010000558e3c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643422206e616d653d226170702d77696e646f776c6973742d7468652d6c6973742d6f662d616c6c2d6f70656e2d6672616d6573223e6170702e77696e646f774c6973743a20746865206c697374206f6620616c6c206f70656e206672616d65733c2f613e3c2f68313e0a724c0100006573550a302e302e31302e302e34724d0100007d724e01000058120000007273745f687474705f617474726962757465724f0100005d72500100002855443c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d3522206e616d653d22687474702d6e6f64652d6d61726b65722d35223e725101000055043c2f613e72520100005d72530100002855403c64697620636c6173733d2273656374696f6e222069643d22672d746f702d7468652d636f6d6d616e6465722d6f662d7468652d746f702d77696e646f77223e725401000055063c2f6469763e72550100005d725601000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e725701000055063c2f6469763e72580100005d72590100002855063c626f64793e725a01000055073c2f626f64793e725b0100005d725c0100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e725d01000055073c2f68746d6c3e725e0100004e6565656555073c2f6469763e0a725f01000055363c64697620636c6173733d2273656374696f6e222069643d22672d65732d77726974652d746f2d7468652d6c6f672d70616e65223e0a726001000055703c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643322206e616d653d22672d65732d77726974652d746f2d7468652d6c6f672d70616e65223e672e657328293a20777269746520746f20746865206c6f672070616e653c2f613e3c2f68313e0a72610100006573550a302e302e31302e302e3672620100007d726301000058120000007273745f687474705f61747472696275746572640100005d72650100002855443c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d3922206e616d653d22687474702d6e6f64652d6d61726b65722d39223e726601000055043c2f613e72670100005d72680100002855453c64697620636c6173733d2273656374696f6e222069643d226170702d77696e646f776c6973742d7468652d6c6973742d6f662d616c6c2d6f70656e2d6672616d6573223e726901000055063c2f6469763e726a0100005d726b01000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e726c01000055063c2f6469763e726d0100005d726e0100002855063c626f64793e726f01000055073c2f626f64793e72700100005d72710100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e727201000055073c2f68746d6c3e72730100004e6565656555073c2f6469763e0a727401000055463c64697620636c6173733d2273656374696f6e222069643d2267657474696e672d616e642d73657474696e672d686561646c696e652d616e642d626f64792d74657874223e0a7275010000558d3c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643522206e616d653d2267657474696e672d616e642d73657474696e672d686561646c696e652d616e642d626f64792d74657874223e47657474696e6720616e642073657474696e6720686561646c696e6520616e6420626f647920746578743c2f613e3c2f68313e0a72760100006573550d302e302e31302e302e31302e3172770100007d727801000058120000007273745f687474705f61747472696275746572790100005d727a0100002855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d313522206e616d653d22687474702d6e6f64652d6d61726b65722d3135223e727b01000055043c2f613e727c0100005d727d01000028552a3c64697620636c6173733d2273656374696f6e222069643d22632d616c6c6e6f6465732d69746572223e727e01000055063c2f6469763e727f0100005d728001000028552e3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e728101000055063c2f6469763e72820100005d728301000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e728401000055063c2f6469763e72850100005d72860100002855063c626f64793e728701000055073c2f626f64793e72880100005d72890100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e728a01000055073c2f68746d6c3e728b0100004e656565656555073c2f6469763e0a728c010000552b3c64697620636c6173733d2273656374696f6e222069643d22702d6368696c6472656e2d69746572223e0a728d01000055573c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643822206e616d653d22702d6368696c6472656e2d69746572223e702e6368696c6472656e5f697465723c2f613e3c2f68323e0a728e0100006573550d302e302e31302e302e31302e30728f0100007d729001000058120000007273745f687474705f61747472696275746572910100005d72920100002855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d313322206e616d653d22687474702d6e6f64652d6d61726b65722d3133223e729301000055043c2f613e72940100005d729501000028552e3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e729601000055063c2f6469763e72970100005d729801000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e729901000055063c2f6469763e729a0100005d729b0100002855063c626f64793e729c01000055073c2f626f64793e729d0100005d729e0100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e729f01000055073c2f68746d6c3e72a00100004e65656565552b3c64697620636c6173733d2273656374696f6e222069643d22632d616c6c6e6f6465732d69746572223e0a72a101000055573c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643722206e616d653d22632d616c6c6e6f6465732d69746572223e632e616c6c4e6f6465735f697465723c2f613e3c2f68323e0a72a20100006573550d302e302e31302e302e31302e3372a30100007d72a401000058120000007273745f687474705f61747472696275746572a50100005d72a60100002855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d313922206e616d653d22687474702d6e6f64652d6d61726b65722d3139223e72a701000055043c2f613e72a80100005d72a90100002855453c64697620636c6173733d2273656374696f6e222069643d22702d706172656e74732d697465722d616e642d702d73656c662d616e642d706172656e74732d69746572223e72aa01000055063c2f6469763e72ab0100005d72ac01000028552e3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e72ad01000055063c2f6469763e72ae0100005d72af01000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e72b001000055063c2f6469763e72b10100005d72b20100002855063c626f64793e72b301000055073c2f626f64793e72b40100005d72b50100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e72b601000055073c2f68746d6c3e72b70100004e656565656555073c2f6469763e0a72b801000055493c64697620636c6173733d2273656374696f6e222069643d22702d7369626c696e67732d697465722d616e642d702d666f6c6c6f77696e672d7369626c696e67732d69746572223e0a72b901000055943c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313022206e616d653d22702d7369626c696e67732d697465722d616e642d702d666f6c6c6f77696e672d7369626c696e67732d69746572223e702e7369626c696e67735f6974657220616e6420702e666f6c6c6f77696e675f7369626c696e67735f697465723c2f613e3c2f68323e0a72ba0100006573550d302e302e31302e302e31302e3272bb0100007d72bc01000058120000007273745f687474705f61747472696275746572bd0100005d72be0100002855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d313722206e616d653d22687474702d6e6f64652d6d61726b65722d3137223e72bf01000055043c2f613e72c00100005d72c101000028552a3c64697620636c6173733d2273656374696f6e222069643d22702d6368696c6472656e2d69746572223e72c201000055063c2f6469763e72c30100005d72c401000028552e3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e72c501000055063c2f6469763e72c60100005d72c701000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e72c801000055063c2f6469763e72c90100005d72ca0100002855063c626f64793e72cb01000055073c2f626f64793e72cc0100005d72cd0100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e72ce01000055073c2f68746d6c3e72cf0100004e656565656555073c2f6469763e0a72d001000055463c64697620636c6173733d2273656374696f6e222069643d22702d706172656e74732d697465722d616e642d702d73656c662d616e642d706172656e74732d69746572223e0a72d1010000558d3c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643922206e616d653d22702d706172656e74732d697465722d616e642d702d73656c662d616e642d706172656e74732d69746572223e702e706172656e74735f6974657220616e6420702e73656c665f616e645f706172656e74735f697465723c2f613e3c2f68323e0a72d20100006573550d302e302e31302e302e31302e3572d30100007d72d401000058120000007273745f687474705f61747472696275746572d50100005d72d60100002855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d323322206e616d653d22687474702d6e6f64652d6d61726b65722d3233223e72d701000055043c2f613e72d80100005d72d90100002855453c64697620636c6173733d2273656374696f6e222069643d22702d737562747265652d697465722d616e642d702d73656c662d616e642d737562747265652d69746572223e72da01000055063c2f6469763e72db0100005d72dc01000028552e3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e72dd01000055063c2f6469763e72de0100005d72df01000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e72e001000055063c2f6469763e72e10100005d72e20100002855063c626f64793e72e301000055073c2f626f64793e72e40100005d72e50100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e72e601000055073c2f68746d6c3e72e70100004e656565656555073c2f6469763e0a72e8010000553f3c64697620636c6173733d2273656374696f6e222069643d2274657374696e672d776865746865722d612d706f736974696f6e2d69732d76616c6964223e0a72e901000055803c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313222206e616d653d2274657374696e672d776865746865722d612d706f736974696f6e2d69732d76616c6964223e54657374696e672077686574686572206120706f736974696f6e2069732076616c69643c2f613e3c2f68323e0a72ea0100006573550d302e302e31302e302e31302e3472eb0100007d72ec01000058120000007273745f687474705f61747472696275746572ed0100005d72ee0100002855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d323122206e616d653d22687474702d6e6f64652d6d61726b65722d3231223e72ef01000055043c2f613e72f00100005d72f10100002855483c64697620636c6173733d2273656374696f6e222069643d22702d7369626c696e67732d697465722d616e642d702d666f6c6c6f77696e672d7369626c696e67732d69746572223e72f201000055063c2f6469763e72f30100005d72f401000028552e3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e72f501000055063c2f6469763e72f60100005d72f701000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e72f801000055063c2f6469763e72f90100005d72fa0100002855063c626f64793e72fb01000055073c2f626f64793e72fc0100005d72fd0100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e72fe01000055073c2f68746d6c3e72ff0100004e656565656555073c2f6469763e0a720002000055463c64697620636c6173733d2273656374696f6e222069643d22702d737562747265652d697465722d616e642d702d73656c662d616e642d737562747265652d69746572223e0a7201020000558e3c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313122206e616d653d22702d737562747265652d697465722d616e642d702d73656c662d616e642d737562747265652d69746572223e702e737562747265655f6974657220616e6420702e73656c665f616e645f737562747265655f697465723c2f613e3c2f68323e0a72020200006573752e" | 70 | <v t="ville.20090521211406.6348" descendentVnodeUnknownAttributes="7d710028550b302e302e31302e302e313971017d710258120000007273745f687474705f61747472696275746571035d71042855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d343122206e616d653d22687474702d6e6f64652d6d61726b65722d3431223e710555043c2f613e71065d710728553d3c64697620636c6173733d2273656374696f6e222069643d2266756e6374696f6e732d646566696e65642d696e2d6c656f676c6f62616c732d7079223e710855063c2f6469763e71095d710a28553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e710b55063c2f6469763e710c5d710d2855063c626f64793e710e55073c2f626f64793e710f5d71102855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e711155073c2f68746d6c3e71124e6565656555073c2f6469763e0a7113553b3c64697620636c6173733d2273656374696f6e222069643d227265646972656374696e672d6f75747075742d66726f6d2d73637269707473223e0a711455783c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964323122206e616d653d227265646972656374696e672d6f75747075742d66726f6d2d73637269707473223e5265646972656374696e67206f75747075742066726f6d20736372697074733c2f613e3c2f68313e0a71156573550b302e302e31302e302e313571167d711758120000007273745f687474705f61747472696275746571185d71192855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d333122206e616d653d22687474702d6e6f64652d6d61726b65722d3331223e711a55043c2f613e711b5d711c28553a3c64697620636c6173733d2273656374696f6e222069643d2267657474696e672d616e642d73657474696e672d707265666572656e636573223e711d55063c2f6469763e711e5d711f28553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e712055063c2f6469763e71215d71222855063c626f64793e712355073c2f626f64793e71245d71252855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e712655073c2f68746d6c3e71274e6565656555073c2f6469763e0a712855503c64697620636c6173733d2273656374696f6e222069643d2266756e6374696f6e732d666f722d66696e64696e672d616e642d6368616e67696e672d746578742d66726f6d2d73637269707473223e0a712955a23c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313622206e616d653d2266756e6374696f6e732d666f722d66696e64696e672d616e642d6368616e67696e672d746578742d66726f6d2d73637269707473223e46756e6374696f6e7320666f722066696e64696e6720616e64206368616e67696e6720746578742066726f6d20736372697074733c2f613e3c2f68313e0a712a6573550b302e302e31302e302e3134712b7d712c58120000007273745f687474705f617474726962757465712d5d712e2855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d323922206e616d653d22687474702d6e6f64652d6d61726b65722d3239223e712f55043c2f613e71305d71312855393c64697620636c6173733d2273656374696f6e222069643d22696e766f6b696e672d636f6d6d616e64732d66726f6d2d73637269707473223e713255063c2f6469763e71335d713428553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e713555063c2f6469763e71365d71372855063c626f64793e713855073c2f626f64793e71395d713a2855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e713b55073c2f68746d6c3e713c4e6565656555073c2f6469763e0a713d553b3c64697620636c6173733d2273656374696f6e222069643d2267657474696e672d616e642d73657474696e672d707265666572656e636573223e0a713e55783c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313522206e616d653d2267657474696e672d616e642d73657474696e672d707265666572656e636573223e47657474696e6720616e642073657474696e6720707265666572656e6365733c2f613e3c2f68313e0a713f6573550b302e302e31302e302e313671407d714158120000007273745f687474705f61747472696275746571425d71432855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d333922206e616d653d22687474702d6e6f64652d6d61726b65722d3339223e714455043c2f613e71455d71462855343c64697620636c6173733d2273656374696f6e222069643d2272756e6e696e672d6c656f2d696e2d62617463682d6d6f6465223e714755063c2f6469763e71485d714928553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e714a55063c2f6469763e714b5d714c2855063c626f64793e714d55073c2f626f64793e714e5d714f2855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e715055073c2f68746d6c3e71514e6565656555073c2f6469763e0a7152553e3c64697620636c6173733d2273656374696f6e222069643d2266756e6374696f6e732d646566696e65642d696e2d6c656f676c6f62616c732d7079223e0a7153557e3c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964323022206e616d653d2266756e6374696f6e732d646566696e65642d696e2d6c656f676c6f62616c732d7079223e46756e6374696f6e7320646566696e656420696e206c656f476c6f62616c732e70793c2f613e3c2f68313e0a71546573550b302e302e31302e302e313171557d715658120000007273745f687474705f61747472696275746571575d71582855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d323522206e616d653d22687474702d6e6f64652d6d61726b65722d3235223e715955043c2f613e715a5d715b28553e3c64697620636c6173733d2273656374696f6e222069643d2274657374696e672d776865746865722d612d706f736974696f6e2d69732d76616c6964223e715c55063c2f6469763e715d5d715e28552e3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e715f55063c2f6469763e71605d716128553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e716255063c2f6469763e71635d71642855063c626f64793e716555073c2f626f64793e71665d71672855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e716855073c2f68746d6c3e71694e656565656555073c2f6469763e0a716a55073c2f6469763e0a716b552f3c64697620636c6173733d2273656374696f6e222069643d227570646174696e672d7468652d73637265656e223e0a716c55603c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313322206e616d653d227570646174696e672d7468652d73637265656e223e5570646174696e67207468652073637265656e3c2f613e3c2f68313e0a716d6573550b302e302e31302e302e3130716e7d716f58120000007273745f687474705f61747472696275746571705d71712855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d313122206e616d653d22687474702d6e6f64652d6d61726b65722d3131223e717255043c2f613e71735d71742855453c64697620636c6173733d2273656374696f6e222069643d2267657474696e672d616e642d73657474696e672d686561646c696e652d616e642d626f64792d74657874223e717555063c2f6469763e71765d717728553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e717855063c2f6469763e71795d717a2855063c626f64793e717b55073c2f626f64793e717c5d717d2855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e717e55073c2f68746d6c3e717f4e6565656555073c2f6469763e0a7180552f3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e0a7181555f3c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643622206e616d653d2274726176657273696e672d6f75746c696e6573223e54726176657273696e67206f75746c696e65733c2f613e3c2f68313e0a71826573550b302e302e31302e302e313271837d718458120000007273745f687474705f61747472696275746571855d71862855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d323722206e616d653d22687474702d6e6f64652d6d61726b65722d3237223e718755043c2f613e71885d718928552e3c64697620636c6173733d2273656374696f6e222069643d227570646174696e672d7468652d73637265656e223e718a55063c2f6469763e718b5d718c28553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e718d55063c2f6469763e718e5d718f2855063c626f64793e719055073c2f626f64793e71915d71922855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e719355073c2f68746d6c3e71944e6565656555073c2f6469763e0a7195553a3c64697620636c6173733d2273656374696f6e222069643d22696e766f6b696e672d636f6d6d616e64732d66726f6d2d73637269707473223e0a719655763c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313422206e616d653d22696e766f6b696e672d636f6d6d616e64732d66726f6d2d73637269707473223e496e766f6b696e6720636f6d6d616e64732066726f6d20736372697074733c2f613e3c2f68313e0a71976573550d302e302e31302e302e32352e3171987d719958120000007273745f687474705f617474726962757465719a5d719b2855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d343722206e616d653d22687474702d6e6f64652d6d61726b65722d3437223e719c55043c2f613e719d5d719e2855243c64697620636c6173733d2273656374696f6e222069643d226974657261746f7273223e719f55063c2f6469763e71a05d71a12855443c64697620636c6173733d2273656374696f6e222069643d2273756d6d6172792d6f662d7468652d766e6f64652d616e642d706f736974696f6e2d636c6173736573223e71a255063c2f6469763e71a35d71a428553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e71a555063c2f6469763e71a65d71a72855063c626f64793e71a855073c2f626f64793e71a95d71aa2855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e71ab55073c2f68746d6c3e71ac4e656565656555073c2f6469763e0a71ad55233c64697620636c6173733d2273656374696f6e222069643d2267657474657273223e0a71ae55483c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964323422206e616d653d2267657474657273223e476574746572733c2f613e3c2f68323e0a71af6573550d302e302e31302e302e32352e3071b07d71b158120000007273745f687474705f61747472696275746571b25d71b32855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d343522206e616d653d22687474702d6e6f64652d6d61726b65722d3435223e71b455043c2f613e71b55d71b62855443c64697620636c6173733d2273656374696f6e222069643d2273756d6d6172792d6f662d7468652d766e6f64652d616e642d706f736974696f6e2d636c6173736573223e71b755063c2f6469763e71b85d71b928553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e71ba55063c2f6469763e71bb5d71bc2855063c626f64793e71bd55073c2f626f64793e71be5d71bf2855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e71c055073c2f68746d6c3e71c14e6565656555253c64697620636c6173733d2273656374696f6e222069643d226974657261746f7273223e0a71c2554c3c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964323322206e616d653d226974657261746f7273223e4974657261746f72733c2f613e3c2f68323e0a71c36573550d302e302e31302e302e32352e3271c47d71c558120000007273745f687474705f61747472696275746571c65d71c72855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d343922206e616d653d22687474702d6e6f64652d6d61726b65722d3439223e71c855043c2f613e71c95d71ca2855223c64697620636c6173733d2273656374696f6e222069643d2267657474657273223e71cb55063c2f6469763e71cc5d71cd2855443c64697620636c6173733d2273656374696f6e222069643d2273756d6d6172792d6f662d7468652d766e6f64652d616e642d706f736974696f6e2d636c6173736573223e71ce55063c2f6469763e71cf5d71d028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e71d155063c2f6469763e71d25d71d32855063c626f64793e71d455073c2f626f64793e71d55d71d62855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e71d755073c2f68746d6c3e71d84e656565656555073c2f6469763e0a71d955233c64697620636c6173733d2273656374696f6e222069643d2273657474657273223e0a71da55483c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964323522206e616d653d2273657474657273223e536574746572733c2f613e3c2f68323e0a71db65735509302e302e342e302e3971dc7d71dd58120000007273745f687474705f61747472696275746571de5d71df2855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d333722206e616d653d22687474702d6e6f64652d6d61726b65722d3337223e71e055043c2f613e71e15d71e22855263c64697620636c6173733d2273656374696f6e222069643d22672d726566696e64616c6c223e71e355063c2f6469763e71e45d71e528554f3c64697620636c6173733d2273656374696f6e222069643d2266756e6374696f6e732d666f722d66696e64696e672d616e642d6368616e67696e672d746578742d66726f6d2d73637269707473223e71e655063c2f6469763e71e75d71e828553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e71e955063c2f6469763e71ea5d71eb2855063c626f64793e71ec55073c2f626f64793e71ed5d71ee2855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e71ef55073c2f68746d6c3e71f04e656565656555073c2f6469763e0a71f155073c2f6469763e0a71f255353c64697620636c6173733d2273656374696f6e222069643d2272756e6e696e672d6c656f2d696e2d62617463682d6d6f6465223e0a71f3556c3c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313922206e616d653d2272756e6e696e672d6c656f2d696e2d62617463682d6d6f6465223e52756e6e696e67204c656f20696e206261746368206d6f64653c2f613e3c2f68313e0a71f46573550b302e302e31302e302e323571f57d71f658120000007273745f687474705f61747472696275746571f75d71f82855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d343322206e616d653d22687474702d6e6f64652d6d61726b65722d3433223e71f955043c2f613e71fa5d71fb28553a3c64697620636c6173733d2273656374696f6e222069643d227265646972656374696e672d6f75747075742d66726f6d2d73637269707473223e71fc55063c2f6469763e71fd5d71fe28553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e71ff55063c2f6469763e72000100005d72010100002855063c626f64793e720201000055073c2f626f64793e72030100005d72040100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e720501000055073c2f68746d6c3e72060100004e6565656555073c2f6469763e0a720701000055453c64697620636c6173733d2273656374696f6e222069643d2273756d6d6172792d6f662d7468652d766e6f64652d616e642d706f736974696f6e2d636c6173736573223e0a7208010000558c3c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964323222206e616d653d2273756d6d6172792d6f662d7468652d766e6f64652d616e642d706f736974696f6e2d636c6173736573223e53756d6d617279206f662074686520766e6f646520616e6420706f736974696f6e20636c61737365733c2f613e3c2f68313e0a72090100006573550b302e302e31302e302e3237720a0100007d720b01000058120000007273745f687474705f617474726962757465720c0100005d720d0100002855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d333722206e616d653d22687474702d6e6f64652d6d61726b65722d3337223e720e01000055043c2f613e720f0100005d72100100002855263c64697620636c6173733d2273656374696f6e222069643d22672d726566696e64616c6c223e721101000055063c2f6469763e72120100005d721301000028554f3c64697620636c6173733d2273656374696f6e222069643d2266756e6374696f6e732d666f722d66696e64696e672d616e642d6368616e67696e672d746578742d66726f6d2d73637269707473223e721401000055063c2f6469763e72150100005d721601000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e721701000055063c2f6469763e72180100005d72190100002855063c626f64793e721a01000055073c2f626f64793e721b0100005d721c0100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e721d01000055073c2f68746d6c3e721e0100004e656565656555073c2f6469763e0a721f01000055073c2f6469763e0a722001000055353c64697620636c6173733d2273656374696f6e222069643d2272756e6e696e672d6c656f2d696e2d62617463682d6d6f6465223e0a7221010000556c3c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313922206e616d653d2272756e6e696e672d6c656f2d696e2d62617463682d6d6f6465223e52756e6e696e67204c656f20696e206261746368206d6f64653c2f613e3c2f68313e0a72220100006573550d302e302e31352e302e31382e3072230100007d72240100005808000000616e6e6f746174657225010000540c01000037643731303032383535303837303732363936663732363937343739373130313238363336313665366536663734363137343635306135343662353036393633366236633635353636313732306137313032366637313033346430663237363235353034366536663634363537313035323836383032366637313036353530343636363936633635373130373632353530323632363737313038323836383032366637313039353530303731306136323535303936313732363336383635373437393730363537313062323836383032366637313063353530353466373436383635373237313064363235353032363636373731306532383638303236663731306636383061363237353265722601000073550a302e302e31302e302e3272270100007d722801000058120000007273745f687474705f61747472696275746572290100005d722a0100002855443c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d3122206e616d653d22687474702d6e6f64652d6d61726b65722d31223e722b01000055043c2f613e722c0100005d722d01000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e722e01000055063c2f6469763e722f0100005d72300100002855063c626f64793e723101000055073c2f626f64793e72320100005d72330100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e723401000055073c2f68746d6c3e72350100004e65656555243c64697620636c6173733d2273656374696f6e222069643d226f76657276696577223e0a723601000055493c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643122206e616d653d226f76657276696577223e4f766572766965773c2f613e3c2f68313e0a72370100006573550a302e302e31302e302e3572380100007d723901000058120000007273745f687474705f617474726962757465723a0100005d723b0100002855443c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d3722206e616d653d22687474702d6e6f64652d6d61726b65722d37223e723c01000055043c2f613e723d0100005d723e0100002855353c64697620636c6173733d2273656374696f6e222069643d22672d65732d77726974652d746f2d7468652d6c6f672d70616e65223e723f01000055063c2f6469763e72400100005d724101000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e724201000055063c2f6469763e72430100005d72440100002855063c626f64793e724501000055073c2f626f64793e72460100005d72470100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e724801000055073c2f68746d6c3e72490100004e6565656555073c2f6469763e0a724a01000055463c64697620636c6173733d2273656374696f6e222069643d226170702d77696e646f776c6973742d7468652d6c6973742d6f662d616c6c2d6f70656e2d6672616d6573223e0a724b010000558e3c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643422206e616d653d226170702d77696e646f776c6973742d7468652d6c6973742d6f662d616c6c2d6f70656e2d6672616d6573223e6170702e77696e646f774c6973743a20746865206c697374206f6620616c6c206f70656e206672616d65733c2f613e3c2f68313e0a724c0100006573550a302e302e31302e302e34724d0100007d724e01000058120000007273745f687474705f617474726962757465724f0100005d72500100002855443c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d3522206e616d653d22687474702d6e6f64652d6d61726b65722d35223e725101000055043c2f613e72520100005d72530100002855403c64697620636c6173733d2273656374696f6e222069643d22672d746f702d7468652d636f6d6d616e6465722d6f662d7468652d746f702d77696e646f77223e725401000055063c2f6469763e72550100005d725601000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e725701000055063c2f6469763e72580100005d72590100002855063c626f64793e725a01000055073c2f626f64793e725b0100005d725c0100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e725d01000055073c2f68746d6c3e725e0100004e6565656555073c2f6469763e0a725f01000055363c64697620636c6173733d2273656374696f6e222069643d22672d65732d77726974652d746f2d7468652d6c6f672d70616e65223e0a726001000055703c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643322206e616d653d22672d65732d77726974652d746f2d7468652d6c6f672d70616e65223e672e657328293a20777269746520746f20746865206c6f672070616e653c2f613e3c2f68313e0a72610100006573550a302e302e31302e302e3672620100007d726301000058120000007273745f687474705f61747472696275746572640100005d72650100002855443c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d3922206e616d653d22687474702d6e6f64652d6d61726b65722d39223e726601000055043c2f613e72670100005d72680100002855453c64697620636c6173733d2273656374696f6e222069643d226170702d77696e646f776c6973742d7468652d6c6973742d6f662d616c6c2d6f70656e2d6672616d6573223e726901000055063c2f6469763e726a0100005d726b01000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e726c01000055063c2f6469763e726d0100005d726e0100002855063c626f64793e726f01000055073c2f626f64793e72700100005d72710100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e727201000055073c2f68746d6c3e72730100004e6565656555073c2f6469763e0a727401000055463c64697620636c6173733d2273656374696f6e222069643d2267657474696e672d616e642d73657474696e672d686561646c696e652d616e642d626f64792d74657874223e0a7275010000558d3c68313e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643522206e616d653d2267657474696e672d616e642d73657474696e672d686561646c696e652d616e642d626f64792d74657874223e47657474696e6720616e642073657474696e6720686561646c696e6520616e6420626f647920746578743c2f613e3c2f68313e0a72760100006573550d302e302e31302e302e31302e3172770100007d727801000058120000007273745f687474705f61747472696275746572790100005d727a0100002855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d313522206e616d653d22687474702d6e6f64652d6d61726b65722d3135223e727b01000055043c2f613e727c0100005d727d01000028552a3c64697620636c6173733d2273656374696f6e222069643d22632d616c6c6e6f6465732d69746572223e727e01000055063c2f6469763e727f0100005d728001000028552e3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e728101000055063c2f6469763e72820100005d728301000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e728401000055063c2f6469763e72850100005d72860100002855063c626f64793e728701000055073c2f626f64793e72880100005d72890100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e728a01000055073c2f68746d6c3e728b0100004e656565656555073c2f6469763e0a728c010000552b3c64697620636c6173733d2273656374696f6e222069643d22702d6368696c6472656e2d69746572223e0a728d01000055573c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643822206e616d653d22702d6368696c6472656e2d69746572223e702e6368696c6472656e5f697465723c2f613e3c2f68323e0a728e0100006573550d302e302e31302e302e31302e30728f0100007d729001000058120000007273745f687474705f61747472696275746572910100005d72920100002855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d313322206e616d653d22687474702d6e6f64652d6d61726b65722d3133223e729301000055043c2f613e72940100005d729501000028552e3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e729601000055063c2f6469763e72970100005d729801000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e729901000055063c2f6469763e729a0100005d729b0100002855063c626f64793e729c01000055073c2f626f64793e729d0100005d729e0100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e729f01000055073c2f68746d6c3e72a00100004e65656565552b3c64697620636c6173733d2273656374696f6e222069643d22632d616c6c6e6f6465732d69746572223e0a72a101000055573c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643722206e616d653d22632d616c6c6e6f6465732d69746572223e632e616c6c4e6f6465735f697465723c2f613e3c2f68323e0a72a20100006573550d302e302e31302e302e31302e3372a30100007d72a401000058120000007273745f687474705f61747472696275746572a50100005d72a60100002855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d313922206e616d653d22687474702d6e6f64652d6d61726b65722d3139223e72a701000055043c2f613e72a80100005d72a90100002855453c64697620636c6173733d2273656374696f6e222069643d22702d706172656e74732d697465722d616e642d702d73656c662d616e642d706172656e74732d69746572223e72aa01000055063c2f6469763e72ab0100005d72ac01000028552e3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e72ad01000055063c2f6469763e72ae0100005d72af01000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e72b001000055063c2f6469763e72b10100005d72b20100002855063c626f64793e72b301000055073c2f626f64793e72b40100005d72b50100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e72b601000055073c2f68746d6c3e72b70100004e656565656555073c2f6469763e0a72b801000055493c64697620636c6173733d2273656374696f6e222069643d22702d7369626c696e67732d697465722d616e642d702d666f6c6c6f77696e672d7369626c696e67732d69746572223e0a72b901000055943c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313022206e616d653d22702d7369626c696e67732d697465722d616e642d702d666f6c6c6f77696e672d7369626c696e67732d69746572223e702e7369626c696e67735f6974657220616e6420702e666f6c6c6f77696e675f7369626c696e67735f697465723c2f613e3c2f68323e0a72ba0100006573550d302e302e31302e302e31302e3272bb0100007d72bc01000058120000007273745f687474705f61747472696275746572bd0100005d72be0100002855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d313722206e616d653d22687474702d6e6f64652d6d61726b65722d3137223e72bf01000055043c2f613e72c00100005d72c101000028552a3c64697620636c6173733d2273656374696f6e222069643d22702d6368696c6472656e2d69746572223e72c201000055063c2f6469763e72c30100005d72c401000028552e3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e72c501000055063c2f6469763e72c60100005d72c701000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e72c801000055063c2f6469763e72c90100005d72ca0100002855063c626f64793e72cb01000055073c2f626f64793e72cc0100005d72cd0100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e72ce01000055073c2f68746d6c3e72cf0100004e656565656555073c2f6469763e0a72d001000055463c64697620636c6173733d2273656374696f6e222069643d22702d706172656e74732d697465722d616e642d702d73656c662d616e642d706172656e74732d69746572223e0a72d1010000558d3c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d222369643922206e616d653d22702d706172656e74732d697465722d616e642d702d73656c662d616e642d706172656e74732d69746572223e702e706172656e74735f6974657220616e6420702e73656c665f616e645f706172656e74735f697465723c2f613e3c2f68323e0a72d20100006573550d302e302e31302e302e31302e3572d30100007d72d401000058120000007273745f687474705f61747472696275746572d50100005d72d60100002855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d323322206e616d653d22687474702d6e6f64652d6d61726b65722d3233223e72d701000055043c2f613e72d80100005d72d90100002855453c64697620636c6173733d2273656374696f6e222069643d22702d737562747265652d697465722d616e642d702d73656c662d616e642d737562747265652d69746572223e72da01000055063c2f6469763e72db0100005d72dc01000028552e3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e72dd01000055063c2f6469763e72de0100005d72df01000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e72e001000055063c2f6469763e72e10100005d72e20100002855063c626f64793e72e301000055073c2f626f64793e72e40100005d72e50100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e72e601000055073c2f68746d6c3e72e70100004e656565656555073c2f6469763e0a72e8010000553f3c64697620636c6173733d2273656374696f6e222069643d2274657374696e672d776865746865722d612d706f736974696f6e2d69732d76616c6964223e0a72e901000055803c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313222206e616d653d2274657374696e672d776865746865722d612d706f736974696f6e2d69732d76616c6964223e54657374696e672077686574686572206120706f736974696f6e2069732076616c69643c2f613e3c2f68323e0a72ea0100006573550d302e302e31302e302e31302e3472eb0100007d72ec01000058120000007273745f687474705f61747472696275746572ed0100005d72ee0100002855463c6120636c6173733d22746172676574222069643d22687474702d6e6f64652d6d61726b65722d323122206e616d653d22687474702d6e6f64652d6d61726b65722d3231223e72ef01000055043c2f613e72f00100005d72f10100002855483c64697620636c6173733d2273656374696f6e222069643d22702d7369626c696e67732d697465722d616e642d702d666f6c6c6f77696e672d7369626c696e67732d69746572223e72f201000055063c2f6469763e72f30100005d72f401000028552e3c64697620636c6173733d2273656374696f6e222069643d2274726176657273696e672d6f75746c696e6573223e72f501000055063c2f6469763e72f60100005d72f701000028553f3c64697620636c6173733d22646f63756d656e74222069643d22636861707465722d372d736372697074696e672d6c656f2d776974682d707974686f6e223e72f801000055063c2f6469763e72f90100005d72fa0100002855063c626f64793e72fb01000055073c2f626f64793e72fc0100005d72fd0100002855433c68746d6c20786d6c6e733d22687474703a2f2f7777772e77332e6f72672f313939392f7868746d6c2220786d6c3a6c616e673d22656e22206c616e673d22656e223e72fe01000055073c2f68746d6c3e72ff0100004e656565656555073c2f6469763e0a720002000055463c64697620636c6173733d2273656374696f6e222069643d22702d737562747265652d697465722d616e642d702d73656c662d616e642d737562747265652d69746572223e0a7201020000558e3c68323e3c6120636c6173733d22746f632d6261636b7265662220687265663d22236964313122206e616d653d22702d737562747265652d697465722d616e642d702d73656c662d616e642d737562747265652d69746572223e702e737562747265655f6974657220616e6420702e73656c665f616e645f737562747265655f697465723c2f613e3c2f68323e0a72020200006573752e" |
457 | @@ -89,7 +89,7 @@ | |||
458 | 89 | </v> | 89 | </v> |
459 | 90 | </v> | 90 | </v> |
460 | 91 | </v> | 91 | </v> |
462 | 92 | <v t="edream.110203163054.46"><vh>Release Notes</vh> | 92 | <v t="edream.110203163054.46" a="E"><vh>Release Notes</vh> |
463 | 93 | <v t="edream.110203163054.117"><vh>Previous versions...</vh> | 93 | <v t="edream.110203163054.117"><vh>Previous versions...</vh> |
464 | 94 | <v t="ekr.20050210102358"><vh>4.0... New read logic eliminates read errors, eliminated child indices</vh> | 94 | <v t="ekr.20050210102358"><vh>4.0... New read logic eliminates read errors, eliminated child indices</vh> |
465 | 95 | <v t="edream.110203163054.66"><vh>4.0.1 through 4.0.4</vh></v> | 95 | <v t="edream.110203163054.66"><vh>4.0.1 through 4.0.4</vh></v> |
466 | @@ -1996,23 +1996,6 @@ | |||
467 | 1996 | </v> | 1996 | </v> |
468 | 1997 | </v> | 1997 | </v> |
469 | 1998 | </v> | 1998 | </v> |
470 | 1999 | </v> | ||
471 | 2000 | </v> | ||
472 | 2001 | <v t="edream.110203163054.63"><vh>Latest version</vh> | ||
473 | 2002 | <v t="ekr.20090324145450.20"><vh>What's New in Leo 4.6</vh> | ||
474 | 2003 | <v t="ekr.20090324145450.21"><vh>@rst html\new-4-6.html</vh> | ||
475 | 2004 | <v t="ekr.20090324145450.22"><vh>@rst-no-head links</vh></v> | ||
476 | 2005 | <v t="ekr.20090620073906.12095"><vh>Improved unit testing</vh></v> | ||
477 | 2006 | <v t="ekr.20090324145450.23" a="M"><vh>Improved file handling</vh></v> | ||
478 | 2007 | <v t="ekr.20090620082840.5608"><vh>Improved handling of rST files</vh></v> | ||
479 | 2008 | <v t="ekr.20090324145450.27"><vh>New code features</vh></v> | ||
480 | 2009 | <v t="ekr.20090324145450.36"><vh>New command-line options</vh></v> | ||
481 | 2010 | <v t="ekr.20090324145450.40"><vh>New commands</vh></v> | ||
482 | 2011 | <v t="ekr.20090324145450.46"><vh>New and improved directives</vh></v> | ||
483 | 2012 | <v t="ekr.20090324145450.49" a="M"><vh>New settings</vh></v> | ||
484 | 2013 | <v t="ekr.20090324145450.54"><vh>Plugins</vh></v> | ||
485 | 2014 | </v> | ||
486 | 2015 | </v> | ||
487 | 2016 | <v t="ekr.20090717084250.10808"><vh>4.6 final</vh> | 1999 | <v t="ekr.20090717084250.10808"><vh>4.6 final</vh> |
488 | 2017 | <v t="ekr.20090717084250.10809"><vh>Bug fixes</vh> | 2000 | <v t="ekr.20090717084250.10809"><vh>Bug fixes</vh> |
489 | 2018 | <v t="ekr.20090717084250.10810"><vh>Bugs fixed in 4.6 b2</vh> | 2001 | <v t="ekr.20090717084250.10810"><vh>Bugs fixed in 4.6 b2</vh> |
490 | @@ -2132,6 +2115,140 @@ | |||
491 | 2132 | </v> | 2115 | </v> |
492 | 2133 | </v> | 2116 | </v> |
493 | 2134 | </v> | 2117 | </v> |
494 | 2118 | <v t="edream.110203163054.63" a="E"><vh>Latest version</vh> | ||
495 | 2119 | <v t="ekr.20090324145450.20"><vh>What's New in Leo 4.6</vh> | ||
496 | 2120 | <v t="ekr.20090324145450.21"><vh>@rst html\new-4-6.html</vh> | ||
497 | 2121 | <v t="ekr.20090324145450.22"><vh>@rst-no-head links</vh></v> | ||
498 | 2122 | <v t="ekr.20090620073906.12095"><vh>Improved unit testing</vh></v> | ||
499 | 2123 | <v t="ekr.20090324145450.23" a="M"><vh>Improved file handling</vh></v> | ||
500 | 2124 | <v t="ekr.20090620082840.5608"><vh>Improved handling of rST files</vh></v> | ||
501 | 2125 | <v t="ekr.20090324145450.27"><vh>New code features</vh></v> | ||
502 | 2126 | <v t="ekr.20090324145450.36"><vh>New command-line options</vh></v> | ||
503 | 2127 | <v t="ekr.20090324145450.40"><vh>New commands</vh></v> | ||
504 | 2128 | <v t="ekr.20090324145450.46"><vh>New and improved directives</vh></v> | ||
505 | 2129 | <v t="ekr.20090324145450.49" a="M"><vh>New settings</vh></v> | ||
506 | 2130 | <v t="ekr.20090324145450.54"><vh>Plugins</vh></v> | ||
507 | 2131 | </v> | ||
508 | 2132 | </v> | ||
509 | 2133 | <v t="ekr.20090718092032.10405"><vh>4.6.1 final</vh> | ||
510 | 2134 | <v t="ekr.20090718092032.10406"><vh>Bug fixes</vh> | ||
511 | 2135 | <v t="ekr.20090718092032.10407"><vh>Bugs fixed in 4.6 b2</vh> | ||
512 | 2136 | <v t="ekr.20090718092032.10408"><vh>Added patch for startup logic</vh></v> | ||
513 | 2137 | <v t="ekr.20090718092032.10409"><vh>Allocate gnx's when nodes are created</vh></v> | ||
514 | 2138 | <v t="ekr.20090718092032.10410"><vh>Allow block comments in private shadow files</vh></v> | ||
515 | 2139 | <v t="ekr.20090718092032.10411"><vh>Compute delims from private shadow file as needed</vh></v> | ||
516 | 2140 | <v t="ekr.20090718092032.10412"><vh>Don't copy @edit trees to outline</vh></v> | ||
517 | 2141 | <v t="ekr.20090718092032.10413"><vh>Don't expand ancestors of @chapter node when selecting chapter</vh></v> | ||
518 | 2142 | <v t="ekr.20090718092032.10414"><vh>Entries in recent files menu now have absolute paths</vh></v> | ||
519 | 2143 | <v t="ekr.20090718092032.10415"><vh>Fixed (worked around) tk chapters bug</vh></v> | ||
520 | 2144 | <v t="ekr.20090718092032.10416"><vh>Fixed @edit bug</vh></v> | ||
521 | 2145 | <v t="ekr.20090718092032.10417"><vh>Fixed @shadow crasher</vh></v> | ||
522 | 2146 | <v t="ekr.20090718092032.10418"><vh>Fixed @thin bug</vh></v> | ||
523 | 2147 | <v t="ekr.20090718092032.10419"><vh>Fixed back-to-home so it works as expected</vh></v> | ||
524 | 2148 | <v t="ekr.20090718092032.10420"><vh>Fixed bad @verbatim bug</vh></v> | ||
525 | 2149 | <v t="ekr.20090718092032.10421"><vh>Fixed binding problem with notebook</vh></v> | ||
526 | 2150 | <v t="ekr.20090718092032.10422"><vh>Fixed bug: sorting could revert headline changes</vh></v> | ||
527 | 2151 | <v t="ekr.20090718092032.10423"><vh>Fixed crash when reading .zip files</vh></v> | ||
528 | 2152 | <v t="ekr.20090718092032.10424"><vh>Fixed crasher when creating .leoID.txt</vh></v> | ||
529 | 2153 | <v t="ekr.20090718092032.10425"><vh>Fixed dabbrev-expands bug</vh></v> | ||
530 | 2154 | <v t="ekr.20090718092032.10426"><vh>Fixed elisp importer problem</vh></v> | ||
531 | 2155 | <v t="ekr.20090718092032.10427"><vh>Fixed F10/11/12 key bug</vh></v> | ||
532 | 2156 | <v t="ekr.20090718092032.10428"><vh>Fixed file bug re unicode characters</vh></v> | ||
533 | 2157 | <v t="ekr.20090718092032.10429"><vh>Fixed hoist problems</vh></v> | ||
534 | 2158 | <v t="ekr.20090718092032.10430"><vh>Fixed lost anchor bug page up/down</vh></v> | ||
535 | 2159 | <v t="ekr.20090718092032.10431"><vh>Fixed minor @auto bug</vh></v> | ||
536 | 2160 | <v t="ekr.20090718092032.10432"><vh>Fixed multiple-editor focus problems</vh></v> | ||
537 | 2161 | <v t="ekr.20090718092032.10433"><vh>Fixed new command</vh></v> | ||
538 | 2162 | <v t="ekr.20090718092032.10434"><vh>Fixed problems with change-all command</vh></v> | ||
539 | 2163 | <v t="ekr.20090718092032.10435"><vh>Fixed read clone bug</vh></v> | ||
540 | 2164 | <v t="ekr.20090718092032.10436"><vh>Fixed rst import bug</vh></v> | ||
541 | 2165 | <v t="ekr.20090718092032.10437"><vh>Fixed rst3 problem</vh></v> | ||
542 | 2166 | <v t="ekr.20090718092032.10438"><vh>Fixed seg-fault bug</vh></v> | ||
543 | 2167 | <v t="ekr.20090718092032.10439"><vh>Fixed Shift-Arrow in headlines</vh></v> | ||
544 | 2168 | <v t="ekr.20090718092032.10440"><vh>Fixed startup problem</vh></v> | ||
545 | 2169 | <v t="ekr.20090718092032.10441"><vh>Fixed stubConfig problems</vh></v> | ||
546 | 2170 | <v t="ekr.20090718092032.10442"><vh>Fixed undo bug</vh></v> | ||
547 | 2171 | <v t="ekr.20090718092032.10443"><vh>Fixed vim bindings (dd) bug</vh></v> | ||
548 | 2172 | <v t="ekr.20090718092032.10444"><vh>Investigated bug: File->Export->write failed due to incorrect path</vh></v> | ||
549 | 2173 | <v t="ekr.20090718092032.10445"><vh>Investigated speed of external unit tests</vh></v> | ||
550 | 2174 | <v t="ekr.20090718092032.10446"><vh>Made @url nodes work with qt gui</vh></v> | ||
551 | 2175 | <v t="ekr.20090718092032.10447"><vh>Mark @<file> nodes dirty when @path nodes change</vh></v> | ||
552 | 2176 | <v t="ekr.20090718092032.10448"><vh>Removed duplicate messages when opening non-existent .leo file</vh></v> | ||
553 | 2177 | <v t="ekr.20090718092032.10449"><vh>Reversed messages about redefined keys</vh></v> | ||
554 | 2178 | <v t="ekr.20090718092032.10450"><vh>Scroll commands now affect only scrollbars</vh></v> | ||
555 | 2179 | </v> | ||
556 | 2180 | <v t="ekr.20090718092032.10451"><vh>Bugs fixed in 4.6 b1</vh> | ||
557 | 2181 | <v t="ekr.20090718092032.10452"><vh>Fixed goto-global-line crasher</vh></v> | ||
558 | 2182 | <v t="ekr.20090718092032.10453"><vh>Fixed bug that prevented Leo from opening files on the XP desktop</vh></v> | ||
559 | 2183 | <v t="ekr.20090718092032.10454"><vh>Save/restore tnodeList in atFile.write</vh></v> | ||
560 | 2184 | <v t="ekr.20090718092032.10455"><vh>Paste outline problem</vh></v> | ||
561 | 2185 | <v t="ekr.20090718092032.10456"><vh>Made sure $Home works for @nosent</vh></v> | ||
562 | 2186 | <v t="ekr.20090718092032.10457"><vh>Fixed atFile unicode bug</vh></v> | ||
563 | 2187 | <v t="ekr.20090718092032.10458"><vh>Fixed Mark Edgington's @shadow bug</vh></v> | ||
564 | 2188 | <v t="ekr.20090718092032.10459"><vh>Fixed whitespace problems with @auto/@shadow</vh></v> | ||
565 | 2189 | <v t="ekr.20090718092032.10460"><vh>Fixed nested @path problem</vh></v> | ||
566 | 2190 | <v t="ekr.20090718092032.10461"><vh>Fixed encoding problems with rst3 plugin</vh></v> | ||
567 | 2191 | <v t="ekr.20090718092032.10462"><vh>Fixed new rst3 crash</vh></v> | ||
568 | 2192 | <v t="ekr.20090718092032.10463"><vh>Fixed two c syntax-coloring bugs</vh></v> | ||
569 | 2193 | </v> | ||
570 | 2194 | </v> | ||
571 | 2195 | <v t="ekr.20090718092032.10464"><vh>New features</vh> | ||
572 | 2196 | <v t="ekr.20090718092032.10465"><vh>New features in 4.6 b1</vh> | ||
573 | 2197 | <v t="ekr.20090718092032.10466"><vh>Improved file handling</vh> | ||
574 | 2198 | <v t="ekr.20090718092032.10467"><vh>Open a default .leo file if no other is specified</vh></v> | ||
575 | 2199 | <v t="ekr.20090718092032.10468"><vh>Added escapes for underindented lines</vh></v> | ||
576 | 2200 | <v t="ekr.20090718092032.10469"><vh>Warn when writing an externally changed file</vh></v> | ||
577 | 2201 | </v> | ||
578 | 2202 | <v t="ekr.20090718092032.10470"><vh>New code features</vh> | ||
579 | 2203 | <v t="ekr.20090718092032.10471"><vh>Added autoCompleter.getExternalCompletions</vh></v> | ||
580 | 2204 | <v t="ekr.20090718092032.10472"><vh>Added g.posList</vh></v> | ||
581 | 2205 | <v t="ekr.20090718092032.10473"><vh>Better plugin info</vh></v> | ||
582 | 2206 | <v t="ekr.20090718092032.10474"><vh>Added properties to leoNodes.py</vh></v> | ||
583 | 2207 | <v t="ekr.20090718092032.10475"><vh>Added script to leoSettings.leo to ensure all menu items are valid</vh></v> | ||
584 | 2208 | <v t="ekr.20090718092032.10476"><vh>Added c.config.getSettingSource</vh></v> | ||
585 | 2209 | <v t="ekr.20090718092032.10477"><vh>Predefined 'self' in @test/@suite nodes</vh></v> | ||
586 | 2210 | <v t="ekr.20090718092032.10478"><vh>Added c.getNodePath and c.getNodeFileName</vh></v> | ||
587 | 2211 | </v> | ||
588 | 2212 | <v t="ekr.20090718092032.10479"><vh>New command-line options</vh> | ||
589 | 2213 | <v t="ekr.20090718092032.10480"><vh>Added -c option to specify config files</vh></v> | ||
590 | 2214 | <v t="ekr.20090718092032.10481"><vh>Added support for --file=fileName command-line option</vh></v> | ||
591 | 2215 | <v t="ekr.20090718092032.10482"><vh>Added support for --gui option</vh></v> | ||
592 | 2216 | </v> | ||
593 | 2217 | <v t="ekr.20090718092032.10483"><vh>New commands</vh> | ||
594 | 2218 | <v t="ekr.20090718092032.10484"><vh>Added smart home (back-to-home) command</vh></v> | ||
595 | 2219 | <v t="ekr.20090718092032.10485"><vh>The open command creates @edit nodes when opening non-.leo files</vh></v> | ||
596 | 2220 | <v t="ekr.20090718092032.10486"><vh>added pdb minibuffer command</vh></v> | ||
597 | 2221 | <v t="ekr.20090718092032.10487"><vh>Added support for smart_tab setting</vh></v> | ||
598 | 2222 | <v t="ekr.20090718092032.10488"><vh>Improved isearch commands</vh></v> | ||
599 | 2223 | </v> | ||
600 | 2224 | <v t="ekr.20090718092032.10489"><vh>New and improved directives</vh> | ||
601 | 2225 | <v t="ekr.20090718092032.10490"><vh>Added @nocolor-node directive</vh></v> | ||
602 | 2226 | <v t="ekr.20090718092032.10491"><vh>Improved @path handling</vh></v> | ||
603 | 2227 | </v> | ||
604 | 2228 | <v t="ekr.20090718092032.10492"><vh>New settings</vh> | ||
605 | 2229 | <v t="ekr.20090718092032.10493"><vh>Added better default fonts for Leo on Linux</vh></v> | ||
606 | 2230 | <v t="ekr.20090718092032.10494"><vh>Added support for @int icon_bar_widgets_per_row setting</vh></v> | ||
607 | 2231 | <v t="ekr.20090718092032.10495"><vh>Added support for meta keys</vh></v> | ||
608 | 2232 | <v t="ekr.20090718092032.10496"><vh>Use myLeoSettings when opening leoSettings.leo</vh></v> | ||
609 | 2233 | </v> | ||
610 | 2234 | <v t="ekr.20090718092032.10497"><vh>Plugins</vh> | ||
611 | 2235 | <v t="ekr.20090718092032.10498"><vh>Improved nav_buttons plugin and corresponding nodeHistory class</vh></v> | ||
612 | 2236 | <v t="ekr.20090718092032.10499"><vh>Created qtGui and tkGui plugins</vh></v> | ||
613 | 2237 | <v t="ekr.20090718092032.10500"><vh>Created leoGuiPluginsRef.leo</vh></v> | ||
614 | 2238 | </v> | ||
615 | 2239 | </v> | ||
616 | 2240 | <v t="ekr.20090718092032.10501"><vh>New features in 4.6 b2</vh> | ||
617 | 2241 | <v t="ekr.20090718092032.10502"><vh>Allow Leo to open any file</vh></v> | ||
618 | 2242 | <v t="ekr.20090718092032.10503"><vh>Improved unit testing</vh></v> | ||
619 | 2243 | <v t="ekr.20090718092032.10504"><vh>Leo tests syntax of .py files when saving them</vh></v> | ||
620 | 2244 | <v t="ekr.20090718092032.10505"><vh>Made qt gui the default</vh></v> | ||
621 | 2245 | <v t="ekr.20090718092032.10506"><vh>Support @auto-rst</vh></v> | ||
622 | 2246 | </v> | ||
623 | 2247 | <v t="ekr.20090718092032.10507"><vh>New features in 4.6 final</vh></v> | ||
624 | 2248 | </v> | ||
625 | 2249 | </v> | ||
626 | 2250 | </v> | ||
627 | 2251 | </v> | ||
628 | 2135 | </vnodes> | 2252 | </vnodes> |
629 | 2136 | <tnodes> | 2253 | <tnodes> |
630 | 2137 | <t tx="EKR.20040518070558">Leo 4.2 alpha 2 May 18, 2004 | 2254 | <t tx="EKR.20040518070558">Leo 4.2 alpha 2 May 18, 2004 |
631 | @@ -13971,6 +14088,7 @@ | |||
632 | 13971 | 14088 | ||
633 | 13972 | http://leo-editor.googlegroups.com/web/625-leo-window.png?gda=Fjn-hkQAAACaem1_7XPo9S1KnEkCtDqka_lw8qfHa3YHzOgIlt5IjVd5eKdLdCg0nUt3E6wDF75V6u9SiETdg0Q2ffAyHU-dzc4BZkLnSFWX59nr5BxGqA | 14089 | http://leo-editor.googlegroups.com/web/625-leo-window.png?gda=Fjn-hkQAAACaem1_7XPo9S1KnEkCtDqka_lw8qfHa3YHzOgIlt5IjVd5eKdLdCg0nUt3E6wDF75V6u9SiETdg0Q2ffAyHU-dzc4BZkLnSFWX59nr5BxGqA |
634 | 13973 | </t> | 14090 | </t> |
635 | 14091 | <t tx="ekr.20090711120622.10447"></t> | ||
636 | 13974 | <t tx="ekr.20090712122931.10453"></t> | 14092 | <t tx="ekr.20090712122931.10453"></t> |
637 | 13975 | <t tx="ekr.20090717084250.10702"></t> | 14093 | <t tx="ekr.20090717084250.10702"></t> |
638 | 13976 | <t tx="ekr.20090717084250.10703"></t> | 14094 | <t tx="ekr.20090717084250.10703"></t> |
639 | @@ -14352,6 +14470,388 @@ | |||
640 | 14352 | <t tx="ekr.20090717084250.10908"></t> | 14470 | <t tx="ekr.20090717084250.10908"></t> |
641 | 14353 | <t tx="ekr.20090717084250.10909"></t> | 14471 | <t tx="ekr.20090717084250.10909"></t> |
642 | 14354 | <t tx="ekr.20090717084250.10910">Leo now warns on dangerous writes to @thin and @file nodes.</t> | 14472 | <t tx="ekr.20090717084250.10910">Leo now warns on dangerous writes to @thin and @file nodes.</t> |
643 | 14473 | <t tx="ekr.20090718092032.10405">Leo 4.6.1 final July 18, 2009 | ||
644 | 14474 | |||
645 | 14475 | Leo 4.6.1 final is now available at: | ||
646 | 14476 | http://sourceforge.net/project/showfiles.php?group_id=3458&package_id=29106 | ||
647 | 14477 | |||
648 | 14478 | Leo is a text editor, data organizer, project manager and much more. See: | ||
649 | 14479 | http://webpages.charter.net/edreamleo/intro.html | ||
650 | 14480 | |||
651 | 14481 | Leo 4.6.1 fixes two bugs in Leo 4.6: | ||
652 | 14482 | |||
653 | 14483 | - Leo's signon is now printed properly. | ||
654 | 14484 | - Opening a file from the File menu now leaves the new window on top. | ||
655 | 14485 | |||
656 | 14486 | The highlights of Leo 4.6 | ||
657 | 14487 | -------------------------- | ||
658 | 14488 | |||
659 | 14489 | - Cached external files *greatly* reduces the time to load .leo files. | ||
660 | 14490 | - Leo now features a modern Qt interface by default. | ||
661 | 14491 | Leo's legacy Tk interface can also be used. | ||
662 | 14492 | - New --config, --file and --gui command-line options. | ||
663 | 14493 | - Leo tests syntax of .py files when saving them. | ||
664 | 14494 | - Leo can now open any kind of file into @edit nodes. | ||
665 | 14495 | - @auto-rst nodes allow easy editing of reStructuredText files. | ||
666 | 14496 | - Properties of commanders, positions and nodes simplify programming. | ||
667 | 14497 | - Improved Leo's unit testing framework. | ||
668 | 14498 | - Leo now requires Python 2.5 or later. | ||
669 | 14499 | - Dozens of small improvements and bug fixes. | ||
670 | 14500 | |||
671 | 14501 | Links: | ||
672 | 14502 | ------ | ||
673 | 14503 | Leo: http://webpages.charter.net/edreamleo/front.html | ||
674 | 14504 | Forum: http://groups.google.com/group/leo-editor | ||
675 | 14505 | Download: http://sourceforge.net/project/showfiles.php?group_id=3458 | ||
676 | 14506 | Bzr: http://code.launchpad.net/leo-editor/ | ||
677 | 14507 | Quotes: http://webpages.charter.net/edreamleo/testimonials.html</t> | ||
678 | 14508 | <t tx="ekr.20090718092032.10406"></t> | ||
679 | 14509 | <t tx="ekr.20090718092032.10407"></t> | ||
680 | 14510 | <t tx="ekr.20090718092032.10408">A patch at the start of loadOnePlugin prevents leo from crashing and allows the | ||
681 | 14511 | gui prompt for a leoID to come up.</t> | ||
682 | 14512 | <t tx="ekr.20090718092032.10409">This is reasonable now that old-style file indices are rare.</t> | ||
683 | 14513 | <t tx="ekr.20090718092032.10410">Html files are a good test case.</t> | ||
684 | 14514 | <t tx="ekr.20090718092032.10411"></t> | ||
685 | 14515 | <t tx="ekr.20090718092032.10412">http://bugs.launchpad.net/leo-editor/+bug/376634 | ||
686 | 14516 | |||
687 | 14517 | The fix was to putVnodes.</t> | ||
688 | 14518 | <t tx="ekr.20090718092032.10413"></t> | ||
689 | 14519 | <t tx="ekr.20090718092032.10414">http://bugs.launchpad.net/leo-editor/+bug/383204</t> | ||
690 | 14520 | <t tx="ekr.20090718092032.10415">http://groups.google.com/group/leo-editor/browse_thread/thread/981c27d5c24c90f8</t> | ||
691 | 14521 | <t tx="ekr.20090718092032.10416">The generated @nocolor line now ends with a newline.</t> | ||
692 | 14522 | <t tx="ekr.20090718092032.10417">http://groups.google.com/group/leo-editor/browse_thread/thread/6cab5e676d4d75a0</t> | ||
693 | 14523 | <t tx="ekr.20090718092032.10418">- Removed forceGnxOnPosition from leoImport.py and leoAtFile.py. | ||
694 | 14524 | |||
695 | 14525 | - readStartNode now always uses root.v for the first node | ||
696 | 14526 | instead of calling createThinChild4</t> | ||
697 | 14527 | <t tx="ekr.20090718092032.10419">https://bugs.launchpad.net/leo-editor/+bug/367462 | ||
698 | 14528 | |||
699 | 14529 | The expected/customary behaviour (one you get used to in almost every editor) is: | ||
700 | 14530 | |||
701 | 14531 | End: always move to end of line | ||
702 | 14532 | Home: Move to first visible chararacter on the line. When pressing home again, move to column zero. If Home is pressed one more time, move to first visible character again. | ||
703 | 14533 | |||
704 | 14534 | This is also the way emacs behaves, though ctrl+a always moves to column zero.</t> | ||
705 | 14535 | <t tx="ekr.20090718092032.10420">The @verbatim was being inserted into the outline. | ||
706 | 14536 | </t> | ||
707 | 14537 | <t tx="ekr.20090718092032.10421"></t> | ||
708 | 14538 | <t tx="ekr.20090718092032.10422"></t> | ||
709 | 14539 | <t tx="ekr.20090718092032.10423">The problem arose when reading a zipped file: | ||
710 | 14540 | |||
711 | 14541 | File "C:\Programme\Leo-4-6-b1\leo\core\leoFileCommands.py", line | ||
712 | 14542 | 1265, in parse_leo_file | ||
713 | 14543 | s = theFile.read() | ||
714 | 14544 | TypeError: read() takes at least 2 arguments (1 given) | ||
715 | 14545 | saved: [zipped] Dive-into-Python-3.leo | ||
716 | 14546 | </t> | ||
717 | 14547 | <t tx="ekr.20090718092032.10424">exception loading plugin | ||
718 | 14548 | Traceback (most recent call last): | ||
719 | 14549 | |||
720 | 14550 | File "C:\leo.repo\trunk\leo\core\leoPlugins.py", line 429, in loadOnePlugin | ||
721 | 14551 | loadedModulesFilesDict[moduleName] = g.app.config.enabledPluginsFileName | ||
722 | 14552 | |||
723 | 14553 | AttributeError: StubConfig instance has no attribute 'enabledPluginsFileName' | ||
724 | 14554 | |||
725 | 14555 | leoID='ekr' | ||
726 | 14556 | .leoID.txt created in C:\Documents and Settings\HP_Administrator\My Documents\Edward\.leo | ||
727 | 14557 | load </t> | ||
728 | 14558 | <t tx="ekr.20090718092032.10425">http://bugs.launchpad.net/leo-editor/+bug/362048 | ||
729 | 14559 | |||
730 | 14560 | I have 'dabbrev-expands' bound to the F4 key. When I press F4 after | ||
731 | 14561 | the word "freq" in a body pane containing the word "frequency" then | ||
732 | 14562 | Leo 4.5.1 shows a hour-glass for a while before giving an empty | ||
733 | 14563 | dabbrev-expand: prompt in the minibuffer. | ||
734 | 14564 | |||
735 | 14565 | If I back up one character, putting point between the e and q and then | ||
736 | 14566 | type F4, I get the expected behavior: the word "frequency" is inserted | ||
737 | 14567 | immediately. | ||
738 | 14568 | |||
739 | 14569 | What I did: | ||
740 | 14570 | |||
741 | 14571 | - Removed "not ready messages". | ||
742 | 14572 | - Made the code undoable. | ||
743 | 14573 | - Added wimpy unit test.</t> | ||
744 | 14574 | <t tx="ekr.20090718092032.10426"></t> | ||
745 | 14575 | <t tx="ekr.20090718092032.10427">Added call to isFKey in k.handleUnboundKeys. | ||
746 | 14576 | </t> | ||
747 | 14577 | <t tx="ekr.20090718092032.10428">http://bugs.launchpad.net/leo-editor/+bug/376189</t> | ||
748 | 14578 | <t tx="ekr.20090718092032.10429">http://bugs.launchpad.net/leo-editor/+bug/382221 | ||
749 | 14579 | </t> | ||
750 | 14580 | <t tx="ekr.20090718092032.10430">http://bugs.launchpad.net/leo-editor/+bug/363403 | ||
751 | 14581 | |||
752 | 14582 | With a long body text you might place the cursor on a line, hold down Shift, and | ||
753 | 14583 | PgDn several pages to select a large block of text. The last PgDn may overshoot | ||
754 | 14584 | the range you want selected, so you should be able to use UpArrow to bring the | ||
755 | 14585 | bottom of the range back up to where you want it. However, on the first UpArrow | ||
756 | 14586 | the selection is lost and restarted from the current cursor position. I.e. you | ||
757 | 14587 | end up with just one line selected, instead of trimming one line of the | ||
758 | 14588 | selection of several pages, as intended. | ||
759 | 14589 | </t> | ||
760 | 14590 | <t tx="ekr.20090718092032.10431">http://bugs.launchpad.net/leo-editor/+bug/306671 | ||
761 | 14591 | |||
762 | 14592 | If a Leo editor window is opened, and the "NewHeadline" node is renamed to | ||
763 | 14593 | "@auto <path to some valid file>", and then the "File->Read/Write->Read @auto | ||
764 | 14594 | nodes" menu option is selected, the renamed node reverts to its previous name | ||
765 | 14595 | ("NewHeadline"), and nothing is loaded into the node.</t> | ||
766 | 14596 | <t tx="ekr.20090718092032.10432">http://groups.google.com/group/leo-editor/browse_thread/thread/21bddd50f3400bdc?hl=en</t> | ||
767 | 14597 | <t tx="ekr.20090718092032.10433">The outline wasn't being redrawn properly.</t> | ||
768 | 14598 | <t tx="ekr.20090718092032.10434">http://groups.google.com/group/leo-editor/browse_thread/thread/430287018f9d773d | ||
769 | 14599 | |||
770 | 14600 | The fix to minibufferFind.changeAll fixes a bug that is several years old. | ||
771 | 14601 | The fix to findNextMatch fixes a bug that is likely much older than that.</t> | ||
772 | 14602 | <t tx="ekr.20090718092032.10435"></t> | ||
773 | 14603 | <t tx="ekr.20090718092032.10436"></t> | ||
774 | 14604 | <t tx="ekr.20090718092032.10437">http://mail.google.com/mail/#inbox/11ef0076a3f4d866</t> | ||
775 | 14605 | <t tx="ekr.20090718092032.10438">The crash happened inside the call to:: | ||
776 | 14606 | |||
777 | 14607 | c.widgetWantsFocusNow(event.widget) | ||
778 | 14608 | |||
779 | 14609 | in callAltXFunction. Actually, the crash happened later, in c.outerUpdate. | ||
780 | 14610 | |||
781 | 14611 | A better fix would be to use wrappers for all edit widgets, and recalculate the | ||
782 | 14612 | edit widget any it needs to be used.</t> | ||
783 | 14613 | <t tx="ekr.20090718092032.10439"></t> | ||
784 | 14614 | <t tx="ekr.20090718092032.10440">http://groups.google.com/group/leo-editor/browse_thread/thread/606277d73b193037</t> | ||
785 | 14615 | <t tx="ekr.20090718092032.10441"></t> | ||
786 | 14616 | <t tx="ekr.20090718092032.10442">onTextChanged in the qt gui was calling setUndoTypingParams, in many case | ||
787 | 14617 | redundently and with bad params. | ||
788 | 14618 | |||
789 | 14619 | It remains to be seen whether onTextChanged is ever needed. If it is, it may be | ||
790 | 14620 | difficult to set the old selection properly.</t> | ||
791 | 14621 | <t tx="ekr.20090718092032.10443">http://bugs.launchpad.net/leo-editor/+bug/353925 | ||
792 | 14622 | |||
793 | 14623 | The "kill-region" function did nothing when using the qt gui. | ||
794 | 14624 | |||
795 | 14625 | The fix was to replace tag_ranges with w.getSelectionRange, etc. | ||
796 | 14626 | This was the only call to tag_ranges in the core.</t> | ||
797 | 14627 | <t tx="ekr.20090718092032.10444">http://bugs.launchpad.net/leo-editor/+bug/377907 | ||
798 | 14628 | |||
799 | 14629 | I'm going to mark this invalid, although the behavior is way too confusing. | ||
800 | 14630 | |||
801 | 14631 | I added the following to the plugin's docstring: | ||
802 | 14632 | |||
803 | 14633 | Configuration | ||
804 | 14634 | ~~~~~~~~~~~~~ | ||
805 | 14635 | |||
806 | 14636 | At present, the file leo/plugins/leo_to_html.ini contains configuration settings. | ||
807 | 14637 | In particular, the default export path, "c:\" must be changed for *nix systems. | ||
808 | 14638 | </t> | ||
809 | 14639 | <t tx="ekr.20090718092032.10445">The problem is imports in the Commands ctor. When executed the first time from | ||
810 | 14640 | the bridge the imports take about 3/4 sec. on my machine. There is nothing that | ||
811 | 14641 | can or should be done. Ctrl-5 is still hugely faster than opening unitTest.leo!</t> | ||
812 | 14642 | <t tx="ekr.20090718092032.10446"></t> | ||
813 | 14643 | <t tx="ekr.20090718092032.10447"></t> | ||
814 | 14644 | <t tx="ekr.20090718092032.10448"></t> | ||
815 | 14645 | <t tx="ekr.20090718092032.10449">http://groups.google.com/group/leo-editor/browse_thread/thread/a04dcefbb672078f</t> | ||
816 | 14646 | <t tx="ekr.20090718092032.10450"></t> | ||
817 | 14647 | <t tx="ekr.20090718092032.10451"></t> | ||
818 | 14648 | <t tx="ekr.20090718092032.10452"></t> | ||
819 | 14649 | <t tx="ekr.20090718092032.10453"></t> | ||
820 | 14650 | <t tx="ekr.20090718092032.10454">The code should save/restore, just as in the clean_file function (from scripts.leo)</t> | ||
821 | 14651 | <t tx="ekr.20090718092032.10455">The problem was missing calls to initAfterLoad in c.new.</t> | ||
822 | 14652 | <t tx="ekr.20090718092032.10456">http://groups.google.com/group/leo-editor/browse_thread/thread/f27e3514310a5c90</t> | ||
823 | 14653 | <t tx="ekr.20090718092032.10457"></t> | ||
824 | 14654 | <t tx="ekr.20090718092032.10458"></t> | ||
825 | 14655 | <t tx="ekr.20090718092032.10459">Pulled trunk, got r1599 | ||
826 | 14656 | |||
827 | 14657 | python launchLeo.py leo/plugins/leoPlugins.leo | ||
828 | 14658 | |||
829 | 14659 | go to | ||
830 | 14660 | |||
831 | 14661 | Plugins-->Graph world-->@shadow backlink.py-->backlink declarations | ||
832 | 14662 | |||
833 | 14663 | All I did was add the full stop at the end of the docstring, but see | ||
834 | 14664 | the diff: | ||
835 | 14665 | |||
836 | 14666 | === modified file 'leo/plugins/backlink.py' | ||
837 | 14667 | --- leo/plugins/backlink.py 2009-02-19 18:16:01 +0000 | ||
838 | 14668 | +++ leo/plugins/backlink.py 2009-02-25 22:14:46 +0000 | ||
839 | 14669 | @@ -1,4 +1,4 @@ | ||
840 | 14670 | -'''Backlink - allow arbitrary links between nodes | ||
841 | 14671 | +'''Backlink - allow arbitrary links between nodes. | ||
842 | 14672 | ''' | ||
843 | 14673 | |||
844 | 14674 | # Notes | ||
845 | 14675 | @@ -296,7 +296,7 @@ | ||
846 | 14676 | break | ||
847 | 14677 | else: | ||
848 | 14678 | self.showMessage("Error: no such link") | ||
849 | 14679 | - | ||
850 | 14680 | + | ||
851 | 14681 | gcc = getattr(self.c, 'graphcanvasController') | ||
852 | 14682 | if gcc: | ||
853 | 14683 | gcc.update() | ||
854 | 14684 | </t> | ||
855 | 14685 | <t tx="ekr.20090718092032.10460">http://groups.google.com/group/leo-editor/browse_thread/thread/7d8325d055cbef30</t> | ||
856 | 14686 | <t tx="ekr.20090718092032.10461">http://groups.google.com/group/leo-editor/browse_thread/thread/5f5219fedd977ec2 | ||
857 | 14687 | </t> | ||
858 | 14688 | <t tx="ekr.20090718092032.10462">http://groups.google.com/group/leo-editor/browse_thread/thread/414137b93c7e4b90 | ||
859 | 14689 | |||
860 | 14690 | Calls g.makeAllNonExistentDirectories instead of os.mkdir.</t> | ||
861 | 14691 | <t tx="ekr.20090718092032.10463">http://groups.google.com/group/leo-editor/browse_thread/thread/707a910f975f3715 | ||
862 | 14692 | |||
863 | 14693 | http://groups.google.com/group/leo-editor/browse_thread/thread/74c6ab4809bde980 | ||
864 | 14694 | |||
865 | 14695 | There were two separate bugs: | ||
866 | 14696 | |||
867 | 14697 | 1. The eol_span and eol_span_regex now honor the mode's escape character. | ||
868 | 14698 | |||
869 | 14699 | 2. colorRangeWithTag now colors delegates with the default tag color. | ||
870 | 14700 | |||
871 | 14701 | No changes were made in modes/c.py or modes/c.xml.</t> | ||
872 | 14702 | <t tx="ekr.20090718092032.10464"></t> | ||
873 | 14703 | <t tx="ekr.20090718092032.10465"></t> | ||
874 | 14704 | <t tx="ekr.20090718092032.10466"></t> | ||
875 | 14705 | <t tx="ekr.20090718092032.10467">http://groups.google.com/group/leo-editor/browse_thread/thread/d6449236bc140713# | ||
876 | 14706 | |||
877 | 14707 | Added support for @string default_leo_file = ~/.leo/workbook.leo</t> | ||
878 | 14708 | <t tx="ekr.20090718092032.10468">@string underindent-escape-string = \-</t> | ||
879 | 14709 | <t tx="ekr.20090718092032.10469">http://groups.google.com/group/leo-editor/browse_thread/thread/c80fd8375534afdf</t> | ||
880 | 14710 | <t tx="ekr.20090718092032.10470"></t> | ||
881 | 14711 | <t tx="ekr.20090718092032.10471">@nocolor | ||
882 | 14712 | |||
883 | 14713 | http://groups.google.com/group/leo-editor/browse_thread/thread/4ad91984a6d0acac | ||
884 | 14714 | |||
885 | 14715 | > As I said, all I need would be is for leo to call callback/hook with | ||
886 | 14716 | > signature like | ||
887 | 14717 | > def complete(line-up-to-cursor, current_node) => list of strings | ||
888 | 14718 | |||
889 | 14719 | The actual signature is: | ||
890 | 14720 | |||
891 | 14721 | theObject,completionList = getExternalCompletions (self,s,p=None,language='python') | ||
892 | 14722 | |||
893 | 14723 | p is used only to get the language, or you can set the language by hand. | ||
894 | 14724 | |||
895 | 14725 | @color</t> | ||
896 | 14726 | <t tx="ekr.20090718092032.10472"></t> | ||
897 | 14727 | <t tx="ekr.20090718092032.10473">c.config.doEnabledPlugins sets g.app.config.enabledPluginsFileName</t> | ||
898 | 14728 | <t tx="ekr.20090718092032.10474">p.b, p.h and p.gnx | ||
899 | 14729 | t.b, t.h, t.gnx and t.u | ||
900 | 14730 | v.b, v.h, v.gnx, and v.u</t> | ||
901 | 14731 | <t tx="ekr.20090718092032.10475"></t> | ||
902 | 14732 | <t tx="ekr.20090718092032.10476">c.config.getSettingSource('show_full_tracebacks_in_scripts') | ||
903 | 14733 | returns the name of the file which Leo used to determine the setting | ||
904 | 14734 | |||
905 | 14735 | - D indicates default settings. | ||
906 | 14736 | - F indicates the file being loaded | ||
907 | 14737 | - L indicates leoSettings.leo | ||
908 | 14738 | - M indicates myLeoSettings.leo</t> | ||
909 | 14739 | <t tx="ekr.20090718092032.10477"></t> | ||
910 | 14740 | <t tx="ekr.20090718092032.10478">http://groups.google.com/group/leo-editor/browse_thread/thread/3b5f1232ecc6bba7</t> | ||
911 | 14741 | <t tx="ekr.20090718092032.10479"></t> | ||
912 | 14742 | <t tx="ekr.20090718092032.10480">@nocolor | ||
913 | 14743 | |||
914 | 14744 | The setting is called -c or --config. The one-config-file arg no longer exists. | ||
915 | 14745 | |||
916 | 14746 | http://groups.google.com/group/leo-editor/browse_thread/thread/f3f95d93bcd93b94 | ||
917 | 14747 | |||
918 | 14748 | Personally, I'd like to see another config file available via -c on | ||
919 | 14749 | the command line: | ||
920 | 14750 | (a common idiom) | ||
921 | 14751 | |||
922 | 14752 | leo myproject.leo -c /usr/lib/myproject/myLeoSettings.leo | ||
923 | 14753 | |||
924 | 14754 | or better yet: | ||
925 | 14755 | |||
926 | 14756 | leo myproject.leo -c /etc/leo/style01.leo | ||
927 | 14757 | leo myotherproject.leo -c /etc/leo/style02.leo | ||
928 | 14758 | leo anotherproject.leo -c /etc/leo/style23.leo | ||
929 | 14759 | |||
930 | 14760 | Each file opens in an editor with the shortcuts, buttons, commands, | ||
931 | 14761 | plugins, appearance etc. that has been tuned for that data management task. | ||
932 | 14762 | |||
933 | 14763 | or best yet: | ||
934 | 14764 | |||
935 | 14765 | leo myproject.leo -c /usr/lib/python2.5/site-packages/leo/config/style94.leo | ||
936 | 14766 | |||
937 | 14767 | ================== | ||
938 | 14768 | |||
939 | 14769 | http://groups.google.com/group/leo-editor/browse_thread/thread/b5a736089079acaf# | ||
940 | 14770 | |||
941 | 14771 | Please, I think each file has a distinct and required role. | ||
942 | 14772 | |||
943 | 14773 | - config/leoSettings.leo = Edward's base, required for a sane starting point | ||
944 | 14774 | |||
945 | 14775 | - home/.leo/myLeoSettings.leo = adjust Edwards suggestions to taste | ||
946 | 14776 | |||
947 | 14777 | - cwd/myLeoSettings.leo = provide a customized working environment in | ||
948 | 14778 | this folder | ||
949 | 14779 | |||
950 | 14780 | - leo -c /usr/lib/leo-editor/src/config/zope3_ide.leo = | ||
951 | 14781 | - open this file in a specialized environments, mine or community contributed | ||
952 | 14782 | - ... | ||
953 | 14783 | |||
954 | 14784 | - currentfile/@settings = | ||
955 | 14785 | - I'm working on some customization ideas | ||
956 | 14786 | - Here, try out this Leo file I sent you, check out all the spiffy | ||
957 | 14787 | modifications | ||
958 | 14788 | |||
959 | 14789 | @color</t> | ||
960 | 14790 | <t tx="ekr.20090718092032.10481">Only .zip and .leo extensions are allowed at present.</t> | ||
961 | 14791 | <t tx="ekr.20090718092032.10482"></t> | ||
962 | 14792 | <t tx="ekr.20090718092032.10483"></t> | ||
963 | 14793 | <t tx="ekr.20090718092032.10484"></t> | ||
964 | 14794 | <t tx="ekr.20090718092032.10485">http://groups.google.com/group/leo-editor/browse_thread/thread/3417ff5e9c02c626 | ||
965 | 14795 | |||
966 | 14796 | The open file dialog now shows all files by default. | ||
967 | 14797 | Selecting a non-.leo file will load that file into a new node in the present outline. | ||
968 | 14798 | |||
969 | 14799 | This plugs what may have been the biggest hole in Leo's history. | ||
970 | 14800 | </t> | ||
971 | 14801 | <t tx="ekr.20090718092032.10486">This works, but stops Leo in the middle of the command-handling logic. | ||
972 | 14802 | |||
973 | 14803 | However, it is possible to pick up the commander by stepping out into | ||
974 | 14804 | k.masterKeyHandler or k.masterCommandHandler. Using c, one can then get all | ||
975 | 14805 | other info.</t> | ||
976 | 14806 | <t tx="ekr.20090718092032.10487">- Tab = indent when there is a text selection | ||
977 | 14807 | - Shift-Tab unindents always</t> | ||
978 | 14808 | <t tx="ekr.20090718092032.10488">Escape now ends isearch | ||
979 | 14809 | </t> | ||
980 | 14810 | <t tx="ekr.20090718092032.10489"></t> | ||
981 | 14811 | <t tx="ekr.20090718092032.10490"># Useful: we don't need a closing @color to enable coloring in descendants.</t> | ||
982 | 14812 | <t tx="ekr.20090718092032.10491"></t> | ||
983 | 14813 | <t tx="ekr.20090718092032.10492"></t> | ||
984 | 14814 | <t tx="ekr.20090718092032.10493">http://groups.google.com/group/leo-editor/browse_thread/thread/f1c7c5134b95c77e | ||
985 | 14815 | </t> | ||
986 | 14816 | <t tx="ekr.20090718092032.10494"></t> | ||
987 | 14817 | <t tx="ekr.20090718092032.10495">http://groups.google.com/group/leo-editor/browse_thread/thread/b6a39ed672a28c65?pli=1</t> | ||
988 | 14818 | <t tx="ekr.20090718092032.10496">Changed config.get so that settings in leoSettings.leo are read *last*. | ||
989 | 14819 | This means that myLeoSettings.leo will override leoSettings.leo, | ||
990 | 14820 | even when leoSettings.leo is the local file.</t> | ||
991 | 14821 | <t tx="ekr.20090718092032.10497"></t> | ||
992 | 14822 | <t tx="ekr.20090718092032.10498"></t> | ||
993 | 14823 | <t tx="ekr.20090718092032.10499"></t> | ||
994 | 14824 | <t tx="ekr.20090718092032.10500">This contains all gui plugins.</t> | ||
995 | 14825 | <t tx="ekr.20090718092032.10501"></t> | ||
996 | 14826 | <t tx="ekr.20090718092032.10502">Leo can now open, for example, any .py file. | ||
997 | 14827 | It will be put in an @edit node in an otherwise-empty outline. | ||
998 | 14828 | |||
999 | 14829 | This allows Leo to be associated with the edit action of .py files. | ||
1000 | 14830 | Something like this:: | ||
1001 | 14831 | |||
1002 | 14832 | C:\Python26\python.exe "c:\leo.repo\trunk\launchLeo.py" --gui=qt %1 %2</t> | ||
1003 | 14833 | <t tx="ekr.20090718092032.10503">- leoDynamicTest.py now supports a --path argument giving the .leo file. | ||
1004 | 14834 | This is so useful! | ||
1005 | 14835 | |||
1006 | 14836 | - leoDynamicTest.py now honors the --silent argument. | ||
1007 | 14837 | |||
1008 | 14838 | - leoTest.runUnitTestLeoFile runs all unit tests in a given .leo file | ||
1009 | 14839 | in a separate process. | ||
1010 | 14840 | |||
1011 | 14841 | - leoTest.runTestsExternally calls runUnitTestLeoFile after creating | ||
1012 | 14842 | dynamicUnitTest.leo. | ||
1013 | 14843 | |||
1014 | 14844 | - When reporting that no unit tests were found, all unit tests commands tell | ||
1015 | 14845 | whether the entire outline or just the selected outline was searched. | ||
1016 | 14846 | This fixes sometimes-misleading error messages. | ||
1017 | 14847 | |||
1018 | 14848 | - test.leo contains a 'run-test.leo-tests' button. | ||
1019 | 14849 | |||
1020 | 14850 | - leoPy.leo contains a 'run-all-core-tests' button.</t> | ||
1021 | 14851 | <t tx="ekr.20090718092032.10504"></t> | ||
1022 | 14852 | <t tx="ekr.20090718092032.10505"></t> | ||
1023 | 14853 | <t tx="ekr.20090718092032.10506"></t> | ||
1024 | 14854 | <t tx="ekr.20090718092032.10507">Leo now warns on dangerous writes to @thin and @file nodes.</t> | ||
1025 | 14355 | <t tx="ville.20090520232034.6345">g.app.gui.runScrolledMessageDialog(c=c, msg = u'rst:' + p.b)</t> | 14855 | <t tx="ville.20090520232034.6345">g.app.gui.runScrolledMessageDialog(c=c, msg = u'rst:' + p.b)</t> |
1026 | 14356 | <t tx="ville.20090705224948.5734">import os | 14856 | <t tx="ville.20090705224948.5734">import os |
1027 | 14357 | pos = c.find_h("@thin leoUserGuide.txt")[0] | 14857 | pos = c.find_h("@thin leoUserGuide.txt")[0] |
1028 | 14358 | 14858 | ||
1029 | === modified file 'leo/doc/PKG-INFO.TXT' | |||
1030 | --- leo/doc/PKG-INFO.TXT 2009-07-09 14:33:18 +0000 | |||
1031 | +++ leo/doc/PKG-INFO.TXT 2009-07-18 14:35:31 +0000 | |||
1032 | @@ -1,6 +1,6 @@ | |||
1033 | 1 | Metadata-Version: 1.0 | 1 | Metadata-Version: 1.0 |
1034 | 2 | Name: leo | 2 | Name: leo |
1036 | 3 | Version: 4.6-rc1 | 3 | Version: 4.6.1-final |
1037 | 4 | Summary: Leo: Literate Editor with Outlines | 4 | Summary: Leo: Literate Editor with Outlines |
1038 | 5 | Home-page: http://webpages.charter.net/edreamleo/front.html | 5 | Home-page: http://webpages.charter.net/edreamleo/front.html |
1039 | 6 | Author: Edward K. Ream | 6 | Author: Edward K. Ream |
1040 | 7 | 7 | ||
1041 | === modified file 'leo/doc/README.TXT' | |||
1042 | --- leo/doc/README.TXT 2009-07-10 19:07:58 +0000 | |||
1043 | +++ leo/doc/README.TXT 2009-07-18 14:35:31 +0000 | |||
1044 | @@ -1,12 +1,17 @@ | |||
1046 | 1 | Leo 4.6 release candidate 1 July 9, 2009 | 1 | Leo 4.6.1 final July 18, 2009 |
1047 | 2 | 2 | ||
1049 | 3 | Leo 4.6 rc1 is now available at: | 3 | Leo 4.6.1 final is now available at: |
1050 | 4 | http://sourceforge.net/project/showfiles.php?group_id=3458&package_id=29106 | 4 | http://sourceforge.net/project/showfiles.php?group_id=3458&package_id=29106 |
1051 | 5 | 5 | ||
1052 | 6 | Leo is a text editor, data organizer, project manager and much more. See: | 6 | Leo is a text editor, data organizer, project manager and much more. See: |
1053 | 7 | http://webpages.charter.net/edreamleo/intro.html | 7 | http://webpages.charter.net/edreamleo/intro.html |
1054 | 8 | 8 | ||
1056 | 9 | The highlights of Leo 4.6: | 9 | Leo 4.6.1 fixes two bugs in Leo 4.6: |
1057 | 10 | |||
1058 | 11 | - Leo's signon is now printed properly. | ||
1059 | 12 | - Opening a file from the File menu now leaves the new window on top. | ||
1060 | 13 | |||
1061 | 14 | The highlights of Leo 4.6 | ||
1062 | 10 | -------------------------- | 15 | -------------------------- |
1063 | 11 | 16 | ||
1064 | 12 | - Cached external files *greatly* reduces the time to load .leo files. | 17 | - Cached external files *greatly* reduces the time to load .leo files. |
1065 | 13 | 18 | ||
1066 | === modified file 'leo/plugins/nav_qt.py' | |||
1067 | --- leo/plugins/nav_qt.py 2009-06-29 13:16:25 +0000 | |||
1068 | +++ leo/plugins/nav_qt.py 2009-07-24 21:00:30 +0000 | |||
1069 | @@ -88,15 +88,15 @@ | |||
1070 | 88 | #@+node:ville.20090518182905.7867:clickPrev | 88 | #@+node:ville.20090518182905.7867:clickPrev |
1071 | 89 | def clickPrev(self): | 89 | def clickPrev(self): |
1072 | 90 | c = self.c | 90 | c = self.c |
1074 | 91 | p = c.nodeHistory.goPrev() | 91 | p = c.goPrevVisitedNode() |
1075 | 92 | # g.trace(p) | 92 | # g.trace(p) |
1077 | 93 | if p: c.selectPosition(p) | 93 | #if p: c.selectPosition(p) |
1078 | 94 | 94 | ||
1079 | 95 | #@-node:ville.20090518182905.7867:clickPrev | 95 | #@-node:ville.20090518182905.7867:clickPrev |
1080 | 96 | #@+node:ville.20090518182905.7868:clickNext | 96 | #@+node:ville.20090518182905.7868:clickNext |
1081 | 97 | def clickNext(self): | 97 | def clickNext(self): |
1082 | 98 | c = self.c | 98 | c = self.c |
1084 | 99 | p = c.nodeHistory.goNext() | 99 | p = c.goNextVisitedNode() |
1085 | 100 | # g.trace(p) | 100 | # g.trace(p) |
1086 | 101 | if p: c.selectPosition(p) | 101 | if p: c.selectPosition(p) |
1087 | 102 | #@-node:ville.20090518182905.7868:clickNext | 102 | #@-node:ville.20090518182905.7868:clickNext |
1088 | 103 | 103 | ||
1089 | === modified file 'leo/plugins/plugins_menu.py' | |||
1090 | --- leo/plugins/plugins_menu.py 2009-06-19 13:56:12 +0000 | |||
1091 | +++ leo/plugins/plugins_menu.py 2009-07-22 15:16:22 +0000 | |||
1092 | @@ -476,6 +476,7 @@ | |||
1093 | 476 | def properties(self, event=None): | 476 | def properties(self, event=None): |
1094 | 477 | """Display a modal properties dialog for this plugin""" | 477 | """Display a modal properties dialog for this plugin""" |
1095 | 478 | 478 | ||
1096 | 479 | if g.app.gui.guiName() != 'tkinter': return | ||
1097 | 479 | 480 | ||
1098 | 480 | if self.hasapply: | 481 | if self.hasapply: |
1099 | 481 | 482 | ||
1100 | 482 | 483 | ||
1101 | === modified file 'leo/plugins/qtGui.py' | |||
1102 | --- leo/plugins/qtGui.py 2009-07-18 13:46:03 +0000 | |||
1103 | +++ leo/plugins/qtGui.py 2009-07-24 15:35:43 +0000 | |||
1104 | @@ -7557,7 +7557,7 @@ | |||
1105 | 7557 | self.flag = True # Per-node enable/disable flag. | 7557 | self.flag = True # Per-node enable/disable flag. |
1106 | 7558 | self.killColorFlag = False | 7558 | self.killColorFlag = False |
1107 | 7559 | self.language = 'python' # set by scanColorDirectives. | 7559 | self.language = 'python' # set by scanColorDirectives. |
1109 | 7560 | self.max_chars_to_colorize = 10000 | 7560 | self.max_chars_to_colorize = c.config.getInt('qt_max_colorized_chars') or 0 |
1110 | 7561 | 7561 | ||
1111 | 7562 | # Step 2: create the highlighter. | 7562 | # Step 2: create the highlighter. |
1112 | 7563 | self.highlighter = leoQtSyntaxHighlighter(c,w,colorizer=self) | 7563 | self.highlighter = leoQtSyntaxHighlighter(c,w,colorizer=self) |
1113 | @@ -7577,7 +7577,7 @@ | |||
1114 | 7577 | 7577 | ||
1115 | 7578 | self.count += 1 # For unit testing. | 7578 | self.count += 1 # For unit testing. |
1116 | 7579 | 7579 | ||
1118 | 7580 | if len(p.b) > self.max_chars_to_colorize: | 7580 | if len(p.b) > self.max_chars_to_colorize > 0: |
1119 | 7581 | self.flag = False | 7581 | self.flag = False |
1120 | 7582 | elif self.enabled: | 7582 | elif self.enabled: |
1121 | 7583 | oldLanguage = self.language | 7583 | oldLanguage = self.language |
1122 | @@ -7691,7 +7691,7 @@ | |||
1123 | 7691 | trace = False and not g.unitTesting | 7691 | trace = False and not g.unitTesting |
1124 | 7692 | p = p.copy() | 7692 | p = p.copy() |
1125 | 7693 | 7693 | ||
1127 | 7694 | if len(p.b) > self.max_chars_to_colorize: | 7694 | if len(p.b) > self.max_chars_to_colorize > 0: |
1128 | 7695 | self.flag = False | 7695 | self.flag = False |
1129 | 7696 | else: | 7696 | else: |
1130 | 7697 | # self.flag is True unless an unambiguous @nocolor is seen. | 7697 | # self.flag is True unless an unambiguous @nocolor is seen. |
1131 | 7698 | 7698 | ||
1132 | === modified file 'leo/test/unitTest.leo' | |||
1133 | --- leo/test/unitTest.leo 2009-07-04 15:46:03 +0000 | |||
1134 | +++ leo/test/unitTest.leo 2009-07-25 11:19:51 +0000 | |||
1135 | @@ -3,7 +3,7 @@ | |||
1136 | 3 | <leo_file> | 3 | <leo_file> |
1137 | 4 | <leo_header file_format="2" tnodes="0" max_tnode_index="0" clone_windows="0"/> | 4 | <leo_header file_format="2" tnodes="0" max_tnode_index="0" clone_windows="0"/> |
1138 | 5 | <globals body_outline_ratio="0.5"> | 5 | <globals body_outline_ratio="0.5"> |
1140 | 6 | <global_window_position top="117" left="488" height="822" width="783"/> | 6 | <global_window_position top="97" left="341" height="839" width="1133"/> |
1141 | 7 | <global_log_window_position top="0" left="0" height="0" width="0"/> | 7 | <global_log_window_position top="0" left="0" height="0" width="0"/> |
1142 | 8 | </globals> | 8 | </globals> |
1143 | 9 | <preferences/> | 9 | <preferences/> |
1144 | @@ -2077,7 +2077,7 @@ | |||
1145 | 2077 | </v> | 2077 | </v> |
1146 | 2078 | <v t="ekr.20040712101754.182"></v> | 2078 | <v t="ekr.20040712101754.182"></v> |
1147 | 2079 | </v> | 2079 | </v> |
1149 | 2080 | <v t="ekr.20040712101754.187" annotate="7d71002e"><vh> Position tests</vh> | 2080 | <v t="ekr.20040712101754.187" a="E" annotate="7d71002e"><vh> Position tests</vh> |
1150 | 2081 | <v t="ekr.20080418101332.1"><vh> Diabled tests</vh> | 2081 | <v t="ekr.20080418101332.1"><vh> Diabled tests</vh> |
1151 | 2082 | <v t="ekr.20040712101754.184"><vh>@@test consistency of p.v.t.vnodeList & v.parents for cloned nodes</vh></v> | 2082 | <v t="ekr.20040712101754.184"><vh>@@test consistency of p.v.t.vnodeList & v.parents for cloned nodes</vh></v> |
1152 | 2083 | <v t="ekr.20040712101754.208" annotate="7d71002e"><vh>@@test consistency of tnodeListAndParents</vh></v> | 2083 | <v t="ekr.20040712101754.208" annotate="7d71002e"><vh>@@test consistency of tnodeListAndParents</vh></v> |
1153 | @@ -17411,6 +17411,12 @@ | |||
1154 | 17411 | <t tx="ekr.20090102061858.2">child = p.insertAsLastChild() | 17411 | <t tx="ekr.20090102061858.2">child = p.insertAsLastChild() |
1155 | 17412 | assert c.positionExists(child) | 17412 | assert c.positionExists(child) |
1156 | 17413 | child.doDelete() | 17413 | child.doDelete() |
1157 | 17414 | assert not c.positionExists(child) | ||
1158 | 17415 | |||
1159 | 17416 | # also check the same on root level | ||
1160 | 17417 | child = c.rootPosition().insertAfter() | ||
1161 | 17418 | assert c.positionExists(child) | ||
1162 | 17419 | child.doDelete() | ||
1163 | 17414 | assert not c.positionExists(child)</t> | 17420 | assert not c.positionExists(child)</t> |
1164 | 17415 | <t tx="ekr.20090102062037.2">root = c.rootPosition() | 17421 | <t tx="ekr.20090102062037.2">root = c.rootPosition() |
1165 | 17416 | 17422 |
- Fix linear slowdown as you keep using Leo (e.g. unit tests run much faster)
- Nodehistory (back/forward arrows) work predictably
- c.positionExists works for root level nodes