!Welcome to your ''tiddlyspot.com'' ~TiddlyWiki!\n''[[tiddlyspot.com|http://tiddlyspot.com]]'' gives you an instant [[TiddlyWiki|http://tiddlywiki.com]] hosted on our ''tiddlyspot.com'' servers.\n\nWant to work online? No problem, you can go to your ''tiddlyspot.com'' URL (which is http://tiddlyspot.com/kazam/ ) and start editing. Click "save to web" and your changes are saved directly to your ''tiddlyspot.com'' home -- no messing about with local files or ftp.\n\nWant to work offline? No problem, your ''tiddlyspot.com'' ~TiddlyWiki is a real, fully functioning ~TiddlyWiki that you can save onto your hard drive or USB stick. Use the link below to save to your local computer. As you make changes, use the "save to disk" button to save to your local file. Whenever you're ready to sync up again, just click "save to web".\n\n!To save online\nEnter the upload password provided when you created your ~TiddlyWiki. Then click the "save to web" button below (or in the right side column) to save your ~TiddlyWiki.\nUpload Password: <<option pasUploadPassword>>\n<<upload http://tiddlyspot.com/kazam/store.cgi index.html . . kazam>>\n\n!To save offline\nTo take this ~TiddlyWiki offline, click [[Download|http://tiddlyspot.com/?action=download&site=kazam]]. Save the file locally then open it in your browser.\n\n\n!Learn more about ~TiddlyWiki\nFind out more about ~TiddlyWiki at [[TiddlyWiki.com|http://tiddlywiki.com]]. Also visit [[TiddlyWiki Guides|http://tiddlywikiguides.org]] for documentation on learning and using ~TiddlyWiki.\n\nThe [[TiddlyWiki mailing list|http://groups.google.com/group/TiddlyWiki]] is an excellent place to ask questions and get help.\n\n!Enjoy!\nWe hope you like using your ''tiddlyspot.com'' ~TiddlyWiki. Please email [[feedback@tiddlyspot.com|mailto:feedback@tiddlyspot.com]] with any comments.\n\n----
<<option chkGenerateAnRssFeed>> GenerateAnRssFeed\n<<option chkOpenInNewWindow>> OpenLinksInNewWindow\n<<option chkSaveEmptyTemplate>> SaveEmptyTemplate\n<<option chkToggleLinks>> Clicking on links to tiddlers that are already open causes them to close\n^^(override with Control or other modifier key)^^\n<<option chkHttpReadOnly>> HideEditingFeatures when viewed over HTTP\n<<option chkForceMinorUpdate>> Treat edits as MinorChanges by preserving date and time\n^^(override with Shift key when clicking 'done' or by pressing Ctrl-Shift-Enter^^\n<<option chkConfirmDelete>> ConfirmBeforeDeleting\nMaximum number of lines in a tiddler edit box: <<option txtMaxEditRows>>\nFolder name for backup files: <<option txtBackupFolder>>\n\nYour username for signing your edits. Write it as a ~WikiWord (eg ~JoeBloggs)\n<<option txtUserName>>
\nDa ich den Spot nicht digital besitze, hier eine kleine Beschreibung plus Bildschirmschüsse: \n\n----\n\n<<imglink http://www.diemuellers.de/belege/TV/sAE01.jpg null null 11 210 160>><<imglink http://www.diemuellers.de/belege/TV/sAE02.jpg null null 11 210 160>>\nWir sehen ein typisches Londoner Taxi am Picadilly Circus, darin Lady Marjorie und Sir Mortimer. Er schaut aus dem Fenster: ''»So much has changed since we were last in London, dear.«''\n<<imglink http://www.diemuellers.de/belege/TV/sAE03.jpg null null 11 210 160>><<imglink http://www.diemuellers.de/belege/TV/sAE04.jpg null null 11 210 160>>\nSein Blick verweilt etwas länger als nötig auf einer hübschen Passantin.\nLady Marjorie registriert es und bemerkt spitz: ''»And some things never change.«'' \n<<imglink http://www.diemuellers.de/belege/TV/sAE05.jpg null null 11 210 160>><<imglink http://www.diemuellers.de/belege/TV/sAE06.jpg null null 11 210 160>>\nPeinlich berührt lenkt Sir Morimer ab, indem er Seiner Gattin ein Mint anbietet: ''»Yeah, just like our After Eight.«''\nDas Taxi hält gerade vor einer Ampel, Sir Mortimer reicht die Packung After Eight in Richtung des Fahrers, der eine Schirmmütze trägt und von hinten sehr ordentlich aussieht. Er bietet dem Fahrer ein After Eight an: ''»Don’t you agree, old chap?«''\n<<imglink http://www.diemuellers.de/belege/TV/sAE07.jpg null null 11 210 160>><<imglink http://www.diemuellers.de/belege/TV/sAE08.jpg null null 11 210 160>>\nDer Taxifahrer dreht sich um, nimmt dankbar an und antwortet in tiefstem Cockney. ''»Oh, After Eight. My favourites.«'' Mortimer und Marjorie erkennen, daß sich einiges geändert hat, denn es handelt sich doch tatsächlich um eine Frau. \n<<imglink http://www.diemuellers.de/belege/TV/sAE09.jpg null null 11 210 160>><<imglink http://www.diemuellers.de/belege/TV/sAE10.jpg null null 11 210 160>>\nSir Mortimer fällt vor Erstaunen die Kinnlade herunter, während Lady Marjorie amüsiert über ihren Mann schmunzelt.\nAngenehm überrascht sehen die beiden zu, wie die Fahrerin formvollendet ein After Eight herausnimmt und elegant abbeißt. Packshot, Claim: After Eight. Die feine englische Art.\n\n----
<<tabs txtMain\nLesen "demnächst" Lesen\nDabei "Gerade dabei" Dabei\nGelesen "vor kurzem" Gelesen\n>>
Gestern ausgelesen. Sehr gut. Ich frage mich, warum ich es in den letzten Jahren immer wieder zurückgelegt habe, wenn ich es in der Hand hatte. Aber wirklich empfehlenswert.
Ein Geschenk von Stephan. Ich hatte auch schon davon gelesen und fand es recht interessant. Max Tivolo kommt als Greis zuer Welt und lebt rückwärts. Das eigentliche Thema ist jedoch seine Liebe zu Alice und seine Freundschaft mit Hughie. Zentraler Satz: //Jeder ist die Liebe im Leben eines anderen//. \n\nDer Stil ist teilweise etwas melancholisch-hochgestochen, andererseits gelingen sehr schöne, ungewöhnliche Sätze und Bilder. Ein lesenswertes Buch aber nach [[Audrey Niffenegger|Audrey Niffenegger: Die Frau des Zeitreisenden]] bin ich erstmal für andere Bücher verloren.
Es stand in der Bücherei, zwar nicht auf englisch, aber man kann nicht alles haben. Nach den ersten Seiten zu urteilen, scheint es wirklich ein ungewöhnliches, tolles Buch zu sein. Mehr später.\n\n@@Ein echtes Ausnahmebuch@@: eine wunderschöne Liebesgeschichte aus den Zutaten Zeitreise, Punk, Drogen, Kunst, Familie, Gentechnik, Schicksal. Sehr bewegend, es macht einem mal wieder klar, wie kostbar jeder Moment ist. Ich beneide jeden, der es noch gelesen hat, weil er dieses tolle Buch noch vor sich hat. Kommt auf meine Liste persönlicher all-time-favourites-Lieblingsbücher. \n\n''[[AudreyNiffenegger|http://www.amazon.de/exec/obidos/ASIN/0099464462/qid=1123156428/sr=2-1/ref=sr_2_11_1/028-4653038-7974165]]'': //The Time Traveller's wife//
Ein paar schöne schräge kurze Geschichten, für 1 € aus dem Oxfam-Laden mitgenommen.
Ein Kunde, für den wir auf jedem Bereich arbeiten. Nur einen Film durften wir bislang noch nicht drehen. Aber die Zielgruppe ist ja auch nicht gerade die breite Masse. \n\n----\n\n!!Ältere Anzeigen\n\n<<imglink http://www.diemuellers.de/belege/protector.jpg BHFProtector "Eine ältere Produkt-Anzeige für Protector-Anleihen" 1 125 176>><<imglink http://www.diemuellers.de/belege/Eisberg.jpg BHFEisberg "Das alte Image-Motiv" 1 125 176>><<imglink http://www.diemuellers.de/belege/kolibri.jpg BHFKolibri "Ein älteres Image-Motiv für Geschäfte auf Gegenseitigkeit" 1 125 176>>\n\n----\n\n\n!!Aktuelle Anzeigen\n\n<<imglink http://www.diemuellers.de/belege/BHF_MA1.jpg BHF_MA1 "Klicken zum Vergrößern" 1 125 176>><<imglink http://www.diemuellers.de/belege/BHF_MA2.jpg BHF_MA2 "Klicken zum Vergrößern" 1 125 176>><<imglink http://www.diemuellers.de/belege/BHF_Oben.jpg BHF_Oben "Ein aktuelles Image-Motiv" 1 125 176>>\n\n----
<<imglink http://www.diemuellers.de/belege/Eisberg.jpg null 1 >>
<<imglink http://www.diemuellers.de/belege/kolibri.jpg BHFKolibri null 1>>
<<imglink http://www.diemuellers.de/belege/protector.jpg null 1>>
----\n<<imglink http://www.diemuellers.de/belege/BHF_MA1.jpg null null 1 500 750>>\n----
----\n<<imglink http://www.diemuellers.de/belege/BHF_MA2.jpg null null 1 500 750>>\n----
<<imglink http://www.diemuellers.de/belege/BHF_Oben.jpg null null 1 >>
!Ein paar ausgewählte Beispiele\ngeordnet nach Kategorien: <<tag Anzeigen>>, <<tag Promotions>>, <<tag Plakate>>, <<tag Filme>>.
Edit this tiddler to see how to insert images.\n[img[Passfoto|passfoto.jpg]]\n(Das bin natürlich ich und hier sind [[my photos|http://www.flickr.com/photos/vranx/]])\n\n<<email frank at kazam dot de>>
To make quoted bits of text stand out, you can use BlockQuotes within your [[tiddler]]s, like this:\n\nJeremyRuston said:\n<<<\nA TiddlyWiki is like a blog because it's divided up into neat little chunks, but it encourages you to read it by hyperlinking rather than sequentially: if you like, a non-linear blog analogue that binds the individual microcontent items into a cohesive whole.\n<<<\n\nLike BulletPoints and NumberedBulletPoints, you can have three different levels of BlockQuotes. Just [[edit]] this tiddler to see how it's done.\n\n>level 1\n>level 1\n>>level 2\n>>level 2\n>>>level 3\n>>>level 3\n>>level 2\n>level 1\n
Creating BulletPoints is simple.\n* Just add an asterisk\n* at the beginning of a line.\n** If you want to create sub-bullets\n** start the line with two asterisks\n*** And if you want yet another level\n*** use three asterisks\n* Edit this tiddler to see how it's done\n* You can also do NumberedBulletPoints
----\n\n<<imglink http://www.diemuellers.de/belege/Butterfinger.jpg Butterfinger1 "Klicken zum Vergrößern" 1 125 176>>\n\n----
<<imglink http://www.diemuellers.de/belege/Butterfinger.jpg null null 1>>
Ein //Rail and fly// Mailing in Kooperation mit der Bahn. \n\n----\n\n[img[Titel Flyer|http://www.diemuellers.de/belege/Cathay.jpg]]\n\n----
Email address: checketts [at] gmail -dot- com\n\nClint is a student at ~BYU-Idaho studying Information Systems. He designed the ~TiddlyRin layout for TiddlyWiki
window.onClickToolbarUndo = function(e) {\n var tiddlerName = null;\n if(this.parentNode.id) {\n tiddlerName = this.parentNode.id.substr(7);\n displayTiddler(null,tiddlerName,1,null,null,false,false);\n }\n\n // I want to close it if it hasn't been saved yet.\n if(typeof(store.tiddlers[tiddlerName]) == 'undefined') {\n closeTiddler(tiddlerName,false);\n }\n}\n
// //''Name:'' Calendar plugin\n// //''Version:'' <<getversion closeOthers>> (<<getversiondate closeOthers "DD MMM YYYY">>)\n// //''Author:'' SteveRumsby\n// //''Requires:'' ToolbarCreationPlugin\n\n// //''Description:'' Works with the ToolbarCreationPlugin to add a "close others" button to the tiddler toolbar. When clicked, this button will close any other open tiddlers, unless they are being edited. To use, put the macro << {{{toolbarCloseOthers}}} >> at an appropriate place in the ViewerToolbar and/or EditorToolbar tiddlers.\n\n// //''Code section:''\nversion.extensions.closeOthers = { major: 1, minor: 0, revision: 0, date: new Date(2005, 07, 16)};\n\nconfig.macros.toolbarCloseOthers = {};\nconfig.views.wikified["toolbarCloseOthers"] = { text: "Andere schließen", tooltip: "Schließe andere tiddlers"};\n\nconfig.macros.toolbarCloseOthers = {};\nconfig.macros.toolbarCloseOthers.handler = function(place,macroName,params)\n{\n lingo = config.views.wikified;\n createTiddlyButton(place,lingo.toolbarCloseOthers.text,lingo.toolbarCloseOthers.tooltip,onClickToolbarCloseOthers);\n}\n\n// //__Event handler for clicking on toolbar close others button__\nfunction onClickToolbarCloseOthers(e)\n{\n if (!e) var e = window.event;\n clearMessage();\n if(this.parentNode.id)\n closeAllBut(this.parentNode.id.substr(7));\n}\n\nfunction closeAllBut(keeptitle)\n{\n clearMessage();\n var place = document.getElementById("tiddlerDisplay");\n var tiddler = place.firstChild;\n var nextTiddler;\n while(tiddler)\n {\n nextTiddler = tiddler.nextSibling;\n if(tiddler.id)\n if(tiddler.id.substr(0,7) == "tiddler")\n {\n var title = tiddler.id.substr(7);\n if(title != keeptitle && !document.getElementById("editor" + title))\n place.removeChild(tiddler);\n }\n tiddler = nextTiddler;\n }\n}\n
// //''Name:'' Collapse plugin\n// //''Author:'' Alan Hechts\n\n// // __Macro for the toolbar button__ \nconfig.views.wikified.toolbarCollapse = {text: "_", tooltip: "Diesen tiddler zusammenfalten", toggleText: "+", toggleTooltip: "Diesen tiddler entfalten"};\n\nconfig.macros.toolbarCollapse = {};\n\nconfig.macros.toolbarCollapse.handler = function(place,macroName,params)\n{\n lingo = config.views.wikified;\n createTiddlyButton(place,lingo.toolbarCollapse.text,lingo.toolbarCollapse.tooltip,onClickToolbarCollapse);\n}\n\n// //__Event handler on toolbar button press__\nfunction onClickToolbarCollapse(e)\n{\n if (!e) var e = window.event;\n title = this.parentNode.id.substr(7);\n if(title)\n {\n var viewerStatus = document.getElementById("viewer" + title).style.display\n var displayStyle;\n var buttonText;\n var buttonTooltip;\n var lingo = config.views\n lingo = lingo.wikified;\n if(viewerStatus == "none")\n {\n displayStyle = "block";\n buttonText = lingo.toolbarCollapse.text;\n buttonTooltip = lingo.toolbarCollapse.tooltip;\n }\n else\n {\n displayStyle = "none";\n buttonText = lingo.toolbarCollapse.toggleText;\n buttonTooltip = lingo.toolbarCollapse.toggleTooltip;\n }\n document.getElementById("viewer" + title).style.display = displayStyle; \n document.getElementById("footer" + title).style.display = displayStyle; \n this.innerHTML = buttonText;\n this.title = buttonTooltip;\n }\n}\n
config.options.chkHttpReadOnly = false;\n
Zur Person\n[[Frank Müller|Kontakt]], geboren am 27.6.62 in Hannover. Seit 5/89 verheiratet, 4 Töchter.\n\nSchule\nBesuch der Grundschule "An der Masch" in Lehrte bei Hannover vom 8/68-7/72. Während der ganzen Zeit offizieller Lesekönig.\nBesuch des Gymnasiums Lehrte von 8/72-5/81, Abitur mit 2,7\n\nWehrdienst 10/81-12/82\nAbleistung des Grundwehrdienstes als Vermesser und Rechner im Spezialzug bei der schweren Artillerie. (Später Verweigerung des Kriegsdienstes. Nach 2. Verhandlung anerkannt.)\n\nStudium 4/83-6/88\nStudium der Germanistik und Sozialpsychologie an der Universität Hannover. Abschluß als Magister Artium mit »Sehr gut«. Thema der Magisterarbeit: Das Verhältnis von Phantasie und Wirklichkeit in Ernst Kreuders »Gesellschaft vom Dachboden«. Hier das [[Zeugnis]], das mir meine Professorin [[Elisabeth Lenk|ElisabethLenk]] ausgestellt hat. \n\nDiverse Jobs 4/83-6/88\nBibliotheksgehilfe, Zugbegleiter, Brand- und Wasserschädenbeseitiger, ~Bau-Hilfsarbeiter (3 lange Tage), ~Libri-Bücherfahrer, Pfleger in der Psychiatrie.\n\nMichael Conrad & Leo Burnett 8/88-12/90\nEinstieg als ~Junior-Texter, Aufstieg zum Texter. Aufgaben: Konzept und Text im ~Dialog-Marketing. Enge Zusammenarbeit mit der Klassik. Etats: Ca. 11 Cigarettenmarken von Philip Morris, ~DeTeWe, Blaupunkt, Cathay Pacific etc. Nach 2,5 Jahren Ausstieg zu Ogilvy & Mather Direkt.\n\nOgilvy & Mather Direkt (jetzt Ogilvy One) 1/91-6/92 \nVerantwortlicher Texter auf den Etats: Postbank, Bundesbahn, HewlettPackard (Image), Poggenpohl\n\nBates Germany 7/92-9/95\nWechsel in die klassische Werbung als Senior Copywriter, unter anderem auf den Etats Rover, Ericsson Mobile Phones, Hassia dry lemon, [[Israel]] Government Tourist Office, [[Jenaer Glas]], Honda Automobile, AEG Daimler Benz Industrie, [[TWA]], Electrolux, Milky Way,\n\nJ. Walter Thompson 10/95-12/97\nSenior Copywriter auf den Etats Smarties, After Eight, Lion, Dulux Farben, Heineken, Jacobs Krönung mild, Jim Beam, Butterfinger sowie New Business. 2/97 Wechsel in andere Unit wegen chronischer Unterforderung. Feste Kunden sind nun DeBeers, Kodak, [[Rolex]], Gerolsteiner\n\nBorsch Stengel Körner Bozell 03/98-06/99\nCreative Supervisor für Langguth [Weine], Mon Chéri und Hanuta. Außerdem Neugeschäft.\n\nCitigate Demuth seit 07/99\nCreative Director, stellvertretender Kreationsleiter. Etats im Laufe der Zeit unter anderem: Opel Image , Merck Finck & Co Privatbankiers, BHF-BANK, TalanxAG (Holding der HDI, Hannover Rück u.a.), NeckarWerkeStuttgart (letztes Projekt: vier Kinospots mit Doris Dörrie), Verband der Wellpappenindustrie, Legal & General, HannoverscheLeben. Außerdem natürlich jede Menge Neugeschäft sowie Desktop/~IT-Support.\n\nAußerdem\nImmer wieder mal Konzepte und Texte für die befreundete Agenturen Catch (hauptsächlich P&G: Pampers, Always, Alldays, Homepage Catch, Punica etc. pp.), Baxter und Baxter oder The Marketing Company. Von Zeit zu Zeit die Entwicklung von Namen für Serien und Filme des Senders RTL Television. (z.B. »Du stirbst, wie ich es will.«)\n\nPrivate Zeit\nLeben mit Frau und Kindern, Lesen, ~Internet-Surfen, Musik aktiv (Gitarre, ~Blues-Harp, Didgeridoo), Musik passiv (Punk, Grunge, Klassik, Blues, Smooth Jazz, Acid Jazz), foto- und lomografieren und seit März 2000 wieder regelmäßig laufen, nach dem Meniskusriss immer wieder mal kombiniert mit ~Power-Yoga (= spirituell verbrämtes Stretching mit Gymnastik in modern) als Laufersatz, ab und zu auch Nordic Walking zur Knieschonung. Seit 0stern 05 fahre ich ein paarmal in der Woche mit dem Rad in die Agentur (rund 45 km hin und zurück) – das reicht. Im Winter werde ich dann wohl wieder laufen/walken. Update: bin im Moment wieder ScooterBoy. <<smiley>>
\n<<list withTags dabei>>\n\n[[» Dabei|Dabei]]
Sehr lustig. Dass er »der komischste Mann Amerikas« ist, wie im Klappentext ausgelobt, würde ich nicht gleich behaupten. Aber nett und schnell wegzulesen.
Anzeigen und Broschüren, einfühlsam und edel getextet. <<smiley ;)>>\n\n----\n\n<<imglink http://www.diemuellers.de/belege/DeBeers.jpg DeBeersAnzeige "Klicken zum Vergrößern" null 125 176>>\n\n----
<<imglink http://www.diemuellers.de/belege/DeBeers.jpg null null 1 400 580>>
[[Home]]
<<imglink http://www.diemuellers.de/belege/DelixPlus.jpg DelixPlus1 "Klicken zum Vergrößern" 1 250>>
<<imglink http://www.diemuellers.de/belege/DelixPlus.jpg null null 1>>
// //''Name:'' Duplicate plugin\n// //''Author:'' Alan Hechts\n\nconfig.views.editor.toolbarDuplicate = {text: "duplicate", tooltip: "Duplicate this tiddler", suffix: "Copy"};\n\nconfig.macros.toolbarDuplicate = {};\n\nconfig.macros.toolbarDuplicate.handler = function(place,macroName,params)\n{\n lingo = config.views.editor;\n createTiddlyButton(place,lingo.toolbarDuplicate.text,lingo.toolbarDuplicate.tooltip,onClickToolbarDuplicate);\n}\n\nfunction onClickToolbarDuplicate()\n{\n clearMessage();\n var lingo = config.views\n lingo = lingo.editor;\n var thisSrc = document.getElementById(this.parentNode.id);\n var thisTiddler = this.parentNode.id.substr(7);\n var dupTitle = thisTiddler + lingo.toolbarDuplicate.suffix;\n var dupBody = document.getElementById("editorBody" + thisTiddler).value;\n var dupTags = document.getElementById("editorTags" + thisTiddler).value;\n displayTiddler(thisSrc,dupTitle,2,null,null,false);\n document.getElementById("editorBody" + dupTitle).value = dupBody;\n document.getElementById("editorTags" + dupTitle).value = dupTags;\n // If you want the original tiddler to close completely after you click 'duplicate,' then remove the slashes at the start of the next line\n //closeTiddler(thisTiddler,false);\n}\n
<<toolbarDone>> <<toolbarCancel>> <<toolbarDuplicate>> <<toolbarDelete>>
\n\n<<imglink http://www.diemuellers.de/img/Lenk1.JPG http://www.uni-weimar.de/campus99/c99-html/Traum/E3lenk.html "Elisabeth Lenk">>\nGerade habe ich zufällig festgestellt, das meine ~Lieblings-Professorin [[ sehr eng mit Theodor W. Adorno |http://www.perlentaucher.de/buch/9490.html]] befreundet war. Da hat mir also die Frau, die er »für so genial begabt« hielt wie keine andere, »eine kluge Arbeit« im [[Magisterzeugnis|Zeugnis]] bescheinigt und ein »sehr gut« gegeben. Schön zu wissen. <<smiley>>
// //''Name:'' EmailLink\n// //''Author:'' AlanHecht\n// //''Type:'' [[Macro|Macros]]\n\n// //''Description:'' email lets you list a "email" address without displaying it as readable text. This helps prevent your email address from being harvested by search engines and other web crawlers that read your page's contents. Using email, you type in the words "at" and "dot" instead of the punctuation symbols and add spaces inbetween words to disguise your address. However, email will display your email address in a web browser so that humans can read it. And email turns the address into a hyperlink that can be clicked to send you an instant email.\n\n// //''Syntax:'' << {{{email yourname at yourdomain dot com "?optional parameters"}}} >>\n// //Example 1: <<email sample at nowhere dot com>> (standard)\n// //Example 2: <<email sample at nowhere dot com "?subject=Submission&body=Type your message here.">> (with optional parameters)\n\n// //''Directions:'' <<tiddler MacroDirections>>\n\n// //''Notes:'' You can use the optional email parameters to stipulate a subject or message body for the message. Most (not all) email clients will use this information to construct the email message.\n\n// //''Related Links:'' none\n\n// //''Revision History:''\n// // v0.1.0 (20 July 2005): initial release\n// // v0.1.1 (22 July 2005): renamed the macro from "email" to "email" to further thwart email harvesters.\n\n// //''Code section:''\nversion.extensions.email = {major: 0, minor: 1, revision: 1, date: new Date(2005,7,22)};\nconfig.macros.email = {}\nconfig.macros.email.handler = function(place,macroName,params)\n{\nvar temp = params.join(" ");\ndata = temp.split("?");\nvar recipient = data[0];\nrecipient = recipient.replace(" at ","@").replace(" dot ",".");\nrecipient = recipient.replace(/\ss/g,"");\nvar optional = data[1] ? "?" + data[1] : "";\nvar theLink = createExternalLink(place,"ma"+"il"+"to:"+recipient+optional);\ntheLink.appendChild(document.createTextNode(recipient))\n}\n
// //''Name:'' EmailLink\n// //''Author:'' AlanHecht\n// //''Type:'' [[Macro|Macros]]\n\n// //''Description:'' email lets you list a "email" address without displaying it as readable text. This helps prevent your email address from being harvested by search engines and other web crawlers that read your page's contents. Using email, you type in the words "at" and "dot" instead of the punctuation symbols and add spaces inbetween words to disguise your address. However, email will display your email address in a web browser so that humans can read it. And email turns the address into a hyperlink that can be clicked to send you an instant email.\n\n// //''Syntax:'' << {{{email yourname at yourdomain dot com "?optional parameters"}}} >>\n// //Example 1: <<email sample at nowhere dot com>> (standard)\n// //Example 2: <<email sample at nowhere dot com "?subject=Submission&body=Type your message here.">> (with optional parameters)\n\n// //''Directions:'' <<tiddler MacroDirections>>\n\n// //''Notes:'' You can use the optional email parameters to stipulate a subject or message body for the message. Most (not all) email clients will use this information to construct the email message.\n\n// //''Related Links:'' none\n\n// //''Revision History:''\n// // v0.1.0 (20 July 2005): initial release\n// // v0.1.1 (22 July 2005): renamed the macro from "email" to "email" to further thwart email harvesters.\n\n// //''Code section:''\nversion.extensions.email = {major: 0, minor: 1, revision: 1, date: new Date(2005,7,22)};\nconfig.macros.email = {}\nconfig.macros.email.handler = function(place,macroName,params)\n{\nvar temp = params.join(" ");\ndata = temp.split("?");\nvar recipient = data[0];\nrecipient = recipient.replace(" at ","@").replace(" dot ",".");\nrecipient = recipient.replace(/\ss/g,"");\nvar optional = data[1] ? "?" + data[1] : "";\nvar theLink = createExternalLink(place,"ma"+"il"+"to:"+recipient+optional);\ntheLink.appendChild(document.createTextNode(recipient))\n}\n
''Bold''\n==Strike==\n__Underline__\n//Italic//\n2^^3^^=8\na~~ij~~ = -a~~ji~~\n@@highlight@@\n@@color(green):green colored@@\n@@bgcolor(#ff0000):color(#ffffff):red colored@@
// //''Name:'' FAQ List\n// //''Version:'' 0.1.2 - 19 Oct 2005\n// //''Author:'' AlanHecht\n\n// //''Description:'' FAQ List lets you compile a list of Frequently Asked Questions and present them in a cascading style for the viewer. Each question is turned into a link that will toggle the view of the answer text. The list can be compiled either from all tiddlers containing a certain tag or from a single tiddler that contains all the needed questions and answers.\n\n// //''Syntax:'' <////< faqlist mode source sortBy hrSeparator >////>\n// // ''faqlist:'' the macro call (required)\n// // ''mode:'' either "byTag" or "byTitle" (required)\n// // ''source:'' the associated tag or tiddler title (required)\n// // ''sortBy:'' if byTag, sort can be "title," "modifier," "modified." If byTitle, sort can be "question" and will reorder the questions in alphabetical order. (this parameter is optional; use "null" if you don't want a sort order, but want to use "hr" as the last paramter)\n// // ''hrSeparator:'' if "hr" is included at the end of the call string, each question/answer set will be separated by a horizontal rule.\n// //Examples: (edit these two tiddlers to see the syntax used for each)\n// // • [[FAQ Method One]]\n// // • [[FAQ Method Two]]\n\n// //''Directions:'' <<tiddler StartupBehaviorDirections>> <<tiddler MacroDirections>>\n\n// //''Notes:'' If you choose to use byTitle mode where the entire set of questions/answers comes from a single tiddler, the syntax for the tiddler content is as follows:\n// // • Each question must be a single line (i.e. no hard returns) but can wrap as needed\n// // • The answer to a question begins on the next line after the question and can be as long as needed. It can also include hard returns as part of the answer text, but it cannot include empty lines (i.e. an empty line is the result of pressing enter twice).\n// // • Each question/answer set must be seperated by two hard returns (i.e. must have a single, blank line between them.\n// // Refer to [[FAQ Tiddler Sample]] for an example.\n\n// //''Known Issues:'' If a user clicks too quickly to toggle a FAQ entry on/off, they will go into tiddler edit mode. This should be corrected in the future by allowing web-hosted versions of the faq to disable double-clicking.\n\n// //''Revision History:''\n// // v0.1.0 (01 August 2005): initial release\n// // v0.1.1 (04 August 2005): Fixed an endless loop bug (thanks to Kevin Kleinfelter).\n// // v0.1.2 (19 October 2005): Fixed TW compatibility .32 bugs (newline for block quote and e.preventDefault by Clint Checketts)\n\n// //''Code section:''\n//{{{\nversion.extensions.faqlist = {major: 0, minor: 1, revision: 2, date: new Date("Aug 4, 2005")};\nconfig.macros.faqlist = {\n bulletCollapse: ">",\n bulletExpand: "∨",\n expandButton: {title: "Expand All", tooltip: "Open all items for reading"},\n collapseButton: {title: "Collapse All", tooltip: "Close all items"}\n};\nconfig.macros.faqlist.handler = function(place,macroName,params)\n{\n lingo = config.macros.faqlist;\n var mode = params[0].toLowerCase();\n var list = [];\n switch(mode)\n {\n case "bytag":\n var tagged = store.getTaggedTiddlers(params[1], params[2]);\n for(t=0; t<tagged.length; t++)\n {\n var title = tagged[t].title;\n list[t] = [title,store.getTiddlerText(title)];\n }\n var subTitle = store.tiddlers[title].getSubtitle();\n break;\n case "bytitle":\n var faqText = store.getTiddlerText(params[1]);\n var faqItems = faqText.split("\sn\sn");\n if(params[2] == "question")\n faqItems.sort();\n for(t=0; t<faqItems.length; t++)\n {\n list[t] = [faqItems[t].substring(0,faqItems[t].indexOf("\sn")),faqItems[t].substring(faqItems[t].indexOf("\sn")+1)];\n }\n var subTitle = null;\n break;\n }\n \n var faqHeading = place.appendChild(document.createElement("span"));\n faqHeading.appendChild(createTiddlyButton(faqHeading,lingo.expandButton.title,lingo.expandButton.tooltip,faqExpandAll));\n faqHeading.appendChild(createTiddlyButton(faqHeading,lingo.collapseButton.title,lingo.collapseButton.tooltip,faqCollapseAll));\n faqHeading.appendChild(document.createElement("p"));\n var faqBody = place.appendChild(document.createElement("span"));\n for(var t=0; t<list.length; t++)\n {\n var title = list[t][0];\n\n var content = "<<<\sn" + list[t][1] + "\sn<<<\sn";\n var theClass = "tiddlyLinkExisting tiddlyLink";\n var itemHeading = faqBody.appendChild(document.createElement("span"));\n itemHeading.appendChild(document.createTextNode(config.macros.faqlist.bulletCollapse + " "));\n createTiddlyButton(itemHeading,title,subTitle,faqToggleThis,theClass);\n var itemBody = faqBody.appendChild(document.createElement("span"));\n itemBody.style.display = "none";\n itemBody.className = "itemBody";\n wikify(content,itemBody,null,null);\n faqBody.appendChild(itemBody);\n faqBody.appendChild(document.createElement("p"));\n if(params[3] == "hr")\n faqBody.appendChild(document.createElement("hr"));\n }\n}\n\nfunction faqToggleThis(e)\n{\n var content = this.parentNode.nextSibling;\n var shown = content.style.display;\n if(shown == "none")\n {\n content.style.display = "inline";\n this.previousSibling.nodeValue = config.macros.faqlist.bulletExpand + " ";\n }\n else\n {\n content.style.display = "none";\n this.previousSibling.nodeValue = config.macros.faqlist.bulletCollapse + " ";\n }\n e.preventDefault();\n}\n\nfunction faqExpandAll()\n{\n for(t=0; t<this.parentNode.nextSibling.childNodes.length; t++)\n {\n item = this.parentNode.nextSibling.childNodes[t];\n if(item.className == "itemBody")\n {\n item.style.display = "inline";\n item.previousSibling.childNodes[0].nodeValue = config.macros.faqlist.bulletExpand + " ";\n }\n }\n}\n\nfunction faqCollapseAll()\n{\n for(t=0; t<this.parentNode.nextSibling.childNodes.length; t++)\n {\n item = this.parentNode.nextSibling.childNodes[t];\n if(item.className == "itemBody")\n {\n item.style.display = "none";\n item.previousSibling.childNodes[0].nodeValue = config.macros.faqlist.bulletCollapse + " ";\n }\n }\n}\n//}}}
!FAQ is compiled from tiddlers with a certain tag.\n<<faqlist byTag faqlistFAQ title hr>>
!FAQ is compiled from a single tiddler\n<<faqlist byTitle [[FAQ Tiddler Sample]] null hr>>
Question: Why would I want to use the FAQList macro?\nAnswer: Using TiddlyWiki for posting a FAQ online can get cumbersome for readers because each tiddler link opens up to a new scroll position. FAQList simplifies this by opening up each FAQ answer directly under the corresponding question.\n\nQuestion: What are the modes that the FAQList macro can run in?\nAnswer: FAQList has two modes that determine where the FAQ content is compiled from. This option is set using the "byTag" or "byTitle" mode identifiers in the macro call and works as follows:\n# byTag - Compiles all tiddlers marked with a certain tag, or \n# byTitle - Compiles a single "faq" tiddler that contains all the questions and answers.\n\nQuestion: How should the faq tiddler be formatted?\nAnswer: Use the following syntax for each question/answer:\n• A question goes on its own line (i.e. no hard returns) but may wrap around as needed\n• The answer goes on the line after the question and may contain ''single'' hard returns\n• Double-space to separate question/answer sets\n
// //''Name:'' Favicon\n// //''Version:'' <<getversion favicon>> (<<getversiondate favicon "DD MMM YYYY">>)\n// //''Author:'' AlanHecht\n// //''Type:'' SystemConfig\n\n// //''Description:'' favicon allows you to stipulate the location of a webpage icon (also known as a favorite icon or favicon) for your TiddlyWiki. The location of the icon is absolute (meaning that you need to give the full URL path, including the "http:"). This allows you to use any favicon icon that exists on the Web -- even if it is on a totally different server.\n\n// //''Directions:'' <<tiddler StartupBehaviorDirections>> \n// //Then, in the code section below, change the line beginning with {{{n.href}}} so that the value inside the quotation marks is the absolute URL for the icon file (usually named favicon.ico).\n\n// //''Notes:'' Many web browsers -- with the exception of Microsoft Internet Explorer (IE) -- load favicons in the browser address bar automatically. However, IE users will not see your favicon unless they 1) have IE set as the computer's default browser, and 2) create a favorite (aka bookmark) for your site (and even then, IE sometimes still doesn't play nice).\n\n// //''Related Links:'' for more information on creating favicons, visit ''[[this page|http://www.chami.com/html-kit/services/favicon/]]'' which also has a tool to convert an image of your choice into a favicon file.\n\n// //''Revision History:''\n// // v0.1.0 (18 July 2005) - initial release\n\n// //''Code section:''\nversion.extensions.favicon = {major: 0, minor: 1, revision: 0, date: new Date(2005,7,18)};\nvar n = document.createElement("link"); \nn.rel = "shortcut icon"; \nn.href = "http://www.diemuellers.de/img/favicon.ico"; \ndocument.getElementsByTagName("head")[0].appendChild(n);
Falls nichts angezeigt wird: Einfach noch ein- bis zweimal auf auf den Flickr Badge klicken\n\n<html>\n<a href="http://www.flickr.com" style="text-align:center;">www.<strong style="color:#3993ff">flick<span style="color:#ff1c92">r</span></strong>.com</a><br>\n<iframe style="background-color:#ffffff; border-color:#ffffff; border:none;" width="113" height="151" frameborder="0" scrolling="no" src="http://www.flickr.com/apps/badge/badge_iframe.gne?zg_bg_color=ffffff&zg_person_id=57095553%40N00" title="Flickr Badge"></iframe>\n</html>\n\nGerade wiedergefunden: Ein Link zur [[Bilderabteilung|http://home.nikocity.de/diemuellers/]] einer aaaalten Version meiner Homepage, die ich schon vergessen hatte. Mit Kinderbildern und einigen ~Ha-Ha-Haikus, die Lomographien betexten. Gestaltungsfaktor: gruselig.
Hier findet man Links zu Seiten, die mit Fonts zu tun haben. \n[[Free Fonts|http://www.identifont.com/free-fonts.html]] :: [[Typetester|http://typetester.maratz.com/]] ::
Ein Mittelalter-Krimi vom Autor des Schwarms. Spannend und gut recherchiert
<<tiddler ElisabethLenk>>\n\n---\nFalls der eine oder andere Leser zufällig über diese Seite stolpert, soll ihm eine geniale Erfindung nicht vorenthalten bleiben, auf die ich bei meinen mittäglichen Streifzügen zufällig gestoßen bin: den [[Pagekeeper|http://www.pagekeeper.ca]]. Das einzige mir bekannte, wirklich funktionierende, durch verflüffende Einfachheit überzeugende ''automatische Lesezeichen'' wird zu Beginn des Lesevorgangs am Buch befestigt und verbleibt dort bis zum Beenden des Bandes. Das Buch öffnet nich immer an der Stelle, an welher der Lesevorgang unterbrochen wurde. Selbst der DAU (Dümmste Anzunehmende User) ist nicht in der Lage, etwas falsch zu machen, sobald der Pagekeeper einmal befestigt wurde. Auch das abzulehnende Vorblättern zum Schluss wird, wenn nicht unterbunden, so doch erschwert. Super Idee. \n---\n\n[[» Fundsachen|FundSachen]]
\n<<list withTags gelesen>>\n\n[[» Gelesen|Gelesen]]
Zwischen Band zwei und Band drei von Jasper Fforde gelesen. Bin gespalten. Einerseits recht unterhaltsam, guter ~Whisky-Geschmack, andererseits natürlich das Besserwisserbuch, das so tut, als sei es ganz locker und cool. Und ein paar Kochrezepte sind auch ganz beiläufig drin.
config.macros.getversion = {}\nconfig.macros.getversion.handler = function(place,macroName,params)\n{\nvar versionData = version.extensions[params].major + "." + version.extensions[params].minor + "." + version.extensions[params].revision;\ncreateTiddlyElement(place,"span",null,null,versionData);\n}\n\nconfig.macros.getversiondate = {}\nconfig.macros.getversiondate.handler = function(place,macroName,params)\n{\nvar versionDate = version.extensions[params[0]].date.formatString(params[1].trim());\ncreateTiddlyElement(place,"span",null,null,versionDate);\n}\n
\n''Gitarren''\n[[Simon & Patrick Gitarren|http://www.simonandpatrick.com/]] :: [[ Seagull Gitarren|http://www.seagullguitars.com/intro.htm]] :: [[ Garrison Gitarren|http://www.garrisonguitars.com/]] :: \n\n''Tabulaturen''\n[[ Tabulaturen|http://www.guitartabs.cc/]] :: [[Chordie|http://www.chordie.com/]] :: [[OLGA|http://www.olga.net/]] :: [[actoguitar|http://www.actoguitar.com/]] :: [[Gitarren Consult|http://www.gitarren-consult.de/]]\n\n''Händler''\n[[Musik-Schmidt|http://www.musik-schmidt.de/]] :: [[Musik Steinbach|http://www.musik-steinbach.de/]]\n\n''Infos''\n[[Gitarren Reviews|http://www.harmony-central.com/Guitar/Data4/]] :: ''[[Frets|http://www.frets.com/FRETSPages/OwnerManual/manssguitar.html]]'' ::
<<gradient horiz #bbbbbb #eeeeee #ffffff>>The new GradientMacro allows simple horizontal and vertical coloured gradients. They are constructed from coloured HTML elements, and don't require any images to work.>>\nThe GradientMacro is an ExtendedMacro that processes the text after it up until the next '>>' sequence. It looks like this:\n{{{\n<<gradient vert #ffffff #ffdddd #ff8888>>gradient fill>>\n}}}\nThe first parameter can be ''vert'' or ''horiz'' to indicate the direction of the gradient. The following parameters are two or more colours (CSS RGB(r,g,b) format is also acceptable). The GradientMacro constructs a smooth linear gradient between each of the colours in turn.\n\n| <<gradient vert #ffffff #ffdddd #ff8888>>No images were harmed in the making of this gradient fill>> | <<gradient vert #ffffff #ddffdd #88ff88>>No images were harmed in the making of this gradient fill>> | <<gradient vert #ffffff #ddddff #8888ff>>No images were harmed in the making of this gradient fill>> |\n\nInline CSS definitions can be added to gradient filles like this:\n\n<<gradient vert #000000 #660000 #aa2222>>color:#ffffff;font-size:12pt;Darkness>>\n{{{\n<<gradient vert #000000 #660000 #aa2222>>color:#ffffff;font-size:12pt;Darkness>>\n}}}\n
----\n<<imglink http://www.diemuellers.de/belege/HL_stapel.jpg null null 1 424 550>>\n----
----\n<<imglink http://www.diemuellers.de/belege/HL_stift.jpg null null 1 424 550>>\n----
\n\n\n<html><p><font size="24px" face="Hoefler Text, Georgia, Times" color="'cc9900"> Das ist <em>der</em> Testtext</font></p>
Genau das Richtige für einen alten Hannoveraner wie mich. Die ersten, noch deutlich skurrileren Ideen und Ansätze wurden Schritt für Schritt auf Konsumierstärke verdünnt und normalisiert. \n\n<<imglink http://www.diemuellers.de/belege/HL_stapel.jpg HLStapel "Klicken zum Vergrößern" 1 125 176>><<imglink http://www.diemuellers.de/belege/HL_stift.jpg HLStift "Klicken zum Vergrößern" 1 125 176>>
Das zweite Buch von [[Haruki Murakami|http://de.wikipedia.org/wiki/Haruki_Murakami]], das ich lese. Wie schon die [[Wilde Schafsjagd|http://www.bookcrossing.com/journal/1007825]] schräg und fesselnd. Ein Grund, mal wieder eine Woche mit der Bahn zu fahren anstatt mit dem Fahrrad <<smiley>>. \n\nSo, fertig. Nach gut 680 Seiten bleibt man etwas ratlos zurück, nicht für Leser mit einer Abneigung gegen offene Enden. Meine Frau hätte wahrscheinlich in den Teppich gebissen. Ich fand es sehr interessant und werde sicherlich noch weitere Bücher von [[Haruki Murakami|http://de.wikipedia.org/wiki/Haruki_Murakami]], vielleicht mal [[Tanz mit dem Schafsmann|http://www.amazon.de/exec/obidos/ASIN/3442730740/qid=1123764126/sr=8-1/ref=sr_8_xs_ap_i1_xgl/028-3418227-0678128]]. Der Vorgänger, [[Wilde Schafsjagd|http://www.bookcrossing.com/journal/1007825]] hat mir doch etwas besser gefallen.
Ein Mailing an Entscheider (Vorstände etc.) großer Firmen zu Themen wie //Umgang mit Zeit//, //Förderung von Mitarbeitern//, //Die neue Qualität (ISO 9000)//. Kam sehr gut an. Man ließ sogar bei Unternehmenswechsel die neue Adresse durchgeben, um das Mailing auch weiterhin zu erhalten. Das will schon etwas heißen bei einem Vorstand. \n\nInhalt: ein kleines Zitatenbuch, eine Broschüre, ein Anschreiben und eine Rückantwortkarte.
config.options.chkHttpReadOnly = true;
!Willkommen\nauf meiner kleinen TiddlyWiki-Seite. Sie besteht aus nur einer Datei, deren Grundlage das ''geniale [[TiddlyWiki|http://www.tiddlywiki.com]]'' ist. TiddlyWiki besteht aus einer einzigen, relativ kleinen ~HTML-Datei,die neben den reinen Inhalten auch gleich den Code für die ganzen Funktionen (Javascript) und Aussehen (CSS) enthält. Wer mehr darüber erfahren möchte, kann auch ''[[das deutsche Handbuch|http://www.schneiderwelt.de/twhandbuch/TiddlyWikiHandbuch.html]]'' konsultieren oder auf ''[[Tiddlywiki.de|http://www.tiddlywiki.de]]'' nachsehen, beides Fleißarbeiten von deutschen ~TiddlyWiki-Fans. Ein Klick dorthin lohnt sich allemal. Aber natürlich erst, wenn es hier nichts Neues mehr zu entdecken gibt. Ich habe eine ganze Zeit lang meine Seite nur als TiddlyWiki unterhalten, dann gab es Probleme mit dem Update und Upload, mit Kompatibilität etc. pp. Aber jetzt kann man sein TiddlyWiki ganz einfach hosten über ''[[tiddlyspot.com|http://tiddlyspot.com]]''. Da musste ich natürlich updaten. ;-)\n\nTipp: Unter dem Punkt //options// auf der rechten Seite kann man das Erscheinungsbild beeinflussen, z.B. die Animationen ausstellen (macht alles deutlich flotter) etc. \n\nMeine Hauptseite wird wahrscheinlich [[Kazam|http://www.kazam.de/]] bleiben, bzw. [[KazamBlog|http://blog.kazam.de/]]. Aber vielleicht nutze ich mein TiddlyWiki als Notizseite. Mal sehen. Wird sich finden.\n\n+++[Inhalt|Der Inhalt als Tagcloud]\n<<tiddler Inhalt>>\n===\n+++[Bücher|Was ich gerade gelesen habe, lese, lesen will]\n<<tiddler AlleBücher>>\n===\n+++[Fundsachen|parerga und Paralipomena oder so]\n<<tiddler FundSachen>>\n===\n+++[Flickr| Mein Flickr Badge]\n<<tiddler FlickrBadge>>\n===
Use the following syntax for each question/answer:\n• A question goes on its own line (i.e. no hard returns) but may wrap around as needed\n• The answer goes on the line after the question and may contain ''single'' hard returns\n• Double-space to separate question/answer sets
*sample:\n|!th1111111111|!th2222222222|\n|>| colspan |\n| rowspan |left|\n|~| right|\n|bgcolor(#a0ffa0):colored| center |\n|caption|c\n*another sample: see PeriodicTable.\n
// //''Name:'' ImageLink\n// //''Version:'' <<getversion imglink>> (<<getversiondate imglink "DD MMM YYYY">>)\n// //''Author:'' AlanHecht\n// //''Type:'' [[Macro|Macros]]\n\n// //''Description:'' Inserts an external image file as a hyperlink to a URL, a tiddler, or a javascript function.\n\n// //''Syntax:'' << {{{imglink imageSrc linkTo "altText" borderSize width height}}} >>\n// //Examples: \n// //<<imglink Brille.png http://www.diemuellers.de/img/Brille.png "Nice broccoli!" 1 auto 26>> (webpage link, includes height) //IE will not display properly//*\n\n// //<<imglink Brille.png test.htm "Nice broccoli!" 1 102 26>> (link to local file, includes both width & height parameters)\n\n// //<<imglink Brille.png * null 1 102 26>> (image with null alt text that links to itself using *)\n\n// //<<imglink Brille.png null "Cool!" 4 102 26>> (image with "null" link but takes advantage of other parameters)\n\n// //<<imglink Brille.png Bilder "Click to learn more!" 1>> (local image that links to a tiddler)\n\n// //<<imglink http://www.tiddlywiki.com/brixhamharbour.jpg "sampleFunction('You called a function!')" "Click to call a function!" 1>> (image from the web that calls a function)\n\n// //''Directions:'' <<tiddler MacroDirections>> Also, you do not need to copy the sampleFunction() function that appears at the bottom of the code section. It is used simply to demo this macro calling a function.\n\n// //''Notes:'' Optional border value is set at zero unless you specify another value. If you choose to set a border, you may also want to change the color for the border in the code section below or using the CustomStyleSheet. If you specify width and height, you ''must'' provide a border value (use 0 for no border) .\n// //If any of your macro parameters contain spaces, then surround the phrase in quote marks, otherwise quotes are not needed.\n// //If you use imglink to call a function (useful for adding interface buttons, etc.), the macro will first try to test whether the function exists. If you typed the name of the function incorrectly, you will receive an error when the macro runs. If the function does exist, then it is called with all the parameters you specified.\n// //*If you set an image width, some browsers (like IE) will require that you set the height value as well. For browsers that will autosize, you can replace the actual width/height value with the word {{{auto}}}.\n\n// //''Known Issues:'' This macro will not work if called from within a table.\n\n// //''Revision History:''\n// // v0.1.0 (22 July 2005): initial release\n// // v0.1.1 (22 July 2005): added support for linking to local files as well as no link at all\n\n// //''Code section:''\nversion.extensions.imglink = {major: 0, minor: 1, revision: 1, date: new Date(2005,7,22)};\nconfig.macros.imglink = {}\nconfig.macros.imglink.handler = function(place,macroName,params)\n{\nvar theLink = null;\nvar theAction = null;\nvar data = params;\nvar linkTo = data[1];\nvar box = createTiddlyElement(place,"span",null,"imgLinkBox",String.fromCharCode(160));\nbox.style.position = "relative";\nif(data[2] && data[2]!="null")\n box.title = data[2];\nvar theImage = document.createElement("img");\ntheImage.src = data[0];\ntheImage.className = "linkedImg";\ntheImage.style.position = "relative";\ntheImage.style.verticalAlign = "top";\ntheImage.border = data[3] ? data[3] : 0;\ntheImage.style.borderColor = "black";\nif(data[4] && data[4]!="auto")\n theImage.width = data[4];\nif(data[5] && data[5]!="auto")\n theImage.height = data[5];\n\nvar tiddlerText = store.getTiddlerText(linkTo);\nvar func = linkTo.substring(0,data[1].indexOf("("));\n// test for tiddler link\nif(tiddlerText)\n {\n theLink = document.createElement("a");\n theAction = function() {displayTiddler(this,linkTo,1,null,null,null,false,false);};\n theLink.onclick = theAction;\n theLink.href = "javascript:;";\n }\n// test for function call\nelse if(window[func] || typeof eval(func)=="function")\n {\n theLink = document.createElement("a");\n theAction = function() {eval(linkTo);};\n theLink.onclick = theAction;\n theLink.href = "javascript:;";\n }\n// test for link to image view\nelse if(linkTo == "*")\n {\n theLink = document.createElement("a");\n theLink.href = theImage.src;\n if(config.options.chkOpenInNewWindow)\n theLink.target = "_blank";\n }\n// test for no link\nelse if(linkTo == null || linkTo == "null")\n {\n theLink = document.createElement("span");\n }\nelse\n {\n theLink = document.createElement("a");\n theLink.href = data[1];\n if(config.options.chkOpenInNewWindow)\n theLink.target = "_blank";\n }\n\ntheLink.appendChild(theImage);\n//box.width=theImage.offsetWidth;\n//box.height=theImage.offsetHeight;\nbox.appendChild(theLink);\n}\n\n\n// //''The following function is not needed and is for demo purposes only''\nfunction sampleFunction(message)\n{\nalert(message);\n}
''Summary:''\n<<<\nWhen many people share and edit copies of the same TiddlyWiki document, the ability to quickly collect all these changes back into a single, updated document that can then be redistributed to the entire group is very important. This function is also very useful when moving your own tiddlers from document to document (e.g., when upgrading to the latest version of TiddlyWiki, or 'pre-loading' your favorite stylesheets into a new 'empty' TiddlyWiki document.)\n<<<\n''Usage:''\n<<<\nThe ''import tiddlers'' sidebar menu lets you combine tiddlers from any two TiddlyWiki documents. When selected, a control panel is displayed consisting of an "import source document" filename input (text field plus a ''[Browse...]'' button), a listbox of available tiddlers, a "differences only" checkbox, an "add tags" input field and four push buttons: ''[open]'', ''[select all]'', ''[import]'' and ''[close]''.\n\nPress ''[browse]'' to select a TiddlyWiki document file to import. You can also type in the path/filename (or URL) of the document you want to import and press ''[open]''. //Note: there is a 1-second delay built in to the import function to allow the browser some time to access and load the document before updating the listbox with the titles of all tiddlers that are available to be imported.//\n\nSelect one or more titles from the listbox (hold CTRL or SHIFT while clicking to add/remove the highlight from individual list items). You can press ''[select all]'' to quickly highlight all tiddler titles in the list. Use the ''[-]'', ''[+]'', or ''[=]'' links to adjust the listbox size so you can view more (or less) tiddler titles at one time. When you have chosen the tiddlers you want to import and entered any extra tags, press ''[import]'' to begin copying them to the current TiddlyWiki document.\n\n''Differences Only:''\n\nThe "differences only" checkbox allows you to filter the list so that you only see tiddlers that either A) don't exist in the current document, or B) have a different date/time stamp (indicating that the tiddler has been changed in some way). This makes it very quick and easy to find and import just the updated tiddlers you are interested in.\n\n''Import Tagging:''\n\nTiddlers that have been imported can be automatically tagged, so they will be easier to find later on, after they have been added to your document. New tags are entered into the "add tags" input field, and then //added// to the existing tags for each tiddler as it is imported.\n\n''Skip, Rename, Merge, or Replace:''\n\nWhen importing a tiddler whose title is identical to one that already exists, the import process pauses and the tiddler title is displayed in an input field, along with four push buttons: ''[skip]'', ''[rename]'', ''[merge]'' and ''[replace]''.\n\nTo bypass importing this tiddler, press ''[skip]''. To import the tiddler with a different name (so that both the tiddlers will exist when the import is done), enter a new title in the input field and then press ''[rename]''. Press ''[merge]'' to combine the content from both tiddlers into a single tiddler. Press ''[replace]'' to overwrite the existing tiddler with the imported one, discarding the previous tiddler content.\n\n//Note: if both the title ''and'' modification date/////time match, the imported tiddler is assumed to be identical to the existing one, and will be automatically skipped (i.e., not imported) without asking.//\n<<<\n''Import Report History'':\n<<<\nWhenever tiddlers are imported, a report is generated into ImportedTiddlers, indicating when the latest import was performed, the number of tiddlers successfully imported, from what location, and by whom. It also includes a list with the title, date and author of each tiddler that was imported.\n\nWhen the import process is completed, the ImportedTiddlers report is automatically displayed for your review. If more tiddlers are subsequently imported, a new report is //added// to ImportedTiddlers, above the previous report (i.e., at the top of the tiddler), so that a reverse-chronological history of imports is maintained.\n\nIf a cumulative record is not desired, the ImportedTiddlers report may be deleted at any time. A new ImportedTiddlers report will be created the next time tiddlers are imported.\n<<<\n''Installation:''\n<<<\ncopy/paste the following tiddlers into your document:\n''ImportTiddlersPlugin'' (tagged with <<tag systemConfig>>)\n^^javascript for ImportTiddlers handling^^\n''ImportTiddlersPanel''\n^^HTML/CSS for layout and interaction with ImportTiddlers interface^^\n''ImportTiddlersStyleSheet''\n^^default CSS class definitions for use in ImportTiddlersPanel^^\n''ImportTiddlersHelp''\n^^end-user documentation for this plugin^^\n\ncreate/edit ''SideBarOptions'': (sidebar menu items) \n^^Add "< < ImportTiddlers > >" macro^^\n\nTo make copy/paste easier, here's a file containing just the storeArea DIV's for the tiddlers you need to install: [[import.html|import.html]]\n\n''Quick Installation Tip:''\nIf you are using an unmodified version of TiddlyWiki (core release version <<version>>), you can simply get an empty TiddlyWiki with the Import Tiddlers plugin already installed (''[[download from here|TW+ImportTiddlers.html]]''), and then import all your content from your old document into this new, empty document.\n<<<\n''Revision History:''\n<<<\n''2005.07.27 [1.0.2]''\ncore update 1.2.29: custom overlayStyleSheet() replaced with new core setStylesheet()\n''2005.07.23 [1.0.1]''\nadded parameter checks and corrected addNotification() usage\n''2005.07.20 [1.0.0]''\nInitial Release\n<<<\n''Credits:''\n<<<\nThis feature was developed by EricShulman from [[ELS Design Studios|http:/www.elsdesign.com]]\n<<<\n
<div id="importPanel">\nimport from source document:\n<input type="file" id="fileImportSource" size=31 autocomplete=off\n onKeyUp="window.importSource=this.value"\n onChange="window.importSource=this.value; onClickImportButton(this)">\n<span style="float:left; padding:1px; white-space:nowrap">\n <input type=checkbox id="chkImportDiffsOnly" checked style="height:1em; width:auto"\n onClick="window.importDiffsOnly=this.checked; refreshImportList();">show differences only\n</span>\n<span style="float:right; padding:1px; white-space:nowrap">\n <a href="JavaScript:;" id="importSmaller" class="importListButton"\n onclick="onClickImportButton(this)" title="reduce list size">–</a>\n <a href="JavaScript:;" id="importLarger" class="importListButton"\n onclick="onClickImportButton(this)" title="increase list size">+</a>\n <a href="JavaScript:;" id="importMaximize" class="importListButton"\n onclick="onClickImportButton(this)" title="maximize/restore list size">=</a>\n</span>\n<select id="importList" size=1 multiple\n onchange="setTimeout('refreshImportList('+this.selectedIndex+')',1)">\n <!-- NOTE: delay refresh so list is updated AFTER onchange event is handled -->\n</select>\nadd tags:\n<input type=text id="txtImportTags" size=15 onKeyUp="window.importTags=this.value" autocomplete=off>\n<div align=center>\n <input type=button id="importOpen" class="importButton" style="width:23%" value="open"\n onclick="onClickImportButton(this)">\n <input type=button id="importSelectAll" class="importButton" style="width:23%" value="select all"\n onclick="onClickImportButton(this)">\n <input type=button id="importStart" class="importButton" style="width:23%" value="import"\n onclick="onClickImportButton(this)">\n <input type=button id="importClose" class="importButton" style="width:23%" value="close"\n onclick="onClickImportButton(this)">\n</div>\n<div id="importAskPanel">\n tiddler already exists:\n <input type=text id="importNewTitle" size=15 autocomplete=off">\n <div align=center>\n <input type=button id="importSkip" class="importButton" style="width:23%" value="skip"\n onclick="onClickImportButton(this)">\n <input type=button id="importRename" class="importButton" style="width:23%" value="rename"\n onclick="onClickImportButton(this)">\n <input type=button id="importMerge" class="importButton" style="width:23%" value="merge"\n onclick="onClickImportButton(this)">\n <input type=button id="importReplace" class="importButton" style="width:23%" value="replace"\n onclick="onClickImportButton(this)">\n </div>\n</div>\n</div>\n<!-- hidden frame for remote page load -->\n<span style="position:absolute; display:none;">\n<iframe name="importFrame" id="importFrame" src="" height=0 width=0></iframe>\n</span>
// Eric Shulman - ELS Design Studios\n// Import Tiddlers Plug-in for TiddlyWiki version 1.2.25 or above\n\n// define macro "importTiddlers" to render controls\nversion.extensions.importTiddlers = {major: 1, minor: 0, revision: 2, date: new Date(2005,7,27)};\nconfig.macros.importTiddlers = {\n label: "Importieren ", prompt: "Ausgewählte Tiddler aus anderem Dokument kopieren"\n};\nconfig.macros.importTiddlers.handler = function(place,macroName,params) {\n createTiddlyButton(place,this.label,this.prompt,onClickImportMenu);\n var text = store.getTiddlerText("ImportTiddlersPanel");\n if(!text) displayMessage("missing ImportTiddlersPanel");\n var newspan=createTiddlyElement(place,"span",null,"sidebar",null)\n newspan.innerHTML=text;\n var text = store.getTiddlerText("ImportTiddlersStyleSheet");\n if(!text) displayMessage("missing ImportTiddlersStyleSheet");\n setStylesheet(text,"ImportTiddlers");\n store.addNotification(null,refreshImportList); // refresh listbox after every tiddler change\n}\n\n// IE needs explicit global scoping for functions/vars called from browser events\nwindow.refreshImportList=refreshImportList;\nwindow.onClickImportButton=onClickImportButton;\nwindow.getImportedTiddlers=getImportedTiddlers;\nwindow.importSource=""; // path/filename or URL of document to import\nwindow.importedTiddlers; // hash-indexed array of tiddlers from other document\nwindow.importTags=""; // text of tags added to imported tiddlers\nwindow.importListSize=10; // # of lines to show in imported tiddler list\nwindow.importDiffsOnly=true; // show differences option (toggle)\nwindow.importIndex=0; // current processing index in import list\n\n// Import menu item (show/hide import panel)\nfunction onClickImportMenu(e)\n{\n if (!e) var e = window.event;\n var thePanel = document.getElementById("importPanel");\n if (thePanel==undefined) return;\n var isOpen = thePanel.style.display=="block";\n if(config.options.chkAnimate)\n anim.startAnimating(new Slider(thePanel,!isOpen,e.shiftKey || e.altKey,"none"));\n else\n thePanel.style.display = isOpen ? "none" : "block" ;\n e.cancelBubble = true;\n if (e.stopPropagation) e.stopPropagation();\n return(false);\n}\n\nfunction onClickImportButton(which)\n{\n // DEBUG alert(which.id);\n var theList = document.getElementById('importList');\n if (!theList) return;\n var thePanel = document.getElementById('importPanel');\n var theAskPanel = document.getElementById('importAskPanel');\n var theNewTitle = document.getElementById('importNewTitle');\n switch (which.id)\n {\n case 'fileImportSource':\n case 'importOpen': // load import source into hidden frame\n importReport(); // if an import was in progress, generate a report\n window.importedTiddlers=null; // clear the imported tiddler buffer\n refreshImportList(); // reset/resize the listbox\n if (window.importSource=="") break;\n try\n {\n // Load document into hidden iframe so we can read it's DOM\n // set timeout for 1 second and return to browser processing, so it has\n // some time to finish loading the document before we try to read the storeArea\n var url=window.importSource;\n if (url.charAt(1)==":") url="file://"+url; // fixup pc local filename\n window.frames['importFrame'].location.href=url;\n setTimeout('getImportedTiddlers()',1000);\n }\n catch(e)\n {\n clearMessage();\n displayMessage("Error opening "+window.importSource+": " + ((e.message)?e.message:e));\n }\n break;\n case 'importSelectAll': // select all tiddler list items (i.e., not headings)\n importReport(); // if an import was in progress, generate a report\n for (var t = 0; t < theList.options.length; t++)\n theList.options[t].selected=(theList.options[t].value!="");\n break;\n case 'importStart': // initiate the import processing\n importReport(); // if an import was in progress, generate a report\n window.importIndex=0;\n window.importIndex=importTiddlers(0);\n importStopped();\n break;\n case 'importClose': // unload imported tiddlers or hide the import control panel\n // if imported tiddlers not loaded, close the import control panel\n if (!window.importedTiddlers) { thePanel.style.display='none'; break; }\n importReport(); // if an import was in progress, generate a report\n window.importedTiddlers=null; // clear the imported tiddler buffer\n refreshImportList(); // reset/resize the listbox\n break;\n case 'importSkip': // don't import the tiddler\n var theItem = theList.options[window.importIndex];\n for (var j=0;j<window.importedTiddlers.length;j++)\n if (window.importedTiddlers[j].title==theItem.value) break;\n var theImported = window.importedTiddlers[j];\n theImported.status='skipped after asking'; // mark item as skipped\n theAskPanel.style.display='none';\n window.importIndex=importTiddlers(window.importIndex+1); // resume with NEXT item\n importStopped();\n break;\n case 'importRename': // change name of imported tiddler\n var theItem = theList.options[window.importIndex];\n for (var j=0;j<window.importedTiddlers.length;j++)\n if (window.importedTiddlers[j].title==theItem.value) break;\n var theImported = window.importedTiddlers[j];\n theImported.status = 'renamed from '+theImported.title; // mark item as renamed\n theImported.set(theNewTitle.value,null,null,null,null); // change the tiddler title\n theItem.value = theNewTitle.value; // change the listbox item text\n theItem.text = theNewTitle.value; // change the listbox item text\n theAskPanel.style.display='none';\n window.importIndex=importTiddlers(window.importIndex); // resume with THIS item\n importStopped();\n break;\n case 'importMerge': // join existing and imported tiddler content\n var theItem = theList.options[window.importIndex];\n for (var j=0;j<window.importedTiddlers.length;j++)\n if (window.importedTiddlers[j].title==theItem.value) break;\n var theImported = window.importedTiddlers[j];\n var theExisting = store.tiddlers[theItem.value];\n var theText = theExisting.text+'\sn----\sn^^merged from: [['+window.importSource+'#'+theItem.value+'|'+window.importSource+'#'+theItem.value+']]^^\sn^^'+theImported.modified.toLocaleString()+' by '+theImported.modifier+'^^\sn'+theImported.text;\n var theDate = new Date();\n var theTags = theExisting.getTags()+' '+theImported.getTags();\n theImported.set(null,theText,null,theDate,theTags);\n theImported.status = 'merged with '+theExisting.title; // mark item as merged\n theImported.status += ' - '+theExisting.modified.formatString("MM/DD/YYYY hh:mm:ss");\n theImported.status += ' by '+theExisting.modifier;\n theAskPanel.style.display='none';\n window.importIndex=importTiddlers(window.importIndex); // resume with this item\n importStopped();\n break;\n case 'importReplace': // substitute imported tiddler for existing tiddler\n var theItem = theList.options[window.importIndex];\n for (var j=0;j<window.importedTiddlers.length;j++)\n if (window.importedTiddlers[j].title==theItem.value) break;\n var theImported = window.importedTiddlers[j];\n var theExisting = store.tiddlers[theItem.value];\n theImported.status = 'replaces '+theExisting.title; // mark item for replace\n theImported.status += ' - '+theExisting.modified.formatString("MM/DD/YYYY hh:mm:ss");\n theImported.status += ' by '+theExisting.modifier;\n theAskPanel.style.display='none';\n window.importIndex=importTiddlers(window.importIndex); // resume with THIS item\n importStopped();\n break;\n case 'importSmaller': // decrease current listbox size, minimum=5\n if (theList.options.length==1) break;\n theList.size-=(theList.size>5)?1:0;\n window.importListSize=theList.size;\n break;\n case 'importLarger': // increase current listbox size, maximum=number of items in list\n if (theList.options.length==1) break;\n theList.size+=(theList.size<theList.options.length)?1:0;\n window.importListSize=theList.size;\n break;\n case 'importMaximize': // toggle listbox size between current and maximum\n if (theList.options.length==1) break;\n theList.size=(theList.size==theList.options.length)?window.importListSize:theList.options.length;\n break;\n }\n}\n\nfunction getImportedTiddlers()\n{\n try\n {\n // make sure document has valid tiddler store area\n var importDocument = window.frames['importFrame'].document;\n if (!importDocument)\n { throw("could not get file contents from importFrame"); }\n var importStoreArea = importDocument.getElementById("storeArea");\n if (!importStoreArea || !(importStore=importStoreArea.childNodes) || (importStore.length==0))\n { throw("no tiddlers found in file"); }\n importStoreArea.normalize();\n var link=unescape(window.frames['importFrame'].location.href).replace(/\s\s/g,"/")\n clearMessage();\n displayMessage('read '+importStoreArea.innerHTML.length+' bytes from ',link);\n }\n catch(e)\n {\n clearMessage();\n displayMessage("Error reading "+window.importSource+": " + ((e.message)?e.message:e));\n }\n window.importedTiddlers = new Array();\n for(var t = 0; t < importStore.length; t++)\n {\n var e = importStore[t];\n var title = null;\n if(e.getAttribute)\n title = e.getAttribute("tiddler");\n if(!title && e.id && (e.id.substr(0,5) == "store"))\n title = e.id.substr(5);\n if(title && title != "")\n {\n var theImported = new Tiddler();\n theImported.loadFromDiv(e,title);\n window.importedTiddlers.push(theImported);\n }\n }\n refreshImportList();\n}\n\nfunction importStopped()\n{\n var theList = document.getElementById('importList');\n var theNewTitle = document.getElementById('importNewTitle');\n if (!theList) return;\n if (window.importIndex==-1)\n importReport(); // import finished... generate the report\n else\n {\n // DEBUG alert('import stopped at: '+window.importIndex);\n // import collision... show the ask panel and set the title edit field\n document.getElementById('importAskPanel').style.display='block';\n theNewTitle.value=theList.options[window.importIndex].value;\n }\n}\n\nfunction refreshImportList(selectedIndex)\n{\n var theList = document.getElementById("importList");\n if (!theList) return;\n // if nothing to show, reset list content and size\n if (!window.importedTiddlers) \n {\n while (theList.length > 0) { theList.options[0] = null; }\n theList.options[0]=new Option('please open a document...',"",false,false);\n theList.size=1; // show one line only\n return;\n }\n // get the sort order\n if (!selectedIndex) selectedIndex=0;\n if (selectedIndex==0) importSortBy='title'; // heading\n if (selectedIndex==1) importSortBy='title';\n if (selectedIndex==2) importSortBy='modified';\n if (selectedIndex>2) return; // heading or tiddler item, no refresh needed\n // get the alphasorted list of tiddlers (optionally, filter out unchanged tiddlers)\n var tiddlers = [];\n\n // don't import tiddler if title/date/time match (i.e., no changes)\n for (t=0;t<window.importedTiddlers.length;t++)\n {\n if ( window.importDiffsOnly\n && store.tiddlers[window.importedTiddlers[t].title]\n && (window.importedTiddlers[t].modified-store.tiddlers[window.importedTiddlers[t].title].modified==0))\n continue;\n tiddlers.push(window.importedTiddlers[t]);\n }\n tiddlers.sort(function (a,b) {if(a['title'] == b['title']) return(0); else return (a['title'] < b['title']) ? -1 : +1; });\n // clear current list contents\n while (theList.length > 0) { theList.options[0] = null; }\n // add heading and control items to list\n var i=0;\n var indent=String.fromCharCode(160)+String.fromCharCode(160);\n theList.options[i++]=new Option('Select tiddlers to import',"",false,false);\n theList.options[i++]=new Option(((importSortBy=="title" )?">":indent)+' [by title]',"",false,false);\n theList.options[i++]=new Option(((importSortBy=="modified")?">":indent)+' [by date]',"",false,false);\n theList.options[i++]=new Option(tiddlers.length+' tiddler'+((tiddlers.length!=1)?'s are ':' is ')+(window.importDiffsOnly?'different':'in the document'),"",false,false);\n // output the tiddler list\n switch(importSortBy)\n {\n case "title":\n for(var t = 0; t < tiddlers.length; t++)\n theList.options[i++] = new Option(tiddlers[t].title,tiddlers[t].title,false,false);\n break;\n case "modified":\n // sort descending for newest date first\n tiddlers.sort(function (a,b) {if(a['modified'] == b['modified']) return(0); else return (a['modified'] > b['modified']) ? -1 : +1; });\n var lastSection = "";\n for(var t = 0; t < tiddlers.length; t++)\n {\n var tiddler = tiddlers[t];\n var theSection = tiddler.modified.toLocaleDateString();\n if (theSection != lastSection)\n {\n theList.options[i++] = new Option(theSection,"",false,false);\n lastSection = theSection;\n }\n theList.options[i++] = new Option(indent+indent+tiddler.title,tiddler.title,false,false);\n }\n break;\n }\n theList.selectedIndex=selectedIndex; // select current control item\n if (theList.size<window.importListSize)\n theList.size=window.importListSize;\n if (theList.size>theList.options.length)\n theList.size=theList.options.length;\n}\n\nfunction importTiddlers(startIndex)\n{\n if (!window.importedTiddlers) return -1;\n\n var theList = document.getElementById('importList');\n if (!theList) return;\n // if starting new import, reset import status flags\n if (startIndex==0)\n for (var t=0;t<window.importedTiddlers.length;t++)\n window.importedTiddlers[t].status="";\n for (var i=startIndex; i<theList.options.length; i++)\n {\n // if list item is not selected or is a heading (i.e., has no value), skip it\n if ((!theList.options[i].selected) || ((t=theList.options[i].value)==""))\n continue;\n for (var j=0;j<window.importedTiddlers.length;j++)\n if (window.importedTiddlers[j].title==t) break;\n var theImported = window.importedTiddlers[j];\n var theExisting = store.tiddlers[theImported.title];\n // don't import the "ImportedTiddlers" history from the other document...\n if (theImported.title=='ImportedTiddlers')\n continue;\n // don't import tiddler if title/date/time match (i.e., no changes)\n if (theExisting && ((theImported.modified-theExisting.modified)==0))\n continue;\n // if tiddler exists and import not marked for replace or merge, stop importing\n if (theExisting && (theImported.status.substr(0,7)!="replace") && (theImported.status.substr(0,5)!="merge"))\n return i;\n // append importation tags (if any)\n if (window.importTags!="")\n theImported.set(null,null,null,null,theImported.getTags()+' '+window.importTags)\n // set the status to 'added' (if not already set by the 'ask the user' UI)\n theImported.status=(theImported.status=="")?'added':theImported.status;\n // do the import!\n store.tiddlers[theImported.title] = theImported;\n store.dirty=true;\n }\n return(-1); // signals that we really finished the entire list\n}\n\nfunction importReport()\n{\n\n if (!window.importedTiddlers) return;\n // DEBUG alert('importReport: start');\n\n // if import was not completed, the Ask panel will still be open... close it now.\n document.getElementById('importAskPanel').style.display='none'; \n // get the alphasorted list of tiddlers\n var tiddlers = window.importedTiddlers;\n window.importedTiddlers.sort(function (a,b) {if(a['title'] == b['title']) return(0); else return (a['title'] < b['title']) ? -1 : +1; });\n // gather the statistics\n var count=window.importedTiddlers.length; var added=0; var replaced=0; var renamed=0; var skipped=0; var merged=0;\n for (var t=0; t<count; t++)\n if (window.importedTiddlers[t].status)\n {\n if (window.importedTiddlers[t].status=='added') added++;\n if (window.importedTiddlers[t].status.substr(0,7)=='skipped') skipped++;\n if (window.importedTiddlers[t].status.substr(0,6)=='rename') renamed++;\n if (window.importedTiddlers[t].status.substr(0,7)=='replace') replaced++;\n if (window.importedTiddlers[t].status.substr(0,6)=='merged') merged++;\n }\n var omitted=count-(added+replaced+renamed+skipped+merged);\n // DEBUG alert('stats done: '+count+' total, '+added+' added, '+skipped+' skipped, '+renamed+' renamed, '+replaced+' replaced, '+merged+' merged');\n // skip the report if nothing was imported\n if (added+replaced+renamed+merged==0) return;\n // quick message area summary report\n clearMessage();\n displayMessage((added+replaced+renamed+merged)+' of '+count+' tiddler'+((count!=1)?'s':"")+' imported from ',window.importSource)\n // create the report tiddler (if not already present)\n var tiddler = store.tiddlers['ImportedTiddlers'];\n if (!tiddler) // create new report tiddler if it doesn't exist\n {\n tiddler = new Tiddler();\n tiddler.title = 'ImportedTiddlers';\n tiddler.text = "";\n }\n // format the report header\n var now = new Date();\n newText = "";\n newText += "On "+now.toLocaleString()+", "+config.options.txtUserName+" ";\n newText += "imported tiddlers from ["+"["+window.importSource+"|"+window.importSource+"]"+"]:\sn";\n newText += "<"+"<"+"<\sn";\n newText += "Out of "+count+" tiddler"+((count!=1)?"s ":" ")+" in "+window.importSource+":\sn";\n if (added+renamed>0)\n newText += (added+renamed)+" new tiddler"+(((added+renamed)!=1)?"s were":" was")+" added to your document.\sn";\n if (merged>0)\n newText += merged+" tiddler"+((merged!=1)?"s were":" was")+" merged with "+((merged!=1)?"":"an ")+"existing tiddler"+((merged!=1)?"s":"")+".\sn"; \n if (replaced>0)\n newText += replaced+" existing tiddler"+((replaced!=1)?"s were":" was")+" replaced.\sn"; \n if (skipped>0)\n newText += skipped+" tiddler"+((skipped!=1)?"s were":" was")+" skipped after asking.\sn"; \n if (omitted>0)\n newText += omitted+" tiddler"+((omitted!=1)?"s":"")+((omitted!=1)?" were":" was")+" unchanged/not selected, and "+((omitted!=1)?"were":"was")+" not imported.\sn";\n if (window.importTags!="")\n newText += "imported tiddlers were tagged with: \s""+window.importTags+"\s"\sn";\n // output the tiddler detail and reset status flags\n for (var t=0; t<count; t++)\n if (window.importedTiddlers[t].status!="")\n {\n newText += "#["+"["+window.importedTiddlers[t].title+"]"+"]";\n newText += ((window.importedTiddlers[t].status!="added")?("\sn^"+"^"+window.importedTiddlers[t].status+"^"+"^"):"")+"\sn";\n window.importedTiddlers[t].status="";\n }\n newText += "<"+"<"+"<\sn";\n // update the ImportedTiddlers content and show the tiddler\n tiddler.text = newText+((tiddler.text!="")?'----\sn':"")+tiddler.text;\n tiddler.modifier = config.options.txtUserName;\n tiddler.modified = new Date();\n store.tiddlers[tiddler.title] = tiddler;\n displayTiddler(document.getElementById('sidebar'),"ImportedTiddlers",1,null,null,false);\n // update the list box to remove tiddlers that were sucessfully imported\n// refreshImportList();\n // update the page display\n store.notifyAll();\n}
#sidebar, #sidebarOptions { xposition:relative; } /* for floating sidebar panels */\n#importPanel {\n display: none;\n background-color: #eeeeaa;\n position:absolute; z-index:11; width:25em; left:28em; top:3em;\n padding: 0.5em; margin:0em;\n border:1px solid black; border-bottom-width: 3px; border-right-width: 3px;\n font-size: 7pt;\n}\n#importPanel input { width: 100%; margin: 1px; font-size:8pt; }\n#importPanel select { width: 100%; margin: 1px; font-size:8pt; }\n#importPanel .importButton { padding: 0em; margin: 0px; font-size:8pt; }\n#importPanel .importListButton { padding:0em 0.25em 0em 0.25em; color: #000000; }\n#importAskPanel { display:none; margin:0.5em 0em 0em 0em; }\n
On Mi 31 Aug 16:40:51 2005, FrankMueller imported tiddlers from [[/Users/FrankMueller/Desktop/empty.html|/Users/FrankMueller/Desktop/empty.html]]:\n<<<\nOut of 24 tiddlers in /Users/FrankMueller/Desktop/empty.html:\n1 new tiddler was added to your document.\n23 tiddlers were unchanged/not selected, and were not imported.\n#[[CloseOthersPlugin]]\n<<<\n----\nOn Mi 31 Aug 16:39:11 2005, FrankMueller imported tiddlers from [[/Users/FrankMueller/Desktop/empty.html|/Users/FrankMueller/Desktop/empty.html]]:\n<<<\nOut of 45 tiddlers in /Users/FrankMueller/Desktop/empty.html:\n3 new tiddlers were added to your document.\n42 tiddlers were unchanged/not selected, and were not imported.\n#[[CollapsePlugin]]\n#[[DuplicatePlugin]]\n#[[ToolbarCreationPlugin]]\n<<<\n
<<tagCloud about systemTiddlers systemConfig tiddlyRin PaulsPlugins excludeLists faqlistFAQ macros NosystemConfig formatting plugins Tags>>
<<imglink http://www.diemuellers.de/belege/IGTO_AD.jpg IsraelGroß 1 null 300 210>>
//Ein kleiner Auszug aus einer Broschüre für das Land Israel, @@das gelobte Urlaubsland@@. Eines von 9 Kapiteln, die die Attraktionen Israels abhandelten.//\n\n''Natur von wüst bis üppig''\n\nRumpelnd fährt unser Landrover von der Straße ab, in Richtung der Berge am Horizont. Urlaub in der Wüste. Für drei Tage verlassen wir die Zivilisation, um uns von unserem Führer Oded den Negev zeigen zu lassen, das »trockene Land«, das 2/3 der Fläche Israels einnimmt. Während der Fahrt bereitet Oded uns vor: »Der Negev ist nicht das, was man sich unter einer Wüste vorstellt. Sand, Dünen, am Horizont steht ein Beduine mit Kamel und Dattelpalme, das könnt Ihr vergessen. Der Negev ist eine Steinwüste.« Zwar gibt es auch hier kleine Gebiete mit klassischen Sanddünen, doch darüber hinaus erwartet den Besucher viel mehr. Bizarre Felsformationen, das Farbenspiel der Gesteine, Canyons, Wadis, die Zeltstädte der Beduinen, Ausgrabungs-stätten und sogar Weizenfelder. Wir hören fasziniert zu, während wir uns in einer Staubwolke den Bergen nähern und die Ausicht genießen. Ein Gefühl, daß man selbst erleben muß.\n\nAm Abend übernachten wir unter freiem Himmel. Oded hatte uns zwar angeboten, sich um eine Übernachtung im Hotel, einer Jugendherberge oder im Kibbuz zu kümmern. Aber das ist uns natürlich nicht abenteuerlich genug. Dafür lassen wir uns gerne das Essen zum Lager bringen. Ein ganz unwirkliches Erlebnis: Mitten in der schweigenden Steinwüste sitzen, über uns der Vollmond am klaren, blauschwarzen Sternenhimmel, koscheres Essen und dann auf einmal die Musik aus dem Landrover. Schuberts Unvollendete vor der Kulisse der Berge, einfach fantastisch. Und es kommt noch besser. Zum Beispiel am nächsten Tag beim Rappeling am größten Erosionskrater der Welt. Mit Haken und Ösen gesichert 20 Meter über dem Boden schweben, sich langsam am steilen Fels abseilen und die Stille genießen.\n\nÜberhaupt die Stille. So vollständig wie hier haben wir sie bislang in Europa noch nicht erlebt. Am 2. Tag machen wir gerade Rast, als auf einmal ganz leise ein Trommelrhythmus zu hören ist. Oded klärt uns auf. »Das ist die nächste Station. Wir machen bei einem Beduinen halt, und was Ihr da hört ist ein Mörser. Bei den Beduinen ist es Sitte, für Gäste frischgeröstete Kaffebohnen im Mörser zu zerstampfen. Dieses Geräusch ist gleichzeitig Einladung und das Signal für uns, daß wir willkommen sind.«\n\nObwohl wir also Bescheid wissen, ist es überwältigend, als wir über den Bergkamm kommen, und auf einmal die Zeltstätte mitten in der kargen Landschaft sehen. Das ist das Faszinierende an Israel: Alles liegt eng beieinander. Karge Wüsten, üppige Oasen, moderne ~High-Tech und jahrtausendealte Traditionen.\n\nSo ist auch die Wüstentour mit Besuch im Beduinenzelt nur eine Facette der vielen Naturtrips, die das Land bietet. Das Kontrastprogramm dazu findet man im Norden, in den grünen Bergen Galiläas mit ihrer üppigen Vegetation, im Sumpfgebiet des ~Hula-Reservates mit seiner artenreichen Tierwelt oder im größten biblischen Garten der Welt, "Neot Kedumim". Wer will, kann auch von Kulturdenkmal zu Kulturdenkmal wandern. Oder beim Mountainbiking in fantastischer Kulisse die eigenen Grenzen kennenlernen.\n\nNeben vielen kleinen Naturschutzgebieten gibt es im ganzen Land 14 große Naturschutzparks mit insgesamt 3.000 km^^2^^ Größe. Wer auch nur einen kleinen Teil von Israels vielfältiger Natur kennenlernen will, sollte ruhig ein bißchen Zeit mitbringen. Doch auch dann heißt es mit Sicherheit, wenn der Termin der Abreise näherrückt: »Der Urlaub war viel zu kurz.« Ein Grund, immer wieder herzukommen und in der Natur zu vergessen, daß man zu Hause über Asphalt laufen muß.
<<imglink http://www.diemuellers.de/belege/IGTO_AD.jpg IsraelGroß 1 null >>
''[[Jasper Fforde|http://www.amazon.de/exec/obidos/ASIN/0340825766/qid=1131455921/sr=8-7/ref=pd_ka_7/028-0849498-5195752/ ]]'': //Lost in a good book//. Und weiter geht's. Das erste hat mir so gut gefallen. Das zweite ist noch stranger. Jetzt geht's direkt rein in die Literatur. Und das Ende der Welt ist nahe.
Die Bücher strotzen nur so vor schönen Ideen und lassen einen wünschen, ein paar (englische) Klassiker mehr gelesen zu haben. \n
Nach Abschluss der bisher 4 [[Thursday Next|http://www.thursdaynext.com]]-Romane kann man nur sagen: wirklich klasse. Freue mich schon auf das nächste (hoffentlich kommt auch noch eines). Bis dahin kann man sich mal auf der [[Website|http://www.thursdaynext.com]] umsehen oder sich an die Nursery Crimes machen.
''[[Jasper Fforde|http://www.amazon.de/exec/obidos/ASIN/0340825766/qid=1131455921/sr=8-7/ref=pd_ka_7/028-0849498-5195752/ ]]'': //The Eyre Affair//. Eine durchgeknallte Parallelweltgeschichte, in der Chrono Guards die Zeit anhalten können, Dronten (Dodos) als Haustiere gehalten werden und der Krimkrieg schon über 130 Jahre dauert. Sehr schön. Animiert dazu, gleich noch ein paar Klassiker zu lesen. Eine schöne Welt, in der Shakespeares Richard III. als Rocky Horror Picture Show mit Zuschauerbeteiligung inszeniert wird und seit 10 Jahren im selben Theater läuft. <<smiley>> Auch die [[Website|http://www.thursdaynext.com/]] ist durchaus besuchenswert.
Schönes, phantasievolles Buch: Die Geschichte eines Hermaphroditen, seiner Eltern und Großeltern. Verschiedene Zeiten und Erzählebenen werden zu einem spannenden Enwicklungsroman verwoben. Hier ist der [[Amazon-Link|http://www.amazon.de/exec/obidos/ASIN/3499238101/qid=1126086078/sr=8-1/ref=pd_bbs_1/028-7897003-1322158]]
<<imglink http://www.diemuellers.de/belege/JG_3_Minuten.jpg JenaerGlas2 null 1 250 176>><<imglink http://www.diemuellers.de/belege/JG_Zappen.jpg JenaerGlas1 null 1 250 176>><<imglink http://www.diemuellers.de/belege/JG_Trick.jpg JenaerGlas3 null 1 250 176>>
<<imglink http://www.diemuellers.de/belege/JG_Zappen.jpg null null 1>>
<<imglink http://www.diemuellers.de/belege/JG_3_Minuten.jpg null null 1>>
<<imglink http://www.diemuellers.de/belege/JG_Trick.jpg null null 1>>
Muss man nichts zu sagen. Deutlich spannender als der Vorgängerband. Und wieder ein schön deprimierender Schluss. Man darf auf das Ende gespannt sein.
<<imglink http://www.diemuellers.de/belege/jobp1.jpg JobPilot1 null 1>>
<<imglink http://www.diemuellers.de/belege/jobp2.jpg JobPilot2 null 1>>
<<imglink http://www.diemuellers.de/belege/jobp3.jpg JobPilot3 null 1>>
<<imglink http://www.diemuellers.de/belege/jobp1.jpg JobPilot1 null 1 175 140>><<imglink http://www.diemuellers.de/belege/jobp2.jpg JobPilot2 null 1 175 140>><<imglink http://www.diemuellers.de/belege/jobp3.jpg JobPilot3 null 1 175 140>>
Kontaktaufnahme ganz einfach unter \nmobil: 0172 69 28072 :: mail: <<email frank at kazam dot de>> :: <html><a href="aim:goim?screenname=FrankenMueller&message=" title="AOL IM Telegramm an mich"> AOL IM</a> </html> :: yahoo IM: vranx :: ICQ: 344766764 :: google: <<email f.mueller at gmail dot com>>\n\n[img[Passfoto|http://www.diemuellers.de/img/passfoto.jpg]]\n(Das bin natürlich ich – jetzt wieder ScooterBoy – und hier sind [[meine Flickr-Fotos|http://www.flickr.com/photos/vranx/]])\n\nVon Zeit zu Zeit übermannt mich das Interesse an einem exotischen Gebiet, über das ich mehr wissen möchte, oder an einer Fähigkeit, die ich erlernen möchte. Dabei geht es leider meist nicht um praktische Anwendbarkeit, sondern um wirklich Nutzloses. Bisher auf der Liste der erfolgreich absolvierten Dinge:\n\n* Erlernen des [[Didgeridoos|http://www.didgeworld.com/]] inklusive Zirkularatmung, Bau mehrerer ~Reise-Didgeridoos.\n\n* Bau mehrerer Kalimbas (bzw. Mbiras) aus Hartholz, Alustangen und den Zinken von Gartenrechen. Pentatonisch gestimmt.\n\n* Erlernen diverser praktischer [[Knoten|http://www.earlham.edu/~peters/knotlink.htm]]\n\n* (rudimentäres) Erlernen des Obertongesangs\n\n* Aneignen von Linux/Unix - Kenntnissen\n\n* rudimentäre Kenntnisse von HTML, CSS, LaTeX. Das war überhaupt der Anlass für die erste eigene Homepage. Irgendwas muss man ja machen. \n\n* Sperrtechnik und [[Lockpicking|http://de.wikipedia.org/wiki/Lockpicking]]. Es ist erstaunlich einfach, z.B. billige chinesische Vorhängeschlösser, die Fahrradschlösser vom Discounter oder auch einfache normale Schließzylinder zu knacken. So 5 -6 habe ich schon aufbekommen Dauer: zwischen ca. 15 Sekunden und ewig (beim nebenbei Fernsehen) <<smiley>>\n\nSo, und jetzt hat es mich wieder gepackt und ich werde meine eingerosteten Gitarrenfähigkeiten reaktivieren, auch wenn ich nie eine [[Kaki King|http://www.kakiking.com]] werde – allein schon wegen des Geschlechts <<smiley ;-)>> . Aber zum bisschen Blues schrammeln reicht es. Ich habe günstig auf einer berkannten online Auktionsplattform ein neues [[Schätzchen|http://www.harmony-central.com/Guitar/Data4/]] geschossen – eine [[Garrison G 20|http://www.garrisonguitars.com/g20.html]]. Und weil sie so günstig war und ich nicht genug zum üben komme, wenn ich nur abends zu Hause mal 10 Minuten klimpere, habe ich mir noch eine [[Reisegitarre|http://www.musik-steinbach.de/index.php?sid=cb12315bf30ee4284276ad02390f86d4&cl=search&searchparam=johnson+jtr&searchcnid=]] bestellt. Bin mal gespannt. Normale Mensur, und ich kann sie einfach mit ins Büro nehmen. Auch auf dem Roller.
!Einige Kunden, für die ich gearbeitet habe\n\n''Adidas'' -> Promotion Pflegeserie || ''AEG Daimler Benz Industrie'' -> ~TV-Spots || ''AfterEight'' -> ~TV-Spots, Promotions, Funkspots || ''Arcor'' -> Text für ~Internet-Auftritt || ''BHF-BANK'' -> ~Image-Kampagne Print, Produktanzeigen, Funkspot || ''Bankhaus Merck Finck & Co'' -> Anzeigen, Broschüren || ''Bethmann Bank'' -> Anzeigen, Broschüren || ''Blaupunkt'' -> Entwicklung und Umsetzung zweier ~Händler-Jahreswettbewerbe mit Gewinnspiel, bestehend aus je 5 Aussendungen jährlich || ''Bundesbahn'' -> 3-stufiges Mailing mit Foldern und Gewinnspiel zur Einführung des ICE || ''CathayPacific Fluglinie'' -> Mailings || ''Concorde Investment'' -> Anzeigenkampagne || ''DeBeers Diamanten''-> Broschüren und Anzeigen || ''~DeTeWe Telekommunikation'' -> Diverse Mailings und Broschüren || ''Delix/DelixPlus (Hoechst)'' -> Entwicklung zweier Anzeigenkampagnen in Fachtiteln für ~ACE-Hemmer || ''Dulux Farben'' -> 3 ~TV-Spots + 3 ~POS-Spots || ''Electrolux'' -> Funkspots, Promotions || ''Ericsson Mobilfunk'' -> Anzeigen, Folder || ''Ferrero Mon Cheri'' -> Funkspots, ~TV-Spots || ''HannoverscheLeben'' -> Anzeigenkampagne || ''hassia dry lemon'' -> Einführungskampagne, Funkspots || ''Heineken'' -> Promotions, Plakate || ''HewlettPackard'' -> Mailings an Wirtschaftsentscheider zur Imageförderung || ''Honda Automobile'' -> Filmentwicklung || ''[[Israel]] Government Tourist Office'' -> Printkampagne, Mailings, Broschüre || ''Jacobs Krönung Mild'' -> Einführungskampagne: ~TV-Spot, Funkspots || ''[[Jenaer Glas]]'' -> Printkampagne, Packungstexte || ''Jim Beam'' -> Promotions, Gewinnspiele || [[Jobpilot]] -> Bannerwerbung || ''Kodak AG'' -> ~TV-Spots || ''Langguth Weine'' -> Anzeigenkampagne || ''LegalundGeneral'' -> Anzeigenkampagne, Mailings, Broschüren, ~Online-Banner, eMailings für einen Anbieter von (insbesondere) Indexfondsbasierten Lebensversicherungen zur Altersvorsorge || ''[[Lion Bioscience]]'' -> IPO Anzeige, IPO ~TV-Spot für das ~BioTech-Unternehmen || ''NeckarWerkeStuttgart'' -> Anzeigenkampagne, 4 Kinospots unter der Regie von Doris Dörrie, Promotions, Dialogmarketing || ''Nestle [[Butterfinger]]'' -> Einführungskonzept || ''Nestle Lion'' -> Website, ~T-Shirts f. Sound of Frankfurt || [[Nestle Smarties]] -> Plakatkampagne in Kooperation mit dem Verein "Mehr Zeit für Kinder", ~Promotion-TV-Spots. || [[Opel]] -> ~Image-Anzeigen || ''Philip Morris Light American, Philip Morris Ultra, Marlboro, L&M, Chesterfield'' etc -> Mehrstufige Mailings zur Adressengenerierung, Neukundenbetreuung || ''Pampers'' -> Mailings, Promotions, Broschüren, redaktionelle Anzeigen || ''Poggenpohl'' -> ~Image-Broschüre || Postbank -> Direktmailings || ''RTL Television'' -> Namensentwicklung für Serien, Themenabende || Rolex -> Anzeigen || ''Rover, Landrover'' -> ~Print-Anzeigen, Funk || ''Snickers'' -> Funkspots || ''[[TWA]] Fluglinie'' -> Anzeigen, Funkspots || ''TalanxAG'' -> Konzept und Text der Imagekampagne, ~Sponsoring-Spots || ''Verband der ~Wellpappen-Industrie'' -> Anzeigen ||
Sano Ichiros erster Fall. Kriminalgeschichten aus dem 17. Jahrhundert, in Japans Oberschicht spielend. Sehr hübsch, wenn man auf Geschichte und Exotik steht.
<<faqlist byTitle [[Curriculum Vitae]] null hr>>\n\n[[» Originaldatei|Curriculum Vitae]]
Jede Woche eine neue - nein, nicht Welt, sondern Anzeige. Immer möglichst aktuell, leider geht zuuu aktuell auch nicht, da wir doch etwas Abstimmungs- und Vorlaufzeit haben. Trotzdem: macht immer wieder Spaß. \n\n<<imglink http://www.diemuellers.de/belege/3108_FAZ.jpg null null 1>><<imglink http://www.diemuellers.de/belege/2809_FAZ.jpg null null 1>><<imglink http://www.diemuellers.de/belege/2310_FAS.jpg null null 1>>
\n''[[Tristan Egolf|http://www.amazon.de/exec/obidos/ASIN/3518411810/qid=1131456827/sr=8-1/ref=sr_8_xs_ap_i1_xgl/028-0849498-5195752]]'': //Monument für John Kaltenbrunner//\n''[[Frank Schätzing|http://www.amazon.de/exec/obidos/search-handle-url/index=books-de&field-keywords=frank%20sch%E4tzing/ref=xs_ap_l_xgl/028-4653038-7974165]]'': //Der Schwarm// etc.\n''[[Neal Stephenson|http://www.amazon.de/exec/obidos/ASIN/3442545684/qid=1122883386/sr=1-3/ref=sr_1_11_3/028-4653038-7974165]]''://Quicksilver, The Confusion, The System of the world//\n''[[Laura Joh Rowland|http://www.amazon.de/exec/obidos/search-handle-url/index=books-de&field-author=Rowland%2C%20Laura%20J./028-4653038-7974165]]'': //Japanische ~Samurai-Krimis//\n''[[Leonie Swann|http://www.amazon.de/exec/obidos/tg/stores/detail/-/books/3442301297/reviews/ref=cm_rev_more_2/028-9106372-1284529]]'': //Glenkill//\n''[[Max Barry|http://www.amazon.de/exec/obidos/ASIN/3453869478/qid=1127737209/sr=1-1/ref=sr_1_10_1/028-9106372-1284529]]'': //Logoland//\n''[[Dan Zevin|http://www.amazon.de/exec/obidos/ASIN/3453870344/ref=pd_bxgy_text_1/028-9106372-1284529]]'': //Uncool//\n''[[Stephanie Doyon|http://www.amazon.de/exec/obidos/ASIN/0747582939/qid=1137087115/sr=8-2/ref=sr_8_xs_ap_i2_xgl/302-9757226-1350444]]'': //The Greatest Man in Cedar Hole//\n''[[Jonathan Safran Foer|http://www.amazon.de/exec/obidos/ASIN/3596156289/qid=1137087752/sr=2-2/ref=sr_2_11_2/302-9757226-1350444]]'': //Alles ist erleuchtet//\n\n\n[[ » Lesen|Lesen]]\n
The format for PrettyLinks allows for links that open local or network folders. Depending on your browser and operating system, the folders are opened in Windows Explorer, the OS X Finder, or the browser itself.\n\nEdit this tiddler to see [[this link to a Windows network share|file://///server/share/folder/path/name]], [[this link to a Windows drive-mapped folder|file:///c:/folder/path/name]] and [[this link to a Unix-style folder|file:///folder/path/name]].
----\n<<imglink http://www.diemuellers.de/belege/lion.jpg LionAnzeige "Klicken zum Vergrößern" 1 125 176>><<imglink http://www.diemuellers.de/belege/lion_tv.jpg http://www.diemuellers.de/spots/lion.mpg "Spot in neuem Fenster/Tab öffnen" 28 160 120>>\n----\n\nDen Spot am besten in einem neuen Fenster/Tab öffnen. Er hat nur eine sehr kleine Auflösung, dafür geht es aber schneller. <<smiley :)>>
<<imglink http://www.diemuellers.de/belege/lion.jpg null 1 null>>
[[Home|Home]]
Ein Zeitreisethriller, wohl so eine Art //Best of…//\n\nGanz ok. Was zum Weglesen. Habe ich auch getan <<smiley ;-)>>
{{{Monospaced text}}} is now supported, thanks to [[AlecThomas|http://www.swapoff.org/]]. Edit this tiddler to see the syntax.\n\nYou can also have monospaced blocks (useful for source code):\n\n{{{\nvar posTop = findPosY(e);\nvar posBot = posTop + e.offsetHeight;\nvar winTop = findScrollY();\nvar winHeight = findWindowHeight();\nvar winBot = winTop + winHeight;\nif(posTop < winTop)\n return(posTop);\nelse if(posBot > winBot)\n {\n if(e.offsetHeight < winHeight)\n return(posTop - (winHeight - e.offsetHeight));\n else\n return(posTop);\n }\nelse\n return(winTop);\n}}}\n\nHere's a formatting variation for monospaced blocks. To use it, copy it into the StyleSheet tiddler, SaveChanges and refresh in your browser.\n\n{{{\n.viewer pre {\n border: 1px solid #660000;\n padding: 0.5em 0.5em 0.5em 0.5em;\n background: #eeeeaa;\n color: #660000;\n}\n}}}
Jede Menge nette Musik für den legalen Download findet man unter folgenden Adressen: [[Subpop|http://www.subpop.com/]] :: [[GarageBand|http://www.garageband.com/]] :: [[Tonspion|http://www.tonspion.de/]] :: [[MP3|http://www.mp3.de/]] :: Und hier kann man sich ein Bild von [[Kaki King|http://www.kakiking.com/]] machen, einer interessanten Gitarristin. Wo wir schon mal dabei sind, auch gleich noch ein Link zu [[Tabs|http://benharpertablatures.free.fr/english_index.htm]] von [[ Ben Harper|http://www.benharper.net/]]
Und wenn es nur ist, damit ich mal wieder einen Grund habe, etwas mit meiner Heimatseite <<smiley ;-)>> zu machen: hier folgen ein paar Links zu Lieblingsmusikern, die mich auf dem seit Weihnachten in meinem Besitz befindlichen ~MP3-Player begleiten: \n\n* Zunächst der sehr abwechslungsreiche, schwer einzuordnende [[Ben Harper|http://www.laut.de/wortlaut/artists/h/harper_ben/]], immer wieder mal verglichen mit so unterschiedlichen Musikern wie Lenny Kravitz, Jimi Hendrix oder Bob Marley. \n\n* zum anderen sein Kumpel [[Jack Johnson|http://www.laut.de/wortlaut/artists/j/johnson_jack/]], Surfer, Filmer und Singer/Songwriter. Sehr entspannende ~Gute-Laune-Musik. \n\n\n
<<imglink http://www.diemuellers.de/belege/nws_er_gro.gif http://www.diemuellers.de/spots/NWS_ER.mpg null 1 200 112>>
<<imglink http://www.diemuellers.de/belege/NWS_Band.jpg * null 1 >>\n----\n''»Mir fliegen gleich die Plomben raus.« – »Hauptsache, die Sicherungen bleiben drin.«''\n\nJeder Song braucht 3 Akkorde, jeder Mensch braucht Energie. Und was C, F und G für die Musik, sind Wasser, Strom und Gas für die Menschen in unserem Versorgungsgebiet - alles harmoniert perfekt und bestätigt aufs Schönste: Unsere Energie ist Ihr Plus.\n----\n
<<imglink http://www.diemuellers.de/belege/NWS_Club.jpg * null 1 >>\n\n----\n''»Was 'n das für'n Mix?« – »Gas, Wasser, Strom.«''\n\nWir wissen nicht, in welcher Bar Sie sich mit Ihrem bevorzugten Mix versorgen lassen: Aber eines wissen wir: im Versorgungsgebiet der NWS genießen Sie immer das ~Rundum-sorglos-Paket im richtigen Mix. Egal ob Wasser, Strom oder Gas, es gilt in jedem Fall: Unsere Energie ist Ihr Plus. \n----\n
<<imglink http://www.diemuellers.de/belege/NWSPromo2.jpg * null 1>>\n----\n''Bilder von der ~Energiewand-Promotion …''\n\n...bei der große Wände mit echten Steckdosen überall in der Stadt aufgestellt wurden, vor denen geschulte Mitmenschen häusliches Leben und Stromverbrauchen demonstrierten. \n----\n<<imglink http://www.diemuellers.de/belege/NWSPromo.jpg * null 1>>
Ein Kunde, für den wir nahezu alles gemacht haben: Anzeigen, Plakate, Mailings und Kinofilme (unter der Regie von Doris Dörrie), in einem Stück ungeschnitten auf High Definition Digitalfilm aufgenommen. Hier ein paar Beispiele //(Die Bilder vergrößern sich auf einen Klick)//: \n\n----\n\n<<imglink http://www.diemuellers.de/belege/nws_er_kl.gif http://www.diemuellers.de/spots/Emergency_Room.mpg null 10 100 56>><<imglink http://www.diemuellers.de/belege/nws_spotform.gif http://www.diemuellers.de/spots/Formel1Spot.mov null 10 100 56>><<imglink http://www.diemuellers.de/belege/nws_spotform.gif http://www.diemuellers.de/spots/Formel1Making.mov null 10 100 56>>\n\nAchtung, der erste Film ist 7,3 MB groß, der zweite so um die 3 MB und der dritte zeigt, wie der zweite Film entstanden ist. Ein //Making of// sozusagen. Bitte in neuem Fenster/neuem Tab öffnen. \n\n----\n\n<<imglink http://www.diemuellers.de/belege/NWS_Club.jpg NWSClub " " 1 125 176>> <<imglink http://www.diemuellers.de/belege/NWS_Band.jpg NWSBand null 1 125 176>><<imglink http://www.diemuellers.de/belege/NWSPromo2.jpg NWSPromo null 1 210 160>>\n\n----\n \nUnd hier der offizielle Text\n<<<\nInfolge der Liberalisierung des Strommarktes im Jahre 1999 plant der siebtgrößte Energieversorger Deutschlands, die Neckarwerke Stuttgart (NWS), eine Kommunikationsoffensive.\n\nEine Anzeigenserie mit dem Claim „Unsere Energie ist Ihr Plus“ positioniert die Neckarwerke Stuttgart bei der angestammten Privatkundschaft und bei potenziellen Neukunden im nationalen Geschäftskundenbereich als einen der leistungsfähigsten ~Top-Anbieter im Strommarkt.\nAnstelle des oft aggressiven und schrill-bunten Auftritts mancher Wettbewerber setzt die Kampagne auf Humor und Selbstbewusstsein. Plakative Gestaltungsmerkmale erlauben eine weitergehende Adaption der Motive für großformatige Außenwerbung in Bahnhöfen oder als ~City-Light-Poster.\n\nFür die junge Zielgruppe der Kinogänger entwickelt Citigate Demuth eine Serie von ungewöhnlichen Kinospots, die mit Humor den Claim illustrieren. Die bekannte Regisseurin Doris Dörrie setzt sie mit viel Liebe zum Detail in Szene.\n\nDie Kampagne erzielt hohe Aufmerksamkeitswerte und profiliert die Neckarwerke Stuttgart bei bestehenden und potenziellen Kunden als modernen, kundenfreundlichen Strompartner.\n<<<
{{{\n{{{\n/***\n''NestedSlidersPlugin for TiddlyWiki version 1.2.37 or above''\n^^authors: Eric Shulman, Rodney Gomes, Geoff Slocock, Paul Petterson\nsource: http://www.elsdesign.com/tiddlywiki/#NestedSlidersPlugin\nlicense: [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]^^\n\nQuickly make any tiddler content into an expandable 'slider' panel, without needing to create a separate tiddler to contain the slider content. Optional syntax allows ''default to open'', ''custom button label/tooltip'' and ''automatic blockquote formatting''.\n\nYou can also 'nest' these sliders as deep as you like (see complex nesting example below), so that expandable 'tree-like' hierarchical displays can be created. This is most useful when converting existing in-line text content to create in-line annotations, footnotes, context-sensitive help, or other subordinate information displays.\n\n!!!!!Usage\n<<<\nWhen installed, this plugin adds new wiki syntax for embedding 'slider' panels directly into tiddler content. Use {{{+++}}} and {{{===}}} to delimit the slider content. Additional syntax elements for specifying 'default to open', 'custom label/tooltip', and 'automatic blockquote' are all ''optional''.\n//{{{\n++++[label|tooltip]>\ncontent goes here\n===\n//}}}\nwhere:\n* {{{+++}}} (or {{{++++}}}) and {{{===}}}^^\nmarks the start and end of the slider definition, respectively. When the extra {{{+}}} is used, the slider will be open when initially displayed.^^\n* {{{[label]}}} or {{{[label|tooltip]}}}^^\nuses custom label/tooltip. (defaults are: ">/more..." and "</less...")^^\n* {{{">"}}} //(without the quotes)//^^\nautomatically adds blockquote formatting to slider content^^\n\n//Note: to make slider definitions easier to read and recognize when editing a tiddler, newlines immediately following the {{{+++}}} 'start slider' or preceding the {{{===}}} 'end slider' sequence are automatically supressed so that excess whitespace is eliminated from the output.//\n\n<<<\n!!!!!Examples\n<<<\nsimple in-line slider: \n{{{\n+++\n content\n===\n}}}\n+++\n content\n===\n----\ndefault to open: \n{{{\n++++\n content\n===\n}}}\n++++\n content\n===\n----\nuse a custom label: \n{{{\n+++[label]\n content\n===\n}}}\n+++[label]\n content\n===\n----\nuse a custom label and tooltip: \n{{{\n+++[label|tooltip]\n content\n===\n}}}\n+++[label|tooltip]\n content\n===\n----\ncontent automatically blockquoted: \n{{{\n+++>\n content\n===\n}}}\n+++>\n content\n===\n----\nall options combined //(default open, custom label/tooltip, blockquoted)//\n{{{\n++++[label|tooltip]>\n content\n===\n}}}\n++++[label|tooltip]>\n content\n===\n----\ncomplex nesting example:\n{{{\n+++[get info...|click for information]>\n put some general information here, plus a slider with more specific info:\n +++[view details...|click for details]>\n put some detail here, which could include some +++[definitions]>explaining technical terms===\n ===\n===\n}}}\n+++[get info...|click for information]>\n put some general information here, plus a slider with more specific info:\n +++[view details...|click for details]>\n put some detail here, which could include some +++[definitions]>explaining technical terms===\n === \n=== \n<<<\n!!!!!Installation\n<<<\nimport (or copy/paste) the following tiddlers into your document:\n''NestedSlidersPlugin'' (tagged with <<tag systemConfig>>)\n<<<\n!!!!!Revision History\n<<<\n''2005.11.07 [1.3.0]''\nremoved alternative syntax {{{(((}}} and {{{)))}}} (so they can be used by other formatting extensions) and simplified/improved regular expressions to trim multiple excess newlines\n''2005.11.05 [1.2.1]''\nchanged name to NestedSlidersPlugin\nmore documentation\n''2005.11.04 [1.2.0]''\nadded alternative character-mode syntax {{{(((}}} and {{{)))}}} and tweaked "eat newlines" logic for line-mode {{{+++}}} and {{{===}}} syntax\n''2005.11.03 [1.1.1]''\nfixed toggling of default tooltips ("more..." and "less...") when a non-default button label is used\ncode cleanup, added documentation\n''2005.11.03 [1.1.0]''\nchanged delimiter syntax from {{{(((}}} and {{{)))}}} to {{{+++}}} and {{{===}}}\nchanged name to EasySlidersPlugin\n''2005.11.03 [1.0.0]''\ninitial public release\n<<<\n!!!!!Credits\n<<<\nThis feature was implemented by EricShulman from [[ELS Design Studios|http:/www.elsdesign.com]] based on considerable research, programming and suggestions from RodneyGomes, GeoffSlocock, and PaulPetterson\n<<<\n!!!!!Code\n***/\n//{{{\nversion.extensions.nestedSliders = {major: 1, minor: 3, revision: 0, date: new Date(2005,11,07)};\n\nconfig.formatters.push( {\n name: "nestedSliders",\n match: "\s\s+{3}",\n terminator: "\s\sn*\s\s={3}\s\sn?",\n lookahead: "\s\s+{3}(\s\s+)?(\s\s[[^\s\s]]*\s\s])?(\s\s>?)\s\sn*",\n handler: function(w)\n {\n var lookaheadRegExp = new RegExp(this.lookahead,"mg");\n lookaheadRegExp.lastIndex = w.matchStart;\n var lookaheadMatch = lookaheadRegExp.exec(w.source)\n if(lookaheadMatch && lookaheadMatch.index == w.matchStart)\n {\n var show = lookaheadMatch[1]?"block":"none";\n var title = lookaheadMatch[1]?"<":">";\n var tooltip = lookaheadMatch[1]?"hide":"show";\n var header = lookaheadMatch[2];\n if (header) {\n title = header.trim().substr(1,header.length-2);\n if ((pos=title.indexOf("|")) != -1)\n { tooltip = title.substr(pos+1,title.length); title = title.substr(0,pos); }\n else\n { tooltip += " "+title; }\n }\n var btn = createTiddlyButton(w.output,title,tooltip,onClickNestedSlider);\n var panel = createTiddlyElement(w.output,"span",null,"sliderPanel",null);\n panel.style.display = show;\n if (lookaheadMatch[3]) panel = createTiddlyElement(panel,"blockquote");\n w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;\n w.subWikify(panel,this.terminator);\n }\n }\n }\n)\n//}}}\n\n//{{{\nfunction onClickNestedSlider(e)\n{\n if (!e) var e = window.event;\n var theTarget = resolveTarget(e);\n var theLabel = theTarget.firstChild.data;\n var theSlider = this.nextSibling;\n var isOpen = theSlider.style.display!="none";\n // if using default button labels, toggle labels\n if (theLabel==">") theTarget.firstChild.data = "<";\n else if (theLabel=="<") theTarget.firstChild.data = ">";\n // if using default tooltips, toggle tooltips\n if (theTarget.getAttribute("title")=="show")\n theTarget.setAttribute("title","hide");\n else if (theTarget.getAttribute("title")=="hide")\n theTarget.setAttribute("title","show");\n if (theTarget.getAttribute("title")=="show "+theLabel)\n theTarget.setAttribute("title","hide "+theLabel);\n else if (theTarget.getAttribute("title")=="hide "+theLabel)\n theTarget.setAttribute("title","show "+theLabel);\n // show/hide the slider\n if(config.options.chkAnimate)\n anim.startAnimating(new Slider(theSlider,!isOpen,e.shiftKey || e.altKey,"none"));\n else\n theSlider.style.display = isOpen ? "none" : "block";\n return false;\n}\n//}}}\n}}}\n\n}}}\n
Eine ~Gemeinschafts-Plakataktion von Smarties mit dem Verein //Mehr Zeit für Kinder// und der //Deutschen Gesellschaft für Städtereklame//, in der gezeigt werden sollte, wie viel Spaß es machen kann, mehr Zeit mit seinen Kindern zu verbringen. Smartiesmäßig kindgerecht sollte es sein, dem Verein ~PR-Möglichkeiten geben und ein schnell zu erfassendes Plakat.\n\n----\n\n<<imglink http://www.diemuellers.de/belege/Smarties_Mond.jpg SmartiesMond null 1 300 213>><<imglink http://www.diemuellers.de/belege/Smarties_Steinzeit.jpg SmartiesSteinzeit null 1 300 213>>\n\n----
\nwindow.onClickToolbarNewHere = function(e) {\n if (!e) var e = window.event;\n clearMessage();\n if(this.parentNode.id) {\n displayTiddler(this.parentNode,"New Tiddler",2,null,null,false,false);\n tagBox = document.getElementById("editorTagsNew Tiddler"); \n tagBox.value = this.parentNode.id.substring(7);\n }\n e.cancelBubble = true;\n if (e.stopPropagation) e.stopPropagation();\n return(false);\n}\n\nconfig.views.wikified.toolbarNewHere = {text: "Neu hier", tooltip: "Neuen Tiddler mit gleichen Tags erstellen"};\n\nwindow.createTiddlerToolbar_orig_mptw_newhere = window.createTiddlerToolbar;\nwindow.createTiddlerToolbar = function(title,isEditor) {\n createTiddlerToolbar_orig_mptw_newhere(title,isEditor);\n var theToolbar = document.getElementById("toolbar" + title);\n var lingo = config.views.wikified;\n if(!isEditor) {\n createTiddlyButton(theToolbar, lingo.toolbarNewHere.text, lingo.toolbarNewHere.tooltip, onClickToolbarNewHere);\n insertSpacer(theToolbar);\n }\n}\n
Eine von mehreren ~Image-Anzeigen für Opel\n----\n<<imglink http://www.diemuellers.de/belege/opel.jpg * null 1>>\n----
These options for customising TiddlyWiki are saved in your browser\n\n<<option chkSaveBackups>> SaveBackups\n<<option chkAutoSave>> AutoSave\n<<option chkGenerateAnRssFeed>> GenerateAnRssFeed\n<<option chkRegExpSearch>> RegExpSearch\n<<option chkCaseSensitiveSearch>> CaseSensitiveSearch\n<<option chkAnimate>> EnableAnimations\n\nSee AdvancedOptions
Science Fiction, Hugo Winner, Nebula Winner. Ein Tipp von Markus. \n\nEs geht um Erziehung, Persönlichkeitsentwicklung, Indiviudalität. Wie hinten richtig betont wird: "INTENSE is the word for ENDER'S GAME". Es lohnt sich anscheinend, auch mal in den Folgeband »Speaker for the dead hineinzulesen«.
|Standard Periodic Table (ref. Wikipedia)|c\n|| !1 | !2 |!| !3 | !4 | !5 | !6 | !7 | !8 | !9 | !10 | !11 | !12 | !13 | !14 | !15 | !16 | !17 | !18 |\n|!1|bgcolor(#a0ffa0): @@color(red):H@@ |>|>|>|>|>|>|>|>|>|>|>|>|>|>|>|>||bgcolor(#c0ffff): @@color(red):He@@ |\n|!2|bgcolor(#ff6666): Li |bgcolor(#ffdead): Be |>|>|>|>|>|>|>|>|>|>||bgcolor(#cccc99): B |bgcolor(#a0ffa0): C |bgcolor(#a0ffa0): @@color(red):N@@ |bgcolor(#a0ffa0): @@color(red):O@@ |bgcolor(#ffff99): @@color(red):F@@ |bgcolor(#c0ffff): @@color(red):Ne@@ |\n|!3|bgcolor(#ff6666): Na |bgcolor(#ffdead): Mg |>|>|>|>|>|>|>|>|>|>||bgcolor(#cccccc): Al |bgcolor(#cccc99): Si |bgcolor(#a0ffa0): P |bgcolor(#a0ffa0): S |bgcolor(#ffff99): @@color(red):Cl@@ |bgcolor(#c0ffff): @@color(red):Ar@@ |\n|!4|bgcolor(#ff6666): K |bgcolor(#ffdead): Ca ||bgcolor(#ffc0c0): Sc |bgcolor(#ffc0c0): Ti |bgcolor(#ffc0c0): V |bgcolor(#ffc0c0): Cr |bgcolor(#ffc0c0): Mn |bgcolor(#ffc0c0): Fe |bgcolor(#ffc0c0): Co |bgcolor(#ffc0c0): Ni |bgcolor(#ffc0c0): Cu |bgcolor(#ffc0c0): Zn |bgcolor(#cccccc): Ga |bgcolor(#cccc99): Ge |bgcolor(#cccc99): As |bgcolor(#a0ffa0): Se |bgcolor(#ffff99): @@color(green):Br@@ |bgcolor(#c0ffff): @@color(red):Kr@@ |\n|!5|bgcolor(#ff6666): Rb |bgcolor(#ffdead): Sr ||bgcolor(#ffc0c0): Y |bgcolor(#ffc0c0): Zr |bgcolor(#ffc0c0): Nb |bgcolor(#ffc0c0): Mo |bgcolor(#ffc0c0): Tc |bgcolor(#ffc0c0): Ru |bgcolor(#ffc0c0): Rh |bgcolor(#ffc0c0): Pd |bgcolor(#ffc0c0): Ag |bgcolor(#ffc0c0): Cd |bgcolor(#cccccc): In |bgcolor(#cccccc): Sn |bgcolor(#cccc99): Sb |bgcolor(#cccc99): Te |bgcolor(#ffff99): I |bgcolor(#c0ffff): @@color(red):Xe@@ |\n|!6|bgcolor(#ff6666): Cs |bgcolor(#ffdead): Ba |bgcolor(#ffbfff):^^*1^^|bgcolor(#ffc0c0): Lu |bgcolor(#ffc0c0): Hf |bgcolor(#ffc0c0): Ta |bgcolor(#ffc0c0): W |bgcolor(#ffc0c0): Re |bgcolor(#ffc0c0): Os |bgcolor(#ffc0c0): Ir |bgcolor(#ffc0c0): Pt |bgcolor(#ffc0c0): Au |bgcolor(#ffc0c0): @@color(green):Hg@@ |bgcolor(#cccccc): Tl |bgcolor(#cccccc): Pb |bgcolor(#cccccc): Bi |bgcolor(#cccc99): Po |bgcolor(#ffff99): At |bgcolor(#c0ffff): @@color(red):Rn@@ |\n|!7|bgcolor(#ff6666): Fr |bgcolor(#ffdead): Ra |bgcolor(#ff99cc):^^*2^^|bgcolor(#ffc0c0): Lr |bgcolor(#ffc0c0): Rf |bgcolor(#ffc0c0): Db |bgcolor(#ffc0c0): Sq |bgcolor(#ffc0c0): Bh |bgcolor(#ffc0c0): Hs |bgcolor(#ffc0c0): Mt |bgcolor(#ffc0c0): Ds |bgcolor(#ffc0c0): Rg |bgcolor(#ffc0c0): @@color(green):Uub@@ |bgcolor(#cccccc): Uut |bgcolor(#cccccc): Uuq |bgcolor(#cccccc): Uup |bgcolor(#cccccc): Uuh |bgcolor(#fcfecc): @@color(#cccccc):Uus@@ |bgcolor(#ecfefc): @@color(#cccccc):Uuo@@ |\n\n| !Lanthanides^^*1^^|bgcolor(#ffbfff): La |bgcolor(#ffbfff): Ce |bgcolor(#ffbfff): Pr |bgcolor(#ffbfff): Nd |bgcolor(#ffbfff): Pm |bgcolor(#ffbfff): Sm |bgcolor(#ffbfff): Eu |bgcolor(#ffbfff): Gd |bgcolor(#ffbfff): Tb |bgcolor(#ffbfff): Dy |bgcolor(#ffbfff): Ho |bgcolor(#ffbfff): Er |bgcolor(#ffbfff): Tm |bgcolor(#ffbfff): Yb |\n| !Actinides^^*2^^|bgcolor(#ff99cc): Ac |bgcolor(#ff99cc): Th |bgcolor(#ff99cc): Pa |bgcolor(#ff99cc): U |bgcolor(#ff99cc): Np |bgcolor(#ff99cc): Pu |bgcolor(#ff99cc): Am |bgcolor(#ff99cc): Cm |bgcolor(#ff99cc): Bk |bgcolor(#ff99cc): Cf |bgcolor(#ff99cc): Es |bgcolor(#ff99cc): Fm |bgcolor(#ff99cc): Md |bgcolor(#ff99cc): No |\n\n*Chemical Series of the Periodic Table\n**@@bgcolor(#ff6666): Alkali metals@@\n**@@bgcolor(#ffdead): Alkaline earth metals@@\n**@@bgcolor(#ffbfff): Lanthanides@@\n**@@bgcolor(#ff99cc): Actinides@@\n**@@bgcolor(#ffc0c0): Transition metals@@\n**@@bgcolor(#cccccc): Poor metals@@\n**@@bgcolor(#cccc99): Metalloids@@\n**@@bgcolor(#a0ffa0): Nonmetals@@\n**@@bgcolor(#ffff99): Halogens@@\n**@@bgcolor(#c0ffff): Noble gases@@\n\n*State at standard temperature and pressure\n**those in @@color(red):red@@ are gases\n**those in @@color(green):green@@ are liquids\n**those in black are solids\n
Scheint schon das zweite Buch um die irische Nonne Schwester Fidelma zu sein, die um 664 Kriminalfälle aufklärt. \n\nNetter, klassischer Krimi, bei dem am Ende alle Verdächtigen zusammengerufen werden, um den brillanten Ausführungen der Detektiv-Nonne zu lauschen, die bei dieser Gelegenheit den Täter entlarvt. Voller Red Herrings und Clues.
You can now link to [[external sites|http://www.osmosoft.com]] or [[ordinary tiddlers|Bilder]] with ordinary words, without the messiness of the full URL appearing. Edit this tiddler to see how.\n\nYou can also LinkToFolders.
Nachdem unser Berliner Freund, ~Ex-Schwager-ins-spe und ~Jazzbo-Trommler [[Robert|http://www.jazzbo.de/]] am Wochenende seine fahrtüchtige Vespa 200 PX gegen meine auseinandergenommene und fahruntüchtige Lambretta 150 LI getauscht hat, die er selbst mir vor über 10 Jahren vom Gardasee mitgebracht hatte, zähle ich mich wieder zu den Scooteristen (-ti?). Darum gleich die Links zu den Shops, die ich dann wohl in Zukunft brauche: [[Vespa Archiv|http://www.vespa-archiv.de/index1.htm]], [[eBay|http://search.ebay.de/search/search.dll?from=R40&satitle=vespa+px+200]], [[Scooter Center|http://scooter-center.com/]], [[SIP|http://www.rollerfahren.de]], [[Scooterstuff|http://www.scooterstuff.de/]] und [[Rollershop|http://www.rollershop-express.de]].
Das TiddlyWiki von kazam in der Version <<version>> von <<today>>
[[ⓚⓐⓩⓐⓜ|http://www.kazam.de]]
http://www.kazam.de/
<<imglink http://www.diemuellers.de/belege/Smarties_Mond.jpg * null 1 >>
<<imglink http://www.diemuellers.de/belege/Smarties_Steinzeit.jpg * null 1 >>
//Smiley Samples:\n//<<smiley :-)>>\n//<<smiley :-(>>\n//<<smiley ;-)>>\n//<<smiley :-|>>\n//<<smiley :-D>>\n//<<smiley>>\n//here's how they behave inside <<smiley :-)>> some text.\n//a few more to come!\n\nversion.extensions.smileyMacro = {major: 0, minor: 1, revision: 0, date: new Date(2005,7,20)};\n//Author: Alan Hecht\nconfig.macros.smiley = {}\nconfig.macros.smiley.handler = function(place,macroName,params)\n{\n var palette = ["transparent","#000000","#1a1507","#352e18","#464646","#666666","#a3141e","#b06b63","#cc9900","#dd9030","#dddddd","#e89d00","#edc32a","#f3cb3c","#fdf201","#fdf526","#ff3149","#ffac00","#ffbf06","#ffc846","#ffcc66","#ffd758","#ffdd01","#ffea7b","#ffed55","#ffffff"];\n var data = params;\n var imageMap = null;\n if(!data[0] || data[0] == ":-)" || data[0] == ":)")\n\n imageMap = "aaaaabbbbbaaaaaaaabdtyyvtdbaaaaabnyxxxxxujbaaabmyyffyffuujbaadyyyeeyeetttdabppppddyddpmmlbbwoooooooowsrlbbwwpooooowwmrlbbwwboooowwwbllbbwwwboooowbrllbacwwwbbbbbrllcaablswwwwsrrlibaaablsssrrllibaaaaabcrrlllcbaaaaaaaabbbbbaaaaa";\n else if(data[0] == ":-(" || data[0] == ":(")\n imageMap = "aaaaabbbbbaaaaaaaabdtyyvtdbaaaaabnyxxxxxujbaaabmyyyyyyyuujbaadyyyeeyeetttdabppppddyddpmmlbbwoooooooowsrlbbwwpooooowwmrlbbwwoooooowwrllbbwwwwbbbbbsrllbacwwbwwwwsbllcaablswwwwsrrlibaaablsssrrllibaaaaabcrrlllcbaaaaaaaabbbbbaaaaa";\n else if(data[0] == ";-)" || data[0] == ";)")\n imageMap = "aaaaabbbbbaaaaaaaabdtyyvtdbaaaaabnyxxxxxujbaaabmyyxxxxxuujbaadyyyxxxeetttdabppphddyddpmmlbbwoooooooowsrlbbwwpooooowwmrlbbwwboooowwwbllbbwwwboooowbrllbacwwwbbbbbrllcaablswwwwsrrlibaaablsssrrllibaaaaabcrrlllcbaaaaaaaabbbbbaaaaa";\n else if(data[0] == ":-|" || data[0] == ":|")\n imageMap = "aaaaabbbbbaaaaaaaabdtyyvtdbaaaaabnyxxxxxujbaaabmyyffyffuujbaadyyyeeyeetttdabppppddyddpmmlbbwoooooooowsrlbbwwpooooowwmrlbbwwoooooowwrllbbwwwwbbbbbsrllbacwwwwwwwsrllcaablswwwwsrrlibaaablsssrrllibaaaaabcrrlllcbaaaaaaaabbbbbaaaaa";\n else if(data[0] == ":-D" || data[0] == ":D")\n imageMap = "aaaaabbbbbaaaaaaaabdtyyvtdbaaaaabnyxxxxxujbaaabmyyeeyeeuujbaadyyyeeyeetttdabppppyyyyypmmlbbwbbbbbbbbbbblbbwbkzzzzzzzkbwbbwbfzzzzzzzfbwbbwbkzzzzzzzkbwbacwbkzzzzzkblcaablsbkzzzkblibaaablsbbbbblibaaaaabcrrlllcbaaaaaaaabbbbbaaaaa";\n else\n createTiddlyElement(place,"span",null,"errorNoSuchMacro","unknown smiley");\n if(imageMap)\n {\n var box = createTiddlyElement(place,"span",null,"smiley",String.fromCharCode(160));\n box.style.position = "relative";\n box.style.width = "15px";\n box.style.height = "15px";\n box.style.marginLeft = "1px";\n box.style.marginRight = "1px";\n box.style.paddingRight = "12px";\n box.style.verticalAlign = "top";\n\n //now divide into 15x15 grid and create each pixel\n // rows\n for(r=0; r<15; r++)\n {\n // columns\n for(c=0; c<15; c++)\n {\n //create each pixel with the correct background\n var pix = document.createElement("img");\n pix.className = "smileyPixel";\n pix.style.position = "absolute";\n pix.border = 0;\n pix.style.top = r + "px";\n pix.style.left = c + "px";\n pix.style.width = "1px";\n pix.style.height = "1px";\n pix.style.backgroundColor = palette[imageMap.charCodeAt((r*15)+c)-97];\n pix.src = "data:image/gif,GIF89a%01%00%01%00%91%FF%00%FF%FF%FF%00%00%00%C0%C0%C0%00%00%00!%F9%04%01%00%00%02%00%2C%00%00%00%00%01%00%01%00%40%02%02T%01%00%3B";\n box.appendChild(pix);\n }\n }\n }\n}\n
[[OS X Apps|http://osx.hyperjeff.net/Apps/]] :: [[CSS Generator|http://www.copysense.co.uk/border.htm]] :: [[Essential Bookmarks|http://essential-bookmarks.bernd-lutz.de/]] :: [[S5 Präsentation|http://www.meyerweb.com/eric/tools/s5/]] :: [[S5 Präsentation deutsch|http://yatil.de/s5/]] :: [[Colorschemes|http://www.colorschemer.com/schemes/index.php]] :: [[LaTeX|http://latex.yauh.de/]] :: [[Colr Grabber|http://colr.org/]] :: [[Color Grabber2|http://www.redalt.com/Tools/ilyc.php]] ::
Nach der Hälfte des [[Buches|http://www.amazon.de/exec/obidos/search-handle-url/index=books-de&field-author=Clarke%2C%20Susanna/028-7897003-1322158]] musste ich es entweder abgeben oder verlängern lassen. Habe mich für das Abgeben entschieden, weil ich zwischenzeitlich den neuesten Harry Potter angefangen habe und das Buch von Susannah Clarke sooo toll nun doch nicht war. Aber wenn ich keine Alternative gehabt hätte, dann hätte ich es zu Ende gelesen.
<<imglink http://www.diemuellers.de/belege/sTWA1.jpg TWA1 "Klicken zum Vergrößern" 1 125 176>><<imglink http://www.diemuellers.de/belege/sTWA2.jpg TWA2 "Klicken zum Vergrößern" 1 125 176>><<imglink http://www.diemuellers.de/belege/TWA_Knie.jpg TWA3 "Klicken zum Vergrößern" 1 125 176>>\n
<<imglink http://www.diemuellers.de/belege/sTWA1.jpg null null 1>><<imglink http://www.diemuellers.de/belege/TWA1A.jpg null null 1 300>>\nAnzeige in etwas größer plus Ausschnittsvergrößerung.
<<imglink http://www.diemuellers.de/belege/sTWA2.jpg null null 1>><<imglink http://www.diemuellers.de/belege/TWA2A.jpg null null 1 300>>\nAnzeige in etwas größer plus Ausschnittsvergrößerung.
<<imglink http://www.diemuellers.de/belege/TWA_Knie.jpg null null 1>>
/***\n|''Name:''|TableTagsPlugin |\n|''Version:''|1.0 |\n|''Source:''|http://thePettersons.org/PaulsNotepad.html#TableTagsPlugin |\n|''Author:''|[[Paul Petterson]] |\n|''Type:''|Macro Extension |\n|''Requires:''|TiddlyWiki 1.2.32 or higher |\n!Description\nLists all tiddlers with a given tag in a table format. Can specify the number of columns in the table.\n\n!Syntax\n{{{<<tableTags systemConfig 4>>}}}\n\n!Sample Output\n<<tableTags systemConfig 4>>\n\n!Known issues\n* Doesn't always display a good table if there are two many empty columns in the last row.\n\n!Revision history\nv1.0 Initial Public Release\n\n!Code\n***/\n/*{{{*/\nconfig.macros.tableTags = { text: "Hello" };\nconfig.macros.tableTags.handler = function(place,macroName,params)\n{\n var tag = params[0] ? params[0] : "all";\n var rows = params[1] ? params[1] : 3;\n var tagged = store.getTaggedTiddlers(params[0]);\n var tbl = createTiddlyElement(place,"table",null,null,"");\n var tb = createTiddlyElement( tbl, "tbody", null, null );\n var tr ;\n for(var r=0;r<tagged.length;r++)\n {\n if ( ( r % rows ) == 0 )\n tr = createTiddlyElement( tb, "tr", null, null, "");\n var td = createTiddlyElement(tr,"td",null,null,"");\n createTiddlyLink(td,tagged[r].title,true);\n }\n}\n/*}}}*/\n
config.views.editor.tagChooser.text = "Tag hinzufügen";\n\nwindow.createTiddlerEditor_mptw_tagstop = window.createTiddlerEditor;\nwindow.createTiddlerEditor = function(title) {\n createTiddlerEditor_mptw_tagstop(title);\n var theEditor = document.getElementById("editorWrapper"+title);\n var theTitleBox = document.getElementById("editorTitle"+title);\n var theBodyBox = document.getElementById("editorBody"+title);\n var theTagsBox = document.getElementById("editorTags"+title);\n var tagPrompt = document.getElementById("editorFooter"+title);\n theEditor.insertBefore(theTagsBox,theBodyBox);\n theEditor.insertBefore(theEditor.childNodes[3],theBodyBox);\n\n\n}
<<imglink http://www.diemuellers.de/belege/vorsprun.jpg TalanxVorsprung "Eine Anzeige" null 125 176>><<imglink http://www.diemuellers.de/belege/Rampe.jpg TalanxLeistung "Eine Anzeige" null 125 176>><<imglink http://www.diemuellers.de/belege/Talanx_Intro.jpg http://www.diemuellers.de/spots/Talanx_Intro_final.mpg "Börsentrailer Intro" null 160 120>><<imglink http://www.diemuellers.de/belege/Talanx_Outro.jpg http://www.diemuellers.de/spots/Talanx_Outro_final.mpg "Börsentrailer Outro" null 160 120>>\n\n Die Talanx AG ist die Finanzholding der ~HDI-Gruppe, der drittgrößten Versicherungsgruppe Deutschlands. Die Gruppe ist weltweit tätig und bietet mit mehreren Marken Sachversicherungen, Altersvorsorge, Investmentprodukte sowie Rückversicherungen.\n\nIm Juli 2003 rückt die Talanx AG an die Spitze des Konzerns. Das Unternehmen will sich jetzt – auch im Hinblick auf den geplanten Börsengang – als starke Marke etablieren.\n\nCitigate Demuth entwickelt ein neues Erscheinungsbild und einen unverwechselbaren Werbeauftritt. Die Imagekampagne positioniert Talanx selbstbewusst als den neuen Maßstab im Markt der Versicherer und Finanzdienstleister.\n\nDie Motive fokussieren auf herausragende Merkmale der Talanx und setzen diese in ungewöhnliche, aufmerksamkeitsstarke Bilder um.
<<imglink http://www.diemuellers.de/belege/Rampe.jpg TalanxLeistung null null>>
<<imglink http://www.diemuellers.de/belege/vorsprun.jpg TalanxVorsprung null null>>
Ein klassischer Scheibenweltroman, lässt sich schön weglesen, sehr unterhaltsam durch die Seitenhiebe auf unsere Parallelwelt. Thema dieses Buches ist der Journalismus.
// //''Name:'' ToolbarCreation plugin\n// //''Author:'' Alan Hechts\n\n// //''Please note that I am posting this tiddler for demo purposes only. I haven't fully released the code as I'm awaiting some upcoming changes to ~TiddlyWiki.''\n\n// //''This tiddler demonstrates how you can add, remove & rearrange toolbar buttons using a macro approach. This tiddler (the one you are reading now) is the only "required" addition to ~TiddlyWiki 1.2.28 to allow a customizable toolbar.''\n\n// //''By replacing the createTiddlerToolbar function in the hard code and creating new macros that emulate each toolbar button, you can now add or rearrange both the editing and viewing toolbars. Folks, it's just a matter of time before you can have one toolbar set for editors and one for web viewers!''\n\n// //''To create your own toolbars (you can even try it live on this website), simply edit the two new tiddlers, called EditorToolbar and ViewerToolbar (no special tags are necessary for either of these tiddlers). Then use the following macro references to add buttons in the order that you desire:''\n\n// //''Viewing toolbar:'' <<toolbarClose>> <<toolbarEdit>> <<toolbarCollapse>> <<toolbarCloseOthers>> <<toolbarPermalink>> <<toolbarReferences>> \n// //''Editing Toolbar:'' <<toolbarDone>> <<toolbarCancel>> <<toolbarSpellCheck>> <<toolbarDuplicate>> <<toolbarDelete>> <<toolbarEditHelp>>\n// //''Note: these buttons will not work properly from within tiddlers, they will only work when displayed in the toolbar area.''\n\n// // ''Code Section''\n\n// //''Macro Declarations'' (some repeated from the original code)\nconfig.macros.toolbarClose = {};\nconfig.macros.toolbarEdit = {};\nconfig.macros.toolbarPermalink = {};\nconfig.macros.toolbarReferences = {};\nconfig.macros.toolbarDone = {};\nconfig.macros.toolbarCancel = {};\nconfig.macros.toolbarDelete = {};\n\n// //''Steve's additions''\nconfig.macros.toolbarEncrypt = {};\nconfig.macros.toolbarDecrypt = {};\nconfig.macros.toolbarEditDecrypt = {};\n\n\n// //''Corresponding Macro functions''\nconfig.macros.toolbarClose.handler = function(place)\n{\n lingo = config.views.wikified;\n createTiddlyButton(place,lingo.toolbarClose.text,lingo.toolbarClose.tooltip,onClickToolbarClose,null,null,"toolbarClose");\n}\n\nconfig.macros.toolbarEdit.handler = function(place,macroName,params)\n{\n lingo = config.views.wikified;\n createTiddlyButton(place,lingo.toolbarEdit.text,lingo.toolbarEdit.tooltip,onClickToolbarEdit);\n}\n\nconfig.macros.toolbarPermalink.handler = function(place,macroName,params)\n{\n lingo = config.views.wikified;\n createTiddlyButton(place,lingo.toolbarPermalink.text,lingo.toolbarPermalink.tooltip,onClickToolbarPermaLink);\n}\n\nconfig.macros.toolbarReferences.handler = function(place,macroName,params)\n{\n lingo = config.views.wikified;\n createTiddlyButton(place,lingo.toolbarReferences.text,lingo.toolbarReferences.tooltip,onClickToolbarReferences);\n}\n\nconfig.macros.toolbarDone.handler = function(place,macroName,params)\n{\n lingo = config.views.editor;\n createTiddlyButton(place,lingo.toolbarDone.text,lingo.toolbarDone.tooltip,onClickToolbarSave);\n}\n\nconfig.macros.toolbarCancel.handler = function(place,macroName,params)\n{\n lingo = config.views.editor;\n createTiddlyButton(place,lingo.toolbarCancel.text,lingo.toolbarCancel.tooltip,onClickToolbarUndo);\n}\n\nconfig.macros.toolbarDelete.handler = function(place,macroName,params)\n{\n lingo = config.views.editor;\n createTiddlyButton(place,lingo.toolbarDelete.text,lingo.toolbarDelete.tooltip,onClickToolbarDelete);\n}\n\n// //(These shouldn't be here, but IE fails if they aren't there must be some kind of ordering problem)\nfunction onClickToolbarEncrypt(e)\n{\n if (!e) var e = window.event;\n if(encryptKey == "")\n encryptChangePassword();\n var title = this.parentNode.id.substr(7);\n var newBody = document.getElementById("editorBody" + title).value;\n newBody = encryptContents(newBody);\n document.getElementById("editorBody" + title).value = newBody;\n}\n\nfunction onClickToolbarEditDecrypt(e)\n{\n if (!e) var e = window.event;\n if(encryptKey == "")\n encryptChangePassword();\n var title = this.parentNode.id.substr(7);\n var newBody = document.getElementById("editorBody" + title).value;\n newBody = decryptContents(newBody);\n document.getElementById("editorBody" + title).value = newBody;\n}\n\nfunction onClickToolbarDecrypt(e)\n{\n if (!e) var e = window.event;\n if(encryptKey == "")\n encryptChangePassword();\n\n var title = this.parentNode.id.substr(7);\n var theBody = document.getElementById("body" + title);\n var theViewer = document.getElementById("viewer" + title);\n if(theViewer)\n theViewer.parentNode.removeChild(theViewer);\n var theViewer = createTiddlyElement(theBody,"div","viewer" + title,"viewer",null);\n\n var newText = store.getTiddlerText(title);\n newText = decryptContents(newText);\n wikify(newText,theViewer,false,false);\n}\n\nconfig.macros.toolbarEncrypt.handler = function(place,macroName,params)\n{\n lingo = config.views.editor;\n createTiddlyButton(place,lingo.toolbarEncrypt.text,lingo.toolbarEncrypt.tooltip,onClickToolbarEncrypt);\n}\n\nconfig.macros.toolbarEditDecrypt.handler = function(place,macroName,params)\n{\n lingo = config.views.editor;\n createTiddlyButton(place,lingo.toolbarDecrypt.text,lingo.toolbarDecrypt.tooltip,onClickToolbarEditDecrypt);\n}\n\nconfig.macros.toolbarDecrypt.handler = function(place,macroName,params)\n{\n lingo = config.views.wikified;\n createTiddlyButton(place,lingo.toolbarDecrypt.text,lingo.toolbarDecrypt.tooltip,onClickToolbarDecrypt);\n}\n\n// //''Replaced TW functions''\nwindow.createTiddlerToolbar = function createTiddlerToolbar(title,isEditor)\n{\n var theToolbar = document.getElementById("toolbar" + title);\n if(theToolbar)\n {\n removeChildren(theToolbar);\n if(isEditor)\n {\n // Editor toolbar\n wikify(store.getTiddlerText("EditorToolbar"),theToolbar,null,null);\n }\n else\n {\n // Viewer toolbar\n wikify(store.getTiddlerText("ViewerToolbar"),theToolbar,null,null);\n }\n }\n}\n\n// //''Shadowed tiddlers (in case they don't yet exist)''\nconfig.shadowTiddlers.ViewerToolbar = "<<toolbarClose>> <<toolbarEdit>> <<toolbarCollapse>> <<toolbarCloseOthers>> <<toolbarPermalink>> <<toolbarReferences>>";\nconfig.shadowTiddlers.EditorToolbar = "<<toolbarDone>> <<toolbarCancel>> <<toolbarSpellCheck>> <<toolbarDuplicate>> <<toolbarDelete>> <<toolbarEditHelp>>";\nconfig.shadowTiddlers.EditingHelp = "Click on each topic below to see formatting instructions and examples:\sn<<listTags formatting title *>>";\n\n// // Function to dynamically handle changes to the special toolbar tiddlers\nfunction refreshToolbars()\n{\n clearMessage();\n var place = document.getElementById("tiddlerDisplay");\n var tiddler = place.firstChild;\n var nextTiddler;\n while(tiddler)\n {\n nextTiddler = tiddler.nextSibling;\n if(tiddler.id)\n if(tiddler.id.substr(0,7) == "tiddler")\n {\n var title = tiddler.id.substr(7);\n createTiddlerToolbar(title,false)\n }\n tiddler = nextTiddler;\n }\n}\n\n// // Additional notifications for toolbar layout changes\nstore.addNotification("ViewerToolbar",function(){refreshToolbars()});\nstore.addNotification("EditorToolbar",function(){refreshToolbars()});\n\n\n
Honestly, nothing (especially TiddlyWiki) is upgrade-proof because anything can happen in an upgrade. Here I'm mainly talking about the average upgrade (ie from 1.2.26 to 1.2.27).
| !date | !user | !location | !storeUrl | !uploadDir | !toFilename | !backupdir | !origin |\n| 17/7/2006 16:28:28 | YourName | [[/|http://tiddlyspot.com/kazam/]] | [[store.cgi|http://tiddlyspot.com/kazam/store.cgi]] | . | index.html | . |\n| 17/7/2006 16:28:43 | YourName | [[/|http://tiddlyspot.com/kazam/]] | [[store.cgi|http://tiddlyspot.com/kazam/store.cgi]] | . | index.html | . |\n| 17/7/2006 16:45:24 | YourName | [[kazam.html|file:///Users/frankmueller/Desktop/kazam.html]] | [[store.cgi|http://tiddlyspot.com/kazam/store.cgi]] | . | index.html | . |\n| 17/7/2006 16:46:4 | YourName | [[kazam.html|file:///Users/frankmueller/Desktop/kazam.html]] | [[store.cgi|http://tiddlyspot.com/kazam/store.cgi]] | . | index.html | . |\n| 17/7/2006 17:11:26 | FrankMueller | [[kazam.html|file:///Volumes/STICK/txt/kazam_t2t/kazam.html]] | [[store.cgi|http://tiddlyspot.com/kazam/store.cgi]] | . | index.html | . |\n| 17/7/2006 17:29:5 | FrankMueller | [[kazam.html|file:///Volumes/STICK/txt/kazam_t2t/kazam.html]] | [[store.cgi|http://tiddlyspot.com/kazam/store.cgi]] | . | index.html | . | Ok |\n| 17/7/2006 17:36:42 | FrankMueller | [[kazam.html|file:///Volumes/STICK/txt/kazam_t2t/kazam.html]] | [[store.cgi|http://tiddlyspot.com/kazam/store.cgi]] | . | index.html | . |\n| 17/7/2006 17:49:20 | FrankMueller | [[/|http://tiddlyspot.com/kazam/]] | [[store.cgi|http://tiddlyspot.com/kazam/store.cgi]] | . | index.html | . |
/***\n<<tiddler UploadPluginDoc>>\n!Code\n***/\n//{{{\nversion.extensions.UploadPlugin = {\n major: 3, minor: 3, revision: 3, \n date: new Date(2006,6,30),\n type: 'macro',\n source: 'http://tiddlywiki.bidix.info/#UploadPlugin',\n docs: 'http://tiddlywiki.bidix.info/#UploadPluginDoc'\n};\n//}}}\n\n////+++!![config.lib.file]\n\n//{{{\nif (!config.lib) config.lib = {};\nif (!config.lib.file) config.lib.file= {\n author: 'BidiX',\n version: {major: 0, minor: 1, revision: 0}, \n date: new Date(2006,3,9)\n};\nconfig.lib.file.dirname = function (filePath) {\n var lastpos;\n if ((lastpos = filePath.lastIndexOf("/")) != -1) {\n return filePath.substring(0, lastpos);\n } else {\n return filePath.substring(0, filePath.lastIndexOf("\s\s"));\n }\n};\nconfig.lib.file.basename = function (filePath) {\n var lastpos;\n if ((lastpos = filePath.lastIndexOf("#")) != -1) \n filePath = filePath.substring(0, lastpos);\n if ((lastpos = filePath.lastIndexOf("/")) != -1) {\n return filePath.substring(lastpos + 1);\n } else\n return filePath.substring(filePath.lastIndexOf("\s\s")+1);\n};\nwindow.basename = function() {return "@@deprecated@@";};\n//}}}\n////===\n\n////+++!![config.lib.log]\n\n//{{{\nif (!config.lib) config.lib = {};\nif (!config.lib.log) config.lib.log= {\n author: 'BidiX',\n version: {major: 0, minor: 1, revision: 0}, \n date: new Date(2006,3,9)\n};\nconfig.lib.Log = function(tiddlerTitle, logHeader) {\n if (version.major < 2)\n this.tiddler = store.tiddlers[tiddlerTitle];\n else\n this.tiddler = store.getTiddler(tiddlerTitle);\n if (!this.tiddler) {\n this.tiddler = new Tiddler();\n this.tiddler.title = tiddlerTitle;\n this.tiddler.text = "| !date | !user | !location |" + logHeader;\n this.tiddler.created = new Date();\n this.tiddler.modifier = config.options.txtUserName;\n this.tiddler.modified = new Date();\n if (version.major < 2)\n store.tiddlers[tiddlerTitle] = this.tiddler;\n else\n store.addTiddler(this.tiddler);\n }\n return this;\n};\n\nconfig.lib.Log.prototype.newLine = function (line) {\n var now = new Date();\n var newText = "| ";\n newText += now.getDate()+"/"+(now.getMonth()+1)+"/"+now.getFullYear() + " ";\n newText += now.getHours()+":"+now.getMinutes()+":"+now.getSeconds()+" | ";\n newText += config.options.txtUserName + " | ";\n var location = document.location.toString();\n var filename = config.lib.file.basename(location);\n if (!filename) filename = '/';\n newText += "[["+filename+"|"+location + "]] |";\n this.tiddler.text = this.tiddler.text + "\sn" + newText;\n this.addToLine(line);\n};\n\nconfig.lib.Log.prototype.addToLine = function (text) {\n this.tiddler.text = this.tiddler.text + text;\n this.tiddler.modifier = config.options.txtUserName;\n this.tiddler.modified = new Date();\n if (version.major < 2)\n store.tiddlers[this.tiddler.tittle] = this.tiddler;\n else {\n store.addTiddler(this.tiddler);\n story.refreshTiddler(this.tiddler.title);\n store.notify(this.tiddler.title, true);\n }\n if (version.major < 2)\n store.notifyAll(); \n};\n//}}}\n////===\n\n////+++!![config.lib.options]\n\n//{{{\nif (!config.lib) config.lib = {};\nif (!config.lib.options) config.lib.options = {\n author: 'BidiX',\n version: {major: 0, minor: 1, revision: 0}, \n date: new Date(2006,3,9)\n};\n\nconfig.lib.options.init = function (name, defaultValue) {\n if (!config.options[name]) {\n config.options[name] = defaultValue;\n saveOptionCookie(name);\n }\n};\n//}}}\n////===\n\n////+++!![PasswordTweak]\n\n//{{{\nversion.extensions.PasswordTweak = {\n major: 1, minor: 0, revision: 2, date: new Date(2006,3,11),\n type: 'tweak',\n source: 'http://tiddlywiki.bidix.info/#PasswordTweak'\n};\n//}}}\n/***\n!!config.macros.option\n***/\n//{{{\nconfig.macros.option.passwordCheckboxLabel = "Save this password on this computer";\nconfig.macros.option.passwordType = "password"; // password | text\n\nconfig.macros.option.onChangeOption = function(e)\n{\n var opt = this.getAttribute("option");\n var elementType,valueField;\n if(opt) {\n switch(opt.substr(0,3)) {\n case "txt":\n elementType = "input";\n valueField = "value";\n break;\n case "pas":\n elementType = "input";\n valueField = "value";\n break;\n case "chk":\n elementType = "input";\n valueField = "checked";\n break;\n }\n config.options[opt] = this[valueField];\n saveOptionCookie(opt);\n var nodes = document.getElementsByTagName(elementType);\n for(var t=0; t<nodes.length; t++) {\n var optNode = nodes[t].getAttribute("option");\n if (opt == optNode) \n nodes[t][valueField] = this[valueField];\n }\n }\n return(true);\n};\n\nconfig.macros.option.handler = function(place,macroName,params)\n{\n var opt = params[0];\n var size = 15;\n if (params[1])\n size = params[1];\n if(config.options[opt] === undefined) {\n return;}\n var c;\n switch(opt.substr(0,3)) {\n case "txt":\n c = document.createElement("input");\n c.onkeyup = this.onChangeOption;\n c.setAttribute ("option",opt);\n c.size = size;\n c.value = config.options[opt];\n place.appendChild(c);\n break;\n case "pas":\n // input password\n c = document.createElement ("input");\n c.setAttribute("type",config.macros.option.passwordType);\n c.onkeyup = this.onChangeOption;\n c.setAttribute("option",opt);\n c.size = size;\n c.value = config.options[opt];\n place.appendChild(c);\n // checkbox link with this password "save this password on this computer"\n c = document.createElement("input");\n c.setAttribute("type","checkbox");\n c.onclick = this.onChangeOption;\n c.setAttribute("option","chk"+opt);\n place.appendChild(c);\n c.checked = config.options["chk"+opt];\n // text savePasswordCheckboxLabel\n place.appendChild(document.createTextNode(config.macros.option.passwordCheckboxLabel));\n break;\n case "chk":\n c = document.createElement("input");\n c.setAttribute("type","checkbox");\n c.onclick = this.onChangeOption;\n c.setAttribute("option",opt);\n place.appendChild(c);\n c.checked = config.options[opt];\n break;\n }\n};\n//}}}\n/***\n!! Option cookie stuff\n***/\n//{{{\nwindow.loadOptionsCookie_orig_PasswordTweak = window.loadOptionsCookie;\nwindow.loadOptionsCookie = function()\n{\n var cookies = document.cookie.split(";");\n for(var c=0; c<cookies.length; c++) {\n var p = cookies[c].indexOf("=");\n if(p != -1) {\n var name = cookies[c].substr(0,p).trim();\n var value = cookies[c].substr(p+1).trim();\n switch(name.substr(0,3)) {\n case "txt":\n config.options[name] = unescape(value);\n break;\n case "pas":\n config.options[name] = unescape(value);\n break;\n case "chk":\n config.options[name] = value == "true";\n break;\n }\n }\n }\n};\n\nwindow.saveOptionCookie_orig_PasswordTweak = window.saveOptionCookie;\nwindow.saveOptionCookie = function(name)\n{\n var c = name + "=";\n switch(name.substr(0,3)) {\n case "txt":\n c += escape(config.options[name].toString());\n break;\n case "chk":\n c += config.options[name] ? "true" : "false";\n // is there an option link with this chk ?\n if (config.options[name.substr(3)]) {\n saveOptionCookie(name.substr(3));\n }\n break;\n case "pas":\n if (config.options["chk"+name]) {\n c += escape(config.options[name].toString());\n } else {\n c += "";\n }\n break;\n }\n c += "; expires=Fri, 1 Jan 2038 12:00:00 UTC; path=/";\n document.cookie = c;\n};\n//}}}\n/***\n!! Initializations\n***/\n//{{{\n// define config.options.pasPassword\nif (!config.options.pasPassword) {\n config.options.pasPassword = 'defaultPassword';\n window.saveOptionCookie('pasPassword');\n}\n// since loadCookies is first called befor password definition\n// we need to reload cookies\nwindow.loadOptionsCookie();\n//}}}\n////===\n\n////+++!![config.macros.upload]\n\n//{{{\nconfig.macros.upload = {\n accessKey: "U",\n formName: "UploadPlugin",\n contentType: "text/html;charset=UTF-8",\n defaultStoreScript: "store.php"\n};\n\n// only this two configs need to be translated\nconfig.macros.upload.messages = {\n aboutToUpload: "About to upload TiddlyWiki to %0",\n errorDownloading: "Error downloading",\n errorUploadingContent: "Error uploading content",\n fileNotFound: "file to upload not found",\n fileNotUploaded: "File %0 NOT uploaded",\n mainFileUploaded: "Main TiddlyWiki file uploaded to %0",\n urlParamMissing: "url param missing",\n rssFileNotUploaded: "RssFile %0 NOT uploaded",\n rssFileUploaded: "Rss File uploaded to %0"\n};\n\nconfig.macros.upload.label = {\n promptOption: "Save and Upload this TiddlyWiki with UploadOptions",\n promptParamMacro: "Save and Upload this TiddlyWiki in %0",\n saveLabel: "save to web", \n saveToDisk: "save to disk",\n uploadLabel: "upload" \n};\n\nconfig.macros.upload.handler = function(place,macroName,params){\n // parameters initialization\n var storeUrl = params[0];\n var toFilename = params[1];\n var backupDir = params[2];\n var uploadDir = params[3];\n var username = params[4];\n var password; // for security reason no password as macro parameter\n var label;\n if (document.location.toString().substr(0,4) == "http")\n label = this.label.saveLabel;\n else\n label = this.label.uploadLabel;\n var prompt;\n if (storeUrl) {\n prompt = this.label.promptParamMacro.toString().format([this.dirname(storeUrl)]);\n }\n else {\n prompt = this.label.promptOption;\n }\n createTiddlyButton(place, label, prompt, \n function () {\n config.macros.upload.upload(storeUrl, toFilename, uploadDir, backupDir, username, password); \n return false;}, \n null, null, this.accessKey);\n};\nconfig.macros.upload.UploadLog = function() {\n return new config.lib.Log('UploadLog', " !storeUrl | !uploadDir | !toFilename | !backupdir | !origin |" );\n};\nconfig.macros.upload.UploadLog.prototype = config.lib.Log.prototype;\nconfig.macros.upload.UploadLog.prototype.startUpload = function(storeUrl, toFilename, uploadDir, backupDir) {\n var line = " [[" + config.lib.file.basename(storeUrl) + "|" + storeUrl + "]] | ";\n line += uploadDir + " | " + toFilename + " | " + backupDir + " |";\n this.newLine(line);\n};\nconfig.macros.upload.UploadLog.prototype.endUpload = function() {\n this.addToLine(" Ok |");\n};\nconfig.macros.upload.basename = config.lib.file.basename;\nconfig.macros.upload.dirname = config.lib.file.dirname;\nconfig.macros.upload.upload = function(storeUrl, toFilename, uploadDir, backupDir, username, password)\n{\n // parameters initialization\n storeUrl = (storeUrl ? storeUrl : config.options.txtUploadStoreUrl);\n toFilename = (toFilename ? toFilename : config.options.txtUploadFilename);\n backupDir = (backupDir ? backupDir : config.options.txtUploadBackupDir);\n uploadDir = (uploadDir ? uploadDir : config.options.txtUploadDir);\n username = (username ? username : config.options.txtUploadUserName);\n password = config.options.pasUploadPassword; // for security reason no password as macro parameter\n if (storeUrl === '') {\n config.macros.upload.defaultStoreScript;\n }\n if (config.lib.file.dirname(storeUrl) === '') {\n storeUrl = config.lib.file.dirname(document.location.toString())+'/'+storeUrl;\n }\n if (toFilename === '') {\n toFilename = config.lib.file.basename(document.location.toString());\n }\n\n clearMessage();\n // only for forcing the message to display\n if (version.major < 2)\n store.notifyAll();\n if (!storeUrl) {\n alert(config.macros.upload.messages.urlParamMissing);\n return;\n }\n \n var log = new this.UploadLog();\n log.startUpload(storeUrl, toFilename, uploadDir, backupDir);\n if (document.location.toString().substr(0,5) == "file:") {\n saveChanges();\n }\n displayMessage(config.macros.upload.messages.aboutToUpload.format([this.dirname(storeUrl)]), this.dirname(storeUrl));\n this.uploadChanges(storeUrl, toFilename, uploadDir, backupDir, username, password);\n if(config.options.chkGenerateAnRssFeed) {\n //var rssContent = convertUnicodeToUTF8(generateRss());\n var rssContent = generateRss();\n var rssPath = toFilename.substr(0,toFilename.lastIndexOf(".")) + ".xml";\n this.uploadContent(rssContent, storeUrl, rssPath, uploadDir, '', username, password, \n function (responseText) {\n if (responseText.substring(0,1) != '0') {\n displayMessage(config.macros.upload.messages.rssFileNotUploaded.format([rssPath]));\n }\n else {\n if (uploadDir) {\n rssPath = uploadDir + "/" + config.macros.upload.basename(rssPath);\n } else {\n rssPath = config.macros.upload.basename(rssPath);\n }\n displayMessage(config.macros.upload.messages.rssFileUploaded.format(\n [config.macros.upload.dirname(storeUrl)+"/"+rssPath]), config.macros.upload.dirname(storeUrl)+"/"+rssPath);\n }\n // for debugging store.php uncomment last line\n //DEBUG alert(responseText);\n });\n }\n return;\n};\n\nconfig.macros.upload.uploadChanges = function(storeUrl, toFilename, uploadDir, backupDir, \n username, password) {\n var original;\n if (document.location.toString().substr(0,4) == "http") {\n original = this.download(storeUrl, toFilename, uploadDir, backupDir, username, password);\n return;\n }\n else {\n // standard way : Local file\n \n original = loadFile(getLocalPath(document.location.toString()));\n if(window.Components) {\n // it's a mozilla browser\n try {\n netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");\n var converter = Components.classes["@mozilla.org/intl/scriptableunicodeconverter"]\n .createInstance(Components.interfaces.nsIScriptableUnicodeConverter);\n converter.charset = "UTF-8";\n original = converter.ConvertToUnicode(original);\n }\n catch(e) {\n }\n }\n }\n //DEBUG alert(original);\n this.uploadChangesFrom(original, storeUrl, toFilename, uploadDir, backupDir, \n username, password);\n};\n\nconfig.macros.upload.uploadChangesFrom = function(original, storeUrl, toFilename, uploadDir, backupDir, \n username, password) {\n var startSaveArea = '<div id="' + 'storeArea">'; // Split up into two so that indexOf() of this source doesn't find it\n var endSaveArea = '</d' + 'iv>';\n // Locate the storeArea div's\n var posOpeningDiv = original.indexOf(startSaveArea);\n var posClosingDiv = original.lastIndexOf(endSaveArea);\n if((posOpeningDiv == -1) || (posClosingDiv == -1))\n {\n alert(config.messages.invalidFileError.format([document.location.toString()]));\n return;\n }\n var revised = original.substr(0,posOpeningDiv + startSaveArea.length) + \n allTiddlersAsHtml() + "\sn\st\st" +\n original.substr(posClosingDiv);\n var newSiteTitle;\n if(version.major < 2){\n newSiteTitle = (getElementText("siteTitle") + " - " + getElementText("siteSubtitle")).htmlEncode();\n } else {\n newSiteTitle = (wikifyPlain ("SiteTitle") + " - " + wikifyPlain ("SiteSubtitle")).htmlEncode();\n }\n revised = revised.replace(new RegExp("<title>[^<]*</title>", "im"),"<title>"+ newSiteTitle +"</title>");\n var response = this.uploadContent(revised, storeUrl, toFilename, uploadDir, backupDir, \n username, password, function (responseText) {\n if (responseText.substring(0,1) != '0') {\n alert(responseText);\n displayMessage(config.macros.upload.messages.fileNotUploaded.format([getLocalPath(document.location.toString())]));\n }\n else {\n if (uploadDir !== '') {\n toFilename = uploadDir + "/" + config.macros.upload.basename(toFilename);\n } else {\n toFilename = config.macros.upload.basename(toFilename);\n }\n displayMessage(config.macros.upload.messages.mainFileUploaded.format(\n [config.macros.upload.dirname(storeUrl)+"/"+toFilename]), config.macros.upload.dirname(storeUrl)+"/"+toFilename);\n var log = new config.macros.upload.UploadLog();\n log.endUpload();\n store.setDirty(false);\n }\n // for debugging store.php uncomment last line\n //DEBUG alert(responseText);\n }\n );\n};\n\nconfig.macros.upload.uploadContent = function(content, storeUrl, toFilename, uploadDir, backupDir, \n username, password, callbackFn) {\n var boundary = "---------------------------"+"AaB03x"; \n var request;\n try {\n request = new XMLHttpRequest();\n } \n catch (e) { \n request = new ActiveXObject("Msxml2.XMLHTTP"); \n }\n if (window.netscape){\n try {\n if (document.location.toString().substr(0,4) != "http") {\n netscape.security.PrivilegeManager.enablePrivilege('UniversalBrowserRead');}\n }\n catch (e) { }\n } \n //DEBUG alert("user["+config.options.txtUploadUserName+"] password[" + config.options.pasUploadPassword + "]");\n // compose headers data\n var sheader = "";\n sheader += "--" + boundary + "\sr\snContent-disposition: form-data; name=\s"";\n sheader += config.macros.upload.formName +"\s"\sr\sn\sr\sn";\n sheader += "backupDir="+backupDir\n +";user=" + username \n +";password=" + password\n +";uploaddir=" + uploadDir\n + ";;\sr\sn"; \n sheader += "\sr\sn" + "--" + boundary + "\sr\sn";\n sheader += "Content-disposition: form-data; name=\s"userfile\s"; filename=\s""+toFilename+"\s"\sr\sn";\n sheader += "Content-Type: " + config.macros.upload.contentType + "\sr\sn";\n sheader += "Content-Length: " + content.length + "\sr\sn\sr\sn";\n // compose trailer data\n var strailer = new String();\n strailer = "\sr\sn--" + boundary + "--\sr\sn";\n var data;\n data = sheader + content + strailer;\n //request.open("POST", storeUrl, true, username, password);\n request.open("POST", storeUrl, true);\n request.onreadystatechange = function () {\n if (request.readyState == 4) {\n if (request.status == 200)\n callbackFn(request.responseText);\n else\n alert(config.macros.upload.messages.errorUploadingContent);\n }\n };\n request.setRequestHeader("Content-Length",data.length);\n request.setRequestHeader("Content-Type","multipart/form-data; boundary="+boundary);\n request.send(data); \n};\n\n\nconfig.macros.upload.download = function(uploadUrl, uploadToFilename, uploadDir, uploadBackupDir, \n username, password) {\n var request;\n try {\n request = new XMLHttpRequest();\n } \n catch (e) { \n request = new ActiveXObject("Msxml2.XMLHTTP"); \n }\n try {\n if (uploadUrl.substr(0,4) == "http") {\n netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");\n }\n else {\n netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");\n }\n } catch (e) { }\n //request.open("GET", document.location.toString(), true, username, password);\n request.open("GET", document.location.toString(), true);\n request.onreadystatechange = function () {\n if (request.readyState == 4) {\n if(request.status == 200) {\n config.macros.upload.uploadChangesFrom(request.responseText, uploadUrl, \n uploadToFilename, uploadDir, uploadBackupDir, username, password);\n }\n else\n alert(config.macros.upload.messages.errorDownloading.format(\n [document.location.toString()]));\n }\n };\n request.send(null);\n};\n\n//}}}\n////===\n\n////+++!![Initializations]\n\n//{{{\nconfig.lib.options.init('txtUploadStoreUrl','store.php');\nconfig.lib.options.init('txtUploadFilename','');\nconfig.lib.options.init('txtUploadDir','');\nconfig.lib.options.init('txtUploadBackupDir','');\nconfig.lib.options.init('txtUploadUserName',config.options.txtUserName);\nconfig.lib.options.init('pasUploadPassword','');\nconfig.shadowTiddlers.UploadPluginDoc = "[[Full Documentation|http://tiddlywiki.bidix.info/l#UploadPluginDoc ]]\sn"; \n\n\n//}}}\n////===\n\n////+++!![Core Hijacking]\n\n//{{{\nconfig.macros.saveChanges.label_orig_UploadPlugin = config.macros.saveChanges.label;\nconfig.macros.saveChanges.label = config.macros.upload.label.saveToDisk;\n\nconfig.macros.saveChanges.handler_orig_UploadPlugin = config.macros.saveChanges.handler;\n\nconfig.macros.saveChanges.handler = function(place)\n{\n if ((!readOnly) && (document.location.toString().substr(0,4) != "http"))\n createTiddlyButton(place,this.label,this.prompt,this.onClick,null,null,this.accessKey);\n}\n\n//}}}\n////===
[[AS Forum|http://www1.alphasmart.com/cgi-bin/ultimatebb.cgi?ubb=get_daily]] :: [[Pelikan|http://www.pelikan-lehrerinfo.de/]] :: [[Handwriting|http://www.paperpenalia.com/handwriting.html]] :: [[Stimmts?|http://www.zeit.de/stimmts/]] :: [[Spiegel|http://www.spiegel.de/index.html]] :: [[Liniengenerator|http://www.scribblers.co.uk/cgi/gridlines.pl]] :: [[Jazz Quotes|http://photomatt.net/jazzquotes/]] :: [[Horizont|http://light.horizont.net/jobs/stellenmarkt/angebot/pages/find.prl]] :: [[Praegnanz|http://www.praegnanz.de/]] :: [[Sperrtechnik|http://www.lockpicking.org/SSDeV/]] :: [[Forum Sperrtechnik|http://www.koksa.org]] :: [[Delicious|http://del.icio.us/]] :: [[Scooter Center|http://scooter-center.com/]] :: [[ Rollershop|http://www.rollershop-express.de]] :: [[Funny Virals|http://www.funny-virals.de/]] ::
<<toolbarEdit>> <<toolbarPermalink>> <<toolbarReferences>> <<toolbarCloseOthers>>| <<toolbarCollapse>> <<toolbarClose>>
FAQList has two modes that determine where the FAQ content is compiled from. This option is set using the "byTag" or "byTitle" mode identifiers in the macro call and works as follows:\n# byTag - Compiles all tiddlers marked with a certain tag, or \n# byTitle - Compiles a single "faq" tiddler that contains all the questions and answers.
Using TiddlyWiki for posting a FAQ online can get cumbersome for readers because each tiddler link opens up to a new scroll position. FAQList simplifies this by opening up each FAQ answer directly under the corresponding question.
Das vierte oder fünfte Buch von William Marshall, das ich gelesen habe. Wie immer total crazy, mit drei Erzählebenen (Feiffer, Yee, Auden & Spencer), die sich erst gegen Ende kreuzen und treffen. solange aber scheinbar nichts miteinander zu tun haben. Sehr schön übersetzt. Die Wahrscheinlichkeit des Plots tritt angesichts der Figuren, Situationen und Sprache in den Hintergrund. Wen interessiert schon die Logik? Es gibt Wichtigeres. Gute Unterhaltung zum Beispiel.
<<imglink http://www.diemuellers.de/img/zeugnis.jpg null 1>>
config.macros.abbreviate = { };\nconfig.macros.abbreviate.handler = function(place,macroName,params) {\n var abbr=params.shift();\n config.macros[abbr] = { };\n config.macros[abbr].text = params.join(' ');\n config.macros[abbr].handler = function (place,macroName,params) {\nwikify(config.macros[macroName].text,place,null,null); }\n\n}\n
Die Abkürzungen sind nur im »editieren«-Modus sichtbar. Sie erfordern weiteren Code, der sich im systemConfig Tiddler abbreviateMacro befindet, geschrieben von Eric Shulman, [[ELS Design|http://www.elsdesign.com/tiddlywiki/]]\n\n<<abbreviate kazam "[[kazam|http://www.kazam.de]]">>\n\n<<abbreviate Praegnanz "[[Praegnanz|http://www.praegnanz.de]]">>\n\n\n
<<search>>
// // ''Plugin Name:'' list //withTags// <criteria>\n// // ''Author:'' PaulPetterson\n// // ''Purpose:'' extends the TiddlyWiki list macro with support for listing tiddlers with specified tags\n// // ''Parameters:'' 1..N: tag selection criteria - //tag//, AND, OR, NOT, and/or Parentheses\n// // ''Usage:'' insert <list withTags systemConfig OR systemTiddlers> to list out all tiddlers with a systemConfig or systemTiddlers tag\n// // ''Notes:'' it must be a valid boolean expression, an invalid expression will return a macro error. Follows standard operator precedence so use parentheses to disambiguate the criteria. You can substitute the JavaScript standard symbols &&, ||, and ! for AND, OR, and NOT.\n// // ''Examples:'' <list withTags project and (urgent or important)> - will list all tiddlers with a project tag and either an urgent or important tag.\n\n/*\n{{{\n */\nconfig.macros.list.withTags = {};\n\nconfig.macros.list.withTags.handler = function(params)\n{\n if ( !params || !params[1] )\n {\n return config.macros.list.all.handler(params);\n }\n\n // build us a regex of all our tags as a big-old regex that OR's the tags (tag1|tag2|tag3...)\n var tags = store.getTags();\n var exp = "(" + tags.join("|") + ")" ;\n exp = exp.replace( /(,[\sd]+)/g, "" ) ;\n var regex = new RegExp( exp, "ig" );\n\n // build us string such that an expression that looks like this tag1 AND tag2 OR NOT tag3\n // turns into /tag1/.test(...) && /tag2/.test(...) || ! /tag2/.test(...)\n var cond = params.slice(1).join(" ");\n cond = cond.replace( regex, "/$1/.test( tiddlerTags )" );\n cond = cond.replace( /\ssand\ss/ig, " && " ).replace( /\ssor\ss/ig, " || ").replace( /\ssnot\ss/ig, " ! " ) ;\n\n // look through the tiddlers, make a string of the tags in the tiddler\n // and eval the 'cond' string we made against that string - if it's TRUE then the tiddler qualifies!\n var results = [];\n for( var t in store.tiddlers )\n {\n var tiddler = store.tiddlers[t];\n var tiddlerTags = tiddler.tags.join();\n if ( eval( cond ) )\n results.push( tiddler );\n }\n\n results.sort(function (a,b) {if(a["title"] == b["title"]) return(0); else return (a["title"] < b["title"]) ? -1 : +1; });\n return results;\n}\n\n/*\n}}}\n */
!Tools\n*<<newTiddler>>\n*<<newJournal "DD MMM YYYY">>\n*<<closeAll>>\n*<<permaview>>\n*<<saveChanges>>\n*<<tag systemTiddlers>>\n*[[Batch Process]]\n*<<importTiddlers>>\n*+++[Inhalt|Inhalt]\n<<tiddler Inhalt>>\n===
Please wait ... Bitte warten … enable javascript … use Firefox
!Sample TagCloud:\n<<tagCloud about systemTiddlers systemConfig tiddlyRin excludeLists faqlistFAQ macros formatting Tags>>\n\n!About TagCloud\nThis plugin was created by [[Clint Checketts]] list the current tags in alphabetical order and displays the more popular tags larger.\n\n!How to use TagCloud\nAfter intalling the [[tagCloud plugin]], in any tiddler call the tagCloud macro:\n{{{\n<<tagCloud>>\n}}}\nAny tags listed after the macro name will be excluded from the tag listing:\n{{{\n<<tagCloud systemTiddlers systemConfig>>\n}}}\nThe previous code listing will excluded the systemTiddlers and systemConfig tags from the listing.
version.extensions.tagCloud = {major: 1, minor: 0 , revision: 1, date: new Date(2005,8,16)};\n//Created by Clint Checketts, contributions by Jonny Leroy and Eric Shulman\n\nconfig.macros.tagCloud = {\n noTags: "No tag cloud created because there are no tags.",\n tooltip: "%1 tiddlers tagged with '%0'"\n};\n\nconfig.macros.tagCloud.handler = function(place,macroName,params) {\n \nvar tagCloudWrapper = createTiddlyElement(place,"div",null,"tagCloud",null);\n\nvar tags = store.getTags();\nfor (t=0; t<tags.length; t++) {\n for (p=0;p<params.length; p++) if (tags[t][0] == params[p]) tags[t][0] = "";\n}\n\n if(tags.length == 0) \n createTiddlyElement(tagCloudWrapper,"span",null,null,this.noTags);\n //Findout the maximum number of tags\n var mostTags = 0;\n for (t=0; t<tags.length; t++) if (tags[t][0].length > 0){\n if (tags[t][1] > mostTags) mostTags = tags[t][1];\n }\n //divide the mostTags into 4 segments for the 4 different tagCloud sizes\n var tagSegment = mostTags / 4;\n\n for (t=0; t<tags.length; t++) if (tags[t][0].length > 0){\n var tagCloudElement = createTiddlyElement(tagCloudWrapper,"span",null,null,null);\n tagCloudWrapper.appendChild(document.createTextNode(" "));\n var theTag = createTiddlyButton(tagCloudElement,tags[t][0],this.tooltip.format(tags[t]),onClickTag,"tagCloudtag tagCloud" + (Math.round(tags[t][1]/tagSegment)+1));\n theTag.setAttribute("tag",tags[t][0]);\n }\n\n};\n\nsetStylesheet(".tagCloud span{height: 1.8em;margin: 3px;}.tagCloud1{font-size: 1.2em;}.tagCloud2{font-size: 1.4em;}.tagCloud3{font-size: 1.6em;}.tagCloud4{font-size: 1.8em;}.tagCloud5{font-size: 1.8em;font-weight: bold;}","tagCloudsStyles");
Mal sehen. Aus der Bücherei. Las sich gut an. \n\nEine sehr schöne, ruhige, kenntnisreiche, nostalgische, Geschichte vom Aufbruch und Erwachsenwerden mit 35. Schon wieder etwas mit Familie.