VideoDRAMA II
The Ultimate
Marc Bolan and T-REX
Song and Lyric Database
is loading ...

Requires Javascript.
VideoDRAMA II - The Ultimate Marc Bolan & T.Rex Song and Lyric database
'pon a hill a green bird sat \nHer owlets in a green felt hat \nHer fortune was a wish \n\nAmbassador a heron blue \nRode on the dawn with kegs of dew \nHe said his tales were true \n\nA ragged youth with eyes of glass \nWas seen dancing upon the grass \nHis words were winged and wise \n\nHis shaven skull he etched with ease \nThe silent scriptures of the trees \nHis prophesies were You
<<tiddler RecDetail \n with: \n 1973\n [[T.Rex]] \n [[Tony Visconti]]\n " "\n " "\n Band4\n " "\n>>\n+++[Lyric]\n{{{\n+++[Info]\nb-side [[Free Angel]]\n===\n\nFriends say it's fine\nFriends say it's good\nEverybody says it's just like rock 'n' roll\nI move like a cat\nCharge like a ram\nSting like a bee\nBabe, I wanna be your man\n\nWell it's plain to see\nYou were meant for me\nYeah, I'm your toy\nYour 20th Century boy\n\nFriends say it's fine\nFriends say it's good\nEverybody says it's just like rock 'n' roll\nFly like a plane\nDrive like a car\nBall like a hound\nBabe, I wanna be your man\n\n20th Century boy\nI wanna be your toy\n20th Century boy\nI wanna be your toy \n\nFriends say it's fine\nFriends say it's good\nEverbody says it's just like rock 'n' roll\nI move like a cat\nCharge like a ram\nSting like a bee\nBabe, I wanna be your man\n\n20th Century boy\nI wanna be your toy\n20th Century toy\nI wanna be your boy\n}}}\n===
<<tiddler RecDetail \n with: \n 1969\n [[Tyrannosaurus Rex]] \n [[Tony Visconti]]\n "First album with [[Mickey Finn]]"\n " "\n Band2\n " "\n>>\n\n+++[Cover]\n[img[http://static.flickr.com/96/217707304_d76a2d5e0e_m.jpg]]\n===\n
<<tiddler RecDetail \n with: \n 1969\n [[Tyrannosaurus Rex]] \n [[Tony Visconti]]\n " "\n " "\n Band2\n " "\n>>\n\n++++\nEvery dawn of our lives a heart is forged and \nLinked with lore to one so similar \nBorn with blessed life dust \nStored beneath its soul \nTo bless and pass onto its children \n\nEven though the wind may blow it all away \nDon't ever worry 'cos I'm your friend\n===
Songs used as single a-sides.
<<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\n<<option chkUseYourSearch>> Use 'Your Search' //([[more options|YourSearch Options]])//\n\nUpload Password:\n<<option pasUploadPassword>>\n
<<tiddler RecDetail \n with: \n 1968\n [[Tyrannosaurus Rex]] \n [[Tony Visconti]]\n " "\n " "\n Band1\n " "\n>>\n+++[Lyric]\n{{{\nAfghan Woman, deemed a princess \nBorn a true blue thoroughbred, \nHead a chiselled face of fables \nOmen of no ill \n\nHills that spread around your chamber \nBlooms that twine around your ears \nBlossoms of the royalest texture \nAngel of the years \n\nClad in sacks and scraps of linen\nLiving 'neath your waterwell \nPraying that my youthy pauper's face \nWill quench you well \n\nGazelle girl striding through your palace \nPrecious jewels nestle in your hair \nRameses born with a platinum future \nTake my heart and care. \n}}}\n===
see also [[Albums - Chronological Order]]
|[img[http://static.flickr.com/44/217709943_29b3c53154_m.jpg]]|[[My People Were Fair And Had Sky In Their Hair]]|July 7, 1968|\n|[img[http://static.flickr.com/86/217709944_47d4c86183_m.jpg]]|[[Prophets, Seers and Sages, The Angels of the Ages]]|October 14, 1968|\n|[img[http://static.flickr.com/81/217710516_c478cd37df_m.jpg]]|[[Unicorn]]|May 18, 1969|\n|[img[http://static.flickr.com/96/217707304_d76a2d5e0e.jpg]]|[[A Beard of Stars]]|March 22, 1970|\n|[img[http://static.flickr.com/73/217710509_9696c3e828_m.jpg]]|[[T.Rex (Album)]]|December 11, 1970|\n|[img[http://static.flickr.com/66/217707305_9168a490d7_m.jpg]]|[[The Best Of T.Rex]]|March 25, 1971|\n|[img[http://static.flickr.com/95/217709325_54a0c5a8c5_m.jpg]]|[[Electric Warrior]]|September 17, 1971|\n|[img[http://static.flickr.com/84/217707303_2cccbc29f1_m.jpg]]|[[Bolan Boogie]]|May 5, 1972|\n|[img[http://static.flickr.com/97/217709948_4f42833d23_m.jpg]]|[[The Slider (Album)]]|July 23, 1972|\n|[img[http://static.flickr.com/38/217709947_ce87f76a38_m.jpg]]|[[Tanx]]|March 23, 1973|\n|[img[http://static.flickr.com/97/217710511_23f11b270a_m.jpg]]|[[T.Rex Great Hits]]|September 27, 1973|\n|[img[http://static.flickr.com/63/217711221_f31462b814_m.jpg]]|[[Zinc Alloy And The Hidden Riders of Tomorrow]]|February 1, 1974|\n|[img[http://static.flickr.com/84/217709324_ba43579968_m.jpg]]|[[The Beginning Of Doves (Album)]]|June 22, 1974|\n|[img[http://static.flickr.com/75/217707306_d7fab05c3d_m.jpg]]|[[Bolan's Zip Gun]]|February 16, 1975|\n|[img[http://static.flickr.com/66/217709326_b62159519c_m.jpg]]|[[Futuristic Dragon]]|January 31, 1976|\n|[img[http://static.flickr.com/84/217709323_3d334f2d4d_m.jpg]]|[[Dandy In The Underworld (Album)]]|February 11, 1977|\n|[img[http://static.flickr.com/58/219203110_30e03df15b_m.jpg]]|[[You Scare Me To Death]]|1981?|\n|[img[http://static.flickr.com/88/217714935_805677b694_m.jpg]]|[[The Children Of Rarn Suite]]|c.1970 unreleased|\n\n
+++[Info]\na-side [[The Soul Of My Suit]]\n===\n\nAll alone I sit at home\nWith my chrome guitar\nEven Michael Mouse\nHe has a house with someone there\nYou handsome bitch you movie twitch\nAnd seranade the dudes that move and\nSmile so vile and masquerade they masquerade\n\nAn adjacent kid with a Jamacian lid\nAnd switch-blade knife, steals the \nTruth from your golden tooth then he\nTurns you in\n\nSo you hold hands tight on a marble night\nAnd maybe dismissed but know that \nZeus is never loose with his Grecian kiss\nHis Grecian kiss\n\nFiery skies in children eyes\nFade into youth bleeding blood and tears\nOn all the ears that heard your gold\nSo you walk the dog and you stroll the fog\nOn a dome sky earth and lie too hard\nIs an English bard you better hide your tracks\nBetter watch your mind
+++[Info]\nPosthumous release.\nRecorded 1977\n===\n\n\nOh yeah, oh yeah.\nOh yeah, oh yeah.\nOh yeah, oh yeah.\n\nBaby in the evening is a good thing.\nGolden hood summer makes my heart sing.\nI'm gonna give you all of my love.\nI'm gonna give you all of my love.\n\nLeather stud demon at my window.\nSacrificial sound by my bedside.\nI'm gonna give you all of my love.\nI'm gonna give you all of my love.\n\nShadow over London in the morning.\nBaby, baby it's a kind of warning.\nI'm gonna give you all of my love.\nI'm gonna give you all of my love.\n\nWinter is a splinter from my dark days.\nJellybean rock scene madness.\nI'm gonna give you all of my love.\nI'm gonna give you all of my love.\n\nMy Baby is a scooter and I love her.\nMy Baby is a scooter and I love her.\nMy Baby is a scooter and I love her.\nMy Baby is a scooter and I love her.\n\nWinter is a splinter from my dark days.\nJellybean rock scene madness.\nI'm gonna give you all of my love.\nI'm gonna give you all of my love.\n\nMy Baby is a scooter and I love her.\nMy Baby is a scooter and I love her.\nMy Baby is a scooter and I love her.\nMy Baby is a scooter and I love her.
config.options.chkHttpReadOnly = false;\n
+++[Info]\nPosthumous release.\nRecorded 1975?\n===\n\n\nWild Billy Wanton,\nHe's a mean motherfucker,\nBut he's an angel when he's bad.\nAn angel when he's bad.\n\nOh my little baby,\nShe's a mean motherfucker.\nShe's an angel when she's bad.\nAn angel when she's bad.\n\nI've seen misery, baby.\nI've seen woe.\nBut I'm an angel when I'm bad.\nAn angel when I'm bad.\n\nI've bopped around, little girl\nAnd I've seen some downs, boy.\nBut I'm an angel when I'm mad.\nAn angel when I'm mad.\n\nAngel when I'm mad.\nEverybody is an angel when they're mad.\nEverybody is an angel when they're mad.\nAngel when they're mad.\n\nWow my little girl,\nShe moves around in a whirl,\nBut she's an angel when she's bad.\nAn angel when she's sad.\n\nMy little baby,\nShe's the best, drives me crazy.\nWell she's an angel when she's sad.\nAn angel when she's sad.
+++[Info]\nPosthumous release.\nRecorded 1975?\n===\n\n\nAuto Destruct - Auto Destruct - Auto Destruct\n\nWhen I see your flashing eyes\nCreaming out those lustful guys\nI want your A.U.T.O.\nI want your A.U.T.O.\nI want your A.U.T.O. love\n\nWhen I see your flashing eyes\nCreaming out those lustful guys\nI want your A.U.T.O.\nI want your A.U.T.O.\nI want your A.U.T.O. love\nI want your A.U.T.O.\nI want your A.U.T.O.\nI want your A.U.T.O. love\n\nI want your love\nI want your love\nI want your love
Aznageel.... \nWoven deep beneath the caves of melted steel \nStalks a Mage, a necromancer heel \nTortured runic clasps of Aztecetian skill \nThe condor flies scared skies in search of Aznageel \n\nBelow the sun is withered weasel scurries deep \nThe streams of doom contrive to kiss his scupltured feet. \nHis raven legs all churned and ruined through towers of pride \nAbove the sun the princely guardian condor flies. \n\nA beauty ruby fain its worth twelve lives or more. \nhe stammers as he slugs ever the staggered floor \nA chilled moment his dolphin eyes maul jewels of war. \nO joy! The sunlit condor unearths Aznageel's door
Songs used as single b-sides.
+++[Info]\na-side [[I Love To Boogie]]\n===\n\nSlim lined sheik faced\nAngel of the night \nRiding like a cowboy\nIn the graveyard of the night\nNew York Witch\nIn the dungeon of the day \nI'm trying to write my novel\nBut all you do is play \n\nBaby Boomerang, Baby Boomerang \nWell, you never spike a person \nBut you always bang the whole gang \nOh yeah...\n\nMince pie dog-eye \nEagle on the wind \nI'm searching through this garbage \nJust looking for a friend \nYour uncle with an alligator \nChained to his leg \nDangles you your freedom \nThen he offers you his bed\n\nIt seems to me to dream \nIs something too wild \nIn Max's Kansas City \nYou're belladonna child \nHiding on the highways \nOn the gateways to the south \nYou're talking with your boots \nAnd you're walking with your mouth \n\nBaby Boomerang, Baby Boomerang \nWell, you never spike a person \nBut you always bang the whole gang \n \nThank you ma'am
+++[Info]\na-side [[Telegram Sam]]\n===\n\n\nI see you walking \nI see you talking \nOh, With all of my friends \nI'm shadowed under, I'm like some thunder \nOh I wanna be your friend \n\nI wanna call ya \nI wanna ball ya all night long \nIn winds of passion my whip is lashing \nI wanna get you and then \n\nOooo you're strange \nDon't lame me baby strange \nDon't lame me baby \n\nThe city's shaking\nI ain't faking Baby this is the end \nI'm overloaded my heads exploded \nI wanna get you and then
All of the following - at one time or another - have been members of [[T.Rex]], [[Tyrannosaurus Rex]], [[John's Children]] ...\n\n
<html><hide linebreaks>\n <table style="font:bold 10pt arial">\n <tr><td colspan="2" style="background-color:darkblue;color:red;text-align:center;">Band Line-up</td></tr>\n <tr><td tyle="">Vocals & Guitars</td><td>[[Marc Bolan]]</td></tr>\n </table>\n</html>
<html><hide linebreaks>\n <table style="font:bold 10pt arial">\n <tr><td colspan="2" style="background-color:darkblue;color:red;text-align:center;">Band Line-up</td></tr>\n <tr><td tyle="">Vocals & Guitars</td><td>[[Marc Bolan]]</td></tr>\n <tr><td tyle="">Percussion</td><td>[[Steve Peregrin Took]]</td></tr>\n </table>\n</html>
<html><hide linebreaks>\n <table style="font:bold 10pt arial">\n <tr><td colspan="2" style="background-color:darkblue;color:red;text-align:center;">Band Line-up</td></tr>\n <tr><td tyle="">Vocals & Guitars</td><td>[[Marc Bolan]]</td></tr>\n <tr><td tyle="">Percussion</td><td>[[Mickey Finn]]</td></tr>\n </table>\n</html>
Type the text for 'Band3'
<html><hide linebreaks>\n <table style="font:bold 10pt arial">\n <tr><td colspan="2" style="background-color:darkblue;color:red;text-align:center;">Band Line-up</td></tr>\n <tr><td tyle="">Vocals & Guitars</td><td>[[Marc Bolan]]</td></tr>\n <tr><td tyle="">Percussion</td><td>[[Mickey Finn]]</td></tr>\n <tr><td tyle="">Bass Guitar</td><td>[[Steve Currie]]</td></tr>\n <tr><td tyle="">Drums</td><td>[[Bill Legend]]</td></tr>\n </table>\n<div style="display:none">\n|Vocals & Guitars|[[Marc Bolan]]|\n|Percussion|Mickey Finn|\n|Bass Guitar|Steve Currie|\n|Drums|Bill Legend|</div>\n</html>
Type the text for 'Band5'
Type the text for 'Band6'
Type the text for 'Band7'
Type the text for 'Band8'
<html><hide linebreaks>\n <table style="font:bold 10pt arial">\n <tr><td colspan="2" style="background-color:darkblue;color:red;text-align:center;">Band Line-up</td></tr>\n <tr><td tyle="">Vocals & Guitars</td><td>[[Marc Bolan]]</td></tr>\n <tr><td tyle="">Rest of Band</td><td style="font:normal 10pt arial">//Unknown//</td></tr>\n </table>\n</html>
Trucking down by the roadside \nMet a man with a starhide \nHe said, "Boy, wouldn't you like to look?" \nBut could it give me love \nGive me little love from her heart? \n\nBopping down by the whirlpool \nI met a girl she was God's tool \nI said, "Girl, wouldn't you like to rock?" \nBut could it give me love \nGive me little love from her heart? \n\nWalking down by the Westwind \n I met a boy, he was my friend \nI said, "Boy, we could sing it too." \nAnd we do \n\nGive us love\nGive us little love \nGive us little love from your hearts \nAnd then we'll walk.
+++[Info]\na-side [[The Wizard]]\n===\n\nYou've heard about the Fairyland,\nWhere people walk hand in hand,\nI tell you I know where it is.\n\nIt's past the Apples of the Sun.\nNear the Land of the Golden One,\nFar beyond the rising sun.\n\nYou pass the oceans of this land.\nPass the man with the golden hand.\nYou smile as you watch the Dragons fly.\n\nAnd play upon the golden shore,\nBang upon his magic door,\nBehind which some people never die.\n\nWhen finally you make the scene.\nYou see things you never dream.\nYou thought they were only in your mind.\n\nWhere Unicorns and young Gods play.\nFrom the break of dawn to the end of day.\nAlways happy and kind in their minds.\nIn my mind.
This was the name used by Bolan to do an experimental one-off single release. The band was the usual T.Rex line-up circa 1973.\n\nThe song got nowhere.\n\n
''Bill Legend'' ... Drummer with [[T.Rex]] 1971 ~ 1974?
I don't want a black and white Cadillac car.\nI don't want a black and white Jaguar.\nI don't want a black and white blue-jean scene.\nI just want for you to turn turn me on,\nTo your fine, fine, superfine,\nEverywhere you're goin' around.\nMy my my my my my my my...\nI'm in love with you.\n\nI don't want a black and white Chevrolet.\nI don't want a black and white Lincoln A.\nI don't want a big fine woman everyday.\nI just want for you to turn turn me on,\nTo your fine, fine, superfine,\nEverywhere you're goin' around.\nMy, my, my, my, my, my, my....\nI'm in love with you.
+++[Info]\nb-side [[Squint Eye Mangle]]\n===\n\n\nShoop-shoop, Shoop-shoop, Shoop-shoop, \nShoop-shoop, Shoop-shoop, Shoop-shoop, \n\nArr yeah well the sun is shining \nAnd the wind is blowing on the harlequin \nArr yeah, well the sun is shining \nAnd the wind is blowing on the harlequin \n\nShoop-shoop, Shoop-shoop, Shoop-shoop, \nShoop-shoop, Shoop-shoop, Shoop-shoop, \n\nArr yeah well the sun is shining \nAnd the wind is blowing on the harlequin
+++[Info]\n[[A Beard Of Stars]] outtake?\n===\n\n\nGypsy girl, oh twisty pearl,\nSat upon the stony pale mare.\nBeltane Eve, by the fires you grieve,\nWith your deep Babylonian hair.\n\nBlessed wild apple girl,\nMove along now,\nBlessed wild apple girl,\nMove along now.\nBlessed wild apple girl.\n\nGypsy pearl, oh twisty girl,\nYour hands all dangled with flowers.\nTangled torn, so stately born,\nFor a throne in the hill halls of Ireland.\n\nBlessed wild apple girl,\nMove along now,\nBlessed wild apple girl,\nMove along now.\nBlessed wild apple girl.\n\nBlessed wild apple girl,\nMove along now,\nBlessed wild apple girl,\nMove along now.\nBlessed wild apple girl.\n\nFools have said, the hills are dead,\nBut her nose is a rose of the Shee.\nA Silver sword by an ancient ford,\nWas my gifts from this child of the trees.\nBlessed wild apple girl,\nMove along now,\nBlessed wild apple girl,\nMove along now.\nBlessed wild apple girl,\nMove along now,\nBlessed wild apple girl,\nMove along now.\nBlessed wild apple girl.\nBlessed wild apple girl.\nBlessed wild apple girl.
+++[Info]\nPosthumous release.\nRecorded 1975 during [[Dreamy Lady]] sessions\n===\n\n\nIยดm looking up and down the highway.\nFeeling all alone and blue.\nIยดm feeling up and down the highway.\nSeeing everything turn blue.\nEvery time I turn around,\nI got a hurricane tempest in the loo.\n\nWell, I went to downtown Memphis.\nLooked around to see what I saw.\nI went to downtown Chicago.\nAll I saw was a supersonic door, oh yeah.\nSweet Peggy Sue standing in the loo.\nAnd Iยดm tired of fuckinยด round with you, yeah.\n\nI got the jailhouse, scale picking,\nNose fuckinยด, automatic blues.\nI got the nose-picking supersonic,\nJailhouse, road gin blues.\nIยดm too old to lose and Iยดm too old to stroll.\nI wanna get my teeth in some Rock ยดnยด Roll.
A Fly label cash-in.\n\nMarc was about to set up his own label (T.Rex Wax Co.) and Fly wanted to make a few more quid before they lost him.\n\n[img[http://static.flickr.com/84/217707303_2cccbc29f1_m.jpg]]
[img[http://static.flickr.com/75/217707306_d7fab05c3d_m.jpg]]
+++[Info]\na-side [[Solid Gold & Easy Action]]\n===\n\n\nBaby baby I was born to boogie\nBaby baby l was born to boogie\nI'll spend some time with you \nI wanna do all I wanna do\n\nBaby baby I was born with motivation\nBaby baby l was born with motivation\nI'll spend some time with you \nl wanna do all I wanna do\n\nBoogie children and-a hauh hauh\nBoogie children\nUh Ahh
Produced by [[Ringo Starr]].\n\n[img[http://static.flickr.com/64/222182292_e26d81b0cb.jpg]]\n\n
+++[Info]\nPart of the unfinished [[Billy Super Duper]] project.\n===\n\n\nWatch out Billy.\nThe brain police are coming Billy.\nWatch out Billy.\nThe brain police are coming Billy.\nOh, Watch out!\nWatch out Billy.\nThe brain police are coming.\n\nWatch out Billy.\nThey're coming beside you Billy.\nWatch out Billy.\nThey're coming beside you Billy.\nOh, watch out.\nComing down to get your mouth.\nWatch out Billy.\nThe brain police are coming.\n\nI said watch out Billy.\nThey're trying to hold you Billy.\nI said watch out Billy.\nThey're trying to hold you Billy.\nGet down.\nWatch out, please donยดt move around,\nBilly.\nWhereยดs the door?
This is a song that I wrote when I was young\nAnd I called it the broken hearted blues\n\nThe air on that night was tempered like a knife \nAnd the people wore the face masks of a clown\n\nDon he was long, mis-shapen and forlorn\nAnd his woman ran away without a smile\n\nDays of the earth are unbroken changeless turf\nBut the faces of the men are something else\n\nJason Wind as a boy was a special sexual toy\nBut baby now he's a toothless baggy man\n\nWhen the hills of the sun make you feel that you are young \nGet good now and face your face into the wind\n\nThis is a song that I wrote when I was young\nAnd I called it the broken hearted blues
+++[Info]\nRecorded 1977?\n===\n\n\nYou got two left feet.\nYou got two left feet.\nYou got two left feet, oh yeah.\n\nMy trunks don't go.\nMy trunks don't go.\nA boy's got to be bold, oh yeah.\n\nBuick MacKane.\nBuick MacKane.\nHe's like a fox in the rain, oh yeah.\n\nWhen I collect my dues.\nWhen I collect my dues.\nI'm gonna pump you a few, oh yeah.\n\nBump and grind.\nBump and grind.\nBut if it's good for my mind, oh yeah.\n\nFuture machine, yes,\nA future machine.\nIt's like a teenage queen, oh yeah.\n\nShadow in the night.\nShadow in the night.\nMakes your eyes burn bright, oh yeah.\n\nYou got two left feet.\nYou got two left feet.\nYou got two left feet, oh yeah.
Buick, Buick Buick MacKane \nWill you? \nBuick MacKane will you be my girl \n \nRainy, Lady, Queen of the rock \nWill you help me roll \nHelp me roll, to my soul \n\nSlider, Slider \nYou're just a sexual glider \nYou're just a sexual glider \nBe my plane, in the rain
<<tiddler RecDetail \n with: \n 1969\n [[Tyrannosaurus Rex]] \n [[Tony Visconti]]\n " "\n "b-side [[Find A Little Wood]]"\n Band2\n " "\n>>\n\n+++[Lyric]\nI'm gonna dance with my princess \nBy the light of a magical moon \n\nAs I go along my way \nI say hey-hey \n\nI'm gonna talk with the elders \nAnd tell all of our hearts \nThat is good \nI'll a-barefoot dance with my baby \nBy the light of a magical moon\n\nWhen I slay the darkest day \nThen we can play \n'Till that deep and joyous day \nWe'll dance and pray.\n===
+++[Info]\na-side [[Telegram Sam]]\n===\n\n\nBaby I wanna walk you home \nOh baby I wanna walk you home \nThere's a shadow in the basement \nAnd I'm scared to sleep alone \n\nBaby doesn't everybody dream \nOh baby doesn't everybody weep \nI'd slide up there beside you but \nMy nightmares are all too steep \n\nBaby I wanna buy you cadillac \nOh baby I wanna buy you cadillac \nI bought it with my soul but \nYou say that you're gonna give it back \nAnd that's a fact \n\nBaby I love you baby \nI love you baby I love you baby \nI love you baby
Walking wild at midnight\nBreathing like a panther\nHolding hands with my love\nDancing like a master \n\nShadow beach Burgandy\nGet you high as lightning\nDriving in your Porsche coupe'\nDon't marry Fanny Frightning\n\nMixing with the moon maids\nMelting down her rainbow\nKing Kong, bang a gong\nAll around your boudoir\n\nWalking wild at midnight\nBreathing like a panther\nHolding hands with my love\nDancing like a master\n\nCalling all destroyers\nCalling all detroyers - yeah
Carsmile Smith he's the old one\nDon't you know he's the good one\n\nDon'tcha, don'tcha\n\nBessy stood by the side of the grave\nLike a woman of love would do \nShe hung her hands into a knot of grief\nFor a man she never knew\n \nCarsmile Smith he's the old one\nDon't you know that he's the good one\n\nDon'tcha, don'tcha\n\nCarsmile Smith he's the old one\nDon't you know he's the good one\n\nDon'tcha, don'tcha\n\nBessy stood by the side of the grave\nLike a woman of love would do \nShe hung her hands into a knot of grief\nFor a man she never knew\n\nDon'tcha, don'tcha
Casual agent moving by the sand\nCosmetic Betty stealing from the skull\nMadonna dollar destroyed by the holy roof\nI know to move my child to switch\nWithout your tooth\n\nDistorted contortionist barely\nSaved his cool\nAs he rubberised Hannah by the 'lectric school\nWith the planetary pearl\nAnd the magnetic fool who were\nBoth told and rolled to look alike\nAnd welded to a stool\n\nWind of illusion came darkly down my street\nLead were my eyelids demented were my feet\nAnd the two faced detector from the \nMalibu beach dejected like Delilah she\nSucked upon my peach\n\nAll night worker for the missionary stand\nI seldom drip glue in the video grand\nTiger tongued tinse see the old queens\nOf the night were stone cold stilettoed\nStone mama's alright\n\nOh I wanna be your casual agent\nI wanna be your casual agent
Cat Black, you know she's back.\nBeen six weeks since she blew her stack.\nNow she's fine, she's all mine.\nI'm gonna stop her blowin' her mind again.\n\nCat Black she's my honey\nAll she wants to do is spend my money.\nShe's a real-gone chick and I love her so.\nKnocks me out when she does the rock 'n' roll, yeah.\n\nCat Black you know I'm pleased.\nThere's my heart, and here's the keys to my Cadillac.\n\nHey Cat Black.\nYou look all pretty, let's get turned on\nAnd fade away.\n\nCat Black she's so sweet.\nShe's so pretty I can hardly speak.\nDresses in jeans, gets on scenes.\nShe's kind and she's fine to me.\n\nCat Black, you know she's back.\nBeen six weeks since she blew her stack.\nNow she's fine she's all mine.\nI'm gonna stop her blowin' her mind again.
Catblack the wizard's hat \nSpun in lore from Dagamoor \nThe skull of jade \nWas pearl inlaid \nThe silks, skin spun, repelled the Sun \nA tusk of boar with dwarfish awe \nSobs on the door where stood before \nA mountain man with sky-blue teeth \nUpon his head a python's wreath \nA deer he slew in the dawning's dew \nHer heart was a dagger for a murderer's brew. \n\nA toad of jet on a sill cast in brass \nPortrayed for his sight mysteries of the past \nA yellow orphan dancer rich in Nature's costly gold \nWept for the jailer of time to bless her old \nBut his kiss he held and shadowed for the spell of nights are strong \nAnd spiralled like a whirlwind in the childhood of a song \n\nCatblack the wizard's back \nDaubed in doom in his tongue tombed room \nWe of the wind must rejoice and speak \nAnd kiss all our starbrowed brothers on the cheek.
+++[Info]\nb-side [[Ride My Wheels]]\n===\n\n\nHey little girl would you like a dance?\nHey little girl want a quick romance?\nHey little girl won't you take a chance?\nAnd celebrate summer with me\n\nHey little chick where'd you learn that trick?\nHey don't you know you got rock and roll?\nHey little punk forget all that junk\nAnd celebrate summer with me\n\nSummer's not a bummer it's a stunner and it's now \nSummer's not a bummer it's a stunner and it's now \nSummer is heaven in seventy-seven \n\nHey little girl would you like a dance \nHey little girl want a quick romance \nHey little girl won't you take a chance \nAnd celebrate summer with me
Change change change see it all the time\nLook look look\n\nI could write a book about my life\nBaby blue I love you\nLook look look\nI could write a book about my life\n\nChange is coming just like the sun\nChange is coming you better run\n\nBaby blue I love you\nBlue blue blue\nI could write a book about your life\n\nChange is coming just like the sun\nChange is coming you better run\n\nChange is coming just like the sun\nChange is coming you better run
Girl you are a groove\nYou're like the planets when you move\nSee the winter's coming\nIn a two finned caddy\nGonna walk upon the waters\nGo ooo yea\n\nGirl you gotta cook\nYou got the chariot by the hook\nI'm riding in the rain\nGot my blue suede shoes\nGonna give up all my pain\nAnd go ooo yea\n\nBaby you know who you are\nBaby you know who you are\nDon't you know who you are\n\nStanding on your porch\nYou wear your pleasure like a torch\nHiding in the road\nLike a Pasolini toad\nGonna give up all my load\nAnd go ooo yea
The toad road licked my wheels like a sabre \nWinds of the marsh lightly blew \nStonejars stacked with stars on her shoulders \nHunters of pity she slew \n\nChariots of Silk she rode \nStallions of gold she owned \n\nA mad Mage with a maid on his eyebrows \nHunteth the realm for a God \nWho could teach him the craft of decanting \nThe glassy entrails of a frog \n\nThe Bard of my birth with his ballet \nWalked the wild worlds in the chase \nFor the black chested canary \nWho as a moose can sing bass \n\n
I'm walking down the highway,\nsee this cat his name was "Charlie".\nHe's the kinda guy who always looks the same.\nAs someone you've seen on a scene or at a party.\nCharlie is the kind you know what'll always be,\nOn his own scene an absolute mystery.\n\nSometime later an uptown nowhere High Street.\nYou can just imagine the wild person I'm about to meet.\nStanding on a corner laughing at all the people he meets.\nAh, he smiles and politely says "How do you do?"\nAs you walk away he makes faces after you.\n\nMy baby and I, we've been planning a nice cool weekend.\nComes a knock at my door, this guy yells out I'm his friend.\nHe looks the place over and then tells me that he'll move in.\nCharlie is the one that while the neighbours stare,\nBiblical beard and his long black flowing hair.
\nBroken English words cracked the air like a bell \nShe had a chateau in Virginia Waters \nFree from all those culture vultures \n\nHer silver car a silver cloud cloaked the air in a shroud \nHer pearly author's teeth tore \nthe seasoned cedar coloured pheasant \n\nHer one rich wish is to write a book about \nA venetian mother's problems \non a barge in little Venice \n\nShe peers at the portrait of her poetess grandmother \nWho's theatrical in character \nWise just like Socrates \n\nShe sinks her nails into the aged canvas \nBut the power from the wordster's head\nwas cool and shrill and frightening \n\nMiss Drag is intermingled with the powder-blue chaise lounge \nShe types some acid words \nto her hairless havana art dealer \n\nHer one rich wish is to write a book about\na chateau in Virginia Waters \nFree from all those culture vultures \n\n \n
+++[Info]\na-side [[Debora]]\n===\n\n\nMountain eyes, peeping out of his head ah...\nSipping tea composing in his bed ah...\nA hundred hands\nworking on a musical of old\nDebussy and Mendlessohn Handel and Dvorak of old\n\nChild star, protegรฉ of Mister Gormez\nWho said you'd go far\nChild star,they do not see just what a precious\ngem you'd be\nSad to see them watching you\nfade into in-ah in-ah-visibility\n\nTwelve years old, your elvish fingers kiss your\nBeethoven hair, The awesome people stare they're\nUnaware of all the angel sounds they see and hear\nDebussy and Mendlessohn Handel and Dvorak they hear\n\nChild star, protegรฉ of Mister Gormez\nWho said you'd go far\nChild star, and when you died at just thirteen\nthey wept and wrung their hair\nSad to see them mourning you when you are\nthere Within the flowers and the trees\n\n
I want to give every childe \nThe chance to dance \nI want to spread my feet \nIn the silver heat \n\nI want to give every man \nA kingdom fair \nTo hide inside \nHis golden hair \n\nI want to give every face \nA secret place \nWhere to take their tears \nSo there's no disgrace \n\nI want to give every childe \nThe chance to dance
+++[Info]\nb-sides [[Jitterbug Love]] and [[Sunken Rags]]\n===\n\nWell you can bump and grind \nIf it's good for your mind \nWell you can twist and shout \nLet it all hang out \n\nBut you won't fool \nThe children of the revolution \nNo you won't fool \nThe children of the revolution \n \nWell you can terraplane \nIn the falling rain \nI drive a Rolls Royce \n'Cos it's good for my voice
+++[Info]\na-side [[New York City]]\n===\n\n\nStanding on a corner\nWith my chrome sitar\nEverybody ask who the hell you are\nSomebody scream and shout, somebody spoke\nSomebody said that life is just a joke\n\nPrincess outrage with deductable grave\nScream of her love but you know I was brave\nOctoganic angel measuring the stars\nTrying to run away with a chrome sitar-\n\nSo come on, little girl\nWon't you hold my hand\nCome on little girl\nDon't you understand\nCome on little girl yea yea\n\nLove is grand\nWon't you hold my hand - tonight
+++[Info]\nA-Side was Marc and Gloria's cover of ''To Know Him Is To Love Him''\n===\n\nCity port, city port, city-city-city port\n\nI went to the city port\nCity port took my blues away\nI went to the city port\nCity port took my blues away, yes they did\n\nI lost all my city cool\nWhen I bought your midget show\nI grew all my debonaire\nWhen I had the 1980's scare, no hair\nThat's right\n\nI went to the city sight\nA young love took my soul away\nPeering eyes and Persian skies, removed my eyes\nAnd took them right away, took them all away\nJust like\n\nI lost all my city cool\nWhen I bought your midget show\nCity Port\nAnd it took them, took them all away\nAnd it took them, took them all away\nCity Port\n
/%comment%/\n+++[Submit a comment...]>\n <html><textarea id="comment" rows="10" style="width:100%"></textarea>\n <input type="button" value="submit comment" onclick="addTiddlerComment(this.previousSibling.previousSibling);"></html><script>\n place.lastChild.firstChild.value="Enter your comment text here";</script>\n===\n<script>\nwindow.addTiddlerComment = function(place) {\n if (!window.story) window.story=window; if (!store.getTiddler) store.getTiddler=function(title) {return this.tiddlers[title]}\n var title = story.findContainingTiddler(place).id.substr(7);\n var tiddler=store.getTiddler(title);\n var pos=tiddler.text.indexOf("/%"+place.id+"%/");\n if (pos==-1) pos=tiddler.text.length;\n var txt="!!!!!//From "+config.options.txtUserName+" on "+(new Date()).toLocaleString()+"//\sn<<<\sn"+place.value+'\sn<<<\sn';\n tiddler.set(null,tiddler.text.substr(0,pos)+txt+tiddler.text.substr(pos));\n story.refreshTiddler(title,1,true);\n store.setDirty(true);\n}\n</script>
Conesuela, Lady tailor, \nWeaving deep beneath the sun, \nMaking things for everything that run, run, \n\nHermitized one you're my little summer maid, \nOrchard eyed one take my love \n\nHoly Grail head, deep forest fed, \nWeaving deep beneath the moon, \nQuiver mouth chants a crooning moon rune.
/***\nJust some bits and pieces\n***/\n//{{{\nconfig.messages.messageClose.text = "X"; // default is "close"\nconfig.views.wikified.defaultText = ""; // default is "The tiddler '%0' doesn't yet exist. Double-click to create it"\nconfig.options.chkHttpReadOnly = false; // Enable editing so that visitors can experiment with it\n//}}}
@@font-size:8pt;[[contact|mailto:kingsley.mole@googlemail.com,rexdal1@gmail.com]]@@
I was dancing when I was twelve \nI was dancing when I was aaah \nI danced myself right out the womb \nIs it strange to dance so soon \nI danced myself right out the womb \n\nI was dancing when I was eight \nIs it strange to dance so late \nI danced myself into the tomb \nIs it strange to dnce so soon \nI danced myself into the tomb \n\nIs it wrong to understand \nThe fear that dwells inside a man \nWhat's it like to be a loon \nI liken it to a balloon \n\nI danced myself out of the womb \nIs it strange to dance so soon \nI dance myself into the tomb \nBut then again once more\n \nI danced myself out of the womb \nIs it strange to dance so soon \nI danced myself out of the womb
Take me down to the country honey\nTake me down to the country honey\nIn a jeep that's sweet \nIn a jeep that's neat\nTake me down to the country honey\n\nTake me down to the sea-side baby\nTake me down to the sea-side baby\nIn a jeep that's neat, \nIn a jeep that's sweet\nTake me down to the country honey
Hey little girl you move so fine\nAll I want to do is melt your mind\n\nUnder the crimson moon\nUnder the crimson moon\nI wanna feel your heat under the crimson moon\nI wanna feel your heat under the crimson moon\n\nYou can shake your torpedoes\nYou can shoot your gun\nYou can mix your martinis\nFrom the blood of the sun\n\nIโ€™m a chartreuse lover\nI am an indigo man\nIn the black of the night\nIโ€™ll hold your lily white hand
<<tiddler RecDetail \n with: \n 1972 \n [[T.Rex]] \n Band4 \n ProdTV\n "Posthumous Release"\n " "\n " "\n " "\n " "\n>>\n\n++++\nKissed you in the show, you ran and told your mama\nYou're a cry baby\nIn the hall against the wall, you made it all so clear\nYou're a cry baby\n\nYour love was like a summer in my heart\nAnd then you lied baby\nClouds of doubt messin' up my sky\nYou're such a cry baby\n\nOoh, since you let me down, even though I joke around\nYou know I'm sad baby\n\nI'm a queen without a throne\nAll alone and almost grown\nDon't need no sly baby\n\nYour love was like a summer in my heart\nAnd then you lied baby\nClouds of doubt messin' up my sky\nYou're such a cry baby\n\nBalled you in the show, you ran and told your mama\nYou're a cry baby\nIn the hall against the wall, you made it all so clear\nYou're such a cry baby\n\nYou're such a cry baby, wo-oo\nYou're such a cry baby, wo-oo\n===
Dance in the midnight, dance in the midnight\nDance in the midnight, dance in the midnight\nGonna take a chance on this dance\nDance in the midnight, oh yeah\nCome to my cadilac, goin' to my cadilac\nCome to my cadilac, goin' to my cadilac\nGonna take a chance on this dance\nCome to my cadilac, oh yeah\nGonna take a chance\nGonna make this dance, in my cadilac\nGonna take a chance\nGonna make this dance, in my cadilac\nDance in the midnight, dance in the midnight\nDance in the midnight, dance in the midnight\nWanna take a chance\nI want this dance\nDance in the midnight, dance in the midnight\nDance in the midnight, dance in the midnight
[img[http://static.flickr.com/84/217709323_3d334f2d4d_m.jpg]]
+++[Info]\nb-side [[Groove A Little]] and [[Tame My Tiger]]\n===\n\nPrince of Players Pawn of none\nBorn with steel reins on the heart of the Sun\nGypsy explorer of the New Jersey Heights\nExalted companion of cocaine nights\n\n'Cause heโ€™s a\nDandy in the Underworld\nDandy in the Underworld\nWhen will he come up for air?\nWill anybody ever care?\n\nAt an old eighteen exiled he was\nTo the deserted kingdoms of a mythical Oz\nDistraction he wanted to destruction he fell\nNow he forever stalks the ancient Mansions of hell\n\nNow his lovers have left him and his youthโ€™s ill spent\nHe cries in the dungeons and tries to repent\nBut change is a monster and changing is hard\nBut heโ€™ll freeze away his summers in hisu nderground yard\n\n'Cause heโ€™s a\nDandy in the Underworld\nDandy in the Underworld\nWhen will he come up for air?\nWill anybody ever care?
Drummer with [[T.Rex]] 1973 ~ ...?
Dawn storm o my dawn storm\nI realise you're blue\nPlease babe o don't squeeze babe\nAll that I say must be true \n\nBaby I'm not crazy \nA rush ain't no crush it's a trip\nBut learning on a journey\nAin't no month on the sunset strip \n\nTimes they are strange and I won't\nRearrange\nNo no no not my love for you\nTimes they are strange and I won't\nRearrange\nNo no no not my love for you
+++[Info]\nThis track was recorded and released twice as a single.\nb-side 1st issue - [[Child Star]]\nb-sides 2nd issue - [[The Woodland Bop]], [[The Seal Of Seasons]] and [[One Inch Rock]].\n===\n\n\nDug-a-redug and dug-a-redug redug\n\nO Debora\nYou look like a zebra \nYour sunken face is like a galleon \nClawed with mysteries of the spanish maine\nO Debora\n\nO Debora \nAlways dressed like a conjurer \nIt's fine to see your young face hiding\n'Neath the stallion that I'm riding \nDebora. \n\nO Debora \nYou look like a stallion\nO Debora \nYou look like a stallion
\n
Demon Queen of Voodoo Sun\nIn you vales of blue\nEvil-eyed with the dwarves of Alabar\nChildren's payers of life\n\nNiceness is a golden gown\nSeated on the planets round
+++[Info]\nb-side ''Remember Thomas A. Beckett'' (Ellison/Hewlett composition)\n===\n\nDesdemona just because\nYou're the daughter of a man\nHe may be rich he's in a ditch\nHe does not understand\nJust how to move or rock and roll\nTo the conventions of the young\n\nDesdemona, Desdemona,\nDesdemona Desdemona,\nDesdemona, Desdemona\nLift up your skirt and fly.\n\nJust because my friend and I\nGot a jute joint by the Seine\nDoes not mean I'm past fourteen\nAnd cannot play the game\nI'm glad I split and got a pad\nOn Boulevard Rue Fourteen\n\nDesdemona, Desdemona,\nDesdemona Desdemona,\nDesdemona, Desdemona\nLift Up your skirt and fly.\n\nJust because Toulouse Lautrec\nPainted some chick in the rude\nDoesn't give you the right\nTo steal my night\nAnd leave me naked in the nude\nWell just because the touch of your hand\nCan turn me on just like a stick.\n\nDesdemona, Desdemona,\nDesdemona Desdemona,\nDesdemona, Desdemona\nLift up your skirt and speak.\n
If I could have grown \nAll upon my own \nIf I could have grown \nI grew \nIf I could have grew \nI do \nIf I had a throne \nYou could call it home \nIf I cry my tears are yours \nTo open any frozen doors \nHey let's do it like we're friends \nLet's do it do it \nHey let's do it like we're friends.
Tony Visconti told me the following (about [[Oh Baby]]):\n//\nThe personnel on the Dib Cochran dates were myself on bass, lead vocals and string arranger, John Cambridge on drums, Marc on gtrs and backing vocals and Rick Wakeman on piano. Mick Ronson, new to Bowie's band and living with us in Flat 7 at Beckenham, came for the day just to watch. One can only imagine what would've happened if he brought his guitar. My boss, David Platz, had some free time at CTS in North London and graciously gave us a whole 6 hours to make the two sides.\n//\n\n
Keyboard player with [[T.Rex]] 1974 ~ 1977
+++[Info]\na-side [[King Of The Rumbling Spires]]\n===\n\nHer Face was like a cult to me\nHer limbs were fierce in symmetry\nIt throws me into song\nThe throng have done us wrong\nAnd away she goes, her toes leave gold\nHer horn of youth has passed behold\nIt throws me into song\nThe throng have done us wrong\n\nDo-oo you remember?\nDo-oo you remember?\nPleasures of love\nTresures of love\n\nThe voice of light denounce the night\nSweet pilgrims climb the chily heights\nIt throws me into song\nThe throng have done us wrong\n\nDo-oo you remember?\nDo-oo you remember?\nPleasures of love\nTreasures of love\n\nDo-oo you remember?\nDo-oo you remember?\nPleasures of love\nTreasures of love
All my days are leafy blue \nBecause I'm not with you \nAll my words are ragged steel \nWhen I'm not with you. \n\nSee how the sun shines \nLike an arc where you walk \n\nAll my fears are water clear \nWhen I'm not with you \nAll I hear is wicked dear \nWhen I'm not with you.
Down Home Lady,\nDown Home Lady.\nAll I wanna do is be with you tonight,\nOooh yeah.\nDown Home Lady,\nDown Home Lady.\nAll I wanna do is be with you tonight.\n\nAnd when the breeze is cold, I will sing to you,\nThat you're my,\nDown Home Lady,\nDown Home Lady.\nAll I wanna do is be with you tonight.\n\nAnd when the breeze is cold, I will sing to you,\nThat you're my,\nDown Home Lady,\nDown Home Lady.\nAll I wanna do is be with you tonight
Dragon's ear and druid's spear \nProtects you while the *Dworns are here \nThe winds of wrath chill cold the cloth \nThat drapes her shape from fangs of fear. \nI love you my love \nPlease take this heart which I bear \nO heal my sorrow \nWeareth my arms like a charm \nThrough the dales of your doom. \nOur lives are mearly trees of possibilities.\n\n(*Dworn-Machinery of war,\na bronze frame with wheels of white ivory \nand the horns of a gazelle for steering,\n - so sayeth Agadinmar.)
O dreamy lady\nWon't you come\nTo my bed\nNight is the right time\nTo get acquainted with my head\nIn my bed Yeah \n\nStar light is shinning\nSilver baby hold me tight\nMoon beams are twining\nIn the portals of my sight\nYou're so right\n\nNa na na na na na na na (a chant)\nNa na na na na na\nWill you still love me
Do the Bomp, let's stomp.\n\nI'm a Disco Lady, who's gonna play me?\nI'd just like to tell ya,\nI hope you'll get some pleasure.\nI'll dance past midnight.\nSo don't get uptight.\nIf I bump real dirty,\nWe're gonna party,\n'Til one-thirty.\n\nI'm a Disco Lady.\nI'm a Disco Lady.\nI'll drive you crazy.\nI'm a foxy baby.\nGet down, get down.\n\nI'll try to do the hoe-down.\nI can jive now, I can get it on.\nEven do the locomotion.\nI'll even swim in the ocean.\nI'm a Disco Lady.\nWho's gonna play me?\nI just like excitement.\nI hope you get a partner.\n\nI'm a Disco Lady.\nI'm a Disco Lady.\nI'll drive you crazy.\nI'm a foxy baby.\nDo the Bomp, let's stomp.\nDisco baby.\nDisco Lady.\nShe'll drive you crazy.\nShe's a foxy baby.\nDisco baby.\nDisco Lady.\nShe'll drive you crazy.\nShe's a foxy baby.\nDo the Bomp, let's stomp.\nDo the Bomp.\n\nI'm a Disco Lady.\nWho's gonna play me?\nI'd just like to tell ya,\nI hope you'll get some pleasure.\nI'll dance past midnight,\nSo don't get uptight .\nIf I bump real dirty,\nWe're gonna party,\n'Til one-thirty.\n\nI'm a Disco Lady.\nI'm a Disco Lady.\nI'll drive you crazy.\nI'm a foxy baby.\nI'm a Disco Lady.\nI'm a Disco Lady.\nI'll drive you crazy.\nI'm a foxy baby.\nI'm a Disco Lady.\nI'm a Disco Lady.\nI'll drive you crazy.\nI'm a foxy baby.\n\nDo the Bomp, let's stomp...
I saw a little man who had a toy trumpet \nHe sat on a stone with his lips to the mouthpiece \nHe was deaf dumb and blind so he couldn't quite make it \nWhen out of the horn came a solid silver genie\nWho was made just to make the little man happy\n\nAs the man made sounds the geni painted fluid \nMind-blowing visions on the little man's brain-box\n\nEverbody small with no lips to play the trumpet \nEverybody living inside a giant deaf aid \nEverybody's eyes crucified to the tapestry \nWoven by the giant with the solid silver genie\nWho plays the trumpet \n
Eastern voices calling to you \nMystic magic oceans of blue \nTimeless wonders cease to wonder \nWhen you know the spell you're under \nIs mine.\n\nMany times I've seen the sunset \nOnly 'cos I'm trying to get \nAll the love my mind is holding \nUnseen pleasures are exploding for me. \n\nSecret sounds of giant sea birds \nSinging songs of lonesome sailors \nGolden cats in temples only knowing \nThat the spell of time \nIs his.
<!---\n| Name:|~TagglyTaggingEditTemplate |\n| Version:|1.1 (12-Jan-2006)|\n| Source:|http://simonbaird.com/mptw/#TagglyTaggingEditTemplate|\n| Purpose:|See TagglyTagging for more info|\n| Requires:|You need the CSS in TagglyTaggingStyles to make it look right|\n--->\n<!--{{{-->\n<div class="toolbar" macro="toolbar +saveTiddler closeOthers cancelTiddler deleteTiddler"></div>\n<div class="title" macro="view title"></div>\n<div class="editLabel"></div><div class="editor" macro="edit title"></div>\n<div class="editLabel"></div><div class="editor" macro="edit tags"></div>\n<div class="editorFooter"><span macro="message views.editor.tagPrompt"></span><span macro="tagChooser"></span></div>\n<div class="editor" macro="edit text"></div>\n<div class="toolbar" macro="toolbar +saveTiddler closeOthers cancelTiddler deleteTiddler"></div>\n<br/>\n<!--}}}-->
Standin' on a corner by my old high school, \nI let this female call me a fool \nI got on my knees and begged to the sun \nAnd I knew that my manhood had begun \nBoogie on, electric boogie, boogie on \nEmbrace your brother, dance in the mud \nLike a Palamino stud. \nCome along hold my hand
On the street\nPeople call you a foxy girl\nMe I'm loose like a golden goose\nYou can have my juice\n\nSteady on soldier\nWatch what your doing to my girl\nSteady on soldier\nWatch what your doing to my girl\n\nElectric slim and the factory hen\nMan they ain't my kind\nAt dead of night like a fiery kite\nYou've been on my mind\n\nFrozen feet on a winter street\nMan that ain't your fate \nGreased in sun California fun\nMan that's more my style
[img[http://static.flickr.com/95/217709325_54a0c5a8c5_m.jpg]]
Torch girl of the marshes \nHer kiss is a whip of the moon \nDawn's damsels are dancing \nTo the hum of her sunny young tune. \n\nO-Oh Elemental Child...\nO-Oh Ye-ah Elemental Child...\nHold the glove of gold behind you \nLove the glove of Truth. \n\nGems hemmed in the heart's head \nThe shield of the rivers is hers \nShe once told me to think white \nAnd the night disappeared like a bird. \n\nO-Oh Elemental Child...\nO-Oh Ye-ah Elemental Child...\nHold the glove of gold behind you \nLove the glove of Truth.
''Elton'' (along with [[Ringo Starr]] on drums) played piano with [[T.Rex]] on the set of [[Born To Boogie (The Movie)]].\n''Elton'' also played piano for [[T.Rex]] on a few ''Top Of The Pops'' appearances.
The evenings of Damask are falling \nThe youth of truth chest \nFeeds a starling \nWith his heart. \n\nA chosen man begged by the wayside \nA horse came soon and deid before him \nAnd said eat. \n\nThe icy claws of earth are crawling \nUpon my baby's brow and calling \nPlease come home. \n\nThe boy unlike the man was smiling \nFor gulleys, streams and hills would hide him \nLike a swan. \n\nA vagabond, a weaver warrior \nProduced a loom, a cheese and choppper \nAnd said choose. \n\nMy sandled feet are fleet like water \nI kiss the limbs is Earthess daughter \nA little tree.
Everybody needs somebody to love.\nEverybody needs somebody to love.\nSo don't give me no deceptions.\nDon't give me no craps.\nJust hang on girl and give me,\nPart of the classic rap.\n\nDoo doo doo...\n\nEverybody needs somebody to love.\nEverybody needs somebody to love.\nDon't start no deceptions.\nDon't go with no trap.\nFor suit girl I want,\nIs to hear the classic rap.\n\nDoo doo doo...\n\nI've seen you on the highway\nAnd I've seen you up the tree.\nI know you do me handsome\nAnd all you want is to be a priest.\n\nEverybody needs somebody to love
Are you really as rich as you said, love?\n\nEveryday I could have given you,\nEvery little thing I ever had.\nEvery little thing you ever wanted,\nBut that was yesterday.\n\nEveryday I could have loved you.\nEveryday you could have been my pearl.\nEvery little thing you ever wanted,\nBut that was yesterday.\n\nTime has a way of doin' cruel things to lovers.\n\nEveryday I could have loved you.\nEveryday you could have been my pearl.\nEvery little thing you ever wanted,\nBut that was yesterday.\n\nEveryday I could have given you,\nEvery little thing I ever had.\nEvery little thing you ever wanted,\nBut that was yesterday.\nYesterday.\n\nTime has a way of doin' cruel things to lovers.\n\nJust like yesterday
+++[Info]\na-side [[Light Of Love]]\n===\n\n\nNow I'm poppin' a few in the morning dew\nDo the monkey wrench\non a persian bench it's a teenage night\nand the vampires are right\n\nAnd I want to lay my lips on your explosive mouth\n\nPicked up Kenny at the art-deco deli\nAnd Zero is a cat with any automated hat\nAnd I need to be rid of the fantasies I'm hiding\nAnd I want to lay my lips on your explosive mouth\n\nIt's a shame for a man to hide all the things\nthat do survive from his past\n\nWhen I jump on your horse I gallop the course\nAnd howl like a wolf and I drink up the sky\nAnd I beat on my chest just to punk up the rest\n\nAnd I want to lay my lips on your explosive mouth\nAnd I want to lay my lips on your explosive mouth\n\nIt's a shame for a man to hide all the things\nThat do survive from his past
/***\n''Export Tiddlers Plugin for TiddlyWiki version 2.0''\n^^author: Eric Shulman - ELS Design Studios\nsource: http://www.TiddlyTools.com/#ExportTiddlersPlugin\nlicense: [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]^^\n\nWhen many people edit copies of the same TiddlyWiki document, the ability to easily copy and share these changes so they can then be redistributed to the entire group is very important. This ability 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\nExportTiddlersPlugin let you ''select and extract tiddlers from your ~TiddlyWiki documents and save them to a local file'' or a remote server (requires installation of compatible server-side scripting, still under development...). An interactive control panel lets you specify a destination, and then select which tiddlers to export. A convenient 'selection filter' helps you pick desired tiddlers by specifying a combination of modification dates, tags, or tiddler text to be matched or excluded. ''Tiddler data can be output as ~TiddlyWiki "storeArea ~DIVs" that can be imported into another ~TiddlyWiki or as ~RSS-compatible XML that can be published for RSS syndication.''\n\n!!!!!Inline interface (live)\n<<<\n<<exportTiddlers inline>>\n<<<\n!!!!!Usage\n<<<\nOptional "special tiddlers" used by this plugin:\n* SiteUrl^^\nURL for official server-published version of document being viewed\ndefault: //none//^^\n* SiteHost^^\nhost name/address for remote server (e.g., "www.server.com" or "192.168.1.27")\ndefault: //none//^^\n* SitePost^^\nremote path/filename for submitting changes (e.g., "/cgi-bin/submit.cgi")\ndefault: //none//^^\n* SiteParams^^\narguments (if any) for server-side receiving script\ndefault: //none//^^\n* SiteID^^\nusername or other authorization identifier for login-controlled access to remote server\ndefault: current TiddlyWiki username (e.g., "YourName")^^\n* SiteDate^^\nstored date/time stamp for most recent published version of document\ndefault: current document.modified value (i.e., the 'file date')^^\n<<<\n!!!!!Example\n<<<\n<<exportTiddlers>>\n<<<\n!!!!!Installation\n<<<\nImport (or copy/paste) the following tiddlers into your document:\n''ExportTiddlersPlugin'' (tagged with <<tag systemConfig>>)\n\ncreate/edit ''SideBarOptions'': (sidebar menu items) \n^^Add "< < exportTiddlers > >" macro^^\n<<<\n!!!!!Revision History\n<<<\n''2006.02.12 [2.1.2]''^^\nadded var to unintended global 'tags' in matchTags(). Avoids FF1501 bug when filtering by tags. (based on report by TedPavlic)\n''2006.02.04 [2.1.1]''^^\nadded var to variables that were unintentionally global. Avoids FireFox 1.5.0.1 crash bug when referencing global variables\n''2006.02.02 [2.1.0]''^^\nAdded support for output of complete TiddlyWiki documents. Let's you use ExportTiddlers to generate 'starter' documents from selected tiddlers.^^\n''2006.01.21 [2.0.1]''^^\nDefer initial panel creation and only register a notification function when panel first is created\nin saveChanges 'hijack', create panel as needed. Note: if window.event is not available to identify the click location, the export panel is positioned relative to the 'tiddlerDisplay' element of the TW document.\n^^\n''2005.12.27 [2.0.0]''^^\nUpdate for TW2.0\nDefer initial panel creation and only register a notification function when panel first is created\n^^\n''2005.12.24 [0.9.5]''^^\nMinor adjustments to CSS to force correct link colors regardless of TW stylesheet selection\n^^\n''2005.12.16 [0.9.4]''^^\nDynamically create/remove exportPanel as needed to ensure only one instance of interface elements exists, even if there are multiple instances of macro embedding.\n^^\n''2005.11.15 [0.9.2]''^^\nadded non-Ajax post function to bypass javascript security restrictions on cross-domain I/O. Moved AJAX functions to separate tiddler (no longer needed here). Generalized HTTP server to support UnaWiki servers\n^^\n+++[previous releases...]\n''2005.11.08 [0.9.1]''^^\nmoved HTML, CSS and control initialization into exportInit() function and call from macro handler instead of at load time. This allows exportPanel to be placed within the same containing element as the "export tiddlers" button, so that relative positioning can be achieved.\n^^\n''2005.10.28 [0.9.0]''^^\nadded 'select opened tiddlers' feature\nBased on a suggestion by Geoff Slocock\n^^\n''2005.10.24 [0.8.3]''^^\nCorrected hijack of 'save changes' when using http:\n^^\n''2005.10.18 [0.8.2]''^^\nadded AJAX functions\n^^\n''2005.10.18 [0.8.1]''^^\nCorrected timezone handling when filtering for date ranges.\nImproved error checking/reporting for invalid filter values and filters that don't match any tiddlers.\nExporting localfile-to-localfile is working for IE and FF\nExporting server-to-localfile works in IE (after ActiveX warnings), but has security issues in FF\nCross-domain exporting (localfile/server-to-server) is under development\nCookies to remember filter settings - coming soon\nMore style tweaks, minor text changes and some assorted layout cleanup.\n^^\n''2005.10.17 [0.8.0]''^^\nFirst pre-release.\n^^\n''2005.10.16 [0.7.0]''^^\nfilter by tags\n^^\n''2005.10.15 [0.6.0]''^^\nfilter by title/text\n^^\n''2005.10.14 [0.5.0]''^^\nexport to local file (DIV or XML)\n^^\n''2005.10.14 [0.4.0]''^^\nfilter by start/end date\n^^\n''2005.10.13 [0.3.0]''^^\npanel interaction\n^^\n''2005.10.11 [0.2.0]''^^\npanel layout\n^^\n''2005.10.10 [0.1.0]''^^\ncode framework\n^^\n''2005.10.09 [0.0.0]''^^\ndevelopment started\n^^\n===\n<<<\n!!!!!Credits\n<<<\nThis feature was developed by EricShulman from [[ELS Design Studios|http:/www.elsdesign.com]]\n<<<\n!!!!!Code\n***/\n// // +++[version]\n//{{{\nversion.extensions.exportTiddlers = {major: 2, minor: 1, revision: 2, date: new Date(2006,2,12)};\n//}}}\n// //===\n\n// // +++[macro handler]\n//{{{\nconfig.macros.exportTiddlers = {\n label: "export tiddlers",\n prompt: "Copy selected tiddlers to an export document",\n datetimefmt: "0MM/0DD/YYYY 0hh:0mm:0ss" // for "filter date/time" edit fields\n};\n\nconfig.macros.exportTiddlers.handler = function(place,macroName,params) {\n if (params[0]!="inline")\n { createTiddlyButton(place,this.label,this.prompt,onClickExportMenu); return; }\n var panel=createExportPanel(place);\n panel.style.position="static";\n panel.style.display="block";\n}\n\nfunction createExportPanel(place) {\n var panel=document.getElementById("exportPanel");\n if (panel) { panel.parentNode.removeChild(panel); }\n setStylesheet(config.macros.exportTiddlers.css,"exportTiddlers");\n panel=createTiddlyElement(place,"span","exportPanel",null,null)\n panel.innerHTML=config.macros.exportTiddlers.html;\n exportShowPanel(document.location.protocol);\n exportInitFilter();\n refreshExportList(0);\n store.addNotification(null,refreshExportList); // refresh listbox after every tiddler change\n return panel;\n}\n\nfunction onClickExportMenu(e)\n{\n if (!e) var e = window.event;\n var parent=resolveTarget(e).parentNode;\n var panel = document.getElementById("exportPanel");\n if (panel==undefined || panel.parentNode!=parent)\n panel=createExportPanel(parent);\n var isOpen = panel.style.display=="block";\n if(config.options.chkAnimate)\n anim.startAnimating(new Slider(panel,!isOpen,e.shiftKey || e.altKey,"none"));\n else\n panel.style.display = isOpen ? "none" : "block" ;\n e.cancelBubble = true;\n if (e.stopPropagation) e.stopPropagation();\n return(false);\n}\n//}}}\n// //===\n\n// // +++[Hijack saveChanges] diverts 'notFileUrlError' to display export control panel instead\n//{{{\nwindow.coreSaveChanges=window.saveChanges;\nwindow.saveChanges = function()\n{\n if (document.location.protocol=="file:") { coreSaveChanges(); return; }\n var e = window.event;\n var parent=e?resolveTarget(e).parentNode:document.body;\n var panel = document.getElementById("exportPanel");\n if (panel==undefined || panel.parentNode!=parent) panel=createExportPanel(parent);\n exportShowPanel(document.location.protocol);\n if (parent==document.body) { panel.style.left="30%"; panel.style.top="30%"; }\n panel.style.display = "block" ;\n}\n//}}}\n// //===\n\n// // +++[IE needs explicit scoping] for functions called by browser events\n//{{{\nwindow.onClickExportMenu=onClickExportMenu;\nwindow.onClickExportButton=onClickExportButton;\nwindow.exportShowPanel=exportShowPanel;\nwindow.exportShowFilterFields=exportShowFilterFields;\nwindow.refreshExportList=refreshExportList;\n//}}}\n// //===\n\n// // +++[CSS] for floating export control panel\n//{{{\nconfig.macros.exportTiddlers.css = '\s\n#exportPanel {\s\n display: none; position:absolute; z-index:12; width:35em; right:105%; top:6em;\s\n background-color: #eee; color:#000; font-size: 8pt; line-height:110%;\s\n border:1px solid black; border-bottom-width: 3px; border-right-width: 3px;\s\n padding: 0.5em; margin:0em; -moz-border-radius:1em;\s\n}\s\n#exportPanel a, #exportPanel td a { color:#009; display:inline; margin:0px; padding:1px; }\s\n#exportPanel table { width:100%;border:0px;padding:0px;margin:0px; font-size:8pt;line-height:110%}\s\n#exportPanel tr { border:0px;padding:0px;margin:0px; }\s\n#exportPanel td { border:0px;padding:0px;margin:0px; }\s\n#exportPanel select { width:98%;margin:0px;font-size:8pt;line-height:110%;}\s\n#exportPanel input { width:98%;padding:0px;margin:0px;font-size:8pt;line-height:110%}\s\n#exportPanel .box { border:1px solid black; padding:3px; margin-bottom:5px; background:#f8f8f8; -moz-border-radius:5px;}\s\n#exportPanel .topline { border-top:2px solid black; padding-top:3px; margin-bottom:5px; }\s\n#exportPanel .rad { width:auto; }\s\n#exportPanel .chk { width:auto; }\s\n#exportPanel .btn { width:auto; }\s\n#exportPanel .btn1 { width:98%; }\s\n#exportPanel .btn2 { width:48%; }\s\n#exportPanel .btn3 { width:32%; }\s\n#exportPanel .btn4 { width:24%; }\s\n#exportPanel .btn5 { width:19%; }\s\n';\n//}}}\n// //===\n\n// // +++[HTML] for export control panel interface\n//{{{\nconfig.macros.exportTiddlers.html = '\s\n<!-- output target and format -->\s\n<table cellpadding="0" cellspacing="0"><tr><td width=50%>\s\n export to\s\n <select size=1 id="exportTo" onchange="exportShowPanel(this.value);">\s\n <option value="file:" SELECTED>this computer</option>\s\n <option value="http:">web server (http)</option>\s\n <option value="https:">secure web server (https)</option>\s\n <option value="ftp:">file server (ftp)</option>\s\n </select>\s\n</td><td width=50%>\s\n output format\s\n <select id="exportFormat" size=1>\s\n <option value="DIV">TiddlyWiki export file</option>\s\n <option value="TW">TiddlyWiki document</option>\s\n <option value="XML">RSS feed (XML)</option>\s\n </select>\s\n</td></tr></table>\s\n\s\n<!-- export to local file -->\s\n<div id="exportLocalPanel" style="margin-bottom:5px;margin-top:5px;">\s\nlocal path/filename<br>\s\n<input type="file" id="exportFilename" size=56 style="width:100%"><br>\s\n</div><!--panel-->\s\n\s\n<!-- export to http server -->\s\n<div id="exportHTTPPanel" style="display:none;margin-bottom:5px;margin-top:5px;">\s\ndocument URL<br>\s\n<input type="text" id="exportHTTPSiteURL" onfocus="this.select()"><br>\s\nserver script / parameters<br>\s\n<input type="text" id="exportHTTPServerURL" onfocus="this.select()"><br>\s\n</div><!--panel-->\s\n\s\n<!-- export to ftp server -->\s\n<div id="exportFTPPanel" style="display:none;margin-bottom:5px;margin-top:5px;">\s\n<table cellpadding="0" cellspacing="0" width="33%"><tr valign="top"><td>\s\n host server<br>\s\n <input type="text" id="exportFTPHost" onfocus="this.select()"><br>\s\n</td><td width="33%">\s\n username<br>\s\n <input type="text" id="exportFTPID" onfocus="this.select()"><br>\s\n</td><td width="33%">\s\n password<br>\s\n <input type="password" id="exportFTPPW" onfocus="this.select()"><br>\s\n</td></tr></table>\s\nFTP path/filename<br>\s\n<input type="text" id="exportFTPFilename" onfocus="this.select()"><br>\s\n</div><!--panel-->\s\n\s\n<!-- list of tiddlers -->\s\n<table><tr align="left"><td>\s\n select:\s\n <a href="JavaScript:;" id="exportSelectAll"\s\n onclick="onClickExportButton(this)" title="select all tiddlers">\s\n &nbsp;all&nbsp;</a>\s\n <a href="JavaScript:;" id="exportSelectChanges"\s\n onclick="onClickExportButton(this)" title="select tiddlers changed since last save">\s\n &nbsp;changes&nbsp;</a> \s\n <a href="JavaScript:;" id="exportSelectOpened"\s\n onclick="onClickExportButton(this)" title="select tiddlers currently being displayed">\s\n &nbsp;opened&nbsp;</a> \s\n <a href="JavaScript:;" id="exportToggleFilter"\s\n onclick="onClickExportButton(this)" title="show/hide selection filter">\s\n &nbsp;filter&nbsp;</a> \s\n</td><td align="right">\s\n <a href="JavaScript:;" id="exportListSmaller"\s\n onclick="onClickExportButton(this)" title="reduce list size">\s\n &nbsp;&#150;&nbsp;</a>\s\n <a href="JavaScript:;" id="exportListLarger"\s\n onclick="onClickExportButton(this)" title="increase list size">\s\n &nbsp;+&nbsp;</a>\s\n</td></tr></table>\s\n<select id="exportList" multiple size="10" style="margin-bottom:5px;"\s\n onchange="refreshExportList(this.selectedIndex)">\s\n</select><br>\s\n\s\n<!-- selection filter -->\s\n<div id="exportFilterPanel" style="display:none">\s\n<table><tr align="left"><td>\s\n selection filter\s\n</td><td align="right">\s\n <a href="JavaScript:;" id="exportHideFilter"\s\n onclick="onClickExportButton(this)" title="hide selection filter">hide</a>\s\n</td></tr></table>\s\n<div class="box">\s\n<input type="checkbox" class="chk" id="exportFilterStart" value="1"\s\n onclick="exportShowFilterFields(this)"> starting date/time<br>\s\n<table cellpadding="0" cellspacing="0"><tr valign="center"><td width="50%">\s\n <select size=1 id="exportFilterStartBy" onchange="exportShowFilterFields(this);">\s\n <option value="0">today</option>\s\n <option value="1">yesterday</option>\s\n <option value="7">a week ago</option>\s\n <option value="30">a month ago</option>\s\n <option value="site">SiteDate</option>\s\n <option value="file">file date</option>\s\n <option value="other">other (mm/dd/yyyy hh:mm)</option>\s\n </select>\s\n</td><td width="50%">\s\n <input type="text" id="exportStartDate" onfocus="this.select()"\s\n onchange="document.getElementById(\s'exportFilterStartBy\s').value=\s'other\s';">\s\n</td></tr></table>\s\n<input type="checkbox" class="chk" id="exportFilterEnd" value="1"\s\n onclick="exportShowFilterFields(this)"> ending date/time<br>\s\n<table cellpadding="0" cellspacing="0"><tr valign="center"><td width="50%">\s\n <select size=1 id="exportFilterEndBy" onchange="exportShowFilterFields(this);">\s\n <option value="0">today</option>\s\n <option value="1">yesterday</option>\s\n <option value="7">a week ago</option>\s\n <option value="30">a month ago</option>\s\n <option value="site">SiteDate</option>\s\n <option value="file">file date</option>\s\n <option value="other">other (mm/dd/yyyy hh:mm)</option>\s\n </select>\s\n</td><td width="50%">\s\n <input type="text" id="exportEndDate" onfocus="this.select()"\s\n onchange="document.getElementById(\s'exportFilterEndBy\s').value=\s'other\s';">\s\n</td></tr></table>\s\n<input type="checkbox" class="chk" id=exportFilterTags value="1"\s\n onclick="exportShowFilterFields(this)"> match tags<br>\s\n<input type="text" id="exportTags" onfocus="this.select()">\s\n<input type="checkbox" class="chk" id=exportFilterText value="1"\s\n onclick="exportShowFilterFields(this)"> match titles/tiddler text<br>\s\n<input type="text" id="exportText" onfocus="this.select()">\s\n</div> <!--box-->\s\n</div> <!--panel-->\s\n\s\n<!-- action buttons -->\s\n<div style="text-align:center">\s\n<input type=button class="btn3" onclick="onClickExportButton(this)"\s\n id="exportFilter" value="apply filter">\s\n<input type=button class="btn3" onclick="onClickExportButton(this)"\s\n id="exportStart" value="export tiddlers">\s\n<input type=button class="btn3" onclick="onClickExportButton(this)"\s\n id="exportClose" value="close">\s\n</div><!--center-->\s\n';\n//}}}\n// //===\n\n// // +++[initialize interface]>\n// // +++[exportShowPanel(which)]\n//{{{\nfunction exportShowPanel(which) {\n var index=0; var panel='exportLocalPanel';\n switch (which) {\n case 'file:':\n case undefined:\n index=0; panel='exportLocalPanel'; break;\n case 'http:':\n index=1; panel='exportHTTPPanel'; break;\n case 'https:':\n index=2; panel='exportHTTPPanel'; break;\n case 'ftp:':\n index=3; panel='exportFTPPanel'; break;\n default:\n alert("Sorry, export to "+which+" is not yet available");\n break;\n }\n exportInitPanel(which);\n document.getElementById('exportTo').selectedIndex=index;\n document.getElementById('exportLocalPanel').style.display='none';\n document.getElementById('exportHTTPPanel').style.display='none';\n document.getElementById('exportFTPPanel').style.display='none';\n document.getElementById(panel).style.display='block';\n}\n//}}}\n// //===\n\n// // +++[exportInitPanel(which)]\n//{{{\nfunction exportInitPanel(which) {\n switch (which) {\n case "file:": // LOCAL EXPORT PANEL: file/path:\n // ** no init - security issues in IE **\n break;\n case "http:": // WEB EXPORT PANEL\n case "https:": // SECURE WEB EXPORT PANEL\n // url\n var siteURL=store.getTiddlerText("SiteUrl");\n if (store.tiddlerExists("unawiki_download")) {\n var theURL=store.getTiddlerText("unawiki_download");\n theURL=theURL.replace(/\s[\s[download\s|/,'').replace(/\s]\s]/,'');\n var title=(store.tiddlerExists("unawiki_host"))?"unawiki_host":"SiteHost";\n var theHost=store.getTiddlerText(title);\n if (!theHost || !theHost.length) theHost=document.location.host;\n if (!theHost || !theHost.length) theHost=title;\n siteURL=which+"//"+theHost+theURL\n }\n if (!siteURL) siteURL="SiteUrl";\n document.getElementById("exportHTTPSiteURL").value=siteURL;;\n // server script/params\n var title=(store.tiddlerExists("unawiki_host"))?"unawiki_host":"SiteHost";\n var theHost=store.getTiddlerText(title);\n if (!theHost || !theHost.length) theHost=document.location.host;\n if (!theHost || !theHost.length) theHost=title;\n // get POST\n var title=(store.tiddlerExists("unawiki_post"))?"unawiki_post":"SitePost";\n var thePost=store.getTiddlerText(title);\n if (!thePost || !thePost.length) thePost="/"+title;\n // get PARAMS\n var title=(store.tiddlerExists("unawiki_params"))?"unawiki_params":"SiteParams";\n var theParams=store.getTiddlerText(title);\n if (!theParams|| !theParams.length) theParams=title;\n var serverURL = which+"//"+theHost+thePost+"?"+theParams;\n document.getElementById("exportHTTPServerURL").value=serverURL;\n break;\n case "ftp:": // FTP EXPORT PANEL\n // host\n var siteHost=store.getTiddlerText("SiteHost");\n if (!siteHost || !siteHost.length) siteHost=document.location.host;\n if (!siteHost || !siteHost.length) siteHost="SiteHost";\n document.getElementById("exportFTPHost").value=siteHost;\n // username\n var siteID=store.getTiddlerText("SiteID");\n if (!siteID || !siteID.length) siteID=config.options.txtUserName;\n document.getElementById("exportFTPID").value=siteID;\n // password\n document.getElementById("exportFTPPW").value="";\n // file/path\n document.getElementById("exportFTPFilename").value="";\n break;\n }\n}\n//}}}\n// //===\n\n// // +++[exportInitFilter()]\n//{{{\nfunction exportInitFilter() {\n // TBD: persistent settings via local cookies\n // start date\n document.getElementById("exportFilterStart").checked=false;\n document.getElementById("exportStartDate").value="";\n // end date\n document.getElementById("exportFilterEnd").checked=false;\n document.getElementById("exportEndDate").value="";\n // tags\n document.getElementById("exportFilterTags").checked=false;\n document.getElementById("exportTags").value="not excludeExport";\n // text\n document.getElementById("exportFilterText").checked=false;\n document.getElementById("exportText").value="";\n // show/hide filter input fields\n exportShowFilterFields();\n}\n//}}}\n// //===\n\n// // +++[exportShowFilterFields(which)]\n//{{{\nfunction exportShowFilterFields(which) {\n var show;\n\n show=document.getElementById('exportFilterStart').checked;\n document.getElementById('exportFilterStartBy').style.display=show?"block":"none";\n document.getElementById('exportStartDate').style.display=show?"block":"none";\n var val=document.getElementById('exportFilterStartBy').value;\n document.getElementById('exportStartDate').value\n =getFilterDate(val,'exportStartDate').formatString(config.macros.exportTiddlers.datetimefmt);\n if (which && (which.id=='exportFilterStartBy') && (val=='other'))\n document.getElementById('exportStartDate').focus();\n\n show=document.getElementById('exportFilterEnd').checked;\n document.getElementById('exportFilterEndBy').style.display=show?"block":"none";\n document.getElementById('exportEndDate').style.display=show?"block":"none";\n var val=document.getElementById('exportFilterEndBy').value;\n document.getElementById('exportEndDate').value\n =getFilterDate(val,'exportEndDate').formatString(config.macros.exportTiddlers.datetimefmt);\n if (which && (which.id=='exportFilterEndBy') && (val=='other'))\n document.getElementById('exportEndDate').focus();\n\n show=document.getElementById('exportFilterTags').checked;\n document.getElementById('exportTags').style.display=show?"block":"none";\n\n show=document.getElementById('exportFilterText').checked;\n document.getElementById('exportText').style.display=show?"block":"none";\n}\n//}}}\n// //===\n// //===\n\n// // +++[onClickExportButton(which): control interactions]\n//{{{\nfunction onClickExportButton(which)\n{\n // DEBUG alert(which.id);\n var theList=document.getElementById('exportList'); if (!theList) return;\n var count = 0;\n var total = store.getTiddlers('title').length;\n switch (which.id)\n {\n case 'exportFilter':\n count=filterExportList();\n var panel=document.getElementById('exportFilterPanel');\n if (count==-1) { panel.style.display='block'; break; }\n theList.options[0].text=formatExportListHeader(count,total);\n document.getElementById("exportStart").disabled=(count==0);\n clearMessage(); displayMessage("filtered "+theList.options[0].text);\n if (count==0) { alert("No tiddlers were selected"); panel.style.display='block'; }\n break;\n case 'exportStart':\n exportTiddlers();\n break;\n case 'exportHideFilter':\n case 'exportToggleFilter':\n var panel=document.getElementById('exportFilterPanel')\n panel.style.display=(panel.style.display=='block')?'none':'block';\n break;\n case 'exportSelectChanges':\n var lastmod=new Date(document.lastModified);\n for (var t = 0; t < theList.options.length; t++) {\n if (theList.options[t].value=="") continue;\n var tiddler=store.getTiddler(theList.options[t].value); if (!tiddler) continue;\n theList.options[t].selected=(tiddler.modified>lastmod);\n count += (tiddler.modified>lastmod)?1:0;\n }\n theList.options[0].text=formatExportListHeader(count,total);\n document.getElementById("exportStart").disabled=(count==0);\n clearMessage(); displayMessage(theList.options[0].text);\n if (count==0) alert("There are no unsaved changes");\n break;\n case 'exportSelectAll':\n for (var t = 0; t < theList.options.length; t++) {\n if (theList.options[t].value=="") continue;\n theList.options[t].selected=true;\n count += 1;\n }\n theList.options[0].text=formatExportListHeader(count,count);\n document.getElementById("exportStart").disabled=(count==0);\n clearMessage(); displayMessage(theList.options[0].text);\n break;\n case 'exportSelectOpened':\n for (var t = 0; t < theList.options.length; t++) theList.options[t].selected=false;\n var tiddlerDisplay = document.getElementById("tiddlerDisplay");\n for (var t=0;t<tiddlerDisplay.childNodes.length;t++) {\n var tiddler=tiddlerDisplay.childNodes[t].id.substr(7);\n for (var i = 0; i < theList.options.length; i++) {\n if (theList.options[i].value!=tiddler) continue;\n theList.options[i].selected=true; count++; break;\n }\n }\n theList.options[0].text=formatExportListHeader(count,total);\n document.getElementById("exportStart").disabled=(count==0);\n clearMessage(); displayMessage(theList.options[0].text);\n if (count==0) alert("There are no tiddlers currently opened");\n break;\n case 'exportListSmaller': // decrease current listbox size\n var min=5;\n theList.size-=(theList.size>min)?1:0;\n break;\n case 'exportListLarger': // increase current listbox size\n var max=(theList.options.length>25)?theList.options.length:25;\n theList.size+=(theList.size<max)?1:0;\n break;\n case 'exportClose':\n document.getElementById('exportPanel').style.display='none';\n break;\n }\n}\n//}}}\n// //===\n\n// // +++[list display]\n//{{{\nfunction formatExportListHeader(count,total)\n{\n var txt=total+' tiddler'+((total!=1)?'s':'')+" - ";\n txt += (count==0)?"none":(count==total)?"all":count;\n txt += " selected for export";\n return txt;\n}\n\nfunction refreshExportList(selectedIndex)\n{\n var theList = document.getElementById("exportList");\n var sort;\n if (!theList) return;\n // get the sort order\n if (!selectedIndex) selectedIndex=0;\n if (selectedIndex==0) sort='modified';\n if (selectedIndex==1) sort='title';\n if (selectedIndex==2) sort='modified';\n if (selectedIndex==3) sort='modifier';\n\n // get the alphasorted list of tiddlers\n var tiddlers = store.getTiddlers('title');\n // unselect headings and count number of tiddlers actually selected\n var count=0;\n for (var i=0; i<theList.options.length; i++) {\n if (theList.options[i].value=="") theList.options[i].selected=false;\n count+=theList.options[i].selected?1:0;\n }\n // disable "export" button if no tiddlers selected\n document.getElementById("exportStart").disabled=(count==0);\n // update listbox heading to show selection count\n if (theList.options.length)\n theList.options[0].text=formatExportListHeader(count,tiddlers.length);\n\n // if a [command] item, reload list... otherwise, no further refresh needed\n if (selectedIndex>3) return;\n\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++]=\n new Option(formatExportListHeader(0,tiddlers.length), "",false,false);\n theList.options[i++]=\n new Option(((sort=="title" )?">":indent)+' [by title]', "",false,false);\n theList.options[i++]=\n new Option(((sort=="modified")?">":indent)+' [by date]', "",false,false);\n theList.options[i++]=\n new Option(((sort=="modifier")?">":indent)+' [by author]', "",false,false);\n // output the tiddler list\n switch(sort)\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 "modifier":\n case "modified":\n var tiddlers = store.getTiddlers(sort);\n // sort descending for newest date first\n tiddlers.sort(function (a,b) {if(a[sort] == b[sort]) return(0); else return (a[sort] > b[sort]) ? -1 : +1; });\n var lastSection = "";\n for(var t = 0; t < tiddlers.length; t++)\n {\n var tiddler = tiddlers[t];\n var theSection = "";\n if (sort=="modified") theSection=tiddler.modified.toLocaleDateString();\n if (sort=="modifier") theSection=tiddler.modifier;\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}\n//}}}\n// //===\n\n// // +++[list filtering]\n//{{{\nfunction getFilterDate(val,id)\n{\n var result=0;\n switch (val) {\n case 'site':\n var timestamp=store.getTiddlerText("SiteDate");\n if (!timestamp) timestamp=document.lastModified;\n result=new Date(timestamp);\n break;\n case 'file':\n result=new Date(document.lastModified);\n break;\n case 'other':\n result=new Date(document.getElementById(id).value);\n break;\n default: // today=0, yesterday=1, one week=7, two weeks=14, a month=31\n var now=new Date(); var tz=now.getTimezoneOffset()*60000; now-=tz;\n var oneday=86400000;\n if (id=='exportStartDate')\n result=new Date((Math.floor(now/oneday)-val)*oneday+tz);\n else\n result=new Date((Math.floor(now/oneday)-val+1)*oneday+tz-1);\n break;\n }\n // DEBUG alert('getFilterDate('+val+','+id+')=='+result+"\snnow="+now);\n return result;\n}\n\nfunction filterExportList()\n{\n var theList = document.getElementById("exportList"); if (!theList) return -1;\n\n var filterStart=document.getElementById("exportFilterStart").checked;\n var val=document.getElementById("exportFilterStartBy").value;\n var startDate=getFilterDate(val,'exportStartDate');\n\n var filterEnd=document.getElementById("exportFilterEnd").checked;\n var val=document.getElementById("exportFilterEndBy").value;\n var endDate=getFilterDate(val,'exportEndDate');\n\n var filterTags=document.getElementById("exportFilterTags").checked;\n var tags=document.getElementById("exportTags").value;\n\n var filterText=document.getElementById("exportFilterText").checked;\n var text=document.getElementById("exportText").value;\n\n if (!(filterStart||filterEnd||filterTags||filterText)) {\n alert("Please set the selection filter");\n document.getElementById('exportFilterPanel').style.display="block";\n return -1;\n }\n if (filterStart&&filterEnd&&(startDate>endDate)) {\n var msg="starting date/time:\sn"\n msg+=startDate.toLocaleString()+"\sn";\n msg+="is later than ending date/time:\sn"\n msg+=endDate.toLocaleString()\n alert(msg);\n return -1;\n }\n\n // scan list and select tiddlers that match all applicable criteria\n var total=0;\n var count=0;\n for (var i=0; i<theList.options.length; i++) {\n // get item, skip non-tiddler list items (section headings)\n var opt=theList.options[i]; if (opt.value=="") continue;\n // get tiddler, skip missing tiddlers (this should NOT happen)\n var tiddler=store.getTiddler(opt.value); if (!tiddler) continue; \n var sel=true;\n if ( (filterStart && tiddler.modified<startDate)\n || (filterEnd && tiddler.modified>endDate)\n || (filterTags && !matchTags(tiddler,tags))\n || (filterText && (tiddler.text.indexOf(text)==-1) && (tiddler.title.indexOf(text)==-1)))\n sel=false;\n opt.selected=sel;\n count+=sel?1:0;\n total++;\n }\n return count;\n}\n//}}}\n\n//{{{\nfunction matchTags(tiddler,cond)\n{\n if (!cond||!cond.trim().length) return false;\n\n // build a regex of all tags as a big-old regex that \n // OR's the tags together (tag1|tag2|tag3...) in length order\n var tgs = store.getTags();\n if ( tgs.length == 0 ) return results ;\n var tags = tgs.sort( function(a,b){return (a[0].length<b[0].length)-(a[0].length>b[0].length);});\n var exp = "(" + tags.join("|") + ")" ;\n exp = exp.replace( /(,[\sd]+)/g, "" ) ;\n var regex = new RegExp( exp, "ig" );\n\n // build a 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 cond = cond.replace( regex, "/$1\s\s|/.test(tiddlerTags)" );\n cond = cond.replace( /\ssand\ss/ig, " && " ) ;\n cond = cond.replace( /\ssor\ss/ig, " || " ) ;\n cond = cond.replace( /\ss?not\ss/ig, " ! " ) ;\n\n // if a boolean uses a tag that doesn't exist - it will get left alone \n // (we only turn existing tags into actual tests).\n // replace anything that wasn't found as a tag, AND, OR, or NOT with the string "false"\n // if the tag doesn't exist then /tag/.test(...) will always return false.\n cond = cond.replace( /(\ss|^)+[^\s/\s|&!][^\ss]*/g, "false" ) ;\n\n // make a string of the tags in the tiddler and eval the 'cond' string against that string \n // if it's TRUE then the tiddler qualifies!\n var tiddlerTags = (tiddler.tags?tiddler.tags.join("|"):"")+"|" ;\n try { if ( eval( cond ) ) return true; }\n catch( e ) { displayMessage("Error in tag filter '" + e + "'" ); }\n return false;\n}\n//}}}\n// //===\n\n// // +++[output data formatting]>\n// // +++[exportHeader(format)]\n//{{{\nfunction exportHeader(format)\n{\n switch (format) {\n case "TW": return exportTWHeader();\n case "DIV": return exportDIVHeader();\n case "XML": return exportXMLHeader();\n }\n}\n//}}}\n// //===\n\n// // +++[exportFooter(format)]\n//{{{\nfunction exportFooter(format)\n{\n switch (format) {\n case "TW": return exportDIVFooter();\n case "DIV": return exportDIVFooter();\n case "XML": return exportXMLFooter();\n }\n}\n//}}}\n// //===\n\n// // +++[exportTWHeader()]\n//{{{\nfunction exportTWHeader()\n{\n // Get the URL of the document\n var originalPath = document.location.toString();\n // Check we were loaded from a file URL\n if(originalPath.substr(0,5) != "file:")\n { alert(config.messages.notFileUrlError); return; }\n // Remove any location part of the URL\n var hashPos = originalPath.indexOf("#"); if(hashPos != -1) originalPath = originalPath.substr(0,hashPos);\n // Convert to a native file format assuming\n // "file:///x:/path/path/path..." - pc local file --> "x:\spath\spath\spath..."\n // "file://///server/share/path/path/path..." - FireFox pc network file --> "\s\sserver\sshare\spath\spath\spath..."\n // "file:///path/path/path..." - mac/unix local file --> "/path/path/path..."\n // "file://server/share/path/path/path..." - pc network file --> "\s\sserver\sshare\spath\spath\spath..."\n var localPath;\n if(originalPath.charAt(9) == ":") // pc local file\n localPath = unescape(originalPath.substr(8)).replace(new RegExp("/","g"),"\s\s");\n else if(originalPath.indexOf("file://///") == 0) // FireFox pc network file\n localPath = "\s\s\s\s" + unescape(originalPath.substr(10)).replace(new RegExp("/","g"),"\s\s");\n else if(originalPath.indexOf("file:///") == 0) // mac/unix local file\n localPath = unescape(originalPath.substr(7));\n else if(originalPath.indexOf("file:/") == 0) // mac/unix local file\n localPath = unescape(originalPath.substr(5));\n else // pc network file\n localPath = "\s\s\s\s" + unescape(originalPath.substr(7)).replace(new RegExp("/","g"),"\s\s");\n // Load the original file\n var original = loadFile(localPath);\n if(original == null)\n { alert(config.messages.cantSaveError); return; }\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 { alert(config.messages.invalidFileError.format([localPath])); return; }\n return original.substr(0,posOpeningDiv+startSaveArea.length)\n}\n//}}}\n// //===\n\n// // +++[exportDIVHeader()]\n//{{{\nfunction exportDIVHeader()\n{\n var out=[];\n var now = new Date();\n var u = store.getTiddlerText("SiteUrl",null);\n var title = wikifyPlain("SiteTitle").htmlEncode();\n var subtitle = wikifyPlain("SiteSubtitle").htmlEncode();\n var user = config.options.txtUserName.htmlEncode();\n var twver = version.major+"."+version.minor+"."+version.revision;\n var pver = version.extensions.exportTiddlers.major+"."\n +version.extensions.exportTiddlers.minor+"."+version.extensions.exportTiddlers.revision;\n out.push("<html><body>");\n out.push("<style type=\s"text/css\s">");\n out.push("#storeArea {display:block;margin:1em;}");\n out.push("#storeArea div");\n out.push("{padding:0.5em;margin:1em;border:2px solid black;height:10em;overflow:auto;}");\n out.push("#javascriptWarning");\n out.push("{width:100%;text-align:left;background-color:#eeeeee;padding:1em;}");\n out.push("</style>");\n out.push("<div id=\s"javascriptWarning\s">");\n out.push("TiddlyWiki export file<br>");\n out.push("Source: <b>"+document.location+"</b><br>");\n out.push("Title: <b>"+title+"</b><br>");\n out.push("Subtitle: <b>"+subtitle+"</b><br>");\n out.push("Created: <b>"+now.toLocaleString()+"</b> by <b>"+user+"</b><br>");\n out.push("TiddlyWiki "+twver+" / "+"ExportTiddlersPlugin "+pver+"<br>");\n out.push("</div>");\n out.push("<div id=\s"storeArea\s">");\n return out;\n}\n//}}}\n// //===\n\n// // +++[exportDIVFooter()]\n//{{{\nfunction exportDIVFooter()\n{\n var out=[];\n out.push("</div></body></html>");\n return out;\n}\n//}}}\n// //===\n\n// // +++[exportXMLHeader()]\n//{{{\nfunction exportXMLHeader()\n{\n var out=[];\n var now = new Date();\n var u = store.getTiddlerText("SiteUrl",null);\n var title = wikifyPlain("SiteTitle").htmlEncode();\n var subtitle = wikifyPlain("SiteSubtitle").htmlEncode();\n var user = config.options.txtUserName.htmlEncode();\n var twver = version.major+"."+version.minor+"."+version.revision;\n var pver = version.extensions.exportTiddlers.major+"."\n +version.extensions.exportTiddlers.minor+"."+version.extensions.exportTiddlers.revision;\n out.push("<" + "?xml version=\s"1.0\s"?" + ">");\n out.push("<rss version=\s"2.0\s">");\n out.push("<channel>");\n out.push("<title>" + title + "</title>");\n if(u) out.push("<link>" + u.htmlEncode() + "</link>");\n out.push("<description>" + subtitle + "</description>");\n out.push("<language>en-us</language>");\n out.push("<copyright>Copyright " + now.getFullYear() + " " + user + "</copyright>");\n out.push("<pubDate>" + now.toGMTString() + "</pubDate>");\n out.push("<lastBuildDate>" + now.toGMTString() + "</lastBuildDate>");\n out.push("<docs>http://blogs.law.harvard.edu/tech/rss</docs>");\n out.push("<generator>TiddlyWiki "+twver+" plus ExportTiddlersPlugin "+pver+"</generator>");\n return out;\n}\n//}}}\n// //===\n\n// // +++[exportXMLFooter()]\n//{{{\nfunction exportXMLFooter()\n{\n var out=[];\n out.push("</channel></rss>");\n return out;\n}\n//}}}\n// //===\n\n// // +++[exportData()]\n//{{{\nfunction exportData(theList,theFormat)\n{\n // scan export listbox and collect DIVs or XML for selected tiddler content\n var out=[];\n for (var i=0; i<theList.options.length; i++) {\n // get item, skip non-selected items and section headings\n var opt=theList.options[i]; if (!opt.selected||(opt.value=="")) continue;\n // get tiddler, skip missing tiddlers (this should NOT happen)\n var thisTiddler=store.getTiddler(opt.value); if (!thisTiddler) continue; \n if (theFormat=="TW") out.push(thisTiddler.saveToDiv());\n if (theFormat=="DIV") out.push(thisTiddler.title+"\sn"+thisTiddler.saveToDiv());\n if (theFormat=="XML") out.push(thisTiddler.saveToRss());\n }\n return out;\n}\n//}}}\n// //===\n// //===\n\n// // +++[exportTiddlers(): output selected data to local or server]\n//{{{\nfunction exportTiddlers()\n{\n var theList = document.getElementById("exportList"); if (!theList) return;\n\n // get the export settings\n var theProtocol = document.getElementById("exportTo").value;\n var theFormat = document.getElementById("exportFormat").value;\n\n // assemble output: header + tiddlers + footer\n var theData=exportData(theList,theFormat);\n var count=theData.length;\n var out=[]; var txt=out.concat(exportHeader(theFormat),theData,exportFooter(theFormat)).join("\sn");\n var msg="";\n switch (theProtocol) {\n case "file:":\n var theTarget = document.getElementById("exportFilename").value.trim();\n if (!theTarget.length) msg = "A local path/filename is required\sn";\n if (!msg && saveFile(theTarget,txt))\n msg=count+" tiddler"+((count!=1)?"s":"")+" exported to local file";\n else if (!msg)\n msg+="An error occurred while saving to "+theTarget;\n break;\n case "http:":\n case "https:":\n var theTarget = document.getElementById("exportHTTPServerURL").value.trim();\n if (!theTarget.length) msg = "A server URL is required\sn";\n if (!msg && exportPost(theTarget+encodeURIComponent(txt)))\n msg=count+" tiddler"+((count!=1)?"s":"")+" exported to "+theProtocol+" server";\n else if (!msg)\n msg+="An error occurred while saving to "+theTarget;\n break;\n case "ftp:":\n default:\n msg="Sorry, export to "+theLocation+" is not yet available";\n break;\n }\n clearMessage(); displayMessage(msg,theTarget);\n}\n//}}}\n// //===\n\n// // +++[exportPost(url): cross-domain post] uses hidden iframe to submit url and capture responses\n//{{{\nfunction exportPost(url)\n{\n var f=document.getElementById("exportFrame"); if (f) document.body.removeChild(f);\n f=document.createElement("iframe"); f.id="exportFrame";\n f.style.width="0px"; f.style.height="0px"; f.style.border="0px";\n document.body.appendChild(f);\n var d=f.document;\n if (f.contentDocument) d=f.contentDocument; // For NS6\n else if (f.contentWindow) d=f.contentWindow.document; // For IE5.5 and IE6\n d.location.replace(url);\n return true;\n}\n//}}}\n// //===\n
<<tiddler RecDetail \n with: \n 1969\n [[Tyrannosaurus Rex]] \n [[Tony Visconti]]\n " "\n "a-side [[By The Light Of The Magical Moon]]"\n Band2\n " "\n>>\n\n+++[Lyric]\nFind a little wood\nAnd have a little sleep, sleep there\nFind a little wood\nAnd have a little sleep, sleep there\nFind a little wood\nAnd have a little sleep, sleep there\nLike the sun and the sea\nYou'll soon wash away all cares\nFind a little stream\nAnd have a little dream, dream there\nFind a little stream\nAnd have a little dream, dream there\nFind a little stream\nAnd have a little dream, dream there\nLike the windy moon\nYou'll soon shed all your cares\nOh love is like a beautiful girl who smiles for you\nFind a little wood\nAnd have a little sleep, sleep there\nFind a little wood\nAnd have a little sleep, sleep there\nFind a little wood\nAnd have a little sleep, sleep there\nLike the windy moon\nYou'll soon shed all your cares\nOh love is like a beautiful girl who smiles for you\n===
Fist Heart Mighty Dawn Dart \nIn some way our slain our yours \n\nStone eyes drill for wealth lies \nIn some way our fate is one\n\nFunny how the day comes slow \nFunny how the day comes so\n\nFist Heart Mighty Dawn Dart \nAt a glance our dance is one \n\nSun Liege by your star trees \nCould you please heart cleanse our shores
/***\n|''Name:''|ForEachTiddlerPlugin|\n|''Version:''|1.0.5 (2006-02-05)|\n|''Source:''|http://tiddlywiki.abego-software.de/#ForEachTiddlerPlugin|\n|''Author:''|UdoBorkowski (ub [at] abego-software [dot] de)|\n|''Licence:''|[[BSD open source license]]|\n|''Macros:''|[[ForEachTiddlerMacro]] v1.0.5|\n|''TiddlyWiki:''|1.2.38+, 2.0|\n|''Browser:''|Firefox 1.0.4+; Firefox 1.5; InternetExplorer 6.0|\n!Description\n\nCreate customizable lists, tables etc. for your selections of tiddlers. Specify the tiddlers to include and their order through a powerful language.\n\n''Syntax:'' \n|>|{{{<<}}}''forEachTiddler'' [''in'' //tiddlyWikiPath//] [''where'' //whereCondition//] [''sortBy'' //sortExpression// [''ascending'' //or// ''descending'']] [''script'' //scriptText//] [//action// [//actionParameters//]]{{{>>}}}|\n|//tiddlyWikiPath//|The filepath to the TiddlyWiki the macro should work on. When missing the current TiddlyWiki is used.|\n|//whereCondition//|(quoted) JavaScript boolean expression. May refer to the build-in variables {{{tiddler}}} and {{{context}}}.|\n|//sortExpression//|(quoted) JavaScript expression returning "comparable" objects (using '{{{<}}}','{{{>}}}','{{{==}}}'. May refer to the build-in variables {{{tiddler}}} and {{{context}}}.|\n|//scriptText//|(quoted) JavaScript text. Typically defines JavaScript functions that are called by the various JavaScript expressions (whereClause, sortClause, action arguments,...)|\n|//action//|The action that should be performed on every selected tiddler, in the given order. By default the actions [[addToList|AddToListAction]] and [[write|WriteAction]] are supported. When no action is specified [[addToList|AddToListAction]] is used.|\n|//actionParameters//|(action specific) parameters the action may refer while processing the tiddlers (see action descriptions for details). <<tiddler [[JavaScript in actionParameters]]>>|\n|>|~~Syntax formatting: Keywords in ''bold'', optional parts in [...]. 'or' means that exactly one of the two alternatives must exist.~~|\n\nSee details see [[ForEachTiddlerMacro]] and [[ForEachTiddlerExamples]].\n\n!Revision history\n* v1.0.5\n** Pass tiddler containing the macro with wikify, context object also holds reference to tiddler containing the macro ("inTiddler"). Thanks to SimonBaird.\n** Support Firefox 1.5.0.1\n** Internal\n*** Make "JSLint" conform\n*** "Only install once"\n* v1.0.4 (2006-01-06)\n** Support TiddlyWiki 2.0\n* v1.0.3 (2005-12-22)\n** Features: \n*** Write output to a file supports multi-byte environments (Thanks to Bram Chen) \n*** Provide API to access the forEachTiddler functionality directly through JavaScript (see getTiddlers and performMacro)\n** Enhancements:\n*** Improved error messages on InternetExplorer.\n* v1.0.2 (2005-12-10)\n** Features: \n*** context object also holds reference to store (TiddlyWiki)\n** Fixed Bugs: \n*** ForEachTiddler 1.0.1 has broken support on win32 Opera 8.51 (Thanks to BrunoSabin for reporting)\n* v1.0.1 (2005-12-08)\n** Features: \n*** Access tiddlers stored in separated TiddlyWikis through the "in" option. I.e. you are no longer limited to only work on the "current TiddlyWiki".\n*** Write output to an external file using the "toFile" option of the "write" action. With this option you may write your customized tiddler exports.\n*** Use the "script" section to define "helper" JavaScript functions etc. to be used in the various JavaScript expressions (whereClause, sortClause, action arguments,...).\n*** Access and store context information for the current forEachTiddler invocation (through the build-in "context" object) .\n*** Improved script evaluation (for where/sort clause and write scripts).\n* v1.0.0 (2005-11-20)\n** initial version\n\n!Code\n***/\n//{{{\n\n \n//============================================================================\n//============================================================================\n// ForEachTiddlerPlugin\n//============================================================================\n//============================================================================\n\n// Only install once\nif (!version.extensions.ForEachTiddlerPlugin) {\n\nversion.extensions.ForEachTiddlerPlugin = {major: 1, minor: 0, revision: 5, date: new Date(2006,2,5), source: "http://tiddlywiki.abego-software.de/#ForEachTiddlergPlugin"};\n\n// For backward compatibility with TW 1.2.x\n//\nif (!TiddlyWiki.prototype.forEachTiddler) {\n TiddlyWiki.prototype.forEachTiddler = function(callback) {\n for(var t in this.tiddlers) {\n callback.call(this,t,this.tiddlers[t]);\n }\n };\n}\n\n//============================================================================\n// forEachTiddler Macro\n//============================================================================\n\nversion.extensions.forEachTiddler = {major: 1, minor: 0, revision: 5, date: new Date(2006,2,5), provider: "http://tiddlywiki.abego-software.de"};\n\n// ---------------------------------------------------------------------------\n// Configurations and constants \n// ---------------------------------------------------------------------------\n\nconfig.macros.forEachTiddler = {\n // Standard Properties\n label: "forEachTiddler",\n prompt: "Perform actions on a (sorted) selection of tiddlers",\n\n // actions\n actions: {\n addToList: {},\n write: {}\n }\n};\n\n// ---------------------------------------------------------------------------\n// The forEachTiddler Macro Handler \n// ---------------------------------------------------------------------------\n\nconfig.macros.forEachTiddler.getContainingTiddler = function(e) {\n while(e && !hasClass(e,"tiddler"))\n e = e.parentNode;\n var title = e ? e.getAttribute("tiddler") : null; \n return title ? store.getTiddler(title) : null;\n};\n\nconfig.macros.forEachTiddler.handler = function(place,macroName,params,wikifier,paramString,tiddler) {\n // config.macros.forEachTiddler.traceMacroCall(place,macroName,params,wikifier,paramString,tiddler);\n\n if (!tiddler) tiddler = config.macros.forEachTiddler.getContainingTiddler(place);\n // --- Parsing ------------------------------------------\n\n var i = 0; // index running over the params\n // Parse the "in" clause\n var tiddlyWikiPath = undefined;\n if ((i < params.length) && params[i] == "in") {\n i++;\n if (i >= params.length) {\n this.handleError(place, "TiddlyWiki path expected behind 'in'.");\n return;\n }\n tiddlyWikiPath = this.paramEncode((i < params.length) ? params[i] : "");\n i++;\n }\n\n // Parse the where clause\n var whereClause ="true";\n if ((i < params.length) && params[i] == "where") {\n i++;\n whereClause = this.paramEncode((i < params.length) ? params[i] : "");\n i++;\n }\n\n // Parse the sort stuff\n var sortClause = null;\n var sortAscending = true; \n if ((i < params.length) && params[i] == "sortBy") {\n i++;\n if (i >= params.length) {\n this.handleError(place, "sortClause missing behind 'sortBy'.");\n return;\n }\n sortClause = this.paramEncode(params[i]);\n i++;\n\n if ((i < params.length) && (params[i] == "ascending" || params[i] == "descending")) {\n sortAscending = params[i] == "ascending";\n i++;\n }\n }\n\n // Parse the script\n var scriptText = null;\n if ((i < params.length) && params[i] == "script") {\n i++;\n scriptText = this.paramEncode((i < params.length) ? params[i] : "");\n i++;\n }\n\n // Parse the action. \n // When we are already at the end use the default action\n var actionName = "addToList";\n if (i < params.length) {\n if (!config.macros.forEachTiddler.actions[params[i]]) {\n this.handleError(place, "Unknown action '"+params[i]+"'.");\n return;\n } else {\n actionName = params[i]; \n i++;\n }\n } \n \n // Get the action parameter\n // (the parsing is done inside the individual action implementation.)\n var actionParameter = params.slice(i);\n\n\n // --- Processing ------------------------------------------\n try {\n this.performMacro({\n place: place, \n inTiddler: tiddler,\n whereClause: whereClause, \n sortClause: sortClause, \n sortAscending: sortAscending, \n actionName: actionName, \n actionParameter: actionParameter, \n scriptText: scriptText, \n tiddlyWikiPath: tiddlyWikiPath});\n\n } catch (e) {\n this.handleError(place, e);\n }\n};\n\n// Returns an object with properties "tiddlers" and "context".\n// tiddlers holds the (sorted) tiddlers selected by the parameter,\n// context the context of the execution of the macro.\n//\n// The action is not yet performed.\n//\n// @parameter see performMacro\n//\nconfig.macros.forEachTiddler.getTiddlersAndContext = function(parameter) {\n\n var context = config.macros.forEachTiddler.createContext(parameter.place, parameter.whereClause, parameter.sortClause, parameter.sortAscending, parameter.actionName, parameter.actionParameter, parameter.scriptText, parameter.tiddlyWikiPath, parameter.inTiddler);\n\n var tiddlyWiki = parameter.tiddlyWikiPath ? this.loadTiddlyWiki(parameter.tiddlyWikiPath) : store;\n context["tiddlyWiki"] = tiddlyWiki;\n \n // Get the tiddlers, as defined by the whereClause\n var tiddlers = this.findTiddlers(parameter.whereClause, context, tiddlyWiki);\n context["tiddlers"] = tiddlers;\n\n // Sort the tiddlers, when sorting is required.\n if (parameter.sortClause) {\n this.sortTiddlers(tiddlers, parameter.sortClause, parameter.sortAscending, context);\n }\n\n return {tiddlers: tiddlers, context: context};\n};\n\n// Returns the (sorted) tiddlers selected by the parameter.\n//\n// The action is not yet performed.\n//\n// @parameter see performMacro\n//\nconfig.macros.forEachTiddler.getTiddlers = function(parameter) {\n return this.getTiddlersAndContext(parameter).tiddlers;\n};\n\n// Performs the macros with the given parameter.\n//\n// @param parameter holds the parameter of the macro as separate properties.\n// The following properties are supported:\n//\n// place\n// whereClause\n// sortClause\n// sortAscending\n// actionName\n// actionParameter\n// scriptText\n// tiddlyWikiPath\n//\n// All properties are optional. \n// For most actions the place property must be defined.\n//\nconfig.macros.forEachTiddler.performMacro = function(parameter) {\n var tiddlersAndContext = this.getTiddlersAndContext(parameter);\n\n // Perform the action\n var actionName = parameter.actionName ? parameter.actionName : "addToList";\n var action = config.macros.forEachTiddler.actions[actionName];\n if (!action) {\n this.handleError(parameter.place, "Unknown action '"+actionName+"'.");\n return;\n }\n\n var actionHandler = action.handler;\n actionHandler(parameter.place, tiddlersAndContext.tiddlers, parameter.actionParameter, tiddlersAndContext.context);\n};\n\n// ---------------------------------------------------------------------------\n// The actions \n// ---------------------------------------------------------------------------\n\n// Internal.\n//\n// --- The addToList Action -----------------------------------------------\n//\nconfig.macros.forEachTiddler.actions.addToList.handler = function(place, tiddlers, parameter, context) {\n // Parse the parameter\n var p = 0;\n\n // Check for extra parameters\n if (parameter.length > p) {\n config.macros.forEachTiddler.createExtraParameterErrorElement(place, "addToList", parameter, p);\n return;\n }\n\n // Perform the action.\n var list = document.createElement("ul");\n place.appendChild(list);\n for (var i = 0; i < tiddlers.length; i++) {\n var tiddler = tiddlers[i];\n var listItem = document.createElement("li");\n list.appendChild(listItem);\n createTiddlyLink(listItem, tiddler.title, true);\n }\n};\n\n// Internal.\n//\n// --- The write Action ---------------------------------------------------\n//\nconfig.macros.forEachTiddler.actions.write.handler = function(place, tiddlers, parameter, context) {\n // Parse the parameter\n var p = 0;\n if (p >= parameter.length) {\n this.handleError(place, "Missing expression behind 'write'.");\n return;\n }\n\n var textExpression = config.macros.forEachTiddler.paramEncode(parameter[p]);\n p++;\n\n // Parse the "toFile" option\n var filename = null;\n var lineSeparator = undefined;\n if ((p < parameter.length) && parameter[p] == "toFile") {\n p++;\n if (p >= parameter.length) {\n this.handleError(place, "Filename expected behind 'toFile' of 'write' action.");\n return;\n }\n \n filename = config.macros.forEachTiddler.getLocalPath(config.macros.forEachTiddler.paramEncode(parameter[p]));\n p++;\n if ((p < parameter.length) && parameter[p] == "withLineSeparator") {\n p++;\n if (p >= parameter.length) {\n this.handleError(place, "Line separator text expected behind 'withLineSeparator' of 'write' action.");\n return;\n }\n lineSeparator = config.macros.forEachTiddler.paramEncode(parameter[p]);\n p++;\n }\n }\n \n // Check for extra parameters\n if (parameter.length > p) {\n config.macros.forEachTiddler.createExtraParameterErrorElement(place, "write", parameter, p);\n return;\n }\n\n // Perform the action.\n var func = config.macros.forEachTiddler.getEvalTiddlerFunction(textExpression, context);\n var count = tiddlers.length;\n var text = "";\n for (var i = 0; i < count; i++) {\n var tiddler = tiddlers[i];\n text += func(tiddler, context, count, i);\n }\n \n if (filename) {\n if (lineSeparator !== undefined) {\n lineSeparator = lineSeparator.replace(/\s\sn/mg, "\sn").replace(/\s\sr/mg, "\sr");\n text = text.replace(/\sn/mg,lineSeparator);\n }\n saveFile(filename, convertUnicodeToUTF8(text));\n } else {\n var wrapper = createTiddlyElement(place, "span");\n wikify(text, wrapper, null/* highlightRegExp */, context.inTiddler);\n }\n};\n\n\n// ---------------------------------------------------------------------------\n// Helpers\n// ---------------------------------------------------------------------------\n\n// Internal.\n//\nconfig.macros.forEachTiddler.createContext = function(placeParam, whereClauseParam, sortClauseParam, sortAscendingParam, actionNameParam, actionParameterParam, scriptText, tiddlyWikiPathParam, inTiddlerParam) {\n return {\n place : placeParam, \n whereClause : whereClauseParam, \n sortClause : sortClauseParam, \n sortAscending : sortAscendingParam, \n script : scriptText,\n actionName : actionNameParam, \n actionParameter : actionParameterParam,\n tiddlyWikiPath : tiddlyWikiPathParam,\n inTiddler : inTiddlerParam\n };\n};\n\n// Internal.\n//\n// Returns a TiddlyWiki with the tiddlers loaded from the TiddlyWiki of \n// the given path.\n//\nconfig.macros.forEachTiddler.loadTiddlyWiki = function(path, idPrefix) {\n if (!idPrefix) {\n idPrefix = "store";\n }\n var lenPrefix = idPrefix.length;\n \n // Read the content of the given file\n var content = loadFile(this.getLocalPath(path));\n if(content === null) {\n throw "TiddlyWiki '"+path+"' not found.";\n }\n \n // Locate the storeArea div's\n var posOpeningDiv = content.indexOf(startSaveArea);\n var posClosingDiv = content.lastIndexOf(endSaveArea);\n if((posOpeningDiv == -1) || (posClosingDiv == -1)) {\n throw "File '"+path+"' is not a TiddlyWiki.";\n }\n var storageText = content.substr(posOpeningDiv + startSaveArea.length, posClosingDiv);\n \n // Create a "div" element that contains the storage text\n var myStorageDiv = document.createElement("div");\n myStorageDiv.innerHTML = storageText;\n myStorageDiv.normalize();\n \n // Create all tiddlers in a new TiddlyWiki\n // (following code is modified copy of TiddlyWiki.prototype.loadFromDiv)\n var tiddlyWiki = new TiddlyWiki();\n var store = myStorageDiv.childNodes;\n for(var t = 0; t < store.length; t++) {\n var e = store[t];\n var title = null;\n if(e.getAttribute)\n title = e.getAttribute("tiddler");\n if(!title && e.id && e.id.substr(0,lenPrefix) == idPrefix)\n title = e.id.substr(lenPrefix);\n if(title && title !== "") {\n var tiddler = tiddlyWiki.createTiddler(title);\n tiddler.loadFromDiv(e,title);\n }\n }\n tiddlyWiki.dirty = false;\n\n return tiddlyWiki;\n};\n\n\n \n// Internal.\n//\n// Returns a function that has a function body returning the given javaScriptExpression.\n// The function has the parameters:\n// \n// (tiddler, context, count, index)\n//\nconfig.macros.forEachTiddler.getEvalTiddlerFunction = function (javaScriptExpression, context) {\n var script = context["script"];\n var functionText = "var theFunction = function(tiddler, context, count, index) { return "+javaScriptExpression+"}";\n var fullText = (script ? script+";" : "")+functionText+";theFunction;";\n return eval(fullText);\n};\n\n// Internal.\n//\nconfig.macros.forEachTiddler.findTiddlers = function(whereClause, context, tiddlyWiki) {\n var result = [];\n var func = config.macros.forEachTiddler.getEvalTiddlerFunction(whereClause, context);\n tiddlyWiki.forEachTiddler(function(title,tiddler) {\n if (func(tiddler, context, undefined, undefined)) {\n result.push(tiddler);\n }\n });\n return result;\n};\n\n// Internal.\n//\nconfig.macros.forEachTiddler.createExtraParameterErrorElement = function(place, actionName, parameter, firstUnusedIndex) {\n var message = "Extra parameter behind '"+actionName+"':";\n for (var i = firstUnusedIndex; i < parameter.length; i++) {\n message += " "+parameter[i];\n }\n this.handleError(place, message);\n};\n\n// Internal.\n//\nconfig.macros.forEachTiddler.sortAscending = function(tiddlerA, tiddlerB) {\n var result = \n (tiddlerA.forEachTiddlerSortValue == tiddlerB.forEachTiddlerSortValue) \n ? 0\n : (tiddlerA.forEachTiddlerSortValue < tiddlerB.forEachTiddlerSortValue)\n ? -1 \n : +1; \n return result;\n};\n\n// Internal.\n//\nconfig.macros.forEachTiddler.sortDescending = function(tiddlerA, tiddlerB) {\n var result = \n (tiddlerA.forEachTiddlerSortValue == tiddlerB.forEachTiddlerSortValue) \n ? 0\n : (tiddlerA.forEachTiddlerSortValue < tiddlerB.forEachTiddlerSortValue)\n ? +1 \n : -1; \n return result;\n};\n\n// Internal.\n//\nconfig.macros.forEachTiddler.sortTiddlers = function(tiddlers, sortClause, ascending, context) {\n // To avoid evaluating the sortClause whenever two items are compared \n // we pre-calculate the sortValue for every item in the array and store it in a \n // temporary property ("forEachTiddlerSortValue") of the tiddlers.\n var func = config.macros.forEachTiddler.getEvalTiddlerFunction(sortClause, context);\n var count = tiddlers.length;\n var i;\n for (i = 0; i < count; i++) {\n var tiddler = tiddlers[i];\n tiddler.forEachTiddlerSortValue = func(tiddler,context, undefined, undefined);\n }\n\n // Do the sorting\n tiddlers.sort(ascending ? this.sortAscending : this.sortDescending);\n\n // Delete the temporary property that holds the sortValue. \n for (i = 0; i < tiddlers.length; i++) {\n delete tiddlers[i].forEachTiddlerSortValue;\n }\n};\n\n\n// Internal.\n//\nconfig.macros.forEachTiddler.trace = function(message) {\n displayMessage(message);\n};\n\n// Internal.\n//\nconfig.macros.forEachTiddler.traceMacroCall = function(place,macroName,params) {\n var message ="<<"+macroName;\n for (var i = 0; i < params.length; i++) {\n message += " "+params[i];\n }\n message += ">>";\n displayMessage(message);\n};\n\n\n// Internal.\n//\n// Creates an element that holds an error message\n// \nconfig.macros.forEachTiddler.createErrorElement = function(place, exception) {\n var message = (exception.description) ? exception.description : exception.toString();\n return createTiddlyElement(place,"span",null,"forEachTiddlerError","<<forEachTiddler ...>>: "+message);\n};\n\n// Internal.\n//\n// @param place [may be null]\n//\nconfig.macros.forEachTiddler.handleError = function(place, exception) {\n if (place) {\n this.createErrorElement(place, exception);\n } else {\n throw exception;\n }\n};\n\n// Internal.\n//\n// Encodes the given string.\n//\n// Replaces \n// "$))" to ">>"\n// "$)" to ">"\n//\nconfig.macros.forEachTiddler.paramEncode = function(s) {\n var reGTGT = new RegExp("\s\s$\s\s)\s\s)","mg");\n var reGT = new RegExp("\s\s$\s\s)","mg");\n return s.replace(reGTGT, ">>").replace(reGT, ">");\n};\n\n// Internal.\n//\n// Returns the given original path (that is a file path, starting with "file:")\n// as a path to a local file, in the systems native file format.\n//\n// Location information in the originalPath (i.e. the "#" and stuff following)\n// is stripped.\n// \nconfig.macros.forEachTiddler.getLocalPath = function(originalPath) {\n // Remove any location part of the URL\n var hashPos = originalPath.indexOf("#");\n if(hashPos != -1)\n originalPath = originalPath.substr(0,hashPos);\n // Convert to a native file format assuming\n // "file:///x:/path/path/path..." - pc local file --> "x:\spath\spath\spath..."\n // "file://///server/share/path/path/path..." - FireFox pc network file --> "\s\sserver\sshare\spath\spath\spath..."\n // "file:///path/path/path..." - mac/unix local file --> "/path/path/path..."\n // "file://server/share/path/path/path..." - pc network file --> "\s\sserver\sshare\spath\spath\spath..."\n var localPath;\n if(originalPath.charAt(9) == ":") // pc local file\n localPath = unescape(originalPath.substr(8)).replace(new RegExp("/","g"),"\s\s");\n else if(originalPath.indexOf("file://///") === 0) // FireFox pc network file\n localPath = "\s\s\s\s" + unescape(originalPath.substr(10)).replace(new RegExp("/","g"),"\s\s");\n else if(originalPath.indexOf("file:///") === 0) // mac/unix local file\n localPath = unescape(originalPath.substr(7));\n else if(originalPath.indexOf("file:/") === 0) // mac/unix local file\n localPath = unescape(originalPath.substr(5));\n else // pc network file\n localPath = "\s\s\s\s" + unescape(originalPath.substr(7)).replace(new RegExp("/","g"),"\s\s"); \n return localPath;\n};\n\n// ---------------------------------------------------------------------------\n// Stylesheet Extensions (may be overridden by local StyleSheet)\n// ---------------------------------------------------------------------------\n//\nsetStylesheet(\n ".forEachTiddlerError{color: #ffffff;background-color: #880000;}",\n "forEachTiddler");\n\n//============================================================================\n// End of forEachTiddler Macro\n//============================================================================\n\n\n//============================================================================\n// String.startsWith Function\n//============================================================================\n//\n// Returns true if the string starts with the given prefix, false otherwise.\n//\nversion.extensions["String.startsWith"] = {major: 1, minor: 0, revision: 0, date: new Date(2005,11,20), provider: "http://tiddlywiki.abego-software.de"};\n//\nString.prototype.startsWith = function(prefix) {\n var n = prefix.length;\n return (this.length >= n) && (this.slice(0, n) == prefix);\n};\n\n\n\n//============================================================================\n// String.endsWith Function\n//============================================================================\n//\n// Returns true if the string ends with the given suffix, false otherwise.\n//\nversion.extensions["String.endsWith"] = {major: 1, minor: 0, revision: 0, date: new Date(2005,11,20), provider: "http://tiddlywiki.abego-software.de"};\n//\nString.prototype.endsWith = function(suffix) {\n var n = suffix.length;\n return (this.length >= n) && (this.right(n) == suffix);\n};\n\n\n//============================================================================\n// String.contains Function\n//============================================================================\n//\n// Returns true when the string contains the given substring, false otherwise.\n//\nversion.extensions["String.contains"] = {major: 1, minor: 0, revision: 0, date: new Date(2005,11,20), provider: "http://tiddlywiki.abego-software.de"};\n//\nString.prototype.contains = function(substring) {\n return this.indexOf(substring) >= 0;\n};\n\n//============================================================================\n// Array.indexOf Function\n//============================================================================\n//\n// Returns the index of the first occurance of the given item in the array or \n// -1 when no such item exists.\n//\n// @param item [may be null]\n//\nversion.extensions["Array.indexOf"] = {major: 1, minor: 0, revision: 0, date: new Date(2005,11,20), provider: "http://tiddlywiki.abego-software.de"};\n//\nArray.prototype.indexOf = function(item) {\n for (var i = 0; i < this.length; i++) {\n if (this[i] == item) {\n return i;\n }\n }\n return -1;\n};\n\n//============================================================================\n// Array.contains Function\n//============================================================================\n//\n// Returns true when the array contains the given item, otherwise false. \n//\n// @param item [may be null]\n//\nversion.extensions["Array.contains"] = {major: 1, minor: 0, revision: 0, date: new Date(2005,11,20), provider: "http://tiddlywiki.abego-software.de"};\n//\nArray.prototype.contains = function(item) {\n return (this.indexOf(item) >= 0);\n};\n\n//============================================================================\n// Array.containsAny Function\n//============================================================================\n//\n// Returns true when the array contains at least one of the elements \n// of the item. Otherwise (or when items contains no elements) false is returned.\n//\nversion.extensions["Array.containsAny"] = {major: 1, minor: 0, revision: 0, date: new Date(2005,11,20), provider: "http://tiddlywiki.abego-software.de"};\n//\nArray.prototype.containsAny = function(items) {\n for(var i = 0; i < items.length; i++) {\n if (this.contains(items[i])) {\n return true;\n }\n }\n return false;\n};\n\n\n//============================================================================\n// Array.containsAll Function\n//============================================================================\n//\n// Returns true when the array contains all the items, otherwise false.\n// \n// When items is null false is returned (even if the array contains a null).\n//\n// @param items [may be null] \n//\nversion.extensions["Array.containsAll"] = {major: 1, minor: 0, revision: 0, date: new Date(2005,11,20), provider: "http://tiddlywiki.abego-software.de"};\n//\nArray.prototype.containsAll = function(items) {\n for(var i = 0; i < items.length; i++) {\n if (!this.contains(items[i])) {\n return false;\n }\n }\n return true;\n};\n\n\n} // of "install only once"\n\n// Used Globals (for JSLint) ==============\n// ... DOM\n/*global document */\n// ... TiddlyWiki Core\n/*global convertUnicodeToUTF8, createTiddlyElement, createTiddlyLink, \n displayMessage, endSaveArea, hasClass, loadFile, saveFile, \n startSaveArea, store, wikify */\n//}}}\n\n\n/***\n!Licence and Copyright\nCopyright (c) abego Software ~GmbH, 2005 ([[www.abego-software.de|http://www.abego-software.de]])\n\nRedistribution and use in source and binary forms, with or without modification,\nare permitted provided that the following conditions are met:\n\nRedistributions of source code must retain the above copyright notice, this\nlist of conditions and the following disclaimer.\n\nRedistributions in binary form must reproduce the above copyright notice, this\nlist of conditions and the following disclaimer in the documentation and/or other\nmaterials provided with the distribution.\n\nNeither the name of abego Software nor the names of its contributors may be\nused to endorse or promote products derived from this software without specific\nprior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY\nEXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES\nOF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT\nSHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,\nINCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED\nTO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR\nBUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\nCONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN\nANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH\nDAMAGE.\n***/\n\n
Girl won't you move close to me.\nTake me in your arms and groove me.\nGirl don't you ever miss a date,\nWith your Foxy Boy.\n\nGirl won't you move close to me.\nTake me in your arms and groove me.\nGirl don't you ever miss a date,\nWith your Foxy Boy.\n\nThe nights are long\nAnd my love grows strong.\nAs I work all day,\nI dream a song.\nWith words of love,\nYou captured my soul.\nAs we reached the hook,\nMy heart you stole.\n\nGirl won't you move close to me.\nTake me in your arms and groove me.\nGirl don't you ever miss a date,\nWith your Foxy Boy.\n\nGirl won't you move close to me.\nTake me in your arms and groove me.\nGirl don't you ever miss a date,\nWith your Foxy Boy.\n\nWith each dawn men are history born.\nA summer romance, a winter storm.\nMy disco love that was destined to be.\nYou kissed me hard, my soulless sea.\n\nGirl won't you move close to me.\nTake me in your arms and groove me.\nGirl don't you ever miss a date,\nWith your Foxy Boy.\n\nGirl won't you move close to me.\nTake me in your arms and groove me.\nGirl don't you ever miss a date,\nWith your Foxy Boy.\n\nGirl won't you move close to me.\nTake me in your arms and groove me.\nGirl don't you ever miss a date,\nWith your Foxy Boy.
+++[Info]\na-side [[20th Century Boy]]\n===\n\nRight on\nThis song\nI'm gonna slip and slide\nThrough the motivations of your heart\nWell, I'll say it again\nI know, I got to go go\nSlip and slide through the motivations of your heart\nWell, I'll say it again\nFree Angel, we love you\nSay it again\nFree Angel, we love you\nSay it again Right on\nYeah, say it again\nRight on\nThis song\nGonna slip and slide\nThrough the motivations of your heart\nWell, I'll say it again\nFree Angel, we love you\nFree Angel, we love you
Sitting all alone, looking at the throne of the one I used to love\nSitting all alone, looking at the stone of my lovely inca love\n\nThe huntress stands, with peacock hands she'd take me to where she lie\nShe sighs so deep, it rocks the river of her stomach sky \n \nThe oval moon, it tans the faun who holds grapes for my love\nSitting all alone, sitting in the throne of my lovely inca love\n \nhare krishna\n \nI come from a time where the burning of trees was a crime, \nI lived by a sea where to be was a thing of true joy, \nMy people were fair and had sky in their hair,\nBut now they're content to wear stars on their brows.\n
/***\n|Name|FullScreenPlugin|\n|Created by|SaqImtiaz|\n|Location|http://lewcid.googlepages.com/lewcid.html#FullScreenPlugin|\n|Version|1.1|\n|Requires|~TW2.x|\n!Description:\nToggle between viewing tiddlers fullscreen and normally. Very handy for when you need more viewing space.\n\n!Demo:\nClick the โ†• button in the toolbar for this tiddler. Click it again to turn off fullscreen.\n\n!Installation:\nCopy the contents of this tiddler to your TW, tag with systemConfig, save and reload your TW.\nEdit the ViewTemplate to add the fullscreen command to the toolbar.\n\n!History:\n*25-07-06: ver 1.1\n*20-07-06: ver 1.0\n\n!Code\n***/\n//{{{\nvar lewcidFullScreen = false;\n\nconfig.commands.fullscreen =\n{\n text:" โ†• ",\n tooltip:"Fullscreen mode"\n};\n\nconfig.commands.fullscreen.handler = function (event,src,title)\n{\n if (lewcidFullScreen == false)\n {\n lewcidFullScreen = true;\n setStylesheet('#sidebar, .header, #mainMenu{display:none;} #displayArea{margin:0em 0 0 0 !important;}',"lewcidFullScreenStyle");\n }\n else\n {\n lewcidFullScreen = false;\n setStylesheet(' ',"lewcidFullScreenStyle");\n }\n}\n\nconfig.macros.fullscreen={};\nconfig.macros.fullscreen.handler = function(place,macroName,params,wikifier,paramString,tiddler)\n{\n var label = params[0]||" โ†• ";\n var tooltip = params[1]||"Fullscreen mode";\n createTiddlyButton(place,label,tooltip,config.commands.fullscreen.handler);\n}\n\nvar lewcid_fullscreen_closeTiddler = Story.prototype.closeTiddler;\nStory.prototype.closeTiddler =function(title,animate,slowly)\n{\n lewcid_fullscreen_closeTiddler.apply(this,arguments);\n if (story.isEmpty() && lewcidFullScreen == true)\n config.commands.fullscreen.handler();\n}\n\n\nSlider.prototype.lewcidStop = Slider.prototype.stop;\nSlider.prototype.stop = function()\n{\n this.lewcidStop();\n if (story.isEmpty() && lewcidFullScreen == true)\n config.commands.fullscreen.handler();\n}\n//}}}
Ancient buildings clothed in age.\nThe foggy realms of Dicken's page.\nSchool at four through knowledge door.\nYea.\n\nIt all makes up the Funky London Childhood.\nIt all makes up the Funky London Childhood,\nToday.\n\nMoving through the streams of life.\nCutting deep with your London knife.\nCity boys, now men from school.\nYea.\n\nIt all makes up the Funky London Childhood.\nIt all makes up the Funky London Childhood,\nToday.\n\nIn and out of work is bad.\nNot enough of learning makes you sad.\nThe gilded cage we call '75.\nSome is fabulous, some is jive.\n\nBut it all makes up the Funky London Childhood.\nIt all makes up the Funky London Childhood,\nToday.\n\nIt all makes up the Funky London Childhood,\nToday.\n\nRight now.
[img[http://static.flickr.com/66/217709326_b62159519c_m.jpg]]
Deep beneath an ancient shadow\nStunned with age and too much wisdom\nReclining in glass with eyes to steep\nRelentless dimensions of quadraphonic sleep\nDwelt the wild grinding cyclopean pagan\nScreaming destruction in sheer dazzling raiment\nA thunderbolt master a 'lecronic' saviour\nA gold galactic raver the Futuristic Dragon\nYes...\nAnd I do mean Yes\nAaaargh!
Which Galaxy are you from\nTell me how they bang a gong\n\nYour world I mean your world\nYour world I mean your world\n\nShadow in the alley at midnight\nMetal clad rocker with bent teeth\n\nMy world I mean my world\nMy world I mean my world\n\nMy planets like an angel with clipped wings\nA river bed dump shed sweetheart\n\nDo they have sickness in society\nDo they have glitter crap gaiety\n\nYour world I mean your world\nYour world I mean your world
Well you're dirty and sweet \nClad in black \nDon't look back \nAnd I love you \nYou're dirty and sweet oh yeah \n\nWell you're slim and you're weak \nYou got the teeth \nOf the Hydra upon you \nYou're dirty sweet \nAnd you're my girl\n \nGet It On \nBang a gong \nGet it On \n \nYou're built like a car \nYou got a hubcap \nDiamond star halo \nYou're built like a car \nOh yeah \n\nWell you're an untamed youth \nThat's the truth \nWith your cloak full of eagles \nYou're dirty sweet \nAnd you're my girl. \n\nWell you're windy and wild \nYou got the blues \nI'm your shoes and your stockings \nYou're windy and wild \nOh yeah\n \nYou're built like a car \nYou got a hubcap \nDiamond star halo \nYou're dirty sweet \nAnd you're my girl\n\nGet It On \nBang a gong \nGet It On \n\nGet It On \nBang a gong \nGet It On \nWell, meanwhile, I'm still thinking
O God \nHigh in your fields above earth \nCome and be real for us \nYou with your mind \nOh yes you are \nBeautifully fine\n\nO girl \nElectric witch you are \nLimp in society's ditch you are \nVisually fine \nOh yes you are \nBut mentally dying\n \nO boy\nJust like a boat you are \nSunk but somehow you float you do \nMentally weak \nOh yes you are \nBut so much you speak
Saturday drives and daring dudes\nWell who decides their moods\nWho is the center star\nThe dude who takes their food\nThe town is tremblin'\nThe glitter maniacs pass\nWell I can't sit still\nSo baby lets dance\n\nWith the girl in the thunderbolt suit\nGirl in the thunderbolt suit\nGirl in the thunderbolt suit\nShe's cute that girl\nGirl in the thunderbolt suit\nGirl in the thunderbolt suit\nShe's cute\nGirl in the thunderbolt suit\n\nWe just love restrictively\nMy old and lovely head\nI love you most of all\nIn the meshes in my head\nYou do me like you do\nThe wind blows only chance\nBut I can't sit still\n\nSo baby let's dance\nGirl in the thunderbolt suit\nGirl in the thunderbolt suit\nGirl in the thunderbolt suit\nShe's cute\nGirl in the thunderbolt suit
Backing vocalist with [[T.Rex]] 1974 ~ 1977 \nMarc's "wife" and mother of ''Rolan Bolan''
+++[Info]\nA Bolan song released by [[John's Children]] after Marc's departure from the band. It's actually a reworked version of [[Mustang Ford]] with different lyric.\n===\n\nMama-ma-mama, mama-ma-mama, mama-m-mama\nMama-ma-mama, mama-ma-mama, mama-m-mama\nMama my go go girl\nShe's all put together with chocolate feathers\nAnd my baby don't know just what to do\nMy baby says, "Hey, keep cool, you!"\nShe don't realize, I'm hypnotized\nshe's all put together and she gives me lots of pleasure, and\nMama-ma-mama, mama-ma-mama, mama-m-mama\nMama-ma-mama, mama-ma-mama, mama-m-mama\nMama, my go go girl\nshe's all put together with chocolate feathers\nYeah\n\nMy baby don't know where I'm hidin'\nMy baby keeps askin' where I've bin\nMy baby is guessin' that I'm messin'\nShe's all put together with chocolate feathers and\nMy go go girl\nMy my go go girl\nMy my go go girl\nMy my g-g-g-g-go go girl\nMy my g-g-g-g-go go girl\n
Well baby baby don't you know\nYour hairs a lair and one to spare\nI need you girl\nOh yeah\n\nBe good you know your trips\nYou're so rare\nThere's no one there\nHold my head between your knees\n\nHey baby jump in your car\nWe'll go to the sun and have us some fun\nI love you child\nOh yeah\n\nLong day runs into night\nTwilight child you drive me wild\nDon't scare me now\nOh yeah\n\nGold belt strap round my head\nRock 'n' Roll on the oceans floor\nNow get down girl\nOh yeah\n\nBe glad to get there\nMy love is strong like a mist at dawn\nDon't get me wrong\nOh yeah
Graceful Fat Sheba \nGraceful fat Sheba, she works with a meatcleaver \n \nSweating behind the meat counter \n \nHer skin, it leaks liquid, the odour is sickly \n \nHer features aren't unlike a swan \n \nHer poetic, gluttonic waist is impressive \n \nShe smiles as she hacks up a pig \n \nGraceful fat Sheba, she works with a meatcleaver \n \nSweating behind the meat counter\n
Great Horsey champers gold braid\nPranced proudly in the garden villas \nWith the Sun\n\nDipped diving with his horned onyx saddle \nShining in the black aped eyeballs \nOf the gun\n\nWhen the great apple falls \nShe'll be queen of your halls\n\nTall bowman from the burnt pastures \nSaw Champer and he bowed ground kissing \nTo his lord\n\nStrange beastie from the legend lair \nSire, I can master with the aid of this \nSkull powdered cord
+++[Info]\na-side [[Dandy In The Underworld (Song)]]\n===\n\n\nYou can call somebody captain\nUnder pressure you can flip\nYou can be a rock commando\nBut you can't pilot the ship\n\nGroove a little baby groove a little now\nGroove a little baby you might know what you want\nBut I'll show you how \n\nYou can trip the light fantastic\nBecome a space grotesque\nYou can fossilize your thought dreams behind a rusty desk\n\nYou might know what you want but I'll show you how\n\nYou can read the works of Shakespeare\nIn the Academy of Life\nYou can punk the skunks of freedom\nWith you jeweled Etruscan knife
/***\n''HTML Formatting Plugin for TiddlyWiki version 1.2.x and 2.0''\n^^author: Eric Shulman - ELS Design Studios\nsource: http://www.TiddlyTools.com/#HTMLFormattingPlugin\nlicense: [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]^^\n\nThe shorthand Wiki-style formatting syntax of ~TiddlyWiki is very convenient and enables most content to be reasonably well presented. However, there are times when tried-and-true HTML formatting syntax allows more more precise control of the content display.\n\nWhen HTML formatting syntax is embedded within a tiddler (in between {{{<}}}{{{html>}}} and {{{<}}}{{{/html>}}} markers) TiddlyWiki passes this content to the browser for processing as 'native' HTML. However, TiddlyWiki does not also process the HTML source content for any embedded wiki-formatting syntax it may contain. This means that while you can use HTML formatted content, you cannot mix wiki-formatted content within the HTML formatting.\n!!!!!Usage\n<<<\nThe ~HTMLFormatting plugin allows you to freely ''mix wiki-style formatting syntax within HTML formatted content'' by extending the action of the standard TiddlyWiki formatting handler.\n\nWhen a tiddler is about to be displayed, ~TiddlyWiki looks for tiddler content contained within ''<{{{html}}}>'' and ''<{{{/html}}}>'' HTML tags. This content (if any) is passed directly to the browser's internal "rendering engine" to process as ~HTML-formatted content. Once the HTML formatting has been processed, all the pieces of text occuring in between the HTML formatting are then processed by the ~TiddlyWiki rendering engine, one piece at a time, so that normal wiki-style formatting can be applied to the individual text pieces.\n<<<\n!!!!!Line breaks\n<<<\nOne major difference between Wiki formatting and HTML formatting is how "line breaks" are processed. Wiki formatting treats all line breaks as literal content to be displayed //as-is//. However, because HTML normally ignores line breaks and actually processes them as simple "word separators" instead, many people who write HTML include extra line breaks in their documents, just to make the "source code" easier to read.\n\nEven though you can use HTML tags within your tiddler content, the default treatment for line breaks still follows the Wiki-style rule (i.e., all new lines are displayed as-is). When adding HTML content to a tiddler (especially if you cut-and-paste it from another web page), you should take care to avoid adding extra line breaks to the text.\n\nIf removing all the extra line breaks from your HTML content would be a big hassle, you can quickly //override the default Wiki-style line break rule// so that the line breaks use the standard HTML rules instead. Placing a ''<{{{hide linebreaks}}}>'' tag within the tiddler's HTML content changes all line breaks to spaces before rendering the content, so that the literal line breaks will be processed as simple word-breaks instead.\n\nNote: this does //not// alter the actual tiddler content that is stored in the document, just the manner in which it is displayed. Any line breaks contained in the tiddler will still be there when you edit its content. Also, to include a literal line break when the ''<{{{hide linebreaks}}}>'' tag is present, you will need to use a ''<{{{br}}}>'' or ''<{{{p}}}>'' HTML tag instead of simply typing a line break.\n<<<\n!!!!!How it works\n<<<\nThe TW core support for HTML does not let you put ANY wiki-style syntax (including TW macros) *inside* the <html>...</html> block. Everything\nbetween <html> and </html> is handed to the browser for processing and that is it. Fortunately, this plugin ADDS the ability to let you put wiki-syntax (including macros) inside the html. It does this by first giving the tiddler source content to the browser to process the HTML, and then handling any wiki-based syntax that remains afterward.\n\nHowever, not all wiki syntax can be safely passed through the browser's parser. Specifically, any TW macros inside the HTML will get 'eaten' by the browser since the macro brackets, {{{<<...>>}}} use the "<" and ">" that normally delimit the HTML/XML syntax recognized by the browser's parser.\n\nSimilarly, you can't use InlineJavascript within the HTML because the {{{<script>...</script>}}} syntax will also be consumed by the browser and there will be nothing left to process afterward. Note: unfortunately, even though the browser removes the {{{<script>...</script>}}} sequence, it doesn't actually execute the embedded javascript code that it removes, so any scripts contained inside of <html> blocks in TW are currently being ignored. :-(\n\nAs a work-around to allow TW *macros* (but not inline scripts) to exist inside of <html> formatted blocks of content, the plugin first converts the {{{<<}}} and {{{>>}}} into "%%(" and ")%%", making them "indigestible" so they can pass unchanged through the belly of the beast (the browser's HTML parser).\n\nAfter the browser has done its job, the wiki syntax sequences (including the "undigested" macros) are contained in #text nodes in the browser-generated DOM elements. The plugin then recursively locates and processes each #text node, converts the %%( and )%% back into {{{<< and >>}}}, passes the result to wikify() for further rendering of the wiki-formatted syntax into a containing SPAN that replaces the previous #text node. At the end of this process, none of the encoded %%( and )%% sequences remain in the rendered tiddler output.\n<<<\n!!!!!Installation\n<<<\nimport (or copy/paste) the following tiddlers into your document:\n''HTMLFormattingPlugin'' (tagged with <<tag systemConfig>>)\n^^documentation and javascript for HTMLFormatting handling^^\n<<<\n!!!!!Revision History\n<<<\n''2006.05.28 [2.1.3]''\nin wikifyTextNodes(), decode the *value* of TEXTAREA nodes, but don't wikify() its children. (thanks to "ayj" for bug report)\n''2006.02.19 [2.1.2]''\nin wikifyTextNodes(), put SPAN element into tiddler DOM (replacing text node), BEFORE wikifying the text content. This ensures that the 'place' passed to any macros is correctly defined when the macro is evaluated, so that calls to story.findContainingTiddler(place) will work as expected. (Thanks for bug report from GeoffSlocock)\n''2006.02.05 [2.1.1]''\nwrapped wikifier hijack in init function to eliminate globals and avoid FireFox 1.5.0.1 crash bug when referencing globals\n''2005.12.01 [2.1.0]''\ndon't wikify #TEXT nodes inside SELECT and TEXTAREA elements\n''2005.11.06 [2.0.1]''\ncode cleanup\n''2005.10.31 [2.0.0]''\nreplaced hijack wikify() with hijack config.formatters["html"] and simplified recursive WikifyTextNodes() code\n''2005.10.09 [1.0.2]''\ncombined documentation and code into a single tiddler\n''2005.08.05 [1.0.1]''\nmoved HTML and CSS definitions into plugin code instead of using separate tiddlers\n''2005.07.26 [1.0.1]''\nRe-released as a plugin.\nAdded <{{{html}}}>...</{{{nohtml}}}> and <{{{hide newlines}}}> handling\n''2005.07.20 [1.0.0]''\nInitial Release (as code adaptation)\n<<<\n!!!!!Credits\n<<<\nThis feature was developed by EricShulman from [[ELS Design Studios|http:/www.elsdesign.com]]\n<<<\n!!!!!Code\n***/\n//{{{\nversion.extensions.HTMLFormatting = {major: 2, minor: 1, revision: 3, date: new Date(2006,5,28)};\n\n// find the formatter for HTML and replace the handler\ninitHTMLFormatter();\nfunction initHTMLFormatter()\n{\n for (var i=0; i<config.formatters.length && config.formatters[i].name!="html"; i++);\n if (i<config.formatters.length) config.formatters[i].handler=function(w) {\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 var html=lookaheadMatch[1];\n // optionally suppress wiki-style literal handling of newlines\n // strip any carriage returns added by Internet Explorer's textarea edit field\n // encode newlines as \sn so Internet Explorer's HTML parser won't eat them\n // encode macro brackets (<< and >>) so HTML parser won't eat them\n if (html.indexOf('<hide linebreaks>')!=-1) html=html.replace(regexpNewLine,' ');\n html=html.replace(regexpCarriageReturn,'');\n html=html.replace(regexpNewLine,'\s\sn');\n html=html.replace(/<</g,'%%(').replace(/>>/g,')%%');\n // create span to hold HTML\n // parse HTML and normalize the results\n // walk node tree and call wikify() on each text node\n var e = createTiddlyElement(w.output,"span");\n e.innerHTML=html;\n e.normalize(); \n wikifyTextNodes(e);\n // advance to next parse position\n w.nextMatch=lookaheadMatch.index + lookaheadMatch[0].length;\n }\n }\n}\n\n// wikify text nodes remaining after HTML content is processed (pre-order recursion)\nfunction wikifyTextNodes(theNode)\n{\n // textarea node doesn't get wikified, just decoded... \n if (theNode.nodeName.toLowerCase()=='textarea')\n theNode.value=theNode.value.replace(/\s%%\s(/g,'<<').replace(/\s)\s%%/g,'>>').replace(regexpBackSlashEn,'\sn');\n else for (var i=0;i<theNode.childNodes.length;i++) {\n var theChild=theNode.childNodes.item(i);\n if (theChild.nodeName.toLowerCase()=='option') continue;\n if (theChild.nodeName.toLowerCase()=='select') continue;\n wikifyTextNodes(theChild);\n if (theChild.nodeName=='#text') {\n var txt=theChild.nodeValue;\n // decode macro brackets and newlines\n txt=txt.replace(/\s%%\s(/g,'<<').replace(/\s)\s%%/g,'>>').replace(regexpBackSlashEn,'\sn');\n // replace text node with wikified() span\n var newNode=createTiddlyElement(null,"span");\n theNode.replaceChild(newNode,theChild);\n wikify(txt,newNode);\n }\n }\n}\n//}}}\n
When I'm down you bring me up babe\nWhen I'm up you bring me down\nWhen I'm down you bring me up babe\nWhen I'm up you bring me down\nI'm such a contradiction---I'm just hung-up \n\nGet off my back and leave me\nOh shit let's get it on\nGet off my back and leave me\nOh shit let's get it on\nI'm such a contradiction--- I'm just hung-up\n\nI'm such a contradiction- I'm just hung-up\n\nEverything is sweet babe\nThen everything is the pits\nEverything is sweet babe\nThen everything is the pits\nYou love me then you leave me\nHow come you always pick the hits
Bass guitar with [[T.Rex]] 1977.\n\nAlong with [[Rick Wakeman]], ''Herbie'' is possibly the most respected musician to have worked with [[Marc|Marc Bolan]].\n\nSee http://en.wikipedia.org/wiki/Herbie_Flowers
Flowers blown on the wind at night.\nLovers' prayer brings heart strings tight.\nMy summer was blown to a winter's throne.\n\nHigh, high, high.\n\nRiding fast on the path at night.\nUnaware of a lover's right.\nTo be gone and destroy your song.\n\nHigh, high, high.\n\nMany changes my young life has seen, yeah.\nPeople feel that true love's a dream.\nMy faith was wrong,\nGod will help me carry on.\n\nHigh, high, high.\n\nFlowers blown on the wind at night.\nLovers' prayer brings heart strings tight.\nMy summer was blown to a winter's throne.\n\nHigh, high, high
She could have layed\nCould have stayed on the highway\nI could have loved her\nO yes I could\n\nHer children stayed \nCould have played on the highway\nI could have known them\nO yes I could\n\nOn my knees \nI'm begging please\nuh huh\n\nShe could have layed\nCould have stayed on the highway\nI could have loved her O yes I could\n\nOn my knees I'm begging please uh huh\nOn my knees I'm begging please uh huh
It's a shame\nWhen you walk that highwire\nIt's a shame\nWhen you dance with death\n\nIt's a game\nWhen you talk that street talk\nDo you need love?\n\nIt's a shame\nWhen you walk that highwire\nIt's a shame\nWhen you dance with death\n\nIt's a game\nWhen you talk that street talk\nDo you need love?\n\nDa da da...\n\nIt's a game\nWhen you talk that street talk\nDo you need love?
+++[Info]\nb-side [[Misfit]]\nAlso used as a b-side on [[Jasper C. Debussy]]\n===\n\n\nMet a man he was nice\nsaid his name was paradise\nDidn't realise at the time\nThat his face and mind were mine\n\nHippy Gumbo he's no good\nChop him up for firewood\n\nIt seemed good and it seemed right\nthat I should dig him on the night\n\nBut in the morning with the sun\nHe pulled an automatic gun\nHe blew my soul he blew my brain\nHe split I could not do the same\n\nHippy gumbo he's no good\nChop him up for firewood
/***\nTo use, add {{{[[HorizontalMainMenuStyles]]}}} to your StyleSheet tiddler, or you can just paste the CSS in directly. See also HorizontalMainMenu and PageTemplate.\n***/\n/*{{{*/\n\n#topMenu br {display:none; }\n#topMenu { background: black; /*#39a;*/ }\n#topMenu { padding:2px; }\n#topMenu .button, #topMenu .tiddlyLink {\n margin-left:0.5em; margin-right:0.5em;\n padding-left:3px; padding-right:3px;\n color:white; font-size:115%;\n}\n#topMenu .button:hover, #topMenu .tiddlyLink:hover { background:#a00; /*#178;*/}\n\n#displayArea { margin: 1em 15.7em 0em 1em; } /* so we use the freed up space */\n\n/* just in case want some QuickOpenTags in your topMenu */\n#topMenu .quickopentag { padding:0px; margin:0px; border:0px; }\n#topMenu .quickopentag .tiddlyLink { padding-right:1px; margin-right:0px; }\n#topMenu .quickopentag .button { padding-left:1px; margin-left:0px; border:0px; }\n\n\n/*}}}*/
<<tiddler RecDetail \n with: \n 1977 \n [[Marc Bolan & T.Rex]] \n [[Marc Bolan]]\n "Posthumous Release"\n " "\n Band9\n " "\n>>\n\n++++\nYou sound a little crazy,\nBut it could be the heat.\nI'm roasted like a chestnut,\nBy the fire of your feet.\nYour body is a furnace.\nYour love is the coal.\nSo won't you tame your man,\nHot George.\n\nNow Georgie was a female,\nAs females go.\nShe moved fast like a jaguar.\nMelting all like snow.\nShe was a foxy heater.\nRotating like the sun.\nSo won't you tame your man,\nHot George.\n\nPavlovian fellow.\nHe was a bronzed style punk.\nHe drink up the rainbow,\nTo get his skull drunk.\nHe laid by the mission bell,\nTo keep his guns all creamed.\nWhy don't you understand?\nHot George.\nWhy don't you understand?\nHot George\nWhy don't you understand?\nHot George.\nWhy don't you understand?\nHot George.\n===
Well she's my woman of gold \nAnd she's not very old u-huh-huh\nWell she's my woman of gold \nAnd she's not very old u-huh-huh\nI don't mean to be bold \nBut may I hold your hand \n\nWell she ain't no witch \nAnd I love the way she twitch u-huh-huh\nWell she ain't no witch \nAnd I love the way she twitch u-huh-huh\nI'm a labourer of love \nIn my Persian gloves u-huh-huh\n\nWell she's faster than most\nAnd she lives on the coast u-huh-huh\nWell she's faster than most \nAnd she lives on the coast u-huh-huh\nI'm her two-penny prince \nAnd I give her hot love u-huh-huh\n\nWell she ain't no witch \nAnd I love the way she twitch u-huh-huh\nWell she ain't no witch \nAnd I love the way she twitch u-huh-huh\nI'm her two-penny prince \nAnd I give her hot love\n\nLa la la, la la la la la
Hot rod mama moving\nlike a motor cycle devil in a rage\nBlown out my mind, I can't keep up the pace\n\nI'm selling all my midnight\nstill broke and living on the ground\nMy gone little mama cut out without a sound\n\nWith my greased-up levis\nbaseball boots above my head\nIf it wasn't such a tragedy I might wish I was dead\n\nShe took my ice-cream mustang\nand my purple coloured dodeville\nShe even took my panpipes and my elixir of life pill\n
<<top>>\n<<fullscreen f>>\n<<toggleSideBar>><<renameButton '>' 'Hide tabs sidebar'>>\n<<jump j '' top>>\n/%<<saveChanges>><<renameButton s 'Save TiddlyWiki'>>%/\n<<newTiddler>><<renameButton n 'New tiddler'>>\n
/***\n|Name|HoverMenuPlugin|\n|Created by|SaqImtiaz|\n|Location|http://lewcid.googlepages.com/lewcid.html#HoverMenuPlugin|\n|Version|1.1|\n|Requires|~TW2.x|\n!Description:\nProvides a hovering menu on the edge of the screen for commonly used commands, that scrolls with the page.\n\n!Demo:\nObserve the hovering menu on the right edge of the screen.\n\n!Installation:\nCopy the contents of this tiddler to your TW, tag with systemConfig, save and reload your TW.\nTo customize your HoverMenu, edit the HoverMenu shadow tiddler.\n\nTo customize whether the menu sticks to the right or left edge of the screen, and its start position, edit the HoverMenu configuration settings part of the code below. It's well documented, so don't be scared!\n\nThe menu has an id of hoverMenu, in case you want to style the buttons in it using css.\n\n!Notes:\nSince the default HoverMenu contains buttons for toggling the side bar and jumping to the top of the screen and to open tiddlers, the ToggleSideBarMacro, JumpMacro and the JumpToTopMacro are included in this tiddler, so you dont need to install them separately. Having them installed separately as well could lead to complications.\n\nIf you dont intend to use these three macros at all, feel free to remove those sections of code in this tiddler.\n\n!To Do:\n* rework code to allow multiple hovering menus in different positions, horizontal etc.\n* incorporate code for keyboard shortcuts that correspond to the buttons in the hovermenu\n\n!History:\n*27-07-06 , ver 1.1 : added JumpMacro to hoverMenu\n*23-07-06\n\n!Code\n***/\n\n/***\nstart HoverMenu plugin code\n***/\n//{{{\nconfig.hoverMenu={};\n//}}}\n\n/***\nHoverMenu configuration settings\n***/\n//{{{\nconfig.hoverMenu.settings={\n align: 'right', //align menu to right or left side of screen, possible values are 'right' and 'left' \n x: 1, // horizontal distance of menu from side of screen, increase to your liking.\n y: 158 //vertical distance of menu from top of screen at start, increase or decrease to your liking\n };\n//}}}\n\n//{{{\n//continue HoverMenu plugin code\nconfig.hoverMenu.handler=function()\n{\n var theMenu = createTiddlyElement(document.getElementById("contentWrapper"), "div","hoverMenu");\n theMenu.setAttribute("refresh","content");\n theMenu.setAttribute("tiddler","HoverMenu");\n var menuContent = store.getTiddlerText("HoverMenu");\n wikify(menuContent,theMenu);\n\n var Xloc = this.settings.x;\n Yloc =this.settings.y;\n var ns = (navigator.appName.indexOf("Netscape") != -1);\n function SetMenu(id)\n {\n var GetElements=document.getElementById?document.getElementById(id):document.all?document.all[id]:document.layers[id];\n if(document.layers)GetElements.style=GetElements;\n GetElements.sP=function(x,y){this.style[config.hoverMenu.settings.align]=x +"px";this.style.top=y +"px";};\n GetElements.x = Xloc;\n GetElements.y = findScrollY();\n GetElements.y += Yloc;\n return GetElements;\n }\n window.LoCate_XY=function()\n {\n var pY = findScrollY();\n ftlObj.y += (pY + Yloc - ftlObj.y)/15;\n ftlObj.sP(ftlObj.x, ftlObj.y);\n setTimeout("LoCate_XY()", 10);\n }\n ftlObj = SetMenu("hoverMenu");\n LoCate_XY();\n};\n\nwindow.old_lewcid_hovermenu_restart = restart;\nrestart = function()\n{\n window.old_lewcid_hovermenu_restart();\n config.hoverMenu.handler();\n};\n\nsetStylesheet(\n"#hoverMenu .button, #hoverMenu .tiddlyLink {border:none; font-weight:bold; background:#18f; color:#FFF; padding:0 5px; float:right; margin-bottom:4px;}\sn"+\n"#hoverMenu .button:hover, #hoverMenu .tiddlyLink:hover {font-weight:bold; border:none; color:#fff; background:#000; padding:0 5px; float:right; margin-bottom:4px;}\sn"+\n"#hoverMenu .button {width:100%; text-align:center}"+\n"#hoverMenu { position:absolute; width:7px;}\sn"+\n"\sn","hoverMenuStyles");\n\n\nconfig.macros.renameButton={};\nconfig.macros.renameButton.handler = function(place,macroName,params,wikifier,paramString,tiddler)\n{\n\n if (place.lastChild.tagName!="BR")\n place.lastChild.firstChild.data = params[0];\n place.lastChild.title = params[1];\n};\n\nconfig.shadowTiddlers["HoverMenu"]="<<top>>\sn<<toggleSideBar>><<renameButton '>' >>\sn<<jump j '' top>>\sn<<saveChanges>><<renameButton s 'Save TiddlyWiki'>>\sn<<newTiddler>><<renameButton n>>\sn";\n//}}}\n//end HoverMenu plugin code\n\n//Start ToggleSideBarMacro code\n//{{{\nconfig.macros.toggleSideBar={};\n\nconfig.macros.toggleSideBar.settings={\n styleHide : "#sidebar { display: none;}\sn"+"#contentWrapper #displayArea { margin-right: 1em;}\sn"+"",\n styleShow : " ",\n arrow1: "ยซ",\n arrow2: "ยป"\n};\n\nconfig.macros.toggleSideBar.handler=function (place,macroName,params,wikifier,paramString,tiddler)\n{\n var tooltip= params[1]||'toggle sidebar';\n var mode = (params[2] && params[2]=="hide")? "hide":"show";\n var arrow = (mode == "hide")? this.settings.arrow1:this.settings.arrow2;\n var label= (params[0]&&params[0]!='.')?params[0]+" "+arrow:arrow;\n var theBtn = createTiddlyButton(place,label,tooltip,this.onToggleSideBar,"button HideSideBarButton");\n if (mode == "hide")\n { \n (document.getElementById("sidebar")).setAttribute("toggle","hide");\n setStylesheet(this.settings.styleHide,"ToggleSideBarStyles");\n }\n};\n\nconfig.macros.toggleSideBar.onToggleSideBar = function(){\n var sidebar = document.getElementById("sidebar");\n var settings = config.macros.toggleSideBar.settings;\n if (sidebar.getAttribute("toggle")=='hide')\n {\n setStylesheet(settings.styleShow,"ToggleSideBarStyles");\n sidebar.setAttribute("toggle","show");\n this.firstChild.data= (this.firstChild.data).replace(settings.arrow1,settings.arrow2);\n }\n else\n { \n setStylesheet(settings.styleHide,"ToggleSideBarStyles");\n sidebar.setAttribute("toggle","hide");\n this.firstChild.data= (this.firstChild.data).replace(settings.arrow2,settings.arrow1);\n }\n\n return false;\n}\n\nsetStylesheet(".HideSideBarButton .button {font-weight:bold; padding: 0 5px;}\sn","ToggleSideBarButtonStyles");\n//}}}\n//end ToggleSideBarMacro code\n\n//start JumpToTopMacro code\n//{{{\nconfig.macros.top={};\nconfig.macros.top.handler=function(place,macroName)\n{\n createTiddlyButton(place,"^","jump to top",this.onclick);\n}\nconfig.macros.top.onclick=function()\n{\n window.scrollTo(0,0);\n};\n\nconfig.commands.top =\n{\n text:" ^ ",\n tooltip:"jump to top"\n};\n\nconfig.commands.top.handler = function(event,src,title)\n{\n window.scrollTo(0,0);\n}\n//}}}\n//end JumpToStartMacro code\n\n//start JumpMacro code\n//{{{\nconfig.macros.jump= {};\nconfig.macros.jump.handler = function (place,macroName,params,wikifier,paramString,tiddler)\n{\n var label = (params[0] && params[0]!=".")? params[0]: 'jump';\n var tooltip = (params[1] && params[1]!=".")? params[1]: 'jump to an open tiddler';\n var top = (params[2] && params[2]=='top') ? true: false; \n\n var btn =createTiddlyButton(place,label,tooltip,this.onclick);\n if (top==true)\n btn.setAttribute("top","true")\n}\n\nconfig.macros.jump.onclick = function(e)\n{\n if (!e) var e = window.event;\n var theTarget = resolveTarget(e);\n var top = theTarget.getAttribute("top");\n var popup = Popup.create(this);\n if(popup)\n {\n if(top=="true")\n {createTiddlyButton(createTiddlyElement(popup,"li"),'Top โ†‘','Top of TW',config.macros.jump.top);\n createTiddlyElement(popup,"hr");}\n \n story.forEachTiddler(function(title,element) {\n createTiddlyLink(createTiddlyElement(popup,"li"),title,true);\n });\n }\n Popup.show(popup,false);\n e.cancelBubble = true;\n if (e.stopPropagation) e.stopPropagation();\n return false;\n}\n\nconfig.macros.jump.top = function()\n{\n window.scrollTo(0,0);\n}\n//}}}\n//end JumpMacro code\n\n//utility functions\n//{{{\nPopup.show = function(unused,slowly)\n{\n var curr = Popup.stack[Popup.stack.length-1];\n var rootLeft = findPosX(curr.root);\n var rootTop = findPosY(curr.root);\n var rootHeight = curr.root.offsetHeight;\n var popupLeft = rootLeft;\n var popupTop = rootTop + rootHeight;\n var popupWidth = curr.popup.offsetWidth;\n var winWidth = findWindowWidth();\n if (isChild(curr.root,'hoverMenu'))\n var x = config.hoverMenu.settings.x;\n else\n var x = 0;\n if(popupLeft + popupWidth+x > winWidth)\n popupLeft = winWidth - popupWidth -x;\n if (isChild(curr.root,'hoverMenu'))\n {curr.popup.style.right = x + "px";}\n else\n curr.popup.style.left = popupLeft + "px";\n curr.popup.style.top = popupTop + "px";\n curr.popup.style.display = "block";\n addClass(curr.root,"highlight");\n if(config.options.chkAnimate)\n anim.startAnimating(new Scroller(curr.popup,slowly));\n else\n window.scrollTo(0,ensureVisible(curr.popup));\n}\n\nwindow.isChild = function(e,parentId) {\n while (e != null) {\n var parent = document.getElementById(parentId);\n if (parent == e) return true;\n e = e.parentNode;\n }\n return false;\n};\n//}}}\n\n\n
Without a doubt, the most powerful feature on offer here at [[VideoDRAMA II]] is the //''search facility''//. \n\nWant to know in which songs ''Marc'' mentions ''metal''? \n\n''EASY!''\n\nType //''metal''// into the ''search'' box - you don't even need to hit the return key. \n\n''Cool huh?''\n\nThe ''search'' box is at the top, over on the right... or, if you wish, use this one:\n<<search>>
[[Marc|Marc Bolan]] used ''Howard'' and [[Mark Volman]] as backing vocalists on [[Electric Warrior]].
+++[Info]\nb-side [[Baby Boomerang]]\n===\n\n\nBelinda Mae Fenders got a Cadillac bone\nJenny lost her cherry walking all the way home\nThe passions of the Earth blasted her mind\nNow she's neat sweet ready for the moon base grind\n\nYou rattlesnake out with your talefeathers high\nJitterbug left and smile to the sky\nWith your black velvet cape and you stovepipe hat\nBe-Bop baby the dance is where it's at\n\nI love to Boogie on a Saturday night
I really love you babe\nI really love you babe\n\nI jumped in the car\ngonna carry you to the stars\nSo lets go see the ship\nAnd your hip bronzed lipped\nI really love you babe\n\nOh flat black pink, grey\nHeart stop heart drop\nNothing couldn't stop it\nIt's the magic in the valley\nOf the frozen rain\n\nOh oh -I really love you babe-\n\nOh frost bound poetry\nGleaming like a satelite\nGreen glade diamond bright\nNow's the time to live\nCome live with me\n\nSpiked heart lost love\nTreat you girl love you then\nTime's gone, word's wrong\nUntil my angel comes\n\nOoh ooh ooh -I really love you babe-\nI really love you babe\nJust really love you babe\n\nOoh ooh ooh -I really love you babe-\nOoh ooh ooh
I'm standing winding staircase, seven eagles long\nMisty planet creature how could I kiss you wrong\n\nThe Poet wished upon a star\nand dazzling bright is what you are\nI'm a fool for you girl I'm a fool for you girl\nI'm a fool for you girl I'm a fool for you girl \n\nDripping dancing diving lipstick of the brave\nSullen Garbo siren your body's all I crave \n\nHot baby I'm a fool for you
Keep on sayin' I'm weird\nKeep on sayin' I'm weird\nKeep on sayin' I'm weird\nTo see everyone as me\nAnd weirder to dispose\nOf my fantastic skill\n\nKeep on sayin' I'm in love\nKeep on sayin' I'm in love\nKeep on sayin' I'm in love\nTo you anything I do\nAre just reflections\nOf my obscene and distorted love\n\nKeep on sayin' I'm a fool\nKeep on sayin' I'm a fool\nKeep on sayin' I'm a uncool\nTo not understand\nA lot of the things You got\nSeem not to care\nYou say I'm the weirdest anywhere
/***\n''Import Tiddlers Plugin for TiddlyWiki version 1.2.x and 2.0''\n^^author: Eric Shulman - ELS Design Studios\nsource: http://www.TiddlyTools.com/#ImportTiddlersPlugin\nlicense: [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]^^\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 plugin lets you selectively combine tiddlers from any two TiddlyWiki documents. It can also be 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!!!!!Inline interface (live)\n<<<\n<<importTiddlers inline>>\n<<<\n!!!!!Macro Syntax\n<<<\n{{{<<importTiddlers>>}}}\ncreates "import tiddlers" link. click to show/hide import control panel\n\n{{{<<importTiddlers inline>>}}}\ncreates import control panel directly in tiddler content\n\n{{{<<importTiddlers filter source quiet ask>>}}}\nnon-interactive 'automatic' import.\n''filter'' determines which tiddlers will be automatically selected for importing. Use one of the following keywords:\n>''"new"'' retrieves only tiddlers that are found in the import source document, but do not yet exist in the destination document\n>''"changes"'' retrieves only tiddlers that exist in both documents for which the import source tiddler is newer than the existing tiddler\n>''"updates"'' retrieves both ''new'' and ''changed'' tiddlers (this is the default action when none is specified)\n>''"all"'' retrieves ALL tiddlers from the import source document, even if they have not been changed.\n''source'' is the location of the imported document. It can be either a local document or an URL:\n>filename is any local path/file, in whatever format your system requires\n>URL is any remote web location that starts with "http://" or "https://"\n''"quiet"'' (optional)\n>supresses all status message during the import processing (e.g., "opening local file...", "found NN tiddlers..." etc). Note that if ANY tiddlers are actualy imported, a final information message will still be displayed (along with the ImportedTiddlers report), even when 'quiet' is specified. This ensures that changes to your document cannot occur without any visible indication at all.\n''"ask"'' (optional)\n>adds interactive confirmation. A browser message box (OK/Cancel) is displayed for each tiddler that will be imported, so that you can manually bypass any tiddlers that you do not want to import.\n\n''Special tag values: importReplace and importPublic''\n\nBy adding these special tags to an existing tiddler, you can precisely control whether or not to allow updates to that tiddler as well as decide which tiddlers in your document can be automatically imported by others.\n*''For maximum safety, the default action is to prevent existing tiddlers from being unintentionally overwritten by incoming tiddlers.'' To allow an existing tiddler to be overwritten by an imported tiddler, you must tag the existing tiddler with ''<<tag importReplace>>''\n*''For maximum privacy, the default action for //outgoing// tiddlers is to NOT automatically share your tiddlers with others.'' To allow a tiddler in your document to be shared via auto-import actions by others, you must tag it with ''<<tag importPublic>>''\n//Note: these tags are only applied when using the auto-import processing. When using the interactive control panel, all tiddlers in the imported document are available in the listbox, regardless of their tag values.//\n<<<\n!!!!!Interactive Usage\n<<<\nWhen used interactively, 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 a remote document URL (starting with http://)and press ''[open]''. //Note: There may be some delay to permit the browser 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''select: all, new, changes, or differences''\n\nYou can click on ''all'', ''new'', ''changes'', or ''differences'' to automatically select a subset of tiddlers from the list. This makes it very quick and easy to find and import just the updated tiddlers you are interested in:\n>''"all"'' selects ALL tiddlers from the import source document, even if they have not been changed.\n>''"new"'' selects only tiddlers that are found in the import source document, but do not yet exist in the destination document\n>''"changes"'' selects only tiddlers that exist in both documents but that are newer in the source document\n>''"differences"'' selects all new and existing tiddlers that are different from the destination document (even if destination tiddler is newer)\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\nWhen 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\nNote: You can prevent the ImportedTiddlers report from being generated for any given import activity by clearing the "create a report" checkbox before beginning the import processing.\n\n<<<\n!!!!!Installation\n<<<\ncopy/paste the following tiddlers into your document:\n''ImportTiddlersPlugin'' (tagged with <<tag systemConfig>>)\n\ncreate/edit ''SideBarOptions'': (sidebar menu items) \n^^Add "< < ImportTiddlers > >" macro^^\n\n''Quick Installation Tip #1:''\nIf you are using an unmodified version of TiddlyWiki (core release version <<version>>), you can get a new, empty TiddlyWiki with the Import Tiddlers plugin pre-installed (''[[download from here|TW+ImportExport.html]]''), and then simply import all your content from your old document into this new, empty document.\n<<<\n!!!!!Revision History\n<<<\n''2006.02.17 [2.6.0]''\nRemoved "differences only" listbox display mode, replaced with selection filter 'presets': all/new/changes/differences. Also fixed initialization handling for "add new tags" so that checkbox state is correctly tracked when panel is first displayed.\n''2006.02.16 [2.5.4]''\nadded checkbox options to control "import remote tags" and "keep existing tags" behavior, in addition to existing "add new tags" functionality.\n''2006.02.14 [2.5.3]''\nFF1501 corrected unintended global 't' (loop index) in importReport() and autoImportTiddlers()\n''2006.02.10 [2.5.2]''\ncorrected unintended global variable in importReport().\n''2006.02.05 [2.5.1]''\nmoved globals from window.* to config.macros.importTiddlers.* to avoid FireFox 1.5.0.1 crash bug when referencing globals\n''2006.01.18 [2.5.0]''\nadded checkbox for "create a report". Default is to create/update the ImportedTiddlers report. Clear the checkbox to skip this step.\n''2006.01.15 [2.4.1]''\nadded "importPublic" tag and inverted default so that auto sharing is NOT done unless tagged with importPublic\n''2006.01.15 [2.4.0]''\nAdded support for tagging individual tiddlers with importSkip, importReplace, and/or importPrivate to control which tiddlers can be overwritten or shared with others when using auto-import macro syntax. Defaults are to SKIP overwriting existing tiddlers with imported tiddlers, and ALLOW your tiddlers to be auto-imported by others.\n''2006.01.15 [2.3.2]''\nAdded "ask" parameter to confirm each tiddler before importing (for use with auto-importing)\n''2006.01.15 [2.3.1]''\nStrip TW core scripts from import source content and load just the storeArea into the hidden IFRAME. Makes loading more efficient by reducing the document size and by preventing the import document from executing its TW initialization (including plugins). Seems to resolve the "Found 0 tiddlers" problem. Also, when importing local documents, use convertUTF8ToUnicode() to convert the file contents so support international characters sets.\n''2006.01.12 [2.3.0]''\nReorganized code to use callback function for loading import files to support event-driven I/O via an ASYNCHRONOUS XMLHttpRequest. Let's processing continue while waiting for remote hosts to respond to URL requests. Added non-interactive 'batch' macro mode, using parameters to specify which tiddlers to import, and from what document source. Improved error messages and diagnostics, plus an optional 'quiet' switch for batch mode to eliminate //most// feedback.\n''2006.01.11 [2.2.0]''\nAdded "[by tags]" to list of tiddlers, based on code submitted by BradleyMeck\n''2006.01.09 [2.1.1]''\nWhen a URL is typed in, and then the "open" button is pressed, it generates both an onChange event for the file input and a click event for open button. This results in multiple XMLHttpRequest()'s which seem to jam things up quite a bit. I removed the onChange handling for file input field. To open a file (local or URL), you must now explicitly press the "open" button in the control panel.\n''2006.01.08 [2.1.0]''\nIMPORT FROM ANYWHERE!!! re-write getImportedTiddlers() logic to either read a local file (using local I/O), OR... read a remote file, using a combination of XML and an iframe to permit cross-domain reading of DOM elements. Adapted from example code and techniques courtesy of Jonny LeRoy.\n''2006.01.06 [2.0.2]''\nWhen refreshing list contents, fixed check for tiddlerExists() when "show differences only" is selected, so that imported tiddlers that don't exist in the current file will be recognized as differences and included in the list.\n''2006.01.04 [2.0.1]''\nWhen "show differences only" is NOT checked, import all tiddlers that have been selected even when they have a matching title and date.\n''2005.12.27 [2.0.0]''\nUpdate for TW2.0\nDefer initial panel creation and only register a notification function when panel first is created\n''2005.12.22 [1.3.1]''\ntweak formatting in importReport() and add 'discard report' link to output\n''2005.12.03 [1.3.0]''\nDynamically create/remove importPanel as needed to ensure only one instance of interface elements exists, even if there are multiple instances of macro embedding. Also, dynamically create/recreate importFrame each time an external TW document is loaded for importation (reduces DOM overhead and ensures a 'fresh' frame for each document)\n''2005.11.29 [1.2.1]''\nfixed formatting of 'detail info' in importReport()\n''2005.11.11 [1.2.0]''\nadded 'inline' param to embed controls in a tiddler\n''2005.11.09 [1.1.0]''\nonly load HTML and CSS the first time the macro handler is called. Allows for redundant placement of the macro without creating multiple instances of controls with the same ID's.\n''2005.10.25 [1.0.5]''\nfixed typo in importReport() that prevented reports from being generated\n''2005.10.09 [1.0.4]''\ncombined documentation with plugin code instead of using separate tiddlers\n''2005.08.05 [1.0.3]''\nmoved CSS and HTML definitions into plugin code instead of using separate tiddlers\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!!!!!Code\n***/\n\n// // Version\n//{{{\nversion.extensions.importTiddlers = {major: 2, minor: 6, revision: 0, date: new Date(2006,2,17)};\n//}}}\n\n// // 1.2.x compatibility\n//{{{\nif (!window.story) window.story=window;\nif (!store.getTiddler) store.getTiddler=function(title){return store.tiddlers[title]}\nif (!store.addTiddler) store.addTiddler=function(tiddler){store.tiddlers[tiddler.title]=tiddler}\nif (!store.deleteTiddler) store.deleteTiddler=function(title){delete store.tiddlers[title]}\n//}}}\n\n// // IE needs explicit global scoping for functions/vars called from browser events\n//{{{\nwindow.onClickImportButton=onClickImportButton;\nwindow.loadImportFile=loadImportFile;\nwindow.refreshImportList=refreshImportList;\n//}}}\n\n// // default cookie/option values\n//{{{\nif (!config.options.chkImportReport) config.options.chkImportReport=true;\n//}}}\n\n\n// // ''MACRO DEFINITION''\n\n//{{{\nconfig.macros.importTiddlers = { };\nconfig.macros.importTiddlers = {\n label: "import tiddlers",\n prompt: "Copy tiddlers from another document",\n countMsg: "%0 tiddlers selected for import",\n src: "", // path/filename or URL of document to import\n inbound: null, // hash-indexed array of tiddlers from other document\n newTags: "", // text of tags added to imported tiddlers\n addTags: true, // add new tags to imported tiddlers\n listsize: 8, // # of lines to show in imported tiddler list\n importTags: true, // include tags from remote source document when importing a tiddler\n keepTags: true, // retain existing tags when replacing a tiddler\n index: 0, // current processing index in import list\n sort: "" // sort order for imported tiddler listbox\n};\n\nconfig.macros.importTiddlers.handler = function(place,macroName,params) {\n // LINK WITH FLOATING PANEL\n if (!params[0]) {\n createTiddlyButton(place,this.label,this.prompt,onClickImportMenu);\n return;\n }\n // INLINE TIDDLER CONTENT\n if (params[0]=="inline") {\n createImportPanel(place);\n document.getElementById("importPanel").style.position="static";\n document.getElementById("importPanel").style.display="block";\n return;\n }\n // NON-INTERACTIVE BATCH MODE\n switch (params[0]) {\n case 'all':\n case 'new':\n case 'changes':\n case 'updates':\n var filter=params.shift();\n break;\n default:\n var filter="updates";\n break;\n } \n if (!params[0]||!params[0].length) return; // filename is required\n config.macros.importTiddlers.src=params.shift();\n var quiet=(params[0]=="quiet"); if (quiet) params.shift();\n var ask=(params[0]=="ask"); if (ask) params.shift();\n config.macros.importTiddlers.inbound=null; // clear the imported tiddler buffer\n // load storeArea from a hidden IFRAME, then apply import rules and add/replace tiddlers\n loadImportFile(config.macros.importTiddlers.src,filter,quiet,ask,autoImportTiddlers);\n}\n//}}}\n\n// // ''READ TIDDLERS FROM ANOTHER DOCUMENT''\n\n//{{{\nfunction loadImportFile(src,filter,quiet,ask,callback) {\n if (!quiet) clearMessage();\n // LOCAL FILE\n if ((src.substr(0,7)!="http://")&&(src.substr(0,8)!="https://")) {\n if (!quiet) displayMessage("Opening local document: "+ src);\n var txt=loadFile(src);\n if(!txt) { if (!quiet) displayMessage("Could not open local document: "+src); }\n else {\n var s="<html><body>"+txt.substr(txt.indexOf('<div id="storeArea">'));\n if (!quiet) displayMessage(txt.length+" bytes in document. ("+s.length+" bytes used for tiddler storage)");\n config.macros.importTiddlers.inbound = readImportedTiddlers(convertUTF8ToUnicode(s));\n var count=config.macros.importTiddlers.inbound?config.macros.importTiddlers.inbound.length:0;\n if (!quiet) displayMessage("Found "+count+" tiddlers in "+src);\n if (callback) callback(src,filter,quiet,ask);\n }\n return;\n }\n // REMOTE FILE\n var x; // XML object\n try {x = new XMLHttpRequest()}\n catch(e) {\n try {x = new ActiveXObject("Msxml2.XMLHTTP")}\n catch (e) {\n try {x = new ActiveXObject("Microsoft.XMLHTTP")}\n catch (e) { return }\n }\n }\n x.onreadystatechange = function() {\n if (x.readyState == 4) {\n if (x.status == 200) {\n var sa="<html><body>"+x.responseText.substr(x.responseText.indexOf('<div id="storeArea">'));\n if (!quiet) displayMessage(x.responseText.length+" bytes in document. ("+sa.length+" bytes used for tiddler storage)");\n config.macros.importTiddlers.inbound = readImportedTiddlers(sa);\n var count=config.macros.importTiddlers.inbound?config.macros.importTiddlers.inbound.length:0;\n if (!quiet) displayMessage("Found "+count+" tiddlers in "+src);\n if (callback) callback(src,filter,quiet,ask);\n }\n else\n if (!quiet) displayMessage("Could not open remote document:"+ src+" (error="+x.status+")");\n }\n }\n if (document.location.protocol=="file:") { // UniversalBrowserRead only works from a local file context\n try {netscape.security.PrivilegeManager.enablePrivilege('UniversalBrowserRead')}\n catch (e) { if (!quiet) displayMessage(e.description?e.description:e.toString()); }\n }\n if (!quiet) displayMessage("Opening remote document: "+ src);\n try {\n var url=src+(src.indexOf('?')<0?'?':'&')+'nocache='+Math.random();\n x.open("GET",url,true);\n x.overrideMimeType('text/html');\n x.send(null);\n }\n catch (e) {\n if (!quiet) {\n displayMessage("Could not open remote document: "+src);\n displayMessage(e.description?e.description:e.toString());\n }\n }\n}\n\nfunction readImportedTiddlers(txt)\n{\n var importedTiddlers = [];\n // create frame\n var f=document.getElementById("importFrame");\n if (f) document.body.removeChild(f);\n f=document.createElement("iframe");\n f.id="importFrame";\n f.style.width="0px"; f.style.height="0px"; f.style.border="0px";\n document.body.appendChild(f);\n // get document\n var d=f.document;\n if (f.contentDocument) d=f.contentDocument; // For NS6\n else if (f.contentWindow) d=f.contentWindow.document; // For IE5.5 and IE6\n // load source into document\n d.open(); d.writeln(txt); d.close();\n // read tiddler DIVs from storeArea DOM element \n var importStore = [];\n var importStoreArea = d.getElementById("storeArea");\n if (!importStoreArea || !(importStore=importStoreArea.childNodes) || (importStore.length==0)) { return null; }\n importStoreArea.normalize();\n for(var t = 0; t < importStore.length; t++) {\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 var theImported = new Tiddler();\n theImported.loadFromDiv(e,title);\n importedTiddlers.push(theImported);\n }\n }\n return importedTiddlers;\n}\n//}}}\n\n// // ''NON-INTERACTIVE IMPORT''\n\n// // import all/new/changed tiddlers into store, replacing or adding tiddlers as needed\n//{{{\nfunction autoImportTiddlers(src,filter,quiet,ask)\n{\n var count=0;\n if (config.macros.importTiddlers.inbound) for (var t=0;t<config.macros.importTiddlers.inbound.length;t++) {\n var theImported = config.macros.importTiddlers.inbound[t];\n var theExisting = store.getTiddler(theImported.title);\n\n // only import tiddlers if tagged with "importPublic"\n if (theImported.tags && theImported.tags.find("importPublic")==null)\n { config.macros.importTiddlers.inbound[t].status=""; continue; } // status=="" means don't show in report\n\n // never import the "ImportedTiddlers" history from the other document...\n if (theImported.title=='ImportedTiddlers')\n { config.macros.importTiddlers.inbound[t].status=""; continue; } // status=="" means don't show in report\n\n // check existing tiddler for importReplace, or systemConfig tags\n config.macros.importTiddlers.inbound[t].status="added"; // default - add any tiddlers not filtered out\n if (store.tiddlerExists(theImported.title)) {\n config.macros.importTiddlers.inbound[t].status="replaced";\n if (!theExisting.tags||(theExisting.tags.find("importReplace")==null))\n { config.macros.importTiddlers.inbound[t].status="not imported - tiddler already exists (use importReplace to allow changes)"; continue; }\n if ((theExisting.tags.find("systemConfig")!=null)||(theImported.tags.find("systemConfig")!=null))\n config.macros.importTiddlers.inbound[t].status+=" - WARNING: an active systemConfig plugin has been added or updated";\n }\n\n // apply the all/new/changes/updates filter \n if (filter!="all") {\n if ((filter=="new") && store.tiddlerExists(theImported.title))\n { config.macros.importTiddlers.inbound[t].status="not imported - tiddler already exists"; continue; }\n if ((filter=="changes") && !store.tiddlerExists(theImported.title))\n { config.macros.importTiddlers.inbound[t].status="not imported - new tiddler"; continue; }\n if (store.tiddlerExists(theImported.title) && ((theExisting.modified.getTime()-theImported.modified.getTime())>=0))\n { config.macros.importTiddlers.inbound[t].status="not imported - tiddler is unchanged"; continue; }\n }\n\n // get confirmation if required\n if (ask && !confirm("Import "+(theExisting?"updated":"new")+" tiddler '"+theImported.title+"'\snfrom "+src))\n { config.macros.importTiddlers.inbound[t].status="skipped - cancelled by user"; continue; }\n\n // DO THE IMPORT!!\n store.addTiddler(theImported); count++;\n }\n importReport(quiet); // generate a report (as needed) and display it if not 'quiet'\n if (count) store.setDirty(true); \n // always show final message when tiddlers were actually imported\n if (!quiet||count) displayMessage("Imported "+count+" tiddler"+(count!=1?"s":"")+" from "+src);\n}\n//}}}\n\n// // ''REPORT GENERATOR''\n\n//{{{\nfunction importReport(quiet)\n{\n if (!config.macros.importTiddlers.inbound) return;\n // DEBUG alert('importReport: start');\n\n // if import was not completed, the Ask panel will still be open... close it now.\n var askpanel=document.getElementById('importAskPanel'); if (askpanel) askpanel.style.display='none'; \n // get the alphasorted list of tiddlers\n var tiddlers = config.macros.importTiddlers.inbound;\n tiddlers.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=tiddlers.length;\n 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 (tiddlers[t].status)\n {\n if (tiddlers[t].status=='added') added++;\n if (tiddlers[t].status.substr(0,7)=='skipped') skipped++;\n if (tiddlers[t].status.substr(0,6)=='rename') renamed++;\n if (tiddlers[t].status.substr(0,7)=='replace') replaced++;\n if (tiddlers[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 // skip the report if not desired by user\n if (!config.options.chkImportReport) {\n // reset status flags\n for (var t=0; t<count; t++) config.macros.importTiddlers.inbound[t].status="";\n // refresh display since tiddlers have been imported\n store.notifyAll();\n // quick message area summary report\n var msg=(added+replaced+renamed+merged)+' of '+count+' tiddler'+((count!=1)?'s':"");\n msg+=' imported from '+config.macros.importTiddlers.src.replace(/\s\s/g,'/')\n displayMessage(msg);\n return;\n }\n // create the report tiddler (if not already present)\n var tiddler = store.getTiddler('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 var newText = "";\n newText += "On "+now.toLocaleString()+", "+config.options.txtUserName+" imported tiddlers from\sn";\n newText += "[["+config.macros.importTiddlers.src+"|"+config.macros.importTiddlers.src+"]]:\sn";\n newText += "<"+"<"+"<\sn";\n newText += "Out of "+count+" tiddler"+((count!=1)?"s ":" ")+" in {{{"+config.macros.importTiddlers.src.replace(/\s\s/g,'/')+"}}}:\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")+" not imported.\sn";\n if (config.macros.importTiddlers.addTags && config.macros.importTiddlers.newTags.trim().length)\n newText += "imported tiddlers were tagged with: \s""+config.macros.importTiddlers.newTags+"\s"\sn";\n // output the tiddler detail and reset status flags\n for (var t=0; t<count; t++)\n if (tiddlers[t].status!="")\n {\n newText += "#["+"["+tiddlers[t].title+"]"+"]";\n newText += ((tiddlers[t].status!="added")?("^^\sn"+tiddlers[t].status+"^^"):"")+"\sn";\n config.macros.importTiddlers.inbound[t].status="";\n }\n newText += "<"+"<"+"<\sn";\n // output 'discard report' link\n newText += "<html><input type=\s"button\s" href=\s"javascript:;\s" ";\n newText += "onclick=\s"story.closeTiddler('"+tiddler.title+"'); store.deleteTiddler('"+tiddler.title+"');\s" ";\n newText += "value=\s"discard report\s"></html>";\n // update the ImportedTiddlers content and show the tiddler\n tiddler.text = newText+((tiddler.text!="")?'\sn----\sn':"")+tiddler.text;\n tiddler.modifier = config.options.txtUserName;\n tiddler.modified = new Date();\n store.addTiddler(tiddler);\n if (!quiet) story.displayTiddler(null,"ImportedTiddlers",1,null,null,false);\n story.refreshTiddler("ImportedTiddlers",1,true);\n // refresh the display\n store.notifyAll();\n}\n//}}}\n\n// // ''INTERFACE DEFINITION''\n\n// // Handle link click to create/show/hide control panel\n//{{{\nfunction onClickImportMenu(e)\n{\n if (!e) var e = window.event;\n var parent=resolveTarget(e).parentNode;\n var panel = document.getElementById("importPanel");\n if (panel==undefined || panel.parentNode!=parent)\n panel=createImportPanel(parent);\n var isOpen = panel.style.display=="block";\n if(config.options.chkAnimate)\n anim.startAnimating(new Slider(panel,!isOpen,e.shiftKey || e.altKey,"none"));\n else\n panel.style.display = isOpen ? "none" : "block" ;\n e.cancelBubble = true;\n if (e.stopPropagation) e.stopPropagation();\n return(false);\n}\n//}}}\n\n// // Create control panel: HTML, CSS, register for notification\n//{{{\nfunction createImportPanel(place) {\n var panel=document.getElementById("importPanel");\n if (panel) { panel.parentNode.removeChild(panel); }\n setStylesheet(config.macros.importTiddlers.css,"importTiddlers");\n panel=createTiddlyElement(place,"span","importPanel",null,null)\n panel.innerHTML=config.macros.importTiddlers.html;\n store.addNotification(null,refreshImportList); // refresh listbox after every tiddler change\n refreshImportList();\n return panel;\n}\n//}}}\n\n// // CSS\n//{{{\nconfig.macros.importTiddlers.css = '\s\n#importPanel {\s\n display: none; position:absolute; z-index:11; width:35em; right:105%; top:3em;\s\n padding: 0.5em; margin:0em; text-align:left; font-size: 8pt;\s\n background-color: #eee; color:#000000; \s\n border:1px solid black; border-bottom-width: 3px; border-right-width: 3px; -moz-border-radius:1em;\s\n}\s\n#importPanel a { color:#009; }\s\n#importPanel input { width: 98%; margin: 1px; font-size:8pt; }\s\n#importPanel select { width: 98%; margin: 1px; font-size:8pt; }\s\n#importPanel .importButton { padding: 0em; margin: 0px; font-size:8pt; }\s\n#importPanel .importListButton { padding:0em 0.25em 0em 0.25em; color: #000000; display:inline }\s\n#importAskPanel { display:none; margin:0.5em 0em 0em 0em; }\s\n';\n//}}}\n\n// // HTML\n//{{{\nconfig.macros.importTiddlers.html = '\s\n<span style="float:left; padding:1px; white-space:nowrap">\s\n import from source document\s\n</span>\s\n<span style="float:right; padding:1px; white-space:nowrap">\s\n <input type=checkbox id="chkImportReport" checked style="height:1em; width:auto"\s\n onClick="config.options[\s'chkImportReport\s']=this.checked;">create a report\s\n</span>\s\n<input type="file" id="fileImportSource" size=56\s\n onKeyUp="config.macros.importTiddlers.src=this.value"\s\n onChange="config.macros.importTiddlers.src=this.value;">\s\n<span style="float:left; padding:1px; white-space:nowrap">\s\n select:\s\n <a href="JavaScript:;" id="importSelectAll"\s\n onclick="onClickImportButton(this)" title="select all tiddlers">\s\n &nbsp;all&nbsp;</a>\s\n <a href="JavaScript:;" id="importSelectNew"\s\n onclick="onClickImportButton(this)" title="select tiddlers not already in destination document">\s\n &nbsp;added&nbsp;</a> \s\n <a href="JavaScript:;" id="importSelectChanges"\s\n onclick="onClickImportButton(this)" title="select tiddlers that have been updated in source document">\s\n &nbsp;changes&nbsp;</a> \s\n <a href="JavaScript:;" id="importSelectDifferences"\s\n onclick="onClickImportButton(this)" title="select tiddlers that have been added or are different from existing tiddlers">\s\n &nbsp;differences&nbsp;</a> \s\n <a href="JavaScript:;" id="importToggleFilter"\s\n onclick="onClickImportButton(this)" title="show/hide selection filter">\s\n &nbsp;filter&nbsp;</a> \s\n</span>\s\n<span style="float:right; padding:1px; white-space:nowrap">\s\n <a href="JavaScript:;" id="importListSmaller"\s\n onclick="onClickImportButton(this)" title="reduce list size">\s\n &nbsp;&#150;&nbsp;</a>\s\n <a href="JavaScript:;" id="importListLarger"\s\n onclick="onClickImportButton(this)" title="increase list size">\s\n &nbsp;+&nbsp;</a>\s\n <a href="JavaScript:;" id="importListMaximize"\s\n onclick="onClickImportButton(this)" title="maximize/restore list size">\s\n &nbsp;=&nbsp;</a>\s\n</span>\s\n<select id="importList" size=8 multiple\s\n onchange="setTimeout(\s'refreshImportList(\s'+this.selectedIndex+\s')\s',1)">\s\n <!-- NOTE: delay refresh so list is updated AFTER onchange event is handled -->\s\n</select>\s\n<input type=checkbox id="chkAddTags" checked style="height:1em; width:auto"\s\n onClick="config.macros.importTiddlers.addTags=this.checked;">add new tags &nbsp;\s\n<input type=checkbox id="chkImportTags" checked style="height:1em; width:auto"\s\n onClick="config.macros.importTiddlers.importTags=this.checked;">import source tags &nbsp;\s\n<input type=checkbox id="chkKeepTags" checked style="height:1em; width:auto"\s\n onClick="config.macros.importTiddlers.keepTags=this.checked;">keep existing tags\s\n<input type=text id="txtNewTags" size=15 onKeyUp="config.macros.importTiddlers.newTags=this.value" autocomplete=off>\s\n<div align=center>\s\n <input type=button id="importOpen" class="importButton" style="width:32%" value="open"\s\n onclick="onClickImportButton(this)">\s\n <input type=button id="importStart" class="importButton" style="width:32%" value="import"\s\n onclick="onClickImportButton(this)">\s\n <input type=button id="importClose" class="importButton" style="width:32%" value="close"\s\n onclick="onClickImportButton(this)">\s\n</div>\s\n<div id="importAskPanel">\s\n tiddler already exists:\s\n <input type=text id="importNewTitle" size=15 autocomplete=off">\s\n <div align=center>\s\n <input type=button id="importSkip" class="importButton" style="width:23%" value="skip"\s\n onclick="onClickImportButton(this)">\s\n <input type=button id="importRename" class="importButton" style="width:23%" value="rename"\s\n onclick="onClickImportButton(this)">\s\n <input type=button id="importMerge" class="importButton" style="width:23%" value="merge"\s\n onclick="onClickImportButton(this)">\s\n <input type=button id="importReplace" class="importButton" style="width:23%" value="replace"\s\n onclick="onClickImportButton(this)">\s\n </div>\s\n</div>\s\n';\n//}}}\n\n// // refresh listbox\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 (!config.macros.importTiddlers.inbound) \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=config.macros.importTiddlers.listsize;\n return;\n }\n // get the sort order\n if (!selectedIndex) selectedIndex=0;\n if (selectedIndex==0) config.macros.importTiddlers.sort='title'; // heading\n if (selectedIndex==1) config.macros.importTiddlers.sort='title';\n if (selectedIndex==2) config.macros.importTiddlers.sort='modified';\n if (selectedIndex==3) config.macros.importTiddlers.sort='tags';\n if (selectedIndex>3) {\n // display selected tiddler count\n for (var t=0,count=0; t < theList.options.length; t++) count+=(theList.options[t].selected&&theList.options[t].value!="")?1:0;\n clearMessage(); displayMessage(config.macros.importTiddlers.countMsg.format([count]));\n return; // no refresh needed\n }\n\n // get the alphasorted list of tiddlers (optionally, filter out unchanged tiddlers)\n var tiddlers=config.macros.importTiddlers.inbound;\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(tiddlers.length+' tiddler'+((tiddlers.length!=1)?'s are':' is')+' in the document',"",false,false);\n theList.options[i++]=new Option(((config.macros.importTiddlers.sort=="title" )?">":indent)+' [by title]',"",false,false);\n theList.options[i++]=new Option(((config.macros.importTiddlers.sort=="modified")?">":indent)+' [by date]',"",false,false);\n theList.options[i++]=new Option(((config.macros.importTiddlers.sort=="tags")?">":indent)+' [by tags]',"",false,false);\n // output the tiddler list\n switch(config.macros.importTiddlers.sort)\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 var tiddler = tiddlers[t];\n var theSection = tiddler.modified.toLocaleDateString();\n if (theSection != lastSection) {\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 case "tags":\n var theTitles = {}; // all tiddler titles, hash indexed by tag value\n var theTags = new Array();\n for(var t=0; t<tiddlers.length; t++) {\n var title=tiddlers[t].title;\n var tags=tiddlers[t].tags;\n for(var s=0; s<tags.length; s++) {\n if (theTitles[tags[s]]==undefined) { theTags.push(tags[s]); theTitles[tags[s]]=new Array(); }\n theTitles[tags[s]].push(title);\n }\n }\n theTags.sort();\n for(var tagindex=0; tagindex<theTags.length; tagindex++) {\n var theTag=theTags[tagindex];\n theList.options[i++]=new Option(theTag,"",false,false);\n for(var t=0; t<theTitles[theTag].length; t++)\n theList.options[i++]=new Option(indent+indent+theTitles[theTag][t],theTitles[theTag][t],false,false);\n }\n break;\n }\n theList.selectedIndex=selectedIndex; // select current control item\n if (theList.size<config.macros.importTiddlers.listsize) theList.size=config.macros.importTiddlers.listsize;\n if (theList.size>theList.options.length) theList.size=theList.options.length;\n}\n//}}}\n\n// // Control interactions\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 var count=0;\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 config.macros.importTiddlers.inbound=null; // clear the imported tiddler buffer\n refreshImportList(); // reset/resize the listbox\n if (config.macros.importTiddlers.src=="") break;\n // Load document into hidden iframe so we can read it's DOM and fill the list\n loadImportFile(config.macros.importTiddlers.src,"all",null,null,function(src,filter,quiet,ask){window.refreshImportList(0);});\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,count=0; t < theList.options.length; t++) {\n if (theList.options[t].value=="") continue;\n theList.options[t].selected=true;\n count++;\n }\n clearMessage(); displayMessage(config.macros.importTiddlers.countMsg.format([count]));\n break;\n case 'importSelectNew': // select tiddlers not in current document\n importReport(); // if an import was in progress, generate a report\n for (var t=0,count=0; t < theList.options.length; t++) {\n theList.options[t].selected=false;\n if (theList.options[t].value=="") continue;\n theList.options[t].selected=!store.tiddlerExists(theList.options[t].value);\n count+=theList.options[t].selected?1:0;\n }\n clearMessage(); displayMessage(config.macros.importTiddlers.countMsg.format([count]));\n break;\n case 'importSelectChanges': // select tiddlers that are updated from existing tiddlers\n importReport(); // if an import was in progress, generate a report\n for (var t=0,count=0; t < theList.options.length; t++) {\n theList.options[t].selected=false;\n if (theList.options[t].value==""||!store.tiddlerExists(theList.options[t].value)) continue;\n for (var i=0; i<config.macros.importTiddlers.inbound.length; i++) // find matching inbound tiddler\n { var inbound=config.macros.importTiddlers.inbound[i]; if (inbound.title==theList.options[t].value) break; }\n theList.options[t].selected=(inbound.modified-store.getTiddler(theList.options[t].value).modified>0); // updated tiddler\n count+=theList.options[t].selected?1:0;\n }\n clearMessage(); displayMessage(config.macros.importTiddlers.countMsg.format([count]));\n break;\n case 'importSelectDifferences': // select tiddlers that are new or different from existing tiddlers\n importReport(); // if an import was in progress, generate a report\n for (var t=0,count=0; t < theList.options.length; t++) {\n theList.options[t].selected=false;\n if (theList.options[t].value=="") continue;\n if (!store.tiddlerExists(theList.options[t].value)) { theList.options[t].selected=true; count++; continue; }\n for (var i=0; i<config.macros.importTiddlers.inbound.length; i++) // find matching inbound tiddler\n { var inbound=config.macros.importTiddlers.inbound[i]; if (inbound.title==theList.options[t].value) break; }\n theList.options[t].selected=(inbound.modified-store.getTiddler(theList.options[t].value).modified!=0); // changed tiddler\n count+=theList.options[t].selected?1:0;\n }\n clearMessage(); displayMessage(config.macros.importTiddlers.countMsg.format([count]));\n break;\n case 'importToggleFilter': // show/hide filter\n case 'importFilter': // apply filter\n alert("coming soon!");\n break;\n case 'importStart': // initiate the import processing\n importReport(); // if an import was in progress, generate a report\n config.macros.importTiddlers.index=0;\n config.macros.importTiddlers.index=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 (!config.macros.importTiddlers.inbound) { thePanel.style.display='none'; break; }\n importReport(); // if an import was in progress, generate a report\n config.macros.importTiddlers.inbound=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[config.macros.importTiddlers.index];\n for (var j=0;j<config.macros.importTiddlers.inbound.length;j++)\n if (config.macros.importTiddlers.inbound[j].title==theItem.value) break;\n var theImported = config.macros.importTiddlers.inbound[j];\n theImported.status='skipped after asking'; // mark item as skipped\n theAskPanel.style.display='none';\n config.macros.importTiddlers.index=importTiddlers(config.macros.importTiddlers.index+1); // resume with NEXT item\n importStopped();\n break;\n case 'importRename': // change name of imported tiddler\n var theItem = theList.options[config.macros.importTiddlers.index];\n for (var j=0;j<config.macros.importTiddlers.inbound.length;j++)\n if (config.macros.importTiddlers.inbound[j].title==theItem.value) break;\n var theImported = config.macros.importTiddlers.inbound[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 config.macros.importTiddlers.index=importTiddlers(config.macros.importTiddlers.index); // resume with THIS item\n importStopped();\n break;\n case 'importMerge': // join existing and imported tiddler content\n var theItem = theList.options[config.macros.importTiddlers.index];\n for (var j=0;j<config.macros.importTiddlers.inbound.length;j++)\n if (config.macros.importTiddlers.inbound[j].title==theItem.value) break;\n var theImported = config.macros.importTiddlers.inbound[j];\n var theExisting = store.getTiddler(theItem.value);\n var theText = theExisting.text+'\sn----\sn^^merged from: [['+config.macros.importTiddlers.src+'#'+theItem.value+'|'+config.macros.importTiddlers.src+'#'+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 config.macros.importTiddlers.index=importTiddlers(config.macros.importTiddlers.index); // resume with this item\n importStopped();\n break;\n case 'importReplace': // substitute imported tiddler for existing tiddler\n var theItem = theList.options[config.macros.importTiddlers.index];\n for (var j=0;j<config.macros.importTiddlers.inbound.length;j++)\n if (config.macros.importTiddlers.inbound[j].title==theItem.value) break;\n var theImported = config.macros.importTiddlers.inbound[j];\n var theExisting = store.getTiddler(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 config.macros.importTiddlers.index=importTiddlers(config.macros.importTiddlers.index); // resume with THIS item\n importStopped();\n break;\n case 'importListSmaller': // decrease current listbox size, minimum=5\n if (theList.options.length==1) break;\n theList.size-=(theList.size>5)?1:0;\n config.macros.importTiddlers.listsize=theList.size;\n break;\n case 'importListLarger': // 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 config.macros.importTiddlers.listsize=theList.size;\n break;\n case 'importListMaximize': // toggle listbox size between current and maximum\n if (theList.options.length==1) break;\n theList.size=(theList.size==theList.options.length)?config.macros.importTiddlers.listsize:theList.options.length;\n break;\n }\n}\n//}}}\n\n// // re-entrant processing for handling import with interactive collision prompting\n//{{{\nfunction importTiddlers(startIndex)\n{\n if (!config.macros.importTiddlers.inbound) return -1;\n\n var theList = document.getElementById('importList');\n if (!theList) return;\n var t;\n // if starting new import, reset import status flags\n if (startIndex==0)\n for (var t=0;t<config.macros.importTiddlers.inbound.length;t++)\n config.macros.importTiddlers.inbound[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<config.macros.importTiddlers.inbound.length;j++)\n if (config.macros.importTiddlers.inbound[j].title==t) break;\n var theImported = config.macros.importTiddlers.inbound[j];\n var theExisting = store.getTiddler(theImported.title);\n // avoid redundant import for tiddlers that are listed multiple times (when 'by tags')\n if (theImported.status=="added")\n continue;\n // don't import the "ImportedTiddlers" history from the other document...\n if (theImported.title=='ImportedTiddlers')\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 // assemble tags (remote + existing + added)\n var newTags = "";\n if (config.macros.importTiddlers.importTags)\n newTags+=theImported.getTags() // import remote tags\n if (config.macros.importTiddlers.keepTags && theExisting)\n newTags+=" "+theExisting.getTags(); // keep existing tags\n if (config.macros.importTiddlers.addTags && config.macros.importTiddlers.newTags.trim().length)\n newTags+=" "+config.macros.importTiddlers.newTags; // add new tags\n theImported.set(null,null,null,null,newTags.trim());\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.addTiddler(theImported);\n store.setDirty(true);\n }\n return(-1); // signals that we really finished the entire list\n}\n//}}}\n\n//{{{\nfunction importStopped()\n{\n var theList = document.getElementById('importList');\n var theNewTitle = document.getElementById('importNewTitle');\n if (!theList) return;\n if (config.macros.importTiddlers.index==-1)\n importReport(); // import finished... generate the report\n else\n {\n // DEBUG alert('import stopped at: '+config.macros.importTiddlers.index);\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[config.macros.importTiddlers.index].value;\n }\n}\n//}}}\n
/***\n''InlineJavascriptPlugin for ~TiddlyWiki version 1.2.x and 2.0''\n^^author: Eric Shulman - ELS Design Studios\nsource: http://www.TiddlyTools.com/#InlineJavascriptPlugin\nlicense: [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]^^\n\nInsert Javascript executable code directly into your tiddler content. Lets you ''call directly into TW core utility routines, define new functions, calculate values, add dynamically-generated TiddlyWiki-formatted output'' into tiddler content, or perform any other programmatic actions each time the tiddler is rendered.\n!!!!!Usage\n<<<\nWhen installed, this plugin adds new wiki syntax for surrounding tiddler content with {{{<script>}}} and {{{</script>}}} markers, so that it can be treated as embedded javascript and executed each time the tiddler is rendered.\n\n''Deferred execution from an 'onClick' link''\nBy including a label="..." parameter in the initial {{{<script>}}} marker, the plugin will create a link to an 'onclick' script that will only be executed when that specific link is clicked, rather than running the script each time the tiddler is rendered.\n\n''External script source files:''\nYou can also load javascript from an external source URL, by including a src="..." parameter in the initial {{{<script>}}} marker (e.g., {{{<script src="demo.js"></script>}}}). This is particularly useful when incorporating third-party javascript libraries for use in custom extensions and plugins. The 'foreign' javascript code remains isolated in a separate file that can be easily replaced whenever an updated library file becomes available.\n\n''Display script source in tiddler output''\nBy including the keyword parameter "show", in the initial {{{<script>}}} marker, the plugin will include the script source code in the output that it displays in the tiddler.\n\n''Defining javascript functions and libraries:''\nAlthough the external javascript file is loaded while the tiddler content is being rendered, any functions it defines will not be available for use until //after// the rendering has been completed. Thus, you cannot load a library and //immediately// use it's functions within the same tiddler. However, once that tiddler has been loaded, the library functions can be freely used in any tiddler (even the one in which it was initially loaded).\n\nTo ensure that your javascript functions are always available when needed, you should load the libraries from a tiddler that will be rendered as soon as your TiddlyWiki document is opened. For example, you could put your {{{<script src="..."></script>}}} syntax into a tiddler called LoadScripts, and then add {{{<<tiddler LoadScripts>>}}} in your MainMenu tiddler.\n\nSince the MainMenu is always rendered immediately upon opening your document, the library will always be loaded before any other tiddlers that rely upon the functions it defines. Loading an external javascript library does not produce any direct output in the tiddler, so these definitions should have no impact on the appearance of your MainMenu.\n\n''Creating dynamic tiddler content''\nAn important difference between this implementation of embedded scripting and conventional embedded javascript techniques for web pages is the method used to produce output that is dynamically inserted into the document:\n* In a typical web document, you use the document.write() function to output text sequences (often containing HTML tags) that are then rendered when the entire document is first loaded into the browser window.\n* However, in a ~TiddlyWiki document, tiddlers (and other DOM elements) are created, deleted, and rendered "on-the-fly", so writing directly to the global 'document' object does not produce the results you want (i.e., replacing the embedded script within the tiddler content), and completely replaces the entire ~TiddlyWiki document in your browser window.\n* To allow these scripts to work unmodified, the plugin automatically converts all occurences of document.write() so that the output is inserted into the tiddler content instead of replacing the entire ~TiddlyWiki document.\n\nIf your script does not use document.write() to create dynamically embedded content within a tiddler, your javascript can, as an alternative, explicitly return a text value that the plugin can then pass through the wikify() rendering engine to insert into the tiddler display. For example, using {{{return "thistext"}}} will produce the same output as {{{document.write("thistext")}}}.\n\n//Note: your script code is automatically 'wrapped' inside a function, {{{_out()}}}, so that any return value you provide can be correctly handled by the plugin and inserted into the tiddler. To avoid unpredictable results (and possibly fatal execution errors), this function should never be redefined or called from ''within'' your script code.//\n\n''Accessing the ~TiddlyWiki DOM''\nThe plugin provides one pre-defined variable, 'place', that is passed in to your javascript code so that it can have direct access to the containing DOM element into which the tiddler output is currently being rendered.\n\nAccess to this DOM element allows you to create scripts that can:\n* vary their actions based upon the specific location in which they are embedded\n* access 'tiddler-relative' information (use findContainingTiddler(place))\n* perform direct DOM manipulations (when returning wikified text is not enough)\n<<<\n!!!!!Examples\n<<<\nan "alert" message box:\n><script show>\n alert('InlineJavascriptPlugin: this is a demonstration message');\n</script>\ndynamic output:\n><script show>\n return (new Date()).toString();\n</script>\nwikified dynamic output:\n><script show>\n return "link to current user: [["+config.options.txtUserName+"]]";\n</script>\ndynamic output using 'place' to get size information for current tiddler:\n><script show>\n if (!window.story) window.story=window;\n var title=story.findContainingTiddler(place).id.substr(7);\n return title+" is using "+store.getTiddlerText(title).length+" bytes";\n</script>\ncreating an 'onclick' button/link that runs a script:\n><script label="click here" show>\n if (!window.story) window.story=window;\n alert("Hello World!\snlinktext='"+place.firstChild.data+"'\sntiddler='"+story.findContainingTiddler(place).id.substr(7)+"'");\n</script>\nloading a script from a source url:\n>http://www.TiddlyTools.com/demo.js contains:\n>>{{{function demo() { alert('this output is from demo(), defined in demo.js') } }}}\n>>{{{alert('InlineJavascriptPlugin: demo.js has been loaded'); }}}\n><script src="demo.js" show>\n return "loading demo.js..."\n</script>\n><script label="click to execute demo() function" show>\n demo()\n</script>\n<<<\n!!!!!Installation\n<<<\nimport (or copy/paste) the following tiddlers into your document:\n''InlineJavascriptPlugin'' (tagged with <<tag systemConfig>>)\n<<<\n!!!!!Revision History\n<<<\n''2006.06.01 [1.5.1]'' when calling wikify() on script return value, pass hightlightRegExp and tiddler params so macros that rely on these values can render properly\n''2006.04.19 [1.5.0]'' added 'show' parameter to force display of javascript source code in tiddler output\n''2006.01.05 [1.4.0]'' added support 'onclick' scripts. When label="..." param is present, a button/link is created using the indicated label text, and the script is only executed when the button/link is clicked. 'place' value is set to match the clicked button/link element.\n''2005.12.13 [1.3.1]'' when catching eval error in IE, e.description contains the error text, instead of e.toString(). Fixed error reporting so IE shows the correct response text. Based on a suggestion by UdoBorkowski\n''2005.11.09 [1.3.0]'' for 'inline' scripts (i.e., not scripts loaded with src="..."), automatically replace calls to 'document.write()' with 'place.innerHTML+=' so script output is directed into tiddler content. Based on a suggestion by BradleyMeck\n''2005.11.08 [1.2.0]'' handle loading of javascript from an external URL via src="..." syntax\n''2005.11.08 [1.1.0]'' pass 'place' param into scripts to provide direct DOM access \n''2005.11.08 [1.0.0]'' initial release\n<<<\n!!!!!Credits\n<<<\nThis feature was developed by EricShulman from [[ELS Design Studios|http:/www.elsdesign.com]]\n<<<\n!!!!!Code\n***/\n//{{{\nversion.extensions.inlineJavascript= {major: 1, minor: 5, revision: 1, date: new Date(2006,6,1)};\n\nconfig.formatters.push( {\n name: "inlineJavascript",\n match: "\s\s<script",\n lookahead: "\s\s<script(?: src=\s\s\s"((?:.|\s\sn)*?)\s\s\s")?(?: label=\s\s\s"((?:.|\s\sn)*?)\s\s\s")?( show)?\s\s>((?:.|\s\sn)*?)\s\s</script\s\s>",\n\n handler: function(w) {\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 if (lookaheadMatch[1]) { // load a script library\n // make script tag, set src, add to body to execute, then remove for cleanup\n var script = document.createElement("script"); script.src = lookaheadMatch[1];\n document.body.appendChild(script); document.body.removeChild(script);\n }\n if (lookaheadMatch[4]) { // there is script code\n if (lookaheadMatch[3]) // show inline script code in tiddler output\n wikify("{{{\sn"+lookaheadMatch[0]+"\sn}}}\sn",w.output);\n if (lookaheadMatch[2]) { // create a link to an 'onclick' script\n // add a link, define click handler, save code in link (pass 'place'), set link attributes\n var link=createTiddlyElement(w.output,"a",null,"tiddlyLinkExisting",lookaheadMatch[2]);\n link.onclick=function(){try{return(eval(this.code))}catch(e){alert(e.description?e.description:e.toString())}}\n link.code="function _out(place){"+lookaheadMatch[4]+"};_out(this);"\n link.setAttribute("href","javascript:;"); link.setAttribute("title",""); link.style.cursor="pointer";\n }\n else { // run inline script code\n var code="function _out(place){"+lookaheadMatch[4]+"};_out(w.output);"\n code=code.replace(/document.write\s(/gi,'place.innerHTML+=(');\n try { var out = eval(code); } catch(e) { out = e.description?e.description:e.toString(); }\n if (out && out.length) wikify(out,w.output,w.highlightRegExp,w.tiddler);\n }\n }\n w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;\n }\n }\n} )\n//}}}\n
Running around in the dawn with that hat\nI can see I am no match for you\nDoin the foxtrot on your knees Garbo Girl\nIt's so hard to contemplate you\n'Cos you're so full of interstellar soul\n'Cos you're so full of interstellar soul\n\nThat rich ditch won't catch me girl but it sculpted you\nSilk and Diamond gilded gauntlet can be weird\nBut I'm scared to look like you\n'Cos you're so full of interstellar soul\n'Cos you're so full of interstellar soul\n\nLean on my head kiss my knee breathe again\nBumble bee in my ear see a tear but it's solid and gold\nI don't want to get like you\n'Cos you're so full of interstellar soul\n'Cos you're so full of interstellar soul\nSo full of interstellar soul
Is it love? \nIs it love? \nIs it love that makes us rock? \nWe're gonna rock \n \nWe're gonna rock with love \nIs it love \nThat makes us rock?
A box of doves \nI placed beside your chest \nLiar \nA stork of silk \nWith rubies in it's nest \nFire \nOf my love \nWill burn thee to a wizened word \nFor ere to go unheard. \n\nA mare of wood \nElder, elm and oak \nLiar \nWill keep you fair \nIf you jest me no joke \nFire \nOf my love \nWill burn thee to a wizened word \nFor ere to go unheard. \n\nI'm old and bruised \nBut my fate is that of youth \nLiar \nTrickster you \nBe a grisly dragon's tooth \nFire \nOf my love \nWill burn thee to a wizened word \nFor ere to go unheard. \n\nYou gashed the heart of my heart \nLike a Potuguese \nWitch, I'd planned for you this land \nBut you devoured my hand
2nd Guitar with [[T.Rex]] 1973 ~ 1974?
Jasmine 49 baby,\nis a number that ain't mine.\nDrinking scented tea,\nwith someboy on your knee\nand that somebody ain't me, no.\nJasmine 49,\nis a number that is fine.\nJasmine 49 baby,\nis a number that ain't mine.\n\nJasmine 49 baby,\nis a number that ain't mine\nAnd don't let it ever be said,\nThat I'm crazy in the head,\nFrom drinking scented tea,\nwith nobody else but me, and\nJasmine 42,\nis a number I gave to you.\nJasmine 43 babe,\nis a number you gave to me.\n\nJasmine 49 baby,\nis a buzz that's so divine.\nAnd I can't think of anybody less inclined,\nTo go out and blow their mind\nand realize everything that they do\nand fantasize everything that's true.\nJasmine 49 baby,\nis a buzz that's so d-d-d-divine.\nJasine 49 babe,\nis a buzz that just ain't mine.
Jason!!!\n\nJason B. Sad was a lonely lad\nHis head was a bed for everyone\nHis clothes was his life but his heart was a knife\nInscribed on it was "rock 'n' roll is cruel"\n\nTake me to school boy leave me alone boy\nSlice me a bone of the Universe\nTake me to school boy leave me alone boy\nSlice me a bone of the Universe\n\nJason got weird and he pierced his ears\nA gypsy alone in his gallantry\nHe met Shaky Sue who wore only blue\nAnd they shared in their teenage misery\n\nThen Jason read books and wore hard looks\nHe swapped Sue for an artisan\nHis winters were long and a fantastic song\nGrew from his head like a marigold
+++[Info]\nb-side [[Hippy Gumbo]] and [[The Perfumed Garden Of Gulliver Smith]]\n===\n\n\nJasper was fine but he had glass eyes\nHe crucified me with his pixie coloured lies\nHis hair was black, he had a bend in his back\nHe tied my cousin Eddy to the railroad tracks\nThe train it come, he started to run\nJasper C. Debussy that's his kind of fun\nJasper was born with a moth in his mind\nThe moth was too soft on the curtain behind\nHe startled the face of a friend of my girl's\nHe cut out her eyes and he wore them with furs\nI get half the dues, wear my shoes\nTonight you might laugh while crying the news\n'Cos Jasper C. Debussy, that's his kind of blues\n\nMama\n\nJasper he dressed in the darkest of clothes\nHe wears scarlet pantaloons and five foot one inch hose\nHis face is like a rock and his eyes like the night\nHe's like a grim faced dog that's looking for a fight\nSilhouette looks like a furry Persian rat\nWhen you see him coming mama, you'd better run\nBecause Jasper C. Debussy that's his kind of fun
+++[Info]\nb-side [[Life's A Gas]]\n===\n\nYou're so sweet \nYou're so fine. \nI want you all and everything \nJust to be mine \n\n'Cos you're my babe \n'Cos you're my love \nGirl I'm just a jeepster \nFor your love\n \nYou slide so good \nWith bones so fair \nYou've got the universe \nReclining in your hair \n\nJust like a car \nYou're pleasing to behold \nI'll call you Jaguar \nIf I may be so bold \n\nThe wild winds blow \nUpon your frozen cheek\nThe way you flip your hip \nIt always makes me weak \n\nYour motivation \nIs so sweet \nYour vibrations \nAre burning up my feet \n \nGirl I'm just a jeepster \nFor your love \nGirl I'm just a vampire \nFor your love \n\nI'm gonna suck you!
I've got a little babe \nWith jewels upon her lip \nI've got a little babe \nWith jewels upon her lip \nHer hair's like ariver \nIt's fast and slowly drips \n\nShe bathes in thunder \nThe elves are under her \nShe walks the wind \nAnd has a panther \nWith silver fur \n\nHer thoughts are gold \nHer eyes electric blue \nHer thoughts are gold \nHer eyes electric blue \nShe sleeps upon the dreams \nOf me and you.
+++[Info]\na-side [[Children Of The Revolution]]\n===\n\nWe've got to get together\nWe've got to get together\nOh yes we have\nOh yes we have\nBecause jitterbug love\nIs going all around\nJitterbug love is going all around now\nHere it comes again\nWe'll rock and roll together\nWe'll even stroll together\nOh yes we will\nOh yes we will
Bolan played guitar and sang backing vocals for this band during 1967. He wrote the following while in the band:\n\n
There's a crawling sensation\nAn Astral vibration\nThat's sucking me into your sight\nI can tell by your hair\nIn the juniper chair\nAnd the piraty twist of your mouth\nI've constructed your frame\nIn a plasticine game\nAnd your eyes are the sweets of my youth\nBut I'm naked and bare in the ice of your stare\nAnd I'm useless at telling the truth\nSo I hide with my head in the tent of the bed\nAnd my body is sucked through your eyes\nThen I quiver and shiver and start to deliver the goods\nThen I vanish in size
Who ever said that you could dance now baby\nWho ever said he was a liar\nWho ever said that you could dance now baby\nWho ever said he was a liar\nWould you lie to me oh yeah oh yeah \n\nWho ever said that you could move now baby\nWho ever said he was a liar\nWho ever said that you could move now baby\nWho ever said he was a liar\nWould you lie to me oh yeah oh yeah \n\nYou are my love\nYou are my baby\nYou are my love\nYou are my girl
+++[Info]\nb-side [[Do You Remember]]\n===\n\nLight all the fires \nIt's the King of the Rumbling Spires\nLight all the fires \nIt's the King and he's coming home wo-ow \n\nWe're so windy fair \nPortrait of my young soul \nMighty eagles pair \nOn the peace of your hair\n\nLight all the fires, \nIt's the King of the Rumbling Spires\nLight all the fires, \nIt's the King and he's coming home wo-ow\n\nDoi doi doi...
Du-duluddle, luddle, dau dau \nDu-duluddle, luddle, dau, dau \nDu-duluddle, luddle, dau dau \nDu-duluddle, luddle, dau, dau \nOw \n\nThe King of the Mountain cometh \nOn his arm there was a dove \nIn livery green and tapestry clean \nHe called it his Falcon of Love, oh yeah \nCalled his Falcon of Love \n\nDu-duluddle du doh \nDu-duluddle, luddle, dau dau \nDu-duluddle, luddle, dau, dau \nDu-duluddle, luddle, dau dau \nDu-duluddle, luddle, dau, dau \nAhhh \n\nThe Mage of the Midnight Abbey \nWas a child of fifteen years \nHis eyes were bored with galactic lore \nHe had points upon his ears, oh yeah \nPoints upon his ears \n\nDu-duluddle du doh \nDu-duluddle, luddle, dau dau \nAhhh\n \nThe Wild-Witch Wizard Alisha \nWas a changeling son from Mars \nHe learned his song from the Cosmic Throngs \nAnd played them on a Fender guitar, oh yeah \nAnd played them on a Fender guitar \n\nDu-duluddle du doh \nDu-duluddle, luddle, dau dau\nAhhh\n\nThe woman from the Plateaus of Persia \nCame to sell me a wonderous thing \nIn a horn of oak with a sulpherous smoke \nShe gave me King Solomon's Ring, oh yeah \nGave me the magical thing \n\nDu-duluddle, luddle, dau dau \nDu-duluddle, luddle, dau, dau \nDu-duluddle, luddle, dau, dau \nOw \n\nThe King of the Mountain cometh \nOn his arm there was a dove \nIn livery green and tapestry clean \nHe called it his Falcon of Love, oh yeah \nCalled his Falcon of Love\n\nDu-duluddle, luddle, dau dau \nDu-duluddle, luddle, dau, dau
Night comes down just like a giant umbrella\nSlows me down, got to get it together\n\nSaxophone sage plays upon her doorstep\nEvening's lies are dying all around him\n\nHead of plumes and crimson ostrich feathers\n8th Hussars' manners gush out of my bloodstream, my queen\nClad in drag of oriental beggar\nJu-ju beads holding me all together\n
+++[Info]\na-side [[Metal Guru]]\n===\n\n\nLady, like-a-like a lady\nLike I'm gonna give all my love to you\nLady, like-a-lady a lady\nLike I'm gonna dance in the rain for you\n\nGotta feel it mama, gotta feel it mama\nGotta dream it mama, yeah-yeah\n\nShakin' my bones are achin'\nI'm like a scampering train for you\nBaby, like-a-like a baby\nLike I'm gonna give all my pain to you\n\nGotta feel it mama, gotta feel it mama\nGotta dream it mama, yeah-yeah\n\nLady, lady, lady\nLike-a-like a lady\nLike-a-like a lady \nlike-a-like a lady
+++[Info]\nb-side [[Life's An Elevator]]\n===\n\n\nGold mouth lady mix a drink for me\nLay beside me a solid company\nYou move on up, you move on back\nYour laser love is like a heart attack\n\nLean clean woman lay a kiss on me\nMy love is strong like a raging sea\nYou move on up, you move on back\nYour laser love is like a heart attack\n\nDance dance dance till the crack of dawn\nDance dance dance till your shoes are worn\nYou move on up, you move on back\nYour laser love is like a heart attack\n\nYou move on up, you move on back\nYour laser love is like a heart attack
O Lean love \nAll you give to me \nIs lean love \nI'm like a beggar in the sand \nWith the sky in his hand \nAnd I'm blue \n\nO black day \nAll you give to me \nAre your wild ways\nWell you're the love of my life \nAnd then you gorge me with a knife \nAnd I'm blue, that's untrue \n\nLightening \nAll the heavy world \nIs frightening \nI'm talking to you \nI'm like a child in the sand \nOn the beach of the land of you \nAnd i'm blue \nOh I'm your friend\nDig your head
Call yourself friend and look me in the eye\nI'll unstrap my knees and apologise\n'Cos I'm Left Hand Luke and The Begger Boys\nO yes we are\n\nAin't no neighbours upon our hill\n'Cept slight thigh Be-bop and old gumbo Jill\nBut I'm Left Hand Luke and The Begger Boys\nO yes we are\n\nAin't nobody's someone\nAnd it hurts deep inside\nJust call us a taxi mama and we'll take you for a ride\n'Cos we're Left Hand Luke and The Begger Boys\nO yes we are\n\nI'm Left Hand Luke and The Begger Boys\nO yes we are\n\nMyxomatosis is an animal's disease\nBut I got so shook up mama that it ate away my knees\nAnd I'm Left Hand Luke and The Begger Boys\nO yes we are\n\nAin't had no money Lord but it's plain to see\nIf you had some silver mister how much would you pay for me\n'Cos I'm, left hand luke and the begger boys\nO yes we are
Strange life is strange life is strange\nOh life is strange\n\nO god life is strange,\nPeople come and people go\nSome move fast and some move slow\nNo no no no \n\nO god life is good\nSome are fat and some are thin\nSome won't even ask you how you've been\nNo no no no\n \nStrange life is strange life is strange\nOh life is strange\n\nOh God life is strange\nSome are fast and some are slow\nSome believe me don't even know\nNo no no no\n\nStrange life is strange\nLife is strange\nOh my life is strange
+++[Info]\na-side [[Jeepster]]\n===\n\nI could have loved you girl \nLike a planet \nI could have chained your heart\nTo a star\n\nBut it really doesn't matter at all\nNo it really doesn't matter at all\nLife's a gas\nI hope it's gonna last\n\nI could have built a house \nOn the ocean \nI could have placed your love \nIn the sky \n\nI could have turned you \nInto a priestess\nI could haved burned \nYour fate in the sand
+++[Info]\na-side [[Laser Love]]\n===\n\nSat with a cat on your head alone at last\nYou cry with a sigh resurrecting all your past\n\nLife's an elevator it goes up and down\nLife's an elevator can't you dig the sound?\n\nSwift is the kill shadows fill the empty walls\nWild is the word that engulfs the sacred halls\n\nLife's an elevator it goes up and down\nLife's an elevator can't you dig the sound?\n\nScenes from your past spread before the flaming dawn\nHave faith in the hearts of the world they're rocking on\n\nLife's an elevator it goes up and down\nLife's an elevator can't you dig the sound?\n
+++[Info]\nb-side [[Explosive Mouth]]\n===\n\n\nLa la la la\nLa la la la\nLa the light of love \n\nOh light of love\nWon't you shine on me\nWon't you shine on me\nLight of love\n\nOh won't you burn,\nWon't you burn for me\nWon't you burn for me\nThe light of love\n\nThe light of love\nIt won't shine\nIt won't shine for me.. yeah\n\nOh the light of love\nWon't you let it shine\nWon't you let it shine\nThe light of love\n\nOh the fire of love,\nWon't you let it burn,\nWon't you let it burn,\nThe light of love\n\nOh light of love\nWon't you shine for me\nWon't you shine for me\nThe light of love
Spreading lies and advertising,\nRunning with the gang,\nYou gotta go.\n\nSpreading lies and advertising,\nRunning with the gang,\nYou gotta go.\n\nMove like a warrior.\nYou talk like a warrior.\nBut P.U.N.K. spells punk.\n\nMove like a warrior.\nYou talk like a warrior.\nBut P.U.N.K. spells punk\n\nAnd junk
At the birth of the day \nAs a babe of the spray \nLike a white star, tangled and far, \nTulip that's what you are. \n\nWarm and wise as a mute \nIn the thunderbolt suit \nPrincely and torn, grasping the horn \nOf the meanads of May. \n\nSleepy dreaming of dark \nSilver Satyrs in parks \nStatues that say, worship the day \nFor only humans you are. \n\nChannels churning the grime \nInky dreams of our time \nInto the Sun, where the white one \nPoems them into a rhyme. \n\nOn a hill the clear shrill \nMade the Titans most ill \nAngels abound, and I kissing the ground \nThrilled to be around \n\nVineyards spangled with love \nFor the white dove above \nGreen and lean from the waste \nOf the pastures of chaste \nPreciously he is whole. \n\nTwinkled eyes like a king \nCharted seas on your skin \nLike a White Star, tangled and far, \nTulip that's what you are.
[img[TillDawn Logo|http://www.tilldawn.net/images/tdlogo.gif][http://www.tilldawn.net/]]\n[[TillDawn Organisation|http://www.tilldawn.net/]]\n\n@@color:red;T@@he @@color:red;O@@fficial @@color:red;M@@arc @@color:red;B@@olan Resource Centre [[The TOMB|http://www.tilldawn.net/tomb.html]] - you really don't need any other links... if you can't find it in [[The TOMB|http://www.tilldawn.net/tomb.html]], it probably doesn't exist.
It's gonna be grand when you take \nThe hand of the liquid gang oh yeah\nPeter with the heater he's such a messy eater\nHe's got frogs in his eyes from telling those lies\nSunday's almost Monday and you gotta understand\nIt's gonna be grand when you take \nThe hand of the liquid gang oh yeah\n\nShelly 's silver belly she's got me on the telly\nDown with the dog he's a rockabilly yob\nThe kids are young, but thats how we begun\nYou gotta understand when you take \nThe hand of the liquid gang oh yeah\n\nYou're gonna be grand\nYou're gonna be grand\nYou're gonna be grand\nYou're gonna be grand \n\nPaladin heat with the dancing feet\nRides a two tone bike he does what he likes\nBut my head is alright but you're out of sight\nBut you gotta understand when you take \nThe hand of the liquid gang oh yeah
Sat 'neath the eyes of the lofty skies \nWe were chained by the rain to the pain of our love \nWe kissed and cried \nHeld 'neath the bars of the tangling stars \nWe were pinned by the might of the warrior night \nWe kissed and cried. \nO this time of love moves me.
+++[Info]\nb-side [[Solid Baby]]\n===\n\nOh yea we're the London boys\nOh yea we're the London boys\nOh yea we're the London boys\nOh yea we're the London boys\n\nDo you remember\nGoing to Petticoat Lane\nWith all the conceptions\nMoving in your brain\n\nOh yea we're the London boys\nOh yea we're the London boys\nDon't you remember that we're just the London boys\nOh yea we're the London boys\n\nMighty mean mod king\nDressed like fame\nLondon to Brighton\nAnd then back again\n\nChanging life's patterns\nTo get to the top\nAnd when you get up there\nYou don't know if you're there or what\n
Played piano for [[T.Rex]] on [[Teenage Dream]]?
Disco, Oh.\n\nGuy, I get high,\nWhen I see you.\nI want you down,\nIn my basement.\n\nWhen I hold you in my arms,\nGirl, you act like a love chant.\n\nWhen I hold you in my arms,\nBoy, you act like a love chant.\n\nGuy, I get high,\nWhen I see you.\nI want you down,\nIn my basement.\n\nWhen I hold you in my arms,\nBoy, you feel like a love chant.\n\nWhen you hold me in your arms,\nBoy, you feel like a love chant.\n\nLove chant
In my room, alone at night.\nHow can I conceal my sorrow.\nShattered dreams in micro-heated beams means love.\nI'm a love drunk.\n\nFrozen days, the old extended plays of,\nElvis Presley and that funky old Hound Dog.\nFaded pics and misty twisty kicks spell "love",\nI'm a love drunk.\n\nDrunk on love, so drunk,\nI'm a love drunk.\nDrunk on love, so drunk,\nI'm a love drunk.\n\nI'm a love drunk.\n\nI'm a love drunk.\nDrunk on love, so drunk,\nI'm a love drunk.\nDrunk on love, so drunk,\nI'm a love drunk.\n\nFrozen days, the old extended plays of,\nElvis Presley and that funky old Hound Dog.\nFaded pics and misty twisty kicks spell "love",\nI'm a love drunk.\n\nDrunk on love, so drunk,\nI'm a love drunk.\nDrunk on love, so drunk,\nI'm a love drunk.\nDrunk on love, so drunk,\nI'm a love drunk.\nDrunk on love, so drunk,\nI'm a love drunk.
\nLunacy's back (Loony).\nLunacy's back (Loony).\nLunacy's back (Loony).\nLunacy's back.\n\nLunacy's back with his pony and trap\nand his big mouth.\nHe's asked through the years with his tears and his fears,\nin a hen house.\nHung on a star, his cigar is suspended,\nfrom his lips.\n\nHis coat is a moat and his bread is the lead,\nthat keeps him there.\nBizarre is chilled in a drawer in the deep,\nsheets of his bed.\nHis hair is the hat reaches up from a ,\nmat made of yeti.\n\nHis drinks are all laced with the liquid dye traces,\nof his love.\nLunacy hid in the skin of,\na gasoline rainbow.\nIs where he was claimed as a trainee,\nexplainer of madness.\nHe melted a picture from,\nsane peoples bubbles,\nWhen that sunny-eyes lightning,\nexplaining their troubles.\nBut their faces where puddles,\nreflecting their true Venusian doubles.\n\nLunacy's back (Loony).\nLunacy's back (Loony).\nLunacy's back (Loony).\nLunacy's back.
I'm a foxy man don't you understand,\nWould take a rocket ship \nto let me get my thighs on you\n\nI'm gonna change Mad Donna\nl'm gonna change Mad Donna\nI'm gonna change Mad Donna for you\n\nIn a coach of blue I'm gonna love you too\nLike the gods of old I'm gonna get my teeth into you\n\nI'm gonna change Mad Donna\nI'm gonna change Mad Donna\nI'm gonna change Mad Donna for you\nLord l'm gonna change\n\nI'm a foxy man don't you understand\nLike the gods of old I'm gonna get my mouth on you\n\nI'm gonna change Mad Donna\nI'm gonna change Mad Donna\nI'm gonna change Mad Donna for you
When a man is a man, he's destructive\nWhen a man is a man, he's seductive\nWhen a woman is a sensitive thing\nWhen a woman is a woman, he's a madman\n\nMadman - Madman- Madman - Madman\n\nWhen a man is a friend, he's a stranger\nWhen a man is a man, he's no angel\nWhen a woman is a sensitive thing\nWhen a woman is a woman, he's a madman\n\nMadman - Madman - Madman - Madman
Are you my main man\nAre you now are you now\nAre you my Main Man\nAre you now are you now\nAre you now\n\nAre you a God man\nAre you now are you now\nAre you a frog man\nAre you now are you now are you now\n\nHeaven is hot babe\nEverso everso\nHeaven is hot babe\nWatch it glow watch it glow\nWatch it glow\n\nBolan likes to rock now\nYes he does yes he does\nBolan likes to rock now\nYes he does yes he does\n\nIs there a sane man\nAnywhere anywhere\nGot giraffes in my hair\nAnd I don't hair\nNo I don't care no I don't care\n\nAs a child I laughed a lot\nO yes I did O yes I did\nNow it seems I cry a lot\nO tell me true don't you
\n[[Singles|Singles - Chronological Order]]\n[[Albums|Albums - Chronological Order]]\n\n[[How To ...|How To Find A Song]]\n\n\n@@font-size:8pt;[[Links]]@@\n\n[[Contact]]\n\n[[FAQ|The VideoDRAMA II FAQ]]\n\n
Beneath the bebop moon \nI want to croon with you \nBeneath the Mambo Sun \nI got to be the one with you. \n\nMy life's a shadowless horse \nIf I can't get across to you \nIn the alligator rain \nMy heart's all pain for you. \n\nGirl you're good \nAnd I've got wild knees for you \nOn a mountain range \nI'm Dr. Strange for you. \n\nUpon a savage lake \nMake no mistake I love you \nI got a powder-keg leg \nAnd my wig's all pooped for you. \n\nWith my hat in my hand \nI'm a hungry man for you \nI got stars in my beard \nAnd I feel real weird for you \n\nBeneath the bebop moon \nI'm howling like a loon for you \nBeneath the Mambo Sun \nI've got to be the one for you
The main man...\n\n[img[http://static.flickr.com/70/217709328_6446f86360.jpg?v=0]]\n\n+++[Songs credited 'Marc Bolan']\n<<forEachTiddler \n where \n 'tiddler.tags.contains("Marc Bolan")'\n>>\n===\n\n
[[Marc|Marc Bolan]] used ''Mark'' and [[Howard Kaylan]] as backing vocalists on [[Electric Warrior]].
<link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml'>\n\n<style type="text/css">#contentWrapper {display:none;}</style><div id="SplashScreen" style="border: 3px solid #ccc; display: block; text-align: center; width: 420px; margin: 100px auto; padding: 50px; color:#000; font-size: 28px; font-family:Tahoma; background-color:#eee;"><b>VideoDRAMA II</b><br />The Ultimate<br />Marc Bolan and T-REX<br />Song and Lyric Database<br /> is loading<blink> ...</blink><br><br><span style="font-size: 14px; color:red;">Requires Javascript.</span></div>
I want some mellow love,\nMellow love I want it.\nI want some mellow love,\nMellow love I want it.\nI want some love.\nI want some love.\nI want some mellow love,\nMellow love I want it.\n\nDon't want no zero chick.\nNo zero chick to love me.\nDon't want cosmetic stick.\nJust want someone to hug me.\nI want some love.\nI want some love.\nI want some mellow love.\n\nTake me girl.\nMake me girl.\nI'll be the only one you need.\nTake me girl.\nMake me girl.\nI'll be the only one you need.\n\nMellow love.\n\nI want some love.\nI want some love.\nI want some mellow love.\n\nI want some mellow love,\nMellow love I want it.\nI want some mellow love,\nMellow love I want it.\nI want some love.\nI want some love.\nI want some mellow love.\n\nTake me girl.\nMake me girl.\nI'll be the only one you need.\nTake me girl.\nMake me girl.\nI'll be the only one you need.\nMellow love.\nTake me girl.\nMake me girl.\nI'll be the only one you need.\nMellow love.\nTake me girl.\nMake me girl.\nI'll be the only one you need
+++[Info]\nPosthumous release.\nRecorded 1977\n===\n\n\nWell, I've been messing with the mystic,\nBut the mystic just brought me tears.\n\nI've been messing with the mystic,\nBut the mystic just brought me tears.\n\nI've been messing with the mystic\nAnd it brought me tears.\nI'm searching for a girl,\nTo get me through the years.\n\nI've been messing with the mystic,\nBut the mystic just brought me tears.\n\nI've been messing with the mystic,\nBut the mystic just brought me tears.\n\nI've been messing with the mystic,\nBut the mystic just brought me tears.\n\nI've been messing with the mystic\nAnd it brought me tears.\nI'm searching for a girl,\nTo get me through the years.\n\nI've been messing with the mystic,\nBut the mystic just brought me tears.
+++[Info]\nb-sides [[Thunderwing]] and [[Lady]]\n===\n\n\nMetal Guru is it you? \nMetal Guru is it you? \nSitting there in your armour-plated chair\n \nMetal Guru is it true? \nMetal Guru is it true? \nAll alone without a telephone \n\nMetal Guru could it be? \nYou're gonna bring my baby to me \nShe'll be wild you know \nA rock'n'roll child \n\nAh Ah Ah Ah...\n\nMetal Guru has it been \nJust like a silver-studded\nSabre-toothed dream \nI'II be clean with no pollution machine \n\nMetal Guru is it you\nMetal Guru is it you \nMetal Guru is it you\nyeah yeah yeah\nMetal Guru is it you\nyeah yeah yeah\n
+++[Info]\nPart of the unfinished [[Billy Super Duper]] project (?)\n===\n\n\nOh, teenage angel.\nOh, teenage child.\nOh, teenage angel,\nDon't you know you're gonna drive me wild.\nYou're gonna drive me wild.\n\nOh, juvenile delinquent.\nOh, juvenile dude.\nOh, juvenile delinquent.\nWhat's in your head? What is your food?\nWhat is your food?\n\nOh, teenage angel.\nOh, teenage child.\nOh, teenage angel,\nDon't you know you're gonna drive me wild.\nYou're gonna drive me wild.\nYeah.\n\nIยดm not a juvenile delinquent.\nIยดm not a juvenile delinquent.\nIยดm not a juvenile delinquent.\nIยดm not a juvenile delinquent.\n\nYou got me shake it mama,\nIf you see it, take it mama.
\nPercussionist - 1970 ~ 1975 - first with [[Tyrannosaurus Rex]] (having taken over from [[Steve Peregrin Took]]) and later [[T.Rex]].\n\n
+++[Info]\na-side [[The Groover]]\n===\n\nBaby, I need you\nOh yeah I need you\nWhy don't you love me like you used to\nI'll dance till midnight\nI'll dance till midnight\nWhy were you so uptight?\nBaby, I miss you\nOh yes, I kissed you\nWhy don't you love me like you used to\nI'll dance till midnight\nLast chance till midnight\nI'll dance till midnight\nLast chance till midnight\nI'll dance till midnight wow\n
+++[Info]\nb-side [[Sara Crazy Child]]\nWithdrawn single - No official release (A few promo copies exist).\n===\n\nPetals and flowers\nPetals and flowers\nPetals and flowers\nIn the park getting dark eating the heat\nthere's an eye in the sky melting your feet\nyou see a chick who starts to nick the petals and flowers\nShe starts to joke and then provoke the dance of the hours\nIt's all down to a midsummer's night scene\nIt's all down to a Shakespearean dream\nGet her face there's a place disfigured with love\nHer hands are white like the night encased in a glove\nShe starts to swing and watches you nick petals and flowers\nShe starts to joke and then evokes the dance of the hours\nIts all down to a midsummer's night scene\nIts all down to a Shakespearean dream\nIts all down to a midsummer's night scene\nIts all down to a Shakespearean dream.\n
2nd Guitar with [[T.Rex]] 1976 ~ 1977
+++[Info]\na-side [[Hippy Gumbo]]\n===\n\n\nSurplus store misfit\nI don't wanna quit\ntoo many times I chickened\nand just split.\n\nBill the little misfit\nI don't wanna see\npop out picyures\nof you and maybe me.\n\nBaby why don't you\nscream and split\nI cant break away\nI just seen the light.\n\nWimpy bar misfit\nI don't wanna be\nlike Billy the kid\nleft hangin' from no tree.\n\nStrung along misfit\nI don't wanna see\npeople put you down\nand all I wanna be is free.\n\nWater bed misfit\nI don't wanna be\nused and ridden and hidden\nmost mysteriously.\n\nScary little misfit\nI don't wanna see\nevery scene tha's been\nand every scene that's liable to be.\n\nWhy don't you\njust scream and split\ncos I can' break away\nI just seen the light.
Mister mister mister I'm just looking for a change in my luck\nMister mister mister I'm just looking for a change in my luck \nLooking for a change\n\nBaby baby baby I'm just looking with my eye to the sky\nBaby baby baby i'm just looking with my eye to the sky\nWith my eye to the sky\n\nLooking\nI'm gonna keep on looking babe\nKeep on looking\nI'm gonna keep on looking babe\nFor a change\n\nSister sister sister I'm just looking for a change in my love \nSister sister sister I'm just looking for a change in my love\nLooking for a change\n\nLooking\nI'm gonna keep on looking babe\nKeep on looking\nI'm gonna keep on looking babe\nFor a change\n\nDiddie bon bon Diddie bon bon
Mister Motion, he made a lotion,\nThat made him owner of the sky\nand commander of the ocean.\nMotion, he was a bad guy.\nHe went from head to head injecting lead,\nWith seeds of deadly nightshade.\n\nUh diddle do diddle do Motion.\nUh diddle do diddle do.\n\nMister Motion, he hated flowers,\nHe hated Peter Pan and Desperate Dan\nand silver summer showers.\nMotion, he was a bad guy,\nHe went from head to head injecting lead,\nWith seeds of deadly nightshade.\n\nUh diddle do diddle do Motion.\nUh diddle do diddle do.\nSock it to me mama.\n\nMotion.\n\nMister Motion, he made a lotion,\nThat made him owner of the sky\nand commander of the ocean.\nMotion, he was a bad guy.\nHe went from head to head injecting lead,\nWith seeds of deadly nightshade.\n\nUh diddle do diddle do Motion.\nUh diddle do diddle do.\n\nMister Motion, he made a lotion,\nThat made him owner of the sky\nand commander of the ocean.\nMotion, he hated flowers,\nHe hated Peter Pan and Desperate Dan\nand silver summer showers.\n\nUh diddle do diddle do Motion.\nUh diddle do diddle do Motion.\nUh diddle do diddle do Motion.\nUh diddle do diddle do.\nMotion Yeah.\n\nSing my song, it won't take long,\nI wanna tell you baby,\n'bout a how to.... bang your gong
Highways mine the Mountains of the Moon (Moon).\nMidnight is a sound singing Cupid's tune (tune).\nOnly seeing is believing in the Temple of the Sun (Sun),\nWhere silver swords dug a misty morning sun (sun).\n\nJump as sunlight skims the sky.\nDownstairs radiation burns my eyes (eyes).\nDarkness is a sound of the morning sun\nAnd the misty mist despoils the morning fun.\nFarewell lost love, Black-gloved Woman known,\nTo the Prince of Lies, as a metal stone.\nThe friend sees us smile, he smiles to the two.\nIn the misty mist encircles both me and you.
The throne of time \nIs a kingly thing \nFrom whence you know \nWe all do begin \nAnd dressed as you are girl \nIn your fashions of fate \nBaby it's too late. \n\nShallow are the actions \nOf the children of men \nFagged was their vision \nSince the ages began \nAnd lost like a lion \nIn the canyons of smoke \nGirl it's no joke.
I love the way you walk \nDon't yo know you're a cool motivator \nLove the way you walk \nLove the way you walk \n\nI love the way your eye \nIt doth shine like an Egyptian ruby \nLove the way it shines\nLove the way it shines \nShine on \n\nI love the clothes you wear \nThey're so mean they're so free \nThey're so handsome \nLove the clothes you wear \nLove the clothes you wear \n\nI love the broken crown \nThe one you stole from the King\nAnd held for ransom \nLove the broken crown \nLove the broken crown \nI love it\n \nI love the golden cat \nYou know the one that you keep \nIn your bedroom \nLove the golden cat \nLove the golden cat. \n\nI love the velvet hat \nYou know the one that caused \nA revolution \nLove the velvet hat \nLove the velvet hat \nI love it.
+++[A Whole Zinc of Finches]>\n[img[A Whole Zinc of Finches|images/finches_small.jpg]]\nAmazon: http://www.amazon.co.uk/gp/product/B000AYQLV8/026-3663095-0170020?v=glance&n=229816\nSee also: http://www.tilldawn.net/ZINC%20T%20Rex.pdf\n===\n\n\n+++[From Beneath the Wizard's Gown]>\n[img[From Beneath the Wizard's Gown: Marc Bolan - Unglittered|http://images.amazon.com/images/P/1899750339.02._PE00_OU02_SCMZZZZZZZ_.jpg]]\nAmazon: http://www.amazon.co.uk/gp/product/1899750339/026-3663095-0170020?v=glance&n=266239\n===
+++[Info]\nSee also [[Go Go Girl]]\n===\n\n\nMa-ma-ma-ma-ma-ma-ma-mama...\n\nMy, my, Mustang Ford.\nIt's all put together,\nwith alligator leather.\nMy Baby she knows,\nI'm on a scene.\nMy baby keeps asking,\nwhere I've been.\nMy baby's guessing,\nthat I'm messing.\nIt's all put together,\nwith alligator leather.\n\nMa-ma-ma-ma-ma-ma-ma-mama...\n\nMy, my, Mustang Ford.\nIt's all put together,\nwith alligator leather.\nMy Baby she knows,\nI'm no fool.\nMy baby she says,\nhey keep cool.\nMy baby don't realise,\nI'm hypnotized.\nIt's all put together,\nwith alligator leather.\n\nMy, my, Mustang Ford.\n\nMa-ma-ma-ma-ma-ma-ma-mama...\nMy, my, Mustang Ford.
Where did you go my little baby\nWhere did you go my little baby\nWhere did you go my little baby\nFrom here from here \n\nWalking down the streets like a mad hatter\nLunacy's back but does it really matter\nWatch out my man my lady's coming back to me \n\nIf your sting was like a bee\nWould you die only for me\nIf you go across the sea\nWould you come back to me\n\nDeception dissolves like a mind rainbow\nSunset was dumped dark inside my bedroom\nBarracuda blue please won't you give my baby to me \n\nIf you go across the sea\nWould you come back to me\nIf your sting was like a bee\nWould you die only for me
[img[http://static.flickr.com/91/217727373_24159574bb.jpg]]
Baby Mystic Lady \nYou do own my night \nPut my dogs to fright \nYea Yea Yea Yea \n\nRiding sliding Sorceress\nIn your dungarees \nGot me on my knees \nYea Yea Yea \n\nOh the people in your life are cruel \nKeep on riding that hard road \nThe lovers in your life are few \nKeep on riding that hard road \n \nPleasant crescent moon \nFills my heart with pain \nFills my toes with rain \n\nOh Bobby you're a hobby \nWith the learned ones \nLike a setting sun \n \nOh Baby, Baby, Baby \nBap pa da da da da \nOh Baby, Baby, Baby \nBap pa da da da da \nOh Baby, Baby, Baby \nBap pa da da da da
I wouldn't lie \nI wouldn't lie\nI wouldn't lie\nI wouldn't lie\n\nYou're like a sanctuary a poet's memory\nI wouldn't lie \n\nA universe of happiness beneath your be-bop dress\nI wouldn't lie\n\nAnd I love you, and I love you\n'Cos you're my nameless wildness\n\nYou're like a precious book a stolen golden look\nI wouldn't lie\n\nSo keep your consciousness volcanos in my breast\nI wouldn't lie\n\nAnd I love you and I love you\n'cos you're my nameless wildness\n\nI wouldn't lie, I wouldn't lie\n'Cos I love you, and I love you\n'Cos you're my nameless wildness\n\nI wouldn't lie
/***\n''NestedSlidersPlugin for TiddlyWiki version 1.2.x and 2.0''\n^^author: Eric Shulman\nsource: http://www.TiddlyTools.com/#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\nFor more details, please click on a section headline below:\n++++!!!!![Configuration]>\nDebugging messages for 'lazy sliders' deferred rendering:\n<<option chkDebugLazySliderDefer>> show debugging alert when deferring slider rendering\n<<option chkDebugLazySliderRender>> show debugging alert when deferred slider is actually rendered\n===\n++++!!!!![Usage]>\nWhen installed, this plugin adds new wiki syntax for embedding 'slider' panels directly into tiddler content. Use {{{+++}}} and {{{===}}} to delimit the slider content. Additional optional syntax elements let you specify\n*default to open\n*cookiename\n*heading level\n*floater (with optional CSS width value)\n*mouse auto rollover\n*custom class/label/tooltip/accesskey\n*automatic blockquote\n*deferred rendering\nThe complete syntax, using all options, is:\n//{{{\n++++(cookiename)!!!!!^width^*{{class{[label=key|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* {{{(cookiename)}}}^^\nsaves the slider opened/closed state, and restores this state whenever the slider is re-rendered.^^\n* {{{!}}} through {{{!!!!!}}}^^\ndisplays the slider label using a formatted headline (Hn) style instead of a button/link style^^\n* {{{^width^}}} (or just {{{^}}})^^\nmakes the slider 'float' on top of other content rather than shifting that content downward. 'width' must be a valid CSS value (e.g., "30em", "180px", "50%", etc.). If omitted, the default width is "auto" (i.e., fit to content)^^\n* {{{*}}}^^\nautomatically opens/closes slider on "rollover" as well as when clicked^^\n* {{{{{class{[label=key|tooltip]}}}}}}^^\nuses custom label/tooltip/accesskey. {{{{{class{...}}}}}}, {{{=key}}} and {{{|tooltip}}} are optional. 'class' is any valid CSS class name, used to style the slider label text. 'key' must be a ''single letter only''. Default labels/tootips are: ">" (more) and "<" (less), with no default access key assignment.^^\n* {{{">"}}} //(without the quotes)//^^\nautomatically adds blockquote formatting to slider content^^\n* {{{"..."}}} //(without the quotes)//^^\ndefers rendering of closed sliders until the first time they are opened. //Note: deferred rendering may produce unexpected results in some cases. Use with care.//^^\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++++!!!!![Examples]>\nsimple in-line slider: \n{{{\n+++\n content\n===\n}}}\n+++\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, cookie, heading, sized floater, rollover, class, label/tooltip/key, blockquoted, deferred)//\n{{{\n++++(testcookie)!!!^30em^*{{big{[label=Z|click or press Alt-Z to open]}}}>...\n content\n===\n}}}\n++++(testcookie)!!!^30em^*{{big{[label=Z|click or press Alt-Z to open]}}}>...\n content\n===\n----\ncomplex nesting example:\n{{{\n+++^[get info...=I|click for information or press Alt-I]\n put some general information here, plus a floating slider with more specific info:\n +++^10em^[view details...|click for details]\n put some detail here, which could include a rollover with a +++^25em^*[glossary definition]explaining technical terms===\n ===\n===\n}}}\n+++^[get info...=I|click for information or press Alt-I]\n put some general information here, plus a floating slider with more specific info:\n +++^10em^[view details...|click for details]\n put some detail here, which could include a rollover with a +++^25em^*[glossary definition]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''2006.07.28 - 2.0.0'' added custom class syntax around label/tip/key syntax: {{{{{classname{[label=key|tip]}}}}}}\n''2006.07.25 - 1.9.3'' when parsing slider, save default open/closed state in button element, then in onClickNestedSlider(), if slider state matches saved default, instead of saving cookie, delete it. Significantly reduces the 'cookie overhead' when default slider states are used.\n''2006.06.29 - 1.9.2'' in onClickNestedSlider(), when setting focus to first control, skip over type="hidden"\n''2006.06.22 - 1.9.1'' added panel.defaultPanelWidth to save requested panel width, even after resizing has changed the style value\n''2006.05.11 - 1.9.0'' added optional '^width^' syntax for floating sliders and '=key' syntax for setting an access key on a slider label\n''2006.05.09 - 1.8.0'' in onClickNestedSlider(), when showing panel, set focus to first child input/textarea/select element\n''2006.04.24 - 1.7.8'' in adjustSliderPos(), if floating panel is contained inside another floating panel, subtract offset of containing panel to find correct position\n''2006.02.16 - 1.7.7'' corrected deferred rendering to account for use-case where show/hide state is tracked in a cookie\n''2006.02.15 - 1.7.6'' in adjustSliderPos(), ensure that floating panel is positioned completely within the browser window (i.e., does not go beyond the right edge of the browser window)\n''2006.02.04 - 1.7.5'' add 'var' to unintended global variable declarations to avoid FireFox 1.5.0.1 crash bug when assigning to globals\n''2006.01.18 - 1.7.4'' only define adjustSliderPos() function if it has not already been provided by another plugin. This lets other plugins 'hijack' the function even when they are loaded first.\n''2006.01.16 - 1.7.3'' added adjustSliderPos(place,btn,panel,panelClass) function to permit specialized logic for placement of floating panels. While it provides improved placement for many uses of floating panels, it exhibits a relative offset positioning error when used within *nested* floating panels. Short-term workaround is to only adjust the position for 'top-level' floaters.\n''2006.01.16 - 1.7.2'' added button property to slider panel elements so that slider panel can tell which button it belongs to. Also, re-activated and corrected animation handling so that nested sliders aren't clipped by hijacking Slider.prototype.stop so that "overflow:hidden" can be reset to "overflow:visible" after animation ends\n''2006.01.14 - 1.7.1'' added optional "^" syntax for floating panels. Defines new CSS class, ".floatingPanel", as an alternative for standard in-line ".sliderPanel" styles.\n''2006.01.14 - 1.7.0'' added optional "*" syntax for rollover handling to show/hide slider without requiring a click (Based on a suggestion by tw4efl)\n''2006.01.03 - 1.6.2'' When using optional "!" heading style, instead of creating a clickable "Hn" element, create an "A" element inside the "Hn" element. (allows click-through in SlideShowPlugin, which captures nearly all click events, except for hyperlinks)\n''2005.12.15 - 1.6.1'' added optional "..." syntax to invoke deferred ('lazy') rendering for initially hidden sliders\nremoved checkbox option for 'global' application of lazy sliders\n''2005.11.25 - 1.6.0'' added optional handling for 'lazy sliders' (deferred rendering for initially hidden sliders)\n''2005.11.21 - 1.5.1'' revised regular expressions: if present, a single newline //preceding// and/or //following// a slider definition will be suppressed so start/end syntax can be place on separate lines in the tiddler 'source' for improved readability. Similarly, any whitespace (newlines, tabs, spaces, etc.) trailing the 'start slider' syntax or preceding the 'end slider' syntax is also suppressed.\n''2005.11.20 - 1.5.0'' added (cookiename) syntax for optional tracking and restoring of slider open/close state\n''2005.11.11 - 1.4.0'' added !!!!! syntax to render slider label as a header (Hn) style instead of a button/link style\n''2005.11.07 - 1.3.0'' removed alternative syntax {{{(((}}} and {{{)))}}} (so they can be used by other\nformatting extensions) and simplified/improved regular expressions to trim multiple excess newlines\n''2005.11.05 - 1.2.1'' changed name to NestedSlidersPlugin\nmore documentation\n''2005.11.04 - 1.2.0'' added alternative character-mode syntax {{{(((}}} and {{{)))}}}\ntweaked "eat newlines" logic for line-mode {{{+++}}} and {{{===}}} syntax\n''2005.11.03 - 1.1.1'' fixed 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'' changed delimiter syntax from {{{(((}}} and {{{)))}}} to {{{+++}}} and {{{===}}}\nchanged name to EasySlidersPlugin\n''2005.11.03 - 1.0.0'' initial public release\n<<<\n!!!!!Credits\n<<<\nThis feature was implemented by EricShulman from [[ELS Design Studios|http:/www.elsdesign.com]] with initial research and suggestions from RodneyGomes, GeoffSlocock, and PaulPetterson.\n<<<\n!!!!!Code\n***/\n//{{{\nversion.extensions.nestedSliders = {major: 2, minor: 0, revision: 0, date: new Date(2006,7,28)};\n//}}}\n\n//{{{\n// options for deferred rendering of sliders that are not initially displayed\nif (config.options.chkDebugLazySliderDefer==undefined) config.options.chkDebugLazySliderDefer=false;\nif (config.options.chkDebugLazySliderRender==undefined) config.options.chkDebugLazySliderRender=false;\n\n// default styles for 'floating' class\nsetStylesheet(".floatingPanel { position:absolute; z-index:10; padding:0.5em; margin:0em; \s\n background-color:#eee; color:#000; border:1px solid #000; text-align:left; }","floatingPanelStylesheet");\n//}}}\n\n//{{{\nconfig.formatters.push( {\n name: "nestedSliders",\n match: "\s\sn?\s\s+{3}",\n terminator: "\s\ss*\s\s={3}\s\sn?",\n lookahead: "\s\sn?\s\s+{3}(\s\s+)?(\s\s([^\s\s)]*\s\s))?(\s\s!*)?(\s\s^(?:[^\s\s^\s\s*\s\s[\s\s>]*\s\s^)?)?(\s\s*)?(?:\s\s{\s\s{([\s\sw]+[\s\ss\s\sw]*)\s\s{)?(\s\s[[^\s\s]]*\s\s])?(?:\s\s}{3})?(\s\s>)?(\s\s.\s\s.\s\s.)?\s\ss*",\n handler: function(w)\n {\n // defopen=lookaheadMatch[1]\n // cookiename=lookaheadMatch[2]\n // header=lookaheadMatch[3]\n // panelwidth=lookaheadMatch[4]\n // rollover=lookaheadMatch[5]\n // class=lookaheadMatch[6]\n // label=lookaheadMatch[7]\n // blockquote=lookaheadMatch[8]\n // deferred=lookaheadMatch[9]\n\n 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 // location for rendering button and panel\n var place=w.output;\n\n // default to closed, no cookie, no accesskey\n var show="none"; var title=">"; var tooltip="show"; var cookie=""; var key="";\n\n // extra "+", default to open\n if (lookaheadMatch[1])\n { show="block"; title="<"; tooltip="hide"; }\n\n // cookie, use saved open/closed state\n if (lookaheadMatch[2]) {\n cookie=lookaheadMatch[2].trim().slice(1,-1);\n cookie="chkSlider"+cookie;\n if (config.options[cookie]==undefined)\n { config.options[cookie] = (show=="block") }\n if (config.options[cookie])\n { show="block"; title="<"; tooltip="hide"; }\n else\n { show="none"; title=">"; tooltip="show"; }\n }\n\n // parse custom label/tooltip/accesskey: [label=X|tooltip]\n if (lookaheadMatch[7]) {\n title = lookaheadMatch[7].trim().slice(1,-1);\n var pos=title.indexOf("|");\n if (pos!=-1) { tooltip = title.substr(pos+1,title.length); title=title.substr(0,pos); }\n if (title.substr(title.length-2,1)=="=") { key=title.substr(title.length-1,1); title=title.slice(0,-2); }\n if (pos==-1) tooltip += " "+title; // default tooltip: "show/hide <title>"\n }\n\n // create the button\n if (lookaheadMatch[3]) { // use "Hn" header format instead of button/link\n var lvl=(lookaheadMatch[3].length>6)?6:lookaheadMatch[3].length;\n var btn = createTiddlyElement(createTiddlyElement(place,"h"+lvl,null,null,null),"a",null,lookaheadMatch[6],title);\n btn.onclick=onClickNestedSlider;\n btn.setAttribute("href","javascript:;");\n btn.setAttribute("title",tooltip);\n }\n else\n var btn = createTiddlyButton(place,title,tooltip,onClickNestedSlider,lookaheadMatch[6]);\n\n // set extra button attributes\n btn.sliderCookie = cookie; // save the cookiename (if any) in the button object\n btn.defOpen=lookaheadMatch[1]!=null; // save default open/closed state (boolean)\n btn.keyparam=key; // save the access key letter ("" if none)\n if (key.length) {\n btn.setAttribute("accessKey",key); // init access key\n btn.onfocus=function(){this.setAttribute("accessKey",this.keyparam);}; // **reclaim** access key on focus\n }\n\n // "non-click" MouseOver open/close slider\n if (lookaheadMatch[5]) btn.onmouseover=onClickNestedSlider;\n\n // create slider panel\n var panelClass=lookaheadMatch[4]?"floatingPanel":"sliderPanel";\n var panel=createTiddlyElement(place,"div",null,panelClass,null);\n panel.button = btn; // so the slider panel know which button it belongs to\n panel.defaultPanelWidth=(lookaheadMatch[4] && lookaheadMatch[4].length>2)?lookaheadMatch[4].slice(1,-1):""; // save requested panel size\n btn.sliderPanel=panel;\n panel.style.display = show;\n panel.style.width=panel.defaultPanelWidth;\n\n // render slider (or defer until shown) \n w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;\n if ((show=="block")||!lookaheadMatch[9]) {\n // render now if panel is supposed to be shown or NOT deferred rendering\n w.subWikify(lookaheadMatch[8]?createTiddlyElement(panel,"blockquote"):panel,this.terminator);\n // align slider/floater position with button\n adjustSliderPos(place,btn,panel,panelClass);\n }\n else {\n var src = w.source.substr(w.nextMatch);\n var endpos=findMatchingDelimiter(src,"+++","===");\n panel.setAttribute("raw",src.substr(0,endpos));\n panel.setAttribute("blockquote",lookaheadMatch[8]?"true":"false");\n panel.setAttribute("rendered","false");\n w.nextMatch += endpos+3;\n if (w.source.substr(w.nextMatch,1)=="\sn") w.nextMatch++;\n if (config.options.chkDebugLazySliderDefer) alert("deferred '"+title+"':\sn\sn"+panel.getAttribute("raw"));\n }\n }\n }\n }\n)\n\n// TBD: ignore 'quoted' delimiters (e.g., "{{{+++foo===}}}" isn't really a slider)\nfunction findMatchingDelimiter(src,starttext,endtext) {\n var startpos = 0;\n var endpos = src.indexOf(endtext);\n // check for nested delimiters\n while (src.substring(startpos,endpos-1).indexOf(starttext)!=-1) {\n // count number of nested 'starts'\n var startcount=0;\n var temp = src.substring(startpos,endpos-1);\n var pos=temp.indexOf(starttext);\n while (pos!=-1) { startcount++; pos=temp.indexOf(starttext,pos+starttext.length); }\n // set up to check for additional 'starts' after adjusting endpos\n startpos=endpos+endtext.length;\n // find endpos for corresponding number of matching 'ends'\n while (startcount && endpos!=-1) {\n endpos = src.indexOf(endtext,endpos+endtext.length);\n startcount--;\n }\n }\n return (endpos==-1)?src.length:endpos;\n}\n//}}}\n\n//{{{\nwindow.onClickNestedSlider=function(e)\n{\n if (!e) var e = window.event;\n var theTarget = resolveTarget(e);\n var theLabel = theTarget.firstChild.data;\n var theSlider = theTarget.sliderPanel\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 // deferred rendering (if needed)\n if (theSlider.getAttribute("rendered")=="false") {\n if (config.options.chkDebugLazySliderRender)\n alert("rendering '"+theLabel+"':\sn\sn"+theSlider.getAttribute("raw"));\n var place=theSlider;\n if (theSlider.getAttribute("blockquote")=="true")\n place=createTiddlyElement(place,"blockquote");\n wikify(theSlider.getAttribute("raw"),place);\n theSlider.setAttribute("rendered","true");\n }\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 // reset to default width (might have been changed via plugin code)\n theSlider.style.width=theSlider.defaultPanelWidth;\n // align slider/floater position with target button\n if (!isOpen) adjustSliderPos(theSlider.parentNode,theTarget,theSlider,theSlider.className);\n // if showing panel, set focus to first 'focus-able' element in panel\n if (theSlider.style.display!="none") {\n var ctrls=theSlider.getElementsByTagName("*");\n for (var c=0; c<ctrls.length; c++) {\n var t=ctrls[c].tagName.toLowerCase();\n if ((t=="input" && ctrls[c].type!="hidden") || t=="textarea" || t=="select")\n { ctrls[c].focus(); break; }\n }\n }\n if (this.sliderCookie && this.sliderCookie.length) {\n config.options[this.sliderCookie]=!isOpen;\n if (config.options[this.sliderCookie]!=this.defOpen)\n saveOptionCookie(this.sliderCookie);\n else { // remove cookie if slider is in default display state\n var ex=new Date(); ex.setTime(ex.getTime()-1000);\n document.cookie = this.sliderCookie+"=novalue; path=/; expires="+ex.toGMTString();\n }\n }\n return false;\n}\n\n// hijack animation handler 'stop' handler so overflow is visible after animation has completed\nSlider.prototype.coreStop = Slider.prototype.stop;\nSlider.prototype.stop = function() { this.coreStop(); this.element.style.overflow = "visible"; }\n\n// adjust panel position based on button position\nif (window.adjustSliderPos==undefined) window.adjustSliderPos=function(place,btn,panel,panelClass) {\n if (panelClass=="floatingPanel") {\n var left=0;\n var top=btn.offsetHeight; \n if (place.style.position!="relative") {\n var left=findPosX(btn);\n var top=findPosY(btn)+btn.offsetHeight;\n var p=place; while (p && p.className!='floatingPanel') p=p.parentNode;\n if (p) { left-=findPosX(p); top-=findPosY(p); }\n }\n if (left+panel.offsetWidth > getWindowWidth()) left=getWindowWidth()-panel.offsetWidth-10;\n panel.style.left=left+"px"; panel.style.top=top+"px";\n }\n}\n\nfunction getWindowWidth() {\n if(document.width!=undefined)\n return document.width; // moz (FF)\n if(document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) )\n return document.documentElement.clientWidth; // IE6\n if(document.body && ( document.body.clientWidth || document.body.clientHeight ) )\n return document.body.clientWidth; // IE4\n if(window.innerWidth!=undefined)\n return window.innerWidth; // IE - general\n return 0; // unknown\n}\n//}}}
+++[Info]\nb-side [[Chrome Sitar]]\n===\n\n\nDid you ever see a woman \nComing out of New York City\nWith a frog in her hand\n\nDid you ever see a woman \nComing out of New York City\nWith a frog in her hand\n\nI did don't you know\nI did don't you know\nI did don't you know\nAnd don't it show \n\n(A boogie mind poem)
/***\n|Name|NewHereCommand|\n|Source|http://simonbaird.com/mptw/#NewHereCommand|\n|Version|1.0|\n\nCode originally by ArphenLin. Small tweak by SimonBaird\nhttp://aiddlywiki.sourceforge.net/NewHere_demo.html#NewHereCommand\nTo use this you must edit your ViewTemplate and add newHere to the toolbar div, eg\n{{{<div class='toolbar' macro='toolbar ... newHere'></div>}}}\n***/\n\n//{{{\n\nconfig.commands.newHere = {\n text: 'new here',\n tooltip: 'Create a new tiddler tagged as this tiddler',\n handler: function(e,src,title) {\n if (!readOnly) {\n clearMessage();\n var t=document.getElementById('tiddler'+title);\n story.displayTiddler(t,config.macros.newTiddler.title,DEFAULT_EDIT_TEMPLATE);\n story.setTiddlerTag(config.macros.newTiddler.title, title, 0);\n story.focusTiddler(config.macros.newTiddler.title,"title");\n return false;\n }\n }\n};\n\n//}}}
+++[Info]\nProphets outtake 1968\n===\n\n\nNeed a nickel for the nickelodeon.\nNeed a nickel for the nickelodeon - yes.\nNeed a nickel for the nickelodeon.\nPardon me garcon, it seems there's something wrong,\n\nYou with your terraplane\nAnd your hair like an aeroplane.\n\nNeed a nickel for the nickelodeon.\nNeed a nickel for the nickelodeon.\nNeed a picture for my picture postcard rack.\nAlso, mister, man I want my money back.\nYou, you're a chess game.\nYou're my flower, I'm your shower of rain.\n\nNeed a nickel for the nickelodeon.\nNeed a nickel for the nickelodeon - yes.\nNeed a nickel for the nickelodeon.\nPardon me garcon, it seems there's something wrong.\nYou with your Cadillac,\nIt's like a winged starbacked crystal shack.\n\nYou with your terraplane\nAnd your hair like an aeroplane.\n\nNeed a nickel for the nickelodeon...
Nijinsky Hind is a wisp of our world \nThrough the heart's eye. \nIt's horns are white hide \nFrom the skin of our lord \nWhen his youth stood \nWondrous and fair like a sea. \n\nNijinsky Hind is a remnant of Earth \nAs it once stood. \nA likeness in flesh of the magic \nContained in a pearl's shell \nBreathing it's breath uniquely. \n\nNijinsky Hind was begotten \nFrom man's thoughts of kindness. \nIts hoofs shod with gold \nAre the textures of Earth's distant future \nGilded and tall like a hall.
+++[Info]\nPosthumous release.\nRecorded 1975\n===\n\nYou're not afraid of love.\nYou're not afraid of love.\nOh no.\n\nYou're not afraid of love.\nYou're not afraid of love.\nOh no.\n\nRun run run, girl,\nBack to your heart.\nBetter run run run,\nRun for your love.\n\nRun run run, girl,\nBack to your heart.\nYou better run run run,\nBack to your heart.\n\nYou're not afraid of love.\nYou're not afraid of love.\nOh no.\n\nYou're not afraid of love.\nYou're not afraid of love.\nOh no.\nRun run run, girl,\nRun to your heart.\nYou better run run run,\nBack to your heart.\n\nRun run run, girl,\nRun with your heart.\nYou better run run, girl,\nBack to your heart.\n\nRun run run, girl,\nRun with your heart.\nRun run, girl,\nBack to your heart.\n\nRun run run, girl,\nRun with your heart.\nRun run, girl,\nRun back to your heart
Zippinยด in the car, make it to the bar.\nWe'll meet up with the guys who,\nMake love to Barbara Streisand.\nThen we'll all split the scene,\nMake it like a dream.\nWest Side Brighton, or we're just ridin'.\nTurn on the chicks and then we'll blow our kicks\nAnd we'll fly high.\n\nBoppin' and shoppin' and makin' it in West One.\nSee ya later, alligator, throw away your Zip Gun.\nDance instead of walking, feel like I'm the best one.\nSmokin' charges and ridin' barges, cutting out high strung.\nSleeping on the beaches and make like a teacher.\nTurned on beggar, say he's a rockin' preacher.\nSteeling or feeling and make like a rocker,\nThen you'll fly high.\n\nMet her in the corner, King jiving on the sidwalk.\nIntellectual put down all I wanna do is talk.\nChelsea cats groovin' and provin' that they're all men.\nCallin' up your lost baby, shoutin' out "Remember when.."\nOn a scene with the guys, see the paintings in their eyes.\nDriving through the crazy night.\nLooking for a chick to fight.\nHad a seed and made a veil.\nBlew some smoke and leave a trail.\nAnd fly high.\n\nI'm wearin' shades and diggin' spades\nI'm takin' in the night life.\nCrazy Sally in the alley, playing with a filck-knife.\nMet a chick, got a flat.\nGot a cat with one leg.\nI bought a Jeep, nice and cheap,\nFor cutting out right now.\nMade it to the sea, just the chick, the cat, and me.\nEverybody's laughing 'cos the Jeep's cost money.\nNice and easy baby said, come and sit down with me\nAnd we'll fly hiiiiigh.
+++[Info]\nb-side [[Universal Love]]\n===\n\n\nOh baby, ooh, oh baby, oh baby baby\nOh baby baby, oh baby baby\nAhh, I want you for my woman \nOh baby baby, oh baby baby, oh\n\nWell I saw a girl yesterday\nThought my life that she was my wife \nOnce in my life\nWell I saw a girl yesterday\nThought my life that she was my wife\nOnce in my life\nAnd I'm singing\n\nOh baby baby, oh baby baby\nOh baby baby, Ahhh\nI want you for my woman\nOh baby baby, Oh baby baby, yeah\n\nWell I saw a girl yesterday\nThought my life that she was my wife\nOnce in my life \n.....Till Fade....
Rose, Rose, Rose, Rose, \nNo bigger than a bubby's thumb. \nMedieval dublet, elk horn ornamented woodland trumpet, \nCradling your musket son. \n\nHarlequin stands magnificent \nSlaughtered tulip in the psalm of his lillywhite. \nHarlequin stands theatrical \nMincing smirk dancing on the hip of his lip. \n\nO Harley \nNaughty to pretend it's so naughty so bad \nO Harley \n\nRose, Rose, Rose, Rose, \nNo bigger than a bubby's thumb. \nGarlanded with bluebells strewn with silver birch \nSpring grown tiaras \nCradling your sabre son.
+++[Info]\n[[A Beard Of Stars]] outtake?\n===\n\n\nLa, la, la, la, da, da, da, da, la, la, la, la.\nOnce upon the Seas of Abyssinia,\nA cultured man with rings,\nWithin his ear-lobes.\nLocked the door,\nFrom which the sun arose.\nA man at noon,\nWith shadows on his cheek bone.\nScreamed for sleep,\nTo use him as a pillow.\nHis robes of chintz were melting,\nIn the snows.\nThe stars with eyes,\nEmbedded in their footprints.\nWept sweet words,\nFrom I remembered childhood.\nPoets of the skies,\nLook long and hard.\nOnce upon the Seas of Abyssinia,\nA cultured man with rings,\nWithin his ear-lobes.\nLocked the door,\nFrom which the sun arose.\nLa, la, la, la, da, da, da, da, la, la, la, la
+++[Info]\nThis track was recorded and released multiple times (as a single a-side and b-side and album track).\nOriginal release b-side [[Salamanda Palaganda]]\nWas a b-side to the re-issued [[Debora]]\n===\n\n\nMet a woman she's spouting prose \nShe's got luggage eyes and a roman nose \nHer body is slung from side to side \n"Need a lift?" she say, "Much obliged." \nI'm riding piggy-back \nThen I come to her shack \n\nWe go inside, the place is a mess \nShe said, "My name's The Liquid Poetess." \nShe unties her mouth \nAnd her buckskin dress \nShe drinks from a bottle \nLabelled tenderness \nI'm in one hand in the other's a can \n\nShe puts me in the can \nAnd smiles through the wall \nI got the horrors 'cos I'm one inch tall \nNext thing I know a girl's by my side \nDressed in a bayleaf she's trying to hide \nI asked her name, she said, "Germaine." \nDo the rock, do the One Inch Rock.
\nYour username for signing your edits. Write it as a WikiWord (eg JoeBloggs)\n<<option txtUserName>>\n\n<<option chkSaveBackups>> SaveBackups\n<<option chkAutoSave>> AutoSave\n<<option chkRegExpSearch>> RegExpSearch\n<<option chkCaseSensitiveSearch>> CaseSensitiveSearch\n<<option chkAnimate>> EnableAnimations\n\nSee AdvancedOptions
There's gold in the mountains \nAnd a people living in the sea\n\nI love you and don't you know \nThat you love me \nYes you do. \n\nWe make feasties of the beasties \nBut the beasties just live in the wild \nYou know that you're slower now \nAnd you were faster when you were \nA child \nYes you were
Blue ocean eyes, black panther thighs, \nWonderful brown man nose like a seahawk. \nMusing the sea in harmony, \nWith the sky and wine sun that owns you. \nBuffalo's dead but they groan in my head. \nTwitching my hair with the dance of their good feet.\n\nA ghostly Shawnee fed me honey, \nAnd washed me with oils from Narnia. \nSome cloudy heart blood, wept in the mud, \nNear the corpse of our splendid friend hero. \nHis tattered head bent like a willow-tree tent, \nAnd his ebony surf eyes leaked water.
<!---\nI've just tweaked my gradient colours and the topMenu bit. See HorizontalMainMenu.\n<div class='header' macro='gradient vert #000 #069'>\n--->\n<!--{{{-->\n<div class='header' macro='gradient vert #e00 #00e'>\n<div class='headerShadow'>\n<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;\n<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>\n</div>\n<div class='headerForeground'>\n<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;\n<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>\n</div>\n<div id='topMenu' refresh='content' tiddler='MainMenu'></div>\n</div>\n<div id='sidebar'>\n<!-- Beginning of meebo me widget code. -->\n<!--\n<embed src="http://widget.meebo.com/mm.swf?iRCyKLdVlZ" type="application/x-shockwave-flash" width="170" height="300"></embed>\n-->\n<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>\n<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>\n</div>\n<div id='displayArea'>\n<div id='messageArea'></div>\n<div id='tiddlerDisplay'></div>\n</div>\n<!---\nRuss: added this footer stuff.\n--->\n<div id='VDSubtitleDisplay' style='padding-left:1em;'>\n<span refresh='content' tiddler='VDFooter' ></span>\n</div>\n<div style='text-align:center;'>\n<a href='http://www.noblepr.co.uk/Press_Releases/demon/t_rex.htm'><span style='font-size:6pt;'>Advertisement</span><br /><img src='http://www.noblepr.co.uk/t_rex.gif' /></a></div>\n<a href="http://www.digitalpoint.com/tools/geovisitors/"><img src="http://geo.digitalpoint.com/a.png" alt="Geo Visitors Map" style="border:0"></a>\n<!--}}}-->\n
We have traveled pain and love\nTo call ourselves high born\nLiving in a maze so crazed lunacy is legend\nLunacy is legend\n\nWords I fear that clutch my crutch\nAnd drive your senses crazy\nMen or women too get blue,\nso don't make living hazy\nNo don't make living hazy\n\nOnce in youth the wisdom crouched \nDeep inside my bedroom\nVisitations now are scarce, winter life is lonely\nNow winter life is lonely\n\nTemples that are bleak and bleached\nAre bleached up on the highway\nGod of truth returned just once\nand made my prison homely\nDon't make my life so lonely
It's gonna go it's gonna go\nIt's gonna go it's gonna go\n\nI can see wild flame in front of me\nI can see streets built on ebony\nI can see men as big as cedar trees\nWhat's goin' on\n\nI can feel earthquakes inside of me\nI can sense landslides of devilry\nI can be everything that's bad to me\nWhat's goin' on\n\nI say look to your soul you better look to your soul\nYou better look to your soul you better look to your soul\n\nOr else it's gonna go It's gonna go\nIt's gonna go
Swans do fly high above you \nAll the time\nPrince of Sun from his pavilion \nMakes you shine \n\nCome into my garden lady love\nMaybe I can hold your gold hand\n\nGlide within my gold grove lady love \nKnow the earth and you'll understand.
+++[Info]\nb-side [[Warlord Of The Royal Crocodiles]]\n===\n\n\nAah-ha, Aah-ha \n\nPewter suitor tangled in the bracken \nDancing daily with his gaily wavy baton \nThe wild cat wishing of \nThe hissing wheels of fortune that are known \nTo rise beside us like \nA picture painted heartache of the home \n\nLa La La La La La
\nI saw this mirror, I looked through it.\nReflections looked most bend and all,\nCaring too much, hating hatred..\nSeeing things deformed and almost cold.\n\nCrying sadly, shielding gladly my eyes.\nFrom the ugly side of fat men seeing, almost,\nThin men peeping, sleeping, looking, falling,\nDizzy from their weirdest high.\n\nThe men of magic thinking all the evil.\nHe was bringing sunless children.\nSeeing all the bad,\n'Cos beauty was too ugly\nAnd faceless people,\nWondered at the beautiful forms they had.\n\nNow the mirror's broken.\nI'm smiling, seeing good things.\nGet the spiteful splitters swirl in the air.\nForever causing beauty,\nTo become at night time,\nWeird things blackening the fairest maiden's hair.\n\n''(BBC Radio Version)''\n\nI saw this mirror, I looked through it\nReflections looked most bend and all\nCaring too much, hating hatred\nSeeing things deformed and almost cold\n\n(Na na na...)\n\nCrying sadly, shielding gladly my eyes\nFrom the ugly side of fat men seeing, almost\nThin men peeping, sleeping, looking, falling\nDizzy from their weirdest high\n\n(Na na na...)\n\nNow the mirror's broken\nI'm smiling, seeing good things\nGot the spiteful splitters swirl in the air\nForever causing beauty\nTo become at night time\nWeird things blackening the fairest maiden's hair\n\nBelieved in my, my...\nI don't care!\n\n(Na na na...)
Planet Queen \nPerchance to dream \nShe used my head \nLike an exploder \nThe Planet Queen \n\nThe world's the same \nI am to blame \nShe used my head \nLike a revolver \nThe world's the same \n\nWell it's alright \nLove is what you want \nFlying saucer take me away \nGive me your daughter \n\nDragon head \nMachine of lead \nCadillac King \nDancer in the midnight \nDragon head \n\nPlanet Queen \nPerchance to dream \nShe used my head \nLike a revolver \nThe world's the same
Posthumous Material, Demos etc
Ooh like a precious star you are\nOoh like a precious star you are\nI wanna spend my life with you\nOoh like a precious star you are\nAnd will you love me\nLike you said when we met child\nOoh like a precious star you are\nOoh like a precious star you are\n\nOoh like the silver moon above\nIs the night right for love\nOoh like the silver moon above\nIs the night right for love\nBut will you love me\nlike you said when we met child\nOoh like a precious star you are\nOoh like a precious star you are\n\nDo do do da do da do\nDa do da do da\nDo do do da do da do\nDa do da do da\nI wanna spend my life with you....yeah\nDo do do da do\nDa do da do da\nBut will you love me\nLike you said when we met child\nOoh like a precious star you are\nOoh like a precious star you are\n\nLike a precious star you are\nLike a precious star you are\nLike a precious star you are\nBut will you love me\nlike you said when we met child\nOoh like a precious star you are\n\nOh yeah\nOh yeah\nOh yeah\n.........like a precious star you are
Producer: [[Marc Bolan]]
Producer: [[Tony Visconti]]
Producer: //Unknown//
[img[http://static.flickr.com/86/217709944_47d4c86183_m.jpg]]
/***\n| Name:|QuickOpenTagPlugin|\n| Purpose:|Makes tag links into a Taggly style open tag plus a normal style drop down menu|\n| Creator:|SimonBaird|\n| Source:|http://simonbaird.com/mptw/#QuickOpenTagPlugin|\n| Requires:|TW 2.x|\n| Version|1.1 (7-Feb-06)|\n\n!History\n* Version 1.1 (07/02/2006)\n** Fix Firefox 1.5.0.1 crashes\n** Updated by ~BidiX[at]~BidiX.info\n* Version 1.0 (?/01/2006)\n** First release\n\n***/\n//{{{\n\n//โŠป โŠฝ โ‹ โ–ผ \n\nwindow.createTagButton_orig_mptw = createTagButton;\nwindow.createTagButton = function(place,tag,excludeTiddler) {\n var sp = createTiddlyElement(place,"span",null,"quickopentag");\n createTiddlyLink(sp,tag,true,"button");\n var theTag = createTiddlyButton(sp,config.macros.miniTag.dropdownchar,config.views.wikified.tag.tooltip.format([tag]),onClickTag);\n theTag.setAttribute("tag",tag);\n if(excludeTiddler)\n theTag.setAttribute("tiddler",excludeTiddler);\n return(theTag);\n};\n\nconfig.macros.miniTag = {handler:function(place,macroName,params,wikifier,paramString,tiddler) {\n var tagged = store.getTaggedTiddlers(tiddler.title);\n if (tagged.length > 0) {\n var theTag = createTiddlyButton(place,config.macros.miniTag.dropdownchar,config.views.wikified.tag.tooltip.format([tiddler.title]),onClickTag);\n theTag.setAttribute("tag",tiddler.title);\n theTag.className = "miniTag";\n }\n}};\n\nconfig.macros.miniTag.dropdownchar = (document.all?"โ–ผ":"โ–พ"); // the fat one is the only one that works in IE\n\nconfig.macros.allTags.handler = function(place,macroName,params)\n{\n var tags = store.getTags();\n var theDateList = createTiddlyElement(place,"ul",null,null,null);\n if(tags.length === 0)\n createTiddlyElement(theDateList,"li",null,"listTitle",this.noTags);\n for (var t=0; t<tags.length; t++)\n {\n var theListItem =createTiddlyElement(theDateList,"li",null,null,null);\n var theLink = createTiddlyLink(theListItem,tags[t][0],true);\n var theCount = " (" + tags[t][1] + ")";\n theLink.appendChild(document.createTextNode(theCount));\n\n var theDropDownBtn = createTiddlyButton(theListItem," "+config.macros.miniTag.dropdownchar,this.tooltip.format([tags[t][0]]),onClickTag);\n theDropDownBtn.setAttribute("tag",tags[t][0]);\n }\n};\n\n\nsetStylesheet(\n ".quickopentag { margin-right:1.2em; border:1px solid #eee; padding:2px; padding-right:0px; padding-left:1px; }\sn"+\n ".quickopentag .tiddlyLink { padding:2px; padding-left:3px; }\sn"+\n ".quickopentag a.button { padding:1px; padding-left:2px; padding-right:2px;}\sn"+\n "a.miniTag {font-size:150%;}\sn"+\n "",\n"QuickOpenTagStyles");\n\n//}}}\n\n/***\n<html>&#x22bb; &#x22bd; &#x22c1; &#x25bc; &#x25be;</html>\n***/\n
Shady politician in my bed \nTying bolts of lightening to his head \nCall me Rabbit Fighter you know its true \n'Cos babe I'll Rabbit fight all over you \n\nTramp King of the city, he's my friend \nMoondogยนs just a prophet to the end \nCall me Rabbit Fighter you know it's true \n'Cos babe I'll Rabbit fight all over you... Hey! \n\nI saw a dude unscrewed and badly burned \nLaughing \n'Cos he'd gotten what he'd earned \nCall me Rabbit Fighter you know its true \n'Cos babe I'll Rabbit fight all over you \n\nCall me Rabbit Fighter \nJo Jo don't you know
Your mama said\n"Clean out your head boy, don't lay nothing on my child"\nYour friends they said\n"Your heads in a noose boy, lay some boogie on our minds"\nAnd we stood like the rapids and they were like a new born child.\n\nYour father said\n"Clean out your head boy, don't kick cans along the street"\nYour father said\n"Clean out your toes rose and go and lick some uncooked meat"\nAnd we stood like the rapids and I was like a new born child\n\nYour mama said\n"My babe is not free son but I'm loose about midnight'\nYour father said\n"Your sister's a groove boy but what I said it just ain't right"\nBut then I stood like the rapids and I was like a new born child\n\nWon't you tell me why!
Baby I've got metal knees ooh. \nLady I'm beggin' of you please \nBaby you think you're a champ but \nGirl you ain't nothin' but a raw ramp. \n\nLady, your lips are the most \nBaby, your mouth is like a ghost \nLady, you think you're a champ but \nGirl you ain't nothin' but a raw ramp\n \nWoman, I love your chests ooh, \nBaby, I'm crazy 'bout your breasts \nWoman, you think you'r a champ but \nGirl you ain't nothin' but a raw ramp \nBaby I've got metal knees ooh. \nLady I'm beggin' of you please \nBaby you think you're a champ but \nGirl you ain't nothin' but a raw ramp \n\nBaby, I love your chests ooh, \nLady, I'm crazy 'bout your breasts \nWoman, you think you'r a champ but \nGirl you ain't nothin' but a raw ramp \nYou ain't nothin' but a raw ramp
//{{{\n\n// adapted from: http://www.cs.utexas.edu/~joeraii/dragn/#Draggable\n// changes by ELS:\n// * hijack refreshTiddler() instead of overridding createTiddler()\n// * find title element by className instead of elementID\n// * set cursor style via code instead of stylesheet\n// * set tooltip help text\n// * set tiddler "position:relative" when starting drag event, restore saved value when drag ends\n\n// * update 2006.08.07: use getElementsByTagName("*") to find title element, even when it is 'buried' deep in tiddler DOM elements (due to custom template usage)\n\nStory.prototype.rearrangeTiddlersHijack_refreshTiddler = Story.prototype.refreshTiddler;\nStory.prototype.refreshTiddler = function(title,template,unused1,unused2,unused3,unused4,unused5)\n{\n this.rearrangeTiddlersHijack_refreshTiddler(title,template,unused1,unused2,unused3,unused4,unused5);\n var theTiddler = document.getElementById(this.idPrefix + title); if (!theTiddler) return;\n var theHandle;\n var children=theTiddler.getElementsByTagName("*");\n for (var i=0; i<children.length; i++) if (hasClass(children[i],"title")) { theHandle=children[i]; break; }\n if (!theHandle) return theTiddler;\n\n Drag.init(theHandle, theTiddler, 0, 0, null, null);\n theHandle.style.cursor="move";\n theHandle.title="drag title to re-arrange tiddlers"\n theTiddler.onDrag = function(x,y,myElem) {\n if (this.style.position!="relative")\n { this.savedstyle=this.style.position; this.style.position="relative"; }\n y = myElem.offsetTop;\n var next = myElem.nextSibling;\n var prev = myElem.previousSibling;\n if (next && y + myElem.offsetHeight > next.offsetTop + next.offsetHeight/2) { \n myElem.parentNode.removeChild(myElem);\n next.parentNode.insertBefore(myElem, next.nextSibling);//elems[pos+1]);\n myElem.style["top"] = -next.offsetHeight/2+"px";\n }\n if (prev && y < prev.offsetTop + prev.offsetHeight/2) { \n myElem.parentNode.removeChild(myElem);\n prev.parentNode.insertBefore(myElem, prev);\n myElem.style["top"] = prev.offsetHeight/2+"px";\n }\n };\n theTiddler.onDragEnd = function(x,y,myElem) {\n myElem.style["top"] = "0px";\n if (this.savedstyle!=undefined)\n this.style.position=this.savedstyle;\n }\n return theTiddler;\n}\n\n/**************************************************\n * dom-drag.js\n * 09.25.2001\n * www.youngpup.net\n **************************************************\n * 10.28.2001 - fixed minor bug where events\n * sometimes fired off the handle, not the root.\n **************************************************/\n\nvar Drag = {\n obj:null,\n\n init:\n function(o, oRoot, minX, maxX, minY, maxY) {\n o.onmousedown = Drag.start;\n o.root = oRoot && oRoot != null ? oRoot : o ;\n if (isNaN(parseInt(o.root.style.left))) o.root.style.left="0px";\n if (isNaN(parseInt(o.root.style.top))) o.root.style.top="0px";\n o.minX = typeof minX != 'undefined' ? minX : null;\n o.minY = typeof minY != 'undefined' ? minY : null;\n o.maxX = typeof maxX != 'undefined' ? maxX : null;\n o.maxY = typeof maxY != 'undefined' ? maxY : null;\n o.root.onDragStart = new Function();\n o.root.onDragEnd = new Function();\n o.root.onDrag = new Function();\n },\n\n start:\n function(e) {\n var o = Drag.obj = this;\n e = Drag.fixE(e);\n var y = parseInt(o.root.style.top);\n var x = parseInt(o.root.style.left);\n o.root.onDragStart(x, y, Drag.obj.root);\n o.lastMouseX = e.clientX;\n o.lastMouseY = e.clientY;\n if (o.minX != null) o.minMouseX = e.clientX - x + o.minX;\n if (o.maxX != null) o.maxMouseX = o.minMouseX + o.maxX - o.minX;\n if (o.minY != null) o.minMouseY = e.clientY - y + o.minY;\n if (o.maxY != null) o.maxMouseY = o.minMouseY + o.maxY - o.minY;\n document.onmousemove = Drag.drag;\n document.onmouseup = Drag.end;\n Drag.obj.root.style["z-index"] = "10";\n return false;\n },\n\n drag:\n function(e) {\n e = Drag.fixE(e);\n var o = Drag.obj;\n var ey = e.clientY;\n var ex = e.clientX;\n var y = parseInt(o.root.style.top);\n var x = parseInt(o.root.style.left);\n var nx, ny;\n if (o.minX != null) ex = Math.max(ex, o.minMouseX);\n if (o.maxX != null) ex = Math.min(ex, o.maxMouseX);\n if (o.minY != null) ey = Math.max(ey, o.minMouseY);\n if (o.maxY != null) ey = Math.min(ey, o.maxMouseY);\n nx = x + (ex - o.lastMouseX);\n ny = y + (ey - o.lastMouseY);\n Drag.obj.root.style["left"] = nx + "px";\n Drag.obj.root.style["top"] = ny + "px";\n Drag.obj.lastMouseX = ex;\n Drag.obj.lastMouseY = ey;\n Drag.obj.root.onDrag(nx, ny, Drag.obj.root);\n return false;\n },\n\n end:\n function() {\n document.onmousemove = null;\n document.onmouseup = null;\n Drag.obj.root.style["z-index"] = "0";\n Drag.obj.root.onDragEnd(parseInt(Drag.obj.root.style["left"]), parseInt(Drag.obj.root.style["top"]), Drag.obj.root);\n Drag.obj = null;\n },\n\n fixE:\n function(e) {\n if (typeof e == 'undefined') e = window.event;\n if (typeof e.layerX == 'undefined') e.layerX = e.offsetX;\n if (typeof e.layerY == 'undefined') e.layerY = e.offsetY;\n return e;\n }\n};\n//}}}\n
+++[Recording Detail]>\n|Recording Date|''$1''*|\n|Credited as|[[$2]]*|\n|Producer|[[$3]]*|\n|Comments|//$4//|\n|See also|$5|\n\n<<tiddler $6>>\n\nRecord Labels/Catalogue Number(s): $7\n\n^^*Dates and band members may not be 100% reliable - this information is being researched (and re-researched!) on a continual basis.^^\n===
/***\n| Name:|RenameTagsPlugin|\n| Purpose:|Allows you to easily rename tags|\n| Creator:|SimonBaird|\n| Source:|http://simonbaird.com/mptw/#RenameTagsPlugin|\n| Version:|1.0.1 (5-Mar-06)|\n\n!Description\nIf you rename a tiddler/tag that is tagging other tiddlers this plugin will ask you if you want to rename the tag in each tiddler where it is used. This is essential if you use tags and ever want to rename them. To use it, open the tag you want to rename as a tiddler (it's the last option in the tag popup menu), edit it, rename it and click done. You will asked if you want to rename the tag. Click OK to rename the tag in the tiddlers that use it. Click Cancel to not rename the tag.\n\n!Example\nTry renaming [[Plugins]] or [[CSS]] on this site.\n\n!History\n* 1.0.1 (5-Mar-06) - Added feature to allow renaming of tags without side-effect of creating a tiddler\n* 1.0.0 (5-Mar-06) - First working version\n\n!Code\n***/\n//{{{\n\nversion.extensions.RenameTagsPlugin = {\n major: 1, minor: 0, revision: 0,\n date: new Date(2006,3,5),\n source: "http://simonbaird.com/mptw/#RenameTagsPlugin"\n};\n\nconfig.macros.RenameTagsPlugin = {};\nconfig.macros.RenameTagsPlugin.prompt = "Rename the tag '%0' to '%1' in %2 tidder%3?";\n\n// these are very useful, perhaps they should be in the core\nif (!store.addTag) {\n store.addTag = function(title,tag) {\n var t=this.getTiddler(title); if (!t || !t.tags) return;\n t.tags.push(tag);\n };\n};\n\nif (!store.removeTag) {\n store.removeTag = function(title,tag) {\n var t=this.getTiddler(title); if (!t || !t.tags) return;\n if (t.tags.find(tag)!=null) t.tags.splice(t.tags.find(tag),1);\n };\n};\n\nstore.saveTiddler_orig_tagrename = store.saveTiddler;\nstore.saveTiddler = function(title,newTitle,newBody,modifier,modified,tags) {\n if (title != newTitle && this.getTaggedTiddlers(title).length > 0) {\n // then we are renaming a tag\n var tagged = this.getTaggedTiddlers(title);\n if (confirm(config.macros.RenameTagsPlugin.prompt.format([title,newTitle,tagged.length,tagged.length>1?"s":""]))) {\n for (var i=0;i<tagged.length;i++) {\n store.removeTag(tagged[i].title,title);\n store.addTag(tagged[i].title,newTitle);\n // if tiddler is visible refresh it to show updated tag\n story.refreshTiddler(tagged[i].title,false,true);\n }\n }\n if (!this.tiddlerExists(title) && newBody == "") {\n // dont create unwanted tiddler\n return null;\n }\n }\n return this.saveTiddler_orig_tagrename(title,newTitle,newBody,modifier,modified,tags);\n}\n\n//}}}\n\n
Rick played piano/keyboards a few times - notably on [[Get It On (Bang A Gong)]] and for [[Dib Cochran & The Earwigs]].\n\nAlong with [[Herbie Flowers]], ''Rick'' is possibly the most respected musician to have worked with [[Marc|Marc Bolan]].
Ride it on out like a bird in the sky ways \nRide it on out like you were a bird\nFly it on out like an eagle in a sunbeam\nRide it on out like you were a bird\n\nWear a tall hat like a druid in the old days\nWear a tall hat and a tattooed gown\nRide a white swan like the people of the Beltane\nWear your hair long babe you can't go wrong\n\nCatch a bright star and you place it on your forehead\nSay a few spells and baby there you go\nTake a black cat and sit it on your shoulder\nAnd in the morning you'll know all you know\nOhh\n\nDa da di di da\nDa da di di da\nDa da di di di da
+++[Info]\na-side [[Celebrate Summer]]\n===\n\n\nOh baby won't you ride them\n\nI'm just a boy be my toy\nRide my wheels\nI'm just a boy be my toy\nRide my wheels\n\nI've got some punk\nTo lay on you\nJust be real girl\nI never asked you to be true \n\nSlim is the wind\nAnd my head is slight\nBut lady I want to\nOil your engines all night\n\nI'm just a boy be my toy\nRide my wheels\nI'm just a boy be my toy\nRide my wheels\n\nDrive me baby\nI give service
''Ringo'' (along with [[Elton John]] on piano) played drums with [[T.Rex]] on the set of [[Born To Boogie (The Movie)]].
Rings of Fortune in my way.\nI've motorcycled the King's Highway.\nI sailed on a ship on the Spanish galleon.\nI'm the Angel of the Black Medallion.\n\nPeter Pan I am, I say,\nI harvested the sunlight through my day.\nVagabond of the Eastern Moon,\nGive my love with every single spoon.\n\nHung at dawn 'cos it's sun by noon.\nCharlie's black cat with a bad time tune.\n\nSad to see things that were kind.\nI'm no Has-been's clever child.\nWell of wishing, want you more.\nThan golden rings upon my door.\n\nSaw the people laughing.\nSaw the people cry.\nSaw the people kneeling.\nSaw the people die.
In the moonlight \nFighting with the night \nIt's a rip-off \n\nKissing all the slain \nI'm bleeding in the rain \nIt's a rip-off \nSuch a rip-off \n\nRocking in the nude \nI'm feeling such a dude \nIt's a rip-off \n\nDancing in the dark \nWith the tramps in the park \nIt's a rip-off \nSuch a rip-off \n\nSee your baby's stud \nSliding in my mud \nIt's a rip-off \n\nBleached on the beach \nI want to tickle your peach \nIt's a rip-off \nSuch a rip-off \n\nSee the girl dance \nIn her man-skin pats \nShe's a rip-off \n\nTerraplane Tommy \nWants to bang your gong \nIt's a rip-off \nSuch a rip-off \n\nGypsy girl's good \nPeople treat her like a fool \nIt's a rip-off \n\nThe President's weird \nHe's got a burgundy beard \nIt's a rip-off \nSuch a rip-off \n\nI'm the King of the Highway \nI'm the Queen of the Hop \nYou should see me \nAt the Governor's ball \nDoing the rip-off bop \nI'm a social person \nI'm the creature in disguise \nThere's a man with a whip \nOn his silver lip \nLiving inside my eyes \nI'm the cat from the alley \nI'm a fleetfoot voodoo man\nThere's very little that's ever said \nAll of which I understand \n\nCaught like a skunk \nIn space and time \nIt's a rip-off \n\nIf it's her's \nWell it must be mine \nIt's a rip-off \nSuch a rip-off \n\nDancing in the nude \nFeeling such a dude \nIt's a rip-off \n\nMountains of the Moon \nRemind me of my spoon \nIt's a rip-off \nSuch a rip-off
I've been down there \nEverybody's been there \nEveryone everyone \n\nDesolation angel \nOn the cover of my paper \nLoves everyone, everyone, everyone \n\nRock on Rock on \n \nMild mouthed Rita \nShe's a Chevy Chase cheetah \nLoves everyone, everyone, everyone \n\nTeddy's going steady \nHe's a silver-plated poet \nLoves everyone everyone\n\nProphet pumped the car-scar \nDeeper only sweeter \nLoves everyone
Romany soup \nI gotta get some ooh \nRomany soup\n\n(repeat)
A root of star I gave to thee \nFrom the canyons of the sea \nA jewel of Frost that was lost \nIn days of dreams when we were free \n\nA shield of bronze a thousand gongs \nThat calls the Queen of Dreams to me \nA mask of jade I shyly laid \nTo thy form of finery \nA root of star baby.
+++[Info]\nRecorded at BBC Radio, 1971 - Unreleased during Bolan's lifetime.\n===\n\n\nSailors of the highway,\nCome to me in my dreams.\nSailors of the highway,\nCome to me in my dreams.\nI might look you in the face,\nBut life's not what it seems.\n\nSailors of the highway,\nCome to me and be my friend.\nSailors of the highway,\nCome to me and be my friend.\nSway like a willow,\nBut my soul she won't bend.\n\nSailors of the highway,\nCloak me in midnight rags.\nDress me in the vineyards,\nOf the changeling witch of New York.\nAnd I sit like a lion,\nBut baby, make your highmoon talk.\n\nBaby of the highway,\nTake me to the unknown sea.\n'for I'll kiss you and caress you\nAnd make you look at just like me.\nThen the lions of night will drop you\nAnd set you free
+++[Info]\na-side [[One Inch Rock]]\n===\n\nSmall girl with the smiling gibbon \nBridled with an orchid ribbon \nHis curved brow in Scarlatti fashion \nBoots that ride the night sky eagle. \n\nSalamanda Palaganda \nOh Palamino Blue \nSalamanda Palaganda \nJune's buffalo too \nIn the Parisian zoo. \n\nAn old crone squirms upon a cushion \nMade from Madras silk and satin \nHer steel eyes hold a scimitar passion \nFor the skull hewn in Scarlatti fashion. \n\nSalamanda Palaganda \nOh Palamino Blue \nSalamanda Palaganda \nJune's buffalo too \nIn the Parisian zoo. \n\nA cobra seer with the punctured ear \nSlaughtered a Malayan sun bear \nNight stood erect with bronzen haunches \nZapped the seer and gave the bear back to us \n\nSalamanda Palaganda \nOh Palamino Blue \nSalamanda Palaganda \nJune's buffalo too \nIn the Parisian zoo
Sally was an angel\nBut angel's are a fake\nCould she just be a yesterday's scene\nTrying to make a break\n\nBut I'm so lonely, mama\nBut I'm so lonely\nThis fallen woman,\nIn my mind, the death of me\n\nSally was a girl child\nWhen I first knifed her heart\nNow she's dead, but whose this head\nSpeaking of things apart\n\nBut I'm so lonely, mama\nBut I'm so lonely\nThis fallen woman\nIn my mind, the death of me\n\nSally was a girl child\nWhen I first knifed her heart\nNow she's dead, but whose this head\nSpeaking of things apart\n\nWell I'm so lonely, mama\nWell I'm so lonely\nThis fallen woman\nGonna be in my mind, the death of me\n\nAhhh, Mama
+++[Info]\na-side [[The Third Degree]]\n===
+++[Info]\n''Sara'' was b-side to [[Midsummer Night's Scene]] and also ''Come And Play With Me In The Garden'' (John's Children) (non-Bolan track).\n===\n\nSara crazy child,\nis devouring all the streets.\nWith her pastel tortured dress\nAnd her seductive bongo-beat.\nHer skin is wild like the olives\nAnd her body's' bitter sweet.\nStill she's only just thirteen\nAnd she's forgotten how to dream.\n\nHer brother the juke-box King,\nWith his venom mildly sting\nAnd his knowledge twisted hair\nAnd his 1920's stare.\nHe lives beneath the roadway,\nIn a manner to his lair.\nIn summer he's a young boy,\nBut in winter he's a bear.\n\nBroken dusty mother,\nHer face melted just like wax.\nHer once gazelle like features,\nBlooded by the Ajax.\nReceived your picture postcard,\nOf the twosome of the one.\nSolely the submitted to the guillotine of their home
+++[Info]\na-side [[Teenage Dream]]\n===\n\nSatisfaction pony\nSatisfaction pony\nSatisfaction pony\nSatisfaction pony\n\nDoug the bug's an eggman\nDoug the bug's an eggman\nDoug the bug's an eggman\nDoug the bug's an eggman\nLike a jungle cut\nLike a jungle cut\n\nOh my\nSatisfaction pony\nSatisfaction pony\nSatisfaction pony\nSatisfaction pony\n\nFall into the rainbow (2x)\nFunky creole gumbo (2x)\nLife's the same, it will always be (2x)\nYeah yeah yeah\nSatisfaction pony\nDali bop horizon (2x)\nIs your life an inkwell\nWill it make your head swell\n
<<tiddler RecDetail \n with: \n 1977 \n [[Marc Bolan]] \n ProdMB\n "Posthumous Release"\n " "\n Band9\n " "\n>>\n\n++++\nI went down to your place baby\nOn a Saturday night\nEveryone we knew was there\nBut you were out of sight\n\nThere was Neon Henry\nWith the flashing head\nI knew him well\nBut any place is outer space\nWithout my girl\nAnd I'm singing\n\nI went down to your place baby\nOn a Saturday night\nEveryone we knew was there\nBut you were out of sight\n\nThere was pig-face Kim\nI knew her well\nBut where were you>\nEveryone we knew was there\nBut without you there seemed so few\nAnd I'm singing\n===
<<tiddler RecDetail \n with: \n 1977? \n [[Marc Bolan]] \n [[Marc Bolan]]\n "Posthumous Release"\n " "\n Band9\n " "\n>>\n\n+++[Lyric]\nOh yeah, I'm a Savage Beethoven\nOh yeah, I'm a Savage Beethoven\nI don't care, 'cos I'm no square\nOh yeah, I'm a Savage Beethoven\n\nWalking 'round at night\nSqueeze my trigger tight\nYou a tie-dye statuette\n'Cos you dance that midnight madness dance [??]\n\nBecause!\n\nOh yeah, I'm a Savage Beethoven\nOh yeah, I'm a Savage Beethoven\nI don't care, 'cos I'm no square\nOh yeah, I'm a Savage Beethoven\n\nWalking 'round at night\nSqueeze my trigger tight\nYou a tie-dye statuette\n'Cos you dance the minuet\n\nOh Gosh!\n\nOh yeah, I'm a Savage Beethoven\nOh yeah, I'm a Savage Beethoven\nI don't care, 'cos I'm no square\nOh yeah, I'm a Savage Beethoven\n\nWalking 'round at night\nSqueeze my trigger tight\nYou a tie-dye statuette\nWhen you dance the minuet\n\nOh Gosh!\n\nOh yeah, I'm a Savage Beethoven\nOh yeah, I'm a Savage Beethoven\nI don't care, 'cos I'm no square\nOh yeah, I'm a Savage Beethoven\n===
Smile your smile Mister Scenescof \nIts not hard to have run off \nOn a physical ride \nWith my babe by your side \nSmile your smile for a while \n\nIt was grand to have known her \nIt was grand to have known her \nI don't need anyone \nTo dictate all my fun \nSmile your smile and then run \n
Meeting behind the iron sling \nMy brandy tongue was like a caterpillar thing \nSuzy-hung up on Joan of Arc \nCloudily gave me the key to the dark \nScraping the lice from my bed \nI sussed we were teleported into his head \nA wormy blood train expected our feet \nBut I cradled Suzy's head in my lap \nAnd fitted the stair into her gap \nAnd led her off the Astral plane \nSculptin' her features in flesh \nHer Alice eyes scan the mythical scene \nAnd rose on the veiny snake train \nAnd prayed to his bastille sky brain \nThe driver was a cancer growth cell \nHis words were just recorded tapes of Hell \nHe left us in the room of faded scrolls \nIn a window wall we saw a good thought chained \nBut knifed into a portion of his brain \nWas a whitish through back to the green \nAmazon leach\n \nIt was interlocked between his angel eyes \nWhich were bleached transparent \nAnd his marble lips were paralised \nWe swum and ran knee deep in plasma \nThe cello stairs redeced in size \nThe sunken landscape eclipsing into \nA pair of blue Tazmainian eyes \nScenescof then became a midget \nScratching at the bone in my knee \nThen an ear without a body \nListening to my mental sea \nSuzy sat behind some loose flesh \nHer pirate thoughts were both young and old \nReduced to wearing bloodclot earings \nShe held me near she felt the cold \nWe ran just like young fauns \nAnd me I fought a great worm \nSent to taste my jaguar feet \nAnd used his skin to make my wings begin \nI sussed and stole a scene from Icarus \nAnd flew us above some uncooked meat \nA plastic hook pierced through my instep \nI flew too near his Brutus heart \nBut Suzy hip to all the future \nPlayed the victorian heroin's part \nWith my busted leg and rusty head \nAnd Suzy in a Hipolite dream \nI brandished my breathing machette \n\nWhile Scenescof prepared his gorgon machine \nIt flew out from his eyelid island \nIt's vulcan teeth and hydra spray \nIt's scaley tong claws ripping rainbows \nit moved it's cave lips in worlds of movement \nIt makes a sound it seemed to say \nKeep cool the satin sun is yours \nI see your youthy aura's bright \nExpell your tears and jungle fears \nI'm here it's going to be alright \n\nThen Scenescof screamed his charlatan hair \nQuick silvered from black to grey \nThen the gorgon moved the lizard dial \nAnd was transformed into Grecian dust \nAnd from the sand was born a blackened horned storm \nWith a charger and a spear \nAs he moved his limbs \nThe legend shaft sliced Scenescof from ear to ear...
One day she came like a seagull woman \nOne day she came \n\nOne day she came like a seagull woman \nOne day she came \n\nOne day we change from children into people \nOne day we change \n\nOne day she went like a seagull woman \nOne day.
In this crazy world\nWhere jive's the game\nThey've got lonely me\nGold plated on their brains\n\nSlash cut boogie strut\nThe mark of the beast\nWatch the groovies dance\nAt the peacock feast\n\nLady luck I want you\nBumping by my side\nLike a silk shod connector\nOn a midnight ride\n\nTake me down to Sensation Boulevard\nTake me down to Sensation Boulevard\nI got to go down
She was born to be my Unicorn \nRobed head of ferns \nCat child. tutored by the learned. \n\nDarkly ghostish host \nHaggard vizier of the moats \nSeeks the sandled shores of Gods \nBaby of the moors. \n\nThe night-mare's mauve mashed mind \nSights the visions of the blinds \nShoreside stream of steam \nCooking kings in cream of scream. \n\nJackdaw winter head \nCleans his chalcedony bed \nA silken word of kind \nWas returned from Nijinsky Hind. \nGiant of Inca hill \nLoosed his boar to gorely kill \nThe dancing one-horned waife \nIn doublet of puffin-bill. \n\nThe beast in feast of sound \nKittened lamb on God's ground \nRidden by the born of horn \nJigged like a muse on life's lawn
Oh baby pretty baby\nOh baby your my girl\nOh baby pretty baby\nOh baby your my \nYour my girl\n\nIf you know how to rock\nYou don't have to shock\nIf you know how to rock\nYou don't have to shock
<<tiddler RecDetail \n with: \n 1977\n [[Marc Bolan & T.Rex]] \n [[Marc Bolan]]\n "Posthumous Release. Released on [[Billy Super Duper]]."\n " "\n Band9\n " "\n>>\n\n++++\n\nI don't want to be no shy boy.\nThe one that always cries boy\nAnd never gets his qirl.\nDon't you understand that.\n\nIยดve got to have that girl boy,\nTo be my pride and joy boy,\nTo hold her hand.\nIn loveยดs magical land.\n\nI know that Iยดm a young boy.\nA kind of unsung boy,\nNot a man of the world.\nBut baby you know that.\n\nLove is a wonderful thing girl.\nTurns a prince into a King girl.\nDonยดt you understand.\n\nAnd when I'm all alone,\nI wait for the telephone to ring.\n\nI don't want to be no shy boy,\nThe one that always cries boy\nAnd never gets his girl.\nDon't you understand that.\n\nI've got to have that girl boy.\nTo be my pride and joy boy,\nTo hold her hand.\nIn loveยดs magical land.\n\nI know that l' m a young boy.\nA kind of unsung boy.\nNot a man of the world\n===
<<search>><<closeAll>><<permaview>><<newTiddler>>/%<<newJournal 'DD MMM YYYY'>>%/<<saveChanges>><<upload http://videodrama.tiddlyspot.com/store.cgi index.html . . videodrama>><html><a href='http://tiddlyspot.com/download/videodrama' class='button'>download</a></html><<slider chkSliderOptionsPanel OptionsPanel 'options ยป' 'Change TiddlyWiki advanced options'>>
/***\nThis CSS by DaveBirss.\n***/\n/*{{{*/\n\n.tabSelected {\n background: #fff;\n}\n\n.tabUnselected {\n background: #eee;\n}\n\n#sidebar {\n color: #000;\n}\n\n#sidebarOptions {\n background: #fff;\n}\n\n#sidebarOptions .button {\n color: #999;\n}\n\n#sidebarOptions .button:hover {\n color: #000;\n background: #fff;\n border-color:white;\n}\n\n#sidebarOptions .button:active {\n color: #000;\n background: #fff;\n}\n\n#sidebarOptions .sliderPanel {\n background: transparent;\n}\n\n#sidebarOptions .sliderPanel A {\n color: #999;\n}\n\n#sidebarOptions .sliderPanel A:hover {\n color: #000;\n background: #fff;\n}\n\n#sidebarOptions .sliderPanel A:active {\n color: #000;\n background: #fff;\n}\n\n.sidebarSubHeading {\n color: #000;\n}\n\n#sidebarTabs {`\n background: #fff\n}\n\n#sidebarTabs .tabSelected {\n color: #000;\n background: #fff;\n border-top: solid 1px #ccc;\n border-left: solid 1px #ccc;\n border-right: solid 1px #ccc;\n border-bottom: none;\n}\n\n#sidebarTabs .tabUnselected {\n color: #999;\n background: #eee;\n border-top: solid 1px #ccc;\n border-left: solid 1px #ccc;\n border-right: solid 1px #ccc;\n border-bottom: none;\n}\n\n#sidebarTabs .tabContents {\n background: #fff;\n}\n\n\n#sidebarTabs .txtMoreTab .tabSelected {\n background: #fff;\n}\n\n#sidebarTabs .txtMoreTab .tabUnselected {\n background: #eee;\n}\n\n#sidebarTabs .txtMoreTab .tabContents {\n background: #fff;\n}\n\n#sidebarTabs .tabContents .tiddlyLink {\n color: #999;\n}\n\n#sidebarTabs .tabContents .tiddlyLink:hover {\n background: #fff;\n color: #000;\n}\n\n#sidebarTabs .tabContents {\n color: #000;\n}\n\n#sidebarTabs .button {\n color: #666;\n}\n\n#sidebarTabs .tabContents .button:hover {\n color: #000;\n background: #fff;\n}\n\n/*}}}*/
<<tiddler RecDetail \n with: \n 1977\n [[T.Rex]] \n [[Marc Bolan]]\n "Theme tune for the TV show 'Marc'. Same tune as [[Celebrate Summer]]."\n " "\n Band9\n " "\n>>\n\n++++\nSing me a song that the world can sing along\nAnd I'll show you a song that stands for living\nSing me a song that the world can sing along\nAnd I'll show you a song from the heart\n\nWhite, blinding light, that's so bright\nIt enfolds you\nScream that's your dream, it's so real\nIt remoulds you\n\nSing me a song that the world can sing along\nAnd I'll show you a song that stands for living\nSing me a song that the world can sing along\nAnd I'll show you a song from the heart\n\nYeah, Yeah\n\nWhite, blinding light, that's so bright\nIt enfolds you\n\nSing me a song that the world can sing along\nAnd I'll show you a song that stands for living\nSing me a song that the world can sing along\nAnd I'll show you a song from the heart \n===
|[[The Wizard]]|November 19, 1965|\n|[[The Third Degree]]|June 3, 1966|\n|[[Hippy Gumbo]]|November 25, 1966|\n|[[Desdemona]]|May 24, 1967|\n|[[Midsummer Night's Scene]]|July 14, 1967|\n|[[Go Go Girl]]|December 1967|\n|[[Debora]]|April 19, 1968|\n|[[One Inch Rock]]|August 23, 1968|\n|[[King Of The Rumbling Spires]]|July 25, 1969|\n|[[Pewter Suitor]]|January 14, 1969|\n|[[By The Light Of The Magical Moon]]|January 20, 1970|\n|[[Oh Baby]]|August 1970|\n|[[Ride A White Swan]]|October 2, 1970|\n|[[Hot Love]]|February 19, 1971|\n|[[Get It On (Bang a Gong)]]|July 2, 1971|\n|[[Jeepster]]|November 11, 1971|\n|[[Telegram Sam]]|January 21, 1972|\n|[[Debora]]|March 24, 1972|\n|[[Metal Guru]]|May 5, 1972|\n|[[Children Of The Revolution]]|September 9, 1972|\n|[[Solid Gold & Easy Action]]|December 12, 1972|\n|[[20th Century Boy]]|March 2, 1973|\n|[[The Groover]]|June 1, 1973|\n|[[Blackjack]]|August 10, 1973|\n|[[Truck On (Tyke)]]|November 16, 1973|\n|[[Teenage Dream]]|February 9, 1974|\n|[[Jasper C. Debussy]]|June 12, 1974|\n|[[Light Of Love]]|July 13, 1974|\n|[[Zip Gun Boogie]]|November 1, 1974|\n|[[New York City]]|June 21, 1975|\n|[[Dreamy Lady]]|September 26, 1975|\n|[[London Boys]]|February 21, 1976|\n|[[I Love To Boogie]]|June 5, 1976|\n|[[Laser Love]]|September 17, 1976|\n|[[City Port]] b-side to //To Know Him Is To Love Him//|January 14, 1977|\n|[[The Soul Of My Suit]]|March 12, 1977|\n|[[Dandy In The Underworld (Song)]]|May 30, 1977|\n|[[Celebrate Summer]]|August 5, 1977|\n\n\n\n
Backing vocalist with T.Rex 1974 ~ ?
The Ultimate Marc Bolan & T.Rex Song and Lyric database\n
[img[http://static.flickr.com/64/218997190_ac21e4fc68.jpg]] @@font-size:32pt;~VideoDRAMA II@@
+++[Info]\na-side [[Truck On (Tyke)]]\n===\n\n\nSitting here I don't care for you (oh no no no)\nSitting there you don't care for me (oh no no)\nBut I think that's love\nAin't that funny\n\nSitting there you don't care for me (oh no no)\nSitting here I don't care for you (oh no no no)\nBut I think that's love\nAin't that funny\n\nOh-Oh\nLove's a wonderful thing it comes and goes\nEven when I'm picking my nose\nOoh\n\nSitting there you don't care for me (oh no no)\nSitting here I don't care for you (oh no no no)\nBut I think that's love\nAin't that funny\n\nOh-Oh\nLove's so wonderful Babe it comes and goes\nEven when I'm picking my nose\nOoh\n\nYeah, yeah, yeah
+++[Info]\na-side [[London Boys]]\n===\n\n\nOh baby who's the solid baby\nWho's gonna love me tonight\nOh baby who's the solid baby\nWho's gonna love me tongiht\nTonight who's gonna love me tonight\n\nOoh baby I'm the gentlest baby\nI'll be stroking tonight\nOoh baby I'm the gentlest baby\nI'll be stroking till light\nTonight.... yes tonight\n\n-Oh baby who's the solid baby-\nWell don't you know that I am\n-Oh baby, who's the solid baby-\nCan't you hear me cryin'\n-Oh baby, who's the solid baby-\nOoh it's got to be me \n\nSolid baby who's the solid baby\nWho's gonna love me tonight\nSolid baby who's the solid baby\n\nPlease treat me right\nTonight .....yes tonight
+++[Info]\nb-side [[Born To Boogie]]\n===\n\n\nHey hey hey\n\nLife is the same and it always will be\nHey hey hey\nAs easy as picking foxes from a tree\nHey hey hey\nBut I can't get no satisfaction\nAll I want is easy action\nHey, hey, hey\nHey, hey, hey\n\nA stud is a lamb with thoughts of a tiger \nHey, hey, hey\nHe moves like a cat and knows how to ride her\nHey, hey, hey\nBut I can't get no satisfaction\nAll I want is easy action\nHey, hey, hey\n\nStroll On \nBut I can't get no satisfaction\nAll I want is easy action\nHey, hey, hey\n\nA woman from the east with her headlights shinning\nHey, hey, hey\nEased my pain and stopped my crying\nHey, hey, hey\nBut I can't get no satisfaction\nAll I want is easy action\nHey, hey, hey\n\nAnd all my hair will keep her smiling\nWith my wonderous walk and my telephone dialing\nBut I can't get no satisfaction\nAll I want is easy action\nHey, hey, hey\n\n\nI know you're shrewed\nAnd she's a dude\nBut all i want is easy action\nI know you're shrewed\nAnd she's a dude\nBut all i want is easy action baby\nHey, hey, hey\n\nStroll On \nHey, hey, hey\nHey, hey, hey\nHey, hey, hey
Basil Dazzle and her dissolving city\nStella Gazelle and the distraction I bought her\nI wonder why oh why\n\nDebora Zebra and the disgusting gawk\nMalice to Pallas at the all night palace with Alice\nI wonder why\nI wonder why\n\nMetal Guru's in the loo with my glue \nTelegram Sam bought some land in Milan\nI wonder why\n\nThin faced Sally skinned a cat in my alley\nDawn sunstorm minister of doom, in your tomb\nI wonder why\nLord I wonder why\nI wonder why
+++[Info]\na-side [[Zip Gun Boogie]]\n===\n\n\nSpace Boss\nSpace Boss\nWrapped and packed and pressed to go out\nRock and Roll is welcome where I'm at\n\nAre you the space boss\nWill you see me at any cost\nAre you are you are you are you\nAre you now\nAre you are you are you are you\nAre you now\nThe space boss\n\nReady the flight thrust\nDid you crunch your aircraft\nAre you are you are you are you\nAre you now\nAre you are you are you are you\nAre you now\nThe space boss\n\nThe identical twin\nAnd her diluted \nFluted grin\nOooh\n\nAre you are you are you are you\nAre you now\nAre you are you are you are you\nAre you now\nThe space boss\nThe space boss say it again\n\nI said are you are you are you are you\nAre you now\nAre you are you are you are you\nAre you now\nThe space boss\nThe space boss\nCan you dig it\nNow you've lighted my innermost eye\nIt's Rock and Roll stuff\n\nYour the Space Boss\nIt ain't nothin' \nNo it wouldn't be lost\nIf I could mould my hands with the Space Boss\nLike a S-P-A-C-E\nThat spells -space- baby
I'm just a man \nI understand the wind \nAnd all the things \nThat make the children cry \n\nWith my Les Paul \nI know I'm small \nBut I enjoy living \nAnyway \n\nBook after book \nI get hooked \nEverytime the writer \nTalks to me like a friend \n\nWhat can I do \nWe just live in a zoo \nAll I do is play \nThe spaceball ricochet \n\nDeep in my heart \nThreeยนs a house \nThat can hold \nAlmost all of you \n\nI brought a car \nIt was old but kind \nI gave it my mind \nAnd it disappeared \n\nI love a girl \nShe is a changeless angel \nShe's a city it's a pity \nThat I'm like me \n\nI said how can I lay\nWhen all I do is play\nThe spaceball ricochet
/***\n\n''Inspired by [[TiddlyPom|http://www.warwick.ac.uk/~tuspam/tiddlypom.html]]''\n\n|Name|SplashScreenPlugin|\n|Created by|SaqImtiaz|\n|Location|http://lewcid.googlepages.com/lewcid.html#SplashScreenPlugin|\n|Version|0.21 |\n|Requires|~TW2.08+|\n!Description:\nProvides a simple splash screen that is visible while the TW is loading.\n\n!Installation\nCopy the source text of this tiddler to your TW in a new tiddler, tag it with systemConfig and save and reload. The SplashScreen will now be installed and will be visible the next time you reload your TW.\n\n!Customizing\nOnce the SplashScreen has been installed and you have reloaded your TW, the splash screen html will be present in the MarkupPreHead tiddler. You can edit it and customize to your needs.\n\n!History\n* 20-07-06 : version 0.21, modified to hide contentWrapper while SplashScreen is displayed.\n* 26-06-06 : version 0.2, first release\n\n!Code\n***/\n//{{{\nvar old_lewcid_splash_restart=restart;\n\nrestart = function()\n{ if (document.getElementById("SplashScreen"))\n document.getElementById("SplashScreen").style.display = "none";\n if (document.getElementById("contentWrapper"))\n document.getElementById("contentWrapper").style.display = "block";\n \n old_lewcid_splash_restart();\n \n if (splashScreenInstall)\n {if(config.options.chkAutoSave)\n {saveChanges();}\n displayMessage("TW SplashScreen has been installed, please save and refresh your TW.");\n }\n}\n\n\nvar oldText = store.getTiddlerText("MarkupPreHead");\nif (oldText.indexOf("SplashScreen")==-1)\n {var siteTitle = store.getTiddlerText("SiteTitle");\n var splasher='\sn\sn<style type="text/css">#contentWrapper {display:none;}</style><div id="SplashScreen" style="border: 3px solid #ccc; display: block; text-align: center; width: 320px; margin: 100px auto; padding: 50px; color:#000; font-size: 28px; font-family:Tahoma; background-color:#eee;"><b>'+siteTitle +'</b> is loading<blink> ...</blink><br><br><span style="font-size: 14px; color:red;">Requires Javascript.</span></div>';\n if (! store.tiddlerExists("MarkupPreHead"))\n {var myTiddler = store.createTiddler("MarkupPreHead");}\n else\n {var myTiddler = store.getTiddler("MarkupPreHead");}\n myTiddler.set(myTiddler.title,oldText+splasher,config.options.txtUserName,null,null);\n store.setDirty(true);\n var splashScreenInstall = true;\n}\n//}}}
+++[Info]\na-side [[Blackjack]]\n===\n\nInstrumental.
Stacy Grove he's a roaming prophet of mine, \nHat full of wine. \nStacy Grove he's a roving catcher of skies, \nForecaster of eyes, so no lies. \n\nSt-d-d-Stacey Stacey Grove\nO-oh he's a nice cat\n\nDungeree dome is decked like a pagan temple to Zeus \nHe drinks acorn juice. \nRoasting his feet by the furnace of peat, \nHe roars at the boars who massively sleep at his feet. \n\nAntelope head his beard skylark red \nIs tucked 'neath the good of his summer sun hood. \nAnd now that the gate of his evening is late \nHe sits on a log picking ticks off the back of his dog. \n\n
[img[http://static.flickr.com/89/217709945_bf659e5d75_m.jpg]]\nSteve Currie, Bass Guitar player with T.Rex 1970 ~ 1975?
''Steve Peregrin Took'' played percussion on the first three [[Tyrannosaurus Rex]] albums.
Let's get some stones \nFor Avalon \nLet's get some stones \nFor Avalon \nFor Avalon \n\nLet's steal some stars \nFor Avalon \nLet's steal some stars \nFor Avalon \nFor Avalon \n\nNobody knows where \nAvalon goes \nNobody knows \n\nLet's make a quest \nFor Avalon \nQuest for finger cymbal \nand gong \nFor Avalon \n\nNobody sees what \nAvalon sees \nNobody sees
Saw a face in a conical of lace, it was a strange orchestra\nMannikin skin pounding on a bass-drum, strange orchestra\n\nLillipution, evil in the eyes of the man with the leaf harp\nHe lusts for the urchin hiding under mountains of mole skin\n\nA big cat like t-tyrannosaurus going to Lilliput\nThe ensemble make a tiny rumble, the celloist solos\n\nThe sky blackens and the bass string slackens \nand they stand statuesquely\nThen they giggle and they wiggle through the door\nin the big dark oak tree\n
[[VideoDRAMAStyles]]\n/***\nCosmetic fixes that probably should be included in a future TW...\n***/\n/*{{{*/\n.viewer .listTitle { list-style-type:none; margin-left:-2em; }\n.editorFooter .button { padding-top: 0px; padding-bottom:0px; }\n/*}}}*/\n/***\nImportant stuff. See TagglyTaggingStyles and HorizontalMainMenuStyles\n***/\n/*{{{*/\n[[TagglyTaggingStyles]]\n[[HorizontalMainMenuStyles]]\n/*}}}*/\n/***\nClint's fix for weird IE behaviours\n***/\n/*{{{*/\nbody {position:static;}\n.tagClear{margin-top:1em;clear:both;}\n/*}}}*/\n/***\nJust colours, fonts, tweaks etc. See SideBarWhiteAndGrey\n***/\n/*{{{*/\nbody {background:#eee; /* font-size:103%; */}\na{ color: #069; }\na:hover{ background: #069; color: #fff; }\n.popup { background: #178; border: 1px solid #069; }\n.headerForeground a { color: #6fc;}\n.headerShadow { left: 2px; top: 2px; }\n.title { padding:0px; margin:0px; }\n.siteSubtitle { padding:0px; margin:0px; padding-left:1.5em; }\n.subtitle { font-size:90%; color:#ccc; padding-left:0.25em; }\nh1,h2,h3,h4,h5 { color: #000; background: transparent; }\n.title {color:black; font-size:2em;}\n.shadow .title {color:#999; }\n.viewer pre { background-color:#f8f8ff; border-color:#ddf; }\n.viewer { padding-top:0px; }\n.editor textarea { font-family:monospace; }\n#sidebarOptions { border:1px #ccc solid; }\n.tiddler {\n border-bottom:1px solid #ccc; border-right:1px solid #ccc; padding-bottom:1em; margin-bottom:1em; \n background:#fff; padding-right:1.5em; }\n#messageArea { background-color:#bde; border-color:#8ab; border-width:4px; border-style:dotted; font-size:90%; }\n#messageArea .button { text-decoration:none; font-weight:bold; background:transparent; border:0px; }\n#messageArea .button:hover {background: #acd; }\n[[SideBarWhiteAndGrey]]\n\n#adsense {\n margin: 1em 15.7em 0em 1em; border:1px solid #ddd;\n background:#f8f8f8; text-align:center;margin-bottom:1em;overflow:hidden;padding:0.5em;} \n/*}}}*/\n/*{{{*/\n/* for testing clint's new formatter. eg {{red{asdfaf}}} */\n.red { color:white; background:red; display:block; padding:1em; } \n\n/* FF doesn't need this. but IE seems to want to make first one white */\n.txtMainTab .tabset { background:#eee; }\n.txtMoreTab .tabset { background:transparent; }\n\n/*}}}*/\n
/***\n!Colors Used\n*@@bgcolor(#8cf): #8cf - Background blue@@\n*@@bgcolor(#18f): #18f - Top blue@@\n*@@bgcolor(#04b): #04b - Mid blue@@\n*@@bgcolor(#014):color(#fff): #014 - Bottom blue@@\n*@@bgcolor(#ffc): #ffc - Bright yellow@@\n*@@bgcolor(#fe8): #fe8 - Highlight yellow@@\n*@@bgcolor(#db4): #db4 - Background yellow@@\n*@@bgcolor(#841): #841 - Border yellow@@\n*@@bgcolor(#703):color(#fff): #703 - Title red@@\n*@@bgcolor(#866): #866 - Subtitle grey@@\n!Generic Rules /%==============================================%/\n***/\n/*{{{*/\nbody {\n background: #fff;\n color: #000;\n}\n\na{\n color: #04b;\n}\n\na:hover{\n background: #04b;\n color: #fff;\n}\n\na img{\n border: 0;\n}\n\nh1,h2,h3,h4,h5 {\n color: #703;\n background: #8cf;\n}\n\n.button {\n color: #014;\n border: 1px solid #fff;\n}\n\n.button:hover {\n color: #014;\n background: #fe8;\n border-color: #db4;\n}\n\n.button:active {\n color: #fff;\n background: #db4;\n border: 1px solid #841;\n}\n\n/*}}}*/\n/***\n!Header /%==================================================%/\n***/\n/*{{{*/\n.header {\n background: #04b;\n}\n\n.headerShadow {\n color: #000;\n}\n\n.headerShadow a {\n font-weight: normal;\n color: #000;\n}\n\n.headerForeground {\n color: #fff;\n}\n\n.headerForeground a {\n font-weight: normal;\n color: #8cf;\n}\n\n/*}}}*/\n/***\n!General tabs /%=================================================%/\n***/\n/*{{{*/\n\n.tabSelected{\n color: #014;\n background: #eee;\n border-left: 1px solid #ccc;\n border-top: 1px solid #ccc;\n border-right: 1px solid #ccc;\n}\n\n.tabUnselected {\n color: #fff;\n background: #999;\n}\n\n.tabContents {\n color: #014;\n background: #eee;\n border: 1px solid #ccc;\n}\n\n.tabContents .button {\n border: 0;}\n\n/*}}}*/\n/***\n!Sidebar options /%=================================================%/\n~TiddlyLinks and buttons are treated identically in the sidebar and slider panel\n***/\n/*{{{*/\n#sidebar {\n}\n\n#sidebarOptions input {\n border: 1px solid #04b;\n}\n\n#sidebarOptions .sliderPanel {\n background: #8cf;\n}\n\n#sidebarOptions .sliderPanel a {\n border: none;\n color: #04b;\n}\n\n#sidebarOptions .sliderPanel a:hover {\n color: #fff;\n background: #04b;\n}\n\n#sidebarOptions .sliderPanel a:active {\n color: #04b;\n background: #fff;\n}\n/*}}}*/\n/***\n!Message Area /%=================================================%/\n***/\n/*{{{*/\n#messageArea {\n border: 1px solid #841;\n background: #db4;\n color: #014;\n}\n\n#messageArea .button {\n padding: 0.2em 0.2em 0.2em 0.2em;\n color: #014;\n background: #fff;\n}\n\n/*}}}*/\n/***\n!Popup /%=================================================%/\n***/\n/*{{{*/\n.popup {\n background: #18f;\n border: 1px solid #04b;\n}\n\n.popup hr {\n color: #014;\n background: #014;\n border-bottom: 1px;\n}\n\n.popup li.disabled {\n color: #04b;\n}\n\n.popup li a, .popup li a:visited {\n color: #eee;\n border: none;\n}\n\n.popup li a:hover {\n background: #014;\n color: #fff;\n border: none;\n}\n/*}}}*/\n/***\n!Tiddler Display /%=================================================%/\n***/\n/*{{{*/\n.tiddler .defaultCommand {\n font-weight: bold;\n}\n\n.shadow .title {\n color: #866;\n}\n\n.title {\n color: #703;\n}\n\n.subtitle {\n color: #866;\n}\n\n.toolbar {\n color: #04b;\n}\n\n.tagging, .tagged {\n border: 1px solid #eee;\n background-color: #eee;\n}\n\n.selected .tagging, .selected .tagged {\n background-color: #ddd;\n border: 1px solid #bbb;\n}\n\n.tagging .listTitle, .tagged .listTitle {\n color: #014;\n}\n\n.tagging .button, .tagged .button {\n border: none;\n}\n\n.footer {\n color: #ddd;\n}\n\n.selected .footer {\n color: #888;\n}\n\n.sparkline {\n background: #8cf;\n border: 0;\n}\n\n.sparktick {\n background: #014;\n}\n\n.errorButton {\n color: #ff0;\n background: #f00;\n}\n\n.cascade {\n background: #eef;\n color: #aac;\n border: 1px solid #aac;\n}\n\n.imageLink, #displayArea .imageLink {\n background: transparent;\n}\n\n/*}}}*/\n/***\n''The viewer is where the tiddler content is displayed'' /%------------------------------------------------%/\n***/\n/*{{{*/\n\n.viewer .listTitle {list-style-type: none; margin-left: -2em;}\n\n.viewer .button {\n border: 1px solid #db4;\n}\n\n.viewer blockquote {\n border-left: 3px solid #666;\n}\n\n.viewer table {\n border: 2px solid #333;\n}\n\n.viewer th, thead td {\n background: #db4;\n border: 1px solid #666;\n color: #fff;\n}\n\n.viewer td, .viewer tr {\n border: 1px solid #666;\n}\n\n.viewer pre {\n border: 1px solid #fe8;\n background: #ffc;\n}\n\n.viewer code {\n color: #703;\n}\n\n.viewer hr {\n border: 0;\n border-top: dashed 1px #666;\n color: #666;\n}\n\n.highlight, .marked {\n background: #fe8;\n}\n/*}}}*/\n/***\n''The editor replaces the viewer in the tiddler'' /%------------------------------------------------%/\n***/\n/*{{{*/\n.editor input {\n border: 1px solid #04b;\n}\n\n.editor textarea {\n border: 1px solid #04b;\n width: 100%;\n}\n\n.editorFooter {\n color: #aaa;\n}\n\n/*}}}*/
/***\n!Sections in this Tiddler:\n*Generic rules\n**Links styles\n**Link Exceptions\n*Header\n*Main menu\n*Sidebar\n**Sidebar options\n**Sidebar tabs\n*Message area\n*Popup\n*Tabs\n*Tiddler display\n**Viewer\n**Editor\n*Misc. rules\n!Generic Rules /%==============================================%/\n***/\n/*{{{*/\nbody {\n font-size: .75em;\n font-family: arial,helvetica;\n position: relative;\n margin: 0;\n padding: 0;\n}\n\nh1,h2,h3,h4,h5 {\n font-weight: bold;\n text-decoration: none;\n padding-left: 0.4em;\n}\n\nh1 {font-size: 1.35em;}\nh2 {font-size: 1.25em;}\nh3 {font-size: 1.1em;}\nh4 {font-size: 1em;}\nh5 {font-size: .9em;}\n\nhr {\n height: 1px;\n}\n\na{\n text-decoration: none;\n}\n\nol { list-style-type: decimal }\nol ol { list-style-type: lower-alpha }\nol ol ol { list-style-type: lower-roman }\nol ol ol ol { list-style-type: decimal }\nol ol ol ol ol { list-style-type: lower-alpha }\nol ol ol ol ol ol { list-style-type: lower-roman }\nol ol ol ol ol ol ol { list-style-type: decimal }\n/*}}}*/\n/***\n''General Link Styles'' /%-----------------------------------------------------------------------------%/\n***/\n/*{{{*/\n.externalLink {\n text-decoration: underline;\n}\n\n.tiddlyLinkExisting {\n font-weight: bold;\n}\n\n.tiddlyLinkNonExisting {\n font-style: italic;\n}\n\n/* the 'a' is required for IE, otherwise it renders the whole tiddler a bold */\na.tiddlyLinkNonExisting.shadow {\n font-weight: bold;\n}\n/*}}}*/\n/***\n''Exceptions to common link styles'' /%------------------------------------------------------------------%/\n***/\n/*{{{*/\n\n#mainMenu .tiddlyLinkExisting, \n#mainMenu .tiddlyLinkNonExisting,\n#sidebarTabs .tiddlyLinkExisting,\n#sidebarTabs .tiddlyLinkNonExisting{\n font-weight: normal;\n font-style: normal;\n}\n\n/*}}}*/\n/***\n!Header /%==================================================%/\n***/\n/*{{{*/\n\n.header {\n position: relative;\n}\n\n.header a:hover {\n background: transparent;\n}\n\n.headerShadow {\n position: relative;\n padding: 1em 0em 1em 1em;\n left: -1px;\n top: -1px;\n}\n\n.headerForeground {\n position: absolute;\n padding: 1em 0em 1em 1em;\n left: 0px;\n top: 0px;\n}\n\n.siteTitle {\n font-size: 3em;\n}\n\n.siteSubtitle {\n font-size: 1.2em;\n}\n\n/*}}}*/\n/***\n!Main menu /%==================================================%/\n***/\n/*{{{*/\n#mainMenu {\n position: absolute;\n left: 0;\n width: 10em;\n text-align: right;\n line-height: 1.6em;\n padding: 1.5em 0.5em 0.5em 0.5em;\n font-size: 1.1em;\n}\n\n/*}}}*/\n/***\n!Sidebar rules /%==================================================%/\n***/\n/*{{{*/\n#sidebar {\n position: absolute;\n right: 3px;\n width: 16em;\n font-size: .9em;\n}\n/*}}}*/\n/***\n''Sidebar options'' /%----------------------------------------------------------------------------------%/\n***/\n/*{{{*/\n#sidebarOptions {\n padding-top: 0.3em;\n}\n\n#sidebarOptions a {\n margin: 0em 0.2em;\n padding: 0.2em 0.3em;\n display: block;\n}\n\n#sidebarOptions input {\n margin: 0.4em 0.5em;\n}\n\n#sidebarOptions .sliderPanel {\n margin-left: 1em;\n padding: 0.5em;\n font-size: .85em;\n}\n\n#sidebarOptions .sliderPanel a {\n font-weight: bold;\n display: inline;\n padding: 0;\n}\n\n#sidebarOptions .sliderPanel input {\n margin: 0 0 .3em 0;\n}\n/*}}}*/\n/***\n''Sidebar tabs'' /%-------------------------------------------------------------------------------------%/\n***/\n/*{{{*/\n\n#sidebarTabs .tabContents {\n width: 15em;\n overflow: hidden;\n}\n\n/*}}}*/\n/***\n!Message area /%==================================================%/\n***/\n/*{{{*/\n#messageArea {\nposition:absolute; top:0; right:0; margin: 0.5em; padding: 0.5em;\n}\n\n*[id='messageArea'] {\nposition:fixed !important; z-index:99;}\n\n.messageToolbar {\ndisplay: block;\ntext-align: right;\n}\n\n#messageArea a{\n text-decoration: underline;\n}\n/*}}}*/\n/***\n!Popup /%==================================================%/\n***/\n/*{{{*/\n.popup {\n font-size: .9em;\n padding: 0.2em;\n list-style: none;\n margin: 0;\n}\n\n.popup hr {\n display: block;\n height: 1px;\n width: auto;\n padding: 0;\n margin: 0.2em 0em;\n}\n\n.popup li.disabled {\n padding: 0.2em;\n}\n\n.popup li a{\n display: block;\n padding: 0.2em;\n}\n/*}}}*/\n/***\n!Tabs /%==================================================%/\n***/\n/*{{{*/\n.tabset {\n padding: 1em 0em 0em 0.5em;\n}\n\n.tab {\n margin: 0em 0em 0em 0.25em;\n padding: 2px;\n}\n\n.tabContents {\n padding: 0.5em;\n}\n\n.tabContents ul, .tabContents ol {\n margin: 0;\n padding: 0;\n}\n\n.txtMainTab .tabContents li {\n list-style: none;\n}\n\n.tabContents li.listLink {\n margin-left: .75em;\n}\n/*}}}*/\n/***\n!Tiddler display rules /%==================================================%/\n***/\n/*{{{*/\n#displayArea {\n margin: 1em 17em 0em 14em;\n}\n\n\n.toolbar {\n text-align: right;\n font-size: .9em;\n visibility: hidden;\n}\n\n.selected .toolbar {\n visibility: visible;\n}\n\n.tiddler {\n padding: 1em 1em 0em 1em;\n}\n\n.missing .viewer,.missing .title {\n font-style: italic;\n}\n\n.title {\n font-size: 1.6em;\n font-weight: bold;\n}\n\n.missing .subtitle {\n display: none;\n}\n\n.subtitle {\n font-size: 1.1em;\n}\n\n/* I'm not a fan of how button looks in tiddlers... */\n.tiddler .button {\n padding: 0.2em 0.4em;\n}\n\n.tagging {\nmargin: 0.5em 0.5em 0.5em 0;\nfloat: left;\ndisplay: none;\n}\n\n.isTag .tagging {\ndisplay: block;\n}\n\n.tagged {\nmargin: 0.5em;\nfloat: right;\n}\n\n.tagging, .tagged {\nfont-size: 0.9em;\npadding: 0.25em;\n}\n\n.tagging ul, .tagged ul {\nlist-style: none;margin: 0.25em;\npadding: 0;\n}\n\n.tagClear {\nclear: both;\n}\n\n.footer {\n font-size: .9em;\n}\n\n.footer li {\ndisplay: inline;\n}\n/***\n''The viewer is where the tiddler content is displayed'' /%------------------------------------------------%/\n***/\n/*{{{*/\n* html .viewer pre {\n width: 99%;\n padding: 0 0 1em 0;\n}\n\n.viewer {\n line-height: 1.4em;\n padding-top: 0.5em;\n}\n\n.viewer .button {\n margin: 0em 0.25em;\n padding: 0em 0.25em;\n}\n\n.viewer blockquote {\n line-height: 1.5em;\n padding-left: 0.8em;\n margin-left: 2.5em;\n}\n\n.viewer ul, .viewer ol{\n margin-left: 0.5em;\n padding-left: 1.5em;\n}\n\n.viewer table {\n border-collapse: collapse;\n margin: 0.8em 1.0em;\n}\n\n.viewer th, .viewer td, .viewer tr,.viewer caption{\n padding: 3px;\n}\n\n.viewer pre {\n padding: 0.5em;\n margin-left: 0.5em;\n font-size: 1.2em;\n line-height: 1.4em;\n overflow: auto;\n}\n\n.viewer code {\n font-size: 1.2em;\n line-height: 1.4em;\n}\n/*}}}*/\n/***\n''The editor replaces the viewer in the tiddler'' /%------------------------------------------------%/\n***/\n/*{{{*/\n.editor {\nfont-size: 1.1em;\n}\n\n.editor input, .editor textarea {\n display: block;\n width: 100%;\n font: inherit;\n}\n\n.editorFooter {\n padding: 0.25em 0em;\n font-size: .9em;\n}\n\n.editorFooter .button {\npadding-top: 0px; padding-bottom: 0px;}\n\n.fieldsetFix {border: 0;\npadding: 0;\nmargin: 1px 0px 1px 0px;\n}\n/*}}}*/\n/***\n!Misc rules /%==================================================%/\n***/\n/*{{{*/\n.sparkline {\n line-height: 1em;\n}\n\n.sparktick {\n outline: 0;\n}\n\n.zoomer {\n font-size: 1.1em;\n position: absolute;\n padding: 1em;\n}\n\n.cascade {\n font-size: 1.1em;\n position: absolute;\n overflow: hidden;\n}\n/*}}}*/
Summer deep is in the hills again \nHis lady is a lioness\n \nWinds of birds blow through the fields again \nInvaders from the true worlds \n \nA coat of grapes is on my back again \nI ride upon my zebra\n \nPterodactyl beak hat on my brow \nThe truth is like a stranger \n\nBe like you could \nAll my friends say.
Love you, O girl I do \nLove you \nCome the sun \n \nSee it run \nAcross the sky \nCosmic eye \nIs for you \nAnd no one else \n \nLove you, O girl Id \nLove you \n \nCome the sun \nSee it run \nAcross the sky \nSee it cry \nFor you \nAnd no one else\n \nTree wizard Puretongue \nThe digger of holes \nThe Swan King \nThe Elf Lord \nThe Eater of Souls \nLithon the Black\nThe rider of stars \nTyrannosaurus Rex \nThe Eater of Cars
+++[Info]\na-side [[Children Of The Revolution]]\n===\n\n\nIt's a shame in sunken rags\nThe way you lay me down (play me down)\nIt's a shame the way you hide me\nBack at schoo-oo-ool\nI was brave to call you names\nOut in the alley-way (alley-way)\nIt's a shame the way you treat me\nLike a fool (like a fool)\n\nSo ride on fight on\nLove is gonna win it's goona beat your sins\nRide on fight on\nLove is gonna win it's goona beat your sins\nOo-Ooh\nOo-Oo Oo-Oo Oo-Ooh\n\nIt's a game with broken brain\nThe way you smile on me (smile on me)\nI'm a bird that rides upon\nThe wind of fools\nIt's ashame how you unzip my\nWinters poetry\nIt's a shame the way you treat me\nLike a foooo-ool\n\nSo ride on fight on\nLove is gonna win it's goona beat your sins\nRide on fight on\nLove is gonna win it's goona beat your sins\nOo-Ooh\nOo-Oo Oo-Oo Oo-Ooh
''T.Rex'' sometimes ''Marc Bolan & T.Rex''. Formerly, [[Tyrannosaurus Rex]].
[img[http://static.flickr.com/65/217709949_5bfbc7ab81_m.jpg]]
[img[http://static.flickr.com/97/217710511_23f11b270a_m.jpg]]
[img[http://static.flickr.com/80/219880010_ec66d75c50_m.jpg]]\nT.Rex Unchained: Unreleased Recordings Vol.1\n\n\n\n 1. Over The Flats\n 2. Sugar Baby\n 3. Children Of The World\n 4. Did You Ever\n 5. Alligator Man\n 6. Shame On You\n 7. Guitar Blues\n 8. Shadow Babe\n 9. Cry Baby (Acoustic)\n 10. Cry Baby (Electric)\n 11. Rollin' Stone\n 12. What Do I See\n 13. Shame On You (Little Girl)\n 14. Always\n 15. Auto Machine\n 16. Unicorn Horn (A Thousand Mark Feld Charms)\n 17. Jam\n 18. Sailors Of The Highway \n\n \n
[img[http://static.flickr.com/84/219880011_31dccac96f_m.jpg]]\nT.Rex Unchained: Unreleased Recordings Vol.2\n\n 1. Would I Be the One?\n 2. Meadows of the Sea\n 3. Mr. Motion [Version 1]\n 4. Mr. Motion [Version 2]\n 5. City Port [Fast Punk]\n 6. Just Like Me [Version 1]\n 7. Just Like Me [Version 2]\n 8. Is It True?\n 9. Zinc Rider\n 10. Canyon\n 11. Fast Blues - Easy Action\n 12. Bolan's Blues\n 13. Shake It Wind One\n 14. Work With Me Baby\n 15. Spaceball Boot\n 16. Electric Lips\n 17. Slider Blues\n 18. Ellie May\n 19. My Baby's New Porsche\n 20. Dark Lipped Woman \n\n\n
[img[http://static.flickr.com/90/219880012_57e5f77269_m.jpg]]\nT.Rex Unchained: Unreleased Recordings Vol.3\n\n\n\n 1. Organ Thing [Instrumental]\n 2. Dance in the Midnight [Version 1]\n 3. Delanie (Everyday) [Version 2]\n 4. I Wanna Go\n 5. Saturday Night [Version 1]\n 6. Down Home Lady [Version 2]\n 7. Hope You Enjoy the Show [Version 1]\n 8. All My Love [Version 1]\n 9. This Is My Life\n 10. Mr. Motion\n 11. Big Black Cat\n 12. Saturation Syncopation (All Alone) [Version 2]\n 13. Down Home Lady [Version 1]\n 14. Metropolis Incarnate [Version 1]\n 15. Misfortune Gatehouse\n 16. You Move Like a Dog\n 17. Saturday Night [Version 2]\n 18. Sky Church Music\n 19. Dance in the Midnight [Version 2] \n\n
[img[http://static.flickr.com/67/219880013_ad02129164_m.jpg]]\nT.Rex Unchained: Unreleased Recordings Vol.4\n\n 1. All My Love (Version 2)\n 2. Hope You Enjoy The Show (Version 2)\n 3. Down Home Lady (Version 3)\n 4. Sure Enough\n 5. Saturation Syncopation (All Alone) (Version 3)\n 6. I'm Coming To Rock 'N' Roll\n 7. High Wire\n 8. Yesterday (Everyday) (Version 1)\n 9. Sad Girl\n 10. Metropolis Incarnate (Version 2)\n 11. Jam\n 12. Down Home Lady (Version 4)\n 13. Look Around\n 14. Jet Tambourine\n 15. Dance In The Midnight (Version 3 )\n 16. Plateau Skull\n 17. Saturation Syncopation (All Alone) (Version 1)\n 18. Saturday Night (Version 3) \n\n\n
[img[http://static.flickr.com/82/219843947_01005b57ae_m.jpg]]\nT.Rex Unchained: Unreleased Recordings Vol.5\n\n[[Bolan's Zip Gun (Song)]]\n[[Lock into Your Love]]\n[[I Never Told Me]]\n[[Every Lady]]\n[[Do I Love Thee]]\nBy the Light of a Magical Moon\n[[Sparrow]]\n[[Sanctified]]\n[[Two Tone Lady (She'll Be Good to Me)]]\n[[Video Drama]]\n[[Love For Me]]\n[[Jet Tambourine]]\nJam (Extended Play)\nBy the Light of a Magical Moon\nVideo Drama [Extracts]\n[[Do I Love Thee]]\n\n
[img[http://static.flickr.com/88/219880015_a99ed297e6_m.jpg]]\nT.Rex Unchained: Unreleased Recordings Vol.6\n\n1. Pale Horse Ridin'\n2. Funky London Childhood\n3. Depth Charge\n4. Brain Police\n5. I Could Have Loved You\n6. Bust My Ball\n7. King Of The Mountain Cometh\n8. Statement Of Utopia\n9. Swahili Boogie Woogie \n10. Hey Little Girl\n11. Petticoat Lane\n12. I Believe\n13. Change Change\n14. Oh Boy\n15. Savage Beethoven\n16. Voice Poem \n17. Dynamo \n18. Baby Please Baby Squeeze \n19. Ain't That A Shame \n20. Teenage Boy Child \n21. Electric Stew \n22. Reelin' & A Wheelin' & A Boppin' & A Bolan \n23. You Ought To Know \n24. It's My City \n25. Christmas Bop \n26. Funky London Childhood \n27. I Could Have Loved You \n28. King Of The Mountain Cometh \n29. Swahili Boogie Woogie \n30. I Believe \n31. Petticoat Lane \n32. Petticoat Lane \n33. Dynamo \n34. Baby Please Baby Squeeze
[img[http://static.flickr.com/66/219880016_84507d4843_m.jpg]]\nT.Rex Unchained: Unreleased Recordings Vol.7\n\n\n\n 1. Riff\n 2. Freeway\n 3. Iยดm A Voodoo Man\n 4. Decadent Priestess\n 5. Midnight Creeps Across Your Window\n 6. Demon Grave\n 7. Memphis Highway\n 8. Bombs Out Of London\n 9. Funky London Childhood\n 10. London Boys\n 11. Savage Deception Of Love\n 12. Angel When Iยดm Mad\n 13. Over You Babe\n 14. Mellow Love (Solo)\n 15. Love Drunk (Solo)\n 16. 20th Century Baby (Solo)\n 17. Shy Boy\n 18. Love Drunk\n 19. Foxy Boy\n 20. 20th Century Baby\n 21. Hot George\n 22. Write Me A Song\n 23. Mellow Love\n 24. Endless Sleep\n 25. Sing Me A Song\n 26. Riff \n\n
[img[http://static.flickr.com/83/219880264_4f1fd6c096_m.jpg]]\nT.Rex Unchained: Unreleased Recordings Vol.8\n\n\n\n 1. Everybody Needs Somebody\n 2. Teenage Angel\n 3. Every Single Day (When I Was a Child)\n 4. Bad Love Woman\n 5. Sad Man\n 6. Skateboard\n 7. You Got the Taste\n 8. Fine Little Baby\n 9. Auto Destruct\n 10. Young Boy of Love\n 11. Wherever You Go\n 12. It's Alright\n 13. Love Charm\n 14. Stay Hungry\n 15. Sometimes You Rock Me\n 16. Be Not Afraid of Love\n 17. Young Girl of Love\n 18. Gimme Some Lovin'\n 19. Little Brother\n 20. All the Rage\n 21. Shadow Shaker\n 22. Boogie With Your Baby\n 23. When Will I Be Loved?\n 24. 21st Century Stance\n 25. Purple Prince of Pleasure\n 26. Like a Warrior\n 27. Think Zinc Lady\n 28. Messing With the Mystic\n 29. When I Was a Child\n 30. Ghetto Baby Blue\n 31. Sailors of the Highway\n 32. Get Down\n 33. Classic Rap \n\n
/***\n''Name:'' TWUpdate\n''Author:'' Tom Otvos\n''Version:'' 0.2\n<<twupdate>>\n***/\n//{{{\n\nversion.extensions.twupdate = {major: 0, minor: 2, revision: 0, date: new Date(2006,3,13,0,0,0,0), source: ""};\n\nconfig.macros.twupdate = { \n label: "update",\n sourceUrl: "http://www.tiddlywiki.com/empty.html", \n lingo: {\n prompt: "Update this TiddlyWiki from TiddlyWiki.com", \n warning: "Are you sure you want to update this document with the latest version of TiddlyWiki?\sn\snIf you want to continue, your document will first be saved with a backup.",\n success: "Update was successful. Click on 'OK' to reload the document",\n errNoHttp: "Unable to allocate an HTTP request object for the update",\n progressLoading: "Getting update from TiddlyWiki.com...",\n progressLoadSuccess: "File successfully loaded",\n progressLoadFailure: "File was not loaded successfully (%0)",\n progressMerging: "Merging with existing document..."\n }\n}\n\nconfig.macros.twupdate.handler = function(place)\n{\n if(!readOnly)\n createTiddlyButton(place, this.label, this.prompt, this.onClick, null, null, null);\n}\n\nconfig.macros.twupdate.onClick = function(e)\n{\n if (!confirm(config.macros.twupdate.lingo.warning)) return;\n\n try {\n // force a save with backup\n var saveBackups = config.options.chkSaveBackups;\n config.options.chkSaveBackups = true;\n saveChanges();\n config.options.chkSaveBackups = saveBackups;\n \n var ajax = new AjaxHelper();\n displayMessage(config.macros.twupdate.lingo.progressLoading);\n ajax.getText(config.macros.twupdate.sourceUrl, config.macros.twupdate.performUpdate); \n }\n catch (e) {\n alert(e);\n }\n\n return false;\n}\n\nconfig.macros.twupdate.performUpdate = function(emptyHtml, status, statusText)\n{\n // note that this is begin called from a callback from an event handler, so\n // "this" is most definitely not defined!\n \n if (status == 200)\n displayMessage(config.macros.twupdate.lingo.progressLoadSuccess);\n else {\n displayMessage(config.macros.twupdate.lingo.progressLoadFailure.format([statusText]));\n return;\n }\n displayMessage(config.macros.twupdate.lingo.progressMerging);\n \n // the bulk of this is cribbed from saveChanges()...\n var originalPath = document.location.toString();\n // Check we were loaded from a file URL\n if (originalPath.substr(0,5) != "file:") {\n alert(config.messages.notFileUrlError);\n if (store.tiddlerExists(config.messages.saveInstructions))\n displayTiddler(null,config.messages.saveInstructions);\n return;\n }\n var localPath = getLocalPath(originalPath);\n\n // Locate the storeArea div's\n var posOpeningDiv = emptyHtml.indexOf(startSaveArea);\n var posClosingDiv = emptyHtml.lastIndexOf(endSaveArea);\n if ((posOpeningDiv == -1) || (posClosingDiv == -1)) {\n alert(config.messages.invalidFileError.format(['empty.html']));\n return;\n }\n\n // Save new file\n var revised = emptyHtml.substr(0,posOpeningDiv + startSaveArea.length) + \n convertUnicodeToUTF8(allTiddlersAsHtml()) + "\sn\st\st" +\n emptyHtml.substr(posClosingDiv);\n var newSiteTitle = convertUnicodeToUTF8((wikifyPlain("SiteTitle") + " - " + wikifyPlain("SiteSubtitle")).htmlEncode());\n revised = revised.replaceChunk("<title"+">","</title"+">"," " + newSiteTitle + " ");\n revised = revised.replaceChunk("<!--PRE-HEAD-START--"+">","<!--PRE-HEAD-END--"+">","\sn" + store.getTiddlerText("MarkupPreHead","") + "\sn");\n revised = revised.replaceChunk("<!--POST-HEAD-START--"+">","<!--POST-HEAD-END--"+">","\sn" + store.getTiddlerText("MarkupPostHead","") + "\sn");\n revised = revised.replaceChunk("<!--PRE-BODY-START--"+">","<!--PRE-BODY-END--"+">","\sn" + store.getTiddlerText("MarkupPreBody","") + "\sn");\n revised = revised.replaceChunk("<!--POST-BODY-START--"+">","<!--POST-BODY-END--"+">","\sn" + store.getTiddlerText("MarkupPostBody","") + "\sn");\n var save = saveFile(localPath, revised);\n if (save) {\n displayMessage(config.messages.mainSaved, "file://" + localPath);\n store.setDirty(false);\n alert(config.macros.twupdate.lingo.success);\n document.location.reload();\n }\n else\n alert(config.messages.mainFailed);\n}\n\nfunction AjaxHelper()\n{\n this.http = null;\n \n try\n {\n this.http = new XMLHttpRequest()\n }\n \n catch(e)\n {\n // if we don't get an internal object, try allocating it using ActiveX, with successive\n // fallbacks to earlier MSXML versions as necessary\n try\n {\n this.http = new ActiveXObject("Msxml2.XMLHTTP.4.0")\n } \n catch(e) \n {\n try\n {\n this.http = new ActiveXObject("MSXML2.XMLHTTP")\n } \n catch(e) \n {\n try\n {\n this.http = new ActiveXObject("Microsoft.XMLHTTP")\n } \n catch(e) \n {\n this.http = null\n }\n }\n }\n }\n \n if (!this.http) throw 'Unable to allocate an HTTP request object';\n}\n\nAjaxHelper.prototype.getText = function(url, callback, async, force)\n{\n if (!this.http) return;\n if (async == undefined) async = true;\n if (force == undefined) force = false;\n // ??? right now, we are not handling "forced" requests\n this._request("GET", url, callback, async, true, false);\n}\n\nAjaxHelper.prototype.getXML = function(url, callback, async, force)\n{\n if (!this.http) return;\n if (async == undefined) async = true;\n if (force == undefined) force = false;\n // ??? right now, we are not handling "forced" requests\n this._request("GET", url, callback, async, true, true);\n}\n\nAjaxHelper.prototype.getHead = function(url, callback, async, force)\n{\n if (!this.http) return;\n if (async == undefined) async = true;\n if (force == undefined) force = false;\n // ??? right now, we are not handling "forced" requests\n this._request("HEAD", url, callback, async, false, false);\n}\n\nAjaxHelper.prototype.abort = function()\n{\n if (this.http) this.http.abort();\n}\n\nAjaxHelper.prototype.setRequestHeader = function(name, value)\n{\n if (this.http) this.http.setRequestHeader(name, value);\n}\n\nAjaxHelper.prototype._request = function(method, url, callback, async, hasResponse, hasResponseXML)\n{\n if (!this.http) return;\n \n // get reference to request object so we can use it in closure\n var xmlHttp = this.http, helper = this;\n xmlHttp.onreadystatechange = function()\n {\n if (!async) return;\n if (xmlHttp.readyState == 4)\n callback((hasResponse ? (hasResponseXML ? xmlHttp.responseXML : xmlHttp.responseText) : null), xmlHttp.status, xmlHttp.statusText, helper._parsedResponseHeaders());\n }\n \n try {\n // need some cross-domain privileges for Firefox\n try {\n netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");\n } \n catch (e) \n {\n }\n \n xmlHttp.open(method, url, async);\n xmlHttp.send(null);\n if (!async) callback((hasResponse ? (hasResponseXML ? xmlHttp.responseXML : xmlHttp.responseText) : null), xmlHttp.status, xmlHttp.statusText, this._parsedResponseHeaders());\n }\n \n catch (e)\n {\n alert(e);\n }\n}\n\nAjaxHelper.prototype._parsedResponseHeaders = function()\n{\n if (this.http) {\n var headersArray = new Array();\n var headers = this.http.getAllResponseHeaders().split("\sn");\n for (var i = 0; i < headers.length; i++) {\n var h = headers[i].trim();\n if (h.length == 0) continue;\n // value can have ':' so do not use split here!\n var sep = h.indexOf(':');\n headersArray[h.substring(0, sep).trim()] = h.substr(sep + 1).trim();\n }\n return headersArray;\n }\n else\n return null;\n}\n\n//}}}\n
*sample:\n|!th1111111111|!th2222222222|\n|>| colspan |\n| rowspan |left|\n|~| right|\n|bgcolor(#a0ffa0):colored| center |\n|caption|c\n*another sample: see PeriodicTable.\nFor advanced effects, you can control the CSS style of a table by adding a row like this:\n{{{\n|cssClass|k\n}}}\n
*sample:\n|!th1111111111|!th2222222222|\n|>| colspan |\n| rowspan |left|\n|~| right|\n|bgcolor(#a0ffa0):colored| center |\n|caption|c\n*another sample: see PeriodicTable.\nFor advanced effects, you can control the CSS style of a table by adding a row like this:\n{{{\n|cssClass|k\n}}}\n
/***\n|Name|TagglyListPlugin|\n|Created by|SimonBaird|\n|Location|http://simonbaird.com/mptw/#TagglyListPlugin|\n|Version|1.1.2 25-Apr-06|\n|Requires|See TagglyTagging|\n\n!History\n* 1.1.2 (25-Apr-2006) embedded TagglyTaggingStyles. No longer need separated tiddler for styles.\n* 1.1.1 (6-Mar-2006) fixed bug with refreshAllVisible closing tiddlers being edited. Thanks Luke Blanshard.\n\n***/\n\n/***\n!Setup and config\n***/\n//{{{\n\nversion.extensions.TagglyListPlugin = {\n major: 1, minor: 1, revision: 2,\n date: new Date(2006,4,25),\n source: "http://simonbaird.com/mptw/#TagglyListPlugin"\n};\n\nconfig.macros.tagglyList = {};\nconfig.macros.tagglyListByTag = {};\nconfig.macros.tagglyListControl = {};\nconfig.macros.tagglyListWithSort = {};\nconfig.macros.hideSomeTags = {};\n\n// change this to your preference\nconfig.macros.tagglyListWithSort.maxCols = 6;\n\nconfig.macros.tagglyList.label = "Tagged as %0:";\n\n// the default sort options. set these to your preference\nconfig.macros.tagglyListWithSort.defaults = {\n sortBy:"title", // title|created|modified\n sortOrder: "asc", // asc|desc\n hideState: "show", // show|hide\n groupState: "nogroup", // nogroup|group\n numCols: 1\n};\n\n// these tags will be ignored by the grouped view\nconfig.macros.tagglyListByTag.excludeTheseTags = [\n "systemConfig",\n "TiddlerTemplates"\n];\n\nconfig.macros.tagglyListControl.tags = {\n title:"sortByTitle", \n modified: "sortByModified", \n created: "sortByCreated",\n asc:"sortAsc", \n desc:"sortDesc",\n hide:"hideTagged", \n show:"showTagged",\n nogroup:"noGroupByTag",\n group:"groupByTag",\n cols1:"list1Cols",\n cols2:"list2Cols",\n cols3:"list3Cols",\n cols4:"list4Cols",\n cols5:"list5Cols",\n cols6:"list6Cols",\n cols7:"list7Cols",\n cols8:"list8Cols",\n cols9:"list9Cols" \n}\n\n// note: should match config.macros.tagglyListControl.tags\nconfig.macros.hideSomeTags.tagsToHide = [\n "sortByTitle",\n "sortByCreated",\n "sortByModified",\n "sortDesc",\n "sortAsc",\n "hideTagged",\n "showTagged",\n "noGroupByTag",\n "groupByTag",\n "list1Cols",\n "list2Cols",\n "list3Cols",\n "list4Cols",\n "list5Cols",\n "list6Cols",\n "list7Cols",\n "list8Cols",\n "list9Cols"\n];\n\n\n//}}}\n/***\n\n!Utils\n***/\n//{{{\n// from Eric\nfunction isTagged(title,tag) {\n var t=store.getTiddler(title); if (!t) return false;\n return (t.tags.find(tag)!=null);\n}\n\n// from Eric\nfunction toggleTag(title,tag) {\n var t=store.getTiddler(title); if (!t || !t.tags) return;\n if (t.tags.find(tag)==null) t.tags.push(tag);\n else t.tags.splice(t.tags.find(tag),1);\n}\n\nfunction addTag(title,tag) {\n var t=store.getTiddler(title); if (!t || !t.tags) return;\n t.tags.push(tag);\n}\n\nfunction removeTag(title,tag) {\n var t=store.getTiddler(title); if (!t || !t.tags) return;\n if (t.tags.find(tag)!=null) t.tags.splice(t.tags.find(tag),1);\n}\n\n// from Udo\nArray.prototype.indexOf = function(item) {\n for (var i = 0; i < this.length; i++) {\n if (this[i] == item) {\n return i;\n }\n }\n return -1;\n};\nArray.prototype.contains = function(item) {\n return (this.indexOf(item) >= 0);\n}\n//}}}\n/***\n\n!tagglyList\ndisplays a list of tagged tiddlers. \nparameters are sortField and sortOrder\n***/\n//{{{\n\n// not used at the moment...\nfunction sortedListOfOtherTags(tiddler,thisTag) {\n var list = tiddler.tags.concat(); // so we are working on a clone..\n for (var i=0;i<config.macros.hideSomeTags.tagsToHide.length;i++) {\n if (list.find(config.macros.hideSomeTags.tagsToHide[i]) != null)\n list.splice(list.find(config.macros.hideSomeTags.tagsToHide[i]),1); // remove hidden ones\n }\n for (var i=0;i<config.macros.tagglyListByTag.excludeTheseTags.length;i++) {\n if (list.find(config.macros.tagglyListByTag.excludeTheseTags[i]) != null)\n list.splice(list.find(config.macros.tagglyListByTag.excludeTheseTags[i]),1); // remove excluded ones\n }\n list.splice(list.find(thisTag),1); // remove thisTag\n return '[[' + list.sort().join("]] [[") + ']]';\n}\n\nfunction sortHelper(a,b) {\n if (a == b) return 0;\n else if (a < b) return -1;\n else return +1;\n}\n\nconfig.macros.tagglyListByTag.handler = function (place,macroName,params,wikifier,paramString,tiddler) {\n\n var sortBy = params[0] ? params[0] : "title"; \n var sortOrder = params[1] ? params[1] : "asc";\n\n var result = store.getTaggedTiddlers(tiddler.title,sortBy);\n\n if (sortOrder == "desc")\n result = result.reverse();\n\n var leftOvers = []\n for (var i=0;i<result.length;i++) {\n leftOvers.push(result[i].title);\n }\n\n var allTagsHolder = {};\n for (var i=0;i<result.length;i++) {\n for (var j=0;j<result[i].tags.length;j++) {\n\n if ( \n result[i].tags[j] != tiddler.title // not this tiddler\n && config.macros.hideSomeTags.tagsToHide.find(result[i].tags[j]) == null // not a hidden one\n && config.macros.tagglyListByTag.excludeTheseTags.find(result[i].tags[j]) == null // not excluded\n ) {\n if (!allTagsHolder[result[i].tags[j]])\n allTagsHolder[result[i].tags[j]] = "";\n allTagsHolder[result[i].tags[j]] += "**[["+result[i].title+"]]\sn";\n\n if (leftOvers.find(result[i].title) != null)\n leftOvers.splice(leftOvers.find(result[i].title),1); // remove from leftovers. at the end it will contain the leftovers...\n }\n }\n }\n\n\n var allTags = [];\n for (var t in allTagsHolder)\n allTags.push(t);\n\n allTags.sort(function(a,b) {\n var tidA = store.getTiddler(a);\n var tidB = store.getTiddler(b);\n if (sortBy == "title") return sortHelper(a,b);\n else if (!tidA && !tidB) return 0;\n else if (!tidA) return -1;\n else if (!tidB) return +1;\n else return sortHelper(tidA[sortBy],tidB[sortBy]);\n });\n\n var markup = "";\n\n if (sortOrder == "desc") {\n allTags.reverse();\n }\n else {\n // leftovers first...\n for (var i=0;i<leftOvers.length;i++)\n markup += "*[["+leftOvers[i]+"]]\sn";\n } \n\n for (var i=0;i<allTags.length;i++)\n markup += "*[["+allTags[i]+"]]\sn" + allTagsHolder[allTags[i]];\n\n if (sortOrder == "desc") {\n // leftovers last...\n for (var i=0;i<leftOvers.length;i++)\n markup += "*[["+leftOvers[i]+"]]\sn";\n }\n\n wikify(markup,place);\n}\n\nconfig.macros.tagglyList.handler = function (place,macroName,params,wikifier,paramString,tiddler) {\n var sortBy = params[0] ? params[0] : "title"; \n var sortOrder = params[1] ? params[1] : "asc";\n var numCols = params[2] ? params[2] : 1;\n\n var result = store.getTaggedTiddlers(tiddler.title,sortBy);\n if (sortOrder == "desc")\n result = result.reverse();\n\n var listSize = result.length;\n var colSize = listSize/numCols;\n var remainder = listSize % numCols;\n\n var upperColsize;\n var lowerColsize;\n if (colSize != Math.floor(colSize)) {\n // it's not an exact fit so..\n lowerColsize = Math.floor(colSize);\n upperColsize = Math.floor(colSize) + 1;\n }\n else {\n lowerColsize = colSize;\n upperColsize = colSize;\n }\n\n var markup = "";\n var c=0;\n\n var newTaggedTable = createTiddlyElement(place,"table");\n var newTaggedBody = createTiddlyElement(newTaggedTable,"tbody");\n var newTaggedTr = createTiddlyElement(newTaggedBody,"tr");\n\n for (var j=0;j<numCols;j++) {\n var foo = "";\n var thisSize;\n\n if (j<remainder)\n thisSize = upperColsize;\n else\n thisSize = lowerColsize;\n\n for (var i=0;i<thisSize;i++) \n foo += ( "*[[" + result[c++].title + "]]\sn"); // was using splitList.shift() but didn't work in IE;\n\n var newTd = createTiddlyElement(newTaggedTr,"td",null,"tagglyTagging");\n wikify(foo,newTd);\n\n }\n\n};\n\n/* snip for later.....\n //var groupBy = params[3] ? params[3] : "t.title.substr(0,1)";\n //var groupBy = params[3] ? params[3] : "sortedListOfOtherTags(t,tiddler.title)";\n //var groupBy = params[3] ? params[3] : "t.modified";\n var groupBy = null; // for now. groupBy here is working but disabled for now.\n\n var prevGroup = "";\n var thisGroup = "";\n\n if (groupBy) {\n result.sort(function(a,b) {\n var t = a; var aSortVal = eval(groupBy); var aSortVal2 = eval("t".sortBy);\n var t = b; var bSortVal = eval(groupBy); var bSortVal2 = eval("t".sortBy);\n var t = b; var bSortVal2 = eval(groupBy);\n return (aSortVal == bSortVal ?\n (aSortVal2 == bSortVal2 ? 0 : (aSortVal2 < bSortVal2 ? -1 : +1)) // yuck\n : (aSortVal < bSortVal ? -1 : +1));\n });\n }\n\n if (groupBy) {\n thisGroup = eval(groupBy);\n if (thisGroup != prevGroup)\n markup += "*[["+thisGroup+']]\sn';\n markup += "**[["+t.title+']]\sn';\n prevGroup = thisGroup;\n }\n\n\n\n*/\n\n\n//}}}\n\n/***\n\n!tagglyListControl\nUse to make the sort control buttons\n***/\n//{{{\n\nfunction getSortBy(title) {\n var tiddler = store.getTiddler(title);\n var defaultVal = config.macros.tagglyListWithSort.defaults.sortBy;\n if (!tiddler) return defaultVal;\n var usetags = config.macros.tagglyListControl.tags;\n if (tiddler.tags.contains(usetags["title"])) return "title";\n else if (tiddler.tags.contains(usetags["modified"])) return "modified";\n else if (tiddler.tags.contains(usetags["created"])) return "created";\n else return defaultVal;\n}\n\nfunction getSortOrder(title) {\n var tiddler = store.getTiddler(title);\n var defaultVal = config.macros.tagglyListWithSort.defaults.sortOrder;\n if (!tiddler) return defaultVal;\n var usetags = config.macros.tagglyListControl.tags;\n if (tiddler.tags.contains(usetags["asc"])) return "asc";\n else if (tiddler.tags.contains(usetags["desc"])) return "desc";\n else return defaultVal;\n}\n\nfunction getHideState(title) {\n var tiddler = store.getTiddler(title);\n var defaultVal = config.macros.tagglyListWithSort.defaults.hideState;\n if (!tiddler) return defaultVal;\n var usetags = config.macros.tagglyListControl.tags;\n if (tiddler.tags.contains(usetags["hide"])) return "hide";\n else if (tiddler.tags.contains(usetags["show"])) return "show";\n else return defaultVal;\n}\n\nfunction getGroupState(title) {\n var tiddler = store.getTiddler(title);\n var defaultVal = config.macros.tagglyListWithSort.defaults.groupState;\n if (!tiddler) return defaultVal;\n var usetags = config.macros.tagglyListControl.tags;\n if (tiddler.tags.contains(usetags["group"])) return "group";\n else if (tiddler.tags.contains(usetags["nogroup"])) return "nogroup";\n else return defaultVal;\n}\n\nfunction getNumCols(title) {\n var tiddler = store.getTiddler(title);\n var defaultVal = config.macros.tagglyListWithSort.defaults.numCols; // an int\n if (!tiddler) return defaultVal;\n var usetags = config.macros.tagglyListControl.tags;\n for (var i=1;i<=config.macros.tagglyListWithSort.maxCols;i++)\n if (tiddler.tags.contains(usetags["cols"+i])) return i;\n return defaultVal;\n}\n\n\nfunction getSortLabel(title,which) {\n // TODO. the strings here should be definable in config\n var by = getSortBy(title);\n var order = getSortOrder(title);\n var hide = getHideState(title);\n var group = getGroupState(title);\n if (which == "hide") return (hide == "show" ? "โˆ’" : "+"); // 0x25b8;\n else if (which == "group") return (group == "group" ? "normal" : "grouped");\n else if (which == "cols") return "colsยฑ"; // &plusmn;\n else if (by == which) return which + (order == "asc" ? "โ†“" : "โ†‘"); // &uarr; &darr;\n else return which;\n}\n\nfunction handleSortClick(title,which) {\n var currentSortBy = getSortBy(title);\n var currentSortOrder = getSortOrder(title);\n var currentHideState = getHideState(title);\n var currentGroupState = getGroupState(title);\n var currentNumCols = getNumCols(title);\n\n var tags = config.macros.tagglyListControl.tags;\n\n // if it doesn't exist, lets create it..\n if (!store.getTiddler(title))\n store.saveTiddler(title,title,"",config.options.txtUserName,new Date(),null);\n\n if (which == "hide") {\n // toggle hide state\n var newHideState = (currentHideState == "hide" ? "show" : "hide");\n removeTag(title,tags[currentHideState]);\n if (newHideState != config.macros.tagglyListWithSort.defaults.hideState)\n toggleTag(title,tags[newHideState]);\n }\n else if (which == "group") {\n // toggle hide state\n var newGroupState = (currentGroupState == "group" ? "nogroup" : "group");\n removeTag(title,tags[currentGroupState]);\n if (newGroupState != config.macros.tagglyListWithSort.defaults.groupState)\n toggleTag(title,tags[newGroupState]);\n }\n else if (which == "cols") {\n // toggle num cols\n var newNumCols = currentNumCols + 1; // confusing. currentNumCols is an int\n if (newNumCols > config.macros.tagglyListWithSort.maxCols || newNumCols > store.getTaggedTiddlers(title).length)\n newNumCols = 1;\n removeTag(title,tags["cols"+currentNumCols]);\n if (("cols"+newNumCols) != config.macros.tagglyListWithSort.defaults.groupState)\n toggleTag(title,tags["cols"+newNumCols]);\n }\n else if (currentSortBy == which) {\n // toggle sort order\n var newSortOrder = (currentSortOrder == "asc" ? "desc" : "asc");\n removeTag(title,tags[currentSortOrder]);\n if (newSortOrder != config.macros.tagglyListWithSort.defaults.sortOrder)\n toggleTag(title,tags[newSortOrder]);\n }\n else {\n // change sortBy only\n removeTag(title,tags["title"]);\n removeTag(title,tags["created"]);\n removeTag(title,tags["modified"]);\n\n if (which != config.macros.tagglyListWithSort.defaults.sortBy)\n toggleTag(title,tags[which]);\n }\n\n store.setDirty(true); // save is required now.\n story.refreshTiddler(title,false,true); // force=true\n}\n\nconfig.macros.tagglyListControl.handler = function (place,macroName,params,wikifier,paramString,tiddler) {\n var onclick = function(e) {\n if (!e) var e = window.event;\n handleSortClick(tiddler.title,params[0]);\n e.cancelBubble = true;\n if (e.stopPropagation) e.stopPropagation();\n return false;\n };\n createTiddlyButton(place,getSortLabel(tiddler.title,params[0]),"Click to change sort options",onclick,params[0]=="hide"?"hidebutton":"button");\n}\n//}}}\n/***\n\n!tagglyListWithSort\nput it all together..\n***/\n//{{{\nconfig.macros.tagglyListWithSort.handler = function (place,macroName,params,wikifier,paramString,tiddler) {\n if (tiddler && store.getTaggedTiddlers(tiddler.title).length > 0)\n // todo make this readable\n wikify(\n "<<tagglyListControl hide>>"+\n (getHideState(tiddler.title) != "hide" ? \n '<html><span class="tagglyLabel">'+config.macros.tagglyList.label.format([tiddler.title])+' </span></html>'+\n "<<tagglyListControl title>><<tagglyListControl modified>><<tagglyListControl created>><<tagglyListControl group>>"+(getGroupState(tiddler.title)=="group"?"":"<<tagglyListControl cols>>")+"\sn" + \n "<<tagglyList" + (getGroupState(tiddler.title)=="group"?"ByTag ":" ") + getSortBy(tiddler.title)+" "+getSortOrder(tiddler.title)+" "+getNumCols(tiddler.title)+">>" // hacky\n // + \sn----\sn" +\n //"<<tagglyList "+getSortBy(tiddler.title)+" "+getSortOrder(tiddler.title)+">>"\n : ""),\n place,null,tiddler);\n}\n\nconfig.macros.tagglyTagging = { handler: config.macros.tagglyListWithSort.handler };\n\n\n//}}}\n/***\n\n!hideSomeTags\nSo we don't see the sort tags.\n(note, they are still there when you edit. Will that be too annoying?\n***/\n//{{{\n\n// based on tags.handler\nconfig.macros.hideSomeTags.handler = function(place,macroName,params,wikifier,paramString,tiddler) {\n var theList = createTiddlyElement(place,"ul");\n if(params[0] && store.tiddlerExists[params[0]])\n tiddler = store.getTiddler(params[0]);\n var lingo = config.views.wikified.tag;\n var prompt = tiddler.tags.length == 0 ? lingo.labelNoTags : lingo.labelTags;\n createTiddlyElement(theList,"li",null,"listTitle",prompt.format([tiddler.title]));\n for(var t=0; t<tiddler.tags.length; t++)\n if (!this.tagsToHide.contains(tiddler.tags[t])) // this is the only difference from tags.handler...\n createTagButton(createTiddlyElement(theList,"li"),tiddler.tags[t],tiddler.title);\n\n}\n\n//}}}\n/***\n\n!Refresh everything when we save a tiddler. So the tagged lists never get stale. Is this too slow???\n***/\n//{{{\n\nfunction refreshAllVisible() {\n story.forEachTiddler(function(title,element) {\n if (element.getAttribute("dirty") != "true") \n story.refreshTiddler(title,false,true);\n });\n}\n\nstory.saveTiddler_orig_mptw = story.saveTiddler;\nstory.saveTiddler = function(title,minorUpdate) {\n var result = this.saveTiddler_orig_mptw(title,minorUpdate);\n refreshAllVisible();\n return result;\n}\n\nstore.removeTiddler_orig_mptw = store.removeTiddler;\nstore.removeTiddler = function(title) {\n this.removeTiddler_orig_mptw(title);\n refreshAllVisible();\n}\n\nconfig.shadowTiddlers.TagglyTaggingStyles = "/***\snTo use, add {{{[[TagglyTaggingStyles]]}}} to your StyleSheet tiddler, or you can just paste the CSS in directly. See also ViewTemplate, EditTemplate and TagglyTagging.\sn***/\sn/*{{{*/\sn.tagglyTagged li.listTitle { display:none;}\sn.tagglyTagged li { display: inline; font-size:90%; }\sn.tagglyTagged ul { margin:0px; padding:0px; }\sn.tagglyTagging { padding-top:0.5em; }\sn.tagglyTagging li.listTitle { display:none;}\sn.tagglyTagging ul { margin-top:0px; padding-top:0.5em; padding-left:2em; margin-bottom:0px; padding-bottom:0px; }\sn\sn/* .tagglyTagging .tghide { display:inline; } */\sn\sn.tagglyTagging { vertical-align: top; margin:0px; padding:0px; }\sn.tagglyTagging table { margin:0px; padding:0px; }\sn\sn\sn.tagglyTagging .button { display:none; margin-left:3px; margin-right:3px; }\sn.tagglyTagging .button, .tagglyTagging .hidebutton { color:#aaa; font-size:90%; border:0px; padding-left:0.3em;padding-right:0.3em;}\sn.tagglyTagging .button:hover, .hidebutton:hover { background:#eee; color:#888; }\sn.selected .tagglyTagging .button { display:inline; }\sn\sn.tagglyTagging .hidebutton { color:white; } /* has to be there so it takes up space. tweak if you're not using a white tiddler bg */\sn.selected .tagglyTagging .hidebutton { color:#aaa }\sn\sn.tagglyLabel { color:#aaa; font-size:90%; }\sn\sn.tagglyTagging ul {padding-top:0px; padding-bottom:0.5em; margin-left:1em; }\sn.tagglyTagging ul ul {list-style-type:disc; margin-left:-1em;}\sn.tagglyTagging ul ul li {margin-left:0.5em; }\sn\sn.editLabel { font-size:90%; padding-top:0.5em; }\sn/*}}}*/\sn";\n\nrefreshStyles("TagglyTaggingStyles");\n\n\n//}}}\n\n// // <html>&#x25b8;&#x25be;&minus;&plusmn;</html>
/***\nTo use, add {{{[[TagglyTaggingStyles]]}}} to your StyleSheet tiddler, or you can just paste the CSS in directly. See also ViewTemplate, EditTemplate and TagglyTagging.\n***/\n/*{{{*/\n.tagglyTagged li.listTitle { display:none;}\n.tagglyTagged li { display: inline; font-size:90%; }\n.tagglyTagged ul { margin:0px; padding:0px; }\n.tagglyTagging { padding-top:0.5em; }\n.tagglyTagging li.listTitle { display:none;}\n.tagglyTagging ul { margin-top:0px; padding-top:0.5em; padding-left:2em; margin-bottom:0px; padding-bottom:0px; }\n\n/* .tagglyTagging .tghide { display:inline; } */\n\n.tagglyTagging { vertical-align: top; margin:0px; padding:0px; }\n.tagglyTagging table { margin:0px; padding:0px; }\n\n\n.tagglyTagging .button { display:none; margin-left:3px; margin-right:3px; }\n.tagglyTagging .button, .tagglyTagging .hidebutton { color:#aaa; font-size:90%; border:0px; padding-left:0.3em;padding-right:0.3em;}\n.tagglyTagging .button:hover, .hidebutton:hover { background:#eee; color:#888; }\n.selected .tagglyTagging .button { display:inline; }\n\n.tagglyTagging .hidebutton { color:white; } /* has to be there so it takes up space */\n.selected .tagglyTagging .hidebutton { color:#aaa }\n\n.tagglyLabel { color:#aaa; font-size:90%; }\n\n.tagglyTagging ul {padding-top:0px; padding-bottom:0.5em; margin-left:1em; }\n.tagglyTagging ul ul {list-style-type:disc; margin-left:-1em;}\n.tagglyTagging ul ul li {margin-left:0.5em; }\n\n.editLabel { font-size:90%; padding-top:0.5em; }\n/*}}}*/\n
+++[Info]\na-side [[Dandy In The Underworld (Song)]]\n===\n\n\nSister sister\nWon't you tame my tiger\nSister sister\nWon't you tame my tiger\nWon't you give me your love\nReal wild\nMister mister\nWon't you join my priestess\nMister mister\nWon't you join my priestess\nIf you do my love I'm yours\nBaby lady\nWon't you tame my tiger\nBaby lady\nWon't you tame my tiger\nWon't you give me your love\nRight now\nBaby baby won't you tame my tiger
[img[http://static.flickr.com/38/217709947_ce87f76a38_m.jpg]]
Teen riot structure\nAnkle deep in fear\nBabies lost in bellies\nAnd the oracle can't hear\n\nA demon angel demi-god\nBlasted through the night\nMe and Lucy Lightning\nHolding on real tight\n\nAn ancient Lord in wonder\nRung upon my bell\nI fed him with my nightmares\nBut he ate my dreams as well\n\nAll London was in blazes\nBurning to the sound\nOf deep galactic tragedies\nIn stereophonic sound\n\nA tempest teen of stature\nIn Gatsby hat and cloak\nLicked upon my lollipop\nBut I didn't get the joke\n\nAs devastation mounted\nMy wardrobes almost burned\nThe teens held hands on shifting sandsand \nI wonder what they learned?\n\nStructure\nMy teen riot structure\nTeen riot structure\nMy teen riot structure
+++[Info]\nb-side [[Satisfaction Pony]]\n===\n\n\nWhatever happened to the Teenage Dream\nSuprise suprise, the boys are home\nMy guardian angel's rung down my telephone\nThe heat's on mister, can't you hear them scream\nWhatever happened to the Teenage Dream\n\nThe curfew comes at the crack of light\nThe sad old wino aches to dissipate the fright\nThe jet junk jiver speeds past in his machine\nWhatever happened to the Teenage Dream\n\nA broken god from a musty world\nSweetly mouthed touched an onyx girl.\nHis prison bars were very hard to clean\nWhatever happened to the Teenage Dream\nYeah\n\nThe Wizzard of Oz and the bronzen theif\nRuled my girl with teutonic teeth\nBut all was lost when her mouth turned green\nWhatever happened to the Teenage Dream\n\nSilver Surfer and the Ragged Kid\nAre all sad and rusted boy, they don't have a gig\nBelieve me Pope Paul my toes are clean\nWhatever happened to the Teenage Dream\n\nBlack is black and white is white\nSome go to Heaven and some get it light\nNobody disapproves but his wicked screams\nWhatever happened to the Teenage Dream
+++[Info]\nb-sides [[Cadillac]] and [[Baby Strange]]\n===\n\nTelegram Sam \nTelegram Sam \nYouยนre my main man \n\nGolden Nose Slim \nGolden Nose Slim \nI knows where you 'bin \n\nPurple Pie Pete\nPurple Pie Pete \nYour lips are like lightening \nGirls melt in the heat \n\nTelegram Sam \nYou're my main man \nTelegram Sam \nYouยนre my main man \n\nBobby's all right \nBobby's all right \nHe's a natural born poet \nHe's just outta sight \n\nJungle faced Jake \nJungle faced Jake \nI say make no mistake \nAbout Jungle Faced Jake\n\nAutomatic shoes \nAutomatic shoes \nGive me 3-D vision \nAnd the California blues \n\nMe I funk but I don't care \nI ain't no square with my corkscrew hair \n \nTelegram Sam \nTelegram Sam, I'm a howlin' wolf
Tenement lady, stone drug mama\nStreet hawk stone heart\nMind that swiftly falls apart\nSudden sid groove lid\nSharp as the dark park\nPickle pump peeper\nMind that swiftly falls apart\n\nCount lurch hearse head\nPrince of the snick snacks \nGot a pierced ear mind fear\nOf the sailors with their perfume\nMolly mouse dream talk\nGin house milk shake\nShe steals my magazines\nShe's a lazer lipped lover yeah\n\n~ ~ ~ ~ ~ ~ ~ ~ ~ \n\nOh my darling there are many ways to love you \nUnderneath sheets of silk I slyly peep at you\nPeople on the street call out your name\nThe giants and the dwarfs all call the same\n\nOh my darling there are many ways to view you\nTo me you're almost like a hammer and screw\nPeople on the street call out your name\nThe giants and the dwarfs all call the same
This is a bunch of stuff...\n\n<<tiddler CommentScript>>\n\n!Comments\n!!!!!comment from russ on 16 August 2006 11:52:56\n<<<\nThis is a test comment by Russ\n<<<\n!!!!!comment from russ on 16 August 2006 11:54:24\n<<<\nA second comment\n<<<\n!!!!!//From russ on 16 August 2006 11:58:58//\n<<<\nA third go at comments\n<<<\n/%comment%/
/***\n''TextAreaPlugin for TiddlyWiki version 2.0''\n^^author: Eric Shulman - ELS Design Studios\nsource: http://www.TiddlyTools.com/#TextAreaPlugin\nlicense: [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]^^\n\nThis plugin 'hijacks' the TW core function, ''Story.prototype.focusTiddler()'', so it can add special 'keyDown' handlers to adjust several behaviors associated with the textarea control used in the tiddler editor. Specifically, it:\n* Adds text search INSIDE of edit fields.^^\nUse ~CTRL-F for "Find" (prompts for search text), and ~CTRL-G for "Find Next" (uses previous search text)^^\n* Enables TAB characters to be entered into field content^^\n(instead of moving to next field)^^\n* Option to set cursor at top of edit field instead of auto-selecting contents^^\n(see configuration section for checkbox)^^\n!!!!!Configuration\n<<<\n<<option chkDisableAutoSelect>> place cursor at start of textarea instead of pre-selecting content\n<<option chkDisableEscapeKey>> don't cancel editor when ''escape'' key is pressed\n<<option chkTextAreaExtensions>> add control-f (find), control-g (find again) and allow TABs as input in textarea\n<<<\n!!!!!Installation\n<<<\nImport (or copy/paste) the following tiddlers into your document:\n''TextAreaPlugin'' (tagged with <<tag systemConfig>>)\n<<<\n!!!!!Revision History\n<<<\n''2006.02.14 [1.1.0]''\nadded option for chkDisableEscapeKey (default is standard action)\n''2006.01.22 [1.0.1]''\nonly add extra key processing for TEXTAREA elements (not other edit fields).\nadded option to enable/disable textarea keydown extensions (default is "standard keys" only)\n''2006.01.22 [1.0.0]''\nMoved from temporary "System Tweaks" tiddler into 'real' TextAreaPlugin tiddler.\n<<<\n!!!!!Code\n***/\n//{{{\nversion.extensions.textAreaPlugin= {major: 1, minor: 1, revision: 0, date: new Date(2006,2,14)};\n//}}}\n\n//{{{\nif (!config.options.chkDisableAutoSelect) config.options.chkDisableAutoSelect=false; // default to standard action\nif (!config.options.chkTextAreaExtensions) config.options.chkTextAreaExtensions=false; // default to standard action\nif (!config.options.chkDisableEscapeKey) config.options.chkDisableEscapeKey=false; // default to standard action\n\n// Focus a specified tiddler. Attempts to focus the specified field, otherwise the first edit field it finds\nStory.prototype.focusTiddler = function(title,field)\n{\n var tiddler = document.getElementById(this.idPrefix + title);\n if(tiddler != null)\n {\n var children = tiddler.getElementsByTagName("*")\n var e = null;\n for (var t=0; t<children.length; t++)\n {\n var c = children[t];\n if(c.tagName.toLowerCase() == "input" || c.tagName.toLowerCase() == "textarea")\n {\n if(!e)\n e = c;\n if(c.getAttribute("edit") == field)\n e = c;\n }\n }\n if(e)\n {\n e.focus();\n e.select(); // select entire contents\n\n // TWEAK: add TAB and "find" key handlers\n if (config.options.chkTextAreaExtensions) // add extra key handlers\n addKeyDownHandlers(e);\n\n // TWEAK: option to NOT autoselect contents\n if (config.options.chkDisableAutoSelect) // set cursor to start of field content\n if (e.setSelectionRange) e.setSelectionRange(0,0); // for FF\n else if (e.createTextRange) { var r=e.createTextRange(); r.collapse(true); r.select(); } // for IE\n\n }\n }\n\n tiddler.onkeypress = function(e) {\n if (!e) var e = window.event;\n clearMessage();\n var consume = false;\n switch(e.keyCode)\n {\n case 13: // Ctrl-Enter\n case 10: // Ctrl-Enter on IE PC\n case 77: // Ctrl-Enter is "M" on some platforms\n if(e.ctrlKey)\n {\n story.blurTiddler(this.title);\n config.macros.toolbar.invokeCommand(this,"defaultCommand",e);\n consume = true;\n }\n break;\n case 27: // Escape\n if (config.options.chkDisableEscapeKey) break; // ignore ESCAPE if option is set\n story.blurTiddler(this.title);\n config.macros.toolbar.invokeCommand(this,"cancelCommand",e);\n consume = true;\n break;\n }\n e.cancelBubble = consume;\n if(consume)\n if (e.stopPropagation) e.stopPropagation();\n return(!consume);\n };\n}\n//}}}\n\n//{{{\nfunction addKeyDownHandlers(e)\n{\n // exit if not textarea or element doesn't allow selections\n if (e.tagName.toLowerCase()!="textarea" || !e.setSelectionRange) return;\n\n // utility function: exits keydown handler and prevents browser from processing the keystroke\n var processed=function(ev) { ev.cancelBubble=true; if (ev.stopPropagation) ev.stopPropagation(); return false; }\n\n // capture keypress in edit field\n e.onkeydown = function(ev) { if (!ev) var ev=window.event;\n\n // process TAB\n if (!ev.shiftKey && ev.keyCode==9) { \n // replace current selection with a TAB character\n var start=e.selectionStart; var end=e.selectionEnd;\n e.value=e.value.substr(0,start)+String.fromCharCode(9)+e.value.substr(end);\n // update insertion point, scroll it into view\n e.setSelectionRange(start+1,start+1);\n var linecount=e.value.split('\sn').length;\n var thisline=e.value.substr(0,e.selectionStart).split('\sn').length-1;\n e.scrollTop=Math.floor((thisline-e.rows/2)*e.scrollHeight/linecount);\n return processed(ev);\n }\n\n // process CTRL-F (find matching text) or CTRL-G (find next match)\n if (ev.ctrlKey && (ev.keyCode==70||ev.keyCode==71)) {\n // if ctrl-f or no previous search, prompt for search text (default to previous text or current selection)... if no search text, exit\n if (ev.keyCode==70||!e.find||!e.find.length)\n { var f=prompt("find:",e.find?e.find:e.value.substring(e.selectionStart,e.selectionEnd)); e.focus(); e.find=f?f:e.find; }\n if (!e.find||!e.find.length) return processed(ev);\n // do case-insensitive match with 'wraparound'... if not found, alert and exit \n var newstart=e.value.toLowerCase().indexOf(e.find.toLowerCase(),e.selectionStart+1);\n if (newstart==-1) newstart=e.value.toLowerCase().indexOf(e.find.toLowerCase());\n if (newstart==-1) { alert("'"+e.find+"' not found"); e.focus(); return processed(ev); }\n // set new selection, scroll it into view, and report line position in status bar\n e.setSelectionRange(newstart,newstart+e.find.length);\n var linecount=e.value.split('\sn').length;\n var thisline=e.value.substr(0,e.selectionStart).split('\sn').length;\n e.scrollTop=Math.floor((thisline-1-e.rows/2)*e.scrollHeight/linecount);\n window.status="line: "+thisline+"/"+linecount;\n return processed(ev);\n }\n }\n}\n//}}}\n
Kingsley Mole sat high on a windy knoll, his eyes consuming the silent midnight woods. He nuzzled his long molish snout deep inside the heart of a marigold and let his molish imagination skip to and fro over sunken galleons and pirate pictures of rusted dubloons and deep-water cabins stacked to the brim with musty muskets and goldfish gauntlets, once worn by Henry Morgan. \n\nThe lark awoke and doffed its plumed three cornered hat to its own sleepy-eyed reflection, then it hopped past the crested nest of the snoring cuckoo, and flew off into the Lionel Lark morning looking for friend Mole. \n\nMole was on a marigold come-down and sulkily scraped blue-beat rhythms with his ground-digging paw.\n\n"Yes," he whispered, "Me and Li are going aquesting for the Lilly Pond of Fox Necks. Li'll know all the mapping gen, so the mole, kneeling on the soft soil, said a morning prayer to Ra, not even caring if he dirtied his yellow Rupert trousers because his molish mind knew that praying was special.\n\n(Part II is [[here|The Adventures of Kingsley Mole and Lionel Lark - The Quest Part II]])
(Part I is [[here|The Adventures of Kingsley Mole and Lionel Lark - The Quest Part I]])\n\nLionel Lark was an alchemist by profession but he loved to quest. Li and Mole were a romantic pair. Li, with his many-coloured Zodiac coat flapping about as he rode the Dawn Wind.... Rubbing his rimless spectacles, he lectured Mole in his larkish manner about the mythical Lilly Pond and its latitude and longitude, and goofing sometimes, and mentioning the Hyperborians, the frozen folk who lived behind the North Wind.\n\nAt eight 'o-clock, he scribbled little spells and directions on a dried mushroom parchment and Moley got proudly into his pigs-bladder balloon. Lionel took off, at first a little shakely, but soon as swift as the lordly eagle, The Emperor of the Sky-skinned Airships.\n\nBopping through the morning clouds, Kingsley rocked to and fro, now and again straightening his course by adjusting the misty spider's-web rope which was harnessed around Lionel's little puffed-out chest. They made a wonderful sight, these animal Wright Brothers.\n\nA lonely elf crunched the autumn leaves and solemnly dictated to his mouse scribe long, winding spirals of wonderful runes which, in our heavy translation would awaken Ra at midnight, or unhibernate a legion of poley albino-eyed hedgehogs or even cause a chasm on the Deeply Swirl of Foxnecks to drown a blessed water lily. Pan be praised for elfish ability to know about wisdom and to use it wisely. The elf's autumn feet hidden in rose-pettled, pointed shoes walked into The Mighty Grove and his never-ending stream of merriment soared and gushed niagarally through the Wonderful Kingdom. But even as quick as it came, it had ceased. His wise eyes became beacons of true light.\n\nAs the piggy bundle tumbled from the blessed heavens, the leaping elf hastily harnessed his beloved, tame nightingale and made for the point of ejection with a heart of many carats. Entangled in thorns and briars was Kingsley Mole.... his snout sticking high in the splendoured air, tents of zodiac folds cascaded over Lionel's larkish dome. Despectacled, he moaned into Kingsley Mole's eyes and cursed all flying machines doomed to rely on the ficklety of piggish bladders. The two saddened creatures trundled from their rose-bush prison and lay scarlet and fatigued in the escaping afternoon. The handsome, elvin figure soared through dusking skies and upon landing, kissed the proud brow of his sky steed and called a greeting to Mole and Li. \n\nAfter tea from acorn cups and slices of blueberry pie, the handsome elf told all the large legends that he knew about the perilous pond and its scaley protectors. Also of its healing ability and how one draught of pond dew could put forests of tangling tufts on the baldest badger or field mouses' heads. After glow-worm talks and plans for the quest, the elf led the tired companions through the foreboding fairy wood until they reached a large, beautifully-worked leather fencing boot, which had a door in its heel. \n\n"My great grandfather," the elf said, as Lionel commented about the image engraved on the door knob. "An alchemist you know," said the fairy one.\n\n"Mmmmm," said Li suspiciously.\n\nThey were made very comfortable in beds of great expanse, spider web sheets, and towers of warm, wooly moss blankets... and, as always in an elvish abode, dreams of the gentlest texture.\n
Superbad tiger running with your brain\nTucked beneath your arms like a devil train\nWhen the angels from the heavens\nMeet the angels from the earth\nYou'll hide inside your cave that's right of course\n\nAnd we know we ain't slow we're the avengers\n\nI have known lots of ladies and the ladies know me\nI've been foxy roxy punctured and I'm funky born free\nYou can needle treacle kiss me\nWith the honey from your mouth\nBut believe me I'm a bad moon bopster\nAnd I'll never come in your house\n\nAnd we know we ain't slow we're the avengers\n\nDig this.\n\nAnd we know we ain't slow we're the avengers\nAnd we know we ain't slow we're the avengers\n\nDig this
You gonna look fine\nBe primed for dancing\nYou're gonna trip and glide\nAll on the trembling plane\nYour diamond hands\nWill be stacked with roses\nAnd wind and cars\nAnd people of the past\n \nI'll call you thing\nJust when the moon sings\nAnd place your face in stone\nUpon the hill of stars\nAnd gripped in the arms\nOf the changeless madman\nWe'll dance our lives away\nIn the Ballrooms of Mars\n\nYou talk about day\nI'm talking 'bout night time\nWhen the monsters call out\nThe names of men\nBob Dylan knows\nAnd I bet Alan Freed did\nThere are things in night\nThat are better not to behold\n \nYou dance\nWith your lizard leather boots on\nAnd pull the strings\nThat change the faces of men\nYou diamond browed hag\nYou're a gutter-gaunt gangster\nJohn Lennon knows your name\nAnd I've seen his
Record label ''Track Records'' released this compilation of some of Bolan's early stuff on //22 June 1974//\nSee also [[You Scare Me To Death]]\n\n[img[http://static.flickr.com/84/217709324_ba43579968_m.jpg]]\n\n[[Jasper C. Debussy]]\n[[Lunacy's Back]]\n[[Beyond The Rising Sun]]\n[[Black & White Incident]]\n[[Observations]]\n[[Eastern Spell]]\n[[You Got The Power]]\n[[Hippy Gumbo]]\n[[Sarah Crazy Child]]\n[[Rings Of Fortune]]\n[[Hot Rod Mama]]\n[[The Beginning Of Doves (Song)]]\n[[Mustang Ford]]\n[[Pictures Of Purple People]]\n[[One Inch Rock]]\n[[Jasmine 49]]\n[[Charlie]]\n[[Misty Mist]]\n[[Cat Black]]\n[[Sally Was An Angel]]\n \n\n
Egyptian songs sing of\nHow it's always been,\nOnly crystal legends,\nKnow I've lost the Kissing Ring.\nThe ring was golden small,\nUnseen to those who crawl.\nFor lovers all walk tall,\nThey've seen most everything.\n\nThe ring was the thing,\nThat made it all begin, doo-doo-da.\nThe ring was the thing,\nThat made it all begin.\n\nThe battle sins of some,\nAre acquainted with a son,\nWho only walks at night,\nWith shoes in pulling time.\nThe legend on him snag\nAnd making it all a drag,\nWhen the Kissing Ring is found,\nThey'll destroy the only sound.\n\nThe ring was the thing,\nThat made it all begin, doo-doo-da.\nThe ring was the thing,\nThat made it all begin, doo-doo-da
A Fly label cash-in. \n\nMarc had just hit the top of the charts with [[Ride A White Swan]] and Fly wanted to cash-in before the heat wore off.\n\n[img[http://static.flickr.com/66/217707305_9168a490d7_m.jpg]]
[img[http://static.flickr.com/71/217707307_0e41c97b54.jpg]]\n/%\n@@position:relative;top:15px;left:5px;[img[images/w.gif]]@@e are the Children of Rarn\n<html><div style="padding-left:50px;">\nWe've trodden The Vales of the Sun <br />\nThe child will cry <br />\nOn Swans they fly<br />\nWe are the Children of Rarn<br />\n</div></html>\n@@position:relative;top:15px;left:5px;[img[images/w.gif]]@@e are the Seekers of Space\n<html><div style="padding-left:50px;">\nWe've seen Our Master's face<br />\nIt's young and gold<br />\nAnd silvery-old<br />\nWe are the Seekers of Space<br />\n</div></html>\n<html><div style="padding-left:50px;">\nOm\n</div></html>\n%/
[img[http://static.flickr.com/45/217707309_153c237eb5_m.jpg]]
O Satyr come \nand suck my thumb \n'cos you're a little fawn \nand you need me. \n\nOn hoofy feet \nthrough the windy wheat \n'cos you're a little fawn \nand I'll feed thee. \n\nDown the delly way \nwith your belly grey \nI've some fruit and nuts \nand a reed O. \n\nAnd I'll skip with you \nin the midnight blue \nand carve fluting pipes \nfor you to play on. \n\nIn the deeply dark \nwhen the wolves loom large \nI've a snuggly nook \n'neath the meadow. \n\nWhere you'll sleep and be \ncurled and friends with me \nthrough the evil night \ntill starling morning.
+++[Info]\nb-side [[Midnight]]\n===\n\n\n\n~T-R-E-X\n\nSome call me Arnie, some name me Slim\nIt don't make no difference\n'Cos I move right in\n\nThey call me the groover\nWhen I'm on the floor \nThe kids yell for more, more, more\n\nSome call me Starkey, some name me Stud - Yes they do\nIt don't make no difference\n'Cos I move in the mud \n\nI said sing it to me children\n\nYeah, I'm a groover honey\nYeah, I'm a groover honey\nYeah, I'm a groover honey\n\nYeah, yeah, yeah, ah, ah , ah\nLa, la, la, la, la\n\nWell some call me Jeepster, and some name me Lane\nIt don't make no difference\nMan you know I aint dim\nI'm a groover, 'cos i move right in\nWell they call me the groover\nWhen I'm on the floor \nThe kids yell for more, more, more\n\nI said sing it to me children
We're the leopards \nWe're the leopards\nWe're the leopards\n\nThe leader of the pack lives down in the local drain\nWe're the leopards\nKing Kong built a car inside his brain\nWe're the leopards\nYou tell me who's the sexiest Bud\nWhy it's Gardenia & the Mighty Slug\n\nWe're the leopards\n\nOld Doug Henry lost an ear when he crossed my path\nWe're the leopards\nCalled himself Jesus, well that's what he said to me\nWe're the leopards\n\n\nI have never seen a freak look as weird as you\nExcept for Gardenia and the Mighty Slug\n\nWe're the leopards\n\nCycle Michael grotesque school desk in my brain\nWe're the leopards\nMincing Quincy dropping bop drops down the drain\nWe're the leopards\n\nI'll just tell you boy we're mean and we're tough\nJust like Gardenia and the Mighty Slug\nWe're the leopards\n\nI know that we know that he know it's wrong\nWe're the leopards\nTo spend your life inside a song\n\nGreasy Gert tried it and she licked it too\nJust like Gardenia and the Mighty Slug\nWe're the leopards\n\nUncle Bimbo drunk up the sea of Galilee\nAnd like a fool he promised it all to me\nBut I'm young and built of steel\nJust like Gardenia and the Mighty Slug\n\nJust like Gardenia and the Mighty Slug\nJust like Gardenia and the Mighty Slug\n\nWe're the leopards
+++[Info]\nRecorded 1967\n===\n\n\nDan, Dan, Menthol Dan.\nDan, Dan, Menthol Dan.\n\nMy friend Dan he was a cautious man.\nThere wasnยดt much he didnยดt understand.\nHe stood on a bridge of death,\nAll because of bad Macbeth.\nThe lilac hand of Menthol Dan.\n\nDan, Dan, Menthol Dan.\nDan, Dan, Menthol Dan.\n\nRee Macbeth she was a friend of mine.\nShe introduced him to life of crime.\nHe stood on a falling bridge.\nAll because he stole a fridge.\nThe lilac hand of Menthol Dan.\n\nDan, Dan, Dan you donยดt understand.\nYou got the face of an angel,\nBut you smile like a man.\n\nDan, Dan, Dan you donยดt understand.\nYou got the face of an angel,\nBut you smile like a man.\n\nDan was loose from his monastic cell.\nHe found a whole of life\nand threw it away.\nDeep into the iron truth.\nOn the house for the purple roof.\nThe lilac hand of Menthol Dan.\n\nDan, Dan, Dan you donยดt understand.\nYou got the eyes of an angel,\nBut you smile like a man.\n\nDan, Dan, Dan you donยดt understand.\nYou got the eyes of an angel,\nBut you smile like a man.\n\nDan, Dan, Dan you donยดt understand.\nYou got the face of an angel,\nBut you smile like a man.\n\nHey!
Weeping willow woman \nLadled on the arm \nOf the misty coast of Albany \nWith its charm \nPining pillar of the wild willows end \nWomanly waiting \nFor your manly friend. \n\nA star 'bove the mire \nis her husbandly choice \nLocked in his tower \nBy the enchanted voice \nOf the Starguard Rhina \nWith his lips soiled with gold \nHe dares to loiter \nNear our lady bold. \n\nOnce a heart was made and cast \nIn molten love \nBut t'was in realms of the past
The old ''~VideoDRAMA'' site first went live in 1997. I (Russ) set it up along with Rick Dalvano at my then ISP, Easynet. It's actually still there even though Easynet and I parted some five years ago now. I guess Easynet know a good resource when they see one ;)\n\nAnyway, it's now 2006, just one year short of ''~VideoDRAMA's'' 10th birthday... So, time for a lick of paint, a partial rewrite (there were some glaring typos dotted around the lyrics) and a complete relaunch. So this is it folks... \n\n\n\n@@font-size:32pt;&nbsp;&nbsp;&nbsp;&nbsp;[[VideoDRAMA II]]@@\n
+++[Info]\na-side [[Jasper C. Debussy]]\n===\n\n\nI'm walking in the perfumed garden of Gulliver Smith\nHe said that I count candles waving faintly\nWe're always laughing at him\nBecause he was so un-attractive\nAnd so sadly hating things\nHe saw there was no more\nPleasant touch, and he sees\nI'm sadly smiling to his friends\nWhose enemies would always lend\nA kind of mark a kiss to spark\nA key to enter in the dark\nA hidin' place a place to make a paradise to forsake\nAll your cares no no stairway people\nAnd I dare you to scream, while in a dream\n\nI'm talking in the perfumed garden of Gulliver Smith\nHe said that I was right and he was wrong\nTo play upon a Chinese gong\nAnd as I look to my dismay\nThe night-time faded into day\nProclaim, sacrifice, killing all that was Na-na-na-na-na-nice\nTurning round with insane cries
Beauty things sing to me \nAs a chorus \nAs a flock the wild seas \nSway before us \n\nHail as a hand is my mail \nThe thrush is my love \nAnd the whale is a snail \n\nSailors dance in a trance \nOn the ocean \nFairy lights in her eyes \nTame the water \n\nWith the morn we mount and ride \nPilgrims of summer \nThe swift is our guide \n\nDazzle dawn man \nMouthed with a smile \nCaution cloud lord \nStay for a while \nYou make us smile
In the hall, high above the ceiling\nthe furnace heaters blew.\nBlackhat fondled his white lashing hair,\nhis avalanched glacier diminished\nin the artificial suns.\nA leg quivered, river green and massive\nlike girders of seagold.\nA roar grew in the wrestling room of daybreak.\nBlackhat tittered with prideful delight.\nMine he moaned,\nthe melting water scurried down the appropriate\nchannels.\nA now where once stood solid water\nstood the reptile king,\nTyrannosaurus Rex, reborn and bopping.
The sea beasts scull the waters \nFeeling fear for thee \nThe hawks that tamed the skies \nWish you so well to be. \n\nA - Foal in the fields \nWith the bless of the hills your \nShore and you're poor and your sore feetys \nNe'er to be bore \nBy man's claw. \n\nThe horned dog guarding grandly \nDaughters of the Sun \nAt night in twilight groves \nHis pray for you is begun. \n\nYou - Foal in the fields \nWith the bless of the hills on your \nShore and you're poor and your sore feetys \nNe'er to be bore \nBy man's claw. \n\nThe bull of gold that's old \nBeyond the songs of man \nKeeps watch upon the fates \nWhen they misweave your strand. \n\nO - Foal in the fields \nWith the bless of the hills on your \nShore and you're poor and your sore feetys \nNe'er to be bore \nBy man's claw. \nUFO, UFO you are \nUFO, UFO you are \nUFO, UFO you are, a colt
+++[Info]\na-side [[Debora]]\n===\n\n\nThe seal of seasons moved with grace \nLove \nUpon the Orkney oceans face \nLove\n\nShe swam and moved \nJust like a prancer \nA gypsy dancer \nA salty shimmered shell of foam \n\nOut of the depths she stood before me \nOne breath and shells grew on my nut tree \nIt swayed and swum\n\nJust like a prancer \nA gypsy dancer \nA salty shimmered shell of foam \n\nHer night it came and then she hooked her head \nUnto the fleeing sun and then she fled \nAnd flew whou \nJust like a prancer \nA gypsy dancer \nA salty, shimmered shell of foam
[img[http://static.flickr.com/97/217709948_4f42833d23_m.jpg]]
I could never understand \nThe wind at all \nWas like a ball of love \nI could never never see \nThe cosmic sea \nWas like a bumble bee \n\nAnd when I'm sad... \nI slide. \n\nI have never never kissed \nA car before \nIt's like a door \nI have always always \nGrown my own before \nAll schools are strange \n\nAnd when I'm sad... \nI slide. \n\nI have never never \nNailed a nose before \nThatยนs how the garden grows \nI could never understand \nThe wind at all \nWas like a ball of love \n\nAnd when I'm sad... \nI Slide \nWatch now \nI'm gonna slide
+++[Info]\nb-side [[All Alone]]\n===\n\n\nWell you damaged the soul of my suit\nYou pulled my love out by the roots\nBut I'm not such a bad boy- Oh No \n\nYou ravished the runes of my tunes\nYou put on the gloves of my loves\nBut you're not such a bad girl- Oh No \n\nRock and rolled it even strolled it baby\nRock and rolled it even strolled it baby\nRock and rolled it yeah
Tiger tim the tightrope walker\nTried to steal the dragons daughter\nO Babe\nl do mean babe.\n\nMenace lurks in houses only\nWhere the hearts are fat and bony\nBabe\nI do mean babe.\n\nGolden risks and folly's rainbow\nDown the drain where all the time goes\nBabe\nI do mean babe\n\nFrozen joe the ballet boxer\nChromed his toes to get his rocks off\nBabe\nI do mean babe.\n\nAll the rats and all the peacocks\nBuilt a ship and flew to venus\nBabe\nl do mean babe\n\nPain is meat and meat is people\nYour head's a house your soul the steeple\nBabe\nI do mean babe\n\nPainted toes and purple earlobes\nLife's a gas but it's such a scene though\nBabe\nl do mean babe\n\nl could t-tell you something\nI could t-tell you something\nBabe\nI do mean babe
+++[Info]\nb-side [[San Francisco Poet]]\n===
O the throat of winter is upon us \nThe barren barley fields refuse to sway \nBefore the Husky hag of early darkness \nIn her hoods of snowy grey \n\nWinter winter winter \nAre you but a servant of the bad one \n\nLo the frozen blue birds in the belfries \nThe bluebells in their hearts are surely prey \nUnto the grasping bats-wing of the winter pincer \nHoods of snowy grey
Light up your face \nWith all the love within you \nSay your word \nMake it heard \nLight up the wind \nWith all the kings inside you \nShout it out \nHave no doubts \nFor the time of love is now\n \nLight up your head \nWith things the children said child \nMake a start \nFrom your heart \nLight up the world \nWith poems from within you \nShout it out \nHave no doubts \nFor the time of love is now \n\nAnd your days of love \nAre always in a dream \nYou know.
Shadow cloak swift as a swallow\nPantaloon down in the hollow\nDancing, his voice like a cloud \nIn the death of my night\n\nAwful eyes, black Persian beggar\nHarlequinesque, hair plaited heather\nStepping so lightly\nA sprite in the house of my sight\n\nO m'dear, Travelling Tragition\nIt's sky clear, your a gift from the fair folk
\n+++[Site Related]\n''Who is behind the ~VideoDRAMA site?''\n[[Rick Dalvano|mailto:rexdal1@gmail.com]] and [[Russ Thomas|mailto:Kingsley.Mole@googlemail.com]]\n\n''Will you be adding tabs for the songs on ~VideoDRAMA II?''\nSome of them, yes.\n\n''How many songs are there in total on the ~VideoDRAMA II site?''\nLots. We've never counted them.\n\n''How long has ~VideoDRAMA been around? When was it first created?''\nThe original ~VideoDRAMA site went live in 1997. Read [[this|The Old VideoDRAMA Site]] for more information.\n\n''What's the download link for?''\nWell, you //could// download a copy of ''~VideoDRAMA II'' and use it locally. In fact, because ''~VideoDRAMA II'' uses tiddlywiki, you //could// copy it onto a PDA, a USB drive, a phone... anything as long as it can run a browser and javascript. Obviously, your local copy will need to be updated from time to time... but hey, it's still pretty cool.\n\n''Do you mean download the WHOLE site???''\nSure. It's just one page.\n\n''Huh?''\n''~VideoDRAMA II'' is just one HTML page.\n\n''You're kidding me...''\nNope. Repeat after me: //''~VideoDRAMA II is just one damn page''//\n\n''WTF!!!''\nWe agree.\n===\n\n+++[Marc Bolan & T.Rex Related]\n''Who is Marc Bolan anyway?''\nUh...\n===\n\n+++[Miscellaneous]\n''What the hell is a tiddlywiki?''\nSee http://www.tiddlywiki.com and also http://tiddlyspot.com/mptw/\n\n===
My eyes went up \nIt was sunrise \nThe sky turned black \nIt was noon \nA ship of the silverest metal \n\nShadowed out \nAll of the moon \nTruly I do love you-oo \nTruly I do love you-oo \n\nA shape \nThat was golden and crimson \nExtended a claw \nTo my frame \nI sunk in the sand \nLike an infant \nI screamed \nbut my tongue was lame \nTruly I do love you-oo \nTruly I do love you-oo \n\nMy heart on a platter \nThey'd stolen \nMy eyes \nWere all fiery flame \nA sound like a sweet dove \nI did Stutter \nAnd then the ship \nSwum the skies again
+++[Info]\nb-side [[Beyond The Rising Sun]]\n===\n\nWalking in the woods one day \nI met a man who said that he was magic \nWonderful things he said \nPointed hat upon his head \nKnew why people laughed and cried \nWhy the lived and why the died\n \nShadows followed him around\nHewalked the woods without a single sound \nGolden eagles at his door \nCats and bats played on the floor \nSilver sunlight in his eyes \nThe wizard turned and melted in the sky.
+++[Info]\na-side [[Debora]]\n===\n\n\nEverybody's doing the Woodland Bop \nOnce you start it\nYou find it hard to stop\n\nIn the hallowed morning \nSee her in the moon-white \nStreaking across the skies \nIn the evening dusk dunes \nSee her like a sun bird \nStreaking across the skies
There was a time when everything was fine,\nYou got drunk on the day like it was wine,\nAnd all the children\nThey put flowers in their hair\nAnd all the grown-ups\nThey put daggers there instead
People passing by\nAll through the night\nThey use my senses in strange ways\nShe knows just what you're like a fading star\nAnd she uses my senses in strange ways \n\nYou've got to think zinc\nThink a think a\nThink a think a\nThink a think a\nOoooh \n\nYou've got to think zinc\nThink a think zinc\nThink a think zinc\nZinc zinc\nOoooh\n\nPeople passing by all through the night\nThey use my numbers in strange ways\nOver the telephone you should hear them groan\nI crossed his wires in strange ways \n\nAll my favorite people child \nYou gotta think zinc\nAll my favorite people child\nYou gotta think zinc\n\nThink zinc think zinc baby\nThink zinc think zinc baby
+++[Info]\na-side [[Metal Guru]]\n===\n\nAh-ah-ah-ah...\n\nI was walking down the sky-way my way\nWhen I saw the legs that I love\nI was thinking 'bout drinking something\nWhen I saw the legs that I love\n\nI bought a car was a low-slung thunderwing\nIt moved like the sun of the dawn \nMy little baby, she's a tippie-toed vamperator\nShe moved like the sun of the dawn \n\nwoo...\n\nGet it on right on\n\nDo your thing O Oh Thunderwing\nDo your thing O Oh Thunderwing\nYeah\nGet it on right on \n\nWell my wig-hat moves and my spaceball boots bounce\nWhen I hear the music I love...yeah\nA soap-box cart was the start of my wandering\nWhen I hear the music I loved...yeah\n\nGet it on, right on \nDo your thing thunderwing
/***\n|''Name:''|TiddlerWithParamsPlugin|\n|''Version:''|1.0.1 (2006-03-22)|\n|''Source:''|http://tiddlywiki.abego-software.de/#TiddlerWithParamsPlugin|\n|''Author:''|UdoBorkowski (ub [at] abego-software [dot] de)|\n|''Licence:''|[[BSD open source license]]|\n!Description\n\nThe TiddlerWithParamsPlugin extends the build-in {{{<<tiddler...>>}}} macro. It replaces placeholders ($1, $2, ...) in the given tiddler by values passed with the macro. Then it inserts the (replaced) text, just like the original {{{<<tiddler...>>}}} macro.\n\n''Syntax:'' \n|>|{{{<<}}}''tiddler '' //tiddlerName// [//className//] [''asText''] [''with:'' //arguments// ] [''prefix:'' //prefixString//] {{{>>}}}|\n|//tiddlerName//|The name of the tiddler to be included. The tiddler may contain placeholders ($1, $2, ... $9) that will be replaced with the values passed with the macro|\n|//className//|The (CSS) class to be used around the embedded tiddler|\n|''asText''|When defined the (replaced) content of the tiddler is inserted as pure text, i.e. it is not "wikified".|\n|//arguments//|up to 9 arguments may be passed to the macro, used as the values for the placeholders $1, $2, ... $9 in the referenced template|\n|//prefixString//|By default the placeholders $1, $2, $3,..., $9 are used. But you may change the "prefix" before the placeholder number ("$") to some other text through the "prefix:" option. This may be necessary when you are using the $n in the tiddler you are referencing (e.g. when you are using regular expressions).|\n|>|~~Syntax formatting: Keywords in ''bold'', optional parts in [...]. ~~|\n\n!Example\n\nThe following ''//ProjectTemplate//'' tiddler defines an "Overview" page for a project, that gives access to various "sub-tiddlers" used in the project, that follow a static naming schema (e.g. all Notes for any project are stored in a tiddler called "//projectName// Notes"). $1 holds the name of the Project (e.g. "ForEachTiddler"), $2 holds the type of the published component (e.g. "Plugin", "Macro", "Function").\n{{{\n![[$1Project]] Overview\n* [[$1$2]]\n* [[ToDo|$1 ToDos]]\n* [[Notes|$1 Notes]]\n* [[Examples|$1Examples]]\n* [[Tests|$1 Tests]]\n* [[Open Bugs/CRs|$1 Open Bugs and ChangeRequests]]\n}}}\n\nThis template is now used in the ''//ForEachTiddlerProject//'' tiddler:\n{{{\n<<tiddler ProjectTemplate with: ForEachTiddler Plugin>>\n}}}\n\nThis results in the following tiddler text for the ''//ForEachTiddlerProject//'' tiddler:\n{{{\n![[ForEachTiddlerProject]] Overview\n* [[ForEachTiddlerPlugin]]\n* [[ToDo|ForEachTiddler ToDos]]\n* [[Notes|ForEachTiddler Notes]]\n* [[Examples|ForEachTiddlerExamples]]\n* [[Tests|ForEachTiddler Tests]]\n* [[Open Bugs/CRs|ForEachTiddler Open Bugs and ChangeRequests]]\n}}}\n\n!Revision history\n* v1.0.0 (2006-01-20)\n** initial version\n* v1.0.1 (2006-03-22)\n** Added 'asText' option\n** Support Safari (Thanks to Elise Springer for reporting the problem)\n!Code\n***/\n//{{{\n//============================================================================\n// TiddlerWithParamsPlugin\n//============================================================================\n\n// Ensure that the Plugin is only installed once.\n//\nif (!version.extensions.TiddlerWithParamsPlugin) {\n\nversion.extensions.TiddlerWithParamsPlugin = {\n major: 1, minor: 0, revision: 1, \n date: new Date(2006,3,22), \n type: 'plugin',\n source: "http://tiddlywiki.abego-software.de/#TiddlerWithParamsPlugin"\n};\n\n// ---------------------------------------------------------------------------\n// Helpers\n// ---------------------------------------------------------------------------\n\nvar indexInArray = function(array, item) {\n for (var i = 0; i < array.length; i++) {\n if (array[i] == item) {\n return i;\n }\n }\n return -1;\n}\n\nvar myEscapeRegExp = function(s)\n{\n // The original escapeRegExp function does not work with Safari (2.0.3) \n // since the $& is not implemented.\nvar t = s.replace(/\s\s/g, "\s\s\s\s");\n t = t.replace(/\s^/g, "\s\s^");\n t = t.replace(/\s$/g, "\s\s$");\n t = t.replace(/\s*/g, "\s\s*");\n t = t.replace(/\s+/g, "\s\s+");\n t = t.replace(/\s?/g, "\s\s?");\n t = t.replace(/\s(/g, "\s\s(");\n t = t.replace(/\s)/g, "\s\s)");\n t = t.replace(/\s=/g, "\s\s=");\n t = t.replace(/\s!/g, "\s\s!");\n t = t.replace(/\s|/g, "\s\s|");\n t = t.replace(/\s,/g, "\s\s,");\n t = t.replace(/\s{/g, "\s\s{");\n t = t.replace(/\s}/g, "\s\s}");\n t = t.replace(/\s[/g, "\s\s[");\n t = t.replace(/\s]/g, "\s\s]");\n t = t.replace(/\s./g, "\s\s.");\n\n return t;\n}\n\n// ---------------------------------------------------------------------------\n// The (hijacked) tiddler Macro Handler \n// ---------------------------------------------------------------------------\n\nconfig.macros.tiddler.handler = function(place,macroName,params,wikifier,paramString,tiddler) {\n \n var className = null;\n var argsStart = -1;\n var doWikify = true;\n\n var iParams = 1;\n if (params[iParams] != "asText" && params[iParams] != "with:") {\n className = params[iParams++];\n }\n if (params[iParams] == "asText") {\n iParams++;\n doWikify = false;\n }\n if (params[iParams] == "with:") {\n iParams++;\n argsStart = iParams;\n }\n \n var wrapper = createTiddlyElement(place,"span",null,className ? className : null,null);\n var text = store.getTiddlerText(params[0]);\n if(text) {\n // Check for recursion\n var tiddlerName = params[0];\n var stack = config.macros.tiddler.tiddlerStack;\n if (stack.find(tiddlerName) !== null) return;\n\n if (argsStart >= 0) {\n // The params between the "with:" and the "prefix:" (or the end) are the arguments,\n // The param behind the "prefix:" is the prefix before the placeholder numbers.\n var argsEnd = params.length;\n var prefix = "$";\n var prefixIndex = indexInArray(params, "prefix:");\n if (prefixIndex >= argsStart) {\n argsEnd = prefixIndex;\n if (prefixIndex < (params.length-1)) {\n prefix = params[prefixIndex+1];\n }\n }\n // to avoid any "special RE chars" problems with the prefix string escape all chars.\n prefix = myEscapeRegExp(prefix);\n \n var args = params.slice(argsStart, argsEnd);\n var n = Math.min(args.length, 9);\n for (var i = 0; i < n; i++) {\n var value = args[i];\n \n var placeholderRE = new RegExp(prefix+(i+1),"mg");\n text = text.replace(placeholderRE, value);\n }\n }\n stack.push(tiddlerName);\n try {\n if (doWikify) {\n wikify(text,wrapper,null,store.getTiddler(params[0]));\n } else {\n wrapper.appendChild(document.createTextNode(text));\n }\n } finally { \n stack.pop();\n }\n }\n}\nconfig.macros.tiddler.tiddlerStack = [];\n\n// End of "install only once"\n}\n\n//============================================================================\n// End of TiddlerWithParamsPlugin\n//============================================================================\n//}}}\n/***\n!Licence and Copyright\nCopyright (c) abego Software ~GmbH, 2006 ([[www.abego-software.de|http://www.abego-software.de]])\n\nRedistribution and use in source and binary forms, with or without modification,\nare permitted provided that the following conditions are met:\n\nRedistributions of source code must retain the above copyright notice, this\nlist of conditions and the following disclaimer.\n\nRedistributions in binary form must reproduce the above copyright notice, this\nlist of conditions and the following disclaimer in the documentation and/or other\nmaterials provided with the distribution.\n\nNeither the name of abego Software nor the names of its contributors may be\nused to endorse or promote products derived from this software without specific\nprior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY\nEXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES\nOF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT\nSHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,\nINCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED\nTO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR\nBUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\nCONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN\nANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH\nDAMAGE.\n***/\n
One and a two and a three and four\n\nGolden eyes on a sunset lawn\nMake me feel so glad to be born\nBroken pages on the edge of night\nMake me want to squeeze you tight\nTill dawn\nTill dawn \n\nHeat will fly on a sky of gold\nRivers flow like diamonds oh\nSweet angel girl I need you now\nLocked around me like a burning house\nTill dawn\nTill dawn oh \n\nTill dawn ti-ti-till dawn\nTill dawn ti-ti-till dawn
With your stained glass look\nOOhhh...\n\nWell do you remember when we met\nYou stuck behind me like a stained glass net\nAnd I'm broken\nIs that a token of your love\nIs that a token\nA token of your love\n\nDo you remember when we met\nYou moved behind me like a stained glass net\nAnd I'm broken\nIs that a token of your love\nIs that a token\nA token of your love\n\nEveryday every single day\nMy heart is broken Oh yeah\nEveryday every single day\nDoes this mean my love has been awoken \n\nA token of your love
Drummer with [[T.Rex]] 1976 ~ 1977
[img[http://static.flickr.com/89/217710508_702f002f20_m.jpg]]\nMarc's (T.Rex's) producer 1967 - 1973\nTony also played bass and keyboards on a few tracks.\n\nSee [[www.tonyvisconti.com|http://www.tonyvisconti.com/artists/trex.shtml]]
The flowing mane of pain swells on Trelawny Lawn \nStark handsome eyes decide the unicorn \nIs a beast of borrowed wisdom \nLike a thrush in the yielding harvest field \nThe prophet deems snow. \n\nThe silent stork of sadness scans Trelawny Lawn \nThe lion, the unicorn it's horn in the lap of Beth \nLaments the dawn \nBeguiled, the scribish jackel-man his cap a skull-of-rat \nIs but a pawn. \n\nO sky, your eye's embrace is to vicious for my wheat \nThe foaming Earthguard whinneys to his leaden feet \nThe bullfinch rumbles \nThe lavish lion aslanically scythes the hay \nThe unicorn bids you stay.
+++[Info]\nb-side [[Sitting Here]]\n===\n\n\nTruck on, truck on, truck on, truck on tyke, yeah\nTruck on, truck on, truck on, truck on tyke, yeah\n\nO tyke baby\nYou're a slender living lady\nYou're dynamite yeah\n\nYou're a jeep mouth bouncer\nYou're a right on dancer\nGot gangsters' legs, yeah\n \nYou're a silver stud fender\nI'm a jive brained bender\nI'm everyone, yeah\n\nGot electric deep in me\nI'm a space-age cowboy\nRide dinosaurs, yeah\nLike a song I truck on\n\nO tyke baby\nYou're a palamino lady\nCause you move along, yeah\n\nPeople put you down\n'Cos you're too low on the ground\nThey can't hurt you though\n'Cos you're cosmic\nLike a song I truck on
''Tyrannosaurus Rex'' became [[T.Rex]]
[img[http://static.flickr.com/81/217710516_c478cd37df_m.jpg]]
+++[Info]\na-side [[Oh Baby]]\n===\n\n\n//Instrumental?//
Hey there sister letโ€™s face the Universe and dance\nHey there sister letโ€™s face the Universe and dance\n\nWeโ€™ll bop over the galaxies weโ€™ll stroll over to Mars\nWeโ€™ll romance on Jupiter make love among the stars\n\nIf you really love me sister letโ€™s face the Universe and dance\nIf you really love me sister letโ€™s face the Universe and dance
| !date | !user | !location | !storeUrl | !uploadDir | !toFilename | !backupdir | !origin |\n| 17/8/2006 10:2:22 | russ | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . |\n| 17/8/2006 10:4:21 | Russ | [[/|http://videodrama.tiddlyspot.com/]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 17/8/2006 10:42:2 | Russ | [[/|http://videodrama.tiddlyspot.com/]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 17/8/2006 11:2:15 | Russ | [[/|http://videodrama.tiddlyspot.com/]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . |\n| 17/8/2006 11:45:0 | russ | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 17/8/2006 12:2:21 | russ | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 17/8/2006 13:3:2 | russ | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 17/8/2006 13:4:55 | russ | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 17/8/2006 14:9:52 | russ | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 17/8/2006 14:51:30 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 17/8/2006 16:31:45 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 17/8/2006 16:43:18 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 17/8/2006 16:43:41 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 17/8/2006 17:4:58 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 18/8/2006 16:11:34 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 18/8/2006 16:19:17 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 18/8/2006 19:2:36 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 19/8/2006 10:7:35 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 19/8/2006 17:12:4 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 20/8/2006 11:6:37 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 20/8/2006 13:3:17 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 20/8/2006 13:23:43 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 20/8/2006 14:21:0 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 20/8/2006 15:2:5 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 21/8/2006 20:0:35 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . |\n| 22/8/2006 10:5:36 | Rick | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . |\n| 22/8/2006 10:6:40 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . |\n| 22/8/2006 10:7:19 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/store.cgi]] | . | index.html | . | Ok |\n| 22/8/2006 19:9:56 | KingsleyMole | [[videodrama.html|file:///E:/dev/VideoDRAMA/videodrama.html]] | [[store.cgi|http://videodrama.tiddlyspot.com/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////===
\n^^[[VideoDRAMA II]] is hosted by [[tiddlyspot.com|http://tiddlyspot.com/]]^^\n^^[[VideoDRAMA II]] is Powered by [[MPTW|http://tiddlyspot.com/mptw/]] and [[tiddlywiki|http://www.tiddlywiki.com]] version <<version>>^^\n^^Images hosted at [[www.flickr.com|http://www.flickr.com/]]^^
Goin' to see my baby in the afternoon\nGoin' to take my baby on a venus loon \n \nSlipshod gymslip in my neighborhood\nEmpty head, steel bed, Dipseys no good \nAll alone, no telephone, to hype up my baby\nGoin' to see my baby in the afternoon \nGoin' to take my baby on a venus loon \n \nBent spent, psychadelic mailman's head\nGorging up my spokes like the ghostly dead \nAlly pally angel chewing up my blues \nGoin' to see my baby in the afternoon\nGoin' to take my baby on a venus loon \n \nOh my venus loon it'll make you swoon\nIt'll make you feel good\nIt'll make you feel good\nOh my venus loon it'll make you swoon\nIt'll make you feel good\nIt'll make you feel good \n \nFirst girl I ever met I don't recognize \nHer nose is smashed her frame is bent \nShe's covered in flies \nEveryone I ever loved\nI'll love 'till I die \nGoin' to see my baby in the afternoon\nGoin' to take my baby on a venus loon\n \nOh my venus loon it'll make you swoon\nIt'll make you feel good \nIt'll make you feel good \nOh my venus loon it'll make you swoon\nIt'll make you feel good \nIt'll make you feel good
\n^^//Yes, it's a song title. You don't think we just make this stuff up, do you? :) //^^\n\n<<tiddler RecDetail \n with: \n 1974\n [[T.Rex]] \n [[Tony Visconti]]\n " "\n " "\n Band4\n " "\n>>\n\n+++[Lyric]\nTBD\n===
Remember this?\n\n[img[http://static.flickr.com/94/217710522_b9b0e5a7b0.jpg]]\n\nIt's [[the old VideoDRAMA site|The Old VideoDRAMA Site]] which went live in 1997. \n\nThis, however, is @@font-size:28pt;different@@\n\nThis is the @@font-size:18pt;all new@@\n\n@@font-size:20pt;color:gold;background-color:#000; ~VideoDRAMA II - The Ultimate Marc Bolan & T.Rex Song & Lyric Database @@\n\nthat's right... You're looking at the all new ''~VideoDRAMA II'', chock-full of Marc Bolan & T.Rex lyrics and related song info.\n\n@@font-size:20pt; HAVE FUN - it's ~VideoDRAMA II !!! @@\n
/***\nDon't like the slight indent that appears when using heading tags\n***/\n/*{{{*/\nh1,h2,h3,h4,h5 {\n padding-left: 0px;\n}\n/*}}}*/\n\n/***\nWant a red title\n***/\n/*{{{*/\n.headerForeground {\n color: #f00;\n}\n/*}}}*/
<!---\n| Name:|~TagglyTaggingViewTemplate |\n| Version:|1.2 (16-Jan-2006)|\n| Source:|http://simonbaird.com/mptw/#TagglyTaggingViewTemplate|\n| Purpose:|See TagglyTagging for more info|\n| Requires:|You need the CSS in TagglyTaggingStyles to make it look right|\n!History\n* 16-Jan-06, version 1.2, added tagglyListWithSort\n* 12-Jan-06, version 1.1, first version\n!Notes\nRemove the miniTag if you don't like it or you don't use QuickOpenTagPlugin\n--->\n<!--{{{-->\n<div class="toolbar" macro="toolbar -closeTiddler closeOthers +editTiddler permalink references jump newHere"></div>\n<div class="tagglyTagged" macro="hideSomeTags"></div>\n<div><span class="title" macro="view title"></span><span class="miniTag" macro="miniTag"></span></div>\n<div class='subtitle'>Updated <span macro='view modified date [[DD MMM, YYYY]]'></span></div>\n<div class="viewer" macro="view text wikified"></div>\n<div class="tagglyTagging" macro="tagglyListWithSort"></div>\n<div class="toolbar" macro="toolbar -closeTiddler closeOthers +editTiddler permalink references jump newHere"></div>\n<!--}}}-->\n
This woman is a perfumed breeze\nGreek Gods recline on her knees\nI'd freeze the sun to kiss her ear\n\nIt all makes up the visions I call Domino\nIt all makes up the visions I call Domino\nRight now \n\nA suit of doubt she gave to me\nIn return I cried a sea\nOf poet's tears and something more\nI camped outside her velvet doors\n\nLove's a freak and it moves fast\nMy marble dream it could not last\nNow every time this girl I see\nShe tries to chain me to her tree
+++[Info]\na-side [[Pewter Suitor]]\n===\n\n\nHandsome as life \nHe's our lord and we trust in him \nTo move like the wind \nAs our friend and guardian. \n\nThe elements and oceans congregate on his brow \nAnd he stalks in style like a royal crocodile. \n\nHis chariot legs \nAre tree green and autumn brown \nHis crown of dusk is a glimpse of things to be. \n\nIn palaces and temples near the dwellings of man \nIf he can he'll smile 'cos he's a Royal Crocodile
Weilder of words is steeped within traditional verbs \nAnd curiously a dented top hat \nDiscovered in the moonlit laundromat \nA busted cheroot is smoking on the heel of his boot \nHis opera is torn thru' the haste of operatic oyster \neating evenings of waste\nSleek astrakhan, reclining on a chippendale stand \nSo sad they should be owning a man who's \nThicker than the forestry from where they began\n \nRobard de Font Le Roy\nRobert de Front Le Roy \n
This document is a ~TiddlyWiki from tiddlyspot.com. A ~TiddlyWiki is an electronic notebook that is great for managing todo lists, personal information, and all sorts of things.\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. New users are especially welcome on the [[TiddlyWiki mailing list|http://groups.google.com/group/TiddlyWiki]], which is an excellent place to ask questions and get help.\n\n@@font-weight:bold;font-size:1.3em;color:#444; //Settings// &nbsp;&nbsp;@@Make sure you enter your password here.\n<<tiddler tiddlyspotControls>>\n@@font-weight:bold;font-size:1.3em;color:#444; //Working online// &nbsp;&nbsp;@@ You can edit this ~TiddlyWiki right now, and save your changes using the "save to web" button in the column on the right.\n\n@@font-weight:bold;font-size:1.3em;color:#444; //Working offline// &nbsp;&nbsp;@@ A fully functioning copy of this ~TiddlyWiki can be saved onto your hard drive or USB stick. You can make changes and save them locally without being connected to the Internet. When you're ready to sync up again, just click "upload" and your ~TiddlyWiki will be saved back to tiddlyspot.com.\n\n@@font-weight:bold;font-size:1.3em;color:#444; //Enjoy!// &nbsp;&nbsp;@@ We hope you like using your tiddlyspot.com site. Please email [[feedback@tiddlyspot.com|mailto:feedback@tiddlyspot.com]] with any comments.
Her with moon trodden plow \nHerds of African cows \nGrazed on her beauty \nFragrant and pale\n\nYoung once youthful still now \nMuse to the willow and ploughed\nFields arched with orchids \nBlooms of the stars\n\nDay whipped his black dray \nOpaque orphan of Ring \nMyrrh coated rider \nGuider husband to Matron the King\n\nStreams of yellowy mud \nRun to the one that I love\nChained to the cha \nChalice of night.
Her with moon trodden plow \nHerds of African cows \nGrazed on her beauty \nFragrant and pale. \nYoung once youthful still now \nMuse to the willow and ploughed \nFields arched with orchards \nBlooms of the stars\n\nDay whipped his black dray \nOpaque orphan of Ring \nMyrrh coated rider \nGuider husband to Matron the King \nStreams of yellowy mud \nRun to the one that I love \nChained to the chalky \nChalice of night
There's a man on the corner \nGot his head in his hat \nHe dances like a gypsy \nSo he must be where it's at\nDo the rock \ndo the woodland rock \nLet it all hang out\nEverybody shout\nDo the rock do the woodland rock\n\nThe wind is the thing \nThat makes the body swing \nIt brings you up and takes you down \nAnd treats you like a king\nDo the rock \nDo the woodland rock \nLet it all hang out\nEverybody shout\nDo the rock do the woodland rock. \n\nMet a little mamma \nShe was sweet, she was gone \nShe's got legs like a railroad \nFace like a song \nDo the rock do the woodland rock \n \nWind is in the willows \nMy house is up a tree \nThe seas of change are flowing \nI want everybody free \nTo do the rock - do the woodland rock \nLet it all hang out\nEverybody shout\nDo the rock - do the woodland rock. \n\nAlly bally bash bam \nRock-a-billy boom \nDo the rock \nDo the woodland rock \nLet it all hang out, \nEverybody shout \nDo the rock - do the woodland rock
You got the power.\nYou got the power.\nYou got the power, the power to mend,\nMy, my, my, my mind.\nYou got the power, the power to look and seek and\nFi-fi-fi-fi-find.\n\nThings that've been lost in the mist of kisses.\nTeddy bears with broken faces.\nLegless horses with distorted bad time nightmare faces.\n\nI wanna tell you now,\nYou got the power.\nYou got the power.\nYou got the power, the power to mend,\nMy, my, my, my mind.\nYou got the power, the power to look and seek and\nFi-fi-fi-fi-find.\n\nThngs that've been lost in the mist of kisses.\nTeddy bears with broken faces.\nLegless horses with distorted bad time nightmare faces.\n\nYou got the power.\nYou got the power.\n\n
[img[http://static.flickr.com/58/219203110_30e03df15b_m.jpg]]\nSimon Napier Bell cash-in? Tracks similar to those on [[The Beginning Of Doves (Album)]]\n\n[[You Scare Me To Death (With Your Horrible Breath)]]\n[[You Got The Power]]\n[[Eastern Spell]]\n[[Charlie]]\n[[I'm Weird]]\n[[Hippy Gumbo]]\n[[Mustang Ford]]\n[[Observations]]\n[[Jasmine 49]]\n[[Cat Black]]\n[[Black & White Incident]]\n[[The Perfumed Garden Of Gulliver Smith]]\n\n
Na ha ha ha da da do do da da da da da\nNa ha ha ha da da do do da da da da da\nNa ha ha ha da da do do da da da da da\nI say, I like your money and I like your car\nPapa da da da da da...\n\nAnd if he thinks like you, even like it pa\nPapa da da da da da...\n\nI say your skinny little legs don't bother me so\nDa da di di da da...\nHa ha ha hah...\n\nBut you scare me to death with your horrible breath\nYou're gonna scare me to death with your horrible breath\nYou're gonna scare me to death with your horrible breath\nDa da da da da da na na na...\nDa da da da da da na na na...\n\nI say, I like your money and I like your show\nPapa da da da da da...\n\nAnd your big fat legs gonna make me say no\nPapa da da da da da...\n\nI said, the other things you got gonna make love grow\nDa da di di da da...\n\nAnd you scare me to death with your horrible breath\nYou're gonna scare me to death with your horrible breath\nYou're gonna scare me to death with your horrible breath\nHa, ha, ha, ha...\n\nDa da di da da di, da da di da da di\nMama ma ma ma mama...\nNa na na na...\n\nI say, I like your money and I like your car\nPapa da da da da da...\n\nAnd if he thinks like you, even like your pa\nPapa da da da da da...\n\nAnd you scare me to death with your horrible breath\nYou're gonna scare me to death with your horrible breath\nYou're gonna scare me to death with your horrible breath\nHa, ha, ha, ha...\n\nI say, I like your money and I like your car
You gotta jive jive to stay alive\nYou gotta jive jive to stay alive\n\nI'm a silver stud, I ain't no stick in the mud\nAnd everything I do I do for you\n\nYou gotta jive jive to stay alive\nYou gotta jive jive to stay alive\n \nSpanish Midnight\nSpanish Midnight all I want to do is love you tonight\nSpanish Midnight all I want to do is love you tonight
/***\n|''Name:''|YourSearchPlugin|\n|''Version:''|2.0.2 (2006-02-13)|\n|''Source:''|http://tiddlywiki.abego-software.de/#YourSearchPlugin|\n|''Author:''|UdoBorkowski (ub [at] abego-software [dot] de)|\n|''Licence:''|[[BSD open source license]]|\n|''TiddlyWiki:''|2.0|\n|''Browser:''|Firefox 1.0.4+; Firefox 1.5; InternetExplorer 6.0|\n<<tiddler [[YourSearch Introduction]]>>\nFor more information see [[Help|YourSearch Help]].\n\n!Compatibility\nThis plugin requires TiddlyWiki 2.0. \nUse http://tiddlywiki.abego-software.de/#YourSearchPlugin-1.0.1 for older TiddlyWiki versions.\n\n!Revision history\n* v2.0.2 (2006-02-13)\n** Bugfix for Firefox 1.5.0.1 related to the "Show prefix" checkbox. Thanks to Ted Pavlic for reporting and to BramChen for fixing. \n** Internal\n*** Make "JSLint" conform\n* v2.0.1 (2006-02-05)\n** Support "Exact Word Match" (use '=' to prefix word)\n** Support default filter settings (when no filter flags are given in search term)\n** Rework on the "less than 3 chars search text" feature (thanks to EricShulman)\n** Better support SinglePageMode when doing "Open all tiddlers" (thanks to EricShulman)\n** Support Firefox 1.5.0.1\n** Bug: Fixed a hilite bug in "classic search mode" (thanks to EricShulman)\n* v2.0.0 (2006-01-16)\n** Add User Interface\n* v1.0.1 (2006-01-06)\n** Support TiddlyWiki 2.0\n* v1.0.0 (2005-12-28)\n** initial version\n!Code\nThe code is compressed. \n\nYou can retrieve a readable source code version from http://tiddlywiki.abego-software.de/#YourSearchPlugin-src.\n/%\n***/\nif(!version.extensions.YourSearchPlugin){version.extensions.YourSearchPlugin={major:2,minor:0,revision:2,date:new Date(2006,2,13),type:"plugin",source:"http://tiddlywiki.abego-software.de/#YourSearchPlugin"};var alertAndThrow=function(_1){alert(_1);throw _1;};if(!window.abego){window.abego={};}if(abego.YourSearch){alertAndThrow("abego.YourSearch already defined");}abego.YourSearch={};if(version.major<2){alertAndThrow("YourSearchPlugin requires TiddlyWiki 2.0 or newer.\sn\snGet YourSearch 1.0.1 to use YourSearch with older versions of TiddlyWiki.\sn\snhttp://tiddlywiki.abego-software.de/#YourSearchPlugin-1.0.1");}var STQ=function(_2,_3,_4,_5){this.queryText=_2;this.caseSensitive=_3;if(_5){this.regExp=new RegExp(_2,_3?"mg":"img");return;}this.terms=[];var re=/\ss*(\s-)?([#%!=]*)(?:(?:("(?:(?:\s\s")|[^"])*")|(\sS+)))(?:\ss+((?:[aA][nN][dD])|(?:[oO][rR]))(?!\sS))?/mg;var _7=re.exec(_2);while(_7!=null&&_7.length==6){var _8="-"==_7[1];var _9=_7[2];var _a=_9.indexOf("!")>=0;var _b=_9.indexOf("%")>=0;var _c=_9.indexOf("#")>=0;var _d=_9.indexOf("=")>=0;if(!_a&&!_b&&!_c){_a=config.options.chkSearchInTitle;_b=config.options.chkSearchInText;_c=config.options.chkSearchInTags;if(!_a&&!_b&&!_c){_a=_b=_c=true;}}if(_4){_b=false;_c=false;}var _e;if(_7[3]){try{_e=eval(_7[3]);}catch(ex){}}else{_e=_7[4];}if(!_e){throw "Invalid search expression: %0".format([_2]);}var _f=_7[5]&&_7[5].charAt(0).toLowerCase()=="o";this.terms.push(new STQ.Term(_e,_a,_b,_c,_8,_f,_3,_d));_7=re.exec(_2);}};var me=STQ.prototype;me.getMatchingTiddlers=function(_10){var _11=[];for(var i in _10){var t=_10[i];if((t instanceof Tiddler)&&this.matchesTiddler(t)){_11.push(t);}}return _11;};me.matchesTiddler=function(_14){if(this.regExp){return this.regExp.test(_14.title)||this.regExp.test(_14.text);}var n=this.terms.length;if(n==0){return false;}var _16=this.terms[0].matchesTiddler(_14);for(var i=1;i<this.terms.length;i++){if(this.terms[i-1].orFollows){if(!_16){_16|=this.terms[i].matchesTiddler(_14);}}else{if(_16){_16&=this.terms[i].matchesTiddler(_14);}}}return _16;};me.getOnlyMatchTitleQuery=function(){if(!this.onlyMatchTitleQuery){this.onlyMatchTitleQuery=new STQ(this.queryText,this.caseSensitive,true,this.useRegExp);}return this.onlyMatchTitleQuery;};me.getMarkRegExp=function(){if(this.regExp){return "".search(this.regExp)>=0?null:this.regExp;}var _18={};var n=this.terms.length;for(var i=0;i<this.terms.length;i++){var _1b=this.terms[i];if(!_1b.negate){_18[_1b.text]=true;}}var _1c=[];for(var t in _18){_1c.push("("+t.escapeRegExp()+")");}if(_1c.length==0){return null;}var _1e=_1c.join("|");return new RegExp(_1e,this.caseSensitive?"mg":"img");};me.toString=function(){if(this.regExp){return this.regExp.toString();}var _1f="";for(var i=0;i<this.terms.length;i++){_1f+=this.terms[i].toString();}return _1f;};STQ.Term=function(_21,_22,_23,_24,_25,_26,_27,_28){this.text=_21;this.inTitle=_22;this.inText=_23;this.inTag=_24;this.negate=_25;this.orFollows=_26;this.caseSensitive=_27;this.wordMatch=_28;var _29=_21.escapeRegExp();if(this.wordMatch){_29="\s\sb"+_29+"\s\sb";}this.regExp=new RegExp(_29,"m"+(_27?"":"i"));};STQ.Term.prototype.toString=function(){return (this.negate?"-":"")+(this.inTitle?"!":"")+(this.inText?"%":"")+(this.inTag?"#":"")+(this.wordMatch?"=":"")+"\s""+this.text+"\s""+(this.orFollows?" OR ":" AND ");};STQ.Term.prototype.matchesTiddler=function(_2a){if(!_2a){return false;}if(this.inTitle&&this.regExp.test(_2a.title)){return !this.negate;}if(this.inText&&this.regExp.test(_2a.text)){return !this.negate;}if(this.inTag){var _2b=_2a.tags;if(_2b){for(var i=0;i<_2b.length;i++){if(this.regExp.test(_2b[i])){return !this.negate;}}}}return this.negate;};var stringToInt=function(s,_2e){if(!s){return _2e;}var n=parseInt(s);return (n==NaN)?_2e:n;};var getIntAttribute=function(_30,_31,_32){return stringToInt(_30.getAttribute(_31));};var isDescendantOrSelf=function(_33,e){while(e!=null){if(_33==e){return true;}e=e.parentNode;}return false;};var getMatchCount=function(s,re){var m=s.match(re);return m?m.length:0;};var createEllipsis=function(_38){var e=createTiddlyElement(_38,"span");e.innerHTML="&hellip;";};var isWordChar=function(c){return (c>="a"&&c<="z")||(c>="A"&&c<="Z")||c=="_";};var getWordBounds=function(s,_3c){if(!isWordChar(s[_3c])){return null;}for(var i=_3c-1;i>=0&&isWordChar(s[i]);i--){}var _3e=i+1;var n=s.length;for(i=_3c+1;i<n&&isWordChar(s[i]);i++){}return {start:_3e,end:i};};var removeTextDecoration=function(s){var _41=["''","{{{","}}}","//","<<<","/***","***/"];var _42="";for(var i=0;i<_41.length;i++){if(i!=0){_42+="|";}_42+="("+_41[i].escapeRegExp()+")";}return s.replace(new RegExp(_42,"mg"),"").trim();};var logText="";var lastLogTime=null;var logMessage=function(_44,s){var now=new Date();var _47=lastLogTime?(now-lastLogTime).toString():"";logText+="<tr><td>"+now.convertToYYYYMMDDHHMMSSMMM()+"</td><td align='right'>"+_47+"</td><td>"+_44+"</td><td>"+s.htmlEncode()+"</td></tr>\sn";lastLogTime=now;};function writeLog(){var t=" <<JsDoIt 'WriteLog' 'WriteLog' 'javascript:writeLog();story.closeTiddler(\s"Log\s");story.displayTiddler(null,\s"Log\s");'>>"+"<html><table><tbody><tr><th>Time</th><th>Delta (ms)</th><th>Kind</th><th>Message</th></tr>\sn"+logText+"</tbody></table></html>";store.saveTiddler("Log","Log",t,config.options.txtUserName,new Date(),["System","Log"]);logText="";lastLogTime=null;}var yourSearchResultID="yourSearchResult";var yourSearchResultItemsID="yourSearchResultItems";var maxCharsInTitle=80;var maxCharsInTags=50;var maxCharsInText=250;var maxPagesInNaviBar=10;var itemsPerPageDefault=25;var itemsPerPageWithPreviewDefault=10;var minMatchWithContextSize=40;var maxMovementForWordCorrection=4;var matchInTitleWeight=4;var precisionInTitleWeight=10;var matchInTagsWeight=2;var resultElement;var lastResults;var lastQuery;var lastSearchText;var searchInputField;var searchButton;var firstIndexOnPage=0;var currentTiddler;var indexInPage;var indexInResult;var getItemsPerPage=function(){var n=(config.options.chkPreviewText)?stringToInt(config.options.txtItemsPerPageWithPreview,itemsPerPageWithPreviewDefault):stringToInt(config.options.txtItemsPerPage,itemsPerPageDefault);return (n>0)?n:1;};var standardRankFunction=function(_4a,_4b){var _4c=_4b.getMarkRegExp();if(!_4c){return 1;}var _4d=_4a.title.match(_4c);var _4e=_4d?_4d.length:0;var _4f=getMatchCount(_4a.getTags(),_4c);var _50=_4d?_4d.join("").length:0;var _51=_4a.title.length>0?_50/_4a.title.length:0;var _52=_4e*matchInTitleWeight+_4f*matchInTagsWeight+_51*precisionInTitleWeight+1;return _52;};var findMatches=function(_53,_54,_55,_56,_57,_58){lastSearchText=_54;var _59=_53.reverseLookup("tags",_58,false);var _5a=new STQ(_54,_55,false,_56);lastQuery=_5a;var _5b=_5a.getMatchingTiddlers(_59);var _5c=abego.YourSearch.getRankFunction();for(var i=0;i<_5b.length;i++){var _5e=_5b[i];var _5f=_5c(_5e,_5a);_5e.searchRank=_5f;}if(!_57){_57="title";}var _60=function(a,b){var _63=a.searchRank-b.searchRank;if(_63==0){if(a[_57]==b[_57]){return (0);}else{return (a[_57]<b[_57])?-1:+1;}}else{return (_63>0)?-1:+1;}};_5b.sort(_60);lastResults=_5b;return _5b;};var moveToWordBorder=function(s,_65,_66){var _67;if(_66){_67=getWordBounds(s,_65);}else{if(_65<=0){return _65;}_67=getWordBounds(s,_65-1);}if(!_67){return _65;}if(_66){if(_67.start>=_65-maxMovementForWordCorrection){return _67.start;}if(_67.end<=_65+maxMovementForWordCorrection){return _67.end;}}else{if(_67.end<=_65+maxMovementForWordCorrection){return _67.end;}if(_67.start>=_65-maxMovementForWordCorrection){return _67.start;}}return _65;};var getContextRangeAround=function(s,_69,_6a,_6b,_6c){var _6d=Math.max(Math.floor(_6c/(_6b+1)),minMatchWithContextSize);var _6e=Math.max(_6d-(_6a-_69),0);var _6f=Math.min(Math.floor(_6a+_6e/3),s.length);var _70=Math.max(_6f-_6d,0);_70=moveToWordBorder(s,_70,true);_6f=moveToWordBorder(s,_6f,false);return {start:_70,end:_6f};};var getTextAndMatchArray=function(s,_72){var _73=[];if(_72){var _74=0;var n=s.length;var _76=0;do{_72.lastIndex=_74;var _77=_72.exec(s);if(_77){if(_74<_77.index){var t=s.substring(_74,_77.index);_73.push({text:t});}_73.push({text:_77[0],isMatch:true});_74=_77.index+_77[0].length;}else{_73.push({text:s.substr(_74)});break;}}while(true);}else{_73.push({text:s});}return _73;};var simpleCreateLimitedTextWithMarks=function(_79,s,_7b){if(!lastQuery){return;}var _7c=getTextAndMatchArray(s,lastQuery.getMarkRegExp());var _7d=0;for(var i=0;i<_7c.length&&_7d<_7b;i++){var t=_7c[i];var _80=t.text;if(t.isMatch){createTiddlyElement(_79,"span",null,"marked",_80);}else{var _81=_7b-_7d;if(_81<_80.length){_80=_80.substring(0,_81)+"...";}createTiddlyText(_79,_80);}_7d+=_80.length;}};var addRange=function(_82,_83,_84){var n=_82.length;if(n==0){_82.push({start:_83,end:_84});return;}var i=0;for(;i<n;i++){var _87=_82[i];if(_87.start<=_84&&_83<=_87.end){var r;var _89=i+1;for(;_89<n;_89++){r=_82[_89];if(r.start>_84||_83>_87.end){break;}}var _8a=_83;var _8b=_84;for(var j=i;j<_89;j++){r=_82[j];_8a=Math.min(_8a,r.start);_8b=Math.max(_8b,r.end);}_82.splice(i,_89-i,{start:_8a,end:_8b});return;}if(_87.start>_84){break;}}_82.splice(i,0,{start:_83,end:_84});};var getTotalRangesSize=function(_8d){var _8e=0;for(var i=0;i<_8d.length;i++){var _90=_8d[i];_8e+=_90.end-_90.start;}return _8e;};var writeTextAndMatchRange=function(_91,s,_93,_94,_95){var t;var _97;var pos=0;var i=0;var _9a=0;for(;i<_93.length;i++){t=_93[i];_97=t.text;if(_94<pos+_97.length){_9a=_94-pos;break;}pos+=_97.length;}var _9b=_95-_94;for(;i<_93.length&&_9b>0;i++){t=_93[i];_97=t.text.substr(_9a);_9a=0;if(_97.length>_9b){_97=_97.substr(0,_9b);}if(t.isMatch){createTiddlyElement(_91,"span",null,"marked",_97);}else{createTiddlyText(_91,_97);}_9b-=_97.length;}if(_95<s.length){createEllipsis(_91);}};var getMatchedTextCount=function(_9c){var _9d=0;for(var i=0;i<_9c.length;i++){if(_9c[i].isMatch){_9d++;}}return _9d;};var getMatchedTextWithContextRanges=function(_9f,s,_a1){var _a2=[];var _a3=getMatchedTextCount(_9f);var pos=0;for(var i=0;i<_9f.length;i++){var t=_9f[i];var _a7=t.text;if(t.isMatch){var _a8=getContextRangeAround(s,pos,pos+_a7.length,_a3,_a1);addRange(_a2,_a8.start,_a8.end);}pos+=_a7.length;}return _a2;};var fillUpRanges=function(s,_aa,_ab){var _ac=_ab-getTotalRangesSize(_aa);while(_ac>0){if(_aa.length==0){addRange(_aa,0,moveToWordBorder(s,_ab,false));return;}else{var _ad=_aa[0];var _ae;var _af;if(_ad.start==0){_ae=_ad.end;if(_aa.length>1){_af=_aa[1].start;}else{addRange(_aa,_ae,moveToWordBorder(s,_ae+_ac,false));return;}}else{_ae=0;_af=_ad.start;}var _b0=Math.min(_af,_ae+_ac);addRange(_aa,_ae,_b0);_ac-=(_b0-_ae);}}};var writeRanges=function(_b1,s,_b3,_b4,_b5){if(_b4.length==0){return;}if(_b4[0].start>0){createEllipsis(_b1);}var _b6=_b5;for(var i=0;i<_b4.length&&_b6>0;i++){var _b8=_b4[i];var len=Math.min(_b8.end-_b8.start,_b6);writeTextAndMatchRange(_b1,s,_b3,_b8.start,_b8.start+len);_b6-=len;}};var createLimitedTextWithMarksAndContext=function(_ba,s,_bc){if(!lastQuery){return;}if(s.length<_bc){_bc=s.length;}var _bd=getTextAndMatchArray(s,lastQuery.getMarkRegExp());var _be=getMatchedTextWithContextRanges(_bd,s,_bc);fillUpRanges(s,_be,_bc);writeRanges(_ba,s,_bd,_be,_bc);};var createLimitedTextWithMarks=function(_bf,s,_c1){return createLimitedTextWithMarksAndContext(_bf,s,_c1);};var myStorySearch=function(_c2,_c3,_c4){highlightHack=new RegExp(_c4?_c2:_c2.escapeRegExp(),_c3?"mg":"img");var _c5=findMatches(store,_c2,_c3,_c4,"title","excludeSearch");firstIndexOnPage=0;showResult();highlightHack=null;};var myMacroSearchHandler=function(_c6,_c7,_c8){var _c9="";var _ca=null;var _cb=function(txt){if(config.options.chkUseYourSearch){myStorySearch(txt.value,config.options.chkCaseSensitiveSearch,config.options.chkRegExpSearch);}else{story.search(txt.value,config.options.chkCaseSensitiveSearch,config.options.chkRegExpSearch);}_c9=txt.value;};var _cd=function(e){_cb(searchInputField);return false;};var _cf=function(e){if(!e){var e=window.event;}switch(e.keyCode){case 13:_cb(this);break;case 27:if(isResultOpen()){closeResult();}else{this.value="";clearMessage();}break;}if(String.fromCharCode(e.keyCode)==this.accessKey||e.altKey){reopenResultIfApplicable();}if(this.value.length<3&&_ca){clearTimeout(_ca);}if((this.value.length>2)&&(this.value!=_c9)){if(!config.options.chkUseYourSearch||config.options.chkSearchAsYouType){if(_ca){clearTimeout(_ca);}var txt=this;_ca=setTimeout(function(){_cb(txt);},500);}}if(this.value.length==0){closeResult();}};var _d3=function(e){this.select();reopenResultIfApplicable();};var btn=createTiddlyButton(_c6,this.label,this.prompt,_cd);var txt=createTiddlyElement(_c6,"input",null,null,null);if(_c8[0]){txt.value=_c8[0];}txt.onkeyup=_cf;txt.onfocus=_d3;txt.setAttribute("size",this.sizeTextbox);txt.setAttribute("accessKey",this.accessKey);txt.setAttribute("autocomplete","off");if(config.browser.isSafari){txt.setAttribute("type","search");txt.setAttribute("results","5");}else{txt.setAttribute("type","text");}searchInputField=txt;searchButton=btn;};var isResultOpen=function(){return resultElement!=null&&resultElement.parentNode==document.body;};var closeResult=function(){if(isResultOpen()){document.body.removeChild(resultElement);}};var openAllFoundTiddlers=function(){closeResult();if(lastResults){var _d7=[];for(var i=0;i<lastResults.length;i++){_d7.push(lastResults[i].title);}story.displayTiddlers(null,_d7);}};var refreshResult=function(){if(!resultElement||!searchInputField){return;}var _d9=store.getTiddlerText("YourSearchResultTemplate");if(!_d9){_d9="<b>Tiddler YourSearchResultTemplate not found</b>";}resultElement.innerHTML=_d9;firstIndexOnPage=Math.floor(firstIndexOnPage/getItemsPerPage())*getItemsPerPage();applyHtmlMacros(resultElement,null);refreshElements(resultElement,null);if(lastResults&&lastResults.length>0){var _da=store.getTiddlerText("YourSearchItemTemplate");if(!_da){alertAndThrow("YourSearchItemTemplate not found");}var _db=document.getElementById(yourSearchResultItemsID);if(!_db){_db=createTiddlyElement(resultElement,"div",yourSearchResultItemsID);}var _dc=Math.min(firstIndexOnPage+getItemsPerPage(),lastResults.length);indexInPage=-1;for(var i=firstIndexOnPage;i<_dc;i++){currentTiddler=lastResults[i];indexInPage++;indexInResult=i;var _de=createTiddlyElement(_db,"div",null,"yourSearchItem");_de.innerHTML=_da;applyHtmlMacros(_de,null);refreshElements(_de,null);}}currentTiddler=null;ensureResultIsDisplayedNicely();};var ensureResultIsDisplayedNicely=function(){adjustResultPositionAndSize();scrollVisible();};var scrollVisible=function(){if(resultElement){window.scrollTo(0,ensureVisible(resultElement));}if(searchInputField){window.scrollTo(0,ensureVisible(searchInputField));}};var adjustResultPositionAndSize=function(){if(!searchInputField){return;}var _df=searchInputField;var _e0=findPosX(_df);var _e1=findPosY(_df);var _e2=_df.offsetHeight;var _e3=_e0;var _e4=_e1+_e2;var _e5=findWindowWidth();if(_e5<resultElement.offsetWidth){resultElement.style.width=(_e5-100)+"px";_e5=findWindowWidth();}var _e6=resultElement.offsetWidth;if(_e3+_e6>_e5){_e3=_e5-_e6-30;}if(_e3<0){_e3=0;}resultElement.style.left=_e3+"px";resultElement.style.top=_e4+"px";resultElement.style.display="block";};var showResult=function(){if(!resultElement){resultElement=createTiddlyElement(document.body,"div",yourSearchResultID,"yourSearchResult");}else{if(resultElement.parentNode!=document.body){document.body.appendChild(resultElement);}}refreshResult();};var reopenResultIfApplicable=function(){if(searchInputField==null||!config.options.chkUseYourSearch){return;}if((searchInputField.value==lastSearchText)&&lastSearchText&&!isResultOpen()){if(resultElement&&(resultElement.parentNode!=document.body)){document.body.appendChild(resultElement);ensureResultIsDisplayedNicely();}else{showResult();}}};var setFirstIndexOnPage=function(_e7){if(!lastResults||lastResults.length==0){return;}firstIndexOnPage=Math.min(Math.max(0,_e7),lastResults.length-1);refreshResult();};var onDocumentClick=function(e){if(e.target==searchInputField){return;}if(e.target==searchButton){return;}if(resultElement&&isDescendantOrSelf(resultElement,e.target)){return;}closeResult();};var onDocumentKeyup=function(e){if(e.keyCode==27){closeResult();}};addEvent(document,"click",onDocumentClick);addEvent(document,"keyup",onDocumentKeyup);config.macros.yourSearch={label:"yourSearch",prompt:"Gives access to the current/last YourSearch result",funcs:{},tests:{"true":function(){return true;},"false":function(){return false;},"found":function(){return lastResults&&lastResults.length>0;},"previewText":function(){return config.options.chkPreviewText;}}};config.macros.yourSearch.handler=function(_ea,_eb,_ec,_ed,_ee,_ef){if(_ec.length==0){return;}var _f0=_ec[0];var _f1=config.macros.yourSearch.funcs[_f0];if(_f1){_f1(_ea,_eb,_ec,_ed,_ee,_ef);}};config.macros.yourSearch.funcs.itemRange=function(_f2){if(lastResults){var _f3=Math.min(firstIndexOnPage+getItemsPerPage(),lastResults.length);var s="%0 - %1".format([firstIndexOnPage+1,_f3]);createTiddlyText(_f2,s);}};config.macros.yourSearch.funcs.count=function(_f5){if(lastSearchText){createTiddlyText(_f5,lastResults.length.toString());}};config.macros.yourSearch.funcs.query=function(_f6){if(lastResults){createTiddlyText(_f6,lastSearchText);}};config.macros.yourSearch.funcs.version=function(_f7){var t="YourSearch %0.%1.%2".format([version.extensions.YourSearchPlugin.major,version.extensions.YourSearchPlugin.minor,version.extensions.YourSearchPlugin.revision]);var e=createTiddlyElement(_f7,"a");e.setAttribute("href","http://tiddlywiki.abego-software.de/#YourSearchPlugin");e.innerHTML="<font color=\s"black\s" face=\s"Arial, Helvetica, sans-serif\s">"+t+"<font>";};config.macros.yourSearch.funcs.copyright=function(_fa){var e=createTiddlyElement(_fa,"a");e.setAttribute("href","http://tiddlywiki.abego-software.de");e.innerHTML="<font color=\s"black\s" face=\s"Arial, Helvetica, sans-serif\s">&copy; 2005-2006 <b><font color=\s"red\s">abego</font></b> Software<font>";};config.macros.yourSearch.funcs.linkButton=function(_fc,_fd,_fe,_ff,_100,_101){if(_fe<2){return;}var _102=_fe[1];var text=_fe<3?_102:_fe[2];var _104=_fe<4?text:_fe[3];var _105=_fe<5?null:_fe[4];var btn=createTiddlyButton(_fc,text,_104,closeResultAndDisplayTiddler,null,null,_105);btn.setAttribute("tiddlyLink",_102);};config.macros.yourSearch.funcs.closeButton=function(_107,_108,_109,_10a,_10b,_10c){var _10d=createTiddlyButton(_107,"close","Close the Search Results (Shortcut: ESC)",closeResult);};config.macros.yourSearch.funcs.openAllButton=function(_10e,_10f,_110,_111,_112,_113){if(!lastResults){return;}var n=lastResults.length;if(n==0){return;}var _115=n==1?"open tiddler":"open all %0 tiddlers".format([n]);var _116=createTiddlyButton(_10e,_115,"Open all found tiddlers (Shortcut: Alt-O)",openAllFoundTiddlers);_116.setAttribute("accessKey","O");};var onNaviButtonClick=function(e){if(!e){var e=window.event;}var _119=getIntAttribute(this,"page");setFirstIndexOnPage(_119*getItemsPerPage(),0);};config.macros.yourSearch.funcs.naviBar=function(_11a,_11b,_11c,_11d,_11e,_11f){if(!lastResults||lastResults.length==0){return;}var _120;var _121=Math.floor(firstIndexOnPage/getItemsPerPage());var _122=Math.floor((lastResults.length-1)/getItemsPerPage());if(_121>0){_120=createTiddlyButton(_11a,"Previous","Go to previous page (Shortcut: Alt-'<')",onNaviButtonClick,"prev");_120.setAttribute("page",(_121-1).toString());_120.setAttribute("accessKey","<");}for(var i=-maxPagesInNaviBar;i<maxPagesInNaviBar;i++){var _124=_121+i;if(_124<0){continue;}if(_124>_122){break;}var _125=(i+_121+1).toString();var _126=_124==_121?"currentPage":"otherPage";_120=createTiddlyButton(_11a,_125,"Go to page %0".format([_125]),onNaviButtonClick,_126);_120.setAttribute("page",(_124).toString());}if(_121<_122){_120=createTiddlyButton(_11a,"Next","Go to next page (Shortcut: Alt-'>')",onNaviButtonClick,"next");_120.setAttribute("page",(_121+1).toString());_120.setAttribute("accessKey",">");}};config.macros.yourSearch.funcs["if"]=function(_127,_128,_129,_12a,_12b,_12c){if(_129.length<2){return;}var _12d=_129[1];var _12e=(_12d=="not");if(_12e){if(_129.length<3){return;}_12d=_129[2];}var test=config.macros.yourSearch.tests[_12d];var _130=false;try{if(test){_130=test(_127,_128,_129,_12a,_12b,_12c)!=_12e;}else{_130=(!eval(_12d))==_12e;}}catch(ex){}if(!_130){_127.style.display="none";}};var createOptionWithRefresh=function(_131,_132,_133,_134){invokeMacro(_131,"option",_132,_133,_134);var elem=_131.lastChild;var _136=elem.onclick;elem.onclick=function(e){var _138=_136.apply(this,arguments);refreshResult();return _138;};return elem;};config.macros.yourSearch.funcs.chkPreviewText=function(_139,_13a,_13b,_13c,_13d,_13e){var _13f=_13b.slice(1).join(" ");var elem=createOptionWithRefresh(_139,"chkPreviewText",_13c,_13e);elem.setAttribute("accessKey","P");elem.title="Show text preview of found tiddlers (Shortcut: Alt-P)";return elem;};config.macros.foundTiddler={label:"foundTiddler",prompt:"Provides information on the tiddler currently processed on the YourSearch result page",funcs:{}};config.macros.foundTiddler.handler=function(_141,_142,_143,_144,_145,_146){if(!currentTiddler){return;}var name=_143[0];var func=config.macros.foundTiddler.funcs[name];if(func){func(_141,_142,_143,_144,_145,_146);}};var closeResultAndDisplayTiddler=function(e){closeResult();var _14a=this.getAttribute("tiddlyLink");if(_14a){var _14b=this.getAttribute("withHilite");var _14c=highlightHack;if(_14b&&_14b=="true"&&lastQuery){highlightHack=lastQuery.getMarkRegExp();}story.displayTiddler(this,_14a);highlightHack=_14c;}return (false);};var getShortCutNumber=function(){if(!currentTiddler){return -1;}if(indexInPage>=0&&indexInPage<=9){return indexInPage<9?(indexInPage+1):0;}else{return -1;}};config.macros.foundTiddler.funcs.title=function(_14d,_14e,_14f,_150,_151,_152){if(!currentTiddler){return;}var _153=getShortCutNumber();var _154=_153>=0?"Open tiddler (Shortcut: Alt-%0)".format([_153.toString()]):"Open tiddler";var btn=createTiddlyButton(_14d,null,_154,closeResultAndDisplayTiddler,null);btn.setAttribute("tiddlyLink",currentTiddler.title);btn.setAttribute("withHilite","true");createLimitedTextWithMarks(btn,currentTiddler.title,maxCharsInTitle);if(_153>=0){btn.setAttribute("accessKey",_153.toString());}};config.macros.foundTiddler.funcs.tags=function(_156,_157,_158,_159,_15a,_15b){if(!currentTiddler){return;}createLimitedTextWithMarks(_156,currentTiddler.getTags(),maxCharsInTags);};config.macros.foundTiddler.funcs.text=function(_15c,_15d,_15e,_15f,_160,_161){if(!currentTiddler){return;}createLimitedTextWithMarks(_15c,removeTextDecoration(currentTiddler.text),maxCharsInText);};config.macros.foundTiddler.funcs.number=function(_162,_163,_164,_165,_166,_167){var _168=getShortCutNumber();if(_168>=0){var text="%0)".format([_168.toString()]);createTiddlyElement(_162,"span",null,"shortcutNumber",text);}};function scrollToAnchor(name){return false;}if(config.options.chkUseYourSearch==undefined){config.options.chkUseYourSearch=true;}if(config.options.chkPreviewText==undefined){config.options.chkPreviewText=true;}if(config.options.chkSearchAsYouType==undefined){config.options.chkSearchAsYouType=true;}if(config.options.chkSearchInTitle==undefined){config.options.chkSearchInTitle=true;}if(config.options.chkSearchInText==undefined){config.options.chkSearchInText=true;}if(config.options.chkSearchInTags==undefined){config.options.chkSearchInTags=true;}if(config.options.txtItemsPerPage==undefined){config.options.txtItemsPerPage=itemsPerPageDefault;}if(config.options.txtItemsPerPageWithPreview==undefined){config.options.txtItemsPerPageWithPreview=itemsPerPageWithPreviewDefault;}config.shadowTiddlers.AdvancedOptions+="\sn<<option chkUseYourSearch>> Use 'Your Search' //([[more options|YourSearch Options]])//";config.shadowTiddlers["YourSearch Introduction"]="!About YourSearch\sn"+"\sn"+"YourSearch gives you a bunch of new features to simplify and speed up your daily searches in TiddlyWiki. It seamlessly integrates into the standard TiddlyWiki search: just start typing into the 'search' field and explore!\sn"+"\sn"+"''May the '~Alt-F' be with you.''\sn"+"\sn"+"\sn"+"!Features\sn"+"* YourSearch searches for tiddlers that match your query ''as you type'' into the 'search' field. It presents a list of the ''\s"Top Ten\s"'' tiddlers in a ''popup-like window'': the ''[[YourSearch Result]]''. The tiddlers currently displayed in your TiddlyWiki are not affected.\sn"+"* Using ''~TiddlerRank technology'' the [[YourSearch Result]] lists the ''most interesting tiddlers first''.\sn"+"* Through ''Filtered Search'' and ''Boolean Search'' you can easily refining your search, like excluding words or searching for multiple words. This way less tiddlers are displayed in the [[YourSearch Result]] and you can faster scan the result for the tiddler you are looking for.\sn"+"* The [[YourSearch Result]] lists the found tiddlers ''page-wise'', e.g. 10 per page. Use the ''Result Page Navigation Bar'' to navigate between pages if the result does not fit on one page.\sn"+"* The [[YourSearch Result]] states the ''total number of found tiddlers''. This way you can quickly decide if you want to browse the result list or if you want to refine your search first to shorten the result list.\sn"+"* Beside the ''title of the found tiddlers'' the [[YourSearch Result]] also ''displays tags'' and ''tiddler text previews''. The ''tiddler text preview'' is an extract of the tiddler's content, showing the most interesting parts related to your query (e.g. the texts around the words you are looking for).\sn"+"* The words you are looking for are hilited in the titles, tags and text previews of the [[YourSearch Result]].\sn"+"* If you are not interested in the tiddler text previews but prefer to get longer lists of tiddlers on one result page you may ''switch of the text preview''.\sn"+"* If the [[YourSearch Result]] contains the tiddler you are looking for you can just ''click its title to display'' it in your TiddlyWiki. Alternatively you may also ''open all found tiddlers'' at once. \sn"+"* Use [[YourSearch Options]] to customize YourSearch to your needs. E.g. depending on the size of your screen you may change the number of tiddlers displayed in the [[YourSearch Result]]. In the [[YourSearch Options]] and the AdvancedOptions you may also switch off YourSearch in case you temporarily want to use the standard search.\sn"+"* For the most frequently actions ''access keys'' are defined so you can perform your search without using the mouse.\sn"+"\sn";config.shadowTiddlers["YourSearch Help"]="<<tiddler [[YourSearch Introduction]]>>"+"\sn"+"!Filtered Search<html><a name='Filtered'/></html>\sn"+"Using the Filtered Search you can restrict your search to certain parts of a tiddler, e.g only search the tags or only the titles.\sn"+"|!What you want|!What you type|!Example|\sn"+"|Search ''titles only''|start word with ''!''|{{{!jonny}}}|\sn"+"|Search ''contents only''|start word with ''%''|{{{%football}}}|\sn"+"|Search ''tags only''|start word with ''#''|{{{#Plugin}}}|\sn"+"\sn"+"You may use more than one filter for a word. E.g. {{{!#Plugin}}} finds tiddlers containing \s"Plugin\s" either in the title or in the tags (but does not look for \s"Plugin\s" in the content).\sn"+"\sn"+"!Boolean Search<html><a name='Boolean'/></html>\sn"+"The Boolean Search is useful when searching for multiple words.\sn"+"|!What you want|!What you type|!Example|\sn"+"|''All words'' must exist|List of words|{{{jonny jeremy}}}|\sn"+"|''At least one word'' must exist|Separate words by ''or''|{{{jonny or jeremy}}}|\sn"+"|A word ''must not exist''|Start word with ''-''|{{{-jonny}}}|\sn"+"\sn"+"''Note:'' When you specify two words, separated with a space, YourSearch finds all tiddlers that contain both words, but not necessarily next to each other. If you want to find a sequence of word, e.g. '{{{John Brown}}}', you need to put the words into quotes. I.e. you type: {{{\s"john brown\s"}}}.\sn"+"\sn"+"!'Exact Word' Search<html><a name='Exact'/></html>\sn"+"By default a search result all matches that 'contain' the searched text. \sn"+" E.g. if you search for 'Task' you will get all tiddlers containing 'Task', but also 'CompletedTask', 'TaskForce' etc.\sn"+"\sn"+"If you only want to get the tiddlers that contain 'exactly the word' you need to prefix it with a '='. E.g. typing '=Task' will the tiddlers that contain the word 'Task', ignoring words that just contain 'Task' as a substring.\sn"+"\sn"+"!Combined Search<html><a name='Combined'/></html>\sn"+"You are free to combine the various search options. \sn"+"\sn"+"''Examples''\sn"+"|!What you type|!Result|\sn"+"|{{{!jonny !jeremy -%football}}}| all tiddlers with both {{{jonny}}} and {{{jeremy}}} in its titles, but no {{{football}}} in content.|\sn"+"|{{{#=Task}}}|All tiddlers tagged with 'Task' (the exact word). Tags named 'CompletedTask', 'TaskForce' etc. are not considered.|\sn"+"\sn"+"!~CaseSensitiveSearch and ~RegExpSearch<html><a name='Case'/></html>\sn"+"The standard search options ~CaseSensitiveSearch and ~RegExpSearch are fully supported by YourSearch. However when ''~RegExpSearch'' is on Filtered and Boolean Search are disabled.\sn"+"\sn"+"!Access Keys<html><a name='Access'/></html>\sn"+"You are encouraged to use the access keys (also called \s"shortcut\s" keys) for the most frequently used operations. For quick reference these shortcuts are also mentioned in the tooltip for the various buttons etc.\sn"+"\sn"+"|!Key|!Operation|\sn"+"|{{{Alt-F}}}|''The most important keystroke'': It moves the cursor to the search input field so you can directly start typing your query. Pressing {{{Alt-F}}} will also display the previous search result. This way you can quickly display multiple tiddlers using \s"Press {{{Alt-F}}}. Select tiddler.\s" sequences.|\sn"+"|{{{ESC}}}|Closes the [[YourSearch Result]]. When the [[YourSearch Result]] is already closed and the cursor is in the search input field the field's content is cleared so you start a new query.|\sn"+"|{{{Alt-1}}}, {{{Alt-2}}},... |Pressing these keys opens the first, second etc. tiddler from the result list.|\sn"+"|{{{Alt-O}}}|Opens all found tiddlers.|\sn"+"|{{{Alt-P}}}|Toggles the 'Preview Text' mode.|\sn"+"|{{{Alt-'<'}}}, {{{Alt-'>'}}}|Displays the previous or next page in the [[YourSearch Result]].|\sn"+"|{{{Return}}}|When you have turned off the 'as you type' search mode pressing the {{{Return}}} key actually starts the search (as does pressing the 'search' button).|\sn"+"\sn";config.shadowTiddlers["YourSearch Options"]="|>|!YourSearch Options|\sn"+"|>|<<option chkUseYourSearch>> Use 'Your Search'|\sn"+"|!|<<option chkPreviewText>> Show Text Preview|\sn"+"|!|<<option chkSearchAsYouType>> 'Search As You Type' Mode (No RETURN required to start search)|\sn"+"|!|Default Search Filter:<<option chkSearchInTitle>>Titles ('!') <<option chkSearchInText>>Texts ('%') <<option chkSearchInTags>>Tags ('#') <html><br><font size=\s"-2\s">The parts of a tiddlers that are searched when you don't explicitly specify a filter in the search text (using a '!', '%' or '#' prefix).</font></html>|\sn"+"|!|Number of items on search result page: <<option txtItemsPerPage>>|\sn"+"|!|Number of items on search result page with preview text: <<option txtItemsPerPageWithPreview>>|\sn";config.shadowTiddlers["YourSearchStyleSheet"]="/***\sn"+"!~YourSearchResult Stylesheet\sn"+"***/\sn"+"/*{{{*/\sn"+".yourSearchResult {\sn"+"\stposition: absolute;\sn"+"\stwidth: 800px;\sn"+"\sn"+"\stpadding: 0.2em;\sn"+"\stlist-style: none;\sn"+"\stmargin: 0;\sn"+"\sn"+"\stbackground: White;\sn"+"\stborder: 1px solid DarkGray;\sn"+"}\sn"+"\sn"+"/*}}}*/\sn"+"/***\sn"+"!!Summary Section\sn"+"***/\sn"+"/*{{{*/\sn"+".yourSearchResult .summary {\sn"+"\stborder-bottom-width: thin;\sn"+"\stborder-bottom-style: solid;\sn"+"\stborder-bottom-color: #999999;\sn"+"\stpadding-bottom: 4px;\sn"+"}\sn"+"\sn"+".yourSearchRange, .yourSearchCount, .yourSearchQuery {\sn"+"\stfont-weight: bold;\sn"+"}\sn"+"\sn"+".yourSearchResult .summary .button {\sn"+"\stfont-size: 10px;\sn"+"\sn"+"\stpadding-left: 0.3em;\sn"+"\stpadding-right: 0.3em;\sn"+"}\sn"+"\sn"+".yourSearchResult .summary .chkBoxLabel {\sn"+"\stfont-size: 10px;\sn"+"\sn"+"\stpadding-right: 0.3em;\sn"+"}\sn"+"\sn"+"/*}}}*/\sn"+"/***\sn"+"!!Items Area\sn"+"***/\sn"+"/*{{{*/\sn"+".yourSearchResult .marked {\sn"+"\stbackground: none;\sn"+"\stfont-weight: bold;\sn"+"}\sn"+"\sn"+".yourSearchItem {\sn"+"\stmargin-top: 2px;\sn"+"}\sn"+"\sn"+".yourSearchNumber {\sn"+"\stcolor: #808080;\sn"+"}\sn"+"\sn"+"\sn"+".yourSearchTags {\sn"+"\stcolor: #008000;\sn"+"}\sn"+"\sn"+".yourSearchText {\sn"+"\stcolor: #808080;\sn"+"\stmargin-bottom: 6px;\sn"+"}\sn"+"\sn"+"/*}}}*/\sn"+"/***\sn"+"!!Footer\sn"+"***/\sn"+"/*{{{*/\sn"+".yourSearchFooter {\sn"+"\stmargin-top: 8px;\sn"+"\stborder-top-width: thin;\sn"+"\stborder-top-style: solid;\sn"+"\stborder-top-color: #999999;\sn"+"}\sn"+"\sn"+".yourSearchFooter a:hover{\sn"+"\stbackground: none;\sn"+"\stcolor: none;\sn"+"}\sn"+"/*}}}*/\sn"+"/***\sn"+"!!Navigation Bar\sn"+"***/\sn"+"/*{{{*/\sn"+".yourSearchNaviBar a {\sn"+"\stfont-size: 16px;\sn"+"\stmargin-left: 4px;\sn"+"\stmargin-right: 4px;\sn"+"\stcolor: black;\sn"+"\sttext-decoration: underline;\sn"+"}\sn"+"\sn"+".yourSearchNaviBar a:hover {\sn"+"\stbackground-color: none;\sn"+"}\sn"+"\sn"+".yourSearchNaviBar .prev {\sn"+"\stfont-weight: bold;\sn"+"\stcolor: blue;\sn"+"}\sn"+"\sn"+".yourSearchNaviBar .currentPage {\sn"+"\stcolor: #FF0000;\sn"+"\stfont-weight: bold;\sn"+"\sttext-decoration: none;\sn"+"}\sn"+"\sn"+".yourSearchNaviBar .next {\sn"+"\stfont-weight: bold;\sn"+"\stcolor: blue;\sn"+"}\sn"+"/*}}}*/\sn";config.shadowTiddlers["YourSearchResultTemplate"]="<!--\sn"+"{{{\sn"+"-->\sn"+"<span macro=\s"yourSearch if found\s">\sn"+"<!-- The Summary Header ============================================ -->\sn"+"<table class=\s"summary\s" border=\s"0\s" width=\s"100%\s" cellspacing=\s"0\s" cellpadding=\s"0\s"><tbody>\sn"+" <tr>\sn"+"\st<td align=\s"left\s">\sn"+"\st\stYourSearch Result <span class=\s"yourSearchRange\s" macro=\s"yourSearch itemRange\s"></span>\sn"+"\st\st&nbsp;of&nbsp;<span class=\s"yourSearchCount\s" macro=\s"yourSearch count\s"></span>\sn"+"\st\stfor&nbsp;<span class=\s"yourSearchQuery\s" macro=\s"yourSearch query\s"></span>\sn"+"\st</td>\sn"+"\st<td class=\s"yourSearchButtons\s" align=\s"right\s">\sn"+"\st\st<span macro=\s"yourSearch chkPreviewText\s"></span><span class=\s"chkBoxLabel\s">preview text</span>\sn"+"\st\st<span macro=\s"yourSearch openAllButton\s"></span>\sn"+"\st\st<span macro=\s"yourSearch linkButton 'YourSearch Options' options 'Configure YourSearch'\s"></span>\sn"+"\st\st<span macro=\s"yourSearch linkButton 'YourSearch Help' help 'Get help how to use YourSearch'\s"></span>\sn"+"\st\st<span macro=\s"yourSearch closeButton\s"></span>\sn"+"\st</td>\sn"+" </tr>\sn"+"</tbody></table>\sn"+"\sn"+"<!-- The List of Found Tiddlers ============================================ -->\sn"+"<div id=\s"yourSearchResultItems\s" itemsPerPage=\s"25\s" itemsPerPageWithPreview=\s"10\s"></div>\sn"+"\sn"+"<!-- The Footer (with the Navigation) ============================================ -->\sn"+"<table class=\s"yourSearchFooter\s" border=\s"0\s" width=\s"100%\s" cellspacing=\s"0\s" cellpadding=\s"0\s"><tbody>\sn"+" <tr>\sn"+"\st<td align=\s"left\s">\sn"+"\st\stResult page: <span class=\s"yourSearchNaviBar\s" macro=\s"yourSearch naviBar\s"></span>\sn"+"\st</td>\sn"+"\st<td align=\s"right\s"><span macro=\s"yourSearch version\s"></span>, <span macro=\s"yourSearch copyright\s"></span>\sn"+"\st</td>\sn"+" </tr>\sn"+"</tbody></table>\sn"+"<!-- end of the 'tiddlers found' case =========================================== -->\sn"+"</span>\sn"+"\sn"+"\sn"+"<!-- The \s"No tiddlers found\s" case =========================================== -->\sn"+"<span macro=\s"yourSearch if not found\s">\sn"+"<table class=\s"summary\s" border=\s"0\s" width=\s"100%\s" cellspacing=\s"0\s" cellpadding=\s"0\s"><tbody>\sn"+" <tr>\sn"+"\st<td align=\s"left\s">\sn"+"\st\stYourSearch Result: No tiddlers found for <span class=\s"yourSearchQuery\s" macro=\s"yourSearch query\s"></span>.\sn"+"\st</td>\sn"+"\st<td class=\s"yourSearchButtons\s" align=\s"right\s">\sn"+"\st\st<span macro=\s"yourSearch linkButton 'YourSearch Options' options 'Configure YourSearch'\s"></span>\sn"+"\st\st<span macro=\s"yourSearch linkButton 'YourSearch Help' help 'Get help how to use YourSearch'\s"></span>\sn"+"\st\st<span macro=\s"yourSearch closeButton\s"></span>\sn"+"\st</td>\sn"+" </tr>\sn"+"</tbody></table>\sn"+"</span>\sn"+"\sn"+"\sn"+"<!--\sn"+"}}}\sn"+"-->\sn";config.shadowTiddlers["YourSearchItemTemplate"]="<!--\sn"+"{{{\sn"+"-->\sn"+"<span class='yourSearchNumber' macro='foundTiddler number'></span>\sn"+"<span class='yourSearchTitle' macro='foundTiddler title'/></span>&nbsp;-&nbsp;\sn"+"<span class='yourSearchTags' macro='foundTiddler tags'/></span>\sn"+"<span macro=\s"yourSearch if previewText\s"><div class='yourSearchText' macro='foundTiddler text'/></div></span>\sn"+"<!--\sn"+"}}}\sn"+"-->";config.shadowTiddlers["YourSearch"]="<<tiddler [[YourSearch Help]]>>";config.shadowTiddlers["YourSearch Result"]="The popup-like window displaying the result of a YourSearch query.";setStylesheet(store.getTiddlerText("YourSearchStyleSheet"),"yourSearch");var origMacros_search_handler=config.macros.search.handler;config.macros.search.handler=myMacroSearchHandler;var ownsOverwrittenFunctions=function(){var _16b=(config.macros.search.handler==myMacroSearchHandler);return _16b;};var checkForOtherHijacker=function(){if(!ownsOverwrittenFunctions()){alert("Message from YourSearchPlugin:\sn\sn\sn"+"Another plugin has disabled the 'Your Search' features.\sn\sn\sn"+"You may disable the other plugin or change the load order of \sn"+"the plugins (by changing the names of the tiddlers)\sn"+"to enable the 'Your Search' features.");}};setTimeout(checkForOtherHijacker,5000);abego.YourSearch.getStandardRankFunction=function(){return standardRankFunction;};abego.YourSearch.getRankFunction=function(){return abego.YourSearch.getStandardRankFunction();};abego.YourSearch.getCurrentTiddler=function(){return currentTiddler;};}\n/***\n%/\n!Licence and Copyright\nCopyright (c) abego Software ~GmbH, 2005-2006 ([[www.abego-software.de|http://www.abego-software.de]])\n\nRedistribution and use in source and binary forms, with or without modification,\nare permitted provided that the following conditions are met:\n\nRedistributions of source code must retain the above copyright notice, this\nlist of conditions and the following disclaimer.\n\nRedistributions in binary form must reproduce the above copyright notice, this\nlist of conditions and the following disclaimer in the documentation and/or other\nmaterials provided with the distribution.\n\nNeither the name of abego Software nor the names of its contributors may be\nused to endorse or promote products derived from this software without specific\nprior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY\nEXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES\nOF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT\nSHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,\nINCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED\nTO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR\nBUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\nCONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN\nANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH\nDAMAGE.\n***/\n\n
[img[http://static.flickr.com/63/217711221_f31462b814_m.jpg]]
+++[Info]\nb-side [[Space Boss]]\n===\n\n\nHave you ever seen anyone do the low slung boogie\nOh no oh no\nHave you ever seen anyone do the low slung boogie\nOh no oh no\n\nThe zip gun boogie's comin' down to get ya' people\nThe zip gun boogie's is comin' on strong\nZip gun boogie's comin' to get you people\nThe zip gun boogie's is comin' on strong\n\nHave you ever seen anyone do the back street boogie\nOh no oh no\nHave you ever seen anyone do the back street boogie\nOh no oh no\n\nHave you ever seen anyone do the zip gun boogie\nOh no oh no\nHave you ever seen anyone do the zip gun boogie\nOh no\n\nWell the zip gun boogie's comin' on strong\nZip gun boogie's comin' on strong
[[Band0]]\n[[Band1]]\n[[Band2]]\n[[Band3]]\n[[Band4]]\n[[Band5]]\n[[Band6]]\n[[Band7]]\n[[Band8]]\n[[Band9]]
| tiddlyspot password:|<<option pasUploadPassword>>|\n| site management:|<<upload http://videodrama.tiddlyspot.com/store.cgi index.html . . videodrama>>//(requires tiddlyspot password)//<<br>>[[control panel|http://videodrama.tiddlyspot.com/controlpanel.cgi]], [[download (go offline)|http://tiddlyspot.com/download/videodrama]]|\n| links:|[[tiddlyspot.com|http://tiddlyspot.com/]], [[FAQs|http://tiddlyspot.com/faq/]], [[announcements|http://tiddlyspot.com/announce/]], [[blog|http://tiddlyspot.com/blog/]], [[email feedback|mailto:feedback@tiddlyspot.com]], [[donate|http://tiddlyspot.com/?page=donate]]|
\n''For whatever reasons, these need more work...''\n\n\n