<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi Davide,<div><br></div><div><br><div><div>On 26.04.2011, at 00:30, Davide Della Casa wrote:</div><br><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div></div><div>I have a couple of questions:</div><div><br></div><div>- Is there any further documentation I can read beside what's in <a href="http://www.lively-kernel.org/repository/webwerkstatt/documentation/">http://www.lively-kernel.org/repository/webwerkstatt/documentation/</a> ? Specifically around the structure of the code and how the page "boots"?</div><div><br></div></div></blockquote><div><br></div><div>since we refactored a lot the existing documentation to that topic is a bit outdated. But to keep it short:</div><div>Every page includes now only one external script: <span class="Apple-style-span" style="color: rgb(136, 18, 128); font-family: monospace; white-space: pre-wrap; "><script </span><span class="Apple-style-span" style="color: rgb(136, 18, 128); font-family: monospace; white-space: pre-wrap; "><span class="webkit-html-attribute-name">src</span></span><span class="Apple-style-span" style="color: rgb(136, 18, 128); font-family: monospace; white-space: pre-wrap; ">="</span><span class="Apple-style-span" style="color: rgb(136, 18, 128); font-family: monospace; white-space: pre-wrap; "><a class="webkit-html-attribute-value webkit-html-resource-link" target="_blank" href="http://lively-kernel.org/repository/webwerkstatt/lively/bootstrap.js">lively/bootstrap.js</a></span><span class="Apple-style-span" style="color: rgb(136, 18, 128); font-family: monospace; white-space: pre-wrap; ">"></span></div><meta charset="utf-8"><div>The path to that script is adapted during the serialization of that page.</div><div><br></div><div><div>The bootstrap.js supports the loading of old and new pages, which will be cleaned up after there are no old pages any more.</div><div>The data of the page lies in <span class="Apple-style-span" style="font-family: monospace; white-space: pre-wrap; "><span class="webkit-html-tag"><meta <span class="webkit-html-attribute-name">id</span>="<span class="webkit-html-attribute-value">LivelyJSONWorld</span>"></span></span><span class="Apple-style-span" style="font-family: monospace; white-space: pre-wrap; "><span class="webkit-html-comment"><![CDATA[{"id":0," ....</span></span></div></div><meta charset="utf-8"><div>In old pages the data is serialized as XML, which does not support the serialization of arbitrary objects as our new serialization mechanism does.</div><div><br></div><div>What the booting does is to load all the necessary modules to load that page. Deserialize all objects in LivelyJSONWorld and start the world. </div><div>In a normal page you will find loaded a file called combindedModules.js, this file is a statically generated file that bundles some of our core modules to speed up loading. </div><div><br></div><div>The modules can be changed by the localconfig of the wiki such in:</div><div><br></div><div><a href="http://www.lively-kernel.org/repository/webwerkstatt/lively/localconfig.js">http://www.lively-kernel.org/repository/webwerkstatt/lively/localconfig.js</a></div><div><meta charset="utf-8"><span class="Apple-style-span" style="font-family: Times; "><pre style="word-wrap: break-word; white-space: pre-wrap; ">Config.modulesOnWorldLoad = Config.modulesOnWorldLoad.concat(["lively.Graffle", "lively.Undo", "lively.ide.AutoCompletion", "lively.ide.SyntaxHighlighting", 'lively.Scripting'])</pre></span><div>and additionally every page can also add local requirements this way.</div><div><br></div></div><br><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div> - When I try to change the text in any textbox at <a href="http://www.lively-kernel.org/repository/webwerkstatt/documentation/GettingStarted.xhtml">http://www.lively-kernel.org/repository/webwerkstatt/documentation/GettingStarted.xhtml</a> I get "TypeError: Cannot call method 'getUndoHistory' of null" - is there a way around that?</div><div><br></div></div></blockquote><div><br></div><div>thanks for reporting, I fixed that.</div><div><br></div><div><br></div><div>Best,</div><div><br></div><div>Jens</div></div><br></div></body></html>