The New York Times > Books > Sunday Book Review > 'Though the Heavens May Fall' and 'Bury the Chains'\n\nBy MARILYNNE ROBINSON\nTHOUGH THE HEAVENS MAY FALL\nThe Landmark Trial That Led to the End of Human Slavery.\nBy Steven M. Wise.\nIllustrated. 282 pp. Da Capo Press. $25.\nBURY THE CHAINS\nProphets and Rebels in the Fight to Free an Empire's Slaves.\nBy Adam Hochschild.\nIllustrated. 468 pp. Houghton Mifflin Company. $26.95.\nThe air of England is too pure for a slave to breathe in.'' This phrase, with slight variations, recurs through long years in the rhetoric of movements to abolish first African slavery within England, then the Atlantic traffic in African people that England dominated for more than a century and then the institution of slavery in the British Empire, whose populations included hundreds of thousands of slaves. It is an axiom traditionally believed to have been invoked in 1772, in principle if not verbatim, by Lord Mansfield, the judge in Somerset v. Steuart, which Steven M. Wise in ''Though the Heavens May Fall'' calls the ''trial that led to the end of human slavery.'' Somerset was an African who accompanied Steuart, his owner, to England. He escaped, was recaptured and sued successfully for his freedom.\nBoth Wise and Adam Hochschild celebrate this trial and the events and personalities that brought it about. No doubt they should. It is a melancholy fact, however, that the phenomenon of African slavery loomed as it did over the Atlantic world because, from the reign of Elizabeth I to the reign of George III, England assumed that the air of its colonies, or of any other colony ready to buy, was impure enough to accommodate slavery very nicely.\nWise, the president of the Center for the Expansion of Fundamental Rights, traces with reverent care how the question of the legality of slavery developed within England, culminating in this famous trial. The hero of his narrative is Granville Sharp, a minor government clerk who educated himself in the law in the course of defending the rights of Africans brought into England as slaves. He devoted himself and his slender resources to this work over decades with the object of finally putting an end to slavery itself. The trial, which is said to have abolished slavery within England by legal precedent, was centered on the question of Steuart's right to sell Somerset into the West Indies. Lord Mansfield ruled in favor of Somerset on the grounds that slavery ''is so odious that nothing can be suffered to support it but positive law.'' There being no such law in England, ''the black must be discharged.'' This decision freed an estimated 15,000 Africans then held as slaves in England.\nWise follows Sharp and the lawyers sympathetic to him through a series of trials in which they attempt to obtain rulings to vindicate the argument that English law does not countenance slavery. He has an eye for evocative detail and an interest in the trappings and procedures of an 18th-century courtroom that do as much to engage the reader as the drama of the trials themselves. And he has a good lawyer's love of those moments in which the true poetry of humane justice finds its voice. More insight into the actual operations of the law would have been useful -- some discussion, for example, of the yawning gulf between the principle of the right to trial and the fact that in early-19th-century England, an average felony trial lasted less than nine minutes, sometimes ending so quickly that the accused did not know he had been tried. In practice, common law seems only a little too supple to be called a rope of sand. Yet Wise assumes, more or less, that by means of it England pulled itself out of the abyss of slavery and pulled America and the world after it.\nIn this instance, though the purport of the Mansfield judgment was taken to be that ''as soon as any slave sets foot on English ground, he becomes free,'' the emancipated black population fell into a wretchedness so extreme as to justify their expulsion to -- such paradoxes are endless -- the region of Sierra Leone that was also the center of the British slave trade and from which Africans were shipped into the West Indies. Their destitution was exploited and exacerbated by none other than Granville Sharp, who ''distributed handbills asking London's gentlemen to cease dispensing charity to poor blacks in order to nudge them toward Africa.'' This coercion was apparently not at odds with the high view of English liberty with which he had swayed public and judicial opinion. Sharp, Wise says, ''believed wild tales of how mild and fertile'' Sierra Leone was -- surely a remarkable feat of credulity, given England's long experience with the place. In any case, in 1787 several hundred former slaves sailed to Sierra Leone ''with dozens of white prostitutes whom the English authorities, anxious to rid themselves of as many undesirables as possible, black and white, had married to the settlers while the women were drunk'' -- if true, a further light on English liberty. The population of the colony promptly fell by two-thirds largely because of famine and disease.\nThis is not to give away the end of the story, which for Wise is in fact the triumph of law and the beginning of the abolition of human slavery. He acknowledges anomalies like this one in a late chapter but, he concludes, ''Somerset's chief legacy'' was that human slavery ''was so odious the common law would never support it.'' And he continues: ''Mansfield's proved just the opening salvo in a legal barrage that, within a century, splintered all of human slavery's bulwarks.'' That century brought the world to 1872, when colonialism was at its height and its depredations were only accelerating. Colonialism disrupted and destroyed far more African lives than did slavery. Indeed, the distinction between the two seems no more than convenient.\nYet the Atlantic slave trade was an enormity stunning in its scale and its duration. In ''Bury the Chains,'' Adam Hochschild says: ''So rapidly were slaves worked to death, above all on the brutal sugar plantations of the Caribbean, that between 1660 and 1807, ships brought well over three times as many Africans across the ocean to British colonies as they did Europeans. And, of course, it was not just to British territories that slaves were sent. From Senegal to Virginia, Sierra Leone to Charleston, the Niger delta to Cuba, Angola to Brazil, and on dozens upon dozens of crisscrossing paths taken by thousands of vessels, the Atlantic was a vast conveyor belt to early death in the fields of an immense swath of plantations that stretched from Baltimore to Rio de Janeiro and beyond.'' The subject of this interesting and valuable book is the tiny cadre of reformers that undertook to arouse public feeling against this great abuse. Hochschild says: ''For 50 years, activists in England worked to end slavery in the British Empire. None of them gained a penny by doing so, and their eventual success meant a huge loss to the imperial economy.'' Vast, entrenched and profitable as the slave trade was, how did they manage to bring it to an end?\nThat they did end it is assumed by Hochschild rather than proved by him. It seems a little odd in a historian to use the improbability of a movement's success as grounds for heightened admiration, rather than for heightened attention to other contributing factors. Given that the whole infernal enterprise was sustained by the immense wealth it generated, one might, without cynicism, look to the economic considerations in play. When the British outlawed the exportation of Africans to the colonies for sale in 1807, they had had almost 20 years' notice that the Americans intended to ban the importation of Africans in 1808. And it was just about this time that Napoleon, cut off by the British Navy from French colonies in the Caribbean, began looking into the domestic cultivation of the sugar beet.\nAnd there were the rebellions in the West Indies, particularly the Haitian rebellion. The sections of the book that deal with them bring to light an astounding, and forgotten, episode in Western history. Since Haiti alone produced as much foreign trade at that time as the whole of the 13 colonies of North America, it was potentially a great loss. It belonged to France, but Britain supplied it with slaves, a valuable trade since the slaves were intentionally worked to death -- it was cheaper to replace them than to sustain them -- so the market for Africans was very brisk. Uprisings had long been frequent in the West Indies, but at long last rage in Haiti converged with the tactical brilliance of Toussaint L'Ouverture and others and the slaves seized the island. This part of the story is familiar. But there is more.\nFirst the British and then the French under Napoleon sent huge forces against the Haitians. The British sent a larger army against Haiti than it had dispatched to fight in the American Revolution. And it buried 60 percent of those soldiers in Haiti. The two greatest powers on earth went up against a population of half-starved, desperate people and were utterly defeated. It is no surprise that these two abysmal wars of empire have fallen out of history. One cannot read about them without concluding that the Haitian Africans contributed mightily to making the Caribbean slave system untenable. All in all, in 1807 the prospects of the traffic in human beings were not good. It is perhaps coincidental that in adopting the abolitionist stance Britain was able to seize the moral high ground and attempt (together with the United States) to suppress the slave trade among its economic rivals. Certainly this posture was gallant enough to make a great part of the world forget that Britain was for so long pre-eminent among the despoilers of Africa.\nHochschild has written eloquently about the importance of this kind of historical forgetting in ''King Leopold's Ghost,'' his account of the policies of the Belgian King Leopold II in the Congo in the early 20th century, which are estimated to have taken 10 million lives. There he writes, ''The world we live in -- its divisions and conflicts, its widening gap between rich and poor, its seemingly inexplicable outbursts of violence -- is shaped far less by what we celebrate and mythologize than by the painful events we try to forget.'' How consistently and with what lethal effect we choose not to be aware.\nNevertheless, Hochschild interprets the success of the British abolitionist movement as a triumph of empathy, a humane response to horrors of which the public only gradually became conscious. His heroes are Thomas Clarkson, William Wilberforce, Granville Sharp and the former slave Olaudah Equiano, among others. These men did indeed work patiently and passionately for emancipation. Certainly it is uplifting to find empathy and law together championing justice, as they do in the narratives of both Hochschild and Wise. The intention of the writers is clearly the honorable one of finding an instance in history in which justice has prevailed and the world has been changed, and of finding as well a model of the kinds of activism by which present enormities are, or might be, addressed. Yet, again to the credit of both writers, these narratives include elements incompatible with this kind of interpretation, indeed consistent with the opposite and very bleak conclusion that movements based on empathy and law, when proceeding from exalted tributes to the essential decency of a population, can flatter indifference or complicity.\nIn fact, the slave trade was at home in a world where the appropriation of lives and the extortion of labor were astonishingly commonplace. Hochschild describes the virtual abductions by which slave ships were manned, and tells how these sailors were subject to flogging and starving, and died in numbers as great as did the abducted Africans they helped to transport. And the British Navy was manned in the same way. None of this was at all exceptional, as it would have to have been if there were indeed a presumption of freedom embedded in English culture, as both books assert. No consensus in support of freedom can be demonstrated. The industrialist Robert Owen, writing in 1813, years after the Mansfield decision, describes the transfer to factories of the children of British paupers by the hundreds, 6-, 7- and 8-year-olds who worked 13 hours a day through seven-year apprenticeships. These little workers died quickly and were replaced by other pauper children. They were not slaves in the strictest sense. The system did resemble Caribbean slavery, however, in that it set a negative value on their well-being.\nThe literature on such practices is immense because they were pervasive and long lived and of interest to many generations of activists. Indeed, if there were not economic motives behind British abolition, then the speed with which that reform came about is miraculous compared with the laggardly pace of reforms affecting the laboring classes who were the great majority of the British population. Owen asks, ''Shall the well-being of the poor, half-naked, half-famished, untaught and untrained . . . not call forth one petition, one delegate, one rational effective legislative measure?'' Just at the time of the emancipation of the British West Indies, a reform bill passed by Parliament created the ''Poor Law Bastilles,'' a system of punitive incarceration for the indigent. Hochschild describes how the Parliament paid the West Indian slaveholders extravagant sums for their emancipated slaves, who then became their oppressed and wretchedly paid employees, driven to frequent rebellion just as the slaves had been. If Britain taught the world by ending actual slavery, it gave the world a second lesson in establishing virtual slavery. As Hochschild remarks in ''King Leopold's Ghost,'' empathy is fickle.\nThe primacy of England in these narratives slights the fact that a consensus against slavery had been building for a generation in New England, and longer in Quaker Philadelphia. The role of England in sustaining slavery in its colonies is demonstrated in the abolition of slavery immediately after the American Revolution, in Vermont in 1777 and in Massachusetts in 1780. The institution of human bondage became truly peculiar to the South only after the Revolution, because it was legal everywhere in the colonies while they were under British law. And years after the emancipation of slaves in the empire, Britain came near intervening in the American Civil War on the side of the slave states. The arguments in Somerset v. Steuart treat the laws of the colonies as alien to England, though members of the royal family were major stockholders in the slave trade, and what is more English than the Church of England, which was a great slaveholder in Jamaica? While every good effect of an important precedent must be welcomed, the fact remains that the claim to an exclusive English purity that is the basis for the legal arguments associated with Steuart v. Somerset was and is a denial of history, a part of the great forgetting.\nMarilynne Robinson teaches at the Iowa Writers' Workshop. Her most recent novel is ''Gilead.''
PageTemplate\n|>|>|SiteTitle - SiteSubtitle|\n|MainMenu and [[MainContents]]|DefaultTiddlers<<br>><<br>><<br>><<br>>ViewTemplate<<br>><<br>>EditTemplate|SideBarOptions|\n|~|~|OptionsPanel|\n|~|~|AdvancedOptions|\n|~|~|<<tiddler Configuration.SideBarTabs>>|\n\n''StyleSheet:'' StyleSheetColors - StyleSheetLayout - StyleSheetPrint\n\nSiteUrl
If you are new to this kind of site, the NavigationHelp is most useful.\n<<forEachTiddler \n where\n'tiddler.tags.contains("*help")'\n sortBy\n 'tiddler.title'\n>>
<<list tagged hot_news>>
Your site visitors won't be interested in seeing every single Tiddler. All they want to see is a list of interesting content in some clear naviagational format.You might want the list to be an A-Z index, or to be soted by some tagging criteria. This is how to do it. \n\n#Install the ForEAchTiddler plugin and macro\nAssuming that your articles are logically tagged, use one of the provided macro formulas to sort and order your Tiddlers.\n!Create a list sorted with the newest article at the top.\n{{{\n<<forEachTiddler \n where\n'tiddler.tags.contains("1publish")'\n sortBy\n 'tiddler.created'\n descending\n>>\n}}}\n##Create a "list of lists", basically a navigation menu that points to your longer lists.\n>Put it in the Main Menu, Side menu, or as a default Tiddler.\n\n{{{\n<<forEachTiddler \n where\n'tiddler.tags.contains("*help")'\n sortBy\n 'tiddler.title'>>\n}}}
http://jokes4all.net/\n!Heaven and Hell\nHeaven:\n\nThe cooks are French,\nThe policemen are English,\nThe mechanics are German,\nThe lovers are Italian,\nThe bankers are Swiss.\n\nIn Hell:\n\nThe cooks are English,\nThe policemen are German,\nThe mechanics are French,\nThe lovers are Swiss,\nThe bankers are Italian.\n!How many economists does it take to screw in a light bulb?\n\nNone. If the light bulb really needed changing, market forces would have already caused it to happen.\n----\nWhat not to say to the nice policeman:\n\nHey, is that a 9mm? That's nothing compared to this .44 magnum!\n----\nA man was wandering around in a field, thinking about how good his wife had been to him and how fortunate he was to have her.\n\nHe asked God, "Why did you make her so kind-hearted?"\nThe Lord responded, "So you could love her, my son."\n"Why did you make her so good-looking?"\n"So you could love her, my son."\n"Why did you make her such a good cook?"\n"So you could love her, my son."\n\nThe man thought about this. Then he said, "I don't mean to seem ungrateful or anything, but ... why did you make her so stupid?"\n\n"So she could love you, my son."\n----\nA man goes into a pet shop to buy a parrot. The shop owner points to three identical looking parrots on a perch and says, "the parrot on the left costs 500 dollars". "Why does the parrot cost so much," asks the man. The shop owner says, "well, the parrot knows how to use a computer".\n\nThe man then asks about the next parrot to be told that this one costs 1,000 dollars because it can do everything the other parrot can do plus it knows how to use the UNIX operating system.\n\nNaturally, the increasingly startled man asks about the third parrot to be told that it costs 2,000 dollars. Needless to say this begs the question, "What can it do?" To which the shop owner replies, "to be honest I have never seen it do a thing, but the other two call him boss!"\n----\nA string walks into a bar with a few friends and orders a beer. The bartender says, "I'm sorry, but we don't serve strings here."\n\nThe string walks away a little upset and sits down with his friends. A few minutes later he goes back to the bar and orders a beer. The bartender, looking a little exasperated, says, "I'm sorry, we don't serve strings here."\n\nSo the string goes back to his table. Then he gets an idea. He ties himself in a loop and messes up the top of his hair. Then he walks back up to the bar and orders a beer.\n\nThe bartender squints at him and says, "Hey, aren't you a string?"\n\nAnd the string says, "Nope, I'm a frayed knot."\n----\n!Modern Marriage\nA couple had been married for many years, and their son had gotten old enough to date. One day the boy brought a girl over to diner. The mother was thrilled with her son's choice and couldn't wait for the wedding. However, the father was upset and, eventually, the boy asked, "Dad, why don't you seem happy with her. Mom likes her a lot."\n\nThe father explained, "No son, there's nothing wrong with the girl. It's just that I cheated on your mother a long time ago, and the girl you've been dating is my daughter by that woman."\n\nSo the boy dumped her and found himself another girl. Again, he brought her home to the mother's delight, but the father again told him this girl was actually his half-sister. The boy lost his temper and told his mother what his father had said.\n\nFurious, the mother shouted, "Don't listen to him, sweetheart! He isn't even your father!"\n----\n\nHow does the man on the moon get his hair cut?\n\nEclipse it!\n\nSource: [[Keith's Home Page - News, entertainment, salsa, politics and shopping|file:///F:/JSAS/http_root/www/wikis/princewiki213/homepage.html]]\n\nString Theory\nA string walks into a bar with a few friends and orders a beer. The bartender says, "I'm sorry, but we don't serve strings here."\n\nThe string walks away a little upset and sits down with his friends. A few minutes later he goes back to the bar and orders a beer. The bartender, looking a little exasperated, says, "I'm sorry, we don't serve strings here."\n\nSo the string goes back to his table. Then he gets an idea. He ties himself in a loop and messes up the top of his hair. Then he walks back up to the bar and orders a beer.\n\nThe bartender squints at him and says, "Hey, aren't you a string?"\n\nAnd the string says, "Nope, I'm a frayed knot."\n----\nWhatโs black and white and red all over?\nA newspaper.\n\nWhat illness do retired pilots get?\nFlu.\n\nWhat does the garden say when it laughs?\nHoe, hoe, hoe.\n----\n
\n''A selection of interesting articles.''\n<<list tagged news_article>>
<<forEachTiddler \n where\n'tiddler.tags.contains("*News")'\n sortBy\n 'tiddler.created'\n descending\n>>\n
!Publish and upload\n[[Web sites and web design|file:///F:/JSAS/http_root/www/wikis/princewiki213/miscellany.html]]\n[[WWW|file:///F:/JSAS/http_root/www/wikis/princewiki213/worldwideweb.html]]\n!Private Use\n[[MonkeyGDT - My Planner|file:///F:/JSAS/http_root/www/wikis/princewiki213/1keithsmonkeygtd.html]]\n[[My notebook- dump file waiting to be sorted|file:///F:/JSAS/http_root/www/wikis/princewiki213/1keithsnotes.html]]\n[[Project files folder|file:///E:/0%20Project%20maps/1inuse/]]\n!Test site\n[[Test site|file:///F:/JSAS/http_root/www/wikis/testmonkeypiratemptwtheme.html]]\n!Handy scripts\n[[Search engines|file:///F:/JSAS/http_root/www/wikis/multibrowsers.html]]
Options used by UploadPlugin\nUsername: <<option txtUploadUserName>>\nPassword: <<option pasUploadPassword>>\n\nUrl of the UploadService script^^(1)^^: <<option txtUploadStoreUrl 50>>\nRelative Directory where to store the file^^(2)^^: <<option txtUploadDir 50>>\nFilename of the uploaded file^^(3)^^: <<option txtUploadFilename 40>>\nDirectory to backup file on webserver^^(4)^^: <<option txtUploadBackupDir>>\n\n^^(1)^^Mandatory either in UploadOptions or in macro parameter\n^^(2)^^If empty stores in the script directory\n^^(3)^^If empty takes the actual filename\n^^(4)^^If empty existing file with same name on webserver will be overwritten\n<<upload>>\n{{{\n<<upload [http://www.healthwealthandmusic.co.uk/wikis/store.php [toFilename [backupDir [uploadDir [thebizn]]]]]>>\n}}}\n\n\n
MptwViewTemplate - rearranged DIVs and added the Tagger script
Options used by UploadPlugin\nUsername: <<option txtUploadUserName>>\nPassword: <<option pasUploadPassword>>\n\nUrl of the UploadService script^^(1)^^: <<option txtUploadStoreUrl 50>>\nRelative Directory where to store the file^^(2)^^: <<option txtUploadDir 50>>\nFilename of the uploaded file^^(3)^^: <<option txtUploadFilename 40>>\nDirectory to backup file on webserver^^(4)^^: <<option txtUploadBackupDir>>\n\n^^(1)^^Mandatory either in UploadOptions or in macro parameter\n^^(2)^^If empty stores in the script directory\n^^(3)^^If empty takes the actual filename\n^^(4)^^If empty existing file with same name on webserver will be overwritten\n<<upload>>\n{{{\n<<upload [http://www.healthwealthandmusic.co.uk/wikis/store.php [toFilename [backupDir [uploadDir [thebizn]]]]]>>\n}}}\n\n\n
Anne Beitel - office at 01962 829705
http://www.guardian.co.uk/gender/story/0,,1795453,00.html#article_continue. Monday June 12, 2006\n\nCaroline Norton fought a brutal husband and a male-only political system to change the divorce laws. As high-profile cases put women's rights in marriage under the spotlight, Natasha Walter looks at the life of a forgotten heroine\n\nYou can hardly open a newspaper these days without finding female commentators saying that the law has become too nice to women by allowing them an equal share of their husbands' wealth after divorce. But 150 years ago, women had no rights at all in the long and convoluted process. Nobody knew that better than a heroic woman called Caroline Norton. She had been ruined by her husband but decided to fight back - and in doing so changed the situation of all women. And they are still reaping the rewards today.\n\nWhen the first secular law on divorce was discussed in parliament in 1856, no women's voices could be heard directly - there were neither women MPs nor lawyers in those days. But an 80-year-old Tory peer, Lord Lyndhurst, pushed decisively for reform by reading out chunks of Caroline Norton's writing on the subject. Her arguments - including the point that even before divorce women deserved a separate legal existence from their husbands - were incorporated into the final Divorce and Matrimonial Causes Act in 1857.\nCaroline Norton was an unlikely radical - a fashionable, sociable, upper-class woman who loved parties and flirting. Indeed, if she hadn't experienced such terrible injustice in her own life, she would never have become a campaigner. She came from a grand but impoverished family - her grandfather was Richard Brinsley Sheridan, the playwright - and jumped into marriage with the first eligible man who sought her out because at 19 she was under pressure from her family to get married before her younger sister.\nThe marriage to George Norton, who was Tory MP for Guildford, was a violent disaster. On one occasion when Caroline was slow in coming to bed, her husband "suddenly sprang from the bed, seized me by the nape of my neck, and dashed me down on the floor. The sound of my fall awakened my sister and brother-in-law, who slept in a room below, and they ran up to my door ... My brother-in-law burst the door open, and carried me downstairs. I had a swelling on my head for days afterwards."\nHe continued to beat her for years and then early one morning in 1836, after a particularly vicious quarrel, Caroline returned to the family home to find that her three little boys - Fletcher, Brinsley and William - were gone. She tracked them down to the house of a friend of her husband's: "When I did find them, he refused to let me even see them, and called in the police! I could hear their little feet running merrily over my head while I sat sobbing below - only the ceiling between us, and I not able to get at them! My merry little Briney! & poor Spencer who had been so ill ... I came away without even being able to kiss them & say goodbye - if they keep my boys from me I shall go mad." George Norton did keep her children from her and pursued her for divorce, accusing her of adultery. Caroline had long been intimate with Lord Melbourne, the then prime minister. For years he had visited her three times a week, choosing afternoons when her husband would not be there. Some sections of the press had a field day. "Though it forever my renown may blot, I'll still stand up dear Caroline for thee, For Oh! How oft (the marriage vows forgot) Hast thou consented to lie down for me," read one verse signed "Melbourne", which was published in the Satirist in 1835.\nNobody knows for sure if they had an affair. In her letters to him, which have survived and are marvellously readable, she says very clearly that they did not have sex, but that they did love each other: "In the sight of Heaven my crime is the same as if I had been your mistress these five years," she wrote to him. After their public shaming, she quotes to him his words to her from the early days of their relationship, "I have been in despair today at not seeing you," and tells him, "Then I came more to please you than to please myself, now it breaks my whole life not seeing you."\nWhatever the reality of their relationship, the case George Norton brought against Lord Melbourne for "criminal conversation", or adultery, with Caroline, was the great scandal of the day. He brought servants to testify that they had seen Caroline's hair tumbled and clothes disarranged after Melbourne's visits.\nAfter the court case Caroline was irrevocably compromised: her husband had lost the case but she hadn't won it - it had been fought between the two men, and she had not had a chance to speak up in court. What is more, she was in legal limbo. She couldn't get a divorce, but as a married woman had no right to her own earnings - her income came from writing poetry, novels and songs - or to see her children. Once she was called suddenly to see her youngest son because he was sick - and when she got there he was dead.\nCaroline was one of the first women to make the personal political. Her first struggle was to get access rights for mothers. Caroline had already made her name as a writer but now she learned how to turn a political and legal argument in a way that would make people listen. She published pamphlets in defence of "the natural claim of a mother to the custody of her children", and used all her charm and influence to persuade influential men to draw up the first child custody law. An MP called Sir Thomas Talfourd pushed through the Infant Custody Bill in 1839, but nobody had any doubt, as Caroline's most recent biographer, Alan Chedzoy, put it, "that the triumph was really Caroline's." It was the first piece of women's rights legislation ever brought before the House of Commons. And by the time the divorce bill was being debated in 1856, Caroline was a seasoned campaigner.\nUntil 1857, divorce was such a convoluted and expensive process that only very powerful men could manage it. Married women simply had no legal rights; even if they were separated from their husbands they did not have the right to make contracts, to sue, or even to keep their own earnings. Throughout the more than 20 years Caroline had been living separated from her husband: "I exist and I suffer, but the law denies my existence." She ends her pamphlet on the subject, A Letter to the Queen, with a wit that makes you smile grimly even today. "My husband has a legal copyright of my works. Let him claim this!"\nWhen the 1857 act, which brought divorce within secular courts for the first time, was passed, it put right some of these wrongs - including the right of separated women to keep their earnings. Yet Caroline never got a divorce; she lived alone but as George Norton's wife until his death in 1875. She then married William Stirling-Maxwell, a sweet and gentle friend of hers who was very different from George, but their happiness ended after only three months when Caroline died, aged 69, in 1877.\nGiven her political successes, it's surprising that Caroline Norton isn't better known, especially among all those women who have benefited from her victories. But she was always anomalous, even in her own time. Other campaigners for women's rights in the mid-19th century were building up a lasting network of hard-working women who would get signatures on petitions and run meetings, and who were making the vital links between all the different aspects of women's oppression, from property law, to education and even suffrage. Norton, meanwhile, was too much of an individualist, both too socially grand and too socially compromised, to be part of their circles. She could be presented to Queen Victoria and have dinner with Tennyson even after her disgrace, but she had to face down respectable wives who cut her dead because they thought she was a fallen woman. Although she had close female friends among women who were too posh or too clever to care what others thought, such as the Duchess of Sutherland or Mary Shelley, most of her alliances were with influential men. What is more, Caroline never argued the doctrine of equal rights, but always said that she believed in men's superiority - a position that helped her to win over the powerful men she needed, but has put feminists off her legacy.\nBut even if she is easy to criticise, she stuck to her guns where other women would not. "Well, I know how many hundreds infinitely better than I, more pious, more patient, and less rash under injury, have watered their bread with tears," she wrote. "My plea to attention is that, in pleading for myself I am able to plead for all these others. For this, I believe, God gave me the power of writing. To this I devote that power. I abjure all other writing, till I see these laws altered." And she saw the laws altered - even though she hardly benefited from her successes. As women flock to the courts to get more equal settlements, they should light a candle to the memory of the woman who first fought for the rights of divorced women.
Read and quote from the texts to support your answers and opinions.\n\nIn pairs discuss and write down 1 paragraph answers to the following questions. Make sure your written answer is good enough to be read out loud.\n\nHow would things be different if abortion were illegal, as in the past?\nWhen is a baby a baby? How can we decide? On what facts?\nIsn't a foetus in the first few weeks similar to frogspawn?\nWhat are the justifications for abortion?\nWhat are the arguments against?\nIs the "limit of viability" still viable in the light of modern science?\nWhy has the rate of abortions risen? Are the reasons justifiable?\nWho should decide to have an abortion, the man or the woman?\nAfter considering the evidence and differing points of view, what are your own opinions?\nShould this be a political issue?\n\n\nDebate Assignment\n\nYou are an MP who has been called to a Constituency Meeting to explain and justify your stand on the Abortion Issue. Your constituency is of mixed ethnic and religious origin - Atheists, Catholics, Muslims and Hindus. Prepare your speech.\n\n\n\n\n\n
Cormac Murphy-O'Connor, leader of six million Catholics, says it ought to be an election issue. Tony Blair disagrees. So should it be?\n16 March 2005\nAbortion: The facts <http://news.independent.co.uk/uk/politics/story.jsp?story=620582> \nThe history\nThe Ancient Greeks and Romans allowed abortions. The early philosophers argued that a foetus did not become formed and begin to live until at least 40 days after conception for a male, and around 80 days for a female.\nFrom the 16th century, the Christian doctrine of passive conception held that the foetus was only given a soul in the fifth month. Then, in 1869, Pope Pius X changed the timing of "ensoulment" to conception.\nIn 1803, the Ellenborough Act made abortion in Britain after the 16- to 20-week period in which life is first felt, an offence that carried the death penalty, though it later became life imprisonment. In 1938, Dr Alex Bourne was acquitted of performing an illegal abortion after claiming that it was to save a raped girl mental harm, setting a case-law precedent. Women wanting to terminate had illegal, backstreet abortions performed by unqualified abortionists. Women were often injured in the process and some died. At least 50 were killed each year from botched surgery and infection.\nThe 1967 Act\nThe private member's Bill introduced by the Liberal MP David Steel ended the scourge of backstreet terminations. Abortion was legalised if two doctors certified that continuing with the pregnancy would involve a risk greater than if it was terminated to the physical or mental health of the woman - or where there was a substantial risk of serious abnormality in the child. In 1969, the first complete year after the Act, there were 54,819 registered abortions. Doctors found abortion in the first few weeks was actually safer than continuing with the pregnancy. They began to interpret the law more liberally, taking increasing account of the mental health of the woman.\nAfter 1967: the science\nAn upper time limit of 28 weeks for abortions was introduced under the 1967 Act. That was derived from the Infant Life Preservation Act of 1929 which had set it as the limit of viability - the age at which a foetus could survive.\nMedical advances have seen the limit of viability fall. Today, neonatal units are equipped to save babies of 24 weeks gestation and below. Survival after birth has continued to improve since 1990.\nIn Britain, 1 per cent of babies born at 22 weeks survive and 11 per cent at 23 weeks. About a quarter survive at 24 weeks. Two-thirds of babies born at 23 weeks and more than a third born at 24 weeks suffer long-term disability.\nAfter 1967: the politics\nFrom the start, the Abortion Act came under sustained attack from opponents who sought to reduce the time limit and repeal the law. In 1990, the Human Fertilisation and Embryology Act introduced controls over techniques developed to help infertile couples and to monitor experiments on embryos. The abortion law was reviewed in the light of the new Act and the time limit for abortions was reduced from 28 to 24 weeks in 1991.\nThe key numbers\nThere were 181,600 legal abortions in England and Wales in 2003, a rise of 5,700 (3.2 per cent) on the year before.\nThe abortion rate for women resident in England and Wales in 2003 was 17.5 per 1,000 women aged 15 to 44. The abortion rate was highest, 31.3 per 1,000, among women aged 20 to 24.\nThe rise in the abortion rate in modern Britain is attributed to issues ranging from women wanting fewer children and wanting them later in life, to the decreasing popularity of marriage and the rise of "career women" who fear that children will hinder their job prospects.\nThe percentage of abortions performed at 20 weeks or later has remained at between 1 per cent and 1.6 per cent for years. Teenagers are more likely to have late abortions, usually because they do not realise they are pregnant.\nWhy cut the time limit?\nThe debate about the 24-week limit began with claims that the foetus showed evidence of consciousness and could feel pain from an early stage in the womb. The survival of babies at 22 and 23 weeks also showed that the limits of viability had fallen.\nThe foetus is sensitive to touch from about seven weeks and soon afterwards can move its limbs. But its movements are spinal reflexes and do not indicate awareness. After 26 weeks, actions become more defined, reflecting improved organisation in the nervous system. The structures necessary for pain to be felt are in place but there remains disagreement over when pain can first be experienced.\nMany doctors and nurses feel uncomfortable performing late abortions and most over 18 weeks are contracted out by the NHS to the private sector.\nMany doctors, MPs, medical ethicists and members of the public support a reduction in the time limit from 24 weeks to 22 or 20 weeks.\nWhy leave the limit?\nMedical organisations say the law is humane, practical and working well. Pro-choice groups warn that any reduction in the time limit would be likely to affect the most vulnerable women - teenagers whose relationships have broken up and women waiting for the results of tests. Screening tests for foetal abnormalities in pregnancy identify women at high risk but they must be followed by diagnostic tests. Women may also have to wait until 20 weeks or more to get confirmatory test results of foetal abnormalities. After receiving the results they need time to consider their options.\nGroups such as the British Pregnancy Advisory Service, the Family Planning Association and Antenatal Results and Choices say reducing the time limit will narrow the options for these women and lead to the birth of more unwanted babies.\nThe political football\nMichael Howard made abortion an election issue by declaring last weekend that the upper limit for legal termination should be reduced from 24 weeks to 20 weeks.\nTony Blair, whose wife is a Roman Catholic, said abortion was a "difficult issue" but said he would not change the law.\nCharles Kennedy said he had voted for the upper time limit to be reduced from 24 weeks to 22 but added that advances in medicine meant that "I don't know what I would do now".\nCardinal Cormac Murphy- O'Connor, the leader of the Roman Catholic Church in England and Wales, hinted that all Catholics should vote Tory but the Prime Minister has said he believes it is a matter for a free vote and conscience on both sides of the House.\nSo will this week's controversy take centre stage as the parties contest the election?
!Search fro a room\nhttp://www.laterooms.com/\n\nhttp://www.yha.org.uk\nhttp://www.travel-library.com\n!Cottages\nhttp://www.cottages.co.uk/\nhttp://www.cottages4you.co.uk/\nhttp://www.countrycottagesonline.net/\n!!North East and Northumbria\nhttp://www.northeastcoastalcottages.co.uk/\nhttp://www.visitnortheastengland.com\n!Business Hotels\nhttp://www.etaphotel.com/gb/home/index.shtml\nhttp://www.premierinn.com/\nhttp://www.travelodge.co.uk/\nhttp://www.accorhotels.com - Ibis\nhttp://www.holidayinn.co.uk/\nhttp://www.novotel.com/gb/\n[[London]]\n
<<option chkGenerateAnRssFeed>> GenerateAnRssFeed\nRssTag: <<option Index>>\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<<option chkInsertTabs>> Use tab key to insert tab characters instead of jumping to next field\n<<option chkTOCIncludeHidden>> include hidden tiddlers in TableOfContents\n<<option chkUseInclude>> Include ~TiddlyWikis (IncludeList | IncludeState | [[help|http://tiddlywiki.abego-software.de/#%5B%5BIncludePlugin%20Documentation%5D%5D]])\n^^(Reload this ~TiddlyWiki to make changes become effective)^^\n<<option chkUseYourSearch>> Use 'Your Search' //([[more options|YourSearch Options]]) ([[help|YourSearch Help]])//
//Remember to click on ''update'' to get the latest news feed.//\n+++[Lifestyles]\n<<rssReader asHtml http://www.healthwealthandmusic.co.uk/rss/2.html>>\n===\n+++[Greenpolitics]\n<<rssReader asHtml http://greenpolitics.healthwealthandmusic.co.uk/rss/2.html>>\n===\n+++[Writers site]\n<<rssReader asHtml http://writers.healthwealthandmusic.co.uk/rss/2.html>>\n===\n+++[Computer notes TiddlyWiki]\n<<rssReader asHtml worldwideweb.xml>>\n===\n+++[Homepage Miscellany TiddlyWiki]\n<<rssReader asHtml homepage.xml>>\n===\n+++[Dokuwiki blog wiki]\n<<rssReader asHtml http://dokuwiki.healthwealthandmusic.co.uk/feed.php?type=rss&linkto=page>>\n===\n+++[Mediawiki Free Wiki]\n<<rssReader asHtml http://mediawiki.healthwealthandmusic.co.uk/index.php?title=Special:Newpages&feed=rss>>\n===
<html>\n<iframe \nsrc ="http://astore.amazon.co.uk/lifestyles-21/026-3868704-0994031?%5Fencoding=UTF8&node=5" width="80%" height="600px">\n</iframe>\n</html>
<html>\n<iframe \nsrc ="http://astore.amazon.co.uk/lifestyles-21" width="80%" height="600px">\n</iframe>\n</html>
//Look closely at the content, theme, mood, language and characters in the poem.//\n\n!!Paragraph 1 - Introduction.\nSay that you will be analysing the poem. Briefly tell the story of this narrative poems. E.g. In the poem โCousin Kateโ, Rossetti describes a cottage maiden who...\n!!Paragraph 2 - โCousin Kateโ\n!!Paragraph 3 - When, why and how?\nSay when and by whom the poem was written. Mention the setting. Explain the themes of the poem. E.g. The main themes within โCousin Kateโ are love and relationships... Look at the different types of love - the cottage maidenโs, Cousin Kateโs and the Lordโs. How is their love described? What is the nature of the relationship? Use quotations and explain any images or imagery. Other ideas that the poems explore are marriage, motherhood, abuse of power/ wealth (poverty), betrayal and female roles. Are there any messages in these poems?\n!!Paragraph 4 - Images and Feelings\nDiscuss the feelings of the cottage maiden. Say that โCousin Kateโ is written in the first person - from the point of view of the cottage maiden. Therefore, it allows her to express a number of feelings. What is the mood of this poem? (Refer to your notes and quotations). Show how feelings are shown by the use of images. E.g The cottage maiden says that she, โmight have been a doveโ if she had not fallen for the advances of the lord. She uses the image of the dove in order to allude to her innocence.\n!!Paragraph 5 - Imagery and Mood\nComment on the use of similes in โCousin Kateโ and say how they create mood. E.g. In โCousin Kateโ the simile: โHe wore me like a silken knotโ links the treatment of the cottage maiden with the treatment of discarded clothing. It shows that she can be โput onโ and โtaken offโ just like a piece of clothing.\n!!Paragraph 6 - The lord\nSay that the poem has a description of the male character. What do we know about him? How is he presented? Use examples and quotations to support your opinions. How does he treat the cottage maiden? E.g. The Lord has power over the woman. In particular, he uses his wealth and charm to seduce the cottage maiden. How does the poet make us dislike the Lord? (Hint - descriptions and actions)\n!Paragraph 7 - The Cottage Maiden\nSay that the poem has a female as the central character. What do we know about her? How is she presented? Use examples and quotations to support your opinions. How does she react to the treatment she receives from the lord? (Hint - she has a number of differing reactions.) How do others treat her? Briefly consider the fate of single parents in the โolden daysโ. Is the cottage maiden a strong or a weak character? (Hint - look at the language she uses.) Do you sympathise with her? Why? Do you respect her? Why? Briefly give your own response to the poem.\n!!Paragraph 8 - Conclusion\nThe conclusion should be a summary of what you have shown in the essay. As a guide, use a couple of sentences to summarise each of the paragraphs in the main body of your essay. E.g. In conclusion, we can see that the poem...\n\nThis Cousin Kate resource sheet by Chantel Mathias was found free at www.englishresources.co.uk
!Arabic Tabbouleh\nabout 2-3 tbsp burghul or ready-prepared couscous\njuice of 2 lemons\n55g each of mint, parsley and coriander leaves, finely chopped, plus more whole leaves to garnish\n2 tomatoes, seeds and pulp discarded and flesh finely diced\n3 spring onions, finely chopped\n3 tbsp olive oil\nsalt\nTo make the tabbouleh, prepare the burghul or couscous by soaking it in the lemon juice. When just tender, mix in all the rest of the ingredients with salt to taste. Garnish with a few whole mint, parsley and coriander leaves. \nChicken and lemon couscous\nIโve done a couple of versions of this lazy, lemon-scented salad over the years and I still think this one is the best. Itโs a texture thing: the warm grains, the chargrilled chicken and the little nibs of preserved lemon really make it sing in the mouth. \nserves 2\ncouscous - 150g\nstock (vegetable stock is fine) - about half a litre\nchicken breasts - 2 large, boned\naubergine - 1 large one\nfresh mint - 20g\ncoriander - 15g\npreserved lemons - 2\nfresh lemon - 1\nspring onions - 4\nPut the couscous in a mixing bowl. Bring the stock to the boil and pour over the couscous. It should cover the grains by a couple of centimetres or so. Leave until the couscous has absorbed the liquid.\nOil and season the chicken and grill it on both sides until it is golden. It should still be tender inside. I like to do this either on a ridged grill pan or over the bars of a grill, but it is good enough cooked under an overhead grill.\nSet the chicken on one side to rest a little. Slice the aubergine thinly and grill it on both sides. Remove from the heat and dress it immediately with olive oil.\nRemove the mint leaves from their stems and chop them roughly, then do the same with the coriander. Fold them into the couscous, along with the juice of the lemon. Cut the preserved lemons in half and remove the pips then chop the flesh into small dice, mix it into the grains together with the slices of grilled aubergine, and a generous grinding of salt and black pepper. Divide the couscous between two large plates. Slice each of the grilled chicken breasts into about five thick pieces then lay on top.
!Robert Scarlett\n<img src="images/RobertScarlettsmall.jpg" style="float:left;padding-right: 5px;">\nI am ten years old and live with my mum, dad and brother. I was diagnosed with autism when I was four, while at nursery school. I am a big fan of Top Gear, the Discovery Channel and The Beano. I play the cello and am working towards my grade one exam. At school, my favourite subjects are science and music. I haven't quite decided what I want to be when I grow up - perhaps a physicist (as I really like science), an engineer, or maybe a gardener.\nI took all the photos myself (apart from one or two, which I had some help with) and it didn't take long. They include pictures of everyday objects like cars, my clarinet, my mum's cooker and best of all, my lava lamp. I would have liked to have taken photos of the park near my Grandma's, too, but instead my dad and I made do with the one near my house which isn't as big but not bad.\nI would have also liked to have taken photos of koalas, as they are my favourite animal, but there aren't many in England!\nI really enjoyed taking photos of everyday items, which I feel people often fake for granted. I realise how fortunate we are to have such items in our lives. I hope that when people see my photos, they too will realise how fortunate they are to have these objects in their life.\n!Michael McGuinness\n<img src="images/michaelmcguinesssmall.jpg" style="float:left;padding-right: 5px;">My name is Michael McGuinness and I am eight years and ten months old. I was diagnosed with autism in October 2002 when I was three years and eight months old.\nI am very good at concentrating on things I like. Sometimes I find the world a noisy and frightening place, but I love forests and nature. I don't understand the rules. Sometimes people don't give me time to answer them and so they ignore me. I can't understand what their faces say. It is hard for me to tell people what I need in the right words at the right time. I always need to know what is happening next. I love my little brother Matthew, who is five. He is my best friend.\nI took pictures of the things I like. I chose the piano because music makes me feel happy and I love playing it. Traffic lights have beautiful colours and I like watching them change. I love using the computer to make animations. I enjoy using the Microsoft paint program and drawing pictures of clocks and traffic lights and my favourite things. I especially like the font Comic Sans MS.\nI also like to build with Lego, and I love my dog, Toby, because I can talk to him and he talks to me. I love direction signs and arrows. I love clocks, digital and ordinary ones. I like numbers. I love to tell the time.\nI loved getting my pictures taken. I had to stand for a long time. Robin was very nice. He had a magic camera.\nObserver Magazine, 28 October 2007.
/%\n|Name|AutoRefresh|\n|Source|http://www.TiddlyTools.com/#AutoRefresh|\n|Version|0.6.0|\n|Author|Eric Shulman - ELS Design Studios|\n|License|http://www.TiddlyTools.com/#LegalStatements <<br>>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|\n|~CoreVersion|2.1|\n|Type|script|\n|Requires|InlineJavascriptPlugin|\n|Overrides||\n|Description|enable/disable auto-refresh of selected content to force/prevent re-rendering when tiddler changes occur|\n\nusage:\n <<tiddler AutoRefresh with: mode id>>\n\nwhere:\n mode - (optional) is one of:\n off (or disable) - prevent refresh of rendered content (except when PageTemplate is changed!)\n on (or enable)- re-render content whenever corresponding tiddler source is changed\n force - re-render content whenever ANY tiddler content is changes (or refreshDisplay() is triggered)\n id - (optional)\n is a unique DOM element identifier on which to operate.\n If not specified, the current tiddler (or containing parent if not in a tiddler) is used.\n\n%/<script>\n var here=story.findContainingTiddler(place);\n if (here) { // in a tiddler, get containing viewer element\n var here=place; while (here && here.className!='viewer') here=here.parentNode;\n if (!here) return; // no 'viewer' element (perhaps a custom template?)\n }\n else here=place.parentNode; // not in a tiddler, use immediate parent container\n\n // if DOM id param, get element by ID instead of using container\n if ("$2"!="$"+"2") var here=document.getElementById("$2");\n\n if (!here) return; // safety check\n\n var mode="$1"; if (mode=="$"+"1") mode="on";\n\n switch (mode.toLowerCase()) {\n case 'on':\n case 'enable':\n case 'force':\n var title=here.getAttribute("tiddler");\n if (!title) { // find source tiddler title\n var tid=story.findContainingTiddler(place);\n if (!tid) return; // can't determine source tiddler\n title=tid.getAttribute("tiddler");\n }\n here.setAttribute("tiddler",title);\n here.setAttribute("refresh","content");\n here.setAttribute("force",(mode=='force')?"true":"");\n break;\n case 'off':\n case 'disable':\n here.setAttribute("refresh","");\n here.setAttribute("force","");\n break;\n }\n</script>
Reuters December 4, 2000\n\nLONDON -- Britain's police and intelligence services are seeking the right to access records of every telephone call, e-mail and Internet connection made in the United Kingdom, the government said Sunday.\nThe country's crime-fighting and intelligence agencies want all such communications to be logged, and the information stored for seven years in vast government-run "data warehouses."\n"They have passed a document to us which we are now looking at, but it has to be stressed that there has been no decision made on this," a Home Office spokeswoman said.\n"We work very closely with these organizations and want to ensure they have the tools they need to tackle serious, organized crime, but there are other important issues, such as human rights, to be considered."\nThe spokeswoman said the powers sought would require new legislation, but "that is a long way off at the moment."\nThe request, from the police, customs and intelligence services, was first reported Sunday by The Observer newspaper, which had seen a copy of the document submitted to the Home Office.\nThe document said new powers were needed to tackle growing problems of cyber crime, pedophiles' use of computers to run child porn rings, terrorism and international drug trafficking, according to The Observer report.\nPoliticians and campaigners cited by the paper as condemning the idea included Conservative peer and privacy expert Lord Cope.\n"We are sympathetic to the need for greater powers to fight modern types of crime," he said.\n"But vast banks of information on every member of the public can quickly slip into the world of Big Brother. I will be asking serious questions about this."\nGo to source: Chicago Tribune | Nation World -- BRITISH POLICE SEEKING ACCESS TO CALLS, E-MAILS
In theory, these onions are a very pleasing side dish to roast beef or pork, but I feel their juicy, herbal qualities deserve more than just a supporting role. We ate them this week as part of a light lunch, with a wedge of blue-veined Stichelton and dark black grapes to follow. Serves 4 as a side dish.\n\n4 large, juicy onions\n\n80g butter\n\nbalsamic vinegar\n\nBring a deep pot of water to the boil and lower the onions, whole and unpeeled, into it. Let them cook at a merry simmer for 20 minutes, then remove with a draining spoon. Set the oven at 200C/gas 6.\n\nCut four squares of kitchen foil or baking parchment large enough to wrap each onion. Place an onion in the centre of each, add a piece of the butter and a few shakes of balsamic vinegar to each, then pull up the sides of the paper around the onion and seal with a scrunch, in the case of foil, or a twist if you have used paper. Either way, seal in the mellow buttery notes until the onions reach the table.\n\nBake for 25 minutes then put an onion on everyone's plate. Let them open the wrapping just before they eat, peeling away the onion skins with a knife and fork and spooning the juices over the golden flesh.
http://www.lottery.co.uk/results/\n\n+++[Bargains and Money Savers]\n|Moneysavingexpert|http://www.moneysavingexpert.com|Good advice, customer reviews|\n|Ebuyer|http://www.ebuyer.com/customer/home/|Great prices, very reliable, customer reviews|\n|Half price perfumes|http://www.halfpriceperfumes.co.uk|plus other goodies|\n|Perfumes|http://a.fragrancescompared.co.uk||\n===\n\n+++[Phonecalls]\n|Find local numbers instead of paying for 0870|http://www.saynoto0870.com/search.php|\n===\n!Perfumes, Cosmetics and Toiletries\nhttp://www.fragrancedirect.co.uk/home.php\nhttp://www.rox-perfumes.co.uk/\n\n
4lb Elderberries\n5 litres (1 gallons) of boiling water\n3 lb of granulated sugar\na 'claret' yeast sachet\n8 oz chopped raisins\nJuice of 1 lemon\nJuice of 1 orange\n1 vitamin B tablet\n1 teaspoon of yeast nutrient\nProcedure:\nStrip the berries from the umbrells into a suitably large primary fermentation vessel with a fork.\nAdd 8 oz chopped raisins, juice of the lemon, juice of the orange, a vitamin B tablet and a teaspoon of yeast nutrient.\nAdd the boiling water and stir well.\nWhen cool enough to handle, squeeze fruit with hands to extract juice.\nLeave for one day to infuse.\nAdd 2 1/2 lb sugar and activated yeast and leave covered for three days.\nStrain off liquid into demijohns, top up with another 1/4 lb of sugar in each and, if necessary, with cooled boiled water.\nLeave to ferment in a warm (65-75 degrees), dark place.\nRack off the lees into a clean demijohn when bubbling has subsided.\nRack again 6 weeks later.\nBottle in dark green bottles when wine is clear (I use a desk lamp to shine through from the other side) and there has been no activity for some time.\nMature for at least 6 months before drinking. \n
*Study the Navigation tips carefully\n*Use the menus\n*Try the Index link for an overview of all the content that is available.\n\nFor any other information, go to my [[WorldWideWeb website|http://www.healthwealthandmusic.co.uk/wikis/worldwideweb.html]] for computer help. \n\nAsk for help via the comments section on the Joomla sites - or email - and I'll do my best to point you to a suitable website. \n\n//Internet resources are now so good, there is always something useful and productive out there. Finding information that is written in Plain English is the problem and that is where I can help you by assessing what I think is the correct level and whether or not the information is correct.//
<html>\n<body>\n<strong><u>Turkey</u></strong><strong><u> </u></strong><br>\n\n <strong>Bodrum</strong><br>\n <img src="images/clip_image001_0001.gif" alt="Bodrum" width="499" height="309" border="0"></p>\n<p><strong>Bodrum</strong> <br>\n In the eyes of its devotees, <strong>BODRUM</strong> - ancient Halicarnassos - with its whitewashed houses and subtropical gardens, is the most attractive Turkish resort, a quality outfit in comparison to its upstart Aegean rivals. And it is a pleasant town in most senses, despite having no real beach, although development has proceeded apace over the last couple of decades. The centrepiece is the <strong>Castle of St Peter</strong> (Tues-Sun 9am-noon & 1-5pm; $7), built by the Knights of St John over a Selçuk fortress between 1437 and 1522. Inside, the various towers house a <strong>Museum of Underwater Archeology</strong>, which includes coin and jewellery rooms, classical and Hellenistic statuary, and Byzantine relics retrieved from two wrecks, alongside a diorama explaining salvage techniques. The <strong>Carian princess hall</strong> ($2.50 extra) displays the skeleton and sarcophagus of a fourth-century BC noblewoman unearthed in 1989. There is also the <strong>Glass Wreck Hall</strong> ($2.50 extra) containing the wreck and cargo of an ancient Byzantine ship, which sank near Marmaris. Immediately north of the castle lies the <strong>bazaar</strong>, from where you can stroll up Türkkuyusu Caddesi and turn left to the town’s other main sight, the <strong>Mausoleum</strong> (daily 8am-5pm; $2). This is the burial place of Mausolus, who ruled Halicarnassos in the fourth century BC, greatly increasing its power and wealth. His tomb (from which we derive the word “mausoleum”) was regarded as one of the Seven Wonders of the Ancient World, but the bulk of it is now in London’s British Museum. The town’s ancient <strong>amphitheatre</strong>, just above the main highway to the north, was begun by Mausolus and was modified in the Roman era; it’s used during the annual September festival.<br>\n <strong>Ferries</strong> dock at the jetty west of the castle, close to the <strong>tourist office</strong> on İskele Meydanı (Mon-Fri 8.30am-5.30pm; summer also Sat & Sun). The <strong>bus station</strong> is 500m up Cevat Şakir Caddesi, which divides the town roughly in two. Bodrum Ferryboat Association (tel 0252/316 0882) handles <strong>ferries to Kos</strong> ($20 one-way, $25 day return, $30 open return), as well as domestic services to Datça, while Bodrum Express Lines (tel 0252/316 1087) handles <strong>hydrofoils to Kos</strong> ($30 one-way, $35 day return, $40 open return), <strong>Rhodes</strong> ($50 one-way, $60 day return, $70 open return) and domestic services to Marmaris. There’s a port tax ($10), payable on arrival in Greece if you’re not returning the same day. Some of the best <strong>accommodation</strong> is southeast of the bus station in Kumbahçe. <em>Emiko Pansiyon</em>, Atatürk Cad, Uslu Sok 11 (tel 0252/316 5560, <em><a href="mailto:emiko@turk.net">emiko@turk.net</a></em>; £10-20/$16-32 [€15-29]), has a pleasant courtyard and quiet rooms. <em>Durak</em>, Rasthane Sok 8 (tel 0252/316 1564; up to £10/$16), has some with balconies, as does the friendly <em>Uğur</em>, across the road at no. 13 (tel 0252/316 2106; £10-20/$16-32 [€15-29]). West of the bus station, <em>Melis</em>, Türkkuyusu Cad 50 (tel 0252/316 0560; £10-20/$16-32 [€15-29]), has en-suite rooms and attractive courtyards. The nearby <em>Dönen</em> (tel 0252/316 4017; £10-20/$16-32 [€15-29]) is a quiet family-run operation with a garden. <em>Dolmuşes</em> from the bus station head to nearby Akyarlar, which offers the best sandy beach around, some quiet <em>pansiyons</em> and restaurants, and a <strong>campsite</strong>.<br>\n You don’t come to Bodrum to save money, and <strong>eating out</strong> is no exception. Best of the budget places is <em>ZetaşOcakbaşı</em> on Atatürk Cad, which offers good <em>pide</em> and meat dishes. <em>Gemibaşi</em>, opposite the yacht harbour, on the corner of Firkayten Sok and Neyzen Tevfik, is good for a no-nonsense meat meal and also serves fish. The <em>Karadeniz</em> cake shop on Dr Alim Bey Cad does wonderful fruit and cream cakes. The same street boasts many of the town’s fast-changing <strong>bars</strong> - current hot-spots include <em>Robin Hood</em> and the <em>White House</em>. <em>Halikarnas</em> at the east end of Cumhuriyet Cad is the most famous <strong>club</strong> on the Aegean, while the <em>M&M Marine Club</em> is reputedly the biggest floating disco in the world; it sets sail at 2am when the onshore establishments close. <strong>Internet</strong> access is at Hakim’s Internet on Atatürk Cad.<br>\n <strong><u>Nightlife</u></strong><br>\n <strong>Halikarnas Disco </strong><br>\n <strong>Kuba - Jazz</strong><br>\n <strong>Picante - Salsa</strong><br>\n Lets start our bar and disco walk right underneath the impressive walls of the castle - on Iskele Meydani, the place just on the harbor side where are many cafes, just next to the tourism office.<br>\n <br>\n Here starts Dr. Alim Bey street, later it leads to Cumhuriyet street, but both together are all over Bodrum known as Barstreet. This one mile long street runs parallel with the sea, so all the bars and restaurants on your right side offer a sitting area on the beach with the scenic view of the castle.<br>\n <br>\n <strong>McDonalds</strong> fast food will be the first on the left side.<br>\n <br>\n Then next to it is <strong>VELI BAR</strong>, with frequently live music. This one is probably the oldest bar in town.<br>\n <br>\n Nestled among boutiques with good quality textiles you’ll see <strong>YETTIGARI</strong> and then a bit further on <strong>HADIGARI BAR & RESTAURANT</strong> <br>\n <br>\n Before you come to an open place, known as PIDE Place you will pass <strong>M&M DANCING</strong>, this is a very recommendable disco of high quality standard in sound system and decoration<br>\n Now you have reached a little square, in precise words the Hilmi Uran Meydani, or in short: the Pide place, because you find a bunch of shops selling snacks like the Turkish Pizza, the Pide. Take a rest here.<br>\n <br>\n On the right then you’ll see a stone house facade with the name <strong>FORA BAR</strong>. It is again one of these nice discos situated on the Beach offering a marvellous view of the sea and castle.<br>\n <br>\n Now you enter straight away the extension of this barstreet, the Cumhuriyet Caddesi. If you come in high season you’ll find it difficult to walk on this narrow and crowded street.<br>\n <br>\n Many shops and boutiqes sell all kinds of goods and among them are the restaurants and bars. And don’t forget - you are still parallel with the sea. <br>\n <br>\n By now you have reached another opening, called Azmakbasi, but the Cumhuriyt caddesi carries on.<br>\n <br>\n Here on right you find <strong>FASIL CAFE RASIT</strong>, an upstairs bar with authentic Turkish music and belly dance. The program start around 11 PM.<br>\n After Azmakbasi you’ll have the open sea on your right side and many bars and inviting restaurants to your left-<br>\n <br>\n your eyes will be attracted by a building in nearly Victorian style <strong>THE WHITE HOUSE BAR</strong> offering live music.<br>\n <br>\n A bit further on is <strong>SULTANS BEACH H0USE</strong>, owned by friendly Erdogan Danaci.<br>\n <br>\n More discos and bars follow and still on your right side is the open Aegean sea. A nice little cafe called <strong>MAVI BAR</strong> - the blue bar invites you for a drink while you can have a look at their galleries<br>\n <br>\n From here you walk about 50 meters along the little ascending street to one of the nicest discos in the world, the <strong>HALIKARNASS DISCO</strong>. </p>\n<p><strong>Markets</strong><br>\n Tuesday<br>\n <strong>Hotels</strong><br>\n <strong>Mr Zafer Küstü<br>\n <u>Su Otel</u></strong><br>\n Tepecik Mahallesi, Turgut Reis Cad., 1201 Sokak<br>\n <u>Bodrum <../BodrumMain.html></u>, Mugla, Turkey<br>\n Tel +90 (252) 316 6906<br>\n <strong>Walk to Su Otel from Bodrum Waterfront</strong><br>\n Find <strong>Gerence Sokak</strong> going inland (north) from <strong>Neyzen Tevfik Caddesi</strong>, the waterfront street around Salmakis Bay (the western of Bodrum’s two bays). Gerence Sokak starts between Neyzen Tevfik Caddesi Nos. 34 and 36. It’s about a 10-minute walk from Neyzen Tevfik Caddesi to the <u>Su Otel <su_otel.html></u>. There are small signs marking the route the entire way.<br>\n Follow Gerence Sokak, which curves around to the left, then is more direct, all the way to <strong>Turgutreis Caddesi, </strong>the narrow one-lane, one-way (eastbound) street. Turn left (west), and beware the traffic on this street as you walk, looking for small “<u>Su Otel <su_otel.html></u>” signs. The entrance to <strong>1201 Sokak</strong>,<strong> </strong>the Su Otel access path is on the left (south).<br>\n <strong><u>Dolphin Apart - selef catering</u></strong><br>\n Umurca Mah. Dr. Mümtaz Ataman Cad. | Rasattepe Sok No.:8, Bodrum 48400, Turkey</p>\n\n\n</body>\n</html>
When you take a long time, you're slow.\nWhen your boss takes a long time, they're thorough.\n\nWhen you don't do it, you're lazy.\nWhen your boss doesn't do it, they're too busy.\n\nWhen you make a mistake, you're an idiot.\nWhen your boss makes a mistake, they're only human.\n\nWhen doing something without being told, you're overstepping your authority.\nWhen your boss does the same thing, that's initiative.\n\nWhen you take a stand, you're being pig-headed.\nWhen your boss does it, they're being firm.\n\nWhen you overlooked a rule of etiquette, you're being rude.\nWhen your boss skips a few rules, they're being original.\n\nWhen you're out of the office, you're wandering around.\nWhen your boss is out of the office, they're on business.\n\nWhen you're on a day off sick, you're always sick.\nWhen your boss has a day off sick, they must be very ill.\n\nWhen you apply for leave, you must be going for an interview.\nWhen your boss applies for leave, it's because they're overworked.\n
/***\n|Name|BreadcrumbsPlugin|\n|Source|http://sourceforge.net/project/showfiles.php?group_id=150646|\n|OriginalAuthor|Alan Hecht (with 2.0 update from 'jack' and revisions by Bram Chen)|\n|Version|1.5.5.0TT|\n|Author|Eric Shulman|\n|License|[[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|\n|~CoreVersion|2.1|\n|Type|plugin|\n|Requires||\n|Overrides|Story.prototype.displayTiddler|\n|Description|show a list of tiddlers viewed during this session. Also defines "back" (previousTiddler) toolbar button and macro|\n\n!Revision History:\n__TiddlyTools (TT) variant:__\n1.5.5.0 2007.04.11 - added optional params to previousTiddler macro handler() to allow alternative label and tooltip text (instead of default "back")\n1.5.4.0 2007.03.02 - in refreshCrumbs(), for TW2.2, look for "storyDisplay" instead of "tiddlerDisplay" but keep fallback to "tiddlerDisplay" for TW2.1 or earlier\n1.5.3.0 2007.02.24 - changed from hijack of onClickTiddlerLink to hijack of displayTiddler() so that ALL displayed tiddlers are recorded in the crumbs, including programmatically displayed tiddlers opened by macros, scripts, etc., (such as [[GotoPlugin]], among many others) in addition to those opened by clicks on links.\n1.5.2.0 2007.02.24 - eliminated global space clutter by moving function and data declarations so they are contained inside config.breadCrumbs object.\n1.5.1.0 2007.02.06 - added "previousTiddler" macro (for use in sidebar)\n1.5.0.0 2007.02.05 - added "previousTiddler" toolbar command (aka, "back")\n1.4.0.1 2006.08.04 - change spaces to tabs\n1.4.0.0 2006.08.04 - modified from 1.4.0 distro:\n<<<\nin refreshCrumbs(), set {{{display:none/block}}} instead of {{{visibility:hidden/visible}}}\nin restartHome(), check for valid crumbArea before setting style\ngeneral code cleanup/reformat using tabs to indent\n<<<\n|1.4.0|Aug 02, 2006|Fixed bug, the redefined onClickTiddlerLink_orig_breadCrumbs works incorrectly on IE|\n|1.3.0|Jul 20, 2006|Runs compatibly with TW 2.1.0 (rev #403+)|\n|1.2.0|Feb 07, 2006|change global array breadCrumbs to config.breadCrumbs by Eric's suggestion|\n|1.1.0|Feb 04, 2006|JSLint checked|\n|1.0.0|Feb 01, 2006|TW2 ready and code Cleaned-up|\n\n!Code section:\n***/\n//{{{\nversion.extensions.breadCrumbs = {major: 1, minor: 5, revision: 5, date: new Date("Apr 11, 2007")};\n\nif (Story.prototype.breadCrumbs_coreDisplayTiddler==undefined)\n Story.prototype.breadCrumbs_coreDisplayTiddler=Story.prototype.displayTiddler;\nStory.prototype.displayTiddler = function(srcElement,title,template,animate,slowly)\n{\n this.breadCrumbs_coreDisplayTiddler.apply(this,arguments);\n // if not displaying tiddler during document startup, then add it to the breadcrumbs\n // note: 'startingUp' flag is a global, set/reset by the core init() function\n if (!startingUp) config.breadCrumbs.addCrumb(title);\n}\n\nconfig.breadCrumbs = { // ELS: move all functions and data inside config.breadCrumbs object (eliminate global clutter)\n crumbs: [], // the list of current breadcrumbs\n addCrumb: function (title) { // ELS: changed from passing event, "e", to passing tiddler title\n var thisCrumb = "[[" + title + "]]";\n var ind = this.crumbs.find(thisCrumb);\n if(ind === null)\n this.crumbs.push(thisCrumb);\n else\n this.crumbs=this.crumbs.slice(0,ind+1); // ELS: use slice() to truncate array instead of just setting array length\n this.refreshCrumbs();\n return false;\n },\n refreshCrumbs: function() {\n var crumbArea = document.getElementById("breadCrumbs");\n if (!crumbArea) {\n var crumbArea = document.createElement("div");\n crumbArea.id = "breadCrumbs";\n crumbArea.style.display= "none"; // ELS changed from: crumbArea.style.visibility= "hidden";\n var targetArea= document.getElementById("tiddlerDisplay"); // TW2.1-\n if (!targetArea) targetArea = document.getElementById("storyDisplay"); // TW2.2+\n targetArea.parentNode.insertBefore(crumbArea,targetArea);\n }\n crumbArea.style.display = "block"; // ELS changed from: crumbArea.style.visibility = "visible";\n removeChildren(crumbArea);\n createTiddlyButton(crumbArea,"Home",null,this.restartHome);\n wikify(" | " + this.crumbs.join(' > '),crumbArea) // ELS: changed || to |\n },\n restartHome: function() {\n story.closeAllTiddlers();\n restart();\n config.breadCrumbs.crumbs = [];\n var crumbArea = document.getElementById("breadCrumbs");\n if (crumbArea) // ELS: added check to make sure crumbArea exists\n crumbArea.style.display = "none"; // ELS changed from: crumbArea.style.visibility = "hidden";\n }\n};\n\nconfig.commands.previousTiddler = { // ELS: added "BACK" toolbar command\n text: 'back',\n tooltip: 'view the previous tiddler',\n hideReadOnly: false,\n dateFormat: 'DDD, MMM DDth YYYY hh:0mm:0ss',\n handler: function(event,src,title) {\n var here=story.findContainingTiddler(src); if (!here) return;\n if (config.breadCrumbs.crumbs.length>1) {\n var crumb=config.breadCrumbs.crumbs[config.breadCrumbs.crumbs.length-2].replace(/\s[\s[/,'').replace(/\s]\s]/,'');\n story.displayTiddler(here,crumb);\n }\n else\n config.breadCrumbs.restartHome();\n return false;\n }\n};\n\nconfig.macros.previousTiddler= { // ELS: added "BACK" macro\n label: 'back',\n prompt: 'view the previous tiddler',\n handler: function(place,macroName,params,wikifier,paramString,tiddler) {\n var label=params.shift(); if (!label) label=this.label;\n var prompt=params.shift(); if (!prompt) prompt=this.prompt;\n createTiddlyButton(place,label,prompt,function() {\n if (config.breadCrumbs.crumbs.length>1) {\n var crumb=config.breadCrumbs.crumbs[config.breadCrumbs.crumbs.length-2].replace(/\s[\s[/,'').replace(/\s]\s]/,'');\n story.displayTiddler(place,crumb);\n }\n else\n config.breadCrumbs.restartHome();\n });\n }\n}\n//}}}
!French toast, hot marmalade sauce\n\nBe sure to have something on the side to balance the richness, such as a fruit puree or a splash of sharp dairy produce. Serves 2.\n!!Ingredients\n100ml full-cream milk\n2 eggs\na dash of vanilla extract\n1 tbsp caster sugar\n4 thick slices of brioche or good, white bread\n30g butter\ncream or creme fraiche, and icing sugar to serve\n----\nLightly beat the milk and eggs, beat in the vanilla and sugar, then pour into a shallow dish. Dunk the slices of bread into the milk and egg and leave for a good 5 minutes.\n----\nWarm the butter in a non-stick frying pan. When it sizzles, slide in the soaked bread. Let it form a crisp crust on the outside - a matter of 3 or 4 minutes. Turn the bread over with a fish slice or palette knife then cook the other side for a minute or two till golden.\n----\nLift the toast out and drain on a piece of kitchen paper and serve, dusted with icing sugar, if you wish, and cream.\n----\n!!For the sauce:\n200g marmalade, probably not too dark or thickly cut\na squeeze of lemon\n1 tbsp whisky or brandy, or better still Cointreau\n3 tbsp water\n----\nMelt the marmalade in a small, non-stick pan. Pour in the lemon juice, the alcohol and a tablespoon of the water, bring to the boil and stir to a syrupy consistency. If it seems too thick, add a little more water. Spoon over the toast.
*Here is a browser with links to my sites - or just use it like an ordinary browser. \n*Please be patient while the multimedia stuff loads!\n<<tiddler MiniBrowser>>\n----\n''Notice the @@color(#cc0000):Fit to size@@ button at the bottom of the browser window (when it is open)!''\n----
"You don't get everything you want. A dictatorship would be a lot easier." - Governing Magazine, July, 1998\n\n"If this were a dictatorship, it would be a heck of a lot easier; just so long as I'm the dictator." - Washington D.C. December 18, 2000\n\n"A dictatorship would be a heck of a lot easier, there's no question about it." - Business Week, July 30, 2001\n\n"See in my line of work you got to keep repeating things over and over and over again for the truth to sink in, to kind of catapult the propaganda." - Rochester NY, May 24, 2005\n\n \n\n"The really rich people figure out how to dodge taxes anyway." - Annandale VA, August 9, 2004\n\n \n\n"Our enemies are innovative and resourceful and so are we. They never stop thinking about new ways to harm our country and our people, and neither do we." - Washington D.C. August 5, 2004\n\n"It's been a fabulous year for Laura and me." - December 20, 2001 (Three months after the 9/11 attacks)\n\n"The most important thing is for us to find Osama bin Laden. It is our number one priority and we will not rest until we find him." - Sept. 13, 2001\n\n"I don't know where bin Laden is. I have no idea and really don't care. It's not that important. It's not our priority." - March 13, 2002\n\n \n\n"I just want you to know that, when we talk about war, we're really talking about peace." - June 18, 2002 (ever read George Orwell's 1984? Remember "Doublethink"?)\n\n""I'm the commander - see, I don't need to explain - I do not need to explain why I say things. That's the interesting thing about being President." - quoted in Bob Woodward's "Bush at War"\n\n"I'm also not very analytical. You know I don't spend a lot of time thinking about myself, about why I do things." - June 4, 2003\n\n"See, free nations are peaceful nations. Free nations don't attack each other. Free nations don't develop weapons of mass destruction." - October 3, 2003\n----
Debating is a very popular activity in Great Britain. For the British, it is important to \nbe able to speak well and to speak convincingly. As a result there are many debating \nclubs and societies in schools and universities to train people to debate well.\nEach year there is a competition to find the country's best debater. One year the\nfinalists were Steven Swan from England and Magnus MacDonald from Scotland. \nThey were two very different characters, both in appearance and personality. \nSteven Swan was a short and very fat man. He weighed over 200 kilos and he was \nshaped like a ball. He was a very sociable man. Steven was always with friends and he \nnever stopped talking. He spent a great amount of his time in expensive London \nrestaurants debating with politicians and businessmen. They always paid the bills so \nStephen ate enormous amounts of food.\nMagnus MacDonald, on the other hand, was almost the complete opposite. He was \ntall and very, very thin. He looked like a pencil and he seemed to be just skin and \nbones. Magnus lived in a small Scottish town so he was quite unknown. He was a \nquiet man who spent most of his time reading books in the library. He never spoke \nunless it was necessary. 'Never waste words' was one of his favourite sayings.\nOn the day of the final a large crowd waited anxiously to see and hear the two \nfinalists. They entered the debating room and stood looking at each other. This was \nthe first time that they had met. Magnus was silent. Steven slowly looked at Magnus \nfrom head to toe and said, \n"So you are Magnus. Looking at you, anybody would think that there was a famine\nin Scotland."\nThe crowd laughed. Magnus waited until the laughter had stopped and replied coldly,\n\n" .............................................................................."
You will find plenty of reviews of PNDs (<<wikipedia 'Personal Navigation Device'>>) on the Internet. This article is a buyer beware article for the UK market. For example, I bought a Mio C230 after reading that it had TTS (Text to Speech) and full postcode searching after checking the UK vendor's site first. However, I discovered that the European model does not have TTS and on my unit even the postcode search was only 5 digit. I returned it!\n!Main features of a budget PND \n*WinCE Core 5.0\n*SiRFStar III GPS Chipset\n*Full Post Code search\n*Auto-zoom\n*Speed camera database\n*POIs (Points of Interest)\n----\n*SD memory card expansion slot (new Tom Tom One does not!)\n*12-24 volt adapter cable that plugs into your cigarette lighter\n*USB cable\n!Beware of the difference between US and UK models\nHave you noticed that as goods travel from the US to the UK they double in price and the specifications and standards for the same model drop? In other words, welcome to short-changed ripoff Britain.\nCheck the spec for the UK model!\n----\nThe main differences are:\nText to Speech: US yes, UK no\nHuge POIs: US yes, UK no\nExtra software: US yes, UK no\nMultimedia: US yes, UK no\nExtra cables: US yes, UK no\n----\n''If you get one with a headphone jack that is a plus but you can get inexpensive USB headphones nowadays.\nYou will find that POIs are a real benefit.''\n!Can I hack my device?\nIn many cases you can hack the device. What that means is that you make the underlying WindowsCe software available via a new menu option that is loaded when you switch on. If your unit does not have a media player, you can usually enable it that way. If you do a backup of the software on the device when you first set it up, you can't do any harm. Just delete everything and reinstall your original copy. Remember to do a hard reset.\n!useful sites\n|pocketgpsworld|http://www.pocketgpsworld.com/menu.php|\n|Maps|http://www.pda4x.com/|\n|POIs|http://www.poiplaza.com/|\n!GPS devices\n[[Navigo SY885]]
!Plan a Route\n|AAA travel|http://www.theaa.com/travelwatch/planner_main.jsp|\n|RAC routeplanner|http://route.rac.co.uk|\n!Hire a car\nBe careful of comparison sites - they seem to specialise in big names and bigger prices. You might be better off with a hire from a local firm.\n|Enterprise|http://www.enterprise.co.uk|ยฃ30.50 inc. for Class D Large Compact Vauxhall Astra, Ford Focus or similar|\n|Jowetts|http://autohireatjowetts.co.uk| ยฃ15 a day for 3 day hire|\n
When Susan Goodman placed an ad in local newspapers asking people to send her their childhood recollections of the Second World War, she was overwhelmed by the response. Now she has collected these stories in a remarkable book. This exclusive extract describes the terror of the Blitz and the evacuee experience. \n\nby SUSAN GOODMAN, You Magazine \nfemail.co.uk - 4th April 2005 \n\nUnder attack \nThe constant anxiety of being at risk from attack from the air caused untold stress. There were few places, however remote, which were free from the menace of droning planes or random bombs. \nThe first, most terrifying raid on London occurred on the night of the 29th December 1940. Judy was ten at the time and remembers it as the moment she first began to question the random nature of survival amidst all the destruction. \n"I can still hear the screaming bombs and the Anderson rattling as they rained down on us. Hundreds of German bombers droned over, setting the city on fire. The scene that met us the next morning when we finally saw the light of day was horrendous. \n"We felt as though we were standing in the middle of hell. Fires were raging all around us, and I could see bodies smouldering among the rubble of houses. \n"The top part of our house had been completely demolished and yet my mother's beautiful ebony piano was still intact under the blankets she had covered it with. I wondered why the God that my mother was always praying to had taken our neighbours? lives but left a piano." \nEvery raid left new damage. Nowhere, not even a corner shop, could be taken for granted. Dan, aged 13, remembers the bombing as both terrifying and exciting. \n"Shelter hopping during an air raid warning on the way to school and watching the fighter planes high in a cloudless sky was a macho thing to do. \n"I went out one morning after particularly heavy bombing and discovered that my much patronised neighbourhood sweet shop had been almost totally destroyed. All that was left was the end of the wall and on the shelves of that wall, miraculously untouched, were all the large jars of sweets. Even to this day I have a strong visual memory of those exposed sweet jars." \nMany adventurous children, not able to grasp the danger, revelled in all the fuss long past their bedtime. \n"Air raids were exciting," June from Kent recalls. "They disrupted the ordinariness of everyday life. You never knew whether you would be spending the night in your bed, in the air raid shelter or under the dining room table! \n"I used to lie in my bed and pray for an air raid so that we could go down to the shelter and have hot drinks and buttered toast in the middle of the night. What a treat!" \nBut for others the noise and the fear of death had lasting effects. Rose was eight in 1939 and living with her parents in a house at Eton College. Her mother would drag her under the grand piano and read her poetry during an air raid. \n"There was a pervading sense of fear. I still react when I hear a siren, and I have never forgotten being woken from a nightmare where I was being pursued by motorcycles backfiring (the deafening ack-ack guns frightened her most). \n"I was also very aware of the sudden change of lifestyle as I watched my mother struggling to run the house and feed the boys." \nEvacuation \nThe removal of children from the danger of their city homes to the safety of the countryside at a young, impressionable age was bound to be an emotional experience. Whatever their experience with their new families, enriching or unhappy, it stayed with them for the rest of their lives. \nMany evacuations were successful, greatly broadening a child's experience. Wendy discovered a life long love of the country when, aged six, she and her mother relocated from Liverpool to a rented cottage in North Wales. \n"No electricity, no running water, make do and mend at every turn, water fetched from a spring in the field, loo down the garden and such freedom! I left the city at the first opportunity and have lived in the country ever since." \nBut for others it was a miserable time. Eva was 12 when she was evacuated from East London with her older sister to Norfolk. They ended up in the village church hall and were eventually paired off with an older, childless couple. \n"The man was awful and I hated him. We were given awful food and when my parents came to visit they wouldn't even let them come in the house and made them stand outside. They confiscated food and sweet parcels sent to us by our parents and they were really most unkind. \n"I remember sometimes I got so desperate that I walked down to the main road and sat on the kerb and tried to stop anyone in a car to give me a lift home." \nIn every large city children were taken to school with their gas masks and boarded buses for the country. Often, their parents had no idea where they would end up and one can only guess at the feelings of parents as they waved goodbye, praying they had made the right decision and that their children would be safe. \nKate was just four when she left London. "I clearly remember my grandfather putting me on a bus. I had a luggage label tied onto my coat and a small toy attachรฉ case with a doll and a square of pink silk that I used to wrap her in. I had no idea what was happening." \nMinnie, aged 12, was evacuated with her younger brother from London to the south coast. The children's parting from their widowed mother made an indelible impression. \n"I vividly remember my mother's sadness. She had lost our father only two years before, so she had no one to advise her as to whether she was doing the right thing. She saw us off that Sunday morning with our gas masks, labels tied to our coats and our small cases, no knowing where we were going." \nArrival at whatever town or village meant more herding and waiting until a billet with a local householder could be arranged. So we must picture these same children, by now thoroughly exhausted and bedraggled, waiting to be picked out by someone who wanted them. \nPhyllis who was 12 says that her 14 year old sister "was rather skinny and did not look too strong. I was a plump and pretty child. They came over to choose me but they did not want my sister. We told them that we could not be separated. Unfortunately we were left until the very end". \nIn agricultural areas, strapping lads were quickly snapped up by local farmers looking for an extra pair of hands. Older girls were required to do all the housework. Many were badly treated. \nMay was taken to a small village in Lancashire by her father when she was nine. "After the long journey up north my dad seemed pleased with the room I had been given and he left me there, bewildered and tearful. Once he had gone on his way I was made to sleep in a cold attic with a camp bed and bare boards. \n"Then I became aware of a lack of food. I stole some from the larder and ate the crusts that were put out for birds. As winter set in I had to wear all my clothes at once to keep from freezing. I was plagued with chilblains and suffered from bullying from the local children. \n"When they taunted me for my London accent, I had to chant to myself the dialect of Lancashire." \nWhen May's parents came to visit, although they were hardly left alone with her, they suspected that she was miserable and decided to take her home. But when she got home her bad memories turned into terrible nightmares, which persisted well into middle age. \nRose, aged nine, came from a large family in a teeming industrial area of Clydeside and was evacuated to a remote village in the surrounding countryside. \n"I had to peel at least a bucket of potatoes a day. I was not allowed into the woman's house alone. She liked me to comb her hair and I had to cut her corns, which I hated. \n"Sometimes my Dad came to visit and he gave me pocket money. When it got too much I got my money out of the jar and left. I walked two and a half miles to the bus and found my way back home. I had been away over four years." \nFamily life \nThe family was the bedrock that underpinned nearly every child's experience during those six unsettling years - through the evacuations, wailing sirens, shortages and the proximity of death. \nFor children crouched in an air-raid shelter dreading what sights the morning would bring, it was mums and dads and other relatives who counted. Most people who were then children believe that, whatever their circumstances, the strength and resilience of family life were paramount. \nA boy of seven from South London who was evacuated to Sussex for nearly four years said, "All that time, I never worried about my parents. I knew they would be all right - they were invincible. And I knew that deep down they were always there for me." \nFamily reunions in wartime had a special poignancy. Mary was sent to stay with distant relatives and cried herself to sleep most nights. \nWhen her parents brought her back to Newcastle her relief was such that she never forgot it. She willingly put up with the frightening air raids because the "family was together and happy". \nFor most reunited families the joys of picking up the threads of home life were immense. But for children who were long-term evacuees, reunion could be a more complex matter. \n"I never really settled," one man admitted. He added that it was his personal belief from what he had observed that long-term evacuees tended to become adults who bottled up emotions and had difficulty forming close relationships. \nPossibly a watchful, self-protective armour had become ingrained. Brothers and sisters who had stayed at home, or who had been born during the war were also strangers to the returning evacuee. \nThe reunion could also be hard on parents, who easily resented the affection their child had developed for a foster parent or a different way of life. \nWith a war on, the inevitable strains and bickering of family life were less important than before and families did their best to support one another. Tragedy lurked everywhere and few families were immune from the risk of sudden death. \nPeter was a schoolboy who worked delivering telegrams during the Christmas holidays of 1941. "I delivered a total of ninety-five telegrams in five days. I could tell immediately from the face of a recipient that some of them clearly brought the dreaded news of a husband or loved one. The expression on their faces said it all." \nAnd as the war eventually came to an end many children were faced with a returning father they scarcely recognised. During those six long years, the lives of many husbands and wives, parents and children had changed and grown apart. \nFor all the joyful celebrations, there were hard knocks in store. Many children remember their fathers' homecoming as extremely exciting, and sometimes bittersweet. One woman recalled how she had been sent to the station at the age of nine to meet her father because her mother, felled by the emotion, preferred to stay at home. \nShe had only seen him two or three times in six years and when a tall man in a khaki uniform stood in front of her on the platform and said "I'm Daddy," she did as she had been taught and put out her hand. \nThis unsatisfactory meeting was the beginning of a difficult relationship, "Perhaps it would have been the case, or perhaps my father's absence during those years made it worse, there is no way of knowing. \nBut I was a spirited child and deeply resented suddenly having this father ordering me about. After one of my many battles with my father soon after the war, I vividly remember overhearing my mother saying to him wearily, "oh do please stop treating us like the fourteenth army". \nIt is fitting that a girl whose father was one of the last serviceman to return has the final words on homecoming of a child of war: "As the eldest, I remembered my father very well, though inevitably my two little brothers did not. The first phone call after he had landed in Southampton after nearly four years, was very special. We brought flags to celebrate his return home and all the neighbours decorated their houses too. Looking back at the photos of that time, his face was very gaunt and he was very thin. But I don?t think I noticed that. He was Daddy - and he was home." \nChildren of War - The Second World War Through the Eyes of a Generation by Susan Goodman is published by John Murray on the 21st March at ยฃ20. Offer price. The Children's War - a major exhibition to mark the 60th anniversary of VE day will open at the Imperial War Museum in London on Friday. Tel: 020 74165320 \n\nFind this story at: \nhttp://www.femail.co.uk/pages/standard/article.html?in_article_id=340999&in_page_id=25 \nยฉ2005 Associated New Media\n
!Christina Rosetti - some websites\nhttp://falcon.jmu.edu/~ramseyil/rossetti.htm\nhttp://www.scholars.nus.edu.sg/landow/victorian/authors/crossetti/rossetti2.html\nThe Longing for Motherhood nd the Concept of Infertility in the Poetry of Christina Rossetti\nhttp://www.scholars.nus.edu.sg/victorian/authors/crossetti/touche1.html\nInteresting analysis that links its points of view to particular poems\nPoetry collection\n\nhttp://celtic.benderweb.net/cr/index.html\n\nA long list\n\nhttp://www.englishonline.co.uk/freesite_tour/resource/literature/rossettititles.html\n\nNice painintgs\n\nhttp://faculty.pittstate.edu/~knichols/chris.html\n\nExcellent site covering all aspects of her poetry and life\n\nhttp://www.victorianweb.org/authors/crossetti/crov.html\n\nhttp://www.victorianweb.org/authors/crossetti/harrison2/1.html\n\n!Her writing style\n\nNearly a year before the 1862 issuance of Christina Rossetti's Goblin Market and other Poems, no less a respected critic than John Ruskin pronounced her work unpublishable. Her poems, he wrote, "are full of beauty and power but so full are they of quaintnesses and offences" that "no publisher... would take them." The unusual rhyme schemes and metrical irregularity of pieces like "Goblin Market" and "The Convent Threshold" were particularly disturbing to Ruskin, and he advised that, before she attempt to place her verses before an audience, Rossetti "exercise herself in the severest commonplace of metre until she can write as the public like. Then, if she puts in her observation and passion all will become precious. But she must have the Form first" \n\n+++*[Literature Biography]\nhttp://www.bartleby.com/223/0512.html\n\nThe first number of The Germ published by Dante Gabriel Rossetti (1828-1882) contained, as well as Rossettiโs My Sisterโs Sleep, a sonnet by his brother William Michael and two lyrics by his sister Christina Georgina Rossetti. Christina, born in 1830, produced her earlier work under the pseudonym Ellen Alleyn. The two lyrics in question, Dream Land and An End, are the natural outcome of a mind that instinctively translates its passing dreams into music as faint and clear as the horns of elf-land, such music as is heard at its perfection in the lyrics of Shelley. A song, Oh roses for the flush of youth, in the second number of The Germ, has the same unsought grace. Together with this appeared the more elaborate A Pause of Thought and A Testimony, the second of these founded on the recurrent theme of Ecclesiastes and employing scriptural language with the skill and ease manifested by Rossetti in The Burden of Nineveh and by Swinburne in countless poems. \nUnlike her brother, whose sympathy with religion was purely artistic, and still more unlike Swinburne, whose attitude to the orthodox conceptions of Christianity was openly hostile, Christina Rossetti was, to the end of her life, a devout Christian, finding the highest inspiration for her song in her faith and investing Anglican ideals of worship with a mystical beauty. Her volumes of collected verse, beginning with Goblin Market and other poems in 1862 and ending with New Poems, collected in 1896, two years after her death, by her brother William, are permeated, even when they deal with subjects not primarily religious, with this devotional feeling. Goblin Market and The Princeโs Progress, her two chief narrative poems, are both, in effect, allegories, the first obvious in its application, the second capable of more than one interpretation, of the soul in its struggle with earthly allurements. \nHer sequences of sonnets, Monna Innominata and Later Life, are filled with her sense of the claims of divine love over human passion. While her brother, in The Blessed Damozel, drew the picture of an immortal spirit yearning for the love it has left behind and translating the joys of heaven into concrete imagery, Christina Rossetti embodies the desire of the soul on earth to climb \nthe stairs that mount above,\nStair after golden skyward stair\nTo city and to sea of glass,\n\nand the heaven which she sees is the mystical city of The Revelation of S. John. \nIn her Martyrsโ Song, the blessed ones who โlean over the golden barโ have no regret for earth: amid the welcoming angels, painted in verse that translates into words the visions wrought in tapestry and stained glass by Burne-Jones and Morris, they find โthe rest which fulfils desireโ in the light of the divine presence. Such verse has a natural kinship with the religious poetry of the seventeenth century, and especially with George Herbert and Henry Vaughan, where their excessive ingenuity in metaphor gives place to spontaneous lyric fervour. The clear notes of Herbertโs Easter Song and the calm rapture of Vaughanโs โMy soul, there is a countryโ find their closest echo in Christina Rossettiโs devout songs, and she adopted instinctively the free metrical forms of rimed stanza in which they clothed their thought. While all her thoughts were drawn together towards one central ideal and her verse was ruled by the supreme conviction that \nin la sua volantade รจ nostra peace,\nshe expressed herself with a variety of metre and rhythm and a musical power unequalled by any other English poetess. If she had less intellectual force and a more confined range of subject than Elizabeth Barrett Browning, who certainly, by virtue of her more liberal sympathies, makes an appeal to a wider audience, Christina Rossetti unquestionably had the advantage in melodiousness. \nGoblin Market, written in paragraphs of varying length with short lines and rimes binding them together at irregular intervals, is an example of a form which, adapted by a careless writer even with considerable imagination, might easily become mere rhythmical prose. While the language is of the most simple kind and the lines run freely into one another, the music of the rimes, half unheard, is, nevertheless, strongly felt. Whether moving in these lightly fettered cadences or in the stricter confinement of the stanza, her lyric verse is always remarkable for its combination of strength and seriousness of sentiment with simplicity of expression. Mystic though she was, her thought never found refuge in complicated or obscure language, but translated itself into words with the clearness and definiteness which were among the aims of the pre-Raphaelite associates of her girlhood. In such short bursts of song as A Birthday, simile and coloured phrase came to her aid, without effort on her part, to adorn a crescendo which rises to a climax of innocent happiness.\nHer A Christmas Carol cannot be matched among Christmas songs for its union of childlike devotion and pathos with pictorial directness: Morrisโs โOutlanders, whence come ye lastโ? and Swinburneโs โThree damsels in the queenโs chamberโ are not less beautiful and are more elaborately pictorial, but they are designedly archaic in style and are without her earnestness and concentration of feeling. It is true that there are poems by Christina Rossetti in which her sense of the necessity of simplicity is too apparent, either in the intrusion of too homely words or in occasional metrical weakness. \nHer ballads of everyday life, such as Maude Clare and Brandons Both, inevitably recall to their own disadvantage, the successes of Tennyson in the same field. On the other hand, where her imagination pursued a higher path, as in the allegorical visions of A Ballad of Boding, the note which she sounded was clear and unfaltering. In the third of her Old and New Year Ditties, the famous โPassing away,โ she showed herself no less capable than Swinburne of wedding appropriately majestic music to her theme, varying the cadence of her verse upon the ground-work of a single sound, the passing bell which is heard at the end of each line, and gradually relieving the melancholy of her opening passage, until, in the last notes, new hope is heard. The range of her verse was, naturally, somewhat limited by her preoccupation with religious subjects. \nContemporary movements touched her lightly, and it was seldom that, as in the two poems entitled The German-French Campaign, she referred to them. If this aloofness from the world precludes her from an uncontested claim to the position sometimes given to her as the greatest of English poetesses, no religious poet of the nineteenth century, even if we take into account the brilliant but more turbid genius of Francis Thompson, can be said to challenge comparison with her whose โshrine of holiest-hearted songโ Swinburne approached with reverent admiration of her single-heartedness and purity of purpose \n===+++[Biography]\nsource: http://www.litencyc.com/php/speople.php?rec=true&UID=3852\nBorn in 1830, in London, Christina was the fourth and youngest child of Gabriele and Frances Rossetti. Gabriele, an Italian political exile and poet, settled in England in 1824 and was appointed Professor of Italian at Kingโs College in 1831. Frances, the London-born daughter of Italian poet and translator Gaetano Polidori, married Gabriele in 1826. Although Christina was the first of their children to be publicly recognized for her literary accomplishments, her siblings were also writers: Maria Francesca, a member of the Anglican All Saintโs Sisterhood, authored a commentary on The Divine Comedy; painter and poet Dante Gabriel lead the Pre-Raphaelite movement; and William Michael was a critic, essayist and biographer. \nRossettiโs earliest surviving poem dates from April 1842 and was written as a birthday present to her mother. Rossetti was educated by her mother, a former governess and a teacher. Rossetti also learnt Italian from her father and grandfather and took lessons in German. A commonplace book created by Frances Rossetti and her children offers insight into the familyโs tastes and reading habits. It contains passages by contemporaries such as Tennyson and Dickens, Romantic poets such as Byron, as well as several eighteenth-century writers. \nRossettiโs first collection, Verses, consists of 43 poems and was printed in 1847 on her grandfatherโs private press. Dedicated to her mother and completed when Rossetti was 16, the volume contains numerous poems on martyrdom, death and unrequited love. In 1848, Rossetti began to publish her poems in magazines such as the Athenaeum and in collections such as the Ladiesโ Daily Remembrancer and Lyra Messianica. Two of her poems, โDreamlandโ and โAn Endโ, appeared in the first edition of The Germ, the short-lived magazine of the Pre-Raphaelite Brotherhood. \nRossettiโs first major publication, Goblin Market and Other Poems was published by Macmillan in 1862. The title poem, her most famous, examines temptation, sensual pleasure, and the healing power of a sisterโs sacrifice. Illustrated by Dante Gabriel Rossetti, the book was lauded by its contemporary reviewers. Macmillanโs Magazine, who had already published several of Rossettiโs poems, commended the title poemโs โversatility, as well as the originality of geniusโ (August 1863, 401). The British Quarterly praised the collection for being โmarked by beauty and tendernessโ (qtd. in Kathleen Jones, Learning Not to be First, 112). Positive reviews also appeared in the Literary Gazette, London Review and Athenaeum. \nFour books of poetry followed: The Princeโs Progress and Other Poems (1866), Sing-Song (1872), A Pageant and Other Poems (1881) and Verses (1893). The title poem of The Princeโs Progress shares several themes with โGoblin Marketโ. An allegorical narrative about the extended separation of a prince from his fiancรฉe, the poem examines the relationship between sensuality, morality, desire and duty. When the errant prince finally arrives to claim his bride, he finds her dead: \nToo late for love, too late for joy,\nToo late, too late! \nYou loitered on the road too long. \nYou trifled at the gate: \nThe enchanted dove upon her branch\nDied without a mate; \nThe enchanted princess in her tower\nSlept, died, behind the grate; \nHer heart was starving all this while\nYou made it wait. (481-490) \nSing-Song was, as its title suggests, written for children. Illustrated with 120 images by Arthur Hughes, it contains nursery rhymes, nature poems, instructional poems, and lullabies, as well as several nonsense poems. A representative poem demonstrates Rossettiโs interest in portraying animals and the compact, highly rhythmic character of the poems that make up this volume: \nA linnet in a gilded cage,- \nA linnet on the bough,- \nIn frosty winter one might doubt\nWhich bird is luckier now. \n\nBut let the trees burst out in leaf, \nAnd nests be on the bough, \nWhich linnet is the luckier bird, \nOh who could doubt it now? (1-8) \nRossettiโs next book, A Pageant and Other Poems is most notable for the two sonnet sequences it contains. The first sequence, โMonna Innominataโ, is prefaced by a brief discussion of Elizabeth Barrett Browningโs Portuguese sonnets. In it Rossetti explains, โhad the Great Poetess of our own day and nation only been unhappy instead of happy, her circumstances would have invited her to bequeath to us in lieu of the โPortuguese Sonnets,โ an inimitable โdonna innominataโ drawn not from fancy but from feeling, and worthy to occupy a niche beside Beatrice and Laura.โ Rossettiโs sonnet sequence features a female speaker who examines the relationship between hope, earthly love and spiritual longing. The second sequence in the collection, โLater Lifeโ, is more explicitly devotional. \nRossettiโs 1893 Verses is dedicated to religious themes. The poems contained in it are drawn from three earlier collections of devotional prose and poems, Called to be Saints (1881), The Face of the Deep: A Devotional Commentary on the Apocalypse (1892) and Time Flies: A Reading Diary (1885). In all, Rossetti wrote five books of devotional prose, all of them published by the Society for Promoting Christian Knowledge. Rossetti also authored two collections of short stories, Commonplace and Other Short Stories (1870) and Speaking Likenesses (1874). A posthumous collection of unpublished poems, entitled New Poems, was edited by William Michael Rossetti and published in 1896. Maude, a novella written in 1850, was published in 1897. \nEditors and critics have classified Rossettiโs poems in various ways. Adam Roberts notes that Rossettiโs poems have frequently been divided into two generic categories: lyric poems and childrenโs verse. Roberts argues โthat this two-fold division ignores a widespread of her poetry, including much powerful love poetry and a fine variety of sonnetsโ (Victorian Culture and Society, 194). Others have focused on the creation of thematic categories. Writing in 1931, Eleanor Thomas identified Rossettiโs poetry with โthe romantic and the religiousโ and noted her interest in โpersonal confession, transcendentalism, [and] idealismโ (Christina Georgina Rossetti, 1). In The Poetical Works of Christina Georgina Rossetti, William Michael Rossetti included an appendix entitled โSome Leading Themes, or Key-Notes of Feeling in the Poems of Christina Rossettiโ. The seven themes he lists are personal experiences and emotions; death; aspiration for rest; vanity of vanities; love of animals; winter; and the loveliness of the rose. \n===
[[GOBLIN MARKET]] and [[Goblin Market Theories]]\n\n+++[Remember]\n\nRemember me when I am gone away, \nGone far away into the silent land; \nWhen you can no more hold me by the hand, \nNor I half turn to go yet turning stay. \nRemember me when no more, day by day, \nYou tell me of our future that you plann'd: \nOnly remember me; you understand \nIt will be late to counsel then or pray. \nYet if you should forget me for a while \nAnd afterwards remember, do not grieve: \nFor if the darkness and corruption leave \nA vestige of the thoughts that once I had, \nBetter by far you should forget and smile \nThan that you should remember and be sad. \n===\n\n+++[The Convent Threshold]\n!!Commentary and Questions\nChristina Rosset's "Convent Threshold" is a kind of love letter, addressed by a woman aspiring for an existence transcending this sinful world to her former earthbound lover. \nThe woman admits that she was once in earthly love with her lover, but she has now renounced that love ("soiled with mud, / With scarlet mud") and aspires instead for a purified, spiritual love. The renunciation involves no less personal sacrifice with her than with her lover, but it brings ultimate spiritual joy to both.\nhttp://www.victorianweb.org/authors/crossetti/kashtan6.html\nChristina Rossetti's dramatic monologue "The Convent Threshold" presents a situation which resembles that of Dante Gabriel Rossetti's The Blessed Damozel but takes the opposite perspective on that situation. In the former poem the speaker's love for her beloved has somehow caused their relatives' blood to be shed, and accordingly, as the title of the poem indicates, the speaker has chosen to expiate her guilt by entering a convent. In her monologue she urges her beloved to do likewise: to turn away from the evanescent pleasures of this life and to repent his sins, thereby ensuring that the two of them can reunite in heaven if not on earth. She emphasizes that if he fails to repent and thus suffers spiritual death, her own afterlife reward will suffer as a result:\n<<<\nHow shall I rest in Paradise,\nOr sit on steps of heaven alone\nIf Saints and Angels spoke of love\nShould I not answer from my throne:\nHave pity upon me, ye my friends,\nFor I have heard the sound thereof:\nShould I not turn with yearning eyes,\nTurn earthwards with a pitiful pang?\nOh save me from a pang in heaven.\n<<<\nThe speaker imagines herself in the same predicament as the blessed damozel: in heaven, but unable to enjoy it in the absence of her beloved. Dante Gabriel Rossetti's poem presented this situation from the viewpoint of the earthbound male beloved, who apparently imagined this vision in order to congratulate himself on how much the damozel loved him. By contrast, Christina Rossetti adopts the perspective of the female lover, who conjures up a similar hypothetical situation for a seemingly more altruistic purpose. In adopting the woman's perspective Christina Rossetti avoids the trap of objectifying the beloved, as her brother's poem had done. Furthermore, she permits he man to control his own destiny. Her speaker urges the beloved to repent and earn entry into heaven, suggesting that he can choose whether or not to do so. On the other hand, Dante Gabriel Rossetti presented the damozel as praying that God would allow the speaker into heaven, thus taking the choice of the speaker's afterlife destination out of his own hands.\n!!Questions\n<<<\n1. Does it make sense to read "The Convent Threshold" as a feminist version of "The Blessed Damozel," assuming that one poem directly influenced the other? Or do both poems feature the same type of male chauvinism?\n2. This poem's description of heaven focuses on its sensual beauty and its associated pleasures: "Beyond the gulf a gleaming strand / Of mansions where the righteous sup; / Who sleep at ease among their trees." Would Christina Rossetti's contemporaries have criticized her conception of heaven as overly materialistic?\n3. Anglican convents were a relatively new phenomenon at the time of this poem, and some scholars believe that the act of entering a convent had feminist implications. Should we read the speaker's decision to enter a convent in this way? \n4. In lines 85-109 the speaker narrates a dream she has had, which she takes to signify that "Knowledge is strong, but love is sweet; [...] All is small / Save love, for love is all in all." How does this dream function in the overall scheme of the poem? What connection does it have to contemporary debates over science and religion?\n<<<\n===
All the Rossettis were fond of the handsome and impressive William Bell Scott (q.v.) and, eventually, his good-hearted chatterbox wife, Laetitia. The Scotts actually lived separately under the same roof, but the arrangement was amicable. William Rossetti, the financial mainstay of the family and editor of the Pre-Raphaelite journal The Germ, was the first to visit Scott in Newcastle in 1850. Dante Gabriel (q.v.) came in 1853, Christina in 1858 and Maria in 1860. It was through Bell Scott that Christina became acquainted with the Durham poet Dora Greenwell (q.v.) . Christina's work of the 1850s is pervaded by a sense of melancholy often associated with unhappy love, leading one modern biographer to suggest a frustrated passion for Bell Scott, whom she had first met in London in 1847. \nThe year 1858 probably marked the high point of Christina's poetry. It was also the year of 'the great stink' in London, prompting a trip to see the Scotts. The party went on a picnic to Sunderland on 29 June 1858. The doggerel manuscript poem Christina wrote on the occasion is brightly cheerful: \n... from Newcastle to Sunderland\nUpon a misty morn in June\nWe took the train: on either hand\nGrimed streets were changed for meadows soon. \nUmbrellas, tarts and sandwiches\nSustained our spirits' temperate flow\nWith potted jam, and cold as snow\nRough-coated, sunburnt oranges. \nbut on the same day Christina wrote the beautiful 'Up-Hill' and 'Today and Tomorrow', of all her poems the bleakest. Again it stresses her sad isolation while the world around her blossoms and rejoices. Her frustration is unendurable and she wishes for death. Alice Meynell thought the poem contained more passion 'than in any other poem written by a woman'. Christina's poem 'By the Sea' was also written in 1858 and may reflect her North East trip (the Scotts took her to Marsden Bay also). Christina spent a day at Wallington Hall with Laetitia Scott, visiting Lady Pauline and Sir Walter Trevelyan. She got on well with her hostess and admired Lady Pauline's social graces \nThe unpublished version of the poem 'Parting after Parting' was titled 'Written in the train from Newcastle': \nParting after parting\nAll one's life long:\nIt's a bitter pang, parting\nWhile life and love are strong \nIn October 1859, Christina travelled to Newcastle again in the company of Lady Pauline to stay with Laetitia Scott for a few weeks. The Scotts and Alice Boyd were now known as the Sun, Moon and Star, Alice having rather displaced Maria Rossetti in Bell Scott's affections, though all remained friends. After this visit, Christina wrote a number of poems concerning romantic triangles, female rivalry and unkind sisterhood - at odds with her famous Goblin Market, published in 1862. \n[source: http://www.csulb.edu/~csnider/c.rossetti.html]\n[source: http://online.northumbria.ac.uk/faculties/art/humanities/cns/m-rosetti1.html]
[img[images\srossetti1.gif]]\n|[img[images\srossetti2.gif]]||[img[images\srossetti3.gif]]
+++^[Useful dvd and video sites]\nhttp://forums.afterdawn.com/\nhttp://dvd.box.sk/\nhttp://club.cdfreaks.com/\n===\n\n\n
/***\n| Name|CloseOnCancelPlugin|\n| Description|Closes the tiddler if you click new tiddler then cancel. Default behaviour is to leave it open|\n| Version|3.0 ($Rev: 1845 $)|\n| Date|$Date: 2007-03-16 15:19:22 +1000 (Fri, 16 Mar 2007) $|\n| Source|http://mptw.tiddlyspot.com/#CloseOnCancelPlugin|\n| Author|Simon Baird <simon.baird@gmail.com>|\n| License|http://mptw.tiddlyspot.com/#TheBSDLicense|\n***/\n//{{{\nmerge(config.commands.cancelTiddler,{\n\n handler_orig_closeUnsaved: config.commands.cancelTiddler.handler,\n\n handler: function(event,src,title) {\n this.handler_orig_closeUnsaved(event,src,title);\n if (!store.tiddlerExists(title) && !store.isShadowTiddler(title))\n story.closeTiddler(title,true);\n return false;\n }\n\n});\n\n//}}}\n\n
The Politics of Tropical Oils\nSo why has coconut oil gotten such a bad rap in the recent past? After all, much of the research supporting coconut oil as a healthy fat has been around for some time. The answer is politics and economics. Coconut oil was heavily used in the US at one time, being used for baking, pastries, frying, and theater popcorn. But starting in the 1980s some very powerful groups in the US, including the American Soybean Association (ASA), the Corn Products Company (CPC International) and the Center for Science in the Public Interest (CSPI), began to categorically condemn all saturated oils. Faulty science was used to convince the public that ALL saturated fats were unhealthy, when in fact saturated fats rich in the medium chain fatty acids, like lauric acid, are very healthy.\n\nThese organizations were/are aided by the United States Food and Drug Administration (FDA), many of whose key personnel are recruited from and return to the vegetable oil industry.\n\nThe result was that most people switched to vegetable oils, and the main source of lauric acid from tropical oils in the American diet was lost. The countries that these tropical oils came from, mainly the Philippines and Malaysia, were too poor to counter these untrue claims with advertising investments for the truth. It is only recently that the health benefits of these tropical oils are starting to become rediscovered. Much of the research can be found on the www.coconut-info.com website.\n\nSource: [[Coconut Oil is The Healthiest Oil On Earth! (by Brian Shilhavy)|http://www.alternative-healthzine.com/html/0108_2.html]]\n\nBodyshop hair stuff\n\nHydrogenated Coconut Oil, Caprylic/Capric Triglyceride, PEG-8 Beeswax, Hydrogenated Vegetable Oil, Lanolin, Copernica Cerifera (Caranuba) Wax, Octyl-dodecanol, Fragrance, Daucus Carota Sativa (Carrot) Oil, Propylparaben, Methylparaben, Tocopherol, Mica, Titanium Dioxide, Iron Oxides
Background: #fff\nForeground: #000\nPrimaryPale: #8cf\nPrimaryLight: #18f\nPrimaryMid: #002669\nPrimaryDark: #014\nSecondaryPale: #ffc\nSecondaryLight: #fe8\nSecondaryMid: #db4\nSecondaryDark: #841\nTertiaryPale: #eee\nTertiaryLight: #ccc\nTertiaryMid: #999\nTertiaryDark: #666\nError: #f88\n
/%\n|Name|CommentScript|\n|Source|http://www.TiddlyTools.com/#CommentScript|\n|Version|0.0.0|\n|Author|Eric Shulman - ELS Design Studios|\n|License|http://www.TiddlyTools.com/#LegalStatements <<br>>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|\n|~CoreVersion|2.1|\n|Type|script|\n|Requires|InlineJavascriptPlugin, NestedSlidersPlugin|\n|Overrides||\n|Description|form to enter feedback/comments that are automatically added to tiddler content|\n\nUsage: <<tiddler CommentScript>>\n\nTo indicate the location within the containing tiddler where new comments are to be saved, embed the keyword "comment", enclosed in TW begin/end comment syntax in the containing tiddler source. If the keyword marker is omitted, new comments are automatically appended to the end of the tiddler.\n\n%/+++[add 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";\n </script>\n===\n<script>\nwindow.addTiddlerComment = function(place) {\n var here=story.findContainingTiddler(place); if (!here) return;\n var title=here.getAttribute("tiddler");\n var tiddler=store.getTiddler(title);\n var pos=tiddler.text.indexOf("/%"+place.id+"%/");\n if (pos==-1) pos=tiddler.text.length;\n var heading="comment from "+config.options.txtUserName+" on "+(new Date()).toLocaleString();\n var newtxt=tiddler.text.substr(0,pos);\n newtxt+="+++!!!!!["+heading+"]>\sn"+place.value+"===\sn";\n newtxt+=tiddler.text.substr(pos);\n store.saveTiddler(tiddler.title,tiddler.title,newtxt,tiddler.modifier,tiddler.modified,tiddler.tags);\n story.refreshTiddler(title,1,true);\n}\n</script>
Partly because of her shyness and partly just because she was a woman, Christina Rossetti was never completely a part of the Pre- Raphaelite Brotherhood. Nevertheless, her Goblin Market and Other Poems (1862) was the first unalloyed literary success the Brotherhood enjoyed, and there is a loose parallel between her fondness for the rhythms of folk songs and the Pre-Raphaelite interest in things medieval. Since she began with such success, both her brother and her publisher were eager that she follow it up at once, but her next volume of poetry, The Prince's Progress and Other Poems, was not ready until 1866. It sold well, but the critics saw at once that the best poems in it were not quite the equal of the best in her first collection. In fact, "Goblin Market," one of her first poems, remains her best.\n\nhttp://www.scholars.nus.edu.sg/victorian/authors/crossetti/rossetti5.html\n\nThemes of frustrated love and an understated tension between desire and renunciation characterize her more serious work. Separated lovers often appear in her poems, and regret for life unfulfilled alternates with what one critic calls a death wish. But there is another strain in some of her poetry that can be called Gothic or even macabre--goblins, serpents, wombats, ratels, and lizards turn up in her verses. Growing up, the Rossetti siblings read Crabbe, Coleridge, Shelley, and Keats, to be sure; but they also read with delight Ann Radcliffe (Christina at one time undertook to write a biography of Mrs. Radcliffe but was unable to gather the necessary materials) and Monk Lewis. Consider the following fragment:\n\n I have a friend in ghostland, --\n Early found, ah me how early lost! --\n Blood-red seaweed drips along that coastland\n By the strong sea wrenched and tost.\n\n If I wake he hunts me like a nightmare:\n I feel my hair stand up, my body creep:\n Without light I see a blasting sight there,\n See a secret I must keep.\n\n\nVirginia Woolf's appreciation of her strikes the same notes:\n\n Death, oblivion, and rest lap round your songs with their dark wave. And then, incongruously, a sound of scurrying and laughter is heard. There is a patter of animals' feet and the odd guttural notes of rooks and the snufflings of obtuse furry animals grunting and nosing. For you were not a pure saint by any means. You pulled legs; you tweaked noses. You were at war with all humbug and pretence.\n\nPerhaps she realized that she was unable to write anything better than "Goblin Market," or perhaps her "failure" to surpass herself is explained by her turn away from poetry to children's stories and religious materials. Sing-Song: A Nursery Rhyme Book came out in 1872, and after 1875 she was very much involved with the Society for Promoting Christian Knowledge, for whom she wrote several prose works, including Called to be Saints (1876). But she never entirely stopped writing poetry; A Pageant and Other Poems (1881) includes the "Monna Innominata" sonnets, which are among her best. \n\nhttp://www.eng.fju.edu.tw/crit.97/C_Rossetti/Christina.htm#Women's\n\n# Regarded as a Woman Poet-- "Though evidence of [C Rossetti's and Emily Dickenson's] creative process was available in the form of drafts of poems and worksheets, the image of the inspired child/woman who does not labor over her production was more congenial to male critics" (Leder 187) e.g. Christina considered as "at best a spontaneous and at worst a naive technician."\n# Regarded as a Poet-Saint (1862-1899)--e.g. "Up-Hill"\n\n Arthur Symons's review in July 1887 sees "sincere piety" in this poem (Charles 27).\n\n# the tradition of the Aesthetes--Christina Rossetti's medievalist combination of eros and agape, of the phenomenal and the ideal, of the sensual and the spiritual, became central to the art of the aesthetes in the 1880s and 1890s (Harrison 55). --decadent or religious?\n# the tradition of Romantic love--Many of Rossetti's love poems, ...serve to expose misguided, that is, transient earthly ideals of love; in so doing, they savor love's absence, love's decay, or its demise; often they express the laments of love's deluded victim (Harrison 55-56)\n\n# Throughout much Pre-Raphaelite love poetry, a dialectic of desire and renunciation is at work thematically. Whether a depicted passion is visceral or idealized, its object and therefore any fulfillment of desire are almost always unattainable. [In Christina Rossetti's poems,] renunciation, or at least withdrawal from teh active pursuit of love, follows disilusionment; often the speaker craves death, either as an anodyne or as a transposition to an afterlife of absolute Love..." (Harrison 92; 102). feminist readings--from poetry of renunciation and reticence, to that of exclusion, sexual fantary and social criticism.\n\nhttp://www.gerardmanleyhopkins.org/lectures_2001/christina_rossetti.html
Buyer Beware|http://www.pcbuyerbeware.co.uk/|
//{{{\nversion.extensions.tableOfContents = {major: 2, minor: 3, revision: 2, date: new Date(2007,3,22)};\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//{{{\n// define defaults for cookie-based option values\nif (config.options.txtTOCSortBy==undefined) config.options.txtTOCSortBy="modified";\nif (config.options.txtTOCListSize==undefined) config.options.txtTOCListSize=19;\nif (config.options.chkTOCShow==undefined) config.options.chkTOCShow=true;\nif (config.options.chkTOCIncludeHidden==undefined) config.options.chkTOCIncludeHidden=false;\n\nconfig.shadowTiddlers.AdvancedOptions += "\sn<<option chkTOCIncludeHidden>> include hidden tiddlers in TableOfContents";\n\n// define macro "tableOfContents" to render controls\nconfig.macros.tableOfContents = { label: "contents" };\nconfig.macros.tableOfContents.cmdMax=7; // index of maximum command item\n\nconfig.macros.tableOfContents.css = '\s\n.TOC { padding:0.5em 1em 0.5em 1em; }\s\n.TOC a { padding:0em 0.25em 0em 0.25em; color:inherit; }\s\n.TOCList { width: 100%; font-size:8pt; margin:0em; }\s\n';\n\nconfig.macros.tableOfContents.html = '\s\n<div style="text-align:right">\s\n <span style="float:left">\s\n <a href="JavaScript:;" id="TOCMenu" style="padding: 0em;"\s\n onclick="onClickTOCMenu(this)" title="show/hide table of contents">%label%</a>\s\n </span>\s\n <a href="JavaScript:;" id="TOCSmaller" style="display:inline"\s\n onclick="resizeTOC(this)" title="reduce list size">–</a>\s\n <a href="JavaScript:;" id="TOCLarger"style="display:inline"\s\n onclick="resizeTOC(this)" title="increase list size">+</a>\s\n <a href="JavaScript:;" id="TOCMaximize"style="display:inline"\s\n onclick="resizeTOC(this)" title="maximize/restore list size">=</a>\s\n</div>\s\n';\n\nconfig.macros.tableOfContents.handler = function(place,macroName,params) { \n var parsedParams = new Array();\n parsedParams['label']=this.label;\n parsedParams['inline']=false;\n while (params.length>0) {\n if (params[0]=="label:none")\n parsedParams['label']="";\n else if (params[0].substr(0,6)=="label:")\n parsedParams['label']=params[0].substr(6);\n if (params[0].substr(0,7)=="prompt:")\n parsedParams['prompt']=params[0].substr(7);\n if (params[0].substr(0,8)=="padding:")\n parsedParams['padding']=params[0].substr(8);\n if (params[0].substr(0,7)=="margin:")\n parsedParams['margin']=params[0].substr(7);\n if (params[0].substr(0,5)=="sort:")\n parsedParams['sortby']=params[0].substr(5);\n if (params[0].substr(0,5)=="date:")\n parsedParams['date']=params[0].substr(5);\n if ((params[0]=="size:auto")||(params[0]=="size:0"))\n parsedParams['autosize']=true;\n else if (params[0] && (params[0].substr(0,5)=="size:"))\n parsedParams['requestedSize']=params[0].substr(5);\n if (params[0].substr(0,6)=="width:")\n parsedParams['width']=params[0].substr(6);\n if (params[0]=="hidelist")\n parsedParams['hidelist']=true;\n if (params[0]=="inline")\n parsedParams['inline']=true;\n if (params[0]=="-title")\n parsedParams['hide_title']=true;\n if (params[0]=="-date")\n parsedParams['hide_date']=true;\n if (params[0]=="-author")\n parsedParams['hide_author']=true;\n if (params[0]=="-tags")\n parsedParams['hide_tags']=true;\n if (params[0]=="-missing")\n parsedParams['hide_missing']=true;\n if (params[0]=="-orphans")\n parsedParams['hide_orphans']=true;\n if (params[0]=="-system")\n parsedParams['hide_system']=true;\n params.shift(); \n }\n setStylesheet(config.macros.tableOfContents.css,"tableOfContents");\n var newTOC=createTiddlyElement(place,parsedParams['inline']?"span":"div",null,"TOC",null)\n if (parsedParams['margin']) { newTOC.style.margin=parsedParams['margin']; }\n if (parsedParams['padding']) { newTOC.style.padding=parsedParams['padding']; }\n if (parsedParams['label']!="") newTOC.innerHTML=config.macros.tableOfContents.html.replace(/%label%/,parsedParams['label']);\n var newTOCList=createTOCList(newTOC,parsedParams)\n refreshTOCList(newTOCList);\n store.addNotification(null,reloadTOCLists); // reload listbox after every tiddler change\n}\n\n// IE needs explicit global scoping for functions/vars called from browser events\nwindow.onChangeTOCList=onChangeTOCList;\nwindow.onClickTOCList=onClickTOCList;\nwindow.onDblClickTOCList=onDblClickTOCList;\nwindow.reloadTOCLists=reloadTOCLists;\nwindow.refreshTOCList=refreshTOCList;\nwindow.onClickTOCMenu=onClickTOCMenu;\nwindow.resizeTOC=resizeTOC;\n \nfunction createTOCList(place,params)\n{\n var theList = createTiddlyElement(place,"select",null,"TOCList",params['prompt'])\n theList.params=params;\n theList.onchange=onChangeTOCList;\n theList.onclick=onClickTOCList;\n theList.ondblclick=onDblClickTOCList;\n theList.onkeyup=onKeyUpTOCList;\n theList.style.display=config.options.chkTOCShow ? "block" : "none" ;\n theList.sortBy=config.options.txtTOCSortBy;\n theList.dateFormat="DD MMM YYYY";\n theList.requestedSize=config.options.txtTOCListSize;\n theList.expandall=false;\n theList.cmdMax=config.macros.tableOfContents.cmdMax;\n if (params['hide_title']) theList.cmdMax--;\n if (params['hide_date']) theList.cmdMax--;\n if (params['hide_author']) theList.cmdMax--;\n if (params['hide_tags']) theList.cmdMax--;\n if (params['hide_missing']) theList.cmdMax--;\n if (params['hide_orphans']) theList.cmdMax--;\n if (params['hide_system']) theList.cmdMax--;\n if (params['sortby'])\n { theList.sortBy=params['sortby']; theList.noSortCookie=true; }\n if (params['date'])\n { theList.dateFormat=params['date']; }\n if (params['autosize'])\n { theList.autosize=true; theList.noSizeCookie=true; }\n if (params['requestedSize'])\n { theList.requestedSize=params['requestedSize']; theList.noSizeCookie=true; }\n if (params['width'])\n { theList.style.width=params['width']; }\n if (params['hidelist'])\n { theList.style.display ="none" ; theList.noShowCookie=true; }\n if (params['expandall'])\n { theList.expandall=true; }\n return theList;\n}\n\nfunction onChangeTOCList()\n{\n var thisTiddler=this.options[this.selectedIndex].value;\n if ((this.size==1)&&(thisTiddler!='')&&(this.selectedIndex>this.cmdMax))\n story.displayTiddler(null,thisTiddler,1);\n refreshTOCList(this);\n return false;\n}\n\nfunction onClickTOCList(e)\n{\n\n if (!e) var e = window.event;\n if (this.size==1)\n return; // don't toggle display for droplist\n if (e.shiftKey)\n { this.expandall=!this.expandall; refreshTOCList(this);}\n e.cancelBubble = true; if (e.stopPropagation) e.stopPropagation();\n return true;\n}\n\nfunction onDblClickTOCList(e)\n{\n if (!e) var e = window.event;\n var thisTiddler=this.options[this.selectedIndex].value;\n if ((thisTiddler!='')&&(this.selectedIndex>this.cmdMax))\n story.displayTiddler(null,thisTiddler,1);\n e.cancelBubble = true; if (e.stopPropagation) e.stopPropagation();\n return false;\n}\n\nfunction onKeyUpTOCList(e)\n{\n if (!e) var e = window.event;\n if (e.keyCode!=13) return true;\n var thisTiddler=this.options[this.selectedIndex].value;\n if ((thisTiddler!='')&&(this.selectedIndex>this.cmdMax))\n story.displayTiddler(null,thisTiddler,1);\n e.cancelBubble = true; if (e.stopPropagation) e.stopPropagation();\n return false;\n}\n\nfunction reloadTOCLists()\n{\n var all=document.all? document.all.tags("select") : document.getElementsByTagName("select");\n for (var i=0; i<all.length; i++)\n if (all[i].className=="TOCList")\n { all[i].selectedIndex=-1; refreshTOCList(all[i]); }\n}\n \nfunction refreshTOCList(theList)\n{\n // DEBUG var starttime=new Date();\n var selectedIndex = theList.selectedIndex;\n if (selectedIndex==-1) selectedIndex=0;\n var sortBy = theList.sortBy;\n var showHidden = config.options.chkTOCIncludeHidden\n && !(config.options.chkHttpReadOnly && readOnly);\n\n if (selectedIndex==0) sortBy=theList.sortBy; // "nnn tiddlers" heading\n else if (selectedIndex<=theList.cmdMax)\n sortBy=theList.value;\n else {\n if (theList.options[theList.selectedIndex].value=='') expandTOC(theList);\n return;\n }\n theList.sortBy = sortBy;\n if (!theList.noSortCookie)\n { config.options.txtTOCSortBy=sortBy; saveOptionCookie("txtTOCSortBy"); }\n\n // get the list of tiddlers and filter out 'hidden' tiddlers (i.e., tagged with "excludeLists")\n var tiddlers = [];\n switch (sortBy) {\n case "missing":\n tiddlers = store.getMissingLinks();\n break;\n case "tags":\n tiddlers = store.getTags();\n break;\n case "orphans":\n var titles = store.getOrphans();\n for (var t = 0; t < titles.length; t++)\n if (showHidden || store.getTiddler(titles[t]).tags.find("excludeLists")==null)\n tiddlers.push(titles[t]);\n break;\n case "system":\n var temp = store.getTaggedTiddlers("systemTiddlers");\n for (var t = 0; t < temp.length; t++)\n if (showHidden || temp[t].tags.find("excludeLists")==null)\n tiddlers.pushUnique(temp[t].title,true);\n var temp = store.getTaggedTiddlers("systemConfig");\n for (var t = 0; t < temp.length; t++)\n if (showHidden || temp[t].tags.find("excludeLists")==null)\n tiddlers.pushUnique(temp[t].title,true);\n for (var t in config.shadowTiddlers) tiddlers.pushUnique(t,true);\n tiddlers.sort();\n break;\n default:\n var temp = store.getTiddlers(sortBy);\n for (var t = 0; t < temp.length; t++)\n if (showHidden || temp[t].tags.find("excludeLists")==null)\n tiddlers.push(temp[t]);\n }\n\n // clear current list contents\n while (theList.length > 0) { theList.options[0] = null; }\n theList.saved=null;\n\n // add heading and control items to list\n var i=0;\n var theHeading=tiddlers.length+' tiddlers:';\n if (sortBy=='missing') theHeading=tiddlers.length+' missing tiddlers:';\n if (sortBy=='orphans') theHeading=tiddlers.length+' orphaned tiddlers:';\n if (sortBy=='tags') theHeading=tiddlers.length+' tags:';\n if (sortBy=='system') theHeading=tiddlers.length+' system tiddlers:';\n var indent=String.fromCharCode(160)+String.fromCharCode(160);\n var sel=">";\n theList.options[i++]=new Option(theHeading,'',false,false);\n if (!theList.params['hide_title']) \n theList.options[i++]=new Option(((sortBy=="title")?sel:indent)+' [by title]','title',false,false);\n if (!theList.params['hide_date']) \n theList.options[i++]=new Option(((sortBy=="modified")?sel:indent)+' [by date]','modified',false,false);\n if (!theList.params['hide_author']) \n theList.options[i++]=new Option(((sortBy=="modifier")?sel:indent)+' [by author]','modifier',false,false);\n if (!theList.params['hide_tags']) \n theList.options[i++]=new Option(((sortBy=="tags")?sel:indent)+' [by tags]','tags',false,false);\n if (!theList.params['hide_missing']) \n theList.options[i++]=new Option(((sortBy=="missing")?sel:indent)+' [missing]','missing',false,false);\n if (!theList.params['hide_orphans']) \n theList.options[i++]=new Option(((sortBy=="orphans")?sel:indent)+' [orphans]','orphans',false,false);\n if (!theList.params['hide_system']) \n theList.options[i++]=new Option(((sortBy=="system")?sel:indent)+' [system]','system',false,false);\n // output the tiddler list\n switch(sortBy)\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 // continue with same logic as for 'modifier'...\n case "modifier":\n var lastSection = "";\n for (var t = 0; t < tiddlers.length; t++)\n {\n var tiddler = tiddlers[t];\n var theSection = "";\n if (sortBy=="modified") theSection = tiddler.modified.convertToLocalYYYYMMDDHHMM().substr(0,8);\n if (sortBy=="modifier") theSection = tiddler.modifier;\n if (theSection != lastSection)\n {\n lastSection = theSection;\n if (sortBy=="modified") theSection = tiddler.modified.formatString(theList.dateFormat);\n theList.options[i++] = new Option('+ '+theSection,"",false,false);\n }\n theList.options[i++] = new Option(indent+indent+tiddler.title,tiddler.title,false,false);\n }\n expandTOC(theList);\n break;\n case "tags":\n // tagged tiddlers, by tag\n var tagcount=0;\n var lastTag = null;\n for (var t = 0; t < tiddlers.length; t++) // actually a list of tags, not tiddlers...\n {\n var theTag = tiddlers[t][0];\n var tagged = new Array();\n var temp = store.getTaggedTiddlers(theTag);\n for(var r=0; r<temp.length; r++)\n if (showHidden || temp[r].tags.find("excludeLists")==null)\n tagged.push(temp[r]);\n if (tagged.length)\n {\n tagcount++;\n theList.options[i++]= new\n Option('+ '+theTag+" ("+tagged.length+")","",false,false);\n for(var r=0; r<tagged.length; r++)\n theList.options[i++] = new\n Option(indent+indent+tagged[r].title,tagged[r].title,false,false);\n }\n }\n // count untagged tiddlers\n var temp = store.getTiddlers("title");\n var c=0; for (var r=0; r<temp.length;r++) if (!temp[r].tags.length) c++;\n // create 'pseudo-tag' listing untagged tiddlers (if any)\n if (c>0)\n {\n theList.options[i++] = new Option("+ untagged ("+c+")","",false,false);\n for (var r=0; r<temp.length;r++) if (!temp[r].tags.length)\n theList.options[i++] = new\n Option(indent+indent+temp[r].title,temp[r].title,false,false);\n }\n theList.options[0].text=tagcount+' tags:';\n expandTOC(theList);\n break;\n case "missing":\n case "orphans":\n case "system":\n for (var t = 0; t < tiddlers.length; t++)\n theList.options[i++] = new Option(tiddlers[t],tiddlers[t],false,false);\n break;\n }\n theList.selectedIndex=selectedIndex; // select current control item\n theList.size = (theList.autosize)?theList.options.length:theList.requestedSize;\n // DEBUG var endtime=new Date();\n // DEBUG alert("refreshTOC() elapsed time: "+(endtime-starttime)+" msec");\n}\n\n// show/hide branch of TOCList based on current selection\nfunction expandTOC(theList)\n{\n var selectedIndex = theList.selectedIndex;\n if (selectedIndex==-1) selectedIndex=0;\n var sortBy = theList.sortBy;\n\n // don't collapse/expand list for alpha-sorted "flatlist" TOC contents\n if ((sortBy=="title")||(sortBy=="missing")||(sortBy=="orphans")||(sortBy=="system"))\n return;\n // or list control items\n if ((selectedIndex>0)&&(selectedIndex<=theList.cmdMax))\n return;\n\n var theText = theList.options[selectedIndex].text;\n var theValue = theList.options[selectedIndex].value;\n // save fully expanded list contents (if not already saved)\n if (!theList.saved)\n {\n theList.saved = new Array();\n for (var i=0; i < theList.length; i++)\n {\n opt = theList.options[i];\n theList.saved[i] = new Option(opt.text, opt.value, opt.defaultSelected, opt.selected);\n }\n }\n // clear current list contents\n while (theList.length > 0) { theList.options[0] = null; }\n\n // put back all items \n if (theList.expandall)\n {\n var i=0;\n for (var t=0; t<theList.saved.length; t++)\n {\n var opt=theList.saved[t];\n theList.options[i++] = new Option(opt.text,opt.value,opt.defaultSelected,opt.selected);\n if (opt.text==theText) selectedIndex=i-1;\n }\n theList.selectedIndex = selectedIndex;\n theList.size = (theList.autosize)?theList.options.length:theList.requestedSize;\n return;\n }\n\n // put back heading items until item text matches current selected heading\n var i=0;\n for (var t=0; t<theList.saved.length; t++)\n {\n var opt=theList.saved[t];\n if ((opt.value=='')||(i<=theList.cmdMax))\n theList.options[i++] = new Option(opt.text,opt.value,opt.defaultSelected,opt.selected);\n if (opt.text==theText)\n break;\n }\n selectedIndex=i-1; // this is the NEW index of the current selected heading\n // put back items with value!='' until value==''\n for ( t++; t<theList.saved.length; t++)\n {\n var opt=theList.saved[t];\n if (opt.value!='')\n theList.options[i++] = new Option(opt.text,opt.value,opt.defaultSelected,opt.selected);\n if (opt.value=='')\n break;\n }\n // put back remaining items with value==''\n for ( ; t<theList.saved.length; t++)\n {\n var opt=theList.saved[t];\n if (opt.value=='')\n theList.options[i++] = new Option(opt.text,opt.value,opt.defaultSelected,opt.selected);\n }\n theList.selectedIndex = selectedIndex;\n theList.size = (theList.autosize)?theList.options.length:theList.requestedSize;\n}\n\n// these functions process clicks on the 'control links' that are displayed above the listbox\nfunction getTOCListFromButton(which)\n{\n var theList = null;\n switch (which.id)\n {\n case 'TOCMenu':\n var theSiblings = which.parentNode.parentNode.parentNode.childNodes;\n var thePlace=which.parentNode.parentNode.parentNode.parentNode.parentNode.id;\n break;\n case 'TOCSmaller':\n case 'TOCLarger':\n case 'TOCMaximize':\n var theSiblings = which.parentNode.parentNode.childNodes;\n var thePlace=which.parentNode.parentNode.parentNode.parentNode.id;\n break;\n }\n for (var k=0; k<theSiblings.length; k++)\n if (theSiblings[k].className=="TOCList") { theList=theSiblings[k]; break; }\n // DEBUG if (theList) alert('found '+theList.className+' for '+which.id+' button in '+thePlace);\n return theList;\n}\n\nfunction onClickTOCMenu(which)\n{\n var theList=getTOCListFromButton(which);\n if (!theList) return;\n var opening = theList.style.display=="none";\n if(config.options.chkAnimate)\n anim.startAnimating(new Slider(theList,opening,false,"none"));\n else\n theList.style.display = opening ? "block" : "none" ;\n if (!theList.noShowCookie)\n { config.options.chkTOCShow = opening; saveOptionCookie("chkTOCShow"); }\n return(false);\n}\n\nfunction resizeTOC(which)\n{\n var theList=getTOCListFromButton(which);\n if (!theList) return;\n\n var size = theList.size;\n if (theList.style.display=="none") // make sure list is visible\n if(config.options.chkAnimate)\n anim.startAnimating(new Slider(theList,true,false,"none"));\n else\n theList.style.display = "block" ;\n switch (which.id)\n {\n case 'TOCSmaller': // decrease current listbox size\n if (theList.autosize) { theList.autosize=false; size=config.options.txtTOCListSize; }\n if (size==1) break;\n size -= 1; // shrink by one line\n theList.requestedSize = theList.size = size;\n break;\n case 'TOCLarger': // increase current listbox size\n if (theList.autosize) { theList.autosize=false; size=config.options.txtTOCListSize; }\n if (size>=theList.options.length) break;\n size += 1; // grow by one line\n theList.requestedSize = theList.size = size;\n break;\n case 'TOCMaximize': // toggle autosize\n theList.autosize = (theList.size!=theList.options.length);\n theList.size = (theList.autosize)?theList.options.length:theList.requestedSize;\n break;\n }\n if (!theList.noSizeCookie && !theList.autosize)\n { config.options.txtTOCListSize=size; saveOptionCookie("txtTOCListSize"); }\n}\n//}}}
Tabs are a way of displaying tiddlers in tabular form. Each tab is a separate tiddler; here's how it's done. NB There should be a double arrow bracket to start the code.\n\n<tabs "cookie" "tab name" "tool tip" "tiddler to be displayed">> \n\nwhich looks like this:\n\n<<tabs "cookie" "tab name" "tool tip" "tiddler to be displayed">>\n\nThe code:\n\n<tabs tabsClass [[tab name]] "tool tip" [[tiddler to be displayed]][[Here is another tab <hr>]] "Another Tab" [[<hr>]] >>\n\n----\n\n!Display a listing from a tab - Tag popup\n{{{\n<<tag help>>\n}}}\nwill result in <<tag help>>
<script>\nvar out=""\nvar tids=store.getTaggedTiddlers("Index");\nfor (var t=0; t<tids.length; t++) {\n var url=store.getTiddlerText("SiteUrl");\n if (!url) url=document.location.href;\n var\npermalink=encodeURIComponent(String.encodeTiddlyLink(tids[t].title));\n out+="[["+tids[t].title+"|"+url+"#"+permalink+"]]\sn"; \n}\nreturn out;\n</script>
My subject is imaginative writing: how itโs done and how to read it; how a writer develops his own distinctive voice and how the reader reacts to it; how the true voice and the public personality sometimes clash, confuse and contradict each other. My point of view is that of an endangered species that used to be called a man of letters, one of those unfortunate people who write not because they are Ancient Mariners with stories they are compelled to tell, or lessons they have to teach, still less because they are entranced by the sound of their own voices, but simply because, when they were young and impressionable, they fell in love with language as musicians fall in love with sound, and thereafter are doomed to explore this fatal attraction in as many ways as they can.\nSo what I have to say is based on a lifetime of trying to write in several genres: poems, novels and, above all, the kind of higher journalism that universities sometimes dignify as โthe literature of factโ: non-fiction books on subjects that happened to interest me - anything from suicide to poker - several of which began as long pieces for The New Yorker. I have also written a great deal of literary criticism which, when I was starting out half a century ago, had not yet become just another arcane academic discipline with a technical vocabulary and specialised interests; it was thought of, instead, as a creative activity in its own right - a writerโs way of describing how other writers handle language and what it is that makes them unique.\nFreelance writing is a precarious trade and I feel about it much the same as Mayakovsky felt about suicide: โI donโt recommend it to others,โ he wrote, and then put a gun to his head.\nShifting from one literary form to another may mean you end up mastering none, but it has at least one advantage: it keeps you alert. The art of poetry is altogether different from that of prose, just as writing fiction is different from writing non-fiction, and literary criticism is different from them all. Fifty years of writing for a living have taught me that there is only one thing the four disciplines have in common: in order to write well you must learn how to listen. And that, in turn, is one thing writers have in common with readers.\nWhat happens when you sit down with a book? Why do you do it? Whatโs the pleasure in it? Why do books, poems, even fragments go on being read years, sometimes centuries, after they were written, no matter how many times the death of literature is announced?\nIโm not talking about transmitting or acquiring information. On the contrary, at this present moment of change, when the industrial revolution has been superseded by a revolution in information technology, facts and figures have never been easier to come by, although now they are packaged in an appropriately new form.\nYet although computers may be convenient and efficient, they are not quite the neutral instruments they seem to be, and the subtle deformations they create in our attitude to language are dangerous to literature: โA philologist and his wife for dinner... His ambition is to determine, by the use of electrical computation machines, the basic structure of language. Word values and evocations can be determined, he tells me, by machinery, and thus successful poetry can be written by machines. So we get back to the obsolescence of the sentiments. I think of my own sense of language, its intimacy, its mysteriousness, its power to evoke, in a catarrhal pronunciation, the sea winds that blow across Venice or in a hard โAโ the massif beyond Kitzbuhel. But this, he tells me, is all sentimentality. The importance of these machines, the drive to legislate, to calibrate words like โhopeโ, โcourageโ, all the terms we use for the spirit.โ\nJohn Cheever wrote this some time in the 1950s, long before computers were just another domestic accessory, even before they had a proper name. The philologistโs reductive arrogance and the authorโs outraged response are opposing reactions to a simple truth that still applies: information and imaginative writing are different forms of knowledge, demanding different skills and wholly different attitudes to language.\nTo acquire facts efficiently, scan a synopsis or gut a newspaper, you have to master the art of reading diagonally. Real literature is about something else entirely and itโs immune to speed-reading. That is, itโs not about information, although you may gather information along the way. Itโs not even about storytelling, although sometimes that is one of its greatest pleasures. Imaginative literature is about listening to a voice. When you read a novel the voice is telling you a story; when you read a poem itโs usually talking about what its owner is feeling; but neither the medium nor the message is the point. The point is that the voice is unlike any other voice you have heard and it is speaking directly to you, communing with you in private, right in your ear, and in its own distinctive way. It may be talking to you from centuries ago or from a few years back or, as it were, from across the room - bang up to date in the here-and-now. The historical details are secondary; all that really matters is that you hear it - an undeniable presence in your head, and still very much alive, no matter how long ago the words were spoken: โWestern wind, when wilt thou blow That the small rain down can rain? Christ, if my love were in my arms And I in my bed again!โ\nNobody knows who wrote that poem or even precisely when he wrote it (probably early in the 16th century). But whoever it was is still very much alive - lonely, miserable, hunkered down against the foul weather and a long way from home, yearning for spring and warmth and his girl. Across a gap of five centuries, the man is still our contemporary.\nWriting is literally a lively art as well as a creative one. Writers donโt just โhold, as โtwere, a mirror up to natureโ by creating an imitation of life; they create a moment of life itself. That anonymous poet has left the sound of his voice on the air as distinctly as, say, Van Eyck fixed forever the tender marriage of Arnolfini and his wife in paint. The poem breathes from the page as vividly as the long-dead faces and their little dog breathe from the canvas. But it is a two-way pact: the writer makes himself heard and the reader listens in - or, more accurately, the writer works to find or create a voice that will stretch out to the reader, make him prick up his ears and attend.\nI think this is something like what happens in psychoanalysis. Of course, there has always been a close connection between imaginative literature and the talking cure, not least because Freud himself read widely and wrote compelling prose. Both these accomplishments were unusual in a scientist and they generated in him an even more unusual respect for the arts. When, during the celebration of his 70th birthday, one of his disciples hailed Freud as โthe discoverer of the unconsciousโ he answered, โThe poets and philosophers before me discovered the unconscious. What I discovered was the scientific method by which the unconscious can be studied.โ\nIn the early years, psychoanalysts often seemed to take this connection in a literal, straightforward way. Freud, with his interest in archaeology, laboured to dig up the past and recreate it, almost as a work of art. It was as if psychoanalysis were a kind of dual story-telling: the patient told his story from his point of view and the analyst told it back to him, using his interpretations to give it a new shape and meaning. Freud may have called his method scientific but, in practice, he worked more like a novelist than a researcher, creating form and significance out of the chaos of the unconscious, especially as it expresses itself in dreams, the one area in which the imagination of even the most unimaginative people reveals itself.\nAnd because dreams, in their dotty way, seem creative, this led to a fundamental misunderstanding of the nature of art, particularly in the early days of psychoanalysis, when the idea of sexual symbolism was fresh and exciting and subversive. Instead of reading, say, a poem as a work of art with a life of its own independent of the author - as something which, in Coleridgeโs words, โcontains in itself the reasons why it is so and not otherwiseโ - psychoanalysts with a taste for literature often used it as though it were mere dream-stuff, welling up uncensored and unbidden, another โroyal road to the unconsciousโ of the unfortunate author.\nA century later, many psychoanalysts tend to be less interested in telling stories or creating an archaeology of the unconscious by digging up the past. They have broadened their focus to study not just the patientโs self and his history but his whole inner world. Because this inner world includes both his self and what analysts call his โinternal objectsโ - imaginative representations of other people, both past and present, with whom the patient is continually entangled - the therapistโs task is to study how these โphantasyโ figures are projected in the transference and counter-transference - that is, in the minute changes in the relationship between the patient and the analyst as they occur, moment-by-moment, in the consulting room.\nFrom this more modern perspective, the story matters less than how it is told. Instead of looking for clues, the therapist is listening, like a poet or a critic, to the overtones and undertones, alert to the false notes, to whatever is off-key or flat, distinguishing between the genuine emotions and the fake, monitoring when and how and why he is moved and - equally important - when and why he is bored. Itโs about detail and nuance - the body-language and the silences, what is said and what is left unsaid. And as with literature, everything depends on the tone of voice.\nD.H. Lawrence was wrong, I think, when he wrote, โOne sheds oneโs sicknesses in books - repeats and presents oneโs emotions to be master of them.โ Art is about more than compensation and self-therapy, just as psychoanalysis is about more than relieving symptoms, and cure is too narrow a concept for what either can do at its best. A good poem is as hard to find as a good analysis but, once found, the effect of both is to make you - the reader, the patient - more fully and pleasurably alive.\nThe writer discovers this liberating and oddly invigorating relationship between psychic reality and aesthetic pleasure when he finds his own voice: it picks the locks, opens the doors and enables him to begin to say what he wants to say. But in order to find his voice he must first have mastered style, and style, in this basic sense, is a discipline that you acquire by hard work, like grammar or punctuation.\nVoice is altogether different: โI donโt mean style... โ Philip Roth wrote, in The Ghost Writer, โI mean voice: something that begins at around the back of the knees and reaches well above the head.โ Voice, he means, is the vehicle by which a writer expresses his aliveness, and Roth himself is all voice. Style, in the formal or flowery sense, bores him; he has, he has written, โa resistance to plaintive metaphor and poeticised analogyโ. His prose is immaculate yet curiously plain and unostentatious, at once unselfconscious and unmistakably his own. Someone once said that reading him is like opening a cellar door and hearing the boiler roar into life. Itโs also like being pitched headfirst into a family quarrel, with everyone shouting to be heard; it makes your heart contract with outrage and excitement both at once.\nBy comparing writing and psychoanalysis, Iโm implying that finding your own voice as a writer is like the tricky business of becoming an adult. For a writer, itโs also a basic instinct, like a bird marking out its territory, though not so straightforward or so musical. So how do you do it? First, you do what all young people do: you try on other peopleโs personalities for size and you fall in love. Young writers, in fact, are a peculiarly promiscuous lot; my schoolboy passions included Eliot, Auden, Housman, Aldous Huxley, one after the other with not a gap between them. Every so often serial promiscuity culminates in le coup de foudre: you hear a voice and recognise it and know itโs for you just as surely as you recognise Miss Right across the room before youโve ever spoken to her, even when - or especially when - she is hand-in-hand with Mr Wrong.\nFirst, the writerโs voice dazzles you and you read everything you can lay hands on. If that doesnโt cure you, the sickness goes critical and you become obsessed with the belovedโs whole take on life: what he did, where he went, even the kind of people he slept with. You donโt want to be like him, you want to be him. In retrospect, infatuation is as embarrassing as promiscuity, but for the writer it is a necessary part of the weary process of growing up. Thatโs what happened to me with Aldous Huxley when I was at school and with William Empson and D.H. Lawrence when I got to Oxford. But literary infatuation is the same as other youthful infatuations: it doesnโt last and itโs hard to be friends afterwards. These days, I still admire Empson in a guarded way, but, apart from a handful of stories and poems, I find Lawrenceโs shrill nagging almost intolerable. As Auden wrote in The Sea and the Mirror: โI am very glad I shall never / Be twenty and have to go through the business again, / The hours of fuss and fury, the conceit, the expense.โ\nThere are other writers whom you fall for and stay in love with. It happened to me when I was a schoolboy and was given a poem by John Donne to comment on. At that point I had never heard of Donne and I had to read the poem - โWitchcraft by a Pictureโ - several times before I began to understand it. But I was seduced, at first hearing, by the tone of voice. It was like listening to subtly charged talk, aroused, casual, witty and restlessly argumentative, a curious mixture of logic and tenderness - real tenderness for real women with appetites and sweaty palms and unreliable temperaments. This, I felt, was how poetry should be - alive with feeling yet utterly unsentimental, and with nothing conventionally poetical about it. For a lusty adolescent, shut away in a monkish, sports-mad boarding school where love of poetry was not a weakness you confessed to, it was a revelation, love at first sight, and I never really got over it.\nThis is an edited extract from โThe Writerโs Voiceโ by Al Alvarez, published in the UK by Bloomsbury on January 17 at ยฃ12.99. \nPublished: January 9 2005 16:04 | Last updated: January 9 2005 16:04
The best ever curries\nThe worldโs top curry chefs have got together for a great new book of recipes to whet your appetite\n!Britain\n!!Chicken tikka masala\nThe popularity of chicken tikka masala is testament to Britainโs centuries-old love affair with Indian food. Donโt be shy with the garlic and ginger - this dish is big on bold flavours. For a vegetarian version, cut a block of paneer or tofu into large cubes and add the pieces, without marinating, to the tomato sauce at the end of cooking. Serves 4\n675g boned chicken thighs, skinned\njuice of 2 limes\n1 tsp paprika\n11/2 tsp cumin seeds\n1/2 tsp coriander seeds\n2 shallots, roughly chopped\n4 large garlic cloves, roughly chopped\n4cm piece fresh root ginger, roughly chopped\n2 green chillies, deseeded and roughly chopped\n125g plain Greek-style yogurt\n1/2 tsp ground garam masala\n1 tbs vegetable oil\n!!!For the sauce\n400g canned chopped tomatoes\n1 rounded tsp tomato purรฉe\nhandful of coriander leaves, roughly chopped\n3cm piece fresh root ginger, grated\n1 tsp lime juice\n1/2 tsp caster sugar\n50g unsalted butter\n125ml single cream\nCut the chicken thighs into 3cm chunks. Combine the lime juice and paprika and mix with the chicken. Leave on one side. Heat a small heavy-based frying pan over a moderate heat. Add the cumin and coriander seeds and roast for about 1 minute, shaking the pan to prevent them scorching. As soon as they start to colour, tip them onto a plate to cool. Grind to a fine powder in a pestle and mortar, a spice mill or a coffee grinder.\nPut the shallots, garlic, ginger and chillies into a food processor. Drain the lime juice and paprika mixture from the chicken and add to the onion mixture. Process until smooth. Tip into a mixing bowl and stir in the yogurt, garam masala and half the coriander and cumin powder. Pour the spiced yogurt mixture over the chicken, turning every piece so that itโs evenly coated. Cover with cling film and marinate overnight in the fridge. If you can, flip the chicken over once or twice while itโs marinating.\nPreheat the grill, with the grill pan in place, to its hottest setting.\nTake the chicken out of the yogurt marinade and arrange on the hot grill pan. Drizzle with the oil and grill for about 5 minutes on each side or until beginning to char around the edges. Pour any cooking juices into a bowl and skim off any fat. Keep the chicken warm while you make the sauce.\nCombine the tomatoes, tomato purรฉe, coriander leaves, ginger, lime juice, sugar and remaining cumin and coriander powder in a blender or food processor and process until smooth. Heat the butter in a saucepan and, when melted, add the spiced tomato mixture and cream. Bring to simmering point, then strain in the reserved cooking juices and add the cooked chicken pieces.\nReheat and serve piping hot, with Indian breads.\n!Thailand\n!!Green curry of prawns with aubergines and basil\nThis is quite a thin curry, commonly served with spiced salted beef. Kaffir lime leaves, fresh long chillies and Thai basil are essential garnishes, to give the dish its characteristic savour.\nTradition dictates that the prawns be added to the frying curry paste, but I feel that this can lead to such quick-cooking items being overcooked, as they then continue simmering after the coconut milk is added. I think it is better - and safer - to add the prawns once the curry is made, when adding the vegetables. Almost any meat or fish can be used in place of the prawns.\nServes 4\n5 tbs cracked coconut cream\n21/2 tbs green curry paste\n11/2-3 tbs fish sauce, to taste\n250ml coconut milk and/or chicken or prawn stock\n3 apple aubergines, stalk removed and each cut into sixths (if cut in advance, keep in salted water to prevent discoloration)\n100g picked pea aubergines\n8-12 good quality large, raw prawns, cleaned and de-veined\n3-4 kaffir lime leaves, torn\n3 young green chillies, deseeded and thinly sliced at an elegant angle\nhandful of Thai basil leaves\n1 rounded tbs shredded wild ginger\nTo make cracked coconut cream, simmer until most of the liquid has evaporated. It will then separate into thin oil and milk solids.\nHeat the cracked coconut cream, add the curry paste and fry over a high heat for about 5 minutes, stirring regularly, until fragrant. Make sure the paste is quite oily.\nSeason with fish sauce, then moisten with the coconut milk or stock, or a mixture of the two. Bring to the boil, then add the apple and pea aubergines. Simmer for a few minutes to cook before adding the prawns. Continue to simmer until they too are cooked.\nFinish with the remaining ingredients, then allow to rest for a minute or so before serving. The curry should have a dappling of separated coconut cream floating on top.\n!!Jungle curry of chicken with vegetables and peppercorns\nA jungle curry is a country curry that is simple and robust in flavour and technique. A green or a red curry paste can be its base. This version is perhaps the most common; however, there are many variations, using frog, game, freshwater fish and prawns as well as a myriad of vegetables reflecting the bounty of the local market. It can be served with pickled red shallots and dried fish or prawns.\nServes 4\n200g boneless chicken thigh or breast, skinned if preferred\n2 apple aubergines\n11/2 tbs vegetable oil\n21/2 tbs fish sauce\n250-300ml light chicken stock\n2 heaped tbs picked pea aubergines\n2 heaped tbs snake beans cut into 2cm lengths\n3 baby corn, cut into small pieces\na little sliced boiled bamboo (optional)\n3 stalks wild ginger, julienned\n1 long green chilli, thinly sliced at an angle\n2 kaffir lime leaves, torn\nhandful of holy basil leaves\n3 sprigs of fresh green peppercorns\n!!!For the red jungle curry paste\n10 dried red chillies, deseeded, soaked and chopped\n3-4 dried small red chillies, soaked and chopped\na few birdโs eye chillies (optional)\ngood pinch of salt\n2 tsp chopped galangal\n21/2 tbs chopped lemongrass\n1 rounded tbs chopped wild ginger\n1 tsp chopped coriander root\n1 tsp chopped kaffir lime zest\n21/2 tbs chopped red shallots\n21/2 tbs chopped garlic cloves\n1 tsp Thai shrimp paste\n!!!For the garlic and chilli paste\n2 garlic cloves, peeled\npinch of salt\n3 stalks wild ginger\n3-5 birdโs eye chillies\nSlice the chicken into pieces about 2cm long and 5mm thick. Remove the stalks from the apple aubergines, then cut each one into sixths; keep in salted water to prevent discoloration.\nTo make the garlic and chilli paste, grind all the ingredients with a pestle and mortar. Heat the oil in a wok or heavy saucepan and, when very hot, add the garlic and chilli paste. Fry over a high heat until golden and almost starting to burn. Quickly add 21/2 tbs of the curry paste and continue to fry, stirring to prevent scorching, until explosively fragrant. Season with the fish sauce, then add the stock and bring to the boil. Add the chicken and all the aubergines. Simmer for a minute or so or until cooked.\nAdd the remaining ingredients. Simmer for a few more moments. Check the seasoning, then serve.\n!11Pakistan\nPotato curry\nWhen you are not sure what to cook, or you have to prepare a meal in a hurry, potato curry is always the answer. You can eat it for breakfast on toast, topped with a couple of fried eggs, lunch or dinner, alone or as part of a meal. Itโs great as a left-over too. All varieties of potatoes can be used, even young. This is true comfort food. It can be made in advance and reheated in the pan on a low heat or in a microwave.\nServes 3-4\n2 tbs sunflower oil\n1 large onion, finely chopped\n2 large plum tomatoes, skinned and chopped\n8 red chillies\n1/2 tsp red chilli powder\n1 tsp cumin seeds\nsalt\n500g potatoes, peeled and diced, or whole new potatoes\nchopped coriander leaves to garnish\nHeat the oil in a saucepan, add the onion and cook until slightly browned. Add the chopped tomatoes, then stir in the chillies, chilli powder, cumin seeds and salt to taste. Add 125ml water and cook, stirring, until excess liquid has evaporated.\nAdd the potatoes together with another 125ml water. Stir well to coat the potatoes with the spice mixture, then put the lid on the pan. Cook for 15-20 minutes or until the potatoes are tender but not breaking up.\nRemove the lid and continue cooking until the oil separates out. Garnish with chopped coriander and serve hot.\n!Indonesia\n!!Hot and sour prawn curry\nThis is one of the wide variety of prawn curries that are popular all over Indonesia. There are hot and sour prawns and many more cooked in coconut milk and tamarind. The hotness, of course, comes from chillies, so reduce the quantity of these if you prefer your food less hot. The sourness comes from a combination of tamarind and tomatoes. There is no need to add any sugar, because the dish contains so much onion, and the tamarind itself is sweet as well as sour. For convenience, you can fry the prawns and make the sauce ahead of time. Then, before serving, reheat the sauce and, when hot, add the prawns to finish the cooking.\nServes 4\n12-16 raw king or tiger prawns, peeled, with last tail section left on, and de-veined\n1 tsp coarse sea salt\n1/2 tsp ground turmeric\n1/2 tsp chilli powder\n3 tbs groundnut oil\n!!!For the sauce\n3 tbs groundnut oil\n3 large red onions, chopped\n4 garlic cloves, finely sliced\n1 tbs finely chopped fresh root ginger\n2-6 large green chillies, deseeded and thinly sliced diagonally\n1 tsp ground coriander\n6-8 large, red and ripe tomatoes, skinned and chopped\n3-4 tbs tamarind water\nsalt\nchopped spring onions and deep-fried shallots to garnish\nRub the prawns with the sea salt, turmeric and chilli powder, then set aside for 10-12 minutes. Heat the oil and, when hot, fry the prawns, in two batches, for not more than 2 minutes each batch. They will not be fully cooked at this point. Drain on kitchen paper.\nTo make the sauce, heat the oil in a wok or large frying pan. Add the onions and fry, stirring often, for 8-10 minutes or until they are soft and just starting to colour. Add the garlic, ginger and chillies and stir-fry for a minute or so, then add the ground coriander and stir for another minute. Put in the chopped tomatoes and the tamarind juice, stir them around and cook on a low heat for 3-4 more minutes. Adjust the seasoning.\nAdd the prawns to the sauce and stir them around for 2 minutes or until hot and cooked through. Slice the shallots thinly and evenly and deep fry in hot oil stirring constantly, until golden. Spread on kitchen paper to cool. Serve the curry immediately, with the spring onions and shallots scattered on top. As a main course dish, the accompaniment can be rice, noodles or bread, with salad or plain cooked vegetables.\n!Rajasthan\n!!Fiery lamb curry\nAs the name suggests, this is a very hot dish, not for people with a weak constitution. This is one of the few Indian dishes that contains heat in every sense - both โchilli hotโ and โspice hotโ. You can decide the amount of heat youโd like. Discard most of the seeds from the chillies if you want to reduce the heat, or keep them in if you want it really hot.\nServes 4\n25-35 dried red chillies, stalks removed\n11/2 tsp cloves\n150g ghee or vegetable oil\n250g plain yogurt, whisked until smooth\n2 tsp cumin seeds, roasted\n20g ground coriander\n1 tsp red chilli powder\n2 tsp salt\n3 cinnamon leaves or bay leaves\n6 green cardamom pods\n5 black cardamom pods\n75g garlic cloves, finely chopped\n250g onions, finely chopped\n1kg leg of lamb or goat with bone chopped into 2.5cm cubes\n750ml lamb stock or water\n30g coriander leaves, finely chopped\nSet aside 3 or 4 of the dried chillies to use later; put the remainder to soak in 125ml water. Also put aside 4-6 of the cloves and 1 tbs of the ghee. Mix the yogurt with the cumin seeds, ground coriander, chilli powder and salt in a bowl. Set aside.\nHeat the rest of the ghee in a heavy-bottomed pan. Add the remaining cloves, the cinnamon leaves and the green and black cardamoms. When they begin to crackle and change colour, add the garlic. Sautรฉ for 2 minutes or until the garlic begins to turn golden. Add the onions and cook for 10 minutes or until golden brown, stirring constantly. Stir in the meat and cook for 2-3 minutes. Drain the red chillies and add to the pan.\nContinue cooking for 10-12 minutes or until the liquid has evaporated and the meat starts to brown. Now add the spiced yogurt and cook for another 10-12 minutes or until the liquid from the yogurt has evaporated. Add the stock or water and bring to the boil, then cover the pan, reduce the heat and simmer until the meat is tender. Check the seasoning. Remove from the heat and keep warm.\nTo prepare the tadka, or tempering, which boosts the flavours, heat up the reserved ghee or oil in a large ladle over a flame (or in a small pan) and add the reserved cloves and dried red chillies. Cook for 1-2 minutes or until the ghee changes colour and the spice flavours are released. Pour the contents of the ladle over the lamb curry, sprinkle with the chopped coriander and serve.\n!South India\n!!Vegetables with lentils\nSambar is the most famous accompaniment for the traditional pancake-like breads called dosas, and it is the curry always served first at any feast in southern India. It is the dish of the common man.\nServes 4\n100g split yellow lentils (toor dal)\n1 tsp ground turmeric\n1 tsp chilli powder\n2 onions, cut into small pieces\n100g carrots, peeled and cut into 2.5cm (1in) pieces\n100g green beans (frozen or fresh), cut into 2.5cm pieces\n3 tomatoes, quartered\n100g potatoes, peeled and cut into cubes\n3-4 tbs tamarind water\nsalt\n!!!For the sauce\n100g freshly grated coconut or desiccated coconut\n2 tsp coriander seeds\n1 dried red chilli\n!!!For tempering\n1 tbs vegetable oil\n1 tsp mustard seeds\n10 curry leaves\n3 dried red chillies\nFor the spice paste, roast the coconut and spices until brown. Leave to cool, then grind in a food processor, gradually adding about 250ml water to make a fine paste.\nBring 300ml of water to the boil and add the lentils, turmeric, chilli powder and onions. Simmer until the lentils are well cooked.\nAdd the carrots, beans, tomatoes and potatoes and stir well. Cover and cook for 10 minutes or until the vegetables are tender. Add the tamarind water and salt to taste. Cover and cook for 5 minutes.\nStir in the spice paste. Bring to the boil, then reduce the heat to moderate and cook, uncovered, for 5 minutes, stirring occasionally.\nFor tempering, heat the oil in a frying pan and add the mustard seeds. As they begin to pop, add the curry leaves and dried red chillies. Pour this over the curry and gently stir through. Serve hot.\n!North India\n!!Stir-fry of paneer cheese with peppers\nA kadhai, or karahi, is the Indian wok, and this is the Indian answer to a stir-fry. This style of cooking is very versatile and quick if you prepare a basic sauce in advance, then itโs simply a question of choosing your meat, fish or vegetables and degree of spiciness. You may want to keep a jar of this basic kadhai sauce in your fridge.\nThe kadhai method is becoming particularly popular with youngsters and people who are learning to cook and want to try out different things without spending a lot of time in the kitchen.\nServes 4-6\n1 tbs ghee or corn oil\n1/2 tsp crushed dried chillies\n2 red or yellow peppers, deseeded and cut into strips 1 x 3cm\n1 red onion, sliced 1cm thick\n600g paneer, cut into 3cm batons\n20g coriander leaves, finely chopped\n1/2 tsp dried fenugreek leaves, crumbled\njuice of 1 lemon\n5cm piece fresh root ginger, cut into julienne\n!!!For the basic kadhai sauce\n80g ghee or corn oil\n30g garlic cloves, finely chopped\n15g coriander seeds, coarsely pounded\n8 red chillies, coarsely pounded in a mortar\n2 onions, finely chopped\n5cm piece fresh root ginger, finely chopped\n3 green chillies, finely chopped\n750g fresh ripe tomatoes, finely chopped\n2 tsp salt\n1 tsp ground garam masala\n11/2 tsp dried fenugreek leaves, crumbled\n1 tsp sugar (optional)\nTo make the sauce, heat the ghee in a pan, add the garlic and let it colour. Stir, then add the coriander seeds and red chillies. When they release their aromas, add the onions and cook until they start changing to light golden. Stir in the ginger, green chillies and tomatoes. Reduce the heat to low and cook until all excess moisture has evaporated and the fat starts to separate out. Add the salt, garam masala and fenugreek leaves and stir. Add some sugar, if needed.\nFor the stir-fry, heat the ghee in a kadhai, wok or large frying pan. Add the crushed chillies, pepper strips and red onion. Stir and sautรฉ on a high heat for under a minute, then add the paneer and stir for another minute. Add the sauce and mix well. Once everything is heated through, check the seasoning. Finish with the fresh coriander, fenugreek leaves and lemon juice. Garnish with the ginger and serve with naan bread.\n!Thailand\n!!Coconut and turmeric curry of red snapper\nMost southern curries are rich with coconut cream. This curry should be hot, salty and a little tart. Almost any seafood can be used in place of the snapper, especially crab. Serve with cucumber, mint and coriander, and rice.\nServes 4\n500ml coconut milk\n250ml light chicken stock or water\n2 stalks lemongrass, bruised\nwhite sugar\n4 tbs tamarind water\n4 tbs fish sauce, or to taste\n200g red snapper fillet or a 400g whole red snapper, gutted and scaled\nhandful of torn โbetelโ leaves (optional)\n120ml coconut cream\n5 kaffir lime leaves, finely shredded\n!!!For the curry paste\n6 dried long red chillies, soaked and chopped\n3-4 dried small red chillies\npinch of salt\na few birdโs eye chillies\n50g chopped lemongrass\n4 tbs chopped red shallots\n21/2 tbs chopped garlic\n1 rounded tbs chopped red turmeric\n1 rounded tbs Thai shrimp paste\nTo make the curry paste, put all the ingredients in a blender and blend for 3-4 minutes, stopping to scrape down the insides of the jug every so often.\nCombine the coconut milk with the stock in a saucepan, add the lemongrass and bring to the boil.\nSeason with a little sugar, the tamarind water and fish sauce and add 4 tbs curry paste. Simmer for a minute before adding the fish and โbetelโ leaves. Continue to simmer until the fish is cooked.\nCheck the seasoning, then finish by stirring in the coconut cream. Serve sprinkled with the shredded kaffir lime leaves.\n!Laos\n!!Green prawn curry with fresh dill\nFresh dill, sometimes referred to as Laotian coriander, is widely used in Laos for fish or other seafood dishes. The dill fronds are added at the last minute as a garnish. Eat this with steamed sticky rice.\nServes 4\n3 tbs vegetable oil\n5 tbs Thai curry paste\n1 tbs shrimp paste\n1 tbs palm or granulated sugar\n500ml thick coconut milk\n500ml chicken or vegetable stock\n4-6 kaffir lime leaves, bruised\nfish sauce to taste\n2 large waxy potatoes, peeled and cut into 2.5cm pieces\n675g raw tiger prawns, peeled and de-veined\n1 bunch of dill\nHeat the oil in a pot over a moderately high heat and stir-fry the curry paste for about 2 minutes or until just golden and fragrant. Add the shrimp paste (breaking it up) and palm sugar, and stir-fry for 1 minute or until fragrant. Reduce the heat and add the coconut milk, stock, kaffir lime leaves and fish sauce to taste. Add the potatoes, cover and cook for 20 minutes.\nAdd the prawns and stir well, then cover again and cook for about 5 minutes or until they turn pink. Serve hot, garnished with dill fronds.\n!South India\n!!Shallow-fried masala sardines\nFor a feast, this dry curried fish makes a fantastic combination with wetter chicken and meat dishes. Itโs crunchy and has a delicious spicy flavour. Serve it as a dry side dish or with plain rice or a green salad as a main dish. Pomfret or any flat fish can be used instead of sardines.\nServes 2-4\n4 sardines, about 300g in total\n5 tbs vegetable oil\n1 small onion, finely sliced\nsmall handful of chopped coriander leaves\nwedges of lemon\n!!!For the spice paste\n1 onion, chopped\n2 green chillies, chopped\n1cm piece fresh root ginger, finely chopped\n10 curry leaves\n10 black peppercorns\n1/2tsp chilli powder\n1/2 tsp ground turmeric\n2 tbs wine or cider vinegar\n1 tsp lemon juice\nsalt\nPlace all the ingredients for the spice paste in a food processor or blender. Process for 2-3 minutes to make a fine paste. Set aside.\nWash the fish under cold running water, then pat dry with kitchen paper. With a very sharp knife, make some slashes about 2.5cm apart along the whole length of the fish, on both sides. Donโt cut too deeply, just enough to break the skin and cut slightly into the flesh.\nPlace the fish on a baking tray and spread the spice paste all over the fish, ensuring that it penetrates well into the cuts. Leave to marinate for 15-20 minutes.\nHeat 2 tbs of the oil in a large frying pan. Add the onion and cook for 5-6 minutes over a very high heat until the onion is well browned and crisp. Remove the onion from the pan and drain on kitchen paper.\nHeat the remaining oil in the same pan over a low heat. Carefully place the fish in the pan, cover and cook for about 6 minutes on each side. Turn the fish once only during cooking to avoid breaking it up. Cook until the skin is brown and the flesh is cooked thoroughly.\nCarefully remove the fish and place on a large serving dish. Sprinkle the crisp onions over the fish and garnish with coriander and lemon wedges.\nRecipes by Roopa Gulati, David Thompson, Mahmood Akbar, Sri Owen, Vivek Singh, Das Sreedharan and Corinne Trang. \nโข Extracted from Curry, published by Dorling Kindersley on 5 October 2006, price ยฃ16.99. ยฉDorling Kindersley 2006. For a special advance publication offer for OFM readers of only ยฃ14.99, call the DK Bookshop now on 08700 707717 quoting reference CURRY and ISBN 1405315725. Allow up to 14 days for delivery. Offer open to UK residents only, subject to availability. Includes free P&P \nGuardian Unlimited ยฉ Guardian News and Media Limited 2007\n\n
International trafficker found dead in London flat was suspect in gangland killing of Colombian dealer \nTony Thompson, crime correspondent\nSunday November 16, 2003\nThe Observer \n\nA British woman accused of taking part in a brutal and cold-blooded gangland killing has been found dead in her London home, prompting speculation that she may have been murdered by underworld enemies.\nBournemouth-born Beverley Storr, 44, was believed to have been responsible for the death of Colombian drug dealer Arturo Miranda, whose body was pulled from a canal 50 miles north of Copenhagen in January 2001. Miranda, 54, had his hands tied behind his back and his throat was cut. He is believed to have been tortured for hours before he was shot through the back of the head at point-blank range.\nStorr, a leading figure in international drugs smuggling, vanished from her cottage in Denmark around the time of the murder. Neighbours saw her hurriedly cleaning the house soon before she disappeared. A forensics team found traces of blood, leading police to conclude that the killing took place there before the body was dumped. Witnesses said Miranda had been staying at the cottage.\nA few days later, Storr's red British-registered Volvo car was found abandoned at a railway station near the German border. She and her then lover, Reginald Blythin, 55, from Chester, were put on Interpol's list of most wanted fugitives.\nStorr spent years arranging for large quantities of drugs worth millions of pounds to be smuggled from Spain to Britain until she was caught in Malaga with 1.5 tons of cannabis worth ยฃ3 million. She was jailed for four years in 1997, and freed in January 2001.\nShe returned briefly to Britain before heading back to Spain and on to Denmark, where she set up home in the village of Hou.\nAfter the murder she is believed to have used her international underworld contacts to keep ahead of police. However, she was arrested in in July 2002 after being surrounded by armed police acting on a tip-off as she tried to board a flight at Schiphol airport, Amsterdam, using a fake Spanish passport. Blythin is still on the run.\nStorr was detained until last month, when she was released. She returned to London and moved into a flat in Newington Green Road, Islington, with a new boyfriend. It was he who returned home late on Sunday 3 November and found her dead in the living room.\nPolice officers called to the scene told the coroner her death was not suspicious, but they were not then aware of Storr's background. The coroner has promised to expedite his investigation in response to numerous requests for information from the Danish press.\nHenrik Madsen, a journalist on ร
rhus Stiftstidende, the newspaper that covers the village where Miranda's body was found, told The Observer that Storr had to be freed, even though she was charged with murder.\nThe Danish police wanted to try Storr and Blythin together, but he had disappeared, said Madsen. 'You can't keep people in custody for ever, and time went on and on. The Danish legal system says the police must give a judge good reasons to keep holding someone. They simply ran out of arguments.'\nInstead of waiting for the court to order her release, the Danish police made a special request for her to be allowed to go on the grounds that they had obtained all the information they needed from her. Many Danes believe this was a ploy aimed at getting Storr to lead them to Blythin.\nA leading Danish paper, Ekstra Bladet said the officer in charge of the murder inquiry, who contacted police in London to check the circumstances surrounding the death, had refused to say whether Storr had been under surveillance.\nStorr was being treated for depression, and a bottle of pills was found near her body. It is not yet clear how many - if any - she had taken.\nThe Danish authorities believe Storr's medication may have been tampered with, or she could have been forced to take an overdose to stop her from talking.\nAlthough Blythin is a potential suspect, Storr's criminal record and high-level connections with organised crime mean many other people could have been just as keen to silence her. The results of toxicology tests carried out on her body will not be available until the new year at the earliest. When The Observer called at the flat she shared with her last boyfriend there was no answer.\nStorr was also suspected of involvement in the murder of a Briton, John McCormick, 47, who was shot at his flat in Copenhagen on New Year's Eve. His terrified girlfriend saw the shooting.\nMcCormick, a convicted drugs smuggler from Liverpool, is believed to have fled to Scandinavia after he 'ripped off' British drug dealers based in Spain. Fellow tenants say his flat had a lot of visitors, and police believe he was dealing drugs. He entered Denmark from Spain the previous summer on a false passport in the name of Ronald Carey.\nOne flatmate told the police that McCormick had become increasingly ill at ease before his death. He is believed to have had regular contact with Storr and Blythin.\nBlythin has served time in Britain for drugs and robbery offences and has underworld contacts in Norway, the Netherlands, Belgium, France and Spain. He may be attempting to contact his family in the UK. He is on Scotland Yard's wanted list, but is believed to have visited this country several times since going on the run.\nGo to source: ?T=12&D=439321
[[Welcome to Keith's websites]]\nTagCloud\nIndex\n[[Fun and relaxation - remember?!]]\n
Useful dentistry websites\n|E-learning|http://www.dentistry.bham.ac.uk/ecourse/|\n\n+++^[Shopping]\nhttp://www.therabreath.com/index.asp\n===\n\n!Root Canal treatment\nhttp://www.medicinenet.com/root_canal/article.htm\n!Tooth Abscess\n!!Odd cures for an abscess\n#Eat cashew nuts for 24 hours - http://charles_w.tripod.com/tooth.html\n!Fillings\nYou can create a temporary seal (at least several weeks) with a mixture of zinc oxide and oil of eugenol (a complicated benzoic alcohol). There is a zinc oxide - calcium oxide composition called Biocalexwhich they claim is superior to zinc oxide since it is said to fill the tooth tubules and displace anaerobic bacteria, and thus make it also superior to gutta percha.
http://www.drugs.com/\n!Consumer Information\nhttp://www.drugdigest.org/DD/Home
!Example e-learning modules\nhttp://www2.academee.com/html/elearning/demo/demo.html
[[MptwEditTemplate]]
The written word is a powerful mediumโฆone of the most powerful in marketing. If you use it correctly you create valuable materials that your prospects will want to hang on to. And then when they need a service that you offer, theyโre one step closer to choosing you.\nWhen people think of copywriting, they often think of the typical brochure or flyer or newspaper ad. If you fall into that category, here are eight other ways you can use copywriting to build your business.\n1) Write a sales letter \n\nDirect sales promotions gross over one and a half trillion dollars a year. Itโs a proven medium and itโs easy to track so you can see just how well your marketing investment is doing.\n\n2) Write a case study \n\nCase studies are a great credibility builder. They tell the story of how you solved a common problem for a client. Theyโre loaded with facts and figures and testimonials from the client. A good case study can be the tipping point for a prospect deciding to work with you.\n\n3) Write a white paper \n\nA white paper is a semi-academic piece covering a general problem in the industry and how your product addresses and solves the problem. White papers range from a simple two-page explanation to a visually-rich multi-page discussion. They involve a lot of research and take an objective tone, giving the impression that you are both and expert and have the answers theyโre looking for.\n\n4) Write an article Articles are another expert-image-building tool. You can publish articles online, over email (like this one), in your local paper, or in a trade publication. A well-written article is worth its weight in name recognition, especially if you get it published in the right place.\n5) Write a newsletter A regular newsletter is an ideal way to keep in touch with your existing clientele. Newsletters help generate repeat business and they add value to your services which means they build loyalty among your clients.\n6) Write a report Do you have a wide range of products or services? Write a helpful and informative report to clarify for your clients how you can best be of service to them. Or, if you offer a service that takes prep work on the clientโs part, provide them a report that will help them do what they need to do to get the most out of your services.\n7) Write a booklet Write a booklet related to the product or service you offer. Do you sell digital cameras? Create a booklet explaining how to use different features. Do you run a restaurant? Make a booklet filled with recipes for past specials and include a coupon in the back. Do you do accounting? Create a booklet on getting organized for the tax year.\n8) Write an ebook An ebook is like a booklet, but longer and because of the medium, more interactive. An ebook is usually rich in online resources as well as information on your chosen topic.\nCopywriting is a great tool for building your business and something you should use in nearly every aspect of your marketing. If you donโt have the talent or the time for copywriting yourself, look around on the web-there are scores of talented copywriters waiting to be of service. \nEight Ways to Use Copywriting to Build Your Business\nby Heather R
American elderberry (Sambucus canadensis) shrubs, often called simply American elders, produce an abundant amount of fruit each summer. The blue-black berries, each barely more than 1/8 inch in diameter, grow in large clusters and are a favorite of wildlife. Usually available in midsummer, the juicy clusters can be gathered by the bucketful and make excellent juice, jelly and wine. The plant grows in rich, moist soil of woodlands, stream and river banks, gullies, fencerows, and along margins of fields, right-of-ways and pastures. They grow from eastern Texas up to the southeastern corner of South Dakota, then eastward to the Atlantic and northeastward through New England and southern Canada.\n\nRelated cousins are the blue elder (Sambucus cerulea), Mexican elder (Sambucus mexicana), black berried elder (Sambucus melanocarpa)--all of which are edible. Also, the toxic red fruited elder (Sambucus pubens) and very bitter (but not poisonous) Pacific elder (Sambucus callicarpa). All produce white or yellowish-white flowers in late spring or early summer. These develop into light green berries which change color just before ripening. The blue elder grows in the western United States from the Rockies to the Pacific, although it is also seen in extreme West Texas and New Mexico.\n\nThe cooked ripe berries of the edible elders are harmless, but raw elderberries can cause nausea if eaten in quantity. Unripe berries and all parts of the elder plant itself are mildly toxic. The ripe berries are rather distasteful eaten raw, although I've heard you can develop a taste for them. Wine made from the uncooked berries is neither toxic nor distasteful. Indeed, it is delicious. Still, some people prefer to cook the berries before making wine. This renders the juice quite delicious as is, but it cerainly improves when made into wine. I do not believe there is any difference in taste between the wines made from uncooked and cooked berries, but the cooked berry wine seems more colorfast than the uncooked berry wine.\n\nThere are many recipes for fresh elderberry wine. I live in Texas, where elderberries are native but not as common as elsewhere, and so I always use dried, imported ones. Still, I have many recipes for fresh elderberry wine. I've included two of the better recipes below. The first recipe only uses 3 pounds of berries while the second uses 10 pounds. This is a huge difference and the wines reflect it, but both wines are very good. If at all possible, preserve the wonderful color of elderberry wine by placing the secondary fermentation vessel in a closet or other dark place. Similarly, either bottle the wine in dark bottles or store the bottles in a dark place. When you pour a glass, you'll be glad you did.\n\n\n\nELDERBERRY WINE (1)\n3 lbs fresh, ripe elderberries \n2-1/2 lbs finely granulated sugar \n3-1/2 quarts water \n2 tsp acid blend \n1 tsp yeast nutrient \n1/2 tsp pectic enzyme \n1 crushed Campden tablet \nMontrachet wine yeast \nBring water to boil and stir in sugar until dissolved. Meanwhile, wash, inspect and destem the elderberries. Put them in nylon straining bag, tie closed, and put in primary. Wearing sterilized rubber gloves, mash the elderberries and cover with the boiling sugar-water. Cover and set aside to cool. When lukewarm, add acid blend, yeast nutrient and crushed Campden tablet. Cover primary and wait 12 hours, then stir in pectic enzyme. Recover primary and wait another 12 hours, then add yeast. Cover and stir daily, gently squeezing the bag to extract flavor from the berries (don't forget the gloves or you'll be sorry). Ferment 14 days, then drip drain the elderberries (don't squeeze). Combine drippings with juice and set aside overnight. Rack into secondary and fit airlock. Put in dark place to protect the color from light. Ferment two months and rack, top up and refit airlock. Repeat two months later and again two months after that. Stabilize and wait 10 days. Rack, sweeten to taste and bottle. Store bottles in dark place for one year. Then enjoy. [Adapted from Terry Garey's The Joy of Home Winemaking]\n\n\n\nELDERBERRY WINE (2)\n10 lbs fresh, ripe elderberries \n2-1/4 lbs finely granulated sugar \n6 pints water \n1 tsp acid blend \n1 tsp yeast nutrient \n1/2 tsp pectic enzyme \nMontrachet wine yeast \nWash, destem and inspect the berries for ripeness and soundness. Put berries in a stainless steel or enameled pot with 3/4 pound of sugar and half the water. Slowly bring to boil while stirring occasionally and turn off heat. Cover and set aside to cool to room temperature. Strain berries over primary through a nylon straining bag and hang bag over primary to drip drain for two hours. Very gently press pulp to extract a little more juice, but do not overdo this. Stir in remaining sugar and dry ingredients (except yeast) and stir well to dissolve. Add enough water to bring to one gallon and add yeast. Cover primary and wait for active fermentation. Ferment 2 weeks and siphon off sediments into secondary. Top up and fit airlock. Ferment two months, rack, top up, and refit airlock. Repeat after additional two months. Stabilize, wait 10 days, rack, sweeten to taste, and bottle. Age one year before tasting. [Adapted from Julius H. Fessler's Guidelines to Practical Winemaking]
During todayโs lesson you are going to look at the language used in newspaper reports. Once you have finished one worksheet, ask your teacher for the next one. Each worksheet is a little bit harder than the last one, but by the end of it you will be an expert! Do not worry if you do not get to the end. \n\nIf something is emotive it makes people emotional. If you had just had your new mountain bike stolen then your friends might avoid boasting about their bikes: bikes are an emotive subject for you at the moment. You feel very emotional. Newspapers often choose emotive language (words) to get their readers to react emotionally to a story. If you call an event a โriotโ rather than a โdisturbanceโ you are much more likely to get your readers excited.\n\nTask One:\nBelow are four pairs of headlines. Decide which one of the pair is most likely to excite the reader, (a) or (b)? Give reasons for your choice.\n\n1. (a) Scabs thrown out of the union\n(b) Strike breakers must leave union\n\n2. (a) School blaze\n(b) Fire at school\n\n3. (a) Skilful Owen\n(b) Owen magic\n\n4. (a) Lennox Lewis injured\n(b) Lennox Lewis agony\n\nTask Two:\nNow read the headlines below. Re-write them, replacing the words in bold with more emotive words. The first two have been done for you as examples. If you find this difficult, try using a thesaurus to find alternative words.\n\n1. Man hit by robbers.\n(Pensioner hit by muggers)\n\n2. One hundred peasants killed by troops.\n(One hundred peasants slaughtered by troops)\n\n3. Argument closes factory.\n\n4. Train seats cut by teenagers.\n\n5. Supporters run onto pitch.\n\n6. Shortage of money creates problems in schools.\n\n7. Trouble on roads after snowfall.\n\n8. Player hits referee.\n\n9. House prices fall in Stevenage.\n\n10. Political meeting ends in disturbance.\n\nTask Three:\nNow read the Daily Starโs report about the school โriotโ. The report uses a lot of emotive language. For example, it uses โmobโ instead of โcrowdโ or โgroupโ; โrefusedโ instead of โdecided not toโ.\n\nAs you read the article, make a list of emotive words that the reporter uses. Next to each word write a couple of alternative words that mean almost the same but are less emotive. Set your ideas out in a chart like the one below. Use a thesaurus to help you find the words you need.\n\nEMOTIVE\nLESS EMOTIVE\nNEUTRAL\nmob\ngang\ncrowd\nraced\nran\nhurried\n\nTask Four:\nNow answer the following questions.\n\n1. What quieter, less emotive words could the report have used instead of โterrifiedโ (paragraph 4) and โfranticโ (paragraph 5)?\n\n2. How do you feel about:\na. the โyoungstersโ, and\nb. the teachers who โrefused their dinner duties?\n\n3. Explain how the writerโs choice of words makes us feel these things about the pupils and their teacher.\n\nBored pupils riot as staff walk out\nA MOB of 300 youngsters ran riot through their school yesterday - because they were bored.\n It happened when teachers at the 100-staff comprehensive refused to do dinner duties and walked out in a union dispute.\n Only the headmaster and two teachers were on duty, and they wre powerless to act.\n People living nearby watched, terrified, as gangs of 15 and 16 year olds rampaged through the 1000-pupil school at Bideford, Devon, chanting "We want a riot" as they smashed windows.\n Police who rushed to the giant complex in seven cars calmed the frantic pupils.\nHammers\nAs the afternoon lessons ended the youngsters said they were protesting about being confined to one playground.\n "We were bored and had nothing to do," they said. "We will continue our action until the teachers dispute is over.\n "We brought screwdrivers and hammers to school and stole knives from the canteen."\nThe Star\n\nProviding their source is acknowledged, the resources found on this site ( http://www.english-teaching.co.uk ) may be copied for use in the classroom. Any other use is strictly forbidden. Copyright ยฉ 2000 FRET - Free Resources for English Teaching. All rights reserved.\nGo to source: Emotive Language: Fiona Duncan
Some articles on the Use and Abuse of the English Language
[[Instructions]]\n[[Telegrams]]\n[[Good English, Bad English]]
'Ethical sluts' develop new language of love for open relationships\nThey have turned their backs on monogamy and rejected traditional mores in their love lives - and now a group of "polyamorous" lovers have decided they need a new set of words to describe their lifestyle.\nPolyamorous people live in open relationships where they may have several partners of either sex who are also in other relationships.\nBy Maxine Frith, Social Affairs Correspondent\n04 April 2005\nThe movement began in California in the 1990s but has burgeoned in recent years, thanks, in part, to the internet and the publication of studies describing the phenomenon.\nThey see themselves as returning to a more natural state of living, where people do not have secret affairs behind their partners' backs and reject what they see as an artificial Western insistence on fidelity for life with one partner.\nThe polyamorous community's so-called bible is a 1997 book called The Ethical Slut that describes living with and loving multiple partners. The American author of the book urged women to reclaim the word slut as a positive term to describe the possibility of having simultaneous relationships with a number of people.\nSince then internet chat rooms, mailing lists and other sites focusing on polyamory have sprung up across the world, particularly in the US and UK. A UK mailing list currently has more than 200 members, and Britain's first conference on the subject - called the "Poly-Day" - was held last November.\nMeg Barker, a psychologist who also lives a polyamorous lifestyle, has researched the issue. She presented a paper at the British Psychological Society Conference in Manchester last week, at which she described how the movement was evolving an entirely new dictionary of words to describe the way in which its followers lived.\n"The problem is that in Western culture a lot of the words we have to describe emotions are based on the concept of monogamous relationships.\n"We have words like jealousy, which in polyamorous relationships you don't really get, but there is not a word to describe the warm feeling that a polyamorous person will get when they see one of their partners getting on with another of their partners.\n"It is kind of the opposite of jealousy. A lot of importance is placed on being able to describe the emotions that we have and this is why the poly community has started to come up with its own words which are now rapidly being adopted."\nThe polyamorous community in America has evolved its own lexicon, but British adherents are now coming up with their own words, Ms Barker said.\nThese include "frubble" - to describe the feeling of warmth and happiness when seeing one of your partners getting on well with either one of your partners or one of their lovers.\nMs Barker said: "Some cultures, for instance, traditional Hawaiian cultures, have always had words like this because they have practised polygamy and have always been used to the idea.\n"A lot of our words have been started on internet discussion sites where people have been frustrated that they can't express themselves and the way the live." She added: "Some people can be very judgemental but when you look at the figures of the number of people who have affairs and who are desperately unhappy in monogamous relationships it seems a bit strange."\nShe estimates that at least 2,000 people in Britain may be living polyamorous lifestyles, although many may be reluctant to admit it.\n'Of course, I do get jealous, but it passes'\nMeg Barker, 30, from south London, has been in polyamorous relationships for three years.\nShe lives part of the week with her girlfriend, Annie, and the rest with her boyfriend, Erich, and has two other lovers - a man and a woman.\nHer partners also have other partners, and Ms Barker's sister lives a similar lifestyle.\nMs Barker, an academic, said: "I always knew I was capable of loving a lot of different people at the same time, but when I was growing up it was difficult to know how I could follow that kind of life."\nShe says the main problem is finding time to spend with all her lovers. "You have to be pretty organised and sometimes it can be difficult to see everyone you want, but all of my partners get on well and we have times when we all meet up."\nHer parents, she says, are supportive, although she says other people can be judgemental.\n"Some people, especially men, assume I am more open to offers...Some polyamorous people do have a lot of casual sex but for me it is about having loving relationships with a number of people at the same time.\n"Of course, I do get jealous sometimes, especially when one of my partners has started a new relationship and you can see they are very excited about it, but [it] quickly passes when I realise they are not going to replace me in my partner's affections."\nMaxine Frith\nTHE LEXICON OF (MULTIPLE) LOVE\n*Frubble Describes the feeling of warmth and happiness when seeing one of your partners getting on well with one of your partners or one of their lovers\n*Wibble The temporary feeling of insecurity when seeing a partner being loving or close with another of their partners\n*Metamour Used to describe your relationship with one of your partner's partners\n*NRE Short for "new relationship energy" - a phrase describing how one partner behaves when starting a new relationship with a new lover\n*Polyamory Loving more than one person
European Union Announcement .February 2008\n\n\nEuropean Commission has just announced an agreement whereby English\nwill be the official language of the European Union rather than German, \nwhich was the other possibility. \n\nAs part of the negotiations, the British Government conceded that English \nspelling had some room for improvement and has accepted a 5-year \nphase-in plan that would become known as "Euro-English". \n\nIn the first year, "s" will replace the soft "c". Sertainly, this will make the \nsivil servants jump with joy. \n\nThe hard "c" will be dropped in favour of "k". \n\nThis should klear up konfusion, and keyboards kan have one less letter. \n\nThere will be growing publik enthusiasm in the sekond year \nwhen the troublesome "ph" will be replaced with "f". \n\nThis will make words like fotograf 20% shorter. \n\nIn the 3rd year, publik akseptanse of the new spelling kan be expekted \nto reach the stage where more komplikated changes are possible. \n\nGovernments will enkourage the removal of double letters which have \nalways ben a deterent to akurate speling. \n\nAlso, al wil agre that the horibl mes of the silent "e" in the languag is \ndisgrasful and it should go away. \n\nBy the 4th yer people wil be reseptiv to steps such as replasing "th" \nwith "z" and "w" with "v". \n\nDuring ze fifz yer, ze unesesary "o" kan be dropd from vords kontaining \n"ou" and after ziz fifz yer, ve vil hav a reil sensibl riten styl. \n\nZer vil be no mor trubl or difikultis and evrivun vil find it ezi tu understand ech oza. \n\nZe drem of a united urop vil finali kum tru. \n\nUnd efter ze fifz yer, ve vil al be speking German like zey vunted in ze forst plas
/***\n|Name|ExportTiddlersPlugin|\n|Source|http://www.TiddlyTools.com/#ExportTiddlersPlugin|\n|Version|2.3.0|\n|Author|Eric Shulman - ELS Design Studios|\n|License|http://www.TiddlyTools.com/#LegalStatements <<br>>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|\n|~CoreVersion|2.1|\n|Type|plugin|\n|Requires||\n|Overrides||\n|Description|select and extract tiddlers from your ~TiddlyWiki documents and save them to a local file|\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 (used in XML export)\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* SiteNotify^^\naddresses (if any) for sending automatic server-side email notices\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''2007.04.19 [2.3.0]'' in exportData(), pass SiteURL value as param to saveToRss(). Fixes 'undefined' appearing in tiddler link in XML output. Also, in refreshExportList(), added 'sort by tags'. Also, added 'group select'... selecting a heading (date,author,tag) auto-selects all tiddlers in that group.\n''2007.03.02 [2.2.6]'' in onClickExportButton(), when selecting open tiddlers for TW2.2, look for "storyDisplay" instead of "tiddlerDisplay" but keep fallback to "tiddlerDisplay" for TW2.1 or earlier\n''2007.03.01 [2.2.5]'' removed hijack of store.saveChanges() (was catching save on http:, but there are other solutions that do a much better job of handling save to server.\n|please see [[ExportTiddlersPluginHistory]] for additional revision details|\n''2005.10.09 [0.0.0]'' development started\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: 3, revision: 0, date: new Date(2007,4,19)};\n//}}}\n\n// // macro handler\n//{{{\nconfig.macros.exportTiddlers = {\n label: "export tiddlers",\n prompt: "Copy selected tiddlers to an export document",\n newdefault: "export.html",\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 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 if (panel.style.display!="none") refreshExportList(0); // update list when panel is made visible\n e.cancelBubble = true;\n if (e.stopPropagation) e.stopPropagation();\n return(false);\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// // 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%; background:transparent; }\s\n#exportPanel tr { border:0px;padding:0px;margin:0px; background:transparent; }\s\n#exportPanel td { color:#000; border:0px;padding:0px;margin:0px; background:transparent; }\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 textarea { width:98%;padding:0px;margin:0px;overflow:auto;font-size:8pt; }\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;border:0 }\s\n#exportPanel .chk { width:auto;border:0 }\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// // 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-top:5px;">\s\nlocal path/filename<br>\s\n<input type="text" id="exportFilename" size=40 style="width:93%"><input \s\n type="button" id="exportBrowse" value="..." title="select or enter a local folder/file..." style="width:5%" \s\n onclick="this.previousSibling.value=window.promptForExportFilename(this);">\s\n<!--<input type="file" id="exportFilename" size=57 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-top:5px;">\s\n<table><tr><td align=left>\s\n server location, script, and parameters<br>\s\n</td><td align=right>\s\n <input type="checkbox" class="chk" id="exportNotify"\s\n onClick="document.getElementById(\s'exportSetNotifyPanel\s').style.display=this.checked?\s'block\s':\s'none\s'"> notify\s\n</td></tr></table>\s\n<input type="text" id="exportHTTPServerURL" onfocus="this.select()"><br>\s\n<div id="exportSetNotifyPanel" style="display:none">\s\n send email notices to<br>\s\n <input type="text" id="exportNotifyTo" onfocus="this.select()"><br>\s\n</div>\s\n</div><!--panel-->\s\n\s\n<!-- export to ftp server -->\s\n<div id="exportFTPPanel" style="display:none;margin-top:5px;">\s\n<table cellpadding="0" cellspacing="0" width="32%"><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="32%">\s\n username<br>\s\n <input type="text" id="exportFTPID" onfocus="this.select()"><br>\s\n</td><td width="32%">\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<!-- notes -->\s\nnotes<br>\s\n<textarea id="exportNotes" rows=3 cols=40 style="height:4em;margin-bottom:5px;" onfocus="this.select()"></textarea> \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 all </a>\s\n <a href="JavaScript:;" id="exportSelectChanges"\s\n onclick="onClickExportButton(this)" title="select tiddlers changed since last save">\s\n changes </a> \s\n <a href="JavaScript:;" id="exportSelectOpened"\s\n onclick="onClickExportButton(this)" title="select tiddlers currently being displayed">\s\n opened </a> \s\n <a href="JavaScript:;" id="exportToggleFilter"\s\n onclick="onClickExportButton(this)" title="show/hide selection filter">\s\n filter </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 – </a>\s\n <a href="JavaScript:;" id="exportListLarger"\s\n onclick="onClickExportButton(this)" title="increase list size">\s\n + </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</div><!--box-->\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// // 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// // 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 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 }\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 // get NOTIFY\n var theAddresses=store.getTiddlerText("SiteNotify");\n if (!theAddresses|| !theAddresses.length) theAddresses="SiteNotify";\n document.getElementById("exportNotifyTo").value=theAddresses;\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// // exportInitFilter()\n//{{{\nfunction exportInitFilter() {\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="";\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// // 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// // 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 document.getElementById("exportStart").disabled=(count==0);\n clearMessage(); displayMessage("filtered "+formatExportMessage(count,total));\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 document.getElementById("exportStart").disabled=(count==0);\n clearMessage(); displayMessage(formatExportMessage(count,total));\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 document.getElementById("exportStart").disabled=(count==0);\n clearMessage(); displayMessage(formatExportMessage(count,count));\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"); // for TW2.1-\n if (!tiddlerDisplay) tiddlerDisplay = document.getElementById("storyDisplay"); // for TW2.2+\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 document.getElementById("exportStart").disabled=(count==0);\n clearMessage(); displayMessage(formatExportMessage(count,total));\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// // list display\n//{{{\nfunction formatExportMessage(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 if (selectedIndex==4) sort='tags';\n\n // unselect headings and count number of tiddlers actually selected\n for (var t=0,count=0; t < theList.options.length; t++) {\n if (!theList.options[t].selected) continue;\n if (theList.options[t].value!="")\n count++;\n else { // if heading is selected, deselect it, and then select and count all in section\n theList.options[t].selected=false;\n for ( t++; t<theList.options.length && theList.options[t].value!=""; t++) {\n theList.options[t].selected=true;\n count++;\n }\n }\n }\n\n // disable "export" button if no tiddlers selected\n document.getElementById("exportStart").disabled=(count==0);\n // show selection count\n var tiddlers = store.getTiddlers('title');\n if (theList.options.length) { clearMessage(); displayMessage(formatExportMessage(count,tiddlers.length)); }\n\n // if a [command] item, reload list... otherwise, no further refresh needed\n if (selectedIndex>4) 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(tiddlers.length+" tiddlers in document", "",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 theList.options[i++]=\n new Option(((sort=="tags" )?">":indent)+' [by tags]', "",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 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 if (!tags || !tags.length) {\n if (theTitles["untagged"]==undefined) { theTags.push("untagged"); theTitles["untagged"]=new Array(); }\n theTitles["untagged"].push(title);\n }\n else 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}\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// // 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// // 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// // exportTWHeader()\n//{{{\nfunction exportTWHeader()\n{\n // Get the URL of the document\n var originalPath = document.location.href;\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// // exportDIVHeader()\n//{{{\nfunction exportDIVHeader()\n{\n var out=[];\n var now = new Date();\n var title = convertUnicodeToUTF8(wikifyPlain("SiteTitle").htmlEncode());\n var subtitle = convertUnicodeToUTF8(wikifyPlain("SiteSubtitle").htmlEncode());\n var user = convertUnicodeToUTF8(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>"+convertUnicodeToUTF8(document.location.href)+"</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("Notes:<hr><pre>"+document.getElementById("exportNotes").value.replace(regexpNewLine,"<br>")+"</pre>");\n out.push("</div>");\n out.push("<div id=\s"storeArea\s">");\n return out;\n}\n//}}}\n\n// // exportDIVFooter()\n//{{{\nfunction exportDIVFooter()\n{\n var out=[];\n out.push("</div><!--POST-BODY-START-->\sn<!--POST-BODY-END--></body></html>");\n return out;\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 = convertUnicodeToUTF8(wikifyPlain("SiteTitle").htmlEncode());\n var subtitle = convertUnicodeToUTF8(wikifyPlain("SiteSubtitle").htmlEncode());\n var user = convertUnicodeToUTF8(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>" + convertUnicodeToUTF8(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// // exportXMLFooter()\n//{{{\nfunction exportXMLFooter()\n{\n var out=[];\n out.push("</channel></rss>");\n return out;\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(convertUnicodeToUTF8(thisTiddler.saveToDiv()));\n if (theFormat=="DIV") out.push(convertUnicodeToUTF8(thisTiddler.title+"\sn"+thisTiddler.saveToDiv()));\n if (theFormat=="XML") out.push(convertUnicodeToUTF8(thisTiddler.saveToRss(store.getTiddlerText("SiteUrl",""))));\n }\n return out;\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 (document.getElementById('exportNotify').checked)\n theTarget+="¬ify="+encodeURIComponent(document.getElementById('exportNotifyTo').value);\n if (document.getElementById('exportNotes').value.trim().length)\n theTarget+="¬es="+encodeURIComponent(document.getElementById('exportNotes').value);\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// // 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// // promptForFilename(msg,path,file) uses platform/browser specific functions to get local filespec\n//{{{\nfunction promptForExportFilename(here)\n{\n var msg=here.title; // use tooltip as dialog box message\n var path=getLocalPath(document.location.href);\n var slashpos=path.lastIndexOf("/"); if (slashpos==-1) slashpos=path.lastIndexOf("\s\s"); \n if (slashpos!=-1) path = path.substr(0,slashpos+1); // remove filename from path, leave the trailing slash\n var file=config.macros.exportTiddlers.newdefault;\n var result="";\n if(window.Components) { // moz\n try {\n netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');\n var nsIFilePicker = window.Components.interfaces.nsIFilePicker;\n var picker = Components.classes['@mozilla.org/filepicker;1'].createInstance(nsIFilePicker);\n picker.init(window, msg, nsIFilePicker.modeSave);\n var thispath = Components.classes['@mozilla.org/file/local;1'].createInstance(Components.interfaces.nsILocalFile);\n thispath.initWithPath(path);\n picker.displayDirectory=thispath;\n picker.defaultExtension='html';\n picker.defaultString=file;\n picker.appendFilters(nsIFilePicker.filterAll|nsIFilePicker.filterText|nsIFilePicker.filterHTML);\n if (picker.show()!=nsIFilePicker.returnCancel) var result=picker.file.persistentDescriptor;\n }\n catch(e) { alert('error during local file access: '+e.toString()) }\n }\n else { // IE\n try { // XP only\n var s = new ActiveXObject('UserAccounts.CommonDialog');\n s.Filter='All files|*.*|Text files|*.txt|HTML files|*.htm;*.html|';\n s.FilterIndex=3; // default to HTML files;\n s.InitialDir=path;\n s.FileName=file;\n if (s.showOpen()) var result=s.FileName;\n }\n catch(e) { var result=prompt(msg,path+file); } // fallback for non-XP IE\n }\n return result;\n}\n//}}}
/***\n|Name|ExportTiddlersPlugin|\n|Source|http://www.TiddlyTools.com/#ExportTiddlersPlugin|\n|Version|2.3.0|\n|Author|Eric Shulman - ELS Design Studios|\n|License|http://www.TiddlyTools.com/#LegalStatements <<br>>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|\n|~CoreVersion|2.1|\n|Type|plugin|\n|Requires||\n|Overrides||\n|Description|select and extract tiddlers from your ~TiddlyWiki documents and save them to a local file|\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 (used in XML export)\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* SiteNotify^^\naddresses (if any) for sending automatic server-side email notices\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''2007.04.19 [2.3.0]'' in exportData(), pass SiteURL value as param to saveToRss(). Fixes 'undefined' appearing in tiddler link in XML output. Also, in refreshExportList(), added 'sort by tags'. Also, added 'group select'... selecting a heading (date,author,tag) auto-selects all tiddlers in that group.\n''2007.03.02 [2.2.6]'' in onClickExportButton(), when selecting open tiddlers for TW2.2, look for "storyDisplay" instead of "tiddlerDisplay" but keep fallback to "tiddlerDisplay" for TW2.1 or earlier\n''2007.03.01 [2.2.5]'' removed hijack of store.saveChanges() (was catching save on http:, but there are other solutions that do a much better job of handling save to server.\n|please see [[ExportTiddlersPluginHistory]] for additional revision details|\n''2005.10.09 [0.0.0]'' development started\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: 3, revision: 0, date: new Date(2007,4,19)};\n//}}}\n\n// // macro handler\n//{{{\nconfig.macros.exportTiddlers = {\n label: "export tiddlers",\n prompt: "Copy selected tiddlers to an export document",\n newdefault: "export.html",\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 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 if (panel.style.display!="none") refreshExportList(0); // update list when panel is made visible\n e.cancelBubble = true;\n if (e.stopPropagation) e.stopPropagation();\n return(false);\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// // 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%; background:transparent; }\s\n#exportPanel tr { border:0px;padding:0px;margin:0px; background:transparent; }\s\n#exportPanel td { color:#000; border:0px;padding:0px;margin:0px; background:transparent; }\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 textarea { width:98%;padding:0px;margin:0px;overflow:auto;font-size:8pt; }\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;border:0 }\s\n#exportPanel .chk { width:auto;border:0 }\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// // 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-top:5px;">\s\nlocal path/filename<br>\s\n<input type="text" id="exportFilename" size=40 style="width:93%"><input \s\n type="button" id="exportBrowse" value="..." title="select or enter a local folder/file..." style="width:5%" \s\n onclick="this.previousSibling.value=window.promptForExportFilename(this);">\s\n<!--<input type="file" id="exportFilename" size=57 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-top:5px;">\s\n<table><tr><td align=left>\s\n server location, script, and parameters<br>\s\n</td><td align=right>\s\n <input type="checkbox" class="chk" id="exportNotify"\s\n onClick="document.getElementById(\s'exportSetNotifyPanel\s').style.display=this.checked?\s'block\s':\s'none\s'"> notify\s\n</td></tr></table>\s\n<input type="text" id="exportHTTPServerURL" onfocus="this.select()"><br>\s\n<div id="exportSetNotifyPanel" style="display:none">\s\n send email notices to<br>\s\n <input type="text" id="exportNotifyTo" onfocus="this.select()"><br>\s\n</div>\s\n</div><!--panel-->\s\n\s\n<!-- export to ftp server -->\s\n<div id="exportFTPPanel" style="display:none;margin-top:5px;">\s\n<table cellpadding="0" cellspacing="0" width="32%"><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="32%">\s\n username<br>\s\n <input type="text" id="exportFTPID" onfocus="this.select()"><br>\s\n</td><td width="32%">\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<!-- notes -->\s\nnotes<br>\s\n<textarea id="exportNotes" rows=3 cols=40 style="height:4em;margin-bottom:5px;" onfocus="this.select()"></textarea> \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 all </a>\s\n <a href="JavaScript:;" id="exportSelectChanges"\s\n onclick="onClickExportButton(this)" title="select tiddlers changed since last save">\s\n changes </a> \s\n <a href="JavaScript:;" id="exportSelectOpened"\s\n onclick="onClickExportButton(this)" title="select tiddlers currently being displayed">\s\n opened </a> \s\n <a href="JavaScript:;" id="exportToggleFilter"\s\n onclick="onClickExportButton(this)" title="show/hide selection filter">\s\n filter </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 – </a>\s\n <a href="JavaScript:;" id="exportListLarger"\s\n onclick="onClickExportButton(this)" title="increase list size">\s\n + </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</div><!--box-->\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// // 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// // 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 // u