the Glass Atlas is loading ...

Best viewed in the Firefox browser.
the Glass Atlas - Dave's Transparent Worldview and Christian Hypotheses
<!--{{{-->
<link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml' />
<!--}}}-->
Background: #fff
Foreground: #000
PrimaryPale: #8cf
PrimaryLight: #18f
PrimaryMid: #04b
PrimaryDark: #014
SecondaryPale: #ffc
SecondaryLight: #fe8
SecondaryMid: #db4
SecondaryDark: #841
TertiaryPale: #eee
TertiaryLight: #ccc
TertiaryMid: #999
TertiaryDark: #666
Error: #f88
/*{{{*/
body {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}

a {color:[[ColorPalette::PrimaryMid]];}
a:hover {background-color:[[ColorPalette::PrimaryMid]]; color:[[ColorPalette::Background]];}
a img {border:0;}

h1,h2,h3,h4,h5,h6 {color:[[ColorPalette::SecondaryDark]]; background:transparent;}
h1 {border-bottom:2px solid [[ColorPalette::TertiaryLight]];}
h2,h3 {border-bottom:1px solid [[ColorPalette::TertiaryLight]];}

.button {color:[[ColorPalette::PrimaryDark]]; border:1px solid [[ColorPalette::Background]];}
.button:hover {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::SecondaryLight]]; border-color:[[ColorPalette::SecondaryMid]];}
.button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::SecondaryDark]];}

.header {background:[[ColorPalette::PrimaryMid]];}
.headerShadow {color:[[ColorPalette::Foreground]];}
.headerShadow a {font-weight:normal; color:[[ColorPalette::Foreground]];}
.headerForeground {color:[[ColorPalette::Background]];}
.headerForeground a {font-weight:normal; color:[[ColorPalette::PrimaryPale]];}

.tabSelected{color:[[ColorPalette::PrimaryDark]];
	background:[[ColorPalette::TertiaryPale]];
	border-left:1px solid [[ColorPalette::TertiaryLight]];
	border-top:1px solid [[ColorPalette::TertiaryLight]];
	border-right:1px solid [[ColorPalette::TertiaryLight]];
}
.tabUnselected {color:[[ColorPalette::Background]]; background:[[ColorPalette::TertiaryMid]];}
.tabContents {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::TertiaryPale]]; border:1px solid [[ColorPalette::TertiaryLight]];}
.tabContents .button {border:0;}

#sidebar {}
#sidebarOptions input {border:1px solid [[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel {background:[[ColorPalette::PrimaryPale]];}
#sidebarOptions .sliderPanel a {border:none;color:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:hover {color:[[ColorPalette::Background]]; background:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:active {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::Background]];}

.wizard {background:[[ColorPalette::PrimaryPale]]; border:1px solid [[ColorPalette::PrimaryMid]];}
.wizard h1 {color:[[ColorPalette::PrimaryDark]]; border:none;}
.wizard h2 {color:[[ColorPalette::Foreground]]; border:none;}
.wizardStep {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];
	border:1px solid [[ColorPalette::PrimaryMid]];}
.wizardStep.wizardStepDone {background:[[ColorPalette::TertiaryLight]];}
.wizardFooter {background:[[ColorPalette::PrimaryPale]];}
.wizardFooter .status {background:[[ColorPalette::PrimaryDark]]; color:[[ColorPalette::Background]];}
.wizard .button {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryLight]]; border: 1px solid;
	border-color:[[ColorPalette::SecondaryPale]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryPale]];}
.wizard .button:hover {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Background]];}
.wizard .button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::Foreground]]; border: 1px solid;
	border-color:[[ColorPalette::PrimaryDark]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryDark]];}

.wizard .notChanged {background:transparent;}
.wizard .changedLocally {background:#80ff80;}
.wizard .changedServer {background:#8080ff;}
.wizard .changedBoth {background:#ff8080;}
.wizard .notFound {background:#ffff80;}
.wizard .putToServer {background:#ff80ff;}
.wizard .gotFromServer {background:#80ffff;}

#messageArea {border:1px solid [[ColorPalette::SecondaryMid]]; background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]];}
#messageArea .button {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::SecondaryPale]]; border:none;}

.popupTiddler {background:[[ColorPalette::TertiaryPale]]; border:2px solid [[ColorPalette::TertiaryMid]];}

.popup {background:[[ColorPalette::TertiaryPale]]; color:[[ColorPalette::TertiaryDark]]; border-left:1px solid [[ColorPalette::TertiaryMid]]; border-top:1px solid [[ColorPalette::TertiaryMid]]; border-right:2px solid [[ColorPalette::TertiaryDark]]; border-bottom:2px solid [[ColorPalette::TertiaryDark]];}
.popup hr {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::PrimaryDark]]; border-bottom:1px;}
.popup li.disabled {color:[[ColorPalette::TertiaryMid]];}
.popup li a, .popup li a:visited {color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:active {background:[[ColorPalette::SecondaryPale]]; color:[[ColorPalette::Foreground]]; border: none;}
.popupHighlight {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
.listBreak div {border-bottom:1px solid [[ColorPalette::TertiaryDark]];}

.tiddler .defaultCommand {font-weight:bold;}

.shadow .title {color:[[ColorPalette::TertiaryDark]];}

.title {color:[[ColorPalette::SecondaryDark]];}
.subtitle {color:[[ColorPalette::TertiaryDark]];}

.toolbar {color:[[ColorPalette::PrimaryMid]];}
.toolbar a {color:[[ColorPalette::TertiaryLight]];}
.selected .toolbar a {color:[[ColorPalette::TertiaryMid]];}
.selected .toolbar a:hover {color:[[ColorPalette::Foreground]];}

.tagging, .tagged {border:1px solid [[ColorPalette::TertiaryPale]]; background-color:[[ColorPalette::TertiaryPale]];}
.selected .tagging, .selected .tagged {background-color:[[ColorPalette::TertiaryLight]]; border:1px solid [[ColorPalette::TertiaryMid]];}
.tagging .listTitle, .tagged .listTitle {color:[[ColorPalette::PrimaryDark]];}
.tagging .button, .tagged .button {border:none;}

.footer {color:[[ColorPalette::TertiaryLight]];}
.selected .footer {color:[[ColorPalette::TertiaryMid]];}

.sparkline {background:[[ColorPalette::PrimaryPale]]; border:0;}
.sparktick {background:[[ColorPalette::PrimaryDark]];}

.error, .errorButton {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Error]];}
.warning {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryPale]];}
.lowlight {background:[[ColorPalette::TertiaryLight]];}

.zoomer {background:none; color:[[ColorPalette::TertiaryMid]]; border:3px solid [[ColorPalette::TertiaryMid]];}

.imageLink, #displayArea .imageLink {background:transparent;}

.annotation {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border:2px solid [[ColorPalette::SecondaryMid]];}

.viewer .listTitle {list-style-type:none; margin-left:-2em;}
.viewer .button {border:1px solid [[ColorPalette::SecondaryMid]];}
.viewer blockquote {border-left:3px solid [[ColorPalette::TertiaryDark]];}

.viewer table, table.twtable {border:2px solid [[ColorPalette::TertiaryDark]];}
.viewer th, .viewer thead td, .twtable th, .twtable thead td {background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::Background]];}
.viewer td, .viewer tr, .twtable td, .twtable tr {border:1px solid [[ColorPalette::TertiaryDark]];}

.viewer pre {border:1px solid [[ColorPalette::SecondaryLight]]; background:[[ColorPalette::SecondaryPale]];}
.viewer code {color:[[ColorPalette::SecondaryDark]];}
.viewer hr {border:0; border-top:dashed 1px [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::TertiaryDark]];}

.highlight, .marked {background:[[ColorPalette::SecondaryLight]];}

.editor input {border:1px solid [[ColorPalette::PrimaryMid]];}
.editor textarea {border:1px solid [[ColorPalette::PrimaryMid]]; width:100%;}
.editorFooter {color:[[ColorPalette::TertiaryMid]];}
.readOnly {background:[[ColorPalette::TertiaryPale]];}

#backstageArea {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::TertiaryMid]];}
#backstageArea a {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstageArea a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; }
#backstageArea a.backstageSelTab {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
#backstageButton a {background:none; color:[[ColorPalette::Background]]; border:none;}
#backstageButton a:hover {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstagePanel {background:[[ColorPalette::Background]]; border-color: [[ColorPalette::Background]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]];}
.backstagePanelFooter .button {border:none; color:[[ColorPalette::Background]];}
.backstagePanelFooter .button:hover {color:[[ColorPalette::Foreground]];}
#backstageCloak {background:[[ColorPalette::Foreground]]; opacity:0.6; filter:'alpha(opacity=60)';}
/*}}}*/
/*{{{*/
* html .tiddler {height:1%;}

body {font-size:.75em; font-family:arial,helvetica; margin:0; padding:0;}

h1,h2,h3,h4,h5,h6 {font-weight:bold; text-decoration:none;}
h1,h2,h3 {padding-bottom:1px; margin-top:1.2em;margin-bottom:0.3em;}
h4,h5,h6 {margin-top:1em;}
h1 {font-size:1.35em;}
h2 {font-size:1.25em;}
h3 {font-size:1.1em;}
h4 {font-size:1em;}
h5 {font-size:.9em;}

hr {height:1px;}

a {text-decoration:none;}

dt {font-weight:bold;}

ol {list-style-type:decimal;}
ol ol {list-style-type:lower-alpha;}
ol ol ol {list-style-type:lower-roman;}
ol ol ol ol {list-style-type:decimal;}
ol ol ol ol ol {list-style-type:lower-alpha;}
ol ol ol ol ol ol {list-style-type:lower-roman;}
ol ol ol ol ol ol ol {list-style-type:decimal;}

.txtOptionInput {width:11em;}

#contentWrapper .chkOptionInput {border:0;}

.externalLink {text-decoration:underline;}

.indent {margin-left:3em;}
.outdent {margin-left:3em; text-indent:-3em;}
code.escaped {white-space:nowrap;}

.tiddlyLinkExisting {font-weight:bold;}
.tiddlyLinkNonExisting {font-style:italic;}

/* the 'a' is required for IE, otherwise it renders the whole tiddler in bold */
a.tiddlyLinkNonExisting.shadow {font-weight:bold;}

#mainMenu .tiddlyLinkExisting,
	#mainMenu .tiddlyLinkNonExisting,
	#sidebarTabs .tiddlyLinkNonExisting {font-weight:normal; font-style:normal;}
#sidebarTabs .tiddlyLinkExisting {font-weight:bold; font-style:normal;}

.header {position:relative;}
.header a:hover {background:transparent;}
.headerShadow {position:relative; padding:4.5em 0 1em 1em; left:-1px; top:-1px;}
.headerForeground {position:absolute; padding:4.5em 0 1em 1em; left:0px; top:0px;}

.siteTitle {font-size:3em;}
.siteSubtitle {font-size:1.2em;}

#mainMenu {position:absolute; left:0; width:10em; text-align:right; line-height:1.6em; padding:1.5em 0.5em 0.5em 0.5em; font-size:1.1em;}

#sidebar {position:absolute; right:3px; width:16em; font-size:.9em;}
#sidebarOptions {padding-top:0.3em;}
#sidebarOptions a {margin:0 0.2em; padding:0.2em 0.3em; display:block;}
#sidebarOptions input {margin:0.4em 0.5em;}
#sidebarOptions .sliderPanel {margin-left:1em; padding:0.5em; font-size:.85em;}
#sidebarOptions .sliderPanel a {font-weight:bold; display:inline; padding:0;}
#sidebarOptions .sliderPanel input {margin:0 0 0.3em 0;}
#sidebarTabs .tabContents {width:15em; overflow:hidden;}

.wizard {padding:0.1em 1em 0 2em;}
.wizard h1 {font-size:2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizard h2 {font-size:1.2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizardStep {padding:1em 1em 1em 1em;}
.wizard .button {margin:0.5em 0 0; font-size:1.2em;}
.wizardFooter {padding:0.8em 0.4em 0.8em 0;}
.wizardFooter .status {padding:0 0.4em; margin-left:1em;}
.wizard .button {padding:0.1em 0.2em;}

#messageArea {position:fixed; top:2em; right:0; margin:0.5em; padding:0.5em; z-index:2000; _position:absolute;}
.messageToolbar {display:block; text-align:right; padding:0.2em;}
#messageArea a {text-decoration:underline;}

.tiddlerPopupButton {padding:0.2em;}
.popupTiddler {position: absolute; z-index:300; padding:1em; margin:0;}

.popup {position:absolute; z-index:300; font-size:.9em; padding:0; list-style:none; margin:0;}
.popup .popupMessage {padding:0.4em;}
.popup hr {display:block; height:1px; width:auto; padding:0; margin:0.2em 0;}
.popup li.disabled {padding:0.4em;}
.popup li a {display:block; padding:0.4em; font-weight:normal; cursor:pointer;}
.listBreak {font-size:1px; line-height:1px;}
.listBreak div {margin:2px 0;}

.tabset {padding:1em 0 0 0.5em;}
.tab {margin:0 0 0 0.25em; padding:2px;}
.tabContents {padding:0.5em;}
.tabContents ul, .tabContents ol {margin:0; padding:0;}
.txtMainTab .tabContents li {list-style:none;}
.tabContents li.listLink { margin-left:.75em;}

#contentWrapper {display:block;}
#splashScreen {display:none;}

#displayArea {margin:1em 17em 0 14em;}

.toolbar {text-align:right; font-size:.9em;}

.tiddler {padding:1em 1em 0;}

.missing .viewer,.missing .title {font-style:italic;}

.title {font-size:1.6em; font-weight:bold;}

.missing .subtitle {display:none;}
.subtitle {font-size:1.1em;}

.tiddler .button {padding:0.2em 0.4em;}

.tagging {margin:0.5em 0.5em 0.5em 0; float:left; display:none;}
.isTag .tagging {display:block;}
.tagged {margin:0.5em; float:right;}
.tagging, .tagged {font-size:0.9em; padding:0.25em;}
.tagging ul, .tagged ul {list-style:none; margin:0.25em; padding:0;}
.tagClear {clear:both;}

.footer {font-size:.9em;}
.footer li {display:inline;}

.annotation {padding:0.5em; margin:0.5em;}

* html .viewer pre {width:99%; padding:0 0 1em 0;}
.viewer {line-height:1.4em; padding-top:0.5em;}
.viewer .button {margin:0 0.25em; padding:0 0.25em;}
.viewer blockquote {line-height:1.5em; padding-left:0.8em;margin-left:2.5em;}
.viewer ul, .viewer ol {margin-left:0.5em; padding-left:1.5em;}

.viewer table, table.twtable {border-collapse:collapse; margin:0.8em 1.0em;}
.viewer th, .viewer td, .viewer tr,.viewer caption,.twtable th, .twtable td, .twtable tr,.twtable caption {padding:3px;}
table.listView {font-size:0.85em; margin:0.8em 1.0em;}
table.listView th, table.listView td, table.listView tr {padding:0px 3px 0px 3px;}

.viewer pre {padding:0.5em; margin-left:0.5em; font-size:1.2em; line-height:1.4em; overflow:auto;}
.viewer code {font-size:1.2em; line-height:1.4em;}

.editor {font-size:1.1em;}
.editor input, .editor textarea {display:block; width:100%; font:inherit;}
.editorFooter {padding:0.25em 0; font-size:.9em;}
.editorFooter .button {padding-top:0px; padding-bottom:0px;}

.fieldsetFix {border:0; padding:0; margin:1px 0px;}

.sparkline {line-height:1em;}
.sparktick {outline:0;}

.zoomer {font-size:1.1em; position:absolute; overflow:hidden;}
.zoomer div {padding:1em;}

* html #backstage {width:99%;}
* html #backstageArea {width:99%;}
#backstageArea {display:none; position:relative; overflow: hidden; z-index:150; padding:0.3em 0.5em;}
#backstageToolbar {position:relative;}
#backstageArea a {font-weight:bold; margin-left:0.5em; padding:0.3em 0.5em;}
#backstageButton {display:none; position:absolute; z-index:175; top:0; right:0;}
#backstageButton a {padding:0.1em 0.4em; margin:0.1em;}
#backstage {position:relative; width:100%; z-index:50;}
#backstagePanel {display:none; z-index:100; position:absolute; width:90%; margin-left:3em; padding:1em;}
.backstagePanelFooter {padding-top:0.2em; float:right;}
.backstagePanelFooter a {padding:0.2em 0.4em;}
#backstageCloak {display:none; z-index:20; position:absolute; width:100%; height:100px;}

.whenBackstage {display:none;}
.backstageVisible .whenBackstage {display:block;}
/*}}}*/
/***
StyleSheet for use when a translation requires any css style changes.
This StyleSheet can be used directly by languages such as Chinese, Japanese and Korean which need larger font sizes.
***/
/*{{{*/
body {font-size:0.8em;}
#sidebarOptions {font-size:1.05em;}
#sidebarOptions a {font-style:normal;}
#sidebarOptions .sliderPanel {font-size:0.95em;}
.subtitle {font-size:0.8em;}
.viewer table.listView {font-size:0.95em;}
/*}}}*/
/*{{{*/
@media print {
#mainMenu, #sidebar, #messageArea, .toolbar, #backstageButton, #backstageArea {display: none !important;}
#displayArea {margin: 1em 1em 0em;}
noscript {display:none;} /* Fixes a feature in Firefox 1.5.0.2 where print preview displays the noscript content */
}
/*}}}*/
<!--{{{-->
<div class='header' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<div id='mainMenu' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>
</div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
</div>
<!--}}}-->
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::ViewToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='subtitle'><span macro='view modifier link'></span>, <span macro='view modified date'></span> (<span macro='message views.wikified.createdPrompt'></span> <span macro='view created date'></span>)</div>
<div class='tagging' macro='tagging'></div>
<div class='tagged' macro='tags'></div>
<div class='viewer' macro='view text wikified'></div>
<div class='tagClear'></div>
<!--}}}-->
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::EditToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='editor' macro='edit title'></div>
<div macro='annotations'></div>
<div class='editor' macro='edit text'></div>
<div class='editor' macro='edit tags'></div><div class='editorFooter'><span macro='message views.editor.tagPrompt'></span><span macro='tagChooser excludeLists'></span></div>
<!--}}}-->
To get started with this blank [[TiddlyWiki]], you'll need to modify the following tiddlers:
* [[SiteTitle]] & [[SiteSubtitle]]: The title and subtitle of the site, as shown above (after saving, they will also appear in the browser title bar)
* [[MainMenu]]: The menu (usually on the left)
* [[DefaultTiddlers]]: Contains the names of the tiddlers that you want to appear when the TiddlyWiki is opened
You'll also need to enter your username for signing your edits: <<option txtUserName>>
These [[InterfaceOptions]] for customising [[TiddlyWiki]] are saved in your browser

Your username for signing your edits. Write it as a [[WikiWord]] (eg [[JoeBloggs]])

<<option txtUserName>>
<<option chkSaveBackups>> [[SaveBackups]]
<<option chkAutoSave>> [[AutoSave]]
<<option chkRegExpSearch>> [[RegExpSearch]]
<<option chkCaseSensitiveSearch>> [[CaseSensitiveSearch]]
<<option chkAnimate>> [[EnableAnimations]]

----
Also see [[AdvancedOptions]]
<<importTiddlers>>
NIV:
But in your hearts set apart Christ as Lord. Always be prepared to give an answer to everyone who asks you to give the reason for the hope that you have. But do this with gentleness and respect,
keeping a clear conscience, so that those who speak maliciously against your good behavior in Christ may be ashamed of their slander.

NASB:
1Pe 3:15   	but sanctify Christ as Lord in your hearts, always {being} ready to make a defense to everyone who asks you to give an account for the hope that is in you, yet with gentleness and reverence;
1Pe 3:16   	and keep a good conscience so that in the thing in which you are slandered, those who revile your good behavior in Christ will be put to shame. 
   [18]For Christ also suffered once for sins, the righteous for the 
unrighteous, that he might bring us to God, being put to death in the 
flesh but made alive in the spirit, [19]in which he went and proclaimed 
to the spirits in prison, [20]because they formerly did not obey, when 
God's patience waited in the days of Noah, while the ark was being 
prepared, in which a few, that is, eight persons, were brought safely 
through water. (ESV)
   For we know that if the tent that is our earthly home is destroyed, we 
have a building from God, a house not made with hands, eternal in the 
heavens. [2]For in this tent we groan, longing to put on our heavenly 
dwelling, [3]if indeed by putting it on we may not be found naked. [4]For 
while we are still in this tent, we groan, being burdened-not that we 
would be unclothed, but +++^*[that we would be further clothed, so that what is 
mortal may be swallowed up by life.]i.e. the believer is given immortality - something that the condemned is not given (i.e. no eternal life in a place called [[Hell]], just destruction in an eternal place called Hell=== [5]He who has prepared us for this 
very thing is God, who has given us the Spirit as a guarantee.
   [6]So we are always of good courage. We know that while we are at home 
in the body we are away from the Lord, [7]for we walk by faith, not by 
sight. [8]Yes, we are of good courage, and we would rather be away from 
the body and at home with the Lord. [9]So whether we are at home or away, 
we make it our aim to please him. [10]For +++^*[we must all appear before the 
judgment seat of Christ]all us Christians, that is - unbelievers appear before GodTheFather - or do we all go before Christ and then what he doesn't claim as his goes to the Father??===, so that each one may receive what is due for 
what he has done in the body, whether good or evil.
   [11]Therefore, knowing the fear of the Lord, we persuade others. But 
what we are is known to God, and I hope it is known also to your 
conscience. [12]We are not commending ourselves to you again but giving 
you cause to boast about us, so that you may be able to answer those who 
boast about outward appearance and not about what is in the heart. 
[13]For if we are beside ourselves, it is for God; if we are in our right 
mind, it is for you. [14]For the love of Christ controls us, because we 
have concluded this: that one has died for all, therefore all have died; 
[15]and he died for all, that those who live might no longer live for 
themselves but for him who for their sake died and was raised.
   [16]From now on, therefore, we regard no one according to the flesh. 
Even though we once regarded Christ according to the flesh, we regard him 
thus no longer. [17]Therefore, if anyone is in Christ, he is a new 
creation. The old has passed away; behold, the new has come. [18]All this 
is from God, who through Christ reconciled us to himself and gave us the 
ministry of reconciliation; [19]that is, in Christ God was reconciling 
the world to himself, not counting their trespasses against them, and 
entrusting to us the message of reconciliation. [20]Therefore, we are 
ambassadors for Christ, God making his appeal through us. We implore you 
on behalf of Christ, be reconciled to God. [21]For our sake he made him 
to be sin who knew no sin, so that in him we might become the 
righteousness of God. (ESV)
NASB:
2Pe 1:5   	Now for this very reason also, applying all diligence, in your faith supply moral excellence, and in {your} moral excellence, knowledge,
2Pe 1:6   	and in {your} knowledge, self-control, and in {your} self-control, perseverance, and in {your} perseverance, godliness,
2Pe 1:7   	and in {your} godliness, brotherly kindness, and in {your} brotherly kindness, love.
2Pe 1:8   	For if these {qualities} are yours and are increasing, they render you neither useless nor unfruitful in the true knowledge of our Lord Jesus Christ. 
does it upload?
   This is now the second letter that I am writing to you, beloved. In 
both of them I am stirring up your sincere mind by way of reminder, that 
you should remember the predictions of the holy prophets and the 
commandment of the Lord and Savior through your apostles, knowing this 
first of all, that scoffers will come in the last days with scoffing, 
following their own sinful desires. They will say, "Where is the promise 
of his coming? For ever since the fathers fell asleep, all things are 
continuing as they were from the beginning of creation." For they 
deliberately overlook this fact, @@background-color:#FF3;that the heavens existed long ago, and 
the earth was formed out of water and through water by the word of God, 
and that by means of these the world that then existed was deluged with 
water and perished. But by the same word the heavens and earth that now 
exist are stored up for fire, being kept until the day of judgment and 
destruction of the ungodly.@@
   But do not overlook this one fact, beloved, that with the Lord one day 
is as a thousand years, and a thousand years as one day. The Lord is not 
slow to fulfill his promise as some count slowness, but is patient toward 
you, not wishing that any should perish, but that all should reach 
repentance. +++^*[But the day of the Lord will come like a thief](as opposed to the ComingOnClouds which Jesus did know about and told them the signs to look for)===, and then the 
heavens will pass away with a roar, and the heavenly bodies will be 
((burned up and dissolved(this is talking about the literal / physical destruction of the earth to be replaced by the new heavens and new earth))), and the earth and the works that are done on it 
will be exposed.
   Since all these things are thus to be dissolved, what sort of people 
ought you to be in lives of holiness and godliness, waiting for and 
hastening the coming of the day of God, because of which the heavens will 
be set on fire and dissolved, and the heavenly bodies will melt as they 
burn! But according to his promise we are waiting for new heavens and a 
new earth in which righteousness dwells. (ESV)
I'm not really sure about this one.  Here's the wikipedia definition

>Amillennialism (Latin: a- "not" + mille "thousand" + annum "year") is a view in Christian eschatology named for its denial of a future, thousand-year, physical reign of Jesus Christ on the earth, as espoused in the premillennial and some postmillennial views of the Book of Revelation, chapter 20

Some people view the definition of amillennialism as being: "we're in the millennium right now, and it doesn't include Jesus running the whole show in bodily form in an actual place, say in Jerusalem."  I would agree with that, but I consider myself a postmillennialist in that I think we're in the MillennialKingdom right now and that at the end, the SecondComing will happen.


>listening to a couple of amilennialists talk about Rev 20 (Gene Cook with Jay Adams), they seem to think that the stuff that happens //after// the millennium are supposed to take place at the beginning in some sort of gradual way or something (I know - sounds weird - maybe I'm just hearing them wrong)

I think the word "amillennial" is just dumb and should be dropped, because it appears to say "there is no millennium at all" and yet they talk about us being in it (??)
*maybe they want to differentiate themselves from the postmillennialists who (I think wrongly) believe that the MillennialKingdom is yet future and will include the physical Jesus as ruler.  Why don't we just call that viewpoint "ConfusedPostMillennialism"?

Okay, here's what I've landed on as the main difference:  Amillenniallists believe that things will get worse and worse, and PostMillenialists think the world will get better and better under Christs current heavenly rule
the first century prophesy (declared by Christ) event that turned out to be the destruction of Jerusalem and the temple by the Romans in 70AD.  It is a reiteration of a similar but lesser event that was prophesied in Daniel and fulfilled by Antiochus Epiphanes (sp?) (215 to 164 BC)
and they began selling their property and possessions and were sharing them with all, as anyone might have need. 
I just found out that the word "Allah" is just a word for God in Arabic, used by the early Arab Christians long before Islam was invented.  Interesting...
Here’s what i’ve been thinking about regarding the church and salvation and the world lately. I’ve been thinking of calling  the stance [[Calvinianism]], as its a cross between [[Calvinism]] and [[Arminianism]]. “How could this be?” you say?

Well, it comes from a few changes of mind I’ve had in recent years about what the bible is really saying as opposed to what one denomination (or another) has been saying the bible means.

I like point form, so here goes:

#Hell is a place of eternal destruction, not eternal torture. You can read my views on this in detail (google "David Reagan Hell" - his view makes most sense to me (even though he's a dispensational pre-tribber))
#Before we get our new resurrection/eternal bodies, our souls are not whole, ie not indivisible.
## It seems to me that the quite frequent apparent contradictions in the bible regarding salvation and damnation that gives rise to the whole Calvinist/Arminian debate are resolved if you look at statements like “all liars…” and “get behind me Satan” and John 3:16 as evidence for viewing beliefs, attitudes and states of mind or spirit as being the damnable or salvable unit. This would be a "new" figure of speech, not unlike the statements of hyperbole found in apocalyptic scriptures.  In more detail: the example of Mat 16:23: But he turned and said to Peter, “Get behind me, Satan! You are a stumbling block to me, because you are not setting your mind on God’s interests, but on man’s.”. I would submit that Jesus is not talking to the fallen angel who is controlling the person Peter, he's talking to Peter's current satanic attitude of unbelief. You could also apply this to Rev 21:8
#There is nothing truly good in us that is not from Christ, placed in our lives from before time began.
#The history of the People of God and the world found in the Old Testament is a type both for the entire world and for our own souls because of the New Covenant. I.e. the priests and Levites were to all the other tribes as Christianity is now to the world.
#At the time of the final judgment, all people we’d accurately describe as Christians will experience both heaven (salvation) and hell (destruction), and some, possibly all (but not necessarily), non-Christians will experience both Hell (duh!) and Heaven/Salvation to the extent that their souls experienced Christ (true love, true perseverance, true kindness, etc), even if they were not consciously aware that Christ the person was acting in their lives. These last might correspond to the seeds cast on the pathway or on rocky soil, or in the weeds.
## another way of seeing it: If we were a supercomputer, God made the hardware and operating system to run the software written by Christ, and we get to tinker with the code as we wish, but in the end all the viruses and malware will be consciously purged ("consciously" - I know, it strains the metaphor) and when we are "rebooted" in our resurrection bodies, only the Jesus code we downloaded and used ourselves will remain.

Another way of putting the same thing:

What if we view the human soul in a more composite nature, modeled after the Old Testament nation of Israel? The soul that is saved or not saved becomes analogous to the Promised Land, and the various beliefs and attitudes that control our thoughts and actions correspond to the people of biblical Israel over the millenia. We'd have to employ a new figure of speech, similar to the use of hyperbole often found in the apocalyptic books of the bible. What I mean is, quite often you find statements made towards a person that is actually made towards an evil belief or attitude being presently expressed. An example is Mat 16:23: But he turned and said to Peter, “Get behind me, Satan! You are a stumbling block to me, because you are not setting your mind on God’s interests, but on man’s.”. I would submit that Jesus is not talking to the fallen angel who is controlling the person Peter, he's talking to Peter's current satanic attitude of unbelief. You could also apply this to Rev 21:8

If we extend that figure of speech - talking about a belief or attitude as a person - we can have a sort of Calvinist/pseudo-Universalist take on salvation: The only beliefs and attitudes and actions within us that are truly good are those authored by Christ himself, put into us before time began. Likewise only those souls who have Christ within them, whether a conscious Christian or a mistaken Hindu, for example, who truly sacrifices because of the genuine Christ-like love towards their child, will have their soul renovated and resurrected by God for eternal life; so the Christian becomes analogous to the Priesthood and tribe of Levites, and the rest of humanity becomes the rest of the tribes. (This may be what is meant in Revelation when it says there will be "no more sea" as the term "sea" in apocalyptic literature refers to the gentile nations.) This leaves open the possibility that while there are some people who are utterly without Christ and will be completely destroyed in the lake of fire, ultimately all Christian souls will briefly have a taste of Hell when their non-Christian attitudes and beliefs are purged from their souls in preparation for eternity. 

!!a further update (2011-02-24)
I've just recently listened to an [[Unbelievable!|UnBelievable]] podcast on "do all roads lead to God" and now realize my position is more properly termed "[[Inclusivism]]"
try to find any reference to angels singing (can't use a paraphrased bible) - I bet you can't do it... 

if you can, let me know by commenting here
/***
|''Name:''|AnnotationsPlugin|
|''Description:''|Inline annotations for tiddler text.|
|''Author:''|Saq Imtiaz ( lewcid@gmail.com )|
|''Source:''|http://tw.lewcid.org/#AnnotationsPlugin|
|''Code Repository:''|http://tw.lewcid.org/svn/plugins|
|''Version:''|2.0|
|''Date:''||
|''License:''|[[Creative Commons Attribution-ShareAlike 3.0 License|http://creativecommons.org/licenses/by-sa/3.0/]]|
|''~CoreVersion:''|2.2.3|

!!Usage:
*{{{((text to annotate(annotation goes here)}}}
* To include the text being annotated, in the popup as a title, put {{{^}}} as the first letter of the annotation text.
** {{{((text to annotate(^annotation goes here)}}}

!!Examples:
Mouse over, the text below:
* ((banana(the best fruit in the world)))
* ((banana(^ the best fruit in the world)))

***/
// /%
config.formatters.unshift({name:"annotations",match:"\\(\\(",lookaheadRegExp:/\(\((.*?)\((\^?)((?:.|\n)*?)\)\)\)/g,handler:function(w){
this.lookaheadRegExp.lastIndex=w.matchStart;
var _2=this.lookaheadRegExp.exec(w.source);
if(_2&&_2.index==w.matchStart){
var _3=createTiddlyElement(w.output,"span",null,"annosub",_2[1]);
_3.anno=_2[3];
if(_2[2]){
_3.subject=_2[1];
}
_3.onmouseover=this.onmouseover;
_3.onmouseout=this.onmouseout;
_3.ondblclick=this.onmouseout;
w.nextMatch=_2.index+_2[0].length;
}
},onmouseover:function(e){
popup=createTiddlyElement(document.body,"div",null,"anno");
this.popup=popup;
if(this.subject){
wikify("!"+this.subject+"\n",popup);
}
wikify(this.anno,popup);
addClass(this,"annosubover");
Popup.place(this,popup,{x:25,y:7});
},onmouseout:function(e){
removeNode(this.popup);
this.popup=null;
removeClass(this,"annosubover");
}});
setStylesheet(".anno{position:absolute;border:2px solid #000;background-color:#DFDFFF; color:#000;padding:0.5em;max-width:40em;width:expression(document.body.clientWidth > (255/12) *parseInt(document.body.currentStyle.fontSize)?'15em':'auto' );}\n"+".anno h1, .anno h2{margin-top:0;color:#000;}\n"+".annosub{background:#ccc;}\n"+".annosubover{z-index:25; background-color:#DFDFFF;cursor:help;}\n","AnnotationStyles");


// %/
...


From Wikipedia

Arminianism is a school of soteriological thought in Protestant Christian theology based on the ideas of the Dutch theologian Jacobus Arminius.[1] Its acceptance stretches through much of mainstream, evangelical Protestantism.[citation needed] Due to the influence of John Wesley, Arminianism is perhaps most prominent in the Methodist movement.[citation needed]

Arminianism holds to the following tenets:

    * Humans are naturally unable to make any effort towards salvation
    * Salvation is possible by grace alone
    * Works of human effort cannot cause or contribute to salvation
    * God's election is conditional on faith in Jesus
    * Jesus' atonement was for all people
    * God allows his grace to be resisted by those unwilling to believe
    * //''Salvation can be lost''//, as continued salvation is conditional upon continued faith

Arminianism is most accurately used to define those who affirm the original beliefs of Jacobus Arminius himself, but the term can also be understood as an umbrella for a larger grouping of ideas including those of Hugo Grotius, John Wesley, Clark Pinnock, and others. There are two primary perspectives on how the system is applied in detail: Classical Arminianism, which sees Arminius as its figurehead, and Wesleyan Arminianism, which sees John Wesley as its figurehead. Wesleyan Arminianism is sometimes synonymous with Methodism. Additionally, Arminianism is understood by some of its critics to also include Pelagianism, though supporters from both primary perspectives deny this vehemently.

Within the broad scope of church history, Arminianism is closely related to Calvinism (or Reformed theology), and the two systems share both history and many doctrines in common. Nonetheless, they are often viewed as archrivals within Evangelicalism because of their disagreement over the doctrines of predestination and salvation.
(as provided by James White on his podcast around 2011-01-13, these from [[Netbible|http://bible.org/netbible/index.htm]])

2Pet 3:9 The Lord is not slow concerning his promise, 23  as some regard slowness, but is being patient toward you, because he does not wish 24  for any 25  to perish but for all to come to repentance.

Mat 23:37 “O Jerusalem, Jerusalem, 46  you who kill the prophets and stone those who are sent to you! 47  How often I have longed 48  to gather your children together as a hen gathers her chicks under her wings, but 49  you would have none of it! 50 

1Tim 2:4 since he wants 5  all people 6  to be saved and to come to a knowledge of the truth.
The concept of morality is one that requires a moral law giver.  If there is no God, you cannot (logically) use morality to argue your case
[<img(80%+,+)[http://www.cedar-chiropractic.com/images/golden woods1.jpeg]]
by Kenneth Gentry [[here|http://freebooks.commentary.net/freebooks/docs/2206_47e.htm]]

This book explains how it's most reasonable to take the dating of Revelation as being written ''//before//'' AD 70  (and I think  book of the New Testament)
http://www.beretta-online.com/wordpress/index.php/a-genuine-generous-orthodoxy/
tbc
[[Bully's Blog|http://www.bullartistry.com.au/wp/]]
[[Say Hello to my Little Friend|http://www.beretta-online.com/wordpress/]]

lots more... tbc
I've been posting more at other people's blogs than here lately, so I thought I'd better link them from here.
this is the idea that, quite often, people who argue against christianity will use "borrowed capital" to root their arguements.  First, here's a good abbreviated illustration of the concept itself (click the arrowhead):+++^* (first heard from GaryDeMar) Suppose someone stole $100,000.00.  They were able to use it over time to invest and it grew to be valued at $100 million.  Then the person is caught.  Should the judge order the person to give up the entire amount or just the initial $100,000.00.  The answer, of course, is he/she should give up the entire amount (and suffer whatever else for punishment) ===

The following ''(see below)'' are examples of this in action

also: The concept also applies to the person who does good things in life and expects to get eternal life based on their own merits.  If they claim they created the good in them, they are trying to steal that which can only be given to them.  Its like plagerism - if they claim the brilliant work is their own, it counts for nothing, but if they declare up front what they've built upon, then they're validated for the new perspective that they bring - their part in the [[glorification of god|GlorifyGod]]
get it here: http://freebooksource.com/?p=30170
http://www.jrdkirk.com/2010/09/29/adam-theology-hits-the-evolutionary-fan-at-calvin/
<<tiddler [[An updated summary]]>>
TULIPS = 

[[Total Depravity]]
[[Unconditional Election]]
[[Limited Atonement]]
[[Irresistible Grace]]
[[Perseverance of the Saints]]
[[Sovereignty of God]]

see also [[this reformed site| http://www.reformedreader.org/t.u.l.i.p.htm]] (I haven't read this yet, just gathering the TULIP info for now...)
John 6
John 10
(GregKoukle suggested these)
(future topic)
<<tiddler Calvinianism>>
This would be a possible answer to the problem of Calvinism vs Arminianism,

i.e. for those who were once "strong Christians" and now deny Christ, could it be that when he/she is judged in the end, that it is the "christian remnant" inside of him that is saved and the nasty bits are "burned up"?  This would fit in with my view on [[Hell]], i.e. that when the bible says that evil-doers will be destroyed it doesn't mean that they will be kept alive supernaturally to enable them to survive eternal torture.  It also is in keeping that all liars (etc.) will have their place in the lake of fire (paraphrased).  I have lied, yet I'm a Christian.  Maybe (somehow) the lying parts of me will not survive the judgment, but, because of Christ, the other parts will survive.  An argument against is that nothing in me is good apart from Christ.  If that were the case, however, then what's the point of sanctification?

Still thinking about this...

Does Jesus identify with the "good" in non-believers?  Or in other words, is the good that non-believers do caused by Christ, but they're just not consciously aware of it?  Is this dangerous thinking that may lead to the perils of [[Universalism]], or can I have my cake and eat it to??
+++^*[see also scripture: Mat 25:31-46]<<tiddler [[Mat 25:31-46]]>>===

see TheIndivisibleSoulProblem
What is the evidence for such an assertion?
secular evidence for his existance: [[Caesar and Christ (Story of Civilization Vol 3 - Durant)]]
open this topic to see subtopics
Many dispansationalists argue that Christ can't be ruling his millennial kingdom now because he's not physically here, but they say that Satan is ruling this world now.  Strangely they have no problem with satan ruling "spiritually" (i.e. not here physically).  How can they reconcile this?
If its okay for us to stake a claim on Dec 25 for Christmas [which is a great improvement on the drunken revelry that women and children feared before the Germans started Christmas as a family holiday, and before Charles Dickens' "Christmas Carol", and "the night before Christmas"(and, yes - it is okay)] then I think it should also be a good thing to take hold of (and rehabilitate) Santa Claus as well.

What I mean is we should glorify God by pointing out the similarities b/w the Santa story & character and God the Father and the biblical account of the great white throne judgment and the coming down from heaven of the New Jerusalem and the start of the new heaven and earth

these are in no particular order:
1 Santa/Father: he knows when you are sleeping, he knows when you're awake, he knows if you've been bad or good
2 we are God's children - we must Believe as little children / Santa only relates to children
3 you have to believe in him, or you don't get presents from him [eternal life]
4 good children [believe in Christ] get gifts [things prepared for us in heaven], bad children [unbelievers] get coal [fires of hell]
5  for the final judgment Christ +++^*[comes on clouds](okay, ComingOnClouds actually refers to the judgment of Judah in Jerusalem in AD70, but I think there are sky references in the final judgment as well===  / Santa comes on a flying sleigh 
6 he comes like a thief in the night, Santa comes at night and sneaks unseen into your house
7 he has a bunch of secret workers [elves/angels] that do his bidding
8 he lives at the top of the world / is ruler over all heaven and  earth
9 he is ageless / eternal
10 red and white suit / the bread [white] and cup [red]
11 christmas tree = same shape & appearance as new jerusalem [I think of it as giant pyramid]
Truth sounds like hate to those who hate the truth - unknown
/***
| Name|CloseOnCancelPlugin|
| Description|Closes the tiddler if you click new tiddler then cancel. Default behaviour is to leave it open|
| Version|3.0 ($Rev: 1845 $)|
| Date|$Date: 2007-03-16 15:19:22 +1000 (Fri, 16 Mar 2007) $|
| Source|http://mptw.tiddlyspot.com/#CloseOnCancelPlugin|
| Author|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
***/
//{{{
merge(config.commands.cancelTiddler,{

	handler_orig_closeUnsaved: config.commands.cancelTiddler.handler,

	handler: function(event,src,title) {
		this.handler_orig_closeUnsaved(event,src,title);
		if (!store.tiddlerExists(title) && !store.isShadowTiddler(title))
			story.closeTiddler(title,true);
	 	return false;
	}

});

//}}}
<html><div class="esv"><h2>Colossians 1:1-8 <small class="audio">(<a href="http://www.gnpcb.org/esv/share/audio/smil?passage=Colossians+1%3A1-8">Listen</a>)</small></h2>

<div class="esv-text">
<p class="chapter-first"><span class="chapter-num" id="v51001001-1">1:1&nbsp;</span>Paul, an apostle of Christ Jesus by the will of God, and Timothy our brother,</p>
 <p><span class="verse-num" id="v51001002-1">2&nbsp;</span>To the saints and faithful brothers in Christ at Colossae:</p>

<p>Grace to you and peace from God our Father.</p>
 
<p><span class="verse-num" id="v51001003-1">3&nbsp;</span>We always thank God, the Father of our Lord Jesus Christ, when we pray for you, <span class="verse-num" id="v51001004-1">4&nbsp;</span>since we heard of your faith in Christ Jesus and of the love that you have for all the saints, <span class="verse-num" id="v51001005-1">5&nbsp;</span>because of the hope laid up for you in heaven. Of this you have heard before in the word of the truth, <span style="font-weight: bold; font-style: italic;">the gospel, </span><span style="font-weight: bold; font-style: italic;" class="verse-num" id="v51001006-1">6&nbsp;</span><span style="font-weight: bold; font-style: italic;">which has come to you, as indeed in the whole world it is bearing fruit and growing</span>—as it also does among you, since the day you heard it and understood the grace of God in truth, <span class="verse-num" id="v51001007-1">7&nbsp;</span>just as you learned it from Epaphras our beloved fellow servant. He is a faithful minister of Christ on your behalf <span class="verse-num" id="v51001008-1">8&nbsp;</span>and has made known to us your love in the Spirit.  (<a href="http://www.esv.org" class="copyright">ESV</a>)</p>

</div>
</div></html>
<html><div class="esv"><h2>Colossians 1:23 <small class="audio">(<a href="http://www.gnpcb.org/esv/share/audio/smil?passage=Colossians+1%3A23">Listen</a>)</small></h2>

<div class="esv-text"><p><span class="verse-num" id="v51001023-1">23&nbsp;</span>if indeed you continue in the faith, stable and steadfast, not shifting from the hope of the gospel that you heard, <span style="font-weight: bold; font-style: italic;">which has been proclaimed in all creation under heaven</span>, and of which I, Paul, became a minister.  (<a href="http://www.esv.org" class="copyright">ESV</a>)</p>

</div>
</div></html>
Background: #ffd
Foreground: #000
SecondaryPale: #ffcc33
SecondaryLight: #ffaa00
SecondaryMid: #aa7700
SecondaryDark: #333300
PrimaryPale: #cc9933
PrimaryLight: #997722
PrimaryMid: #664422
PrimaryDark: #222211
TertiaryPale: #ffffee
TertiaryLight: #cccc99
TertiaryMid: #999
TertiaryDark: #666
Error: #f88
This refers to Christ coming in judgment, (destruction of Jerusalem in AD70) signifying his ascension to the throne at the right hand of God, to judge the "bad remnant" of apostate Israel after the "good remnant" (the Jewish Church plus any grafted-on Gentiles hanging around) has escaped out of town.  This is not the same as the SecondComing
/%
|Name|CommentScript|
|Source|http://www.TiddlyTools.com/#CommentScript|
|Version|1.1.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <<br>>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.1|
|Type|script|
|Requires|InlineJavascriptPlugin, NestedSlidersPlugin, ExpandSlidersScript (optional)|
|Overrides||
|Description|form to enter feedback/comments that are automatically added to tiddler content|

Usage:
<<tiddler CommentScript with: reverse>>

To 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 you omit the comment marker from your tiddler source, new comments are automatically appended to the end of the tiddler.  'reverse' is an optional keyword that causes all new comments to be inserted AFTER the comment marker instead of before the marker (producing reverse chronological order).  If there is no comment marker in your tiddlers source, the 'reverse' option is ignored and new comments are automatically appended to the end of the tiddler.

You can customize the format of the comment headlines by redefining:
	config.options.txtCommentBylineFormat="format string"

The headline default format string is:
	"%0 (%1): %2"

where: %0=date/timestamp, %1=username, and %2=subject

Revision History:
2007.07.05 [1.1.0] added 'view all/close all' toolbar item plus code cleanup
2007.06.28 [1.0.2] added tiddler.fields to saveTiddler() call (preserves custom fields)
2007.05.26 [1.0.1] added support for optional 'reverse' keyword.
2006.04.20 [1.0.0] initial release

%/@@position:relative;+++^40em^{{small{[add a note|add a new note to this tiddler]}}}...
	{{toolbar{<<tiddler CloseSlider>>}}}add a note
----
	{{smallform small center{<html><form><!--
		--><input type="text" id="subject" name="subject" title="enter a short 'headline'" style="width:100%">

		<textarea id="body" name="body" rows="7" title="enter the text of your note" style="width:100%;font-family:helvetica,sans"></textarea>

		<i>Please enter your information and then press</i> <!--
		--><input type="button" value="post" onclick="addTiddlerComment(this.form.subject,this.form.body);"><!--
	--></form></html>}}}===
@@ |{{small{<<tiddler ExpandSlidersScript with: here "view all" "close all">>}}}<script>

window.addTiddlerComment = function(subject,body) { 
	// get the tiddler source and locate insertion marker (if present)
	var here=story.findContainingTiddler(subject); if (!here) return; var tiddler=store.getTiddler(here.getAttribute("tiddler"));
	var marker="/%"+"comment"+"%/"; var pos=tiddler.text.indexOf(marker); if (pos==-1) pos=tiddler.text.length;
	if ("$1".toLowerCase()=="reverse") pos+=marker.length; // reverse order by inserting AFTER comment marker
	// generate the "byline"
	var bylineFormat=config.options.txtCommentBylineFormat;
	if (bylineFormat==undefined) bylineFormat="%0 (%1): %2";
	var byline=bylineFormat.format([(new Date()).toLocaleString(),config.options.txtUserName,subject.value]);
	// update source and refresh tiddler display
	var txt=body.value; if (!txt.length) txt="//no text//";
	var newtxt=tiddler.text.substr(0,pos)+"+++!!!!!["+byline+"]>\n"+txt+"===\n"+tiddler.text.substr(pos);
	store.saveTiddler(tiddler.title,tiddler.title,newtxt,tiddler.modifier,tiddler.modified,tiddler.tags,tiddler.fields);
	story.refreshTiddler(tiddler.title,1,true);
}

</script>
/%comment%/
config.commands.editTiddler.hideReadOnly=true; 
//{{{
config.options.chkInsertTabs = true;    // tab inserts a tab when editing a tiddler
config.views.wikified.defaultText = ""; // don't need message when a tiddler doesn't exist
config.views.editor.defaultText = "";   // don't need message when creating a new tiddler 
//}}}
The sub-view of PostMillennialism that believe that the MillennialKingdom is yet future and will include the physical Jesus as ruler.  Its not stupid - it's just a little slow... ;-)
config.options.chkShowQuickEdit=true; // for showing quick edit toolbar in edit mode
Believer's baptism
From Wikipedia, the free encyclopedia
  (Redirected from Credobaptist)

Pivotal Figures
John Bunyan · Andrew Fuller · Billy Graham · Thomas Helwys · John Smyth · Charles Haddon Spurgeon · Roger Williams

Largest associations
American Baptist · Baptist General Convention of Texas · National Baptist · Progressive National Baptist · Southern Baptist Convention · European Baptist Federation

''Believer's baptism'' (also called credobaptism, from the Latin word credo meaning "I believe") is the Christian ritual of baptism given to adults and children who have made a declaration of their personal faith in Jesus Christ as their Savior. It contrasts with infant baptism (pedobaptism or paedobaptism, from the Greek paido meaning "child"), in which young children are baptised. According to most statistics, churches that practice infant baptism represent about 80% of Christians. The vast majority of Christian churches that practice infant baptism do not reject a believers baptism for adults, and welcome any and all adults to be baptised following conversion. Those churches would just argue that baptism is for all (adults and children), and no one should be excluded because of Jesus's command to baptise "all nations". (see Matthew 28);[1] The number of Christians who practice credobaptism is probably rather larger than 20% for several reasons.[2] The fastest growing branches of Christianity are evangelical and Pentecostal churches, which nearly always practice credobaptism.
   "I saw in the night visions,

  and behold, with the clouds of heaven
    ((there came(or more specifically "there came up"))) one like a son of man,
  and he came to the Ancient of Days
    and was presented before him.
   [24]"Seventy weeks are decreed about your people and your holy city, 
to finish the transgression, to put an end to sin, and to atone for 
iniquity, to bring in everlasting righteousness, to seal both vision and 
prophet, and to +++^*[anoint a most holy place.|click]a more accurate translation is "anoint the most holy" - the word "place" has been added by some translations but is not in the original +++^*[therefore:] this refers to the baptism of Jesus by John=== === [25]Know therefore and 
understand that from the going out of the word to restore and build 
Jerusalem to the coming of +++^*[an anointed one, a prince,|click]i.e. the annointed one (Christ) is the prince referred to below === there shall be 
seven weeks. Then for sixty-two weeks it shall be built again with 
squares and moat, but in a troubled time. [26]And after the sixty-two 
weeks, an +++^*[anointed one shall be cut off and shall have nothing.|click] Jesus is crucified === And 
+++^*[the people of the prince who is to come] i.e. the Roman armies being the agents of Christ ComingOnClouds=== shall destroy the city and the 
sanctuary. Its end shall come with a +++^*[flood] of soldiers??===, and to the end there shall be 
war. Desolations are decreed. [27]And he shall make a strong covenant 
with many for one week, +++^*[and for half of the week he shall put an end 
to 
sacrifice and offering.] I heard one guy (Strawbridge? (sp?)) say that this refers to Jesus turning over the tables at the temple - not sure how that would jive with the chronology here - something about a triple instance - stopping it there in the temple for a moment, at the cross when the rug ripped, and ultimately with the Roman armies in 70AD+++ are there any other examples in the bible of non-linear prophecies?=== === 
And on the wing of abominations shall come one 
who makes desolate, until the decreed end is poured out on the 
desolator." (ESV)
<html><div class="esv"><h2>Daniel 2:31-47</h2>

<div class="esv-text">
<p><span class="verse-num" id="v27002031-1">31&nbsp;</span>“You saw, O king, and behold, a great image. This image, mighty and of exceeding brightness, stood before you, and its appearance was frightening. <span class="verse-num" id="v27002032-1">32&nbsp;</span>The head of this image was of fine gold, its chest and arms of silver, its middle and thighs of bronze, <span class="verse-num" id="v27002033-1">33&nbsp;</span>its legs of iron, its feet partly of iron and partly of clay. <span class="verse-num" id="v27002034-1">34&nbsp;</span>As you looked, a stone was cut out by no human hand, and it struck the image on its feet of iron and clay, and broke them in pieces. <span class="verse-num" id="v27002035-1">35&nbsp;</span>Then the iron, the clay, the bronze, the silver, and the gold, all together were broken in pieces, and became like the chaff of the summer threshing floors; and the wind carried them away, so that not a trace of them could be found. But the stone that struck the image became a great mountain and filled the whole earth.</p>

 <p><span class="verse-num" id="v27002036-1">36&nbsp;</span>“This was the dream. Now we will tell the king its interpretation. <span class="verse-num" id="v27002037-1">37&nbsp;</span>You, O king, the king of kings, to whom the God of heaven has given the kingdom, the power, and the might, and the glory, <span class="verse-num" id="v27002038-1">38&nbsp;</span>and into whose hand he has given, wherever they dwell, the children of man, the beasts of the field, and the birds of the heavens, making you rule over them all—<span style="font-weight: bold;">you are the head of gold</span>. <span class="verse-num" id="v27002039-1">39&nbsp;</span><span style="font-weight: bold;">Another kingdom</span> inferior to you shall arise after you, and <span style="font-weight: bold;">yet a third kingdom</span> of bronze, which shall rule over all the earth. <span class="verse-num" id="v27002040-1">40&nbsp;</span>And there shall be a <span style="font-weight: bold;">fourth kingdom, strong as iron</span>, because iron breaks to pieces and shatters all things. And like iron that crushes, it shall break and crush all these. <span class="verse-num" id="v27002041-1">41&nbsp;</span>And as you saw the feet and toes, partly of potter's clay and partly of iron, it shall be a divided kingdom, but some of the firmness of iron shall be in it, just as you saw iron mixed with the soft clay. <span class="verse-num" id="v27002042-1">42&nbsp;</span>And as the toes of the feet were partly iron and partly clay, so the kingdom shall be partly strong and partly brittle. <span class="verse-num" id="v27002043-1">43&nbsp;</span>As you saw the iron mixed with soft clay, so they will mix with one another in marriage, but they will not hold together, just as iron does not mix with clay. <span class="verse-num" id="v27002044-1">44&nbsp;</span><span style="font-weight: bold;">And in the days of those kings the God of heaven will set up a kingdom that shall never be destroyed</span>, nor shall the kingdom be left to another people. It shall break in pieces all these kingdoms and bring them to an end, and it shall stand forever, <span class="verse-num" id="v27002045-1">45&nbsp;</span>just as you saw that a stone was cut from a mountain by no human hand, and that it broke in pieces the iron, the bronze, the clay, the silver, and the gold. A great God has made known to the king what shall be after this. The dream is certain, and its interpretation sure.”</p>

 
<p><span class="verse-num" id="v27002046-1">46&nbsp;</span>Then King Nebuchadnezzar fell upon his face and paid homage to Daniel, and commanded that an offering and incense be offered up to him. <span class="verse-num" id="v27002047-1">47&nbsp;</span>The king answered and said to Daniel, “Truly, your God is God of gods and Lord of kings, and a revealer of mysteries, for you have been able to reveal this mystery.”  (<a href="http://www.esv.org" class="copyright">ESV</a>)</p>

</div>
</div></html>
its over [[here|http://biblestudy.tiddlyspot.com/]]
open this topic to see subtopics
http://freebooks.entrewave.com/freebooks/docs/21de_47e.htm

disclaimer: I haven't read this yet - I'll delete this if its bad - I'm just collecting links as I come across them
My preface (click the arrowhead): +++
Regarding the typical Baptist statement of faith about Hell:

*Can one still accept "conscious eternal torment" in the of statement of faith of their church, just interpret the word "torment" to also mean "destruction" (just like the statement of faith itself has interpreted "destruction" to mean "torment")?  I that's fair.
*Why this is not Annihilationism ("there is no hell")+++
I think the destruction will be 
#conscious (you will be ''//aware//'' during your judgement by God if you don't accept Christ as your proxy payment of your sins),
#torturous (until the point where you are __destroyed__, at which point you will no longer exist to feel the torment, and
#eternal, meaning you will be destroyed forever, i.e. we'll never see you again and you will be long forgotten as eternity unfolds

see also ThisIsNotAnnihilationism
===


*Reasons to consider alternative view
	i.  	the wages of sin is: 
		a) death, or 
		b) eternal conscious torment?  
If b, then why didn't christ have to suffer in hell for eternity to pay for our sins?

	ii	the common term "hell" is confused, sometimes referring to hades, sometimes to the lake of fire

geenna {gheh'-en-nah} (Strong's 1067)   1) Hell is the place of the future punishment call "Gehenna" or "Gehenna of fire". This was originally the valley of Hinnom, south of Jerusalem, where the filth and dead animals of the city were cast out and burned; a fit symbol of the wicked and their future destruction.

(Strong's 86) hades {hah'-dace}  1) name Hades or Pluto, the god of the lower regions   2) Orcus, the nether world, the realm of the dead   3) later use of this word: the grave, death, hell.    In Biblical Greek it is associated with Orcus, the infernal regions, a dark and dismal place in the very depths of the earth, the common receptacle of disembodied spirits. Usually Hades is just the abode of the wicked, Lu. 16:23, Rev. 20:13,14; a very uncomfortable place. TDNT.

(Strong's 5020)   tartaroo {tar-tar-o'-o}  1) the name of the subterranean region, doleful and dark, regarded by the ancient Greeks as the abode of the wicked dead, where they suffer punishment for their evil deeds; it answers to Gehenna of the Jews   2) to thrust down to Tartarus, to hold captive in Tartarus

Lake of fire is not a single word, but a concept from two words

Traditionalist difficulties:

salvation mathematics:  If God doesn't need us, why would he create beings, most of which would be in eternal torment for the few that got to heaven.  the heavenly account sheet would look better if he never made anyone at all.


===

The Nature of Hell

An Eternal Punishment or Eternal Torment?

by Dr. David R. Reagan



The Bible presents Hell, like Heaven, as a real place. The Bible says that God created this terrible place to serve as the ultimate destiny of the Devil and his angels (Matthew 25:41). The Bible also teaches that Hell will be the destiny of all people who reject the grace and mercy God has provided through Jesus and who chose, instead, to reject God by following Satan (Matthew 25:46).

Hell is described in the Scriptures as a place of darkness and sadness (Matthew 22:13), a place of fire (Matthew 5:22), a place of torment (Revelation 14:10), a place of destruction (Matthew 7:13), and a place of disgrace and everlasting contempt (Daniel 12:2).

!Its Distinction from Hades 

Hell is not Hades. A careful study of the Scriptures will reveal that Hades in the New Testament is the same place as Sheol in the Old Testament (Psalms 49:15).

Let's review a few points that I made earlier in the chapter on death. Before the Cross, Hades (or Sheol) was the holding place for the spirits of the dead who awaited their resurrection, judgment, and ultimate consignment to Heaven or Hell. According to Jesus' story of the rich man and Lazarus (Luke 16:19-31), Hades was composed of two compartments - Paradise and Torments. At death, the spirits of the righteous (those who had put their faith in God) went to a compartment in Hades called Paradise. The unrighteous went to a compartment called Torments. The two compartments were separated by a wide gulf that could not be crossed.

The Bible indicates that the nature of Hades was radically changed at the time of the Cross. After His death on the Cross, Jesus descended into Hades and declared to all the spirits there His triumph over Satan through the shedding of His blood for the sins of Mankind (1 Peter 3:18-19; 4:6).

The Bible also indicates that after His resurrection, when He ascended to Heaven, Jesus took Paradise with Him, transferring the spirits of the righteous dead from Hades to Heaven (Ephesians 4:8-9 and 2 Corinthians 12:1-4). The spirits of the righteous dead are thereafter pictured as being in Heaven before the throne of God (Revelation 6:9 and 7:9).

Thus, since the time of the Cross, the spirits of dead saints no longer go to Hades. They are taken, instead, directly to Heaven. The spirits of Old Testament saints could not go directly to Heaven because their sins had not been forgiven. Their sins had only been covered, so to speak, by their faith. Their sins could not be forgiven until Jesus shed His blood for them on the Cross.

The souls of the unrighteous dead will remain in Hades until the end of the millennial reign of Jesus. At that time they will be resurrected and judged at the Great White Throne judgment portrayed in Revelation 20:11-15. They will be judged by their works, and since no person can be justified before God by works (Ephesians 2:8-10), all the unrighteous will be cast into Hell, which the passage in Revelation refers to as "the lake of fire" (Revelation 20:14).

!The Duration of Hell 

How long will the unrighteous be tormented in Hell? The traditional view holds that Hell is a place of eternal, conscious torment. According to this view, a person who winds up in Hell is doomed to a never-ending existence of excruciating pain and suffering. Hell is a place of no escape and no hope.

Another point of view - the one I hold - takes the position that immortality is conditional, depending upon one's acceptance of Christ. I believe the Bible teaches the unrighteous will be resurrected, judged, punished in Hell for a period of time proportional to their sins, and then suffer destruction (the death of body and soul).

In a moment we will take a brief look at both views, but before we do, I would like to remind us all of a sobering truth: Hell is a reality, and it is a dreadful destiny. Hell exists because God cannot be mocked (Galatians 6:7). He is going to deal with sin, and He deals with sin in one of two ways - either grace or wrath. John 3:36 says, "He who believes in the Son has eternal life; but he who does not obey the son shall not see life, but the wrath of God abides on him."

Whatever we conclude from the Scriptures about the duration of Hell, we must remember that Hell is to be avoided at all costs. Whether the wicked suffer there eternally or are destroyed after enduring God's terrible punishment, Hell is an unimaginably terrifying place.

We must also remember that our beliefs about the duration of Hell are not on the plane of cardinal doctrine. Sincere, godly Christians may study the same scripture passages about Hell and end up with differing conclusions about the issue of its duration. Our varied viewpoints, arrived at through earnest and godly study, should not be allowed to cause division or rancor in the body of Christ.

!The Traditional Viewpoint

Few traditionalists are happy about the doctrine of the eternal torment of the wicked, but they accept it anyway because they believe it to be Biblical. In this they are to be commended.

Most point to scriptures such as Matthew 25:46 for support: "Then these [the wicked] will go away into eternal punishment, but the righteous into eternal life." Since the word "eternal" is used of both the wicked and the righteous, they conclude that the punishment must be eternal in the same way that the life is.

Many traditionalists also cite Revelation 20:10 - a verse specifically about the Devil, the Antichrist and the False Prophet - to prove that a God of love can indeed sentence at least some of His creatures to eternal torment: "And the devil who deceived them was thrown into the lake of fire and brimstone, where the beast and the false prophet are also; and they will be tormented day and night forever and ever." If it is possible for God to treat one set of His creatures in this way, they reason, why should it be impossible for Him to do the same thing with another set?

Still another Revelation passage also figures in the traditionalist argument. Revelation 14:9-11 reads:

"And another angel, a third one, followed them, saying with a loud voice, 'If anyone worships the beast and his image, and receives a mark on his forehead or upon his hand, he also will drink of the wine of the wrath of God, which is mixed in full strength in the cup of His anger; and he will be tormented with fire and brimstone in the presence of the holy angels and in the presence of the Lamb. And the smoke of their torment goes up forever and ever; and they have no rest day and night, those who worship the beast and his image, and whoever receives the mark of his name.'"

Traditionalists notice that not only are these unbelievers tossed into the lake of fire where "the smoke of their torment goes up forever and ever," but they have no rest "day or night." This is in stark contrast to the saved, who will enjoy rest eternally (Revelation 14:13). To traditionalists, both the "rest" of believers and the "unrest" of unbelievers seem to imply a conscious state.

!Other Traditionalist Arguments 

In other parts of the Bible, several passages which talk about Hell use the word "destroy" or "destruction" to describe what happens to the unrighteous. Traditionalists claim that the picture in these passages is not of obliteration but of a ruin of human life out of God's presence forever. In this way they are able to conceive of a "destruction" which lasts forever.

A more philosophical traditionalist argument concerns Mankind's creation in the image of God. Some traditionalists believe that the torments of Hell must be eternal, since humankind was made in the image of God and that image cannot be "uncreated." Thus they believe that immortality was bestowed on Mankind when God created male and female in His image.

Last, many traditionalists believe that Hell must be eternal because of the nature of sin itself. All sin is an offense against God, goes this argument, and since God is infinite, all sin is infinitely odious. Jonathan Edwards, the great Puritan theologian, took this line of argument in his book The Justice of God in the Damnation of Sinners.

As you can see, these arguments seem both biblical and substantial. And yet they are not without significant problems. Allow me to explain why I believe the conditionalist approach is a better solution to the difficulty.

!The Conditionalist Viewpoint

The doctrine of the duration of Hell has been so strongly held throughout the history of Christianity that few have dared to challenge it. Adding to the reluctance has been the fact that most modern challenges have come from the cults. Thus, a person who dares to question the traditional viewpoint runs the risk of being labeled a cultist.

A classic characteristic of modern-day "Christian" cults is their denial of the reality of Hell. Some argue that everyone will be saved. Most take the position that the unrighteous are annihilated at physical death.

The views of the cults regarding Hell have always been repulsive to me because they deny the clear teaching Scripture that the unrighteous will be sent to a place of suffering called Hell. Yet, I have never been able to fully embrace the traditional viewpoint of conscious, eternal punishment.

!Traditionalist Difficulties 

My first difficulty with the traditional view is that it seems to impugn the character of God. I kept asking myself, "How could a God of grace, mercy and love torment the vast majority of humanity eternally?" It did not seem to me to be either loving or just. I realize He is a God or righteousness, holiness and justice, but is eternal suffering justice? The concept of eternal torment seems to convert the true God of justice into a cosmic sadist.

Second, the concept of eternal torment seems to run contrary to Biblical examples. God destroyed Sodom and Gomorrah with fire - suddenly and quickly. He destroyed Noah's evil world with water - suddenly and quickly. He ordered the Canaanites to be killed swiftly. In the Law of Moses there was no provision for incarceration or torture. Punishments for violation of the Law consisted either of restitution or death. Even sacrificial animals were spared suffering through precise prescriptions for their killing that guaranteed a death that would be as quick and painless as possible.

As a student of God's Prophetic Word, I found a third problem with the traditional view. It seems to contradict a descriptive phrase that is used in prophecy to describe Hell. That term is "the second death." It is a term peculiar to the book of Revelation (Revelation 2:11; 20:6,14; 21:8). How can Hell be a "second death" if it consists of eternal, conscious torment?

!The Problem of Destruction 

A fourth reason the traditional view has always troubled me is that it seems to ignore an important Biblical teaching about Hell; namely, that Hell is a place of destruction. Jesus Himself spoke of Hell as a place of "destruction" (Matthew 7:13). Mat 7:13   	"Enter through the narrow gate; for the gate is wide and the way is broad that leads to destruction, and there are many who enter through it.   Further, in Matthew 10:28 Jesus says: "Do not fear those who kill the body, but are unable to kill the soul; but rather fear Him who is able to destroy both soul and body in Hell."

Likewise, in 2 Thessalonians 1:9 Paul says that those who do not obey the gospel "will pay the penalty of eternal destruction." Who shall be punished with everlasting destruction from the presence of the Lord, and from the glory of his power; The writer of Hebrews says that the unrighteous will experience a terrifying judgment that will result in their consumption by fire (Hebrews 10:27  But a certain fearful looking for of judgment and fiery indignation, which shall devour the adversaries.). Even one of the most comforting verses in the Bible speaks of the destruction of the unrighteous: "For God so loved the world, that He gave His only begotten Son, that whoever believes in Him should not perish, but have eternal life" (John 3:16).

The traditionalist argument that the word "destroy" or "destruction" should be interpreted as "irreparable loss" seems a stretch to me. It seems much more likely that "destroy" should be taken to mean exactly that.

!The Meaning of Punishment

Fifth, there is a difference between eternal punishment and eternal punishing. It is one thing to experience a punishment that is eternal in its consequences; it is another thing to experience eternal punishing.

The Bible also speaks of eternal judgment (Hebrews 6:2	Of the doctrine of baptisms, and of laying on of hands, and of resurrection of the dead, and of eternal judgment.). Is that a judgment that continues eternally, or is it a judgment with eternal consequences? Likewise, the Bible speaks of eternal redemption (Hebrews 9:12). But this does not mean that Christ will continue the act of redemption eternally. That act took place at the Cross, once and for all. It was an eternal redemption because the result of the redemption had eternal consequences.

!Symbolism

Sixth, I noted earlier that traditionalists often cite Revelation 14:9-11 to demonstrate that the suffering of the wicked will be eternal. They most often highlight two phrases. The first refers to those who take the mark of the beast during the Tribulation, who will be "tormented with fire and brimstone in the presence of the holy angels." The second is that "the smoke of their torment goes up forever and ever." Notice that this passage does not speak of eternal torment. Rather, it speaks of "the smoke of their torment" ascending forever.

The Bible is its own best interpreter, and when you look up statements similar to this you will find that they are symbolic for a punishment that has eternal consequences, not a punishment that continues eternally. For example, consider Isaiah 34:10 which speaks of the destruction of Edom. It says the smoke of Edom's destruction will "go up forever."

I have been to Edom (the southern portion of modern day Jordan in the area around Petra). I have seen its destruction. But there was no smoke ascending heaven. The reference to eternal smoke is obviously symbolic, indicating that Edom's destruction will give eternal testimony to how God deals with a sinful society.

The same is true of Jude 7 when it says that Sodom and Gomorrah experienced "the punishment of eternal fire." Again, I have been to the area at the southern tip of the Dead Sea where these twin cities existed. The area is one of utter devastation, but there is no smoke going up to heaven. They are not burning eternally. They simply suffered a fiery destruction that had eternal consequences.

!Immortality

Last, many traditionalists believe that the soul is immortal. But is it? I believe the Bible denies the immortality of the soul point blank.

In 1 Timothy 6:15-16 Which in his times he shall shew, [who is] the blessed and only Potentate, the King of kings, and Lord of lords;
1Ti 6:16	Who only hath immortality, dwelling in the light which no man can approach unto; whom no man hath seen, nor can see: to whom [be] honour and power everlasting. Amen.Paul says that God alone possesses immortality. And 1 Corinthians 15:53( For this corruptible must put on incorruption, and this mortal [must] put on immortality).teaches that the Redeemed will not become immortal until the time of their resurrection.

In other words, immortality is a gift of God which He gives in His grace to the Redeemed at the time of their resurrection. There is no need to believe in an eternal Hell if the soul is not intrinsically immortal. And it isn't.

!Can History Decide the Question?

You should see by now that both the traditional and the conditional positions on Hell can muster good, Biblical support for their point of view. Can church history help us decide which is right?

Unfortunately, it cannot, for both viewpoints can be found in very early writings. The idea of a Hell where the impenitent were eternally tormented can be traced to a time even before Jesus. The intertestamental Book of Enoch, as well as the Fourth Book of the Sibylline Oracles, both speak of the eternal suffering of the wicked. The great Rabbi Hillel, who lived at about the same time as Jesus, taught that one class of sinner would be punished "to ages of ages" - even though he maintained that most of the damned would be annihilated.

These are all non-Christian sources. But Cyprian, a Christian from the Third Century, wrote that "the damned will burn forever in hell." If we ask who was responsible for systematizing and popularizing the traditional viewpoint, we find that it was Augustine around the year 400 A.D. But the position certainly was taught before his time.

The conditionalist viewpoint can also be traced back to Bible times. For example, it can be found in the writings of Justin Martyr (114-165 A.D.). In his Dialogue with Trypho the Jew, Martyr states that the soul is mortal, that the souls of the unrighteous will suffer only as long as God wills, and that finally their souls will pass out of existence. The concept is also affirmed in the Didache, a Second Century Christian handbook. That book speaks of "two ways" - the way of life and the way of death. It says the unrighteous will perish.

!The Reality of Hell 

Which viewpoint is right? I have already cast my vote for the conditionalist understanding. You may decide that the evidence points in the other direction.

But whatever you conclude, based on our study of Scripture, we can agree that Hell is a terrifying, horrendous, ghastly place that should be avoided at all costs. You certainly do not want your friends or your family to go there - there will be no parties in hell! - and you should do all you can to make sure it is not your final home.

The truth is - as I have stressed repeatedly - your eternal destiny is in your hands. You can choose eternal life by receiving Jesus as your Lord and Savior. Or, you can choose eternal destruction by refusing to accept God's gift of love and grace. I urge you to choose life by accepting Jesus (Deuteronomy 30:15-19).
[[Dinesh DeSouza]] was primarily a political writer - nothing to do with the church, but it gives him an advantage in debate settings, e.g. things having to do with the Christian heritage of the beginning of the U.S.
|''things I agree with her about'' | ''things I disagree with her about'' |
| partial preterist | has a picture of Xena on her website (maybe its meant to symbolize something ;-) |
| thinks Full Preterists are heretics | |

[[ her Mathew Commentary|http://www.preteristsite.com/plain/warrenend.html]]
go to The_iTunesStore and search for "preterist podcast"
[[Moved]]
[[Welcome]]
[[recent changes]]
[[My Interests]]
|''things I agree with him about'' | ''things I disagree with him about'' |
| rational approach | believes in evolution |

Author of: "What's So Great About Christianity"
Doug Wilson compared Hebrews to Deuteronomy which was a book of encouragement to Israel just before they went in to conquer Canaan.  Likewise Hebrews was written prior to the destruction of Jerusalem and the Temple just before they (Christians) were to go out into the world and conquer it.  

He also commented on this:

<<<
Let us hold fast the confession  of our hope  without wavering, for He  who promised is faithful;Hbr 10:24 	and let us consider how to stimulate one another to love and good deeds, Hbr 10:25 	not forsaking our own assembling together, as is the habit of some, but encouraging one another; and all the more as you see the day drawing near.Hbr 10:26 	''//For if we go on sinning willfully after receiving the knowledge of the truth, there no longer remains a sacrifice for sins,//''Hbr 10:27 	but a terrifying expectation of judgment and THE FURY OF A FIRE WHICH WILL CONSUME THE ADVERSARIES. 
<<<
...saying that, although some Christians take this to be talk of loss of eternal salvation, it was actually talking about Christians who go back to Judaism and worship in the Temple just before the Temple is destroyed - that would be an example of really bad timing.
/***
|!Name|EsvInlineMacro|
|!Created by|JeremyCowgar|
|!Source|http://www.tiddlyforge.net/pytw/#EsvInlineMacro|
|!Version|1.0.2|
|recent alterations|took off passage references and numbers within the text, and is now text instead of html|
!Description
Turns a scripture reference into a the scripture text in the [[English Standard Version.|http://www.esv.org]] using the ESV [[Web API|http://www.gnpcb.org/esv/share/services/api/]]. Upon referencing a scripture verse for the first time, EsvInlineMacro will access the Web API and retrieve the verse content into it's own Tiddler. A {{{<<tiddler "ESV - Verse Reference">>}}} is then inserted into the Tiddler body causing that verse content to appear. If the Tiddler exists for the reference you have entered already, EsvInlineMacro does not access the Web API, it simply includes the existing Tiddler with the verse contents.

!Examples
* {{{<<esv John 3:16>>}}}
* {{{<<esv John 3:1-18>>}}}
* {{{<<esv John 1:1-4:10>>}}}
* {{{<<esv Genesis 50:5-Exodus 1:5>>}}},
* {{{<<esv Genesis 5:5,Exodus 10:10>>}}}
* {{{<<esv Ge 5:1>>}}}

!Notes
To make the macro work you have to give this tiddler a tag of systemConfig then save and reload.

!Todos
* Cause each scripture verse Tiddler to be referenced by the Tiddler that is using it. This way I can look at "ESV - John 3:16" and see which Tiddlers use that particular scripture verse.
* Push verse request to the limit for the day (500) and see what type of error message begins to appear and code to handle.
* Add configuration options:
** key setting, currently set to "IP". This is valid and will work for up to 500 verse lookups per day, for anything more, you have to register for your own key (free).
* Test in other browsers. Currently only tested in Firefox 1.0.7 and 1.5 beta 2.
** Opera
** Internet Explorer
** Safari

!Change Log
* ''v1.0.2'': Increased performance, fix by PaulPetterson. Moved location of checking to see if the Tiddler Exists to before doing a lookup.

!Code
***/
//{{{

version.extensions.esv = {major: 1, minor: 0 , revision: 2, date: new Date(2005,11,3)};
config.macros.esv = {alertMsg: "Permission to read from ESV was denied, security permission error?"};
config.macros.esv.handler= function(place,macroName,params) {
  var verse = params.join(' ');
  var tiddlerName = verse;

   {
    var myConfig = config.macros.esv;
    var feedURL = "http://www.gnpcb.org/esv/share/get/?key=IP&action=doPassageQuery&output-format=plain-text&include-passage-horizontal-lines=false&include-headings=false&include-passage-references=false&include-first-verse-numbers=false&include-heading-horizontal-lines=false&include-verse-numbers=true" +
          "&include-footnotes=false&passage=" + verse.replace(' ', '+');
    var request;

    try { request = new XMLHttpRequest(); }
    catch (e) { request = new ActiveXObject("Msxml2.XMLHTTP"); }

//   try { netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead"); }
//    catch (e) { alert(myConfig.alertMsg); }

    request.open("GET", feedURL, false);
    request.send(null);

    var body = request.responseText;
    if (body.length > 5 && body.substring(0, 5) == "ERROR") {
      wikify("''Invalid passage:'' " + verse, place);
      return;
    }

    store.saveTiddler(tiddlerName, tiddlerName, body, 
            config.options.txtUserName, null, "ESV");
  }
  wikify("<<tiddler \"" + tiddlerName + "\">>", place);
}

//}}}
/***
|Location|http://visualtw.ouvaton.org/VisualTW.html|
|Version|1.2.0|
|Requires|~TW2.1.x|
|Browsers|Firefox 2.0.x, IE 6.0+, others|
!Description
Lite and extensible Wysiwyg editor for TiddlyWiki.
!Demo
*On the plugin [[homepage|http://visualtw.ouvaton.org/VisualTW.html]], see [[EasyEdit demo]] and use the {{{write}}} button.
*Loot at easyEdit [[in a standard tiddlywiki|http://visualtw.ouvaton.org/easyEditOnly.html]].
!Installation
#import the plugin
#save and reload
#add {{{easyEdit}}} command in ViewTemplate toolbar
! Useful Addons
*[[Link button|EasyEditPlugin-LinkButton]]
*[[HTMLFormattingPlugin|http://www.tiddlytools.com/#HTMLFormattingPlugin]] from TiddlyTools
!Configuration
|Buttons in the toolbar (empty = all).<<br>>//Example : bold,underline,separator,forecolor//<<br>>The buttons will appear in the list order.| <<option txtEasyEditorButtons>>|
|EasyEditor default height | <<option txtEasyEditorHeight>>|
|Stylesheet applied to the edited richtext |[[EasyEditDocStyleSheet]]|
|Template called by the {{{write}}} button |[[EasyEditTemplate]]|
!How to extend EasyEditor
*To add your own buttons, add some code like the following in a systemConfig tagged tiddler (//use the prompt attribute only if there is a parameter//) :
**{{{EditorToolbar.buttons.heading = {label:"H", toolTip : "Set heading level", prompt: "Enter heading level"};}}} 
**{{{EditorToolbar.buttonsList +=",heading";}}}
*To get the list of all possible commands, see the documentation of the [[Gecko built-in rich text editor|http://developer.mozilla.org/en/docs/Midas]] or the [[IE command identifiers|http://msdn2.microsoft.com/en-us/library/ms533049.aspx]].
*To go further in customization, see [[Link button|EasyEditPlugin-LinkButton]] as an example.
!Code
***/

//{{{

var geckoEditor={};
var IEeditor={};

config.options.txtEasyEditorHeight = config.options.txtEasyEditorHeight ? config.options.txtEasyEditorHeight : "500px";
config.options.txtEasyEditorButtons = config.options.txtEasyEditorButtons ? config.options.txtEasyEditorButtons : "";

// TW2.1.x compatibility
config.browser.isGecko = config.browser.isGecko ? config.browser.isGecko : (config.userAgent.indexOf("gecko") != -1); 
config.macros.annotations = config.macros.annotations ? config.macros.annotations : {handler : function() {}}


// EASYEDITOR MACRO

config.macros.easyEdit = {
	handler : function(place,macroName,params,wikifier,paramString,tiddler) {
		var field = params[0];
		var height = params[1] ? params[1] : config.options.txtEasyEditorHeight;
		var editor = field ? new easyEditor(tiddler,field,place,height) : null;
	},
	gather: function(element){
		var iframes = element.getElementsByTagName("iframe");
		if (iframes.length!=1) return null
		var text = "<html>"+iframes[0].contentWindow.document.body.innerHTML+"</html>";
		text = config.browser.isGecko ? geckoEditor.postProcessor(text) : (config.browser.isIE ? IEeditor.postProcessor(text) : text);
		return text;
	}
}

// EASYEDITOR CLASS

function easyEditor(tiddler,field,place,height) {
	this.tiddler = tiddler;
	this.field = field;
	this.browser = config.browser.isGecko ? geckoEditor : (config.browser.isIE ? IEeditor : null);
	this.wrapper = createTiddlyElement(place,"div",null,"easyEditor");
	this.wrapper.setAttribute("easyEdit",this.field);
	this.iframe = createTiddlyElement(null,"iframe");
	this.browser.setupFrame(this.iframe,height,contextualCallback(this,this.onload));
	this.wrapper.appendChild(this.iframe);
}

easyEditor.prototype.onload = function(){
	this.editor = this.iframe.contentWindow;
	this.doc = this.editor.document;
	if (!this.browser.isDocReady(this.doc)) return null;
	
	if (!this.tiddler.isReadOnly() && this.doc.designMode.toLowerCase()!="on") {
		this.doc.designMode = "on";
		if (this.browser.reloadOnDesignMode) return false;	// IE fire readystatechange after designMode change
	}
	
	var internalCSS = store.getTiddlerText("EasyEditDocStyleSheet");
	setStylesheet(internalCSS,"EasyEditDocStyleSheet",this.doc);
	this.browser.initContent(this.doc,store.getValue(this.tiddler,this.field));

	var barElement=createTiddlyElement(null,"div",null,"easyEditorToolBar");
	this.wrapper.insertBefore(barElement,this.wrapper.firstChild);
	this.toolbar = new EditorToolbar(this.doc,barElement,this.editor);

	this.browser.plugEvents(this.doc,contextualCallback(this,this.scheduleButtonsRefresh));
	this.editor.focus();
}

easyEditor.SimplePreProcessoror = function(text) {
	var re = /^<html>(.*)<\/html>$/m;
	var htmlValue = re.exec(text);
	var value = (htmlValue && (htmlValue.length>0)) ? htmlValue[1] : text;
	return value;
}

easyEditor.prototype.scheduleButtonsRefresh=function() { //doesn't refresh buttons state when rough typing
	if (this.nextUpdate) window.clearTimeout(this.nextUpdate);
	this.nextUpdate = window.setTimeout(contextualCallback(this.toolbar,EditorToolbar.onUpdateButton),easyEditor.buttonDelay);
}

easyEditor.buttonDelay = 200;

// TOOLBAR CLASS

function EditorToolbar(target,parent,window){
	this.target = target;
	this.window=window;
	this.elements={};
	var row = createTiddlyElement(createTiddlyElement(createTiddlyElement(parent,"table"),"tbody"),"tr");
	var buttons = (config.options.txtEasyEditorButtons ? config.options.txtEasyEditorButtons : EditorToolbar.buttonsList).split(",");
	for(var cpt = 0; cpt < buttons.length; cpt++){
		var b = buttons[cpt];
		var button = EditorToolbar.buttons[b];
		if (button) {
			if (button.separator)
				createTiddlyElement(row,"td",null,"separator").innerHTML+="&nbsp;";
			else {
				var cell=createTiddlyElement(row,"td",null,b+"Button");
				if (button.onCreate) button.onCreate.call(this, cell, b);
				else EditorToolbar.createButton.call(this, cell, b);
			}
		}
	}
}

EditorToolbar.createButton = function(place,name){
	this.elements[name] = createTiddlyButton(place,EditorToolbar.buttons[name].label,EditorToolbar.buttons[name].toolTip,contextualCallback(this,EditorToolbar.onCommand(name)),"button");
}

EditorToolbar.onCommand = function(name){
	var button = EditorToolbar.buttons[name];
	return function(){
		var parameter = false;
		if (button.prompt) {
			var parameter = this.target.queryCommandValue(name);
			parameter = prompt(button.prompt,parameter);
		}
		if (parameter != null) {
			this.target.execCommand(name, false, parameter);
			EditorToolbar.onUpdateButton.call(this);
		}
		return false;
	}
}

EditorToolbar.getCommandState = function(target,name){
	try {return target.queryCommandState(name)}
	catch(e){return false}
}

EditorToolbar.onRefreshButton = function (name){
	if (EditorToolbar.getCommandState(this.target,name)) addClass(this.elements[name].parentNode,"buttonON");
	else removeClass(this.elements[name].parentNode,"buttonON");
	this.window.focus();
}

EditorToolbar.onUpdateButton = function(){
	for (b in this.elements) 
		if (EditorToolbar.buttons[b].onRefresh) EditorToolbar.buttons[b].onRefresh.call(this,b);
		else EditorToolbar.onRefreshButton.call(this,b);
}

EditorToolbar.buttons = {
	separator : {separator : true},
	bold : {label:"B", toolTip : "Bold"},
	italic : {label:"I", toolTip : "Italic"},
	underline : {label:"U", toolTip : "Underline"},
	strikethrough : {label:"S", toolTip : "Strikethrough"},
	insertunorderedlist : {label:"\u25CF", toolTip : "Unordered list"},
	insertorderedlist : {label:"1.", toolTip : "Ordered list"},
	justifyleft : {label:"[\u2261", toolTip : "Align left"},
	justifyright : {label:"\u2261]", toolTip : "Align right"},
	justifycenter : {label:"\u2261", toolTip : "Align center"},
	justifyfull : {label:"[\u2261]", toolTip : "Justify"},
	removeformat : {label:"\u00F8", toolTip : "Remove format"},
	fontsize : {label:"\u00B1", toolTip : "Set font size", prompt: "Enter font size"},
	forecolor : {label:"C", toolTip : "Set font color", prompt: "Enter font color"},
	fontname : {label:"F", toolTip : "Set font name", prompt: "Enter font name"},
	heading : {label:"H", toolTip : "Set heading level", prompt: "Enter heading level (example : h1, h2, ...)"},
	indent : {label:"\u2192[", toolTip : "Indent paragraph"},
	outdent : {label:"[\u2190", toolTip : "Outdent paragraph"},
}

EditorToolbar.buttonsList = "bold,italic,underline,strikethrough,separator,increasefontsize,decreasefontsize,fontsize,forecolor,fontname,separator,removeformat,separator,insertunorderedlist,insertorderedlist,separator,justifyleft,justifyright,justifycenter,justifyfull,indent,outdent,separator,heading";

if (config.browser.isGecko) {
	EditorToolbar.buttons.increasefontsize = {onCreate : EditorToolbar.createButton, label:"A", toolTip : "Increase font size"};
	EditorToolbar.buttons.decreasefontsize = {onCreate : EditorToolbar.createButton, label:"A", toolTip : "Decrease font size"};
}

// GECKO (FIREFOX, ...) BROWSER SPECIFIC METHODS

geckoEditor.setupFrame = function(iframe,height,callback) {
	iframe.setAttribute("style","width: 100%; height:" + height);
	iframe.addEventListener("load",callback,true);
}

geckoEditor.plugEvents = function(doc,onchange){
	doc.addEventListener("keyup", onchange, true);
	doc.addEventListener("keydown", onchange, true);
	doc.addEventListener("click", onchange, true);
}

geckoEditor.postProcessor = function(text){return text};

geckoEditor.preProcessor = function(text){return easyEditor.SimplePreProcessoror(text)}

geckoEditor.isDocReady = function() {return true;}

geckoEditor.reloadOnDesignMode=false;

geckoEditor.initContent = function(doc,content){
	doc.execCommand("insertHTML",false,geckoEditor.preProcessor(content));
}

// INTERNET EXPLORER BROWSER SPECIFIC METHODS
	
IEeditor.setupFrame = function(iframe,height,callback) {
	iframe.width="99%";  //IE displays the iframe at the bottom if 100%. CSS layout problem ? I don't know. To be studied...
	iframe.height=height.toString();
	iframe.attachEvent("onreadystatechange",callback);
}

IEeditor.plugEvents = function(doc,onchange){
	doc.attachEvent("onkeyup", onchange);
	doc.attachEvent("onkeydown", onchange);
	doc.attachEvent("onclick", onchange);
}

IEeditor.isDocReady = function(doc){
	if (doc.readyState!="complete") return false;
	if (!doc.body) return false;
	return (doc && doc.getElementsByTagName && doc.getElementsByTagName("head") && doc.getElementsByTagName("head").length>0);
}

IEeditor.postProcessor = function(text){return text};

IEeditor.preProcessor = function(text){return easyEditor.SimplePreProcessoror(text)}

IEeditor.reloadOnDesignMode=true;

IEeditor.initContent = function(doc,content){
	doc.body.innerHTML=IEeditor.preProcessor(content);
}
	
function contextualCallback(obj,func){
    return function(){return func.call(obj)}
}
	
Story.prototype.previousGatherSaveEasyEdit = Story.prototype.previousGatherSaveEasyEdit ? Story.prototype.previousGatherSaveEasyEdit : Story.prototype.gatherSaveFields; // to avoid looping if this line is called several times
Story.prototype.gatherSaveFields = function(e,fields){
	if(e && e.getAttribute) {
		var f = e.getAttribute("easyEdit");
		if(f){
			var newVal = config.macros.easyEdit.gather(e);
			if (newVal) fields[f] = newVal;
		}
		this.previousGatherSaveEasyEdit(e, fields);
	}
}

config.commands.easyEdit={
	text: "write",
	tooltip: "Edit this tiddler in wysiwyg mode",
	readOnlyText: "view",
	readOnlyTooltip: "View the source of this tiddler",
	handler : function(event,src,title) {
		clearMessage();
		var tiddlerElem = document.getElementById(story.idPrefix + title);
		var fields = tiddlerElem.getAttribute("tiddlyFields");
		story.displayTiddler(null,title,"EasyEditTemplate",false,null,fields);
		return false;
	}
}

config.shadowTiddlers.EasyEditTemplate = "<!--{{{-->\n<div class='toolbar' macro='toolbar +saveTiddler -cancelTiddler deleteTiddler'></div>\n<div class='title' macro='view title'></div>\n<div class='editor' macro='edit title'></div>\n<div macro='annotations'></div>\n<div class='editor' macro='easyEdit text'></div>\n<div class='editor' macro='edit tags'></div><div class='editorFooter'><span macro='message views.editor.tagPrompt'></span><span macro='tagChooser'></span></div>\n<!--}}}-->"

config.shadowTiddlers.EasyEditToolBarStyleSheet = "/*{{{*/\n";
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar {font-size:0.8em}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".editor iframe {border:1px solid #DDD}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar td{border:1px solid #888; padding:2px 1px 2px 1px; vertical-align:middle}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar td.separator{border:0}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar .button{border:0;color:#444}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar .buttonON{background-color:#EEE}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar {margin:0.25em 0}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar .boldButton {font-weight:bold}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar .italicButton .button {font-style:italic;padding-right:0.65em}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar .underlineButton .button {text-decoration:underline}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar .strikeButton .button {text-decoration:line-through}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar .unorderedListButton {margin-left:0.7em}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar .justifyleftButton .button {padding-left:0.1em}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar .justifyrightButton .button {padding-right:0.1em}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar .justifyfullButton .button, .easyEditorToolBar .indentButton .button, .easyEditorToolBar .outdentButton .button {padding-left:0.1em;padding-right:0.1em}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar .increasefontsizeButton .button {padding-left:0.15em;padding-right:0.15em; font-size:1.3em; line-height:0.75em}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar .decreasefontsizeButton .button {padding-left:0.4em;padding-right:0.4em; font-size:0.8em;}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar .forecolorButton .button {color:red;}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet += ".easyEditorToolBar .fontnameButton .button {font-family:serif}\n" ;
config.shadowTiddlers.EasyEditToolBarStyleSheet +="/*}}}*/";

store.addNotification("EasyEditToolBarStyleSheet", refreshStyles); 

config.shadowTiddlers.EasyEditDocStyleSheet = "/*{{{*/\n \n/*}}}*/";
if (config.annotations) config.annotations.EasyEditDocStyleSheet = "This stylesheet is applied when editing a text with the wysiwyg easyEditor";

//}}}
[[MptwEditTemplate]]
Revelation (and all NT scripture) was written before 70 AD because none of it records the destruction of the temple, which you'd think would be a pretty big news item as it represented the end of the "old testament" world.

Irenaeus is the only guy who dated Revelation at AD 95, but he also wrote that Jesus was over fifty when he died, so I wouldn't take him as an accurate source of historical information this important.

"Coming on clouds" is old testament lingo for judgement, not a literal aerial arrival. So shortly before 70 AD John writes Revelation, he talks about the judgement of apostate Isreal and Rome, Nero is 666, the temple is destroyed, eventually Rome falls, and since 70 AD the last (fifth) empire governed by Christ begins to grow slowly as small stone and continues to grow even to this day.

Dan 2:32 	"The head of that statue {was made} of fine gold, its breast and its arms of silver, its belly and its thighs of bronze,
Dan 2:33 	its legs of iron, its feet partly of iron and partly of clay.
Dan 2:34 	"You continued looking until a stone was cut out without hands, and it struck the statue on its feet of iron and clay and crushed them.
Dan 2:35 	"Then the iron, the clay, the bronze, the silver and the gold were crushed all at the same time and became like chaff from the summer threshing floors; and the wind carried them away so that not a trace of them was found. But the stone that struck the statue became a great mountain and filled the whole earth.
The belief (that I disagree with) that non-Christians, when they die, will be given an immortal body that will enable then to suffer torment forever and ever and ever...

for arguments against, see [[David Reagan's view]]
those that believe in the primacy of the bible's authority over tradition

+++^*@[comments]
How is "evangelical" different from "fundamentalist"? Are the definitions the same if one replaces the Christian references with those of other religions? Do these definitions deserve the label "extreme" that is sometimes applied? Is there any difference in an "extreme" interpretation of any religion? To the respective believers, are the beliefs really very different? Perhaps, depending on one's perspective, they are more alike than different (which I interpret as a good, hopeful point of view).
Vicki-P | 06.21.08 - 12:09 am | # 

Ooo good question,  I think that deserves its own tiddler.  Lets call it [[Evangelicals & Fundamentalists]] ===
This is generated from a comment question:
>How is "evangelical" different from "fundamentalist"? Are the definitions the same if one replaces the Christian references with those of other religions? Do these definitions deserve the label "extreme" that is sometimes applied? Is there any difference in an "extreme" interpretation of any religion? To the respective believers, are the beliefs really very different? Perhaps, depending on one's perspective, they are more alike than different (which I interpret as a good, hopeful point of view). Vicki-P | 06.21.08 - 12:09 am | # 

The definition I gave for Evangelicals ("those that believe in the primacy of the bible's authority over tradition") I stole from someone on one of the many podcasts I listen to (I think it was someone on GodPod.)  This is one of those things that need to be explained in context.  I think that the definition of the word "evangelical" has changed over the years in reference to Christianity, but in more general terms is still the same.  For example one who proclaims the merits of Apple computers or cod liver oil or whatever (possibly glossing over the drawbacks) would qualify as a small "e" evangelical.  An "Evangelical" on the other hand, especially in the context of North American culture, or possibly even Christian culture globally, emphasizes less the "proclamation" aspect that comes with the word.  In stead, it emphasizes the primacy of the bible as the Word of God over any traditions of man when there is conflict.  I believe this was initially a product of the Reformation when Protestantism rebelled against Catholic traditions that seemed obviously anti-biblical (like the selling of indulgences, the Spanish Inquisition, Mariology etc) but can also be applied to Protestant traditions (like big hair and over-emphasizing the "s" on the end of Jesus's name (little humor there ;))

I think that the word Fundamentalist is a bit of a squishy term as well.  I think it probably arose (major guessing going on here) as a reaction to a perceived "watering down" of the message of Christ, perhaps church movements of the past century getting too much into the social action end of things.  The reaction to that then was to get back to the "fundamentals" of the gospel, i.e. the things we (Christians, that is) should all agree upon.  Simplify.  It would be similar to the idea of focusing on the three Rs in school (readin', 'ritin, and 'rithmetic).  Unfortunately (or fortunately?) it seems to have morphed into a definition that means "someone who sticks vehemently to simple religious principles at the expense of rational thinking".  Although I identify with Evangelicals, I don't identify with either of the Fundamentalist definitions as they defy the assertion of +++^*@[1 Peter 3:15,16]<<tiddler [[1 Peter 3:15,16]]>>=== and +++^*@[2 Pet 1:5-8] <<tiddler [[2 Pet 1:5-8]]>>=== which (I think) tell us to constantly work on and refine our faith (i.e. never stop learning)


>Are the definitions the same if one replaces the Christian references with those of other religions?
I'm not sure, but I'd venture a "probably?"

>Do these definitions deserve the label "extreme" that is sometimes applied? 
I'd say yes to Fundamentalist and no to Evangelical.  I'd add a caveat, however, that a fundamentalist Muslim focusing on the fundamentals of Jihad (killing infidels and conversion by the sword) is more dangerous than a fundamentalist Christian inappropriately screaming at people telling them they're going to hell.

>Is there any difference in an "extreme" interpretation of any religion? 
unless I'm not following the question, there are extreme differences, the main one (from the Christian viewpoint) being the identity of Jesus and the repercussions thereof (for temperance of the immediate connotations this may bring up see PartialSoul)

>To the respective believers, are the beliefs really very different? 
This is the same thought line as the previous question.  Yes, there are similarities between the religions, but there are also (apparently) 90something% similarity of the DNA between humans and chimps.  That little bit of difference I think is the most important part - its what makes a thing unique.  Again I refer to the PartialSoul idea, whereby (even though scripture doesn't say so blatantly) maybe Christ silently identifies with/ generates the truely good things that a Buddhist or Muslim does from time to time even though he/she doesn't consciously acknowledge Christ as the source.  As an evangelical, however, I admit this qualifies as a "man-made" observation and is open to scriptural correction.
...is the view (which I think is the more biblical view of Hell/Gehenna (sp?)) that +++^*[people who are not saved are like "garbage"] Wait! don't leave yet, look at the alternative to this [[here|Can the soul itself be likened to the (pre-Christian) nation of Israel?]]===.  After all, Gehenna was the city dump of Jerusalem, where things are disposed of, and then forgotten.  

Its easy for a non-believer to get all upset about Hell as a place of EternalConsciousTorment with all the ungodly cruelty that entails, but its another thing to put to them the idea that if they insist on thumbing their noses at the Creator of the Universe and doing it their way, they will be considered "garbage" to be disposed of.  I think that is simultaneously less offensive on the part of God (i.e. not inherently ungodly) and more //personally// offensive to the proud individual who wants to do good things on their own merit and not acknowlege that anyone (God) has given them that which is good in them.

+++[comments and replies]

!here's the comment from Vicki P, (my replies are pop-ups)

I am only speaking for myself in this comment, not all who take issue with the +++^*["our way or the highway"]actually, Christians believe its a "[[God's way or the Highway]] approach, which ultimately leads to the question of BiblicalInerrancy === approach to the Christianity expressed in the comment to which I am responding.

For me, characterizing God this way is demeaning to God. The priority of the God described in the previous comment (as I infer), is to have everyone love and believe in Him. +++^*[This is more important than having believers and non-believers alike live in a Godly (a.k.a. "Christian") way.]Godly behaviour //is// one of the goals - you apparently can't be truly Godly without acknowledging God's will over your own=== That just doesn't make sense to me. If this be the case, it appears that I think more highly of your God than you do.

A second problem I see with the original statement is that there is +++^*[only one interpretation of God allowed.]make that //only one truth that God communicates//, but all are free to interpret as they like=== Again, that seems far too limiting for something as spectacular as "God".

I believe that God comes in many forms. God is imaginative and creative and reasonable enough to be able to +++^*[communicate with different people in different cultures in ways]yes, I agree, but it seems self evident to me that God wouldn't say contradictory things unless we are to believe He's capable of lying, and if we grant that, then all hope is lost=== that are appropriate to those differences. It is the people in the different cultures who insist on clinging to their way as the only way, which +++^*[leads them to commit the attrocities of wars against each other.]I whole heartedly agree, and add that, while Hitler and Stalin were being //consistent// with their foundational beliefs (survival of the fittest), the atrocities committed by "Christians" were done against the teachings of Christ=== Are these warring, raping, looting, pillaging "believers" getting into heaven ahead of non-believers who don't believe in violence? Again, that doesn't give much credit to your version of God. +++[see also:]
[[Can the soul itself be likened to the (pre-Christian) nation of Israel?]]
===
Vicki-P | 03.25.08 - 10:02 pm | # 


===
(incomplete)

#There is no such thing as supernatural (anything outside of "the material"). 
##as this is untestable, it is an ideology based upon presupposition
/%
|Name|ExpandSlidersScript|
|Source|http://www.TiddlyTools.com/#ExpandSlidersScript|
|Version|1.0.1|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <<br>>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.1|
|Type|script|
|Requires|InlineJavascriptPlugin, NestedSlidersPlugin|
|Overrides||
|Description|simulateously expand/collapse all nested sliders in a tiddler (or ID'd DOM element)|
%//% usage:
	<<tiddler ExpandSlidersScript with: elementID expandlabel collapselabel>>

%/<script label="expand">

	// if 'in a tiddler', expand all sliders... otherwise, expand based on passed in element ID
	var here=story.findContainingTiddler(place);
	if (!here) {
		if ("$1"=="$"+"1") { alert("ExpandSlidersScript: not in a tiddler, please use 'with: elementID' syntax"); return; }
		var here=document.getElementById("$1");
		if (!here) { alert("ExpandSlidersScript: unknown elementID: '$1'"); return; }
	}
	var expandlabel="expand"; if ("$2"!="$"+"2") var expandlabel="$2";
	var collapselabel="collapse"; if ("$3"!="$"+"3") var collapselabel="$3";
	var elems=here.getElementsByTagName("*");
	var state=(place.innerHTML.toLowerCase()==expandlabel)?"none":"block";
	for (var e=0; e<elems.length; e++) {
		var p=elems[e].sliderPanel;
		if (p && p.className=="sliderPanel") {
			if (p.style.display==state) window.onClickNestedSlider({target:elems[e]});
		}
	}
	place.innerHTML=state=="none"?collapselabel:expandlabel;
	return false;

</script><script>
	place.lastChild.className="button";
	var expandlabel="expand"; if ("$2"!="$"+"2") var expandlabel="$2";
	var collapselabel="collapse"; if ("$3"!="$"+"3") var collapselabel="$3";
	var currlabel=place.lastChild.innerHTML.toLowerCase();
	place.lastChild.innerHTML=expandlabel;

</script>
/***
| Name:|ExtentTagButtonPlugin|
| Description:|Adds a New tiddler button in the tag drop down|
| Version:|3.2 ($Rev: 2406 $)|
| Date:|$Date: 2007-08-08 22:50:23 +1000 (Wed, 08 Aug 2007) $|
| Source:|http://mptw.tiddlyspot.com/#ExtendTagButtonPlugin|
| Author:|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
***/
//{{{

window.onClickTag_mptw_orig = window.onClickTag;
window.onClickTag = function(e) {
	window.onClickTag_mptw_orig.apply(this,arguments);
	var tag = this.getAttribute("tag");
	var title = this.getAttribute("tiddler");
	// Saq, you're a genius :)
	var popup = Popup.stack[Popup.stack.length-1].popup;
	createTiddlyElement(createTiddlyElement(popup,"li",null,"listBreak"),"div");
	wikify("<<newTiddler label:'New tiddler' tag:'"+tag+"'>>",createTiddlyElement(popup,"li"));
	return false;
}

//}}}
This is my pet name for the Millennial Kingdom of Christ referenced in Revelation (I think about Chapter 20 or so), as referred to in the Daniel account of Nebuchadnezzar's dream about the big statue that represented the first four empires, Babylon, Medo/Persia, Alexander the Great, and the Romans.

<<tiddler [[Daniel 2:31-47]]>>
[[get it here|http://www.mozilla.com/en-US/firefox/]]
/***
|Name|FontSizePlugin|
|Created by|SaqImtiaz|
|Location|http://tw.lewcid.org/#FontSizePlugin|
|Version|1.0|
|Requires|~TW2.x|
!Description:
Resize tiddler text on the fly. The text size is remembered between sessions by use of a cookie.
You can customize the maximum and minimum allowed sizes.
(only affects tiddler content text, not any other text)

Also, you can load a TW file with a font-size specified in the url.
Eg: http://tw.lewcid.org/#font:110

!Demo:
Try using the font-size buttons in the sidebar, or in the MainMenu above.

!Installation:
Copy the contents of this tiddler to your TW, tag with systemConfig, save and reload your TW.
Then put {{{<<fontSize "font-size:">>}}} in your SideBarOptions tiddler, or anywhere else that you might like.

!Usage
{{{<<fontSize>>}}} results in <<fontSize>>

{{{<<fontSize font-size: >>}}} results in <<fontSize font-size:>>

!Customizing:
The buttons and prefix text are wrapped in a span with class fontResizer, for easy css styling.
To change the default font-size, and the maximum and minimum font-size allowed, edit the config.fontSize.settings section of the code below.

!Notes:
This plugin assumes that the initial font-size is 100% and then increases or decreases the size by 10%. This stepsize of 10% can also be customized.

!History:
*27-07-06, version 1.0 : prevented double clicks from triggering editing of containing tiddler.
*25-07-06,  version 0.9

!Code
***/

//{{{
config.fontSize={};

//configuration settings
config.fontSize.settings =
{
            defaultSize : 120,  // all sizes in %
            maxSize : 200,
            minSize : 40,
            stepSize : 10
};

//startup code
var fontSettings = config.fontSize.settings;

if (!config.options.txtFontSize)
            {config.options.txtFontSize = fontSettings.defaultSize;
            saveOptionCookie("txtFontSize");}
setStylesheet(".tiddler .viewer {font-size:"+config.options.txtFontSize+"%;}\n","fontResizerStyles");
setStylesheet("#contentWrapper .fontResizer .button {display:inline;font-size:105%; font-weight:bold; margin:0 1px; padding: 0 3px; text-align:center !important;}\n .fontResizer {margin:0 0.5em;}","fontResizerButtonStyles");

//macro
config.macros.fontSize={};
config.macros.fontSize.handler = function (place,macroName,params,wikifier,paramString,tiddler)
{

               var sp = createTiddlyElement(place,"span",null,"fontResizer");
               sp.ondblclick=this.onDblClick;
               if (params[0])
                           createTiddlyText(sp,params[0]);
               createTiddlyButton(sp,"+","increase font-size",this.incFont);
               createTiddlyButton(sp,"=","reset font-size",this.resetFont);
               createTiddlyButton(sp,"–","decrease font-size",this.decFont);
}

config.macros.fontSize.onDblClick = function (e)
{
             if (!e) var e = window.event;
             e.cancelBubble = true;
             if (e.stopPropagation) e.stopPropagation();
             return false;
}

config.macros.fontSize.setFont = function ()
{
               saveOptionCookie("txtFontSize");
               setStylesheet(".tiddler .viewer {font-size:"+config.options.txtFontSize+"%;}\n","fontResizerStyles");
}

config.macros.fontSize.incFont=function()
{
               if (config.options.txtFontSize < fontSettings.maxSize)
                  config.options.txtFontSize = (config.options.txtFontSize*1)+fontSettings.stepSize;
               config.macros.fontSize.setFont();
}

config.macros.fontSize.decFont=function()
{

               if (config.options.txtFontSize > fontSettings.minSize)
                  config.options.txtFontSize = (config.options.txtFontSize*1) - fontSettings.stepSize;
               config.macros.fontSize.setFont();
}

config.macros.fontSize.resetFont=function()
{

               config.options.txtFontSize=fontSettings.defaultSize;
               config.macros.fontSize.setFont();
}

config.paramifiers.font =
{
               onstart: function(v)
                  {
                   config.options.txtFontSize = v;
                   config.macros.fontSize.setFont();
                  }
};
//}}}
//~~(Part of the [[ForEachTiddlerPlugin]])~~//

Create customizable lists, tables etc. for your selections of tiddlers. Specify the tiddlers to include and their order through a powerful language.

''Syntax:'' 
|>|{{{<<}}}''forEachTiddler'' [''in'' //tiddlyWikiPath//] [''where'' //whereCondition//] [''sortBy'' //sortExpression// [''ascending'' //or// ''descending'']] [''script'' //scriptText//] [//action// [//actionParameters//]]{{{>>}}}|
|//tiddlyWikiPath//|The filepath to the TiddlyWiki the macro should work on. When missing the current TiddlyWiki is used.|
|//whereCondition//|(quoted) JavaScript boolean expression. May refer to the build-in variables {{{tiddler}}} and {{{context}}}.|
|//sortExpression//|(quoted) JavaScript expression returning "comparable" objects (using '{{{<}}}','{{{>}}}','{{{==}}}'. May refer to the build-in variables {{{tiddler}}} and {{{context}}}.|
|//scriptText//|(quoted) JavaScript text. Typically defines JavaScript functions that are called by the various JavaScript expressions (whereClause, sortClause, action arguments,...)|
|//action//|The action that should be performed on every selected tiddler, in the given order. By default the actions [[addToList|AddToListAction]] and [[write|WriteAction]] are supported. When no action is specified [[addToList|AddToListAction]] is used.|
|//actionParameters//|(action specific) parameters the action may refer while processing the tiddlers (see action descriptions for details). <<tiddler [[JavaScript in actionParameters]]>>|
|>|~~Syntax formatting: Keywords in ''bold'', optional parts in [...]. 'or' means that exactly one of the two alternatives must exist.~~|


''Using JavaScript''

To give you a lot of flexibility the [[ForEachTiddlerMacro]] uses JavaScript in its arguments. Even if you are not that familiar with JavaScript you may find forEachTiddler useful. Just have a look at the various ready-to-use [[ForEachTiddlerExamples]] and adapt them to your needs.

''The Elements of the Macro''

The arguments of the ForEachTiddlerMacro consist of multiple parts, each of them being optional.

<<slider chkFETInClause [[inClause]] "inClause" "inClause">>

<<slider chkFETWhereClause [[whereClause]] "whereClause" "whereClause">>
<<slider chkFETSortClause [[sortClause]] "sortClause" "sortClause">>
<<slider chkFETScriptClause [[scriptClause]] "scriptClause" "scriptClause">>
<<slider chkFETActions [[Action Specification]] "Action Specification" "Action Specification">>

''Using Macros and ">" inside the forEachTiddler Macro''

You may use other macro calls into the expression, especially in the actionParameters. To avoid that the {{{>>}}} of such a macro call is misinterpreted as the end of the {{{<<forEachTiddler...>>}}} macro you must escape the {{{>>}}} of the inner macro with {{{$))}}} E.g. if you want to use {{{<<tiddler ...>>}}} inside the {{{forEachTiddler}}} macro you have to write {{{<<tiddler ...$))}}}.

In addition it is necessary to escape single {{{>}}} with the text {{{$)}}}.

''Using {{{<<tiddler ... with: ...>>}}} to re-use ForEachTiddler definitions''

Sometimes you may want to use a certain ForEachTiddler definition in slight variations. E.g. you may want to list either the tiddlers tagged with "ToDo" and in the other case with "Done". To do so you may use "Tiddler parameters". Here an example:

Replace the variable part of the ForEachTiddler definition with $1 ($2,... $9 are supported). E.g. you may create the tiddler "ListTaggedTiddlers" like this
{{{

<<forEachTiddler 
 where 
 'tiddler.tags.contains("$1")'
>>
}}}

Now you can use the ListTaggedTiddlers for various specific tags, using the {{{<<tiddler ...>>}}} macro:
{{{
<<tiddler ListTaggedTiddlers with: "systemConfig">>
}}}
{{{
<<tiddler ListTaggedTiddlers with: "Plugin">>
}}}


See also [[ForEachTiddlerExamples]].
/***
|''Name:''|ForEachTiddlerPlugin|
|''Version:''|1.0.8 (2007-04-12)|
|''Source:''|http://tiddlywiki.abego-software.de/#ForEachTiddlerPlugin|
|''Author:''|UdoBorkowski (ub [at] abego-software [dot] de)|
|''Licence:''|[[BSD open source license (abego Software)|http://www.abego-software.de/legal/apl-v10.html]]|
|''Copyright:''|&copy; 2005-2007 [[abego Software|http://www.abego-software.de]]|
|''TiddlyWiki:''|1.2.38+, 2.0|
|''Browser:''|Firefox 1.0.4+; Firefox 1.5; InternetExplorer 6.0|
!Description

Create customizable lists, tables etc. for your selections of tiddlers. Specify the tiddlers to include and their order through a powerful language.

''Syntax:'' 
|>|{{{<<}}}''forEachTiddler'' [''in'' //tiddlyWikiPath//] [''where'' //whereCondition//] [''sortBy'' //sortExpression// [''ascending'' //or// ''descending'']] [''script'' //scriptText//] [//action// [//actionParameters//]]{{{>>}}}|
|//tiddlyWikiPath//|The filepath to the TiddlyWiki the macro should work on. When missing the current TiddlyWiki is used.|
|//whereCondition//|(quoted) JavaScript boolean expression. May refer to the build-in variables {{{tiddler}}} and  {{{context}}}.|
|//sortExpression//|(quoted) JavaScript expression returning "comparable" objects (using '{{{<}}}','{{{>}}}','{{{==}}}'. May refer to the build-in variables {{{tiddler}}} and  {{{context}}}.|
|//scriptText//|(quoted) JavaScript text. Typically defines JavaScript functions that are called by the various JavaScript expressions (whereClause, sortClause, action arguments,...)|
|//action//|The action that should be performed on every selected tiddler, in the given order. By default the actions [[addToList|AddToListAction]] and [[write|WriteAction]] are supported. When no action is specified [[addToList|AddToListAction]]  is used.|
|//actionParameters//|(action specific) parameters the action may refer while processing the tiddlers (see action descriptions for details). <<tiddler [[JavaScript in actionParameters]]>>|
|>|~~Syntax formatting: Keywords in ''bold'', optional parts in [...]. 'or' means that exactly one of the two alternatives must exist.~~|

See details see [[ForEachTiddlerMacro]] and [[ForEachTiddlerExamples]].

!Revision history
* v1.0.8 (2007-04-12)
** Adapted to latest TiddlyWiki 2.2 Beta importTiddlyWiki API (introduced with changeset 2004). TiddlyWiki 2.2 Beta builds prior to changeset 2004 are no longer supported (but TiddlyWiki 2.1 and earlier, of cause)
* v1.0.7 (2007-03-28)
** Also support "pre" formatted TiddlyWikis (introduced with TW 2.2) (when using "in" clause to work on external tiddlers)
* v1.0.6 (2006-09-16)
** Context provides "viewerTiddler", i.e. the tiddler used to view the macro. Most times this is equal to the "inTiddler", but when using the "tiddler" macro both may be different.
** Support "begin", "end" and "none" expressions in "write" action
* v1.0.5 (2006-02-05)
** Pass tiddler containing the macro with wikify, context object also holds reference to tiddler containing the macro ("inTiddler"). Thanks to SimonBaird.
** Support Firefox 1.5.0.1
** Internal
*** Make "JSLint" conform
*** "Only install once"

* v1.0.4 (2006-01-06)
** Support TiddlyWiki 2.0
* v1.0.3 (2005-12-22)
** Features: 
*** Write output to a file supports multi-byte environments (Thanks to Bram Chen) 
*** Provide API to access the forEachTiddler functionality directly through JavaScript (see getTiddlers and performMacro)
** Enhancements:
*** Improved error messages on InternetExplorer.
* v1.0.2 (2005-12-10)
** Features: 
*** context object also holds reference to store (TiddlyWiki)
** Fixed Bugs: 
*** ForEachTiddler 1.0.1 has broken support on win32 Opera 8.51 (Thanks to BrunoSabin for reporting)
* v1.0.1 (2005-12-08)
** Features: 
*** Access tiddlers stored in separated TiddlyWikis through the "in" option. I.e. you are no longer limited to only work on the "current TiddlyWiki".
*** Write output to an external file using the "toFile" option of the "write" action. With this option you may write your customized tiddler exports.
*** Use the "script" section to define "helper" JavaScript functions etc. to be used in the various JavaScript expressions (whereClause, sortClause, action arguments,...).
*** Access and store context information for the current forEachTiddler invocation (through the build-in "context" object) .
*** Improved script evaluation (for where/sort clause and write scripts).
* v1.0.0 (2005-11-20)
** initial version

!Code
***/
//{{{

	
//============================================================================
//============================================================================
//		   ForEachTiddlerPlugin
//============================================================================
//============================================================================

// Only install once
if (!version.extensions.ForEachTiddlerPlugin) {

if (!window.abego) window.abego = {};

version.extensions.ForEachTiddlerPlugin = {
	major: 1, minor: 0, revision: 8, 
	date: new Date(2007,3,12), 
	source: "http://tiddlywiki.abego-software.de/#ForEachTiddlerPlugin",
	licence: "[[BSD open source license (abego Software)|http://www.abego-software.de/legal/apl-v10.html]]",
	copyright: "Copyright (c) abego Software GmbH, 2005-2007 (www.abego-software.de)"

};

// For backward compatibility with TW 1.2.x
//
if (!TiddlyWiki.prototype.forEachTiddler) {
	TiddlyWiki.prototype.forEachTiddler = function(callback) {
		for(var t in this.tiddlers) {
			callback.call(this,t,this.tiddlers[t]);
		}
	};
}

//============================================================================
// forEachTiddler Macro
//============================================================================

version.extensions.forEachTiddler = {
	major: 1, minor: 0, revision: 8, date: new Date(2007,3,12), provider: "http://tiddlywiki.abego-software.de"};

// ---------------------------------------------------------------------------
// Configurations and constants 
// ---------------------------------------------------------------------------

config.macros.forEachTiddler = {
	 // Standard Properties
	 label: "forEachTiddler",
	 prompt: "Perform actions on a (sorted) selection of tiddlers",

	 // actions
	 actions: {
		 addToList: {},
		 write: {}
	 }
};

// ---------------------------------------------------------------------------
//  The forEachTiddler Macro Handler 
// ---------------------------------------------------------------------------

config.macros.forEachTiddler.getContainingTiddler = function(e) {
	while(e && !hasClass(e,"tiddler"))
		e = e.parentNode;
	var title = e ? e.getAttribute("tiddler") : null; 
	return title ? store.getTiddler(title) : null;
};

config.macros.forEachTiddler.handler = function(place,macroName,params,wikifier,paramString,tiddler) {
	// config.macros.forEachTiddler.traceMacroCall(place,macroName,params,wikifier,paramString,tiddler);

	if (!tiddler) tiddler = config.macros.forEachTiddler.getContainingTiddler(place);
	// --- Parsing ------------------------------------------

	var i = 0; // index running over the params
	// Parse the "in" clause
	var tiddlyWikiPath = undefined;
	if ((i < params.length) && params[i] == "in") {
		i++;
		if (i >= params.length) {
			this.handleError(place, "TiddlyWiki path expected behind 'in'.");
			return;
		}
		tiddlyWikiPath = this.paramEncode((i < params.length) ? params[i] : "");
		i++;
	}

	// Parse the where clause
	var whereClause ="true";
	if ((i < params.length) && params[i] == "where") {
		i++;
		whereClause = this.paramEncode((i < params.length) ? params[i] : "");
		i++;
	}

	// Parse the sort stuff
	var sortClause = null;
	var sortAscending = true; 
	if ((i < params.length) && params[i] == "sortBy") {
		i++;
		if (i >= params.length) {
			this.handleError(place, "sortClause missing behind 'sortBy'.");
			return;
		}
		sortClause = this.paramEncode(params[i]);
		i++;

		if ((i < params.length) && (params[i] == "ascending" || params[i] == "descending")) {
			 sortAscending = params[i] == "ascending";
			 i++;
		}
	}

	// Parse the script
	var scriptText = null;
	if ((i < params.length) && params[i] == "script") {
		i++;
		scriptText = this.paramEncode((i < params.length) ? params[i] : "");
		i++;
	}

	// Parse the action. 
	// When we are already at the end use the default action
	var actionName = "addToList";
	if (i < params.length) {
	   if (!config.macros.forEachTiddler.actions[params[i]]) {
			this.handleError(place, "Unknown action '"+params[i]+"'.");
			return;
		} else {
			actionName = params[i]; 
			i++;
		}
	} 
	
	// Get the action parameter
	// (the parsing is done inside the individual action implementation.)
	var actionParameter = params.slice(i);


	// --- Processing ------------------------------------------
	try {
		this.performMacro({
				place: place, 
				inTiddler: tiddler,
				whereClause: whereClause, 
				sortClause: sortClause, 
				sortAscending: sortAscending, 
				actionName: actionName, 
				actionParameter: actionParameter, 
				scriptText: scriptText, 
				tiddlyWikiPath: tiddlyWikiPath});

	} catch (e) {
		this.handleError(place, e);
	}
};

// Returns an object with properties "tiddlers" and "context".
// tiddlers holds the (sorted) tiddlers selected by the parameter,
// context the context of the execution of the macro.
//
// The action is not yet performed.
//
// @parameter see performMacro
//
config.macros.forEachTiddler.getTiddlersAndContext = function(parameter) {

	var context = config.macros.forEachTiddler.createContext(parameter.place, parameter.whereClause, parameter.sortClause, parameter.sortAscending, parameter.actionName, parameter.actionParameter, parameter.scriptText, parameter.tiddlyWikiPath, parameter.inTiddler);

	var tiddlyWiki = parameter.tiddlyWikiPath ? this.loadTiddlyWiki(parameter.tiddlyWikiPath) : store;
	context["tiddlyWiki"] = tiddlyWiki;
	
	// Get the tiddlers, as defined by the whereClause
	var tiddlers = this.findTiddlers(parameter.whereClause, context, tiddlyWiki);
	context["tiddlers"] = tiddlers;

	// Sort the tiddlers, when sorting is required.
	if (parameter.sortClause) {
		this.sortTiddlers(tiddlers, parameter.sortClause, parameter.sortAscending, context);
	}

	return {tiddlers: tiddlers, context: context};
};

// Returns the (sorted) tiddlers selected by the parameter.
//
// The action is not yet performed.
//
// @parameter see performMacro
//
config.macros.forEachTiddler.getTiddlers = function(parameter) {
	return this.getTiddlersAndContext(parameter).tiddlers;
};

// Performs the macros with the given parameter.
//
// @param parameter holds the parameter of the macro as separate properties.
//				  The following properties are supported:
//
//						place
//						whereClause
//						sortClause
//						sortAscending
//						actionName
//						actionParameter
//						scriptText
//						tiddlyWikiPath
//
//					All properties are optional. 
//					For most actions the place property must be defined.
//
config.macros.forEachTiddler.performMacro = function(parameter) {
	var tiddlersAndContext = this.getTiddlersAndContext(parameter);

	// Perform the action
	var actionName = parameter.actionName ? parameter.actionName : "addToList";
	var action = config.macros.forEachTiddler.actions[actionName];
	if (!action) {
		this.handleError(parameter.place, "Unknown action '"+actionName+"'.");
		return;
	}

	var actionHandler = action.handler;
	actionHandler(parameter.place, tiddlersAndContext.tiddlers, parameter.actionParameter, tiddlersAndContext.context);
};

// ---------------------------------------------------------------------------
//  The actions 
// ---------------------------------------------------------------------------

// Internal.
//
// --- The addToList Action -----------------------------------------------
//
config.macros.forEachTiddler.actions.addToList.handler = function(place, tiddlers, parameter, context) {
	// Parse the parameter
	var p = 0;

	// Check for extra parameters
	if (parameter.length > p) {
		config.macros.forEachTiddler.createExtraParameterErrorElement(place, "addToList", parameter, p);
		return;
	}

	// Perform the action.
	var list = document.createElement("ul");
	place.appendChild(list);
	for (var i = 0; i < tiddlers.length; i++) {
		var tiddler = tiddlers[i];
		var listItem = document.createElement("li");
		list.appendChild(listItem);
		createTiddlyLink(listItem, tiddler.title, true);
	}
};

abego.parseNamedParameter = function(name, parameter, i) {
	var beginExpression = null;
	if ((i < parameter.length) && parameter[i] == name) {
		i++;
		if (i >= parameter.length) {
			throw "Missing text behind '%0'".format([name]);
		}
		
		return config.macros.forEachTiddler.paramEncode(parameter[i]);
	}
	return null;
}

// Internal.
//
// --- The write Action ---------------------------------------------------
//
config.macros.forEachTiddler.actions.write.handler = function(place, tiddlers, parameter, context) {
	// Parse the parameter
	var p = 0;
	if (p >= parameter.length) {
		this.handleError(place, "Missing expression behind 'write'.");
		return;
	}

	var textExpression = config.macros.forEachTiddler.paramEncode(parameter[p]);
	p++;

	// Parse the "begin" option
	var beginExpression = abego.parseNamedParameter("begin", parameter, p);
	if (beginExpression !== null) 
		p += 2;
	var endExpression = abego.parseNamedParameter("end", parameter, p);
	if (endExpression !== null) 
		p += 2;
	var noneExpression = abego.parseNamedParameter("none", parameter, p);
	if (noneExpression !== null) 
		p += 2;

	// Parse the "toFile" option
	var filename = null;
	var lineSeparator = undefined;
	if ((p < parameter.length) && parameter[p] == "toFile") {
		p++;
		if (p >= parameter.length) {
			this.handleError(place, "Filename expected behind 'toFile' of 'write' action.");
			return;
		}
		
		filename = config.macros.forEachTiddler.getLocalPath(config.macros.forEachTiddler.paramEncode(parameter[p]));
		p++;
		if ((p < parameter.length) && parameter[p] == "withLineSeparator") {
			p++;
			if (p >= parameter.length) {
				this.handleError(place, "Line separator text expected behind 'withLineSeparator' of 'write' action.");
				return;
			}
			lineSeparator = config.macros.forEachTiddler.paramEncode(parameter[p]);
			p++;
		}
	}
	
	// Check for extra parameters
	if (parameter.length > p) {
		config.macros.forEachTiddler.createExtraParameterErrorElement(place, "write", parameter, p);
		return;
	}

	// Perform the action.
	var func = config.macros.forEachTiddler.getEvalTiddlerFunction(textExpression, context);
	var count = tiddlers.length;
	var text = "";
	if (count > 0 && beginExpression)
		text += config.macros.forEachTiddler.getEvalTiddlerFunction(beginExpression, context)(undefined, context, count, undefined);
	
	for (var i = 0; i < count; i++) {
		var tiddler = tiddlers[i];
		text += func(tiddler, context, count, i);
	}
	
	if (count > 0 && endExpression)
		text += config.macros.forEachTiddler.getEvalTiddlerFunction(endExpression, context)(undefined, context, count, undefined);

	if (count == 0 && noneExpression) 
		text += config.macros.forEachTiddler.getEvalTiddlerFunction(noneExpression, context)(undefined, context, count, undefined);
		

	if (filename) {
		if (lineSeparator !== undefined) {
			lineSeparator = lineSeparator.replace(/\\n/mg, "\n").replace(/\\r/mg, "\r");
			text = text.replace(/\n/mg,lineSeparator);
		}
		saveFile(filename, convertUnicodeToUTF8(text));
	} else {
		var wrapper = createTiddlyElement(place, "span");
		wikify(text, wrapper, null/* highlightRegExp */, context.inTiddler);
	}
};


// ---------------------------------------------------------------------------
//  Helpers
// ---------------------------------------------------------------------------

// Internal.
//
config.macros.forEachTiddler.createContext = function(placeParam, whereClauseParam, sortClauseParam, sortAscendingParam, actionNameParam, actionParameterParam, scriptText, tiddlyWikiPathParam, inTiddlerParam) {
	return {
		place : placeParam, 
		whereClause : whereClauseParam, 
		sortClause : sortClauseParam, 
		sortAscending : sortAscendingParam, 
		script : scriptText,
		actionName : actionNameParam, 
		actionParameter : actionParameterParam,
		tiddlyWikiPath : tiddlyWikiPathParam,
		inTiddler : inTiddlerParam, // the tiddler containing the <<forEachTiddler ...>> macro call.
		viewerTiddler : config.macros.forEachTiddler.getContainingTiddler(placeParam) // the tiddler showing the forEachTiddler result
	};
};

// Internal.
//
// Returns a TiddlyWiki with the tiddlers loaded from the TiddlyWiki of 
// the given path.
//
config.macros.forEachTiddler.loadTiddlyWiki = function(path, idPrefix) {
	if (!idPrefix) {
		idPrefix = "store";
	}
	var lenPrefix = idPrefix.length;
	
	// Read the content of the given file
	var content = loadFile(this.getLocalPath(path));
	if(content === null) {
		throw "TiddlyWiki '"+path+"' not found.";
	}
	
	var tiddlyWiki = new TiddlyWiki();

	// Starting with TW 2.2 there is a helper function to import the tiddlers
	if (tiddlyWiki.importTiddlyWiki) {
		if (!tiddlyWiki.importTiddlyWiki(content))
			throw "File '"+path+"' is not a TiddlyWiki.";
		tiddlyWiki.dirty = false;
		return tiddlyWiki;
	}
	
	// The legacy code, for TW < 2.2
	
	// Locate the storeArea div's
	var posOpeningDiv = content.indexOf(startSaveArea);
	var posClosingDiv = content.lastIndexOf(endSaveArea);
	if((posOpeningDiv == -1) || (posClosingDiv == -1)) {
		throw "File '"+path+"' is not a TiddlyWiki.";
	}
	var storageText = content.substr(posOpeningDiv + startSaveArea.length, posClosingDiv);
	
	// Create a "div" element that contains the storage text
	var myStorageDiv = document.createElement("div");
	myStorageDiv.innerHTML = storageText;
	myStorageDiv.normalize();
	
	// Create all tiddlers in a new TiddlyWiki
	// (following code is modified copy of TiddlyWiki.prototype.loadFromDiv)
	var store = myStorageDiv.childNodes;
	for(var t = 0; t < store.length; t++) {
		var e = store[t];
		var title = null;
		if(e.getAttribute)
			title = e.getAttribute("tiddler");
		if(!title && e.id && e.id.substr(0,lenPrefix) == idPrefix)
			title = e.id.substr(lenPrefix);
		if(title && title !== "") {
			var tiddler = tiddlyWiki.createTiddler(title);
			tiddler.loadFromDiv(e,title);
		}
	}
	tiddlyWiki.dirty = false;

	return tiddlyWiki;
};


	
// Internal.
//
// Returns a function that has a function body returning the given javaScriptExpression.
// The function has the parameters:
// 
//	 (tiddler, context, count, index)
//
config.macros.forEachTiddler.getEvalTiddlerFunction = function (javaScriptExpression, context) {
	var script = context["script"];
	var functionText = "var theFunction = function(tiddler, context, count, index) { return "+javaScriptExpression+"}";
	var fullText = (script ? script+";" : "")+functionText+";theFunction;";
	return eval(fullText);
};

// Internal.
//
config.macros.forEachTiddler.findTiddlers = function(whereClause, context, tiddlyWiki) {
	var result = [];
	var func = config.macros.forEachTiddler.getEvalTiddlerFunction(whereClause, context);
	tiddlyWiki.forEachTiddler(function(title,tiddler) {
		if (func(tiddler, context, undefined, undefined)) {
			result.push(tiddler);
		}
	});
	return result;
};

// Internal.
//
config.macros.forEachTiddler.createExtraParameterErrorElement = function(place, actionName, parameter, firstUnusedIndex) {
	var message = "Extra parameter behind '"+actionName+"':";
	for (var i = firstUnusedIndex; i < parameter.length; i++) {
		message += " "+parameter[i];
	}
	this.handleError(place, message);
};

// Internal.
//
config.macros.forEachTiddler.sortAscending = function(tiddlerA, tiddlerB) {
	var result = 
		(tiddlerA.forEachTiddlerSortValue == tiddlerB.forEachTiddlerSortValue) 
			? 0
			: (tiddlerA.forEachTiddlerSortValue < tiddlerB.forEachTiddlerSortValue)
			   ? -1 
			   : +1; 
	return result;
};

// Internal.
//
config.macros.forEachTiddler.sortDescending = function(tiddlerA, tiddlerB) {
	var result = 
		(tiddlerA.forEachTiddlerSortValue == tiddlerB.forEachTiddlerSortValue) 
			? 0
			: (tiddlerA.forEachTiddlerSortValue < tiddlerB.forEachTiddlerSortValue)
			   ? +1 
			   : -1; 
	return result;
};

// Internal.
//
config.macros.forEachTiddler.sortTiddlers = function(tiddlers, sortClause, ascending, context) {
	// To avoid evaluating the sortClause whenever two items are compared 
	// we pre-calculate the sortValue for every item in the array and store it in a 
	// temporary property ("forEachTiddlerSortValue") of the tiddlers.
	var func = config.macros.forEachTiddler.getEvalTiddlerFunction(sortClause, context);
	var count = tiddlers.length;
	var i;
	for (i = 0; i < count; i++) {
		var tiddler = tiddlers[i];
		tiddler.forEachTiddlerSortValue = func(tiddler,context, undefined, undefined);
	}

	// Do the sorting
	tiddlers.sort(ascending ? this.sortAscending : this.sortDescending);

	// Delete the temporary property that holds the sortValue.	
	for (i = 0; i < tiddlers.length; i++) {
		delete tiddlers[i].forEachTiddlerSortValue;
	}
};


// Internal.
//
config.macros.forEachTiddler.trace = function(message) {
	displayMessage(message);
};

// Internal.
//
config.macros.forEachTiddler.traceMacroCall = function(place,macroName,params) {
	var message ="<<"+macroName;
	for (var i = 0; i < params.length; i++) {
		message += " "+params[i];
	}
	message += ">>";
	displayMessage(message);
};


// Internal.
//
// Creates an element that holds an error message
// 
config.macros.forEachTiddler.createErrorElement = function(place, exception) {
	var message = (exception.description) ? exception.description : exception.toString();
	return createTiddlyElement(place,"span",null,"forEachTiddlerError","<<forEachTiddler ...>>: "+message);
};

// Internal.
//
// @param place [may be null]
//
config.macros.forEachTiddler.handleError = function(place, exception) {
	if (place) {
		this.createErrorElement(place, exception);
	} else {
		throw exception;
	}
};

// Internal.
//
// Encodes the given string.
//
// Replaces 
//	 "$))" to ">>"

//	 "$)" to ">"
//
config.macros.forEachTiddler.paramEncode = function(s) {
	var reGTGT = new RegExp("\\$\\)\\)","mg");
	var reGT = new RegExp("\\$\\)","mg");
	return s.replace(reGTGT, ">>").replace(reGT, ">");
};

// Internal.
//
// Returns the given original path (that is a file path, starting with "file:")
// as a path to a local file, in the systems native file format.
//
// Location information in the originalPath (i.e. the "#" and stuff following)
// is stripped.
// 
config.macros.forEachTiddler.getLocalPath = function(originalPath) {
	// Remove any location part of the URL
	var hashPos = originalPath.indexOf("#");
	if(hashPos != -1)
		originalPath = originalPath.substr(0,hashPos);
	// Convert to a native file format assuming
	// "file:///x:/path/path/path..." - pc local file --> "x:\path\path\path..."

	// "file://///server/share/path/path/path..." - FireFox pc network file --> "\\server\share\path\path\path..."
	// "file:///path/path/path..." - mac/unix local file --> "/path/path/path..."
	// "file://server/share/path/path/path..." - pc network file --> "\\server\share\path\path\path..."

	var localPath;
	if(originalPath.charAt(9) == ":") // pc local file
		localPath = unescape(originalPath.substr(8)).replace(new RegExp("/","g"),"\\");
	else if(originalPath.indexOf("file://///") === 0) // FireFox pc network file
		localPath = "\\\\" + unescape(originalPath.substr(10)).replace(new RegExp("/","g"),"\\");
	else if(originalPath.indexOf("file:///") === 0) // mac/unix local file
		localPath = unescape(originalPath.substr(7));
	else if(originalPath.indexOf("file:/") === 0) // mac/unix local file
		localPath = unescape(originalPath.substr(5));
	else // pc network file
		localPath = "\\\\" + unescape(originalPath.substr(7)).replace(new RegExp("/","g"),"\\");	
	return localPath;
};

// ---------------------------------------------------------------------------
// Stylesheet Extensions (may be overridden by local StyleSheet)
// ---------------------------------------------------------------------------
//
setStylesheet(
	".forEachTiddlerError{color: #ffffff;background-color: #880000;}",
	"forEachTiddler");

//============================================================================
// End of forEachTiddler Macro
//============================================================================


//============================================================================
// String.startsWith Function
//============================================================================
//
// Returns true if the string starts with the given prefix, false otherwise.
//
version.extensions["String.startsWith"] = {major: 1, minor: 0, revision: 0, date: new Date(2005,11,20), provider: "http://tiddlywiki.abego-software.de"};
//
String.prototype.startsWith = function(prefix) {
	var n =  prefix.length;
	return (this.length >= n) && (this.slice(0, n) == prefix);
};



//============================================================================
// String.endsWith Function
//============================================================================
//
// Returns true if the string ends with the given suffix, false otherwise.
//
version.extensions["String.endsWith"] = {major: 1, minor: 0, revision: 0, date: new Date(2005,11,20), provider: "http://tiddlywiki.abego-software.de"};
//
String.prototype.endsWith = function(suffix) {
	var n = suffix.length;
	return (this.length >= n) && (this.right(n) == suffix);
};


//============================================================================
// String.contains Function
//============================================================================
//
// Returns true when the string contains the given substring, false otherwise.
//
version.extensions["String.contains"] = {major: 1, minor: 0, revision: 0, date: new Date(2005,11,20), provider: "http://tiddlywiki.abego-software.de"};
//
String.prototype.contains = function(substring) {
	return this.indexOf(substring) >= 0;
};

//============================================================================
// Array.indexOf Function
//============================================================================
//
// Returns the index of the first occurance of the given item in the array or 
// -1 when no such item exists.
//
// @param item [may be null]
//
version.extensions["Array.indexOf"] = {major: 1, minor: 0, revision: 0, date: new Date(2005,11,20), provider: "http://tiddlywiki.abego-software.de"};
//
Array.prototype.indexOf = function(item) {
	for (var i = 0; i < this.length; i++) {
		if (this[i] == item) {
			return i;
		}
	}
	return -1;
};

//============================================================================
// Array.contains Function
//============================================================================
//
// Returns true when the array contains the given item, otherwise false. 
//
// @param item [may be null]
//
version.extensions["Array.contains"] = {major: 1, minor: 0, revision: 0, date: new Date(2005,11,20), provider: "http://tiddlywiki.abego-software.de"};
//
Array.prototype.contains = function(item) {
	return (this.indexOf(item) >= 0);
};

//============================================================================
// Array.containsAny Function
//============================================================================
//
// Returns true when the array contains at least one of the elements 
// of the item. Otherwise (or when items contains no elements) false is returned.
//
version.extensions["Array.containsAny"] = {major: 1, minor: 0, revision: 0, date: new Date(2005,11,20), provider: "http://tiddlywiki.abego-software.de"};
//
Array.prototype.containsAny = function(items) {
	for(var i = 0; i < items.length; i++) {
		if (this.contains(items[i])) {
			return true;
		}
	}
	return false;
};


//============================================================================
// Array.containsAll Function
//============================================================================
//
// Returns true when the array contains all the items, otherwise false.
// 
// When items is null false is returned (even if the array contains a null).
//
// @param items [may be null] 
//
version.extensions["Array.containsAll"] = {major: 1, minor: 0, revision: 0, date: new Date(2005,11,20), provider: "http://tiddlywiki.abego-software.de"};
//
Array.prototype.containsAll = function(items) {
	for(var i = 0; i < items.length; i++) {
		if (!this.contains(items[i])) {
			return false;
		}
	}
	return true;
};


} // of "install only once"

// Used Globals (for JSLint) ==============
// ... DOM
/*global 	document */
// ... TiddlyWiki Core
/*global 	convertUnicodeToUTF8, createTiddlyElement, createTiddlyLink, 
			displayMessage, endSaveArea, hasClass, loadFile, saveFile, 
			startSaveArea, store, wikify */
//}}}


/***
!Licence and Copyright
Copyright (c) abego Software ~GmbH, 2005 ([[www.abego-software.de|http://www.abego-software.de]])

Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:

Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.

Redistributions in binary form must reproduce the above copyright notice, this
list of conditions and the following disclaimer in the documentation and/or other
materials provided with the distribution.

Neither the name of abego Software nor the names of its contributors may be
used to endorse or promote products derived from this software without specific
prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.
***/

open this topic to see subtopics
Here's a definite point of tension in the (at least North American) church set:  the simultaneous desire for [[FreeWill|Free Will / Election]]  and MagicalChristianity.

You have the Free Will camp that desire that in some //absolute// (key word) sense to have free will to choose what we want to choose, and yet there are those who (sometimes simultaneously) desire to have God do the thinking and choosing for them, e.g. "find the will of God about what they should do regarding a particular circumstance."  They want their cake and to eat it too.

I think (and please comment here if I'm wrong) that God's Sovereign Will is absolute, yet is absolutely and forever obscured from us (until he reveals it), and so we //functionally// have free will in the sense that we have it relative to everyone else other than God himself.  I also think, regarding the work of the Holy Spirit, that He will tell us //what is// and //what is true// and //what is right// (by pointing towards Christ / the bible) but never //what to do//.  That "What should I  (specifically) do" is the winning lottery ticket that we all have at one time or another longed for, yet is the one thing that God will never give us.  (don't quote me on this - I think I stole it from someone, but I can't remember who)


!the Will of God
Another aspect here is that God does direct us in the sense that he made us and he made our hearts and minds, etc. and as long as we (Christians) are doing what is wise and moral (that's the big "if"), when we follow our desires, we //''are''// doing the will of God.  Remember that being a christian includes desiring to follow Christ's commandments - those things taught in the bible.
[[here|http://www.reformedreader.org/rbb/edwards/fowindex.htm]]

"The greatest achievement of the human intellect" - some guy quoted by RCSproul
|''things I agree with him about'' | ''things I disagree with him about'' |
| partial preterist | really into home schooling |
| young earther | focuses primarily on the U.S. |
|  | |

go to The_iTunesStore and search for "the Gary DeMar show"
<<tiddler TheNarrowMind>>
To get started with this blank TiddlyWiki, you'll need to modify the following tiddlers:
* SiteTitle & SiteSubtitle: The title and subtitle of the site, as shown above (after saving, they will also appear in the browser title bar)
* MainMenu: The menu (usually on the left)
* DefaultTiddlers: Contains the names of the tiddlers that you want to appear when the TiddlyWiki is opened
You'll also need to enter your username for signing your edits: <<option txtUserName>>
<<switchTheme width:nnn>>
See also MonkeyPirateTiddlyWiki. [[Tiddlywiki.com|http://tiddlywiki.com]]

ToDos
<<tiddler [[Say Hello to my Little Friend]]>>
You know when kids are in Sunday School and they don't know the answer to a question, how the safest answer is either "God" or "Jesus"?  Well, this is the answer I want my kids to spit out (because its right) in answer to the following fill-in-the-blank statement:
  ''"the purpose of life is to......................."''

Okay, there are the other biggies, like "Love God and love your neighbor", and "Seek first the Kingdom of God", but this one is the most all-encompassing.

Here's what I think it means to GlorifyGod:
Picture yourself when you were a kid, outside somewhere exploring the great frontiers of your neighborhood.  Lets say you have one of those really big magnifying glasses (only you're not out to burn ants!).  Now lets say that it's not just a regular magnifying glass, but it has built into the glass a high-tech scanner thingy kind of like you'd get in a ((Star Trek show(can you say "tricorder"?))).  Your job is to seek out new life, new things that you never realized were there before that make you go "Wow!", and then your job is to show what you've learned to others so they can go "Wow!" too.

Now, in real life I think we have to add to that the aspect of showing by doing, and finding out what others need to see in God and being those answers for them.

tangent: see also MyStarWarsStarTrekTheory
Many non-Christians complain that Christianity must be wrong because it violates their sense of humility.  How could any human being be so arrogant as to insist its "my way or the highway!"?

The answer to this argument is that the non-Christian is assuming that the creator of the universe (we'll call him "God" for short) did not write the bible and that human beings just made it all up, and they've gone to the extreme in pride and other bad character traits as to insist that its true.  Of course, the Christian would disagree with that initial premise.

Where we (Christians and non-Christians) agree is with the idea that no human being should be so arrogant as to claim in-errancy herself or himself.  Along this vein there are lots of Christians, myself included, that probably make statements they believe are fact, when they are actually incorrect.  That said, it is not inherently illogical to assume that an all-powerful God could communicate with humankind and use absolute statements of truth in an in-errant fashion.  So, while I can never say "my way or the highway", God could (and we believe, He in fact did) say that.
|''things I agree with them about'' | ''things I disagree with them about'' |
| anti "left-behind" | believes in evolution / old earth |
| lots of good stuff (listen to podcasts) | put no significance on believing before baptism (okay with infant baptism) |
a group of people at St. Paul's theological seminary (?) who do a podcast
I assume they are Anglicans. see it [[here|http://sptc.htb.org.uk/godpod]]

go to The_iTunesStore and search for "Godpod, St Paul's"
...
get it [[here|http://reader.google.com]]
From [[here|http://en.wikipedia.org/wiki/Gravitational_time_dilation]]:

Gravitational time dilation is the effect of time passing at different rates in regions of different gravitational potential; ''//the lower the gravitational potential (closer to the center of a massive object), the more slowly clocks run//'' Albert Einstein originally predicted this effect in his theory of relativity and it has since been confirmed by tests of general relativity.

Therefore, if the Milky Way (earth's galaxy) is in the centre of the Universe [[(as it appears to be)|Starlight and the age of the universe]] then time passes more quickly at the periphery of the universe, which would make the stars appear very old.
produces the Stand To Reason broadcasts /  website
|''things I agree with him about'' | ''things I disagree with him about'' |
| rational approach | old-earther |
| doesn't believe in macro-evolution | |

Seems to use the "why would God make a universe that appears to look old" arguement, saying that the speed of light is constant, and leaning heavily on the "BigBang".  The funny thing from my point of view is that the current BigBang theory of "inflation" starts with the universe rapidly expanding //''faster''// than the speed of light.

Also, there is the gravitational lens theory that states that if the Milky Way (the galaxy that we're in) was at the center of the universe (as it appears to be), the gravitational structure of the universe would warp time and the speed of light (but I don't claim to understand that one yet) so that the farther away from the Milky Way a galaxy is, the faster time is working there (and that's how we could see galaxies "billions of years old" when the earth is still just, say, 6000 years old.

see [[here|http://www.str.org/site/PageServer]]
were thrown in to the lake of fire (will be, that is)

Does that mean Death is a "person" that will be tortured for eternity?
answer: of course not

maybe Hades (that guy with blue flaming hair) will be ;-)
|''things I agree with him about'' | ''things I disagree with him about'' |
| partial preterist (although doesn't call himself that) | believes in eternal conscious torment |
not forsaking our own assembling together, as is the habit of some, but encouraging {one another;} and all the more as you see the day drawing near. (NASB)
<<<
Hebrews 6:1-12   6:1 Therefore we must progress beyond ^^1^^  the elementary ^^2^^  instructions about Christ ^^3^^  and move on ^^4^^  to maturity, not laying this foundation again: repentance from dead works and faith in God, 6:2 teaching about baptisms, laying on of hands, resurrection of the dead, and eternal judgment. 6:3 And this is what we intend to do, ^^5^^  if God permits. 6:4 ''//For it is impossible in the case of those who have once been enlightened, tasted the heavenly gift, become partakers of the Holy Spirit, 6:5 tasted the good word of God and the miracles of the coming age, 6:6 and then have committed apostasy, ^^6^^  to renew them again to repentance, since//'' ^^7^^  they are crucifying the Son of God for themselves all over again ^^8^^  and holding him up to contempt. 6:7 For the ground that has soaked up the rain that frequently falls on ^^9^^  it and yields useful vegetation for those who tend it receives a blessing from God. 6:8 But if it produces thorns and thistles, it is useless and about to be cursed; ^^10^^  its fate is to be burned. 6:9 But in your case, dear friends, ''//even though we speak like this//'', we are convinced of better things relating to salvation. 6:10 For God is not unjust so as to forget your work and the love you have demonstrated for his name, in having served and continuing to serve the saints. 6:11 But we passionately want each of you to demonstrate the same eagerness for the fulfillment of your hope until the end, 6:12 so that you may not be sluggish, ^^11^^  but imitators of those who through faith and perseverance inherit the promises.



1 tn Grk “Therefore leaving behind.” The implication is not of abandoning this elementary information, but of building on it.
2 tn Or “basic.”
3 tn Grk “the message of the beginning of Christ.”
4 tn Grk “leaving behind…let us move on.”
5 tn Grk “and we will do this.”
6 tn Or “have fallen away.”
7 tn Or “while”; Grk “crucifying…and holding.” The Greek participles here (“crucifying…and holding”) can be understood as either causal (“since”) or temporal (“while”).
8 tn Grk “recrucifying the son of God for themselves.”
9 tn Grk “comes upon.”
10 tn Grk “near to a curse.”
11 tn Or “dull.”
from http://net.bible.org
<<<
*Is this really talking about loss of salvation?  
*RCSproul points out that (see the second bolding) this is written as an arguement to absurdity to make the point that we can't lose salvation if its been given to us.  He likens the idea of being renewed again to repentance to being circumcised a second time.
*these people the author is talking about are not just church attenders who aren't //really// true believers, because it says "repent again".  You can't repent if God hasn't first placed Christ in some way into your soul to make you see the truth about what you're repenting from.
*RC argues that this is a rebuttal of the Judeizers, the people at the time of the early church that tried to get the early Christians to add Jewish works back into their salvation - so that they could once again try to control their behavior by being their gatekeepers to God.
**this would indeed be cause for an emphatic rebuttal, which this is.
in short, I currently believe that Hell is an eternal place where the wicked / unrighteous are justly destroyed (and never seen or heard from again for all eternity), a process which at first is conscious, but as the process is one of destruction, there is no eternal conscious torment - i.e, you can't be destroyed and conscious at the same time.
I just listened to an episode of UnBelievable [[here|http://www.premierradio.org.uk/listen/ondemand.aspx?mediaid={0AFF573E-5F1B-4F97-9DB3-F9F063572E7D}]] in which JustinBrierley interviewed AlisterMcGrath.  In a nutshell, Alister describes Heresy as a belief regarding Christianity that is not only wrong, but likely damaging to the faith of christians who entertain the notion.  Interestingly, he didn't say that having such a wrong faith would send one irretrievably to [[Hell]].
/***
| Name|HideWhenPlugin|
| Description|Allows conditional inclusion/exclusion in templates|
| Version|3.0 ($Rev: 1845 $)|
| Date|$Date: 2007-03-16 15:19:22 +1000 (Fri, 16 Mar 2007) $|
| Source|http://mptw.tiddlyspot.com/#HideWhenPlugin|
| Author|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
For use in ViewTemplate and EditTemplate. Example usage:
{{{<div macro="showWhenTagged Task">[[TaskToolbar]]</div>}}}
{{{<div macro="showWhen tiddler.modifier == 'BartSimpson'"><img src="bart.gif"/></div>}}}
***/
//{{{

window.removeElementWhen = function(test,place) {
	if (test) {
		removeChildren(place);
		place.parentNode.removeChild(place);
	}
};

merge(config.macros,{

	hideWhen: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( eval(paramString), place);
	}},

	showWhen: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( !eval(paramString), place);
	}},

	hideWhenTagged: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( tiddler.tags.containsAll(params), place);
	}},

	showWhenTagged: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( !tiddler.tags.containsAll(params), place);
	}},

	hideWhenTaggedAny: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( tiddler.tags.containsAny(params), place);
	}},

	showWhenTaggedAny: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( !tiddler.tags.containsAny(params), place);
	}},

	hideWhenTaggedAll: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( tiddler.tags.containsAll(params), place);
	}},

	showWhenTaggedAll: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( !tiddler.tags.containsAll(params), place);
	}},

	hideWhenExists: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( store.tiddlerExists(params[0]) || store.isShadowTiddler(params[0]), place);
	}},

	showWhenExists: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {
		removeElementWhen( !(store.tiddlerExists(params[0]) || store.isShadowTiddler(params[0])), place);
	}}

});

//}}}
http://youtube.com/watch?v=M05P9gO5Hkg

notes: Christopher Hitchens wrote "God is not Great" - a best seller, DeSouza I'm not sure about (seems to be a smart guy though)
!this debate is broken up into parts (look to the right of the youtube screen when the sections end)
/***
|Name|HoverMenuPlugin|
|Created by|SaqImtiaz|
|Location|http://tw.lewcid.org/#HoverMenuPlugin|
|Version|1.11|
|Requires|~TW2.x|
!Description:
Provides a hovering menu on the edge of the screen for commonly used commands, that scrolls with the page.

!Demo:
Observe the hovering menu on the right edge of the screen.

!Installation:
Copy the contents of this tiddler to your TW, tag with systemConfig, save and reload your TW.
To customize your HoverMenu, edit the HoverMenu shadow tiddler.

To customize whether the menu sticks to the right or left edge of the screen, and its start position, edit the HoverMenu configuration settings part of the code below. It's well documented, so don't be scared!

The menu has an id of hoverMenu, in case you want to style the buttons in it using css.

!Notes:
Since the default HoverMenu contains buttons for toggling the side bar and jumping to the top of the screen and to open tiddlers, the ToggleSideBarMacro, JumpMacro and the JumpToTopMacro are included in this tiddler, so you dont need to install them separately. Having them installed separately as well could lead to complications.

If you dont intend to use these three macros at all, feel free to remove those sections of code in this tiddler.

!To Do:
* rework code to allow multiple hovering menus in different positions, horizontal etc.
* incorporate code for keyboard shortcuts that correspond to the buttons in the hovermenu

!History:
*03-08-06, ver 1.1.2: compatibility fix with SelectThemePlugin
*03-08-06,  ver 1.11: fixed error with button tooltips
*27-07-06, ver 1.1 : added JumpMacro to hoverMenu
*23-07-06

!Code
***/

/***
start HoverMenu plugin code
***/
//{{{
config.hoverMenu={};
//}}}

/***
HoverMenu configuration settings
***/
//{{{
config.hoverMenu.settings={
               align: 'right',    //align menu to right or left side of screen, possible values are 'right' and 'left'               
               x: 1,              // horizontal distance of menu from side of screen, increase to your liking.
               y: 158            //vertical distance of menu from top of screen at start, increase or decrease to your liking
               };
//}}}

//{{{
//continue HoverMenu plugin code
config.hoverMenu.handler=function()
{              
               if (!document.getElementById("hoverMenu"))
               {
               var theMenu = createTiddlyElement(document.getElementById("contentWrapper"), "div","hoverMenu");
               theMenu.setAttribute("refresh","content");
               theMenu.setAttribute("tiddler","HoverMenu");
               var menuContent = store.getTiddlerText("HoverMenu");
               wikify(menuContent,theMenu);
              }

	       var Xloc = this.settings.x;
	       Yloc =this.settings.y;
	       var ns = (navigator.appName.indexOf("Netscape") != -1);
	       function SetMenu(id)
                        {
		        var GetElements=document.getElementById?document.getElementById(id):document.all?document.all[id]:document.layers[id];
		        if(document.layers)GetElements.style=GetElements;
		        GetElements.sP=function(x,y){this.style[config.hoverMenu.settings.align]=x +"px";this.style.top=y +"px";};
		        GetElements.x = Xloc;
		        GetElements.y = findScrollY();
		        GetElements.y += Yloc;
		        return GetElements;
	                }
               window.LoCate_XY=function()
                        {
		        var pY =  findScrollY();
                        ftlObj.y += (pY + Yloc - ftlObj.y)/15;
		        ftlObj.sP(ftlObj.x, ftlObj.y);
		        setTimeout("LoCate_XY()", 10);
	                }
               ftlObj = SetMenu("hoverMenu");
	       LoCate_XY();
};

window.old_lewcid_hovermenu_restart = restart;
restart = function()
{
               window.old_lewcid_hovermenu_restart();
               config.hoverMenu.handler();
};

setStylesheet(

"#hoverMenu .imgLink, #hoverMenu .imgLink:hover {border:none; padding:0px; float:right; margin-bottom:2px; margin-top:0px;}\n"+
"#hoverMenu  .button, #hoverMenu  .tiddlyLink {border:none; font-weight:bold; background:#18f; color:#FFF; padding:0 5px; float:right; margin-bottom:4px;}\n"+
"#hoverMenu .button:hover, #hoverMenu .tiddlyLink:hover {font-weight:bold; border:none; color:#fff; background:#000; padding:0 5px; float:right; margin-bottom:4px;}\n"+
"#hoverMenu .button {width:100%; text-align:center}"+
"#hoverMenu { position:absolute; width:7px;}\n"+
"\n","hoverMenuStyles");


config.macros.renameButton={};
config.macros.renameButton.handler = function(place,macroName,params,wikifier,paramString,tiddler)
{

               if (place.lastChild.tagName!="BR")
                     {
                      place.lastChild.firstChild.data = params[0];
                      if (params[1]) {place.lastChild.title = params[1];}
                     }
};

config.shadowTiddlers["HoverMenu"]="<<top>>\n<<closeAll>><<renameButton c 'Close all tiddlers'>><<toggleSideBar '' '' hide>><<renameButton '>' >>\n<<jump j '' top>>\n<<saveChanges>><<renameButton s 'Save TiddlyWiki'>>\n<<newTiddler>><<renameButton n>>\n";
//}}}
//end HoverMenu plugin code

//Start ToggleSideBarMacro code
//{{{
config.macros.toggleSideBar={};

config.macros.toggleSideBar.settings={
         styleHide :  "#sidebar { display: none;}\n"+"#contentWrapper #displayArea { margin-right: 1em;}\n"+"",
         styleShow : " ",
         arrow1: "«",
         arrow2: "»"

};

config.macros.toggleSideBar.handler=function (place,macroName,params,wikifier,paramString,tiddler)
{
          var tooltip= params[1]||'toggle sidebar';
          var mode = (params[2] && params[2]=="hide")? "hide":"show";
          var arrow = (mode == "hide")? this.settings.arrow1:this.settings.arrow2;
          var label= (params[0]&&params[0]!='.')?params[0]+" "+arrow:arrow;
          var theBtn = createTiddlyButton(place,label,tooltip,this.onToggleSideBar,"button HideSideBarButton");
          if (mode == "hide")
             { 
             (document.getElementById("sidebar")).setAttribute("toggle","hide");
              setStylesheet(this.settings.styleHide,"ToggleSideBarStyles");
             }
};

config.macros.toggleSideBar.onToggleSideBar = function(){
          var sidebar = document.getElementById("sidebar");
          var settings = config.macros.toggleSideBar.settings;
          if (sidebar.getAttribute("toggle")=='hide')
             {
              setStylesheet(settings.styleShow,"ToggleSideBarStyles");
              sidebar.setAttribute("toggle","show");
              this.firstChild.data= (this.firstChild.data).replace(settings.arrow1,settings.arrow2);
              }
          else
              {    
               setStylesheet(settings.styleHide,"ToggleSideBarStyles");
               sidebar.setAttribute("toggle","hide");
               this.firstChild.data= (this.firstChild.data).replace(settings.arrow2,settings.arrow1);
              }

     return false;
}

setStylesheet(".HideSideBarButton .button {font-weight:bold; padding: 0 5px;}\n","ToggleSideBarButtonStyles");
//}}}
//end ToggleSideBarMacro code

//start JumpToTopMacro code
//{{{
config.macros.top={};
config.macros.top.handler=function(place,macroName)
{
               createTiddlyButton(place,"^","jump to top",this.onclick);
}
config.macros.top.onclick=function()
{
               window.scrollTo(0,0);
};

config.commands.top =
{
               text:" ^ ",
               tooltip:"jump to top"

};

config.commands.top.handler = function(event,src,title)
{
               window.scrollTo(0,0);
}
//}}}
//end JumpToStartMacro code

//start JumpMacro code
//{{{
config.macros.jump= {};
config.macros.jump.handler = function (place,macroName,params,wikifier,paramString,tiddler)
{
        var label = (params[0] && params[0]!=".")? params[0]: 'jump';
        var tooltip = (params[1] && params[1]!=".")? params[1]: 'jump to an open tiddler';
        var top = (params[2] && params[2]=='top') ? true: false;        

        var btn =createTiddlyButton(place,label,tooltip,this.onclick);
        if (top==true)
              btn.setAttribute("top","true")
}

config.macros.jump.onclick = function(e)
{
        if (!e) var e = window.event;
        var theTarget = resolveTarget(e);
        var top = theTarget.getAttribute("top");
	var popup = Popup.create(this);
	if(popup)
		{
                 if(top=="true")
                                {createTiddlyButton(createTiddlyElement(popup,"li"),'Top ↑','Top of TW',config.macros.jump.top);
                                 createTiddlyElement(popup,"hr");}
		
		story.forEachTiddler(function(title,element) {
			createTiddlyLink(createTiddlyElement(popup,"li"),title,true);
			});
                }
	Popup.show(popup,false);
	e.cancelBubble = true;
	if (e.stopPropagation) e.stopPropagation();
	return false;
}

config.macros.jump.top = function()
{
       window.scrollTo(0,0);
}
//}}}
//end JumpMacro code

//utility functions
//{{{
Popup.show = function(unused,slowly)
{
	var curr = Popup.stack[Popup.stack.length-1];
	var rootLeft = findPosX(curr.root);
	var rootTop = findPosY(curr.root);
	var rootHeight = curr.root.offsetHeight;
	var popupLeft = rootLeft;
	var popupTop = rootTop + rootHeight;
	var popupWidth = curr.popup.offsetWidth;
	var winWidth = findWindowWidth();
        if (isChild(curr.root,'hoverMenu'))
              var x = config.hoverMenu.settings.x;
        else
              var x = 0;
	if(popupLeft + popupWidth+x > winWidth)
		popupLeft = winWidth - popupWidth -x;
        if (isChild(curr.root,'hoverMenu'))
  	        {curr.popup.style.right = x + "px";}
        else
                curr.popup.style.left = popupLeft + "px";
	curr.popup.style.top = popupTop + "px";
	curr.popup.style.display = "block";
	addClass(curr.root,"highlight");
	if(config.options.chkAnimate)
		anim.startAnimating(new Scroller(curr.popup,slowly));
	else
		window.scrollTo(0,ensureVisible(curr.popup));
}

window.isChild = function(e,parentId) {
        while (e != null) {
                var parent = document.getElementById(parentId);
                if (parent == e) return true;
                e = e.parentNode;
                }
        return false;
};
//}}}
tbc
Blogs are collections of discrete entries entered in chronological order, and once they're posted, that's usually it for that entry.  This is more of a ''//Blob//'' in that its one big collection of little related ideas, and each idea is often edited later and re-edited as thoughts develop.  It's basically "micro blogging" for those of us with ADD.  The closest thing to a chronology is [[recent changes]] which lists the last 20 new or recently edited ideas.

If you want your own, get one for your computer at http://tiddlywiki.com/, or for the web at http://tiddlyspot.com/
Each paragraph or group of paragraphs that open from a link is called a "tiddler".  
#To close an individual tiddler, click "close" from the words in a row just above and to the right of the tiddler's title
#To close everything else but the one you're reading, click "close others"

You can also use the floating blue buttons on the right
*from top to bottom they
#jump to the top
#close all tiddlers
#open the side panel 
#jump to one tiddler from a list of all that are currently open
#the last two you won't need

Within the left-side menu is the search bar:  if you want to go back to something but can't remember where it is, just type a few words that are in it in the search bar and a number of suggestions will pop up

If you want to send one or a set of tiddlers that are currently open to someone as a link in an email, open the side panel, jump to the top and click "permaview".  Then copy the address there in your browsers address bar and paste it into your email.  When your recipient clicks on that link, they'll go to this site with the same tiddlers open.

When all else fails, just click the "refresh" button on your browser and the whole site will re-load from scratch.

!Commenting
*you can add comments to almost any tiddler here.  You'll find the button to do so just underneath the title of the tiddler.
*If you see a number in brackets beside the comment button, that means there are comments there, and pressing the button will take you to the same window where you can read the comments others have previously made
this is a loose term I made up for GeneCook, but only because I'm not up on my Calvinism terms.  I'll probably change this later.

Anyway on first blush, he seems to think that //everything// is //caused// by God, but again I may be totally wrong here - listen for yourself, then correct me if I'm wrong.
AKA: Maybe the Church //isn't// Israel, //western civilization is Israel//  +++^*@[see also] [[overlapping spiritual roles and symbolism chart]] <<tiddler [[overlapping spiritual roles and symbolism chart]]>>===

#Christ is the high priest to the church which corresponds to the levites who were set apart - their land was God himself and they could not own land.  
#Anyway, if the church is the levites then the millennial kingdom corresponds to Isreal, not the church.  
#The church is the priesthood to look after the word of God on earth and get it into the hearts of all man and the kingdom
#Spiritual Israel (the entire kingdom, not just its "government" (the Church)), will grow and fill the whole earth, and then Satan will be released to once again deceive the nations, and then all will be judged.

*the life and times of Israel is the physical metaphore for what we (the church) are to do spiritually both in the world (the "culture war") and within ourselves (SpiritualWarfare)
*Israel was the priesthood to the nations, the body of Believers set apart to bring Gods blessing to the gentiles.

Joh 11:51 Now he did not say this on his own initiative, but being high priest that year, he prophesied that Jesus was going to die for the nation ,  52 and not for the nation only, but in order that He might also gather together into one the children of God who are scattered abroad.  

((remember(when you see words capitalized in scripture, its not me yelling, that's just the convention for New Testament scripture referring to Old Testament scripture)))
rom 10:18 But I say, surely they have never heard, have they? Indeed they have; "THEIR VOICE HAS GONE OUT INTO ALL THE EARTH, AND THEIR WORDS TO THE ENDS OF THE WORLD. "  19 But I say, surely Israel did not know, did they? First Moses says, "I WILL MAKE YOU JEALOUS BY THAT WHICH IS NOT A NATION , BY A NATION WITHOUT UNDERSTANDING WILL I ANGER YOU."  20 And Isaiah is very bold and says, "I WAS FOUND BY THOSE WHO DID NOT SEEK ME, I BECAME MANIFEST TO THOSE WHO DID NOT ASK FOR ME."  21 But as for Israel He says, "ALL THE DAY LONG I HAVE STRETCHED OUT MY HANDS TO A DISOBEDIENT AND OBSTINATE PEOPLE. "  11:1 I say then, God has not rejected His people, has He? May it never be! For I too am an Israelite, a descendant of Abraham, of the tribe of Benjamin.  2 God has not rejected His people whom He foreknew. Or do you not know what the Scripture says in the passage about Elijah, how he pleads with God against Israel ?  3 "Lord, THEY HAVE KILLED YOUR PROPHETS, THEY HAVE TORN DOWN YOUR ALTARS, AND I ALONE AM LEFT, AND THEY ARE SEEKING MY LIFE. "    4 But what is the divine response to him? "I HAVE KEPT for Myself SEVEN THOUSAND MEN WHO HAVE NOT BOWED THE KNEE TO BAAL. "  5 In the same way then, there has also come to be at the present time a remnant according to God's gracious choice.  6 But if it is by grace, it is no longer on the basis of works, otherwise grace is no longer grace.  7 ((What then ? What Israel is seeking, it has not obtained, but those who were chosen obtained it, and the rest were hardened;  (there's Israel's transition into the pre 70AD church.)))

see also
Rom 11:23 And they also, if they [unbelieving Israel [ie not true Israel]] do not continue in their unbelief, will be grafted in, for God is able to graft them in again.

the church is a nation:

1pet 2:9+ But you are A CHOSEN RACE, A royal PRIESTHOOD, A HOLY NATION, A PEOPLE FOR God's OWN POSSESSION, so that you may proclaim the excellencies of Him who has called you out of darkness into His marvelous light;  10 for you once were NOT A PEOPLE, but now you are THE PEOPLE OF GOD; you had NOT RECEIVED MERCY, but now you have RECEIVED MERCY.  

*the fact that the northern kingdom [called "Israel"] was destroyed by the Assyrians, and Judah, the remnant, became known as Isreal by Paul's time indicates that __the term is transferable to the next remnant group__
I think that its pretty clear in the bible that those who receive eternal life are chosen by God before time even began.  So why even try to make "converts" because they're either chosen or not chosen, right?

I don't claim to know all the answers, but here's what I think so far.

*We do not have and never will have access to know God's Sovereign Will, so effectively we have free will because he's not going to tell us what to do (specifically, at each moment in time), just what we shouldn't do, and what is right and true (righteousness).
*That said, we are to //''discover''// the truth of God (GlorifyGod), including exploring human relationships and discovering whether or not someone else has been chosen (they themselves do not know until the moment of conversion), rather than suppose that //we// can "convert them"
*this also highlights the fact that one can never degrade another human being in their own mind to be "un-chosen" or even "worthless" or some other such nonsense because they can truly never know how God is using them.  Further, God uses even non-believers for his purposes.
I was listening the other day to channel 159 on Sirius radio (now 161) and they were talking about whether or not Christians should be involved in changing society through politics. I agreed with the host's contention that just because Jesus didn't affect the world through politics doesn't mean that we shouldn't - Jesus didn't get married either...

The fellow also brought up the point that John MacArthur thinks we shouldn't be pollitically active, linking it to the idea that we are now living in a "post-christian" world [and therefore things are just going to get worse - so why bother trying [I assume is the jist [sp?] ] ]. I agree with the radio host that our society may be post Christian but it doesn't have to stay that way.

I think John MacArthur has a lot of excellent things to say to us from the bible that bring more of our heart closer to God, but the (I believe) faulty eschatology he (and many other excellent pastors) espouses makes Christians tend to want to dis-engage from the world instead of continuing to do spiritual battle as more-than conquerors who are living in the kingdom presently ruled by Christ. We've already won, but much of the present and recent Christian generations since John Nelson Darby started this wrong turn in history have in part forfeited their share in the growth of the Kingdom because of this fatalistic attitude.

I believe Christ is building his kingdom now, through the church, but also through the work of truth [that's Him] within the rest of society as well. If the North American church wants to disengage from the rest of the world because of a "seconds from disaster" attitude, I'll bet He'll be happy to use Christians who are ready to engage in other parts of the world.
/***
|Name|ImageSizePlugin|
|Source|http://www.TiddlyTools.com/#ImageSizePlugin|
|Version|1.2.2|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
|Type|plugin|
|Description|adds support for resizing images|
This plugin adds optional syntax to scale an image to a specified width and height and/or interactively resize the image with the mouse.
!!!!!Usage
<<<
The extended image syntax is:
{{{
[img(w+,h+)[...][...]]
}}}
where ''(w,h)'' indicates the desired width and height (in CSS units, e.g., px, em, cm, in, or %). Use ''auto'' (or a blank value) for either dimension to scale that dimension proportionally (i.e., maintain the aspect ratio). You can also calculate a CSS value 'on-the-fly' by using a //javascript expression// enclosed between """{{""" and """}}""". Appending a plus sign (+) to a dimension enables interactive resizing in that dimension (by dragging the mouse inside the image). Use ~SHIFT-click to show the full-sized (un-scaled) image. Use ~CTRL-click to restore the starting size (either scaled or full-sized).
<<<
!!!!!Examples
<<<
{{{
[img(100px+,75px+)[images/meow2.jpg]]
}}}
[img(100px+,75px+)[images/meow2.jpg]]
{{{
[<img(34%+,+)[images/meow.gif]]
[<img(21% ,+)[images/meow.gif]]
[<img(13%+, )[images/meow.gif]]
[<img( 8%+, )[images/meow.gif]]
[<img( 5% , )[images/meow.gif]]
[<img( 3% , )[images/meow.gif]]
[<img( 2% , )[images/meow.gif]]
[img(  1%+,+)[images/meow.gif]]
}}}
[<img(34%+,+)[images/meow.gif]]
[<img(21% ,+)[images/meow.gif]]
[<img(13%+, )[images/meow.gif]]
[<img( 8%+, )[images/meow.gif]]
[<img( 5% , )[images/meow.gif]]
[<img( 3% , )[images/meow.gif]]
[<img( 2% , )[images/meow.gif]]
[img(  1%+,+)[images/meow.gif]]
{{tagClear{
}}}
<<<
!!!!!Revisions
<<<
2010.07.24 [1.2.2] moved tip/dragtip text to config.formatterHelpers.imageSize object to enable customization
2009.02.24 [1.2.1] cleanup width/height regexp, use '+' suffix for resizing
2009.02.22 [1.2.0] added stretchable images
2008.01.19 [1.1.0] added evaluated width/height values
2008.01.18 [1.0.1] regexp for "(width,height)" now passes all CSS values to browser for validation
2008.01.17 [1.0.0] initial release
<<<
!!!!!Code
***/
//{{{
version.extensions.ImageSizePlugin= {major: 1, minor: 2, revision: 2, date: new Date(2010,7,24)};
//}}}
//{{{
var f=config.formatters[config.formatters.findByField("name","image")];
f.match="\\[[<>]?[Ii][Mm][Gg](?:\\([^,]*,[^\\)]*\\))?\\[";
f.lookaheadRegExp=/\[([<]?)(>?)[Ii][Mm][Gg](?:\(([^,]*),([^\)]*)\))?\[(?:([^\|\]]+)\|)?([^\[\]\|]+)\](?:\[([^\]]*)\])?\]/mg;
f.handler=function(w) {
	this.lookaheadRegExp.lastIndex = w.matchStart;
	var lookaheadMatch = this.lookaheadRegExp.exec(w.source)
	if(lookaheadMatch && lookaheadMatch.index == w.matchStart) {
		var floatLeft=lookaheadMatch[1];
		var floatRight=lookaheadMatch[2];
		var width=lookaheadMatch[3];
		var height=lookaheadMatch[4];
		var tooltip=lookaheadMatch[5];
		var src=lookaheadMatch[6];
		var link=lookaheadMatch[7];

		// Simple bracketted link
		var e = w.output;
		if(link) { // LINKED IMAGE
			if (config.formatterHelpers.isExternalLink(link)) {
				if (config.macros.attach && config.macros.attach.isAttachment(link)) {
					// see [[AttachFilePluginFormatters]]
					e = createExternalLink(w.output,link);
					e.href=config.macros.attach.getAttachment(link);
					e.title = config.macros.attach.linkTooltip + link;
				} else
					e = createExternalLink(w.output,link);
			} else 
				e = createTiddlyLink(w.output,link,false,null,w.isStatic);
			addClass(e,"imageLink");
		}

		var img = createTiddlyElement(e,"img");
		if(floatLeft) img.align="left"; else if(floatRight) img.align="right";
		if(width||height) {
			var x=width.trim(); var y=height.trim();
			var stretchW=(x.substr(x.length-1,1)=='+'); if (stretchW) x=x.substr(0,x.length-1);
			var stretchH=(y.substr(y.length-1,1)=='+'); if (stretchH) y=y.substr(0,y.length-1);
			if (x.substr(0,2)=="{{")
				{ try{x=eval(x.substr(2,x.length-4))} catch(e){displayMessage(e.description||e.toString())} }
			if (y.substr(0,2)=="{{")
				{ try{y=eval(y.substr(2,y.length-4))} catch(e){displayMessage(e.description||e.toString())} }
			img.style.width=x.trim(); img.style.height=y.trim();
			config.formatterHelpers.addStretchHandlers(img,stretchW,stretchH);
		}
		if(tooltip) img.title = tooltip;

		// GET IMAGE SOURCE
		if (config.macros.attach && config.macros.attach.isAttachment(src))
			src=config.macros.attach.getAttachment(src); // see [[AttachFilePluginFormatters]]
		else if (config.formatterHelpers.resolvePath) { // see [[ImagePathPlugin]]
			if (config.browser.isIE || config.browser.isSafari) {
				img.onerror=(function(){
					this.src=config.formatterHelpers.resolvePath(this.src,false);
					return false;
				});
			} else
				src=config.formatterHelpers.resolvePath(src,true);
		}
		img.src=src;
		w.nextMatch = this.lookaheadRegExp.lastIndex;
	}
}

config.formatterHelpers.imageSize={
	tip: 'SHIFT-CLICK=show full size, CTRL-CLICK=restore initial size',
	dragtip: 'DRAG=stretch/shrink, '
}

config.formatterHelpers.addStretchHandlers=function(e,stretchW,stretchH) {
	e.title=((stretchW||stretchH)?this.imageSize.dragtip:'')+this.imageSize.tip;
	e.statusMsg='width=%0, height=%1';
	e.style.cursor='move';
	e.originalW=e.style.width;
	e.originalH=e.style.height;
	e.minW=Math.max(e.offsetWidth/20,10);
	e.minH=Math.max(e.offsetHeight/20,10);
	e.stretchW=stretchW;
	e.stretchH=stretchH;
	e.onmousedown=function(ev) { var ev=ev||window.event;
		this.sizing=true;
		this.startX=!config.browser.isIE?ev.pageX:(ev.clientX+findScrollX());
		this.startY=!config.browser.isIE?ev.pageY:(ev.clientY+findScrollY());
		this.startW=this.offsetWidth;
		this.startH=this.offsetHeight;
		return false;
	};
	e.onmousemove=function(ev) { var ev=ev||window.event;
		if (this.sizing) {
			var s=this.style;
			var currX=!config.browser.isIE?ev.pageX:(ev.clientX+findScrollX());
			var currY=!config.browser.isIE?ev.pageY:(ev.clientY+findScrollY());
			var newW=(currX-this.offsetLeft)/(this.startX-this.offsetLeft)*this.startW;
			var newH=(currY-this.offsetTop )/(this.startY-this.offsetTop )*this.startH;
			if (this.stretchW) s.width =Math.floor(Math.max(newW,this.minW))+'px';
			if (this.stretchH) s.height=Math.floor(Math.max(newH,this.minH))+'px';
			clearMessage(); displayMessage(this.statusMsg.format([s.width,s.height]));
		}
		return false;
	};
	e.onmouseup=function(ev) { var ev=ev||window.event;
		if (ev.shiftKey) { this.style.width=this.style.height=''; }
		if (ev.ctrlKey)  { this.style.width=this.originalW; this.style.height=this.originalH; }
		this.sizing=false;
		clearMessage();
		return false;
	};
	e.onmouseout=function(ev) { var ev=ev||window.event;
		this.sizing=false;
		clearMessage();
		return false;
	};
}
//}}}
/***
|Name|ImportTiddlersPlugin|
|Source|http://www.TiddlyTools.com/#ImportTiddlersPlugin|
|Documentation|http://www.TiddlyTools.com/#ImportTiddlersPluginInfo|
|Version|3.6.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.1|
|Type|plugin|
|Requires||
|Overrides|config.macros.importTiddlers.handler|
|Description|interactive controls for import/export with filtering.|
This plugin lets you selectively combine tiddlers from any two TiddlyWiki documents.  An interactive control panel lets you pick a document to import from, and then select which tiddlers to import, with prompting for skip, rename, merge or replace actions when importing tiddlers that match existing titles.  Automatically add tags to imported tiddlers so they are easy to find later on.  Generates a detailed report of import 'history' in ImportedTiddlers.
!!!!!Documentation
>see [[ImportTiddlersPluginInfo]]
!!!!!Configuration
<<<
__password-protected server settings //(optional, if needed)//:__

>username: <<option txtRemoteUsername>> password: <<option txtRemotePassword>>
>{{{usage: <<option txtRemoteUsername>> <<option txtRemotePassword>>}}}
>''note: these settings are also used by [[LoadTiddlersPlugin]] and [[ExternalTiddlersPlugin]]''
<<<
!!!!!Installation Notes
<<<
* As of 6/27/2007, "patch" functions that provide backward-compatibility with TW2.1.x and earlier have been split into a separate [[ImportTiddlersPluginPatch]] tiddler to reduce installation overhead for //this// plugin.  You only need to install the additional plugin tiddler when using ImportTiddlersPlugin in documents using TW2.1.x or earlier.
* As of 3/21/2007, the interactive {{{<<importTiddlers>>}}} and non-interactive {{{<<loadTiddlers>>}}} macro definitions and related code have been split into separate [[ImportTiddlersPlugin]] and [[LoadTiddlersPlugin]] to permit selective installation of either the interactive and/or non-interactive macro functions.
* Quick Installation Tip: If you are using an unmodified version of TiddlyWiki (core release version <<version>>), you can get a new, empty TiddlyWiki with the Import Tiddlers plugin pre-installed (''[[download from here|TW+ImportExport.html]]''), and then simply import all your content from your old document into this new, empty document.

<<<
!!!!!Revision History
<<<
''2008.01.03 [3.6.0]'' in loadRemoteFile(), use lower-level doHttp() instead of loadRemoteFile() in order to support username/password access to remote server
''2007.10.30 [3.5.6]'' update [[ImportTiddlers]] shadow tiddler definition to include "inline" link, so the plugin control panel is displayed instead of the standard core interface.
|please see [[ImportTiddlersPluginHistory]] for additional revision details|
''2005.07.20 [1.0.0]'' Initial Release
<<<
!!!!!Code
***/
// // ''MACRO DEFINITION''
//{{{
// Version
version.extensions.importTiddlers = {major: 3, minor: 6, revision: 0, date: new Date(2008,1,3)};

// IE needs explicit global scoping for functions/vars called from browser events
window.onClickImportButton=onClickImportButton;
window.refreshImportList=refreshImportList;

// default cookie/option values
if (!config.options.chkImportReport) config.options.chkImportReport=true;

// default shadow definition
config.shadowTiddlers.ImportTiddlers="<<importTiddlers inline>>";

merge(config.macros.importTiddlers,{
	label: "import tiddlers",
	prompt: "Copy tiddlers from another document",
	openMsg: "Opening %0",
	openErrMsg: "Could not open %0 - error=%1",
	readMsg: "Read %0 bytes from %1",
	foundMsg: "Found %0 tiddlers in %1",
	countMsg: "%0 tiddlers selected for import",
	importedMsg: "Imported %0 of %1 tiddlers from %2",
	loadText: "please load a document...",
	closeText: "close",	// text for close button when remote file is loaded
	doneText: "done",	// text for close button when remote file is not loaded
	src: "",		// path/filename or URL of document to import (retrieved from SiteUrl tiddler)
	proxy: "",		// URL for remote proxy script (retrieved from SiteProxy tiddler)
	useProxy: false,	// use specific proxy script in front of remote URL
	inbound: null,		// hash-indexed array of tiddlers from other document
	newTags: "",		// text of tags added to imported tiddlers
	addTags: true,		// add new tags to imported tiddlers
	listsize: 8,		// # of lines to show in imported tiddler list
	importTags: true,	// include tags from remote source document when importing a tiddler
	keepTags: true,		// retain existing tags when replacing a tiddler
	index: 0,		// current processing index in import list
	sort: ""		// sort order for imported tiddler listbox
});

if (config.macros.importTiddlers.coreHandler==undefined)
	config.macros.importTiddlers.coreHandler=config.macros.importTiddlers.handler; // save built-in handler

config.macros.importTiddlers.handler = function(place,macroName,params,wikifier,paramString,tiddler) {
	if (!params[0] || params[0].toLowerCase()=='core') { // default to built in
		if (config.macros.importTiddlers.coreHandler)
			config.macros.importTiddlers.coreHandler.apply(this,arguments);
		else 
			createTiddlyButton(place,this.label,this.prompt,onClickImportMenu);
	}
	else if (params[0]=='link') { // show link to floating panel
		var label=params[1]?params[1]:this.label;
		var prompt=params[2]?params[2]:this.prompt;
		createTiddlyButton(place,label,prompt,onClickImportMenu);
	}
	else if (params[0]=='inline') {// show panel as INLINE tiddler content
		createImportPanel(place);
		document.getElementById("importPanel").style.position="static";
		document.getElementById("importPanel").style.display="block";
	}
	else if (config.macros.loadTiddlers)
		config.macros.loadTiddlers.handler(place,macroName,params); // any other params: loadtiddlers
}
//}}}

// // ''INTERFACE DEFINITION''
// // Handle link click to create/show/hide control panel
//{{{
function onClickImportMenu(e)
{
	if (!e) var e = window.event;
	var parent=resolveTarget(e).parentNode;
	var panel = document.getElementById("importPanel");
	if (panel==undefined || panel.parentNode!=parent)
		panel=createImportPanel(parent);
	var isOpen = panel.style.display=="block";
	if(config.options.chkAnimate)
		anim.startAnimating(new Slider(panel,!isOpen,e.shiftKey || e.altKey,"none"));
	else
		panel.style.display = isOpen ? "none" : "block" ;
	e.cancelBubble = true;
	if (e.stopPropagation) e.stopPropagation();
	return(false);
}
//}}}

// // Create control panel: HTML, CSS
//{{{
function createImportPanel(place) {
	var panel=document.getElementById("importPanel");
	if (panel) { panel.parentNode.removeChild(panel); }
	setStylesheet(config.macros.importTiddlers.css,"importTiddlers");
	panel=createTiddlyElement(place,"span","importPanel",null,null)
	panel.innerHTML=config.macros.importTiddlers.html;
	refreshImportList();
	var siteURL=store.getTiddlerText("SiteUrl"); if (!siteURL) siteURL="";
	document.getElementById("importSourceURL").value=siteURL;
	config.macros.importTiddlers.src=siteURL;
	var siteProxy=store.getTiddlerText("SiteProxy"); if (!siteProxy) siteProxy="SiteProxy";
	document.getElementById("importSiteProxy").value=siteProxy;
	config.macros.importTiddlers.proxy=siteProxy;
	return panel;
}
//}}}

// // CSS
//{{{
config.macros.importTiddlers.css = '\
#importPanel {\
	display: none; position:absolute; z-index:11; width:35em; right:105%; top:3em;\
	background-color: #eee; color:#000; font-size: 8pt; line-height:110%;\
	border:1px solid black; border-bottom-width: 3px; border-right-width: 3px;\
	padding: 0.5em; margin:0em; -moz-border-radius:1em;\
}\
#importPanel a, #importPanel td a { color:#009; display:inline; margin:0px; padding:1px; }\
#importPanel table { width:100%; border:0px; padding:0px; margin:0px; font-size:8pt; line-height:110%; background:transparent; }\
#importPanel tr { border:0px;padding:0px;margin:0px; background:transparent; }\
#importPanel td { color:#000; border:0px;padding:0px;margin:0px; background:transparent; }\
#importPanel select { width:98%;margin:0px;font-size:8pt;line-height:110%;}\
#importPanel input  { width:98%;padding:0px;margin:0px;font-size:8pt;line-height:110%}\
#importPanel .box { border:1px solid black; padding:3px; margin-bottom:5px; background:#f8f8f8; -moz-border-radius:5px;}\
#importPanel .topline { border-top:2px solid black; padding-top:3px; margin-bottom:5px; }\
#importPanel .rad { width:auto; }\
#importPanel .chk { width:auto; margin:1px;border:0; }\
#importPanel .btn { width:auto; }\
#importPanel .btn1 { width:98%; }\
#importPanel .btn2 { width:48%; }\
#importPanel .btn3 { width:32%; }\
#importPanel .btn4 { width:24%; }\
#importPanel .btn5 { width:19%; }\
#importPanel .importButton { padding: 0em; margin: 0px; font-size:8pt; }\
#importPanel .importListButton { padding:0em 0.25em 0em 0.25em; color: #000000; display:inline }\
#importCollisionPanel { display:none; margin:0.5em 0em 0em 0em; }\
';
//}}}

// // HTML 
//{{{
config.macros.importTiddlers.html = '\

<!-- source and report -->\
<table><tr><td align=left>\
	import from\
	<input type="radio" class="rad" name="importFrom" id="importFromFile" value="file" CHECKED\
		onClick="document.getElementById(\'importLocalPanel\').style.display=this.checked?\'block\':\'none\';\
			document.getElementById(\'importHTTPPanel\').style.display=!this.checked?\'block\':\'none\'"> local file\
	<input type="radio" class="rad" name="importFrom" id="importFromWeb"  value="http"\
		onClick="document.getElementById(\'importLocalPanel\').style.display=!this.checked?\'block\':\'none\';\
			document.getElementById(\'importHTTPPanel\').style.display=this.checked?\'block\':\'none\'"> web server\

</td><td align=right>\
	<input type=checkbox class="chk" id="chkImportReport" checked\
		onClick="config.options[\'chkImportReport\']=this.checked;"> create a report\
</td></tr></table>\

<!-- import from local file  -->\
<div id="importLocalPanel" style="display:block;margin-bottom:5px;margin-top:5px;padding-top:3px;border-top:1px solid #999">\
local document path/filename:<br>\
<input type="file" id="fileImportSource" size=57 style="width:100%"\
	onKeyUp="config.macros.importTiddlers.src=this.value"\
	onChange="config.macros.importTiddlers.src=this.value;">\

</div><!--panel-->\
\
<!-- import from http server -->\
<div id="importHTTPPanel" style="display:none;margin-bottom:5px;margin-top:5px;padding-top:3px;border-top:1px solid #999">\
<table><tr><td align=left>\
	remote document URL:<br>\

</td><td align=right>\
	<input type="checkbox" class="chk" id="importUseProxy"\
		onClick="config.macros.importTiddlers.useProxy=this.checked;\
			document.getElementById(\'importSiteProxy\').style.display=this.checked?\'block\':\'none\'"> use a proxy script\
</td></tr></table>\

<input type="text" id="importSiteProxy" style="display:none;margin-bottom:1px" onfocus="this.select()" value="SiteProxy"\
	onKeyUp="config.macros.importTiddlers.proxy=this.value"\
	onChange="config.macros.importTiddlers.proxy=this.value;">\

<input type="text" id="importSourceURL" onfocus="this.select()" value="SiteUrl"\
	onKeyUp="config.macros.importTiddlers.src=this.value"\
	onChange="config.macros.importTiddlers.src=this.value;">\
</div><!--panel-->\
\

<table><tr><td align=left>\
	select:\
	<a href="JavaScript:;" id="importSelectAll"\
		onclick="onClickImportButton(this)" title="select all tiddlers">\
		&nbsp;all&nbsp;</a>\
	<a href="JavaScript:;" id="importSelectNew"\
		onclick="onClickImportButton(this)" title="select tiddlers not already in destination document">\
		&nbsp;added&nbsp;</a> \
	<a href="JavaScript:;" id="importSelectChanges"\
		onclick="onClickImportButton(this)" title="select tiddlers that have been updated in source document">\
		&nbsp;changes&nbsp;</a> \
	<a href="JavaScript:;" id="importSelectDifferences"\
		onclick="onClickImportButton(this)" title="select tiddlers that have been added or are different from existing tiddlers">\
		&nbsp;differences&nbsp;</a> \
	<a href="JavaScript:;" id="importToggleFilter"\
		onclick="onClickImportButton(this)" title="show/hide selection filter">\
		&nbsp;filter&nbsp;</a> \

</td><td align=right>\
	<a href="JavaScript:;" id="importListSmaller"\
		onclick="onClickImportButton(this)" title="reduce list size">\
		&nbsp;&#150;&nbsp;</a>\
	<a href="JavaScript:;" id="importListLarger"\
		onclick="onClickImportButton(this)" title="increase list size">\
		&nbsp;+&nbsp;</a>\
	<a href="JavaScript:;" id="importListMaximize"\
		onclick="onClickImportButton(this)" title="maximize/restore list size">\
		&nbsp;=&nbsp;</a>\

</td></tr></table>\
<select id="importList" size=8 multiple\
	onchange="setTimeout(\'refreshImportList(\'+this.selectedIndex+\')\',1)">\
	<!-- NOTE: delay refresh so list is updated AFTER onchange event is handled -->\
</select>\
<input type=checkbox class="chk" id="chkAddTags" checked\
	onClick="config.macros.importTiddlers.addTags=this.checked;">add new tags &nbsp;\

<input type=checkbox class="chk" id="chkImportTags" checked\
	onClick="config.macros.importTiddlers.importTags=this.checked;">import source tags &nbsp;\
<input type=checkbox class="chk" id="chkKeepTags" checked\
	onClick="config.macros.importTiddlers.keepTags=this.checked;">keep existing tags<br>\

<input type=text id="txtNewTags" size=15 onKeyUp="config.macros.importTiddlers.newTags=this.value" autocomplete=off>\
<div align=center>\
	<input type=button id="importLoad" class="importButton" style="width:32%" value="load"\
		title="load listbox with tiddlers from source document"\
		onclick="onClickImportButton(this)">\
	<input type=button id="importStart"	 class="importButton" style="width:32%" value="import"\
		title="add selected source tiddlers to the current document"\
		onclick="onClickImportButton(this)">\
	<input type=button id="importClose"	 class="importButton" style="width:32%" value="close"\
		title="clear listbox or hide control panel"\
		onclick="onClickImportButton(this)">\

</div>\
<div id="importCollisionPanel">\
	tiddler already exists:\
	<input type=text id="importNewTitle" size=15 autocomplete=off">\
	<div align=center>\
	<input type=button id="importSkip"	class="importButton" style="width:23%" value="skip"\
		title="do not import this tiddler"\
		onclick="onClickImportButton(this)">\
	<input type=button id="importRename"  class="importButton" style="width:23%" value="rename"\
		title="rename the incoming tiddler"\
		onclick="onClickImportButton(this)">\
	<input type=button id="importMerge"   class="importButton" style="width:23%" value="merge"\
		title="append the incoming tiddler to the existing tiddler"\
		onclick="onClickImportButton(this)">\
	<input type=button id="importReplace" class="importButton" style="width:23%" value="replace"\
		title="discard the existing tiddler"\
		onclick="onClickImportButton(this)">\
	</div>\

</div>\
';
//}}}

// // Control interactions
//{{{
function onClickImportButton(which)
{
	// DEBUG alert(which.id);
	var theList		  = document.getElementById('importList');
	if (!theList) return;
	var thePanel	= document.getElementById('importPanel');
	var theCollisionPanel   = document.getElementById('importCollisionPanel');
	var theNewTitle   = document.getElementById('importNewTitle');
	var count=0;
	switch (which.id)
		{
		case 'fileImportSource':
		case 'importLoad':		// load import source into hidden frame
			importReport();		// if an import was in progress, generate a report
			config.macros.importTiddlers.inbound=null;	// clear the imported tiddler buffer
			refreshImportList();	// reset/resize the listbox
			if (config.macros.importTiddlers.src=="") break;
			// Load document, read it's DOM and fill the list
			config.macros.importTiddlers.loadRemoteFile(config.macros.importTiddlers.src,
				function(success,params,txt,src,xhr) {
					var src=src.replace(/%20/g," ");
					if (!success) { displayMessage(config.macros.importTiddlers.openErrMsg.format([src,xhr.status])); return; }
					var tiddlers = config.macros.importTiddlers.readTiddlersFromHTML(txt);
					var count=tiddlers?tiddlers.length:0;
					var querypos=src.lastIndexOf("?"); if (querypos!=-1) src=src.substr(0,querypos);
					displayMessage(config.macros.importTiddlers.foundMsg.format([count,src]));
					config.macros.importTiddlers.inbound=tiddlers;
					window.refreshImportList(0);
				});
			break;
		case 'importSelectAll':		// select all tiddler list items (i.e., not headings)
			importReport();		// if an import was in progress, generate a report
			for (var t=0,count=0; t < theList.options.length; t++) {
				if (theList.options[t].value=="") continue;
				theList.options[t].selected=true;
				count++;
			}
			clearMessage(); displayMessage(config.macros.importTiddlers.countMsg.format([count]));
			break;
		case 'importSelectNew':		// select tiddlers not in current document
			importReport();		// if an import was in progress, generate a report
			for (var t=0,count=0; t < theList.options.length; t++) {
				theList.options[t].selected=false;
				if (theList.options[t].value=="") continue;
				theList.options[t].selected=!store.tiddlerExists(theList.options[t].value);
				count+=theList.options[t].selected?1:0;
			}
			clearMessage(); displayMessage(config.macros.importTiddlers.countMsg.format([count]));
			break;
		case 'importSelectChanges':		// select tiddlers that are updated from existing tiddlers
			importReport();		// if an import was in progress, generate a report
			for (var t=0,count=0; t < theList.options.length; t++) {
				theList.options[t].selected=false;
				if (theList.options[t].value==""||!store.tiddlerExists(theList.options[t].value)) continue;
				for (var i=0; i<config.macros.importTiddlers.inbound.length; i++) // find matching inbound tiddler
					{ var inbound=config.macros.importTiddlers.inbound[i]; if (inbound.title==theList.options[t].value) break; }
				theList.options[t].selected=(inbound.modified-store.getTiddler(theList.options[t].value).modified>0); // updated tiddler
				count+=theList.options[t].selected?1:0;
			}
			clearMessage(); displayMessage(config.macros.importTiddlers.countMsg.format([count]));
			break;
		case 'importSelectDifferences':		// select tiddlers that are new or different from existing tiddlers
			importReport();		// if an import was in progress, generate a report
			for (var t=0,count=0; t < theList.options.length; t++) {
				theList.options[t].selected=false;
				if (theList.options[t].value=="") continue;
				if (!store.tiddlerExists(theList.options[t].value)) { theList.options[t].selected=true; count++; continue; }
				for (var i=0; i<config.macros.importTiddlers.inbound.length; i++) // find matching inbound tiddler
					{ var inbound=config.macros.importTiddlers.inbound[i]; if (inbound.title==theList.options[t].value) break; }
				theList.options[t].selected=(inbound.modified-store.getTiddler(theList.options[t].value).modified!=0); // changed tiddler
				count+=theList.options[t].selected?1:0;
			}
			clearMessage(); displayMessage(config.macros.importTiddlers.countMsg.format([count]));
			break;
		case 'importToggleFilter': // show/hide filter
		case 'importFilter': // apply filter
			alert("coming soon!");
			break;
		case 'importStart':		// initiate the import processing
			importReport();		// if an import was in progress, generate a report
			config.macros.importTiddlers.index=0;
			config.macros.importTiddlers.index=importTiddlers(0);
			importStopped();
			break;
		case 'importClose':		// unload imported tiddlers or hide the import control panel
			// if imported tiddlers not loaded, close the import control panel
			if (!config.macros.importTiddlers.inbound) { thePanel.style.display='none'; break; }
			importReport();		// if an import was in progress, generate a report
			config.macros.importTiddlers.inbound=null;	// clear the imported tiddler buffer
			refreshImportList();	// reset/resize the listbox
			break;
		case 'importSkip':	// don't import the tiddler
			var theItem	= theList.options[config.macros.importTiddlers.index];
			for (var j=0;j<config.macros.importTiddlers.inbound.length;j++)
			if (config.macros.importTiddlers.inbound[j].title==theItem.value) break;
			var theImported = config.macros.importTiddlers.inbound[j];
			theImported.status='skipped after asking';			// mark item as skipped
			theCollisionPanel.style.display='none';
			config.macros.importTiddlers.index=importTiddlers(config.macros.importTiddlers.index+1);	// resume with NEXT item
			importStopped();
			break;
		case 'importRename':		// change name of imported tiddler
			var theItem		= theList.options[config.macros.importTiddlers.index];
			for (var j=0;j<config.macros.importTiddlers.inbound.length;j++)
			if (config.macros.importTiddlers.inbound[j].title==theItem.value) break;
			var theImported		= config.macros.importTiddlers.inbound[j];
			theImported.status	= 'renamed from '+theImported.title;	// mark item as renamed
			theImported.set(theNewTitle.value,null,null,null,null);		// change the tiddler title
			theItem.value		= theNewTitle.value;			// change the listbox item text
			theItem.text		= theNewTitle.value;			// change the listbox item text
			theCollisionPanel.style.display='none';
			config.macros.importTiddlers.index=importTiddlers(config.macros.importTiddlers.index);	// resume with THIS item
			importStopped();
			break;
		case 'importMerge':	// join existing and imported tiddler content
			var theItem	= theList.options[config.macros.importTiddlers.index];
			for (var j=0;j<config.macros.importTiddlers.inbound.length;j++)
			if (config.macros.importTiddlers.inbound[j].title==theItem.value) break;
			var theImported	= config.macros.importTiddlers.inbound[j];
			var theExisting	= store.getTiddler(theItem.value);
			var theText	= theExisting.text+'\n----\n^^merged from: ';
			theText		+='[['+config.macros.importTiddlers.src+'#'+theItem.value+'|'+config.macros.importTiddlers.src+'#'+theItem.value+']]^^\n';
			theText		+='^^'+theImported.modified.toLocaleString()+' by '+theImported.modifier+'^^\n'+theImported.text;
			var theDate	= new Date();
			var theTags	= theExisting.getTags()+' '+theImported.getTags();
			theImported.set(null,theText,null,theDate,theTags);
			theImported.status   = 'merged with '+theExisting.title;	// mark item as merged
			theImported.status  += ' - '+theExisting.modified.formatString("MM/DD/YYYY 0hh:0mm:0ss");
			theImported.status  += ' by '+theExisting.modifier;
			theCollisionPanel.style.display='none';
			config.macros.importTiddlers.index=importTiddlers(config.macros.importTiddlers.index);	// resume with this item
			importStopped();
			break;
		case 'importReplace':		// substitute imported tiddler for existing tiddler
			var theItem		  = theList.options[config.macros.importTiddlers.index];
			for (var j=0;j<config.macros.importTiddlers.inbound.length;j++)
			if (config.macros.importTiddlers.inbound[j].title==theItem.value) break;
			var theImported     = config.macros.importTiddlers.inbound[j];
			var theExisting	  = store.getTiddler(theItem.value);
			theImported.status  = 'replaces '+theExisting.title;		// mark item for replace
			theImported.status += ' - '+theExisting.modified.formatString("MM/DD/YYYY 0hh:0mm:0ss");
			theImported.status += ' by '+theExisting.modifier;
			theCollisionPanel.style.display='none';
			config.macros.importTiddlers.index=importTiddlers(config.macros.importTiddlers.index);	// resume with THIS item
			importStopped();
			break;
		case 'importListSmaller':		// decrease current listbox size, minimum=5
			if (theList.options.length==1) break;
			theList.size-=(theList.size>5)?1:0;
			config.macros.importTiddlers.listsize=theList.size;
			break;
		case 'importListLarger':		// increase current listbox size, maximum=number of items in list
			if (theList.options.length==1) break;
			theList.size+=(theList.size<theList.options.length)?1:0;
			config.macros.importTiddlers.listsize=theList.size;
			break;
		case 'importListMaximize':	// toggle listbox size between current and maximum
			if (theList.options.length==1) break;
			theList.size=(theList.size==theList.options.length)?config.macros.importTiddlers.listsize:theList.options.length;
			break;
		}
}
//}}}

// // refresh listbox
//{{{
function refreshImportList(selectedIndex)
{
	var theList  = document.getElementById("importList");
	if (!theList) return;
	// if nothing to show, reset list content and size
	if (!config.macros.importTiddlers.inbound) 
	{
		while (theList.length > 0) { theList.options[0] = null; }
		theList.options[0]=new Option(config.macros.importTiddlers.loadText,"",false,false);
		theList.size=config.macros.importTiddlers.listsize;
		document.getElementById('importLoad').disabled=false;
		document.getElementById('fileImportSource').disabled=false;
		document.getElementById('importFromFile').disabled=false;
		document.getElementById('importFromWeb').disabled=false;
		document.getElementById('importClose').value=config.macros.importTiddlers.closeText;
		return;
	}

	// get the sort order
	if (!selectedIndex)   selectedIndex=0;
	if (selectedIndex==0) config.macros.importTiddlers.sort='title';		// heading
	if (selectedIndex==1) config.macros.importTiddlers.sort='title';
	if (selectedIndex==2) config.macros.importTiddlers.sort='modified';
	if (selectedIndex==3) config.macros.importTiddlers.sort='tags';
	if (selectedIndex>3) {
		// display selected tiddler count
		for (var t=0,count=0; t < theList.options.length; t++) {
			if (!theList.options[t].selected) continue;
			if (theList.options[t].value!="")
				count+=1;
			else { // if heading is selected, deselect it, and then select and count all in section
				theList.options[t].selected=false;
				for ( t++; t<theList.options.length && theList.options[t].value!=""; t++) {
					theList.options[t].selected=true;
					count++;
				}
			}
		}
		clearMessage(); displayMessage(config.macros.importTiddlers.countMsg.format([count]));
		return; // no refresh needed
	}

	// there are inbound tiddlers loaded... disable inapplicable controls...
	document.getElementById('importLoad').disabled=true;
	document.getElementById('fileImportSource').disabled=true;
	document.getElementById('importFromFile').disabled=true;
	document.getElementById('importFromWeb').disabled=true;
	document.getElementById('importClose').value=config.macros.importTiddlers.doneText;

	// get the alphasorted list of tiddlers (optionally, filter out unchanged tiddlers)
	var tiddlers=config.macros.importTiddlers.inbound;
	tiddlers.sort(function (a,b) {if(a['title'] == b['title']) return(0); else return (a['title'] < b['title']) ? -1 : +1; });
	// clear current list contents
	while (theList.length > 0) { theList.options[0] = null; }
	// add heading and control items to list
	var i=0;
	var indent=String.fromCharCode(160)+String.fromCharCode(160);
	theList.options[i++]=new Option(tiddlers.length+' tiddler'+((tiddlers.length!=1)?'s are':' is')+' in the document',"",false,false);
	theList.options[i++]=new Option(((config.macros.importTiddlers.sort=="title"   )?">":indent)+' [by title]',"",false,false);
	theList.options[i++]=new Option(((config.macros.importTiddlers.sort=="modified")?">":indent)+' [by date]',"",false,false);
	theList.options[i++]=new Option(((config.macros.importTiddlers.sort=="tags")?">":indent)+' [by tags]',"",false,false);
	// output the tiddler list
	switch(config.macros.importTiddlers.sort)
		{
		case "title":
			for(var t = 0; t < tiddlers.length; t++)
				theList.options[i++] = new Option(tiddlers[t].title,tiddlers[t].title,false,false);
			break;
		case "modified":
			// sort descending for newest date first
			tiddlers.sort(function (a,b) {if(a['modified'] == b['modified']) return(0); else return (a['modified'] > b['modified']) ? -1 : +1; });
			var lastSection = "";
			for(var t = 0; t < tiddlers.length; t++) {
				var tiddler = tiddlers[t];
				var theSection = tiddler.modified.toLocaleDateString();
				if (theSection != lastSection) {
					theList.options[i++] = new Option(theSection,"",false,false);
					lastSection = theSection;
				}
				theList.options[i++] = new Option(indent+indent+tiddler.title,tiddler.title,false,false);
			}
			break;
		case "tags":
			var theTitles = {}; // all tiddler titles, hash indexed by tag value
			var theTags = new Array();
			for(var t=0; t<tiddlers.length; t++) {
				var title=tiddlers[t].title;
				var tags=tiddlers[t].tags;
				if (!tags || !tags.length) {
					if (theTitles["untagged"]==undefined) { theTags.push("untagged"); theTitles["untagged"]=new Array(); }
					theTitles["untagged"].push(title);
				}
				else for(var s=0; s<tags.length; s++) {
					if (theTitles[tags[s]]==undefined) { theTags.push(tags[s]); theTitles[tags[s]]=new Array(); }
					theTitles[tags[s]].push(title);
				}
			}
			theTags.sort();
			for(var tagindex=0; tagindex<theTags.length; tagindex++) {
				var theTag=theTags[tagindex];
				theList.options[i++]=new Option(theTag,"",false,false);
				for(var t=0; t<theTitles[theTag].length; t++)
					theList.options[i++]=new Option(indent+indent+theTitles[theTag][t],theTitles[theTag][t],false,false);
			}
			break;
		}
	theList.selectedIndex=selectedIndex;		  // select current control item
	if (theList.size<config.macros.importTiddlers.listsize) theList.size=config.macros.importTiddlers.listsize;
	if (theList.size>theList.options.length) theList.size=theList.options.length;
}
//}}}

// // re-entrant processing for handling import with interactive collision prompting
//{{{
function importTiddlers(startIndex)
{
	if (!config.macros.importTiddlers.inbound) return -1;

	var theList = document.getElementById('importList');
	if (!theList) return;
	var t;
	// if starting new import, reset import status flags
	if (startIndex==0)
		for (var t=0;t<config.macros.importTiddlers.inbound.length;t++)
			config.macros.importTiddlers.inbound[t].status="";
	for (var i=startIndex; i<theList.options.length; i++)
		{
		// if list item is not selected or is a heading (i.e., has no value), skip it
		if ((!theList.options[i].selected) || ((t=theList.options[i].value)==""))
			continue;
		for (var j=0;j<config.macros.importTiddlers.inbound.length;j++)
			if (config.macros.importTiddlers.inbound[j].title==t) break;
		var inbound = config.macros.importTiddlers.inbound[j];
		var theExisting = store.getTiddler(inbound.title);
		// avoid redundant import for tiddlers that are listed multiple times (when 'by tags')
		if (inbound.status=="added")
			continue;
		// don't import the "ImportedTiddlers" history from the other document...
		if (inbound.title=='ImportedTiddlers')
			continue;
		// if tiddler exists and import not marked for replace or merge, stop importing
		if (theExisting && (inbound.status.substr(0,7)!="replace") && (inbound.status.substr(0,5)!="merge"))
			return i;
		// assemble tags (remote + existing + added)
		var newTags = "";
		if (config.macros.importTiddlers.importTags)
			newTags+=inbound.getTags()	// import remote tags
		if (config.macros.importTiddlers.keepTags && theExisting)
			newTags+=" "+theExisting.getTags(); // keep existing tags
		if (config.macros.importTiddlers.addTags && config.macros.importTiddlers.newTags.trim().length)
			newTags+=" "+config.macros.importTiddlers.newTags; // add new tags
		inbound.set(null,null,null,null,newTags.trim());
		// set the status to 'added' (if not already set by the 'ask the user' UI)
		inbound.status=(inbound.status=="")?'added':inbound.status;
		// do the import!
		store.suspendNotifications();
		store.saveTiddler(inbound.title, inbound.title, inbound.text, inbound.modifier, inbound.modified, inbound.tags, inbound.fields, true, inbound.created);
                store.fetchTiddler(inbound.title).created = inbound.created; // force creation date to imported value (needed for TW2.1.x and earlier)
		store.resumeNotifications();
		}
	return(-1);	// signals that we really finished the entire list
}
//}}}

//{{{
function importStopped()
{
	var theList     = document.getElementById('importList');
	var theNewTitle = document.getElementById('importNewTitle');
	if (!theList) return;
	if (config.macros.importTiddlers.index==-1)
		importReport();		// import finished... generate the report
	else
		{
		// import collision... show the collision panel and set the title edit field
		document.getElementById('importCollisionPanel').style.display='block';
		theNewTitle.value=theList.options[config.macros.importTiddlers.index].value;
		}
}
//}}}

// // ''REPORT GENERATOR''
//{{{
function importReport(quiet)
{
	if (!config.macros.importTiddlers.inbound) return;
	// DEBUG alert('importReport: start');

	// if import was not completed, the collision panel will still be open... close it now.
	var panel=document.getElementById('importCollisionPanel'); if (panel) panel.style.display='none';

	// get the alphasorted list of tiddlers
	var tiddlers = config.macros.importTiddlers.inbound;
	// gather the statistics
	var count=0;
	for (var t=0; t<tiddlers.length; t++)
		if (tiddlers[t].status && tiddlers[t].status.trim().length && tiddlers[t].status.substr(0,7)!="skipped") count++;

	// generate a report
	if (count && config.options.chkImportReport) {
		// get/create the report tiddler
		var theReport = store.getTiddler('ImportedTiddlers');
		if (!theReport) { theReport= new Tiddler(); theReport.title = 'ImportedTiddlers'; theReport.text  = ""; }
		// format the report content
		var now = new Date();
		var newText = "On "+now.toLocaleString()+", "+config.options.txtUserName
		newText +=" imported "+count+" tiddler"+(count==1?"":"s")+" from\n[["+config.macros.importTiddlers.src+"|"+config.macros.importTiddlers.src+"]]:\n";
		if (config.macros.importTiddlers.addTags && config.macros.importTiddlers.newTags.trim().length)
			newText += "imported tiddlers were tagged with: \""+config.macros.importTiddlers.newTags+"\"\n";
		newText += "<<<\n";
		for (var t=0; t<tiddlers.length; t++) if (tiddlers[t].status) newText += "#[["+tiddlers[t].title+"]] - "+tiddlers[t].status+"\n";
		newText += "<<<\n";
		// update the ImportedTiddlers content and show the tiddler
		theReport.text	 = newText+((theReport.text!="")?'\n----\n':"")+theReport.text;
		theReport.modifier = config.options.txtUserName;
		theReport.modified = new Date();
                store.saveTiddler(theReport.title, theReport.title, theReport.text, theReport.modifier, theReport.modified, theReport.tags, theReport.fields);
		if (!quiet) { story.displayTiddler(null,theReport.title,1,null,null,false); story.refreshTiddler(theReport.title,1,true); }
	}

	// reset status flags
	for (var t=0; t<config.macros.importTiddlers.inbound.length; t++) config.macros.importTiddlers.inbound[t].status="";

	// mark document as dirty and let display update as needed
	if (count) { store.setDirty(true); store.notifyAll(); }

	// always show final message when tiddlers were actually loaded
	if (count) displayMessage(config.macros.importTiddlers.importedMsg.format([count,tiddlers.length,config.macros.importTiddlers.src.replace(/%20/g," ")]));
}
//}}}

// // File and XMLHttpRequest I/O
//{{{
config.macros.importTiddlers.fileExists=function(theFile) {
	var found=false;
	// DEBUG: alert('testing fileExists('+theFile+')...');
	if(window.Components) {
		try { netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); }
		catch(e) { return false; } // security access denied
		var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
		try { file.initWithPath(theFile); }
		catch(e) { return false; } // invalid directory
		found = file.exists();
	}
	else { // use ActiveX FSO object for MSIE 
		var fso = new ActiveXObject("Scripting.FileSystemObject");
		found = fso.FileExists(theFile)
	}
	// DEBUG: alert(theFile+" "+(found?"exists":"not found"));
	return found;
}

config.macros.importTiddlers.loadRemoteFile = function(src,callback,quiet) {
	if (src==undefined || !src.length) return null; // filename is required
	if (!quiet) clearMessage();
	if (!quiet) displayMessage(this.openMsg.format([src.replace(/%20/g," ")]));
	if (src.substr(0,5)!="http:" && src.substr(0,5)!="file:") { // if src is relative (i.e., not a URL)
		if (!this.fileExists(src)) { // if file cannot be found, might be relative path.. try fixup
			var pathPrefix=document.location.href;  // get current document path and trim off filename
			var slashpos=pathPrefix.lastIndexOf("/"); if (slashpos==-1) slashpos=pathPrefix.lastIndexOf("\\"); 
			if (slashpos!=-1 && slashpos!=pathPrefix.length-1) pathPrefix=pathPrefix.substr(0,slashpos+1);
			src=pathPrefix+src;
			if (pathPrefix.substr(0,5)!="http:") src=getLocalPath(src);
		}
	}
	if (src.substr(0,5)!="http:" && src.substr(0,5)!="file:") { // if not a URL, read from local filesystem
		var txt=loadFile(src);
		if ((txt==null)||(txt==false)) // file didn't load
			{ if (!quiet) displayMessage(config.macros.importTiddlers.openErrMsg.format([src.replace(/%20/g," "),"(filesystem error)"])); }
		else {
			if (!quiet) displayMessage(config.macros.importTiddlers.readMsg.format([txt.length,src.replace(/%20/g," ")]));
			if (callback) callback(true,quiet,convertUTF8ToUnicode(txt),src,null);
		}
	}
	else {
		var name=config.options.txtRemoteUsername; var pass=config.options.txtRemotePassword;
		var xhr=doHttp("GET",src,null,null,name,pass,callback,quiet,null)
		if (!quiet && !xhr) displayMessage(config.macros.importTiddlers.openErrMsg.format([src,"(XMLHTTPRequest error)"]));
	}
}

config.macros.importTiddlers.readTiddlersFromHTML=function(html)
{
	var remoteStore=new TiddlyWiki();
	remoteStore.importTiddlyWiki(html);
	return remoteStore.getTiddlers("title");	
}
//}}}
/***
|Name|ImportTiddlersPluginInfo|
|Source|http://www.TiddlyTools.com/#ImportTiddlersPlugin|
|Documentation|http://www.TiddlyTools.com/#ImportTiddlersPluginInfo|
|Version|3.6.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.1|
|Type|documentation|
|Requires||
|Overrides||
|Description|documentation for ImportTiddlersPlugin|
This plugin lets you selectively combine tiddlers from any two TiddlyWiki documents.  An interactive control panel lets you pick a document to import from, and then select which tiddlers to import, with prompting for skip, rename, merge or replace actions when importing tiddlers that match existing titles.  Automatically add tags to imported tiddlers so they are easy to find later on.  Generates a detailed report of import 'history' in ImportedTiddlers.
!!!!!Usage
<<<
{{{<<importTiddlers>>}}} or {{{<<importTiddlers core>>}}}
invokes the built-in importTiddlers macro (TW2.1.x+).  If installed in documents using TW2.0.x or earlier, fallback is to use 'link' display (see below)

{{{<<importTiddlers link label tooltip>>}}}
The ''link'' keyword creates an "import tiddlers" link that when clicked to show/hide import control panel.  ''label'' and ''tooltip'' are optional text parameters (enclosed in quotes or {{{[[...]]}}}, and allow you to override the default display text for the link and the mouseover help text, respectively.

{{{<<importTiddlers inline>>}}}
creates import control panel directly in tiddler content


<<importTiddlers inline>>

Press ''[browse]'' to select a TiddlyWiki document file to import, and then press ''[open]''.  Alternatively, you can type in the path/filename or a remote document URL (starting with http://).  When you have entered the desired source location, press ''[load]'' to retrieve the tiddlers from the remote source.  //Note: There may be some delay to permit the browser time to access and load the document before updating the listbox with the titles of all tiddlers that are available to be imported.//

Select one or more titles from the listbox (hold CTRL or SHIFT while clicking to add/remove the highlight from individual list items).  You can press ''[select all]'' to quickly highlight all tiddler titles in the list.  Use the ''[-]'', ''[+]'', or ''[=]'' links to adjust the listbox size so you can view more (or less) tiddler titles at one time.  When you have chosen the tiddlers you want to import and entered any extra tags, press ''[import]'' to begin copying them to the current TiddlyWiki document.

''select: all, new, changes, or differences''

You can click on ''all'', ''new'', ''changes'', or ''differences'' to automatically select a subset of tiddlers from the list. This makes it very quick and easy to find and import just the updated tiddlers you are interested in:
>''"all"'' selects ALL tiddlers from the import source document, even if they have not been changed.
>''"new"'' selects only tiddlers that are found in the import source document, but do not yet exist in the destination document
>''"changes"'' selects only tiddlers that exist in both documents but that are newer in the source document
>''"differences"'' selects all new and existing tiddlers that are different from the destination document (even if destination tiddler is newer)

''Import Tagging:''

Tiddlers that have been imported can be automatically tagged, so they will be easier to find later on, after they have been added to your document.  New tags are entered into the "add tags" input field, and then //added// to the existing tags for each tiddler as it is imported.

''Skip, Rename, Merge, or Replace:''

When importing a tiddler whose title is identical to one that already exists, the import process pauses and the tiddler title is displayed in an input field, along with four push buttons: ''[skip]'', ''[rename]'', ''[merge]'' and ''[replace]''.

To bypass importing this tiddler, press ''[skip]''.  To import the tiddler with a different name (so that both the tiddlers will exist when the import is done), enter a new title in the input field and then press ''[rename]''.   Press ''[merge]'' to combine the content from both tiddlers into a single tiddler.  Press ''[replace]'' to overwrite the existing tiddler with the imported one, discarding the previous tiddler content.

//Note: if both the title ''and'' modification date/////time match, the imported tiddler is assumed to be identical to the existing one, and will be automatically skipped (i.e., not imported) without asking.//

''Import Report History''

When tiddlers are imported, a report is generated into ImportedTiddlers, indicating when the latest import was performed, the number of tiddlers successfully imported, from what location, and by whom. It also includes a list with the title, date and author of each tiddler that was imported.

When the import process is completed, the ImportedTiddlers report is automatically displayed for your review.  If more tiddlers are subsequently imported, a new report is //added// to ImportedTiddlers, above the previous report (i.e., at the top of the tiddler), so that a reverse-chronological history of imports is maintained.

If a cumulative record is not desired, the ImportedTiddlers report may be deleted at any time. A new ImportedTiddlers report will be created the next time tiddlers are imported.

Note: You can prevent the ImportedTiddlers report from being generated for any given import activity by clearing the "create a report" checkbox before beginning the import processing.

<<<
On Sunday, January 20, 2008 11:59:43 AM, Dave imported 15 tiddlers from
[[C:\Users\Owner\Documents\AllTheBestPlugins2Import.html|C:\Users\Owner\Documents\AllTheBestPlugins2Import.html]]:
<<<
#[[InlineJavascriptPlugin]] - added
#[[QuickEditPlugin]] - added
#[[QuickEditToolbar]] - added
#[[QuickEditToolbarCommand]] - added
#[[QuickEdit_align]] - added
#[[QuickEdit_color]] - added
#[[QuickEdit_file]] - added
#[[QuickEdit_format]] - added
#[[QuickEdit_image]] - added
#[[QuickEdit_link]] - added
#[[QuickEdit_macro]] - added
#[[QuickEdit_replace]] - added
#[[QuickEdit_sort]] - added
#[[QuickEdit_tiddler]] - added
#[[StickyPopupPlugin]] - added
<<<
What does this actually mean?

<<tiddler [[Joh 16:22-27]]>>

Well, I don't know for sure, but what I think it means is that ''if you ask for anything that the spirit of God would ask for in your place (which is actually what's happening when one is being led by the Spirit) that God will hear that and act upon it, but under his Sovereign will (i.e. we don't aways get what we want, (which is sometimes a good thing) but the desire gets translated by the Holy Spirit into the best approximation that still fits in with Gods overall Sovereign plan)''

(there's more in there than that, though)
The idea that some people may possibly be saved through Christ, even though they may not verbally profess or even consciously consider themselves to be "Christian"

more later...
It just occurred to me that there must be a link between those who believe that infant baptism is appropriate and Arminianists (those who believe you can lose your salvation), because it seems that their position re infant baptism is that it shows that they are saved "for the time being" and "let's hope they don't stray away (lose their salvation) later in life.
/***
|Name|InlineJavascriptPlugin|
|Source|http://www.TiddlyTools.com/#InlineJavascriptPlugin|
|Documentation|http://www.TiddlyTools.com/#InlineJavascriptPluginInfo|
|Version|1.8.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.1|
|Type|plugin|
|Requires||
|Overrides||
|Description|Insert Javascript executable code directly into your tiddler content.|
''Call directly into TW core utility routines, define new functions, calculate values, add dynamically-generated TiddlyWiki-formatted output'' into tiddler content, or perform any other programmatic actions each time the tiddler is rendered.
!!!!!Documentation
>see [[InlineJavascriptPluginInfo]]
!!!!!Revision History
<<<
''2008.01.08 [*.*.*]'' plugin size reduction: documentation moved to ...Info and ...History tiddlers
''2007.12.28 [1.8.0]'' added support for key="X" syntax to specify custom access key definitions
|please see [[InlineJavascriptPluginHistory]] for additional revision details|
''2005.11.08 [1.0.0]'' initial release

<<<
!!!!!Code
***/
//{{{
version.extensions.inlineJavascript= {major: 1, minor: 8, revision: 0, date: new Date(2007,12,28)};

config.formatters.push( {
	name: "inlineJavascript",
	match: "\\<script",
	lookahead: "\\<script(?: src=\\\"((?:.|\\n)*?)\\\")?(?: label=\\\"((?:.|\\n)*?)\\\")?(?: title=\\\"((?:.|\\n)*?)\\\")?(?: key=\\\"((?:.|\\n)*?)\\\")?( show)?\\>((?:.|\\n)*?)\\</script\\>",

	handler: function(w) {
		var lookaheadRegExp = new RegExp(this.lookahead,"mg");
		lookaheadRegExp.lastIndex = w.matchStart;
		var lookaheadMatch = lookaheadRegExp.exec(w.source)
		if(lookaheadMatch && lookaheadMatch.index == w.matchStart) {
			var src=lookaheadMatch[1];
			var label=lookaheadMatch[2];
			var tip=lookaheadMatch[3];
			var key=lookaheadMatch[4];
			var show=lookaheadMatch[5];
			var code=lookaheadMatch[6];
			if (src) { // load a script library
				// make script tag, set src, add to body to execute, then remove for cleanup
				var script = document.createElement("script"); script.src = src;
				document.body.appendChild(script); document.body.removeChild(script);
			}
			if (code) { // there is script code
				if (show) // show inline script code in tiddler output
					wikify("{{{\n"+lookaheadMatch[0]+"\n}}}\n",w.output);
				if (label) { // create a link to an 'onclick' script
					// add a link, define click handler, save code in link (pass 'place'), set link attributes
					var link=createTiddlyElement(w.output,"a",null,"tiddlyLinkExisting",wikifyPlainText(label));
					link.onclick=function(){try{return(eval(this.code))}catch(e){alert(e.description||e.toString())}}
					var fixup=code.replace(/document.write\s*\(/gi,'place.innerHTML+=(');
					link.code="function _out(place){"+fixup+"\n};_out(this);"

					link.setAttribute("title",tip||"");
					var URIcode='javascript:void(eval(decodeURIComponent(%22(function(){try{';
					URIcode+=encodeURIComponent(encodeURIComponent(code.replace(/\n/g,' ')));
					URIcode+='}catch(e){alert(e.description||e.toString())}})()%22)))';
					link.setAttribute("href",URIcode);
					link.style.cursor="pointer";
					if (key) link.accessKey=key.substr(0,1); // single character only
				}
				else { // run inline script code
					var fixup=code.replace(/document.write\s*\(/gi,'place.innerHTML+=(');
					var code="function _out(place){"+fixup+"\n};_out(w.output);"
					try { var out=eval(code); } catch(e) { out=e.description?e.description:e.toString(); }
					if (out && out.length) wikify(out,w.output,w.highlightRegExp,w.tiddler);
				}
			}
			w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;
		}
	}
} )
//}}}
/***
|''Name:''|IntelliTaggerPlugin|
|''Version:''|1.0.2 (2007-07-25)|
|''Type:''|plugin|
|''Source:''|http://tiddlywiki.abego-software.de/#IntelliTaggerPlugin|
|''Author:''|Udo Borkowski (ub [at] abego-software [dot] de)|
|''Documentation:''|[[IntelliTaggerPlugin Documentation]]|
|''~SourceCode:''|[[IntelliTaggerPlugin SourceCode]]|
|''Licence:''|[[BSD open source license (abego Software)]]|
|''~CoreVersion:''|2.0.8|
|''Browser:''|Firefox 1.5.0.2 or better|
***/
/***
!Version History
* 1.0.2 (2007-07-25): 
** Feature: "Return" key may be used to accept first tag suggestion (beside "Alt-1")
** Bugfix: Keyboard shortcuts (Alt+3 etc.) shifted
* 1.0.1 (2007-05-18): Improvement: Speedup when using TiddlyWikis with many tags
* 1.0.0 (2006-04-26): Initial release

***/
// /%
if(!version.extensions.IntelliTaggerPlugin){if(!window.abego){window.abego={};}if(!abego.internal){abego.internal={};}abego.alertAndThrow=function(s){alert(s);throw s;};if(version.major<2){abego.alertAndThrow("Use TiddlyWiki 2.0.8 or better to run the IntelliTagger Plugin.");}version.extensions.IntelliTaggerPlugin={major:1,minor:0,revision:2,date:new Date(2007,6,25),type:"plugin",source:"http://tiddlywiki.abego-software.de/#IntelliTaggerPlugin",documentation:"[[IntelliTaggerPlugin Documentation]]",sourcecode:"[[IntelliTaggerPlugin SourceCode]]",author:"Udo Borkowski (ub [at] abego-software [dot] de)",licence:"[[BSD open source license (abego Software)]]",tiddlywiki:"Version 2.0.8 or better",browser:"Firefox 1.5.0.2 or better"};abego.createEllipsis=function(_2){var e=createTiddlyElement(_2,"span");e.innerHTML="&hellip;";};abego.isPopupOpen=function(_4){return _4&&_4.parentNode==document.body;};abego.openAsPopup=function(_5){if(_5.parentNode!=document.body){document.body.appendChild(_5);}};abego.closePopup=function(_6){if(abego.isPopupOpen(_6)){document.body.removeChild(_6);}};abego.getWindowRect=function(){return {left:findScrollX(),top:findScrollY(),height:findWindowHeight(),width:findWindowWidth()};};abego.moveElement=function(_7,_8,_9){_7.style.left=_8+"px";_7.style.top=_9+"px";};abego.centerOnWindow=function(_a){if(_a.style.position!="absolute"){throw "abego.centerOnWindow: element must have absolute position";}var _b=abego.getWindowRect();abego.moveElement(_a,_b.left+(_b.width-_a.offsetWidth)/2,_b.top+(_b.height-_a.offsetHeight)/2);};abego.isDescendantOrSelf=function(_c,e){while(e){if(_c==e){return true;}e=e.parentNode;}return false;};abego.toSet=function(_e){var _f={};for(var i=0;i<_e.length;i++){_f[_e[i]]=true;}return _f;};abego.filterStrings=function(_11,_12,_13){var _14=[];for(var i=0;i<_11.length&&(_13===undefined||_14.length<_13);i++){var s=_11[i];if(s.match(_12)){_14.push(s);}}return _14;};abego.arraysAreEqual=function(a,b){if(!a){return !b;}if(!b){return false;}var n=a.length;if(n!=b.length){return false;}for(var i=0;i<n;i++){if(a[i]!=b[i]){return false;}}return true;};abego.moveBelowAndClip=function(_1b,_1c){if(!_1c){return;}var _1d=findPosX(_1c);var _1e=findPosY(_1c);var _1f=_1c.offsetHeight;var _20=_1d;var _21=_1e+_1f;var _22=findWindowWidth();if(_22<_1b.offsetWidth){_1b.style.width=(_22-100)+"px";}var _23=_1b.offsetWidth;if(_20+_23>_22){_20=_22-_23-30;}if(_20<0){_20=0;}_1b.style.left=_20+"px";_1b.style.top=_21+"px";_1b.style.display="block";};abego.compareStrings=function(a,b){return (a==b)?0:(a<b)?-1:1;};abego.sortIgnoreCase=function(arr){var _27=[];var n=arr.length;for(var i=0;i<n;i++){var s=arr[i];_27.push([s.toString().toLowerCase(),s]);}_27.sort(function(a,b){return (a[0]==b[0])?0:(a[0]<b[0])?-1:1;});for(i=0;i<n;i++){arr[i]=_27[i][1];}};abego.getTiddlerField=function(_2d,_2e,_2f){var _30=document.getElementById(_2d.idPrefix+_2e);var e=null;if(_30!=null){var _32=_30.getElementsByTagName("*");for(var t=0;t<_32.length;t++){var c=_32[t];if(c.tagName.toLowerCase()=="input"||c.tagName.toLowerCase()=="textarea"){if(!e){e=c;}if(c.getAttribute("edit")==_2f){e=c;}}}}return e;};abego.setRange=function(_35,_36,end){if(_35.setSelectionRange){_35.setSelectionRange(_36,end);var max=0+_35.scrollHeight;var len=_35.textLength;var top=max*_36/len,bot=max*end/len;_35.scrollTop=Math.min(top,(bot+top-_35.clientHeight)/2);}else{if(_35.createTextRange!=undefined){var _3b=_35.createTextRange();_3b.collapse();_3b.moveEnd("character",end);_3b.moveStart("character",_36);_3b.select();}else{_35.select();}}};abego.internal.TagManager=function(){var _3c=null;var _3d=function(){if(_3c){return;}_3c={};store.forEachTiddler(function(_3e,_3f){for(var i=0;i<_3f.tags.length;i++){var tag=_3f.tags[i];var _42=_3c[tag];if(!_42){_42=_3c[tag]={count:0,tiddlers:{}};}_42.tiddlers[_3f.title]=true;_42.count+=1;}});};var _43=TiddlyWiki.prototype.saveTiddler;TiddlyWiki.prototype.saveTiddler=function(_44,_45,_46,_47,_48,_49){var _4a=this.fetchTiddler(_44);var _4b=_4a?_4a.tags:[];var _4c=(typeof _49=="string")?_49.readBracketedList():_49;_43.apply(this,arguments);if(!abego.arraysAreEqual(_4b,_4c)){abego.internal.getTagManager().reset();}};var _4d=TiddlyWiki.prototype.removeTiddler;TiddlyWiki.prototype.removeTiddler=function(_4e){var _4f=this.fetchTiddler(_4e);var _50=_4f&&_4f.tags.length>0;_4d.apply(this,arguments);if(_50){abego.internal.getTagManager().reset();}};this.reset=function(){_3c=null;};this.getTiddlersWithTag=function(tag){_3d();var _52=_3c[tag];return _52?_52.tiddlers:null;};this.getAllTags=function(_53){_3d();var _54=[];for(var i in _3c){_54.push(i);}for(i=0;_53&&i<_53.length;i++){_54.pushUnique(_53[i],true);}abego.sortIgnoreCase(_54);return _54;};this.getTagInfos=function(){_3d();var _56=[];for(var _57 in _3c){_56.push([_57,_3c[_57]]);}return _56;};var _58=function(a,b){var a1=a[1];var b1=b[1];var d=b[1].count-a[1].count;return d!=0?d:abego.compareStrings(a[0].toLowerCase(),b[0].toLowerCase());};this.getSortedTagInfos=function(){_3d();var _5e=this.getTagInfos();_5e.sort(_58);return _5e;};this.getPartnerRankedTags=function(_5f){var _60={};for(var i=0;i<_5f.length;i++){var _62=this.getTiddlersWithTag(_5f[i]);for(var _63 in _62){var _64=store.getTiddler(_63);if(!(_64 instanceof Tiddler)){continue;}for(var j=0;j<_64.tags.length;j++){var tag=_64.tags[j];var c=_60[tag];_60[tag]=c?c+1:1;}}}var _68=abego.toSet(_5f);var _69=[];for(var n in _60){if(!_68[n]){_69.push(n);}}_69.sort(function(a,b){var d=_60[b]-_60[a];return d!=0?d:abego.compareStrings(a.toLowerCase(),b.toLowerCase());});return _69;};};abego.internal.getTagManager=function(){if(!abego.internal.gTagManager){abego.internal.gTagManager=new abego.internal.TagManager();}return abego.internal.gTagManager;};(function(){var _6e=2;var _6f=1;var _70=30;var _71;var _72;var _73;var _74;var _75;var _76;if(!abego.IntelliTagger){abego.IntelliTagger={};}var _77=function(){return _72;};var _78=function(tag){return _75[tag];};var _7a=function(s){var i=s.lastIndexOf(" ");return (i>=0)?s.substr(0,i):"";};var _7d=function(_7e){var s=_7e.value;var len=s.length;return (len>0&&s[len-1]!=" ");};var _81=function(_82){var s=_82.value;var len=s.length;if(len>0&&s[len-1]!=" "){_82.value+=" ";}};var _85=function(tag,_87,_88){if(_7d(_87)){_87.value=_7a(_87.value);}story.setTiddlerTag(_88.title,tag,0);_81(_87);abego.IntelliTagger.assistTagging(_87,_88);};var _89=function(n){if(_76&&_76.length>n){return _76[n];}return (_74&&_74.length>n)?_74[n]:null;};var _8b=function(n,_8d,_8e){var _8f=_89(n);if(_8f){_85(_8f,_8d,_8e);}};var _90=function(_91){var pos=_91.value.lastIndexOf(" ");var _93=(pos>=0)?_91.value.substr(++pos,_91.value.length):_91.value;return new RegExp(_93.escapeRegExp(),"i");};var _94=function(_95,_96){var _97=0;for(var i=0;i<_95.length;i++){if(_96[_95[i]]){_97++;}}return _97;};var _99=function(_9a,_9b,_9c){var _9d=1;var c=_9a[_9b];for(var i=_9b+1;i<_9a.length;i++){if(_9a[i][1].count==c){if(_9a[i][0].match(_9c)){_9d++;}}else{break;}}return _9d;};var _a0=function(_a1,_a2){var _a3=abego.internal.getTagManager().getSortedTagInfos();var _a4=[];var _a5=0;for(var i=0;i<_a3.length;i++){var c=_a3[i][1].count;if(c!=_a5){if(_a2&&(_a4.length+_99(_a3,i,_a1)>_a2)){break;}_a5=c;}if(c==1){break;}var s=_a3[i][0];if(s.match(_a1)){_a4.push(s);}}return _a4;};var _a9=function(_aa,_ab){return abego.filterStrings(abego.internal.getTagManager().getAllTags(_ab),_aa);};var _ac=function(){if(!_71){return;}var _ad=store.getTiddlerText("IntelliTaggerMainTemplate");if(!_ad){_ad="<b>Tiddler IntelliTaggerMainTemplate not found</b>";}_71.innerHTML=_ad;applyHtmlMacros(_71,null);refreshElements(_71,null);};var _ae=function(e){if(!e){var e=window.event;}var tag=this.getAttribute("tag");if(_73){_73.call(this,tag,e);}return false;};var _b2=function(_b3){createTiddlyElement(_b3,"span",null,"tagSeparator"," | ");};var _b4=function(_b5,_b6,_b7,_b8,_b9){if(!_b6){return;}var _ba=_b8?abego.toSet(_b8):{};var n=_b6.length;var c=0;for(var i=0;i<n;i++){var tag=_b6[i];if(_ba[tag]){continue;}if(c>0){_b2(_b5);}if(_b9&&c>=_b9){abego.createEllipsis(_b5);break;}c++;var _bf="";var _c0=_b5;if(_b7<10){_c0=createTiddlyElement(_b5,"span",null,"numberedSuggestion");_b7++;var key=_b7<10?""+(_b7):"0";createTiddlyElement(_c0,"span",null,"suggestionNumber",key+") ");var _c2=_b7==1?"Return or ":"";_bf=" (Shortcut: %1Alt-%0)".format([key,_c2]);}var _c3=config.views.wikified.tag.tooltip.format([tag]);var _c4=(_78(tag)?"Remove tag '%0'%1":"Add tag '%0'%1").format([tag,_bf]);var _c5="%0; Shift-Click: %1".format([_c4,_c3]);var btn=createTiddlyButton(_c0,tag,_c5,_ae,_78(tag)?"currentTag":null);btn.setAttribute("tag",tag);}};var _c7=function(){if(_71){window.scrollTo(0,ensureVisible(_71));}if(_77()){window.scrollTo(0,ensureVisible(_77()));}};var _c8=function(e){if(!e){var e=window.event;}if(!_71){return;}var _cb=resolveTarget(e);if(_cb==_77()){return;}if(abego.isDescendantOrSelf(_71,_cb)){return;}abego.IntelliTagger.close();};addEvent(document,"click",_c8);var _cc=Story.prototype.gatherSaveFields;Story.prototype.gatherSaveFields=function(e,_ce){_cc.apply(this,arguments);var _cf=_ce.tags;if(_cf){_ce.tags=_cf.trim();}};var _d0=function(_d1){story.focusTiddler(_d1,"tags");var _d2=abego.getTiddlerField(story,_d1,"tags");if(_d2){var len=_d2.value.length;abego.setRange(_d2,len,len);window.scrollTo(0,ensureVisible(_d2));}};var _d4=config.macros.edit.handler;config.macros.edit.handler=function(_d5,_d6,_d7,_d8,_d9,_da){_d4.apply(this,arguments);var _db=_d7[0];if((_da instanceof Tiddler)&&_db=="tags"){var _dc=_d5.lastChild;_dc.onfocus=function(e){abego.IntelliTagger.assistTagging(_dc,_da);setTimeout(function(){_d0(_da.title);},100);};_dc.onkeyup=function(e){if(!e){var e=window.event;}if(e.altKey&&!e.ctrlKey&&!e.metaKey&&(e.keyCode>=48&&e.keyCode<=57)){_8b(e.keyCode==48?9:e.keyCode-49,_dc,_da);}else{if(e.ctrlKey&&e.keyCode==32){_8b(0,_dc,_da);}}if(!e.ctrlKey&&(e.keyCode==13||e.keyCode==10)){_8b(0,_dc,_da);}setTimeout(function(){abego.IntelliTagger.assistTagging(_dc,_da);},100);return false;};_81(_dc);}};var _e0=function(e){if(!e){var e=window.event;}var _e3=resolveTarget(e);var _e4=_e3.getAttribute("tiddler");if(_e4){story.displayTiddler(_e3,_e4,"IntelliTaggerEditTagsTemplate",false);_d0(_e4);}return false;};var _e5=config.macros.tags.handler;config.macros.tags.handler=function(_e6,_e7,_e8,_e9,_ea,_eb){_e5.apply(this,arguments);abego.IntelliTagger.createEditTagsButton(_eb,createTiddlyElement(_e6.lastChild,"li"));};var _ec=function(){if(_71&&_72&&!abego.isDescendantOrSelf(document,_72)){abego.IntelliTagger.close();}};setInterval(_ec,100);abego.IntelliTagger.displayTagSuggestions=function(_ed,_ee,_ef,_f0,_f1){_74=_ed;_75=abego.toSet(_ee);_76=_ef;_72=_f0;_73=_f1;if(!_71){_71=createTiddlyElement(document.body,"div",null,"intelliTaggerSuggestions");_71.style.position="absolute";}_ac();abego.openAsPopup(_71);if(_77()){var w=_77().offsetWidth;if(_71.offsetWidth<w){_71.style.width=(w-2*(_6e+_6f))+"px";}abego.moveBelowAndClip(_71,_77());}else{abego.centerOnWindow(_71);}_c7();};abego.IntelliTagger.assistTagging=function(_f3,_f4){var _f5=_90(_f3);var s=_f3.value;if(_7d(_f3)){s=_7a(s);}var _f7=s.readBracketedList();var _f8=_f7.length>0?abego.filterStrings(abego.internal.getTagManager().getPartnerRankedTags(_f7),_f5,_70):_a0(_f5,_70);abego.IntelliTagger.displayTagSuggestions(_a9(_f5,_f7),_f7,_f8,_f3,function(tag,e){if(e.shiftKey){onClickTag.call(this,e);}else{_85(tag,_f3,_f4);}});};abego.IntelliTagger.close=function(){abego.closePopup(_71);_71=null;return false;};abego.IntelliTagger.createEditTagsButton=function(_fb,_fc,_fd,_fe,_ff,id,_101){if(!_fd){_fd="[edit]";}if(!_fe){_fe="Edit the tags";}if(!_ff){_ff="editTags";}var _102=createTiddlyButton(_fc,_fd,_fe,_e0,_ff,id,_101);_102.setAttribute("tiddler",(_fb instanceof Tiddler)?_fb.title:String(_fb));return _102;};abego.IntelliTagger.getSuggestionTagsMaxCount=function(){return 100;};config.macros.intelliTagger={label:"intelliTagger",handler:function(_103,_104,_105,_106,_107,_108){var _109=_107.parseParams("list",null,true);var _10a=_109[0]["action"];for(var i=0;_10a&&i<_10a.length;i++){var _10c=_10a[i];var _10d=config.macros.intelliTagger.subhandlers[_10c];if(!_10d){abego.alertAndThrow("Unsupported action '%0'".format([_10c]));}_10d(_103,_104,_105,_106,_107,_108);}},subhandlers:{showTags:function(_10e,_10f,_110,_111,_112,_113){_b4(_10e,_74,_76?_76.length:0,_76,abego.IntelliTagger.getSuggestionTagsMaxCount());},showFavorites:function(_114,_115,_116,_117,_118,_119){_b4(_114,_76,0);},closeButton:function(_11a,_11b,_11c,_11d,_11e,_11f){var _120=createTiddlyButton(_11a,"close","Close the suggestions",abego.IntelliTagger.close);},version:function(_121){var t="IntelliTagger %0.%1.%2".format([version.extensions.IntelliTaggerPlugin.major,version.extensions.IntelliTaggerPlugin.minor,version.extensions.IntelliTaggerPlugin.revision]);var e=createTiddlyElement(_121,"a");e.setAttribute("href","http://tiddlywiki.abego-software.de/#IntelliTaggerPlugin");e.innerHTML="<font color=\"black\" face=\"Arial, Helvetica, sans-serif\">"+t+"<font>";},copyright:function(_124){var e=createTiddlyElement(_124,"a");e.setAttribute("href","http://tiddlywiki.abego-software.de");e.innerHTML="<font color=\"black\" face=\"Arial, Helvetica, sans-serif\">&copy; 2006-2007 <b><font color=\"red\">abego</font></b> Software<font>";}}};})();config.shadowTiddlers["IntelliTaggerStyleSheet"]="/***\n"+"!~IntelliTagger Stylesheet\n"+"***/\n"+"/*{{{*/\n"+".intelliTaggerSuggestions {\n"+"\tposition: absolute;\n"+"\twidth: 600px;\n"+"\n"+"\tpadding: 2px;\n"+"\tlist-style: none;\n"+"\tmargin: 0;\n"+"\n"+"\tbackground: #eeeeee;\n"+"\tborder: 1px solid DarkGray;\n"+"}\n"+"\n"+".intelliTaggerSuggestions .currentTag   {\n"+"\tfont-weight: bold;\n"+"}\n"+"\n"+".intelliTaggerSuggestions .suggestionNumber {\n"+"\tcolor: #808080;\n"+"}\n"+"\n"+".intelliTaggerSuggestions .numberedSuggestion{\n"+"\twhite-space: nowrap;\n"+"}\n"+"\n"+".intelliTaggerSuggestions .intelliTaggerFooter {\n"+"\tmargin-top: 4px;\n"+"\tborder-top-width: thin;\n"+"\tborder-top-style: solid;\n"+"\tborder-top-color: #999999;\n"+"}\n"+".intelliTaggerSuggestions .favorites {\n"+"\tborder-bottom-width: thin;\n"+"\tborder-bottom-style: solid;\n"+"\tborder-bottom-color: #999999;\n"+"\tpadding-bottom: 2px;\n"+"}\n"+"\n"+".intelliTaggerSuggestions .normalTags {\n"+"\tpadding-top: 2px;\n"+"}\n"+"\n"+".intelliTaggerSuggestions .intelliTaggerFooter .button {\n"+"\tfont-size: 10px;\n"+"\n"+"\tpadding-left: 0.3em;\n"+"\tpadding-right: 0.3em;\n"+"}\n"+"\n"+"/*}}}*/\n";config.shadowTiddlers["IntelliTaggerMainTemplate"]="<!--\n"+"{{{\n"+"-->\n"+"<div class=\"favorites\" macro=\"intelliTagger action: showFavorites\"></div>\n"+"<div class=\"normalTags\" macro=\"intelliTagger action: showTags\"></div>\n"+"<!-- The Footer (with the Navigation) ============================================ -->\n"+"<table class=\"intelliTaggerFooter\" border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"0\"><tbody>\n"+"  <tr>\n"+"\t<td align=\"left\">\n"+"\t\t<span macro=\"intelliTagger action: closeButton\"></span>\n"+"\t</td>\n"+"\t<td align=\"right\">\n"+"\t\t<span macro=\"intelliTagger action: version\"></span>, <span macro=\"intelliTagger action: copyright \"></span>\n"+"\t</td>\n"+"  </tr>\n"+"</tbody></table>\n"+"<!--\n"+"}}}\n"+"-->\n";config.shadowTiddlers["IntelliTaggerEditTagsTemplate"]="<!--\n"+"{{{\n"+"-->\n"+"<div class='toolbar' macro='toolbar +saveTiddler -cancelTiddler'></div>\n"+"<div class='title' macro='view title'></div>\n"+"<div class='tagged' macro='tags'></div>\n"+"<div class='viewer' macro='view text wikified'></div>\n"+"<div class='toolbar' macro='toolbar +saveTiddler -cancelTiddler'></div>\n"+"<div class='editor' macro='edit tags'></div><div class='editorFooter'><span macro='message views.editor.tagPrompt'></span><span macro='tagChooser'></span></div>\n"+"<!--\n"+"}}}\n"+"-->\n";config.shadowTiddlers["BSD open source license (abego Software)"]="See [[Licence|http://tiddlywiki.abego-software.de/#%5B%5BBSD%20open%20source%20license%5D%5D]].";config.shadowTiddlers["IntelliTaggerPlugin Documentation"]="[[Documentation on abego Software website|http://tiddlywiki.abego-software.de/doc/IntelliTagger.pdf]].";config.shadowTiddlers["IntelliTaggerPlugin SourceCode"]="[[Plugin source code on abego Software website|http://tiddlywiki.abego-software.de/archive/IntelliTaggerPlugin/Plugin-IntelliTagger-src.1.0.2.js]]\n";(function(){var _126=restart;restart=function(){setStylesheet(store.getTiddlerText("IntelliTaggerStyleSheet"),"IntelliTaggerStyleSheet");_126.apply(this,arguments);};})();}
// %/
''//Internet Explorer//'' is the browser that most computers come with.  You can download these two better ones here:

[[Mozilla Firefox|http://www.mozilla.com/en-US/]]

[[Google Chrome|http://www.google.com/chrome]]
Complex systems (think mouse trap) that cannot function when even one part is missing (e.g. bacterial flagellum) could not possibly have been made by successive small changes
I was just listening today to the Jan 12 segment of the GaryDeMar Show and he mentioned that Richard Dawkins (the current High Priest of Atheism) had the least respect for those christians who do not believe in the accounts in Genesis.  I.e., he's talking about those who try to maintain a faith in the God of the bible at the same time as holding to the idea that God somehow used evolution to create everything.

It struck me that God may be "using" Richard Dawkins to engage the luke-warm or wishy-washy christians and get them to think more seriously about what they really believe.  This appears to be similar to how he used Babylon to shape the hearts and minds of those wishy-washy Isrealites many years ago...
(future topic)
<<<
Isa 13:10  	For the stars of heaven and their constellations Will not flash forth their light; The sun will be dark when it rises And the moon will not shed its light.
Isa 13:11 	Thus I will punish the world for its evil And the wicked for their iniquity; I will also put an end to the arrogance of the proud And abase the haughtiness of the ruthless.
Isa 13:12 	I will make mortal man scarcer than pure gold And mankind than the gold of Ophir.
Isa 13:13 	Therefore I will make the heavens tremble, And the earth will be shaken from its place At the fury of the LORD of hosts In the day of His burning anger.
<<<
this is about the destruction of Babylon
[[Isa 6:5-7]]
Isa 6:5  	
Then I said, "Woe is me, for ''I am ruined!'' Because I am a man of unclean lips, And I live among a people of unclean lips; For my eyes have seen the King, the LORD of hosts."
Isa 6:6 	
Then one of the seraphim flew to me with a ''burning coal'' in his hand, which he had taken from the altar with tongs.
Isa 6:7 	
He touched my mouth {with it} and said, "Behold, this has touched your lips; and ''your iniquity is taken away and your sin is forgiven.''"

*My point here is that in one moment he is unclean and ruined because of a //part// of him - his lips... and the next moment, once that evil part is burned away (not tortured eternally), what's left behind is holy
Isaiah 34:9 Edom’s  streams will be turned into pitch
and her soil into brimstone;
her land will become burning pitch.
34:10 Night and day it will burn; 
its smoke will ascend continually.
Generation after generation it will be a wasteland
and no one will ever pass through it again.
Isaiah19:1The burden 
<04853> of Egypt 
<04714>_. Behold, the LORD 
<03068> rideth 
<07392> (8802) upon a swift 
<07031> cloud 
<05645>_, and shall come 
<0935> (8804) into Egypt 
<04714>_: and the idols 
<0457> of Egypt 
<04714> shall be moved 
<05128> (8804) at his presence 
<06440>_, and the heart 
<03824> of Egypt 
<04714> shall melt 
<04549> (8735) in the midst 
<07130> of it.
The [[LeftBehinders|LeftBehind]] try to divide Israel and the Church as two distinct things with two distinct plans by God.  I think Paul is pretty clear in Romans that the church is IsraelTransformed.  

Okay, my thought for today is to merge a couple lines of thought, that can be fleshed out or dismissed as garbage later:

!the Church as the Priesthood & the PartialSoul

I think that the bible is so rich because its symbolism can be overlapped and nested so to speak.  Here's an example of what I see:
# Israel (old testament) was to be God's Holy nation to minister to the rest of the world
# that's what the Church is supposed to be doing now
# inside Israel, the priesthood was supposed to be God's Holy people to minister to the non-holy people of Israel
# now, the World (oikumene (sp?)) is like the old nation of Israel and the church is like the Priesthood, ministering to the world.
# this structure is mirrored in the individual christian in the sense that that part of his soul that believes in (obeys) Christ is responsible to commune with the Holy Spirit in order to minister to the rest of his soul (Sanctification)
# so, when we see things in the bible talking about the rotten things the Israelites did in the old testament, they are a material lesson on what's going on inside the believer.  They sin, yet God is still faithful and he remembers the remnant believers that lie within
# in addition, we can look at the pagan nations of the old testament and see the individual unbeliever.

see also the ThemeOfTheBible
tbc..,

>2:14 What good is it, my brothers and sisters,   if someone claims to have faith but does not have works? Can this kind of faith   save him?    2:15 If a brother or sister   is poorly clothed and lacks daily food, 2:16 and one of you says to them, “Go in peace, keep warm and eat well,” but you do not give them what the body needs,   what good is it? 2:17 So also faith, if it does not have works, is dead being by itself. 2:18 ''But someone will say, “You have faith and I have works.”   Show me your faith without works and I will show you faith by my works.'' 2:19 You believe that God is one; well and good.   Even the demons believe that – and tremble with fear. 

this shows that it is not the profession itself that saves, but the real presence and work of Christ in one's life that saves, ''//including the presence/work of Christ that does not come out in ones words//''.
   [31]"Behold, the days are coming, declares the LORD, when I will make 
a new covenant with the house of Israel and the house of Judah, (ESV)
   [16]And I will ask the Father, and he will give you another ((Helper(aka "comforter" in other versions, paraklētos (Strong's G3875) ))), to 
be with you forever, [17]even the Spirit of truth, whom the world cannot 
receive, because it neither sees him nor knows him. You know him, for he 
dwells with you and will be in you.
   [18]"I will not leave you as orphans; I will come to you. [19]Yet a 
little while and the world will see me no more, but you will see me. 
Because I live, you also will live. [20]In that day you will know that I 
am in my Father, and you in me, and I in you. [21]Whoever has my 
commandments and keeps them, he it is who loves me. And he who loves me 
will be loved by my Father, and I will love him and manifest myself to 
him." [22]Judas (not Iscariot) said to him, "Lord, how is it that you 
will manifest yourself to us, and not to the world?" [23]Jesus answered 
him, "If anyone loves me, he will keep my word, and my Father will love 
him, and we will come to him and make our home with him. [24]Whoever does 
not love me does not keep my words. And the word that you hear is not 
mine but the Father's who sent me.
   [25]"These things I have spoken to you while I am still with you. 
[26]But the ''Helper'', the Holy Spirit, whom the Father will send in my 
name, he will teach you all things and bring to your remembrance all that 
I have said to you. (ESV)
NASB: 
Jhn 16:22 	"Therefore you too have grief now; but I will see you again, and your heart will rejoice, and no one {will} take your joy away from you.
Jhn 16:23 	"In that day you will not question Me about anything. Truly, truly, I say to you, if you ask the Father for anything ''//in My name//'', He will give it to you.
Jhn 16:24 	"Until now you have asked for nothing in My name; ask and you will receive, so that your joy may be made full.
Jhn 16:25 	"These things I have spoken to you in figurative language; an hour is coming when I will no longer speak to you in figurative language, but will tell you plainly of the Father.
Jhn 16:26 	"In that day you will ask in My name, and I do not say to you that I will request of the Father on your behalf;
Jhn 16:27 	for the Father Himself loves you, because you have loved Me and have believed that I came forth from the Father.
(see PartialSoul)

''Major Hypothesizing here'':  perhaps when the bible says that the lake of fire (Hell) was made for the devil and his angels, its pointing to a difference in the nature of an "angel-spirit" and "human-spirit"  I suppose that angels are spirits that are able to exist on their own, and could (therefore?) have eternal existance already, but that when God breathed his own spirit into man, that suggests a different nature of our spirit.  Perhaps the human spirit requires a land to live on (i.e.the human soul), and that in the final judgement, we will be conscious of the rennovation of our souls into the eternal state including the removal and destruction of those spirits/attitudes/beliefs we've had that are not of Christ, whereas the eternal/autonomous spirits known as demons will indeed be locked away from the rest of us forever, and in torment.  And of course if the soul being judged has no trace of Christ in him/her, their soul will be destroyed.
Kent Hovind is in jail because he is a premillennialist and has very strong faith and therefore won't give up on even his wrongly placed convictions. Too bad, because he was doing interesting work on the other end of history (the beginning). I just read that he's in jail for 10 years in a federal prison for tax evasion.

So, what does his premillennial views have to do with him being in jail. It's because he doesn't know that the only thing Revelation has to do with today is the millennial kingdom that we're now living in. The premillennial Christian believes that the beast in control of the world-wide anti Christian government wasn't Nero just before 70 AD, but is some sinister person who will soon take control of the world we live in now. In the premillennialist view, the church will ultimately lose and we'll only be saved from the midst of Armageddon in the nick of time by the second appearance of Christ. If you have a strong faith like Kent Hovind obviously does you will cast your eyes with suspicion upon big government and their power grabbing tricks (like taxes). I think Kent Hovind is acting with a clear (but mistaken) conscience.

If, however, you accept that when John said in revelation that these things "must shortly come to pass" he actually meant that they must shortly come to pass (i.e. already did in and around 70 AD), you will see that there has been a fifth empire like Daniel forecast would start like a small rock and grow into a mountain and continue to grow forever. Hopefully you will also see that the church today is not meant to fail but to grow as the millennial kingdom grows, and that the government(s) rest on the shoulders of Christ who is reigning now in heaven.

Dan 2:35 Then the iron, the clay, the bronze, the silver, and the gold were broken to pieces together. And they became like the chaff of the summer threshing floors. And the wind carried them away, so that no place was found for them. And the stone that struck the image became a great mountain and filled the whole earth.

Sure, there's lots of bad things going on in the world today, but Christ, in part through the influence of Christians through the centuries, keeps things together and growing and getting better (just as fast as we're willing to go with Him). How else could it happen?

The sad part is that the more you believe in premillennialism, I think the less likely you are to work to better this world (contribute to the Kingdom). But then again, maybe I'm wrong...

I'm sure of one thing though: Kent Hovind will have a harder time contributing from his jail cell.
this is the sub type of PreMillennialism that is popular today.  Okay, actually the term "Laft Behind" is a book written by LaHaye and Jenkins (sp?) that champions this worldview

Basically it says that the end of the world is near (and has been for some time now) and pretty soon the true Christians will disappear, leaving their clothes behind, and then the rest of the world will go through a terrible Tribulation - basically Hell on Earth.

or

 It basically says "the world is going to Hell in a handbasket and my job is to wait for it, maybe talk to some people about Christ, and do nothing else and hope it all ends soon".  the "Magic" is that its not up to us to do anything to forward the Kingdom - it'll just happen by magic (i.e. Jesus does all the work, we don't do anything but wait in our faith).  This viewpoint encourages (not in word but in structure) a christian to learn, but just "hang on" and don't try to change the world in the power of Christ, because Christ is coming and will rule the unbelieving nations physically from a physical Jerusalem. Miracles are emphasized and devoted christian study is not. (from MagicalChristianity)
/***
| Name|LessBackupsPlugin|
| Description|Intelligently limit the number of backup files you create|
| Version|3.0 ($Rev: 2320 $)|
| Date|$Date: 2007-06-18 22:37:46 +1000 (Mon, 18 Jun 2007) $|
| Source|http://mptw.tiddlyspot.com/#LessBackupsPlugin|
| Author|Simon Baird|
| Email|simon.baird@gmail.com|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
!!!Description
You end up with just backup one per year, per month, per weekday, per hour, minute, and second.  So total number won't exceed about 200 or so. Can be reduced by commenting out the seconds/minutes/hours line from modes array

!!!Notes
Works in IE and Firefox only.  Algorithm by Daniel Baird. IE code by by Saq Imtiaz.
!!!Code
***/
//{{{
window.getSpecialBackupPath = function(backupPath) {

	var MINS  = 60 * 1000;
	var HOURS = 60 * MINS;
	var DAYS  = 24 * HOURS;

	// comment out the ones you don't want
	var modes = [
		["YYYY",  365*DAYS], // one per year for ever
		["MMM",   31*DAYS],  // one per month
		["ddd",   7*DAYS],   // one per weekday
		//["d0DD",  1*DAYS],   // one per day of month
		["h0hh",  24*HOURS], // one per hour
		["m0mm",  1*HOURS],  // one per minute
		["s0ss",  1*MINS],   // one per second
		["latest",0]         // always keep last version. (leave this).
	];

	var now = new Date();

	for (var i=0;i<modes.length;i++) {

		// the filename we will try
		var specialBackupPath = backupPath.replace(/(\.)([0-9]+\.[0-9]+)(\.html)$/,
						'$1'+now.formatString(modes[i][0]).toLowerCase()+'$3')

		// open the file

		try {
			if (config.browser.isIE) {
				var fsobject = new ActiveXObject("Scripting.FileSystemObject")
				var fileExists  = fsobject.FileExists(specialBackupPath);
				if (fileExists) {
					var fileObject = fsobject.GetFile(specialBackupPath);
					var modDate = new Date(fileObject.DateLastModified).valueOf();
				}
			}
			else {
				netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
				var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
				file.initWithPath(specialBackupPath);
				var fileExists = file.exists();
				if (fileExists) {
					var modDate = file.lastModifiedTime;
				}
			}
		}
		catch(e) {
			// give up
			return backupPath;
		}

		// expiry is used to tell if it's an 'old' one. Eg, if the month is June and there is a
		// June file on disk that's more than an month old then it must be stale so overwrite
		// note that "latest" should be always because the expiration period is zero (see above)
		var expiry = new Date(modDate + modes[i][1]);
		if (!fileExists || now > expiry)
			return specialBackupPath;
	}
}

// hijack the core function
window.getBackupPath_orig = window.getBackupPath;
window.getBackupPath = function(localPath) {
	return getSpecialBackupPath(getBackupPath_orig(localPath));
}

//}}}
...

/***
|''Name:''|LoadRemoteFileThroughProxy (previous LoadRemoteFileHijack)|
|''Description:''|When the TiddlyWiki file is located on the web (view over http) the content of [[SiteProxy]] tiddler is added in front of the file url. If [[SiteProxy]] does not exist "/proxy/" is added. |
|''Version:''|1.1.0|
|''Date:''|mar 17, 2007|
|''Source:''|http://tiddlywiki.bidix.info/#LoadRemoteFileHijack|
|''Author:''|BidiX (BidiX (at) bidix (dot) info)|
|''License:''|[[BSD open source license|http://tiddlywiki.bidix.info/#%5B%5BBSD%20open%20source%20license%5D%5D ]]|
|''~CoreVersion:''|2.2.0|
***/
//{{{
version.extensions.LoadRemoteFileThroughProxy = {
 major: 1, minor: 1, revision: 0, 
 date: new Date("mar 17, 2007"), 
 source: "http://tiddlywiki.bidix.info/#LoadRemoteFileThroughProxy"};

if (!window.bidix) window.bidix = {}; // bidix namespace
if (!bidix.core) bidix.core = {};

bidix.core.loadRemoteFile = loadRemoteFile;
loadRemoteFile = function(url,callback,params)
{
 if ((document.location.toString().substr(0,4) == "http") && (url.substr(0,4) == "http")){ 
  url = store.getTiddlerText("SiteProxy", "/proxy/") + url;
 }
 return bidix.core.loadRemoteFile(url,callback,params);
}
//}}}
<html><div class="esv"><h2>Luke 2:1 <small class="audio">(<a href="http://www.gnpcb.org/esv/share/audio/smil?passage=Luke+2%3A1">Listen</a>)</small></h2>

<div class="esv-text">
<p><span class="chapter-num" id="v42002001-1">2:1&nbsp;</span>In those days a decree went out from Caesar Augustus that <span style="font-weight: bold; font-style: italic;">all the world</span> should be registered.  (<a href="http://www.esv.org" class="copyright">ESV</a>)</p>

</div>
</div></html>
12:8 “I 20  tell you, whoever acknowledges 21  me before men, 22  the Son of Man will also acknowledge 23  before God’s angels. 12:9 But the one who denies me before men will be denied before God’s angels. ''12:10 And everyone who speaks a word against the Son of Man will be forgiven, but the person who blasphemes against the Holy Spirit 24  will not be forgiven.'' 25   12:11 But when they bring you before the synagogues, 26  the 27  rulers, and the authorities, do not worry about how you should make your defense 28  or what you should say, 12:12 for the Holy Spirit will teach you at that moment 29  what you must say.” 30 
   [20]"But when you see Jerusalem surrounded by armies, then know that 
its //''desolation''// has come near. (ESV)
this is one of my biggest pet peaves that is structurally supported by the LeftBehind worldview  +++^* It basically says "the world is going to Hell in a handbasket and my job is to wait for it, maybe talk to some people about Christ, and do nothing else and hope it all ends soon".  the "Magic" is that its not up to us to do anything to forward the Kingdom - it'll just happen by magic (i.e. Jesus does all the work, we don't do anything but wait in our faith).  This viewpoint encourages (not in word but in structure) a christian to learn, but just "hang on" and don't try to change the world in the power of Christ, because Christ is coming and will rule the unbelieving nations physically from a physical Jerusalem. Miracles are emphasized and devoted christian study is not.===.

this is the idea that one can say a few "magic words" or a "magic prayer" and then you're good - you can coast now.  Its basically spiritual laziness.  God does all the work and we don't have to think anything through.

Examples:
#part of the pentecostal movement that says "you need to talk in tongues to be extra special - just say a bunch of gibberish out loud - like baby talk..." (that's an actual (paraphrased) explanation a friend of mine was told but a well-intentioned pentecostal friend of hers)
# "InJesusName" - i.e. your prayer gets stamped as certified when you say that at the end of a prayer (okay, I still do that myself as a convention - see the link for more)
{{left{
<html><img src="http://www.cedar-chiropractic.com/images/GlassGlobe.jpg" style="height: 120px; "/></html>}}}
[[New Stuff|recent changes]] 
<<search>>
<<fontSize "font-size:">>

[[My Interests]] 
[[Topic Starting Points]]


[[Links]]
[[Who is this guy?]]
[[if you want to comment...|feedback]]







[[Controls|GettingStarted]]

   [14]"But when you see the abomination of desolation standing where he 
ought not to be (let the reader understand), then let those who are in 
Judea flee to the mountains. (ESV)

//NASB ©biblegateway Mar 13:14//
"But when you see the ABOMINATION OF DESOLATION standing where it should not be (let the reader understand), then those who are in Judea must flee to the mountains.
<!--{{{-->
<link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml' />
<!--}}}-->

<style type="text/css">#contentWrapper {display:none;}</style><div id="SplashScreen" style="border: 3px solid #ccc; display: block; text-align: center; width: 320px; margin: 100px auto; padding: 50px; color:#000; font-size: 28px; font-family:Tahoma; background-color:#eee;"><b>the Glass Atlas</b> is loading<blink> ...</blink><br><br><span style="font-size: 14px; color:red;">Best viewed in the Firefox browser.</span></div>
   [13]Now when Jesus came into the district of Caesarea Philippi, he 
asked his disciples, "Who do people say that the Son of Man is?" [14]And 
they said, "Some say John the Baptist, others say Elijah, and others 
Jeremiah or one of the prophets." [15]He said to them, "But who do you 
say that I am?" [16]Simon Peter replied, "You are the Christ, the Son of 
the living God." [17]And Jesus answered him, "//''Blessed are you''//, Simon Bar-
Jonah! For flesh and blood has not revealed this to you, but my Father 
who is in heaven. [18]And I tell you, you are Peter, and on this rock I 
will build my church, and the gates of hell shall not prevail against it. 
[19]I will give you the keys of the kingdom of heaven, and whatever you 
bind on earth shall be bound in heaven, and whatever you loose on earth 
shall be loosed in heaven." [20]Then he strictly charged the disciples to 
tell no one that he was the Christ.
   [21]From that time Jesus began to show his disciples that he must go 
to Jerusalem and suffer many things from the elders and chief priests and 
scribes, and be killed, and on the third day be raised. [22]And Peter 
took him aside and began to rebuke him, saying, "Far be it from you, 
Lord! This shall never happen to you." [23]But he turned and //''said to 
Peter, "Get behind me, Satan! You are a hindrance to me. For you are not 
setting your mind on the things of God, but on the things of man."''// (ESV)
But He turned and said to Peter, "Get behind Me, Satan! You are a stumbling block to Me; for you are not setting your mind on God’s interests, but man’s."
   [19]And seeing a fig tree by the wayside, he went to it and found 
nothing on it but only leaves. And he said to it, "May no fruit ever come 
from you again!" And the fig tree withered at once.
   [20]When the disciples saw it, they marveled, saying, "How did the fig 
tree wither at once?" [21]And Jesus answered them, //''"Truly, I say to you, 
if you have faith and do not doubt, you will not only do what has been 
done to the fig tree, but even if you say to this mountain, 'Be taken up 
and thrown into the sea,' it will happen. [22]And whatever you ask in 
prayer, you will receive, +++^*[if you have faith."]<<tiddler [[enough faith to cast mountains...]]>>===''// (ESV)
   Jesus left the temple and was going away, when his disciples came to 
point out to him the buildings of the temple. [2]But he answered them, 
"You see all these, do you not? Truly, I say to you, there will not be 
left here one stone upon another that will not be thrown down."
   [3]As he sat on the Mount of Olives, the disciples came to him 
privately, saying, @@background-color:#FF0;"Tell us, //''when''// will these things be, and //''what will be 
the sign of your coming''// and of the close of the age?" @@[4]And Jesus 
answered them, "See that no one leads you astray. [5]For many will come 
in my name, saying, 'I am the Christ,' and they will lead many astray. 
[6]And you will hear of wars and rumors of wars. See that you are not 
alarmed, for this must take place, but the end is not yet. [7]For nation 
will rise against nation, and kingdom against kingdom, and there will be 
famines and earthquakes in various places. [8]All these are but the 
beginning of the birth pains.
   [9]"Then they will deliver you up to tribulation and put you to death, 
and you will be hated by all nations for my name's sake. [10]And then 
many will fall away and betray one another and hate one another. [11]And 
many false prophets will arise and lead many astray. [12]And because 
lawlessness will be increased, the love of many will grow cold. [13]But 
the one who endures to the end will be saved. [14]And this gospel of the 
kingdom will be proclaimed throughout the whole world as a testimony to 
all nations, and then the end will come.
   [15]@@background-color:#FF0;"So //''when''// you see the +++^*[abomination of desolation]<<tiddler AbominationOfDesolation>>[[here|AbominationOfDesolation]]=== spoken of by the 
prophet Daniel, standing in the holy place (let the reader understand), 
[16]then let those who are in Judea flee to the mountains.@@ [17]Let the 
one who is on the housetop not go down to take what is in his house, 
[18]and let the one who is in the field not turn back to take his cloak. 
[19]And alas for women who are pregnant and for those who are nursing 
infants in those days! [20]Pray that your flight may not be in winter or 
on a Sabbath. [21]For then there will be //''great tribulation''//, such as has 
not been from the beginning of the world until now, no, and never will 
be. [22]And if those days had not been cut short, no human being would be 
saved. But for the sake of the elect those days will be cut short. 
[23]Then if anyone says to you, 'Look, here is the Christ!' or 'There he 
is!' do not believe it. [24]For false christs and false prophets will 
arise and perform great signs and wonders, so as to lead astray, if 
possible, even the elect. [25]See, I have told you beforehand. [26]So, if 
they say to you, 'Look, he is in the wilderness,' do not go out. If they 
say, 'Look, he is in the inner rooms,' do not believe it. [27]For as the 
lightning comes from the east and shines as far as the west, so will be 
the coming of the Son of Man. [28]Wherever the corpse is, there the 
vultures will gather.
   [29]"Immediately after the tribulation of those days [[the sun will be darkened, and the moon will not give its light, and the stars will fall from heaven]], and the powers of the heavens will be shaken. [30]@@background-color:#FF0;Then will 
appear in heaven //''the +++^*[sign]i.e. associating the event just spoken of (surrounding of Jerusalem by armies) with a ComingOnClouds reference, meaning that the destruction of Jerusalum is the sign to all (not just the elect) that Jesus has ascended to the right hand of the Father===of the Son of Man''//@@, and then all the tribes of 
the earth will mourn, and they will see the Son of Man coming on the 
clouds of heaven with power and great glory. [31]And he will send out his 
angels with a loud trumpet call, and they will gather his elect from the 
four winds, from one end of heaven to the other.
   [32]"From the fig tree learn its lesson: as soon as its branch becomes 
tender and puts out its leaves, you know that summer is near. [33]So 
also, when you see all these things, you know that he is near, at the 
very gates. [34][[Truly, I say to you]], [[this generation will not pass away until all these things take place]]. [35]Heaven and earth will pass away, 
but my words will not pass away.
   [36]"But concerning that day and hour no one knows, not even the 
angels of heaven, nor the Son, but the Father only. [37]For as were the 
days of Noah, so will be the coming of the Son of Man. [38]For as in 
those days before the flood they were eating and drinking, marrying and 
giving in marriage, until the day when Noah entered the ark, [39]and they 
were unaware until the flood came and swept them all away, so will be the 
coming of the Son of Man. [40]Then two men will be in the field; one will 
be taken and one left. [41]Two women will be grinding at the mill; one 
will be taken and one left. [42]Therefore, stay awake, for you do not 
know on what day your Lord is coming. [43]But know this, that if the 
master of the house had known in what part of the night the thief was 
coming, he would have stayed awake and would not have let his house be 
broken into. [44]Therefore you also must be ready, for the Son of Man is 
coming at an hour you do not expect.
   [45]"Who then is the faithful and wise servant, whom his master has 
set over his household, to give them their food at the proper time? 
[46]Blessed is that servant whom his master will find so doing when he 
comes. [47]Truly, I say to you, he will set him over all his possessions. 
[48]But if that wicked servant says to himself, 'My master is delayed,' 
[49]and begins to beat his fellow servants and eats and drinks with 
drunkards, [50]the master of that servant will come on a day when he does 
not expect him and at an hour he does not know [51]and will cut him in 
pieces and put him with the hypocrites. In that place there will be 
weeping and gnashing of teeth. (ESV)
<html><div class="esv"><h2>Matthew 24:14 <small class="audio">(<a href="http://www.gnpcb.org/esv/share/audio/smil?passage=Matthew+24%3A14">Listen</a>)</small></h2>

<div class="esv-text"><p><span class="verse-num-woc" id="v40024014-1">14&nbsp;</span><span class="woc">And this gospel of the kingdom will be proclaimed throughout the whole world as a testimony to all nations, and then the end will come.</span>  (<a href="http://www.esv.org" class="copyright">ESV</a>)</p>

</div>
</div></html>
   [15]"So when you see the abomination of desolation spoken of by the 
prophet Daniel, standing in the holy place (let the reader understand), 
(ESV)
   Then will appear in heaven ((the sign of the Son of Man(Jerusalem being surrounded by armies))), and then all 
the tribes of the earth will mourn, and they will see the Son of Man 
((coming("coming up" - see Dan reference))) on the clouds of heaven with power and great glory. (ESV)
   [31]"When the Son of Man comes in his glory, and all the angels with 
him, then he will sit on his glorious throne. [32]Before him will be 
gathered all the nations, and he will separate people one from another as 
a shepherd separates the sheep from the goats. [33]And he will place the 
sheep on his right, but the goats on the left. [34]Then the King will say 
to those on his right, 'Come, you who are blessed by my Father, inherit 
the kingdom prepared for you from the foundation of the world.+++^*[ (35)For I 
was hungry and you gave me food, I was thirsty and you gave me drink, I 
was a stranger and you welcomed me,(36) I was naked and you clothed me, I 
was sick and you visited me, I was in prison and you came to me.' ] here's one interpretation  that comes to mind regarding the nature of salvation: these people aren't saved because of the way they think (i.e. "label themselves"), but by the way they act (hold on - I'm not going to a "works" salvation).  Now, their works do not save them because "there is none that do good, no not one" (ed: get reference), but Christ is identifying himself with those works and "cleaning them up" so that they //become// righteous (just thinking out loud here) ===
[37]Then the righteous will answer him, saying, 'Lord, when did we see 
you hungry and feed you, or thirsty and give you drink? [38]And when did 
we see you a stranger and welcome you, or naked and clothe you? [39]And 
when did we see you sick or in prison and visit you?' [40]And the King 
will answer them, 'Truly, I say to you, as you did it to one of the least 
of these my brothers, you did it to me.'
   [41]"Then he will say to those on his left, 'Depart from me, you 
cursed, into the eternal fire prepared for the devil and his angels. 
[42]For I was hungry and you gave me no food, I was thirsty and you gave 
me no drink, [43]I was a stranger and you did not welcome me, naked and 
you did not clothe me, sick and in prison and you did not visit me.' 
[44]Then they also will answer, saying, 'Lord, when did we see you hungry 
or thirsty or a stranger or naked or sick or in prison, and did not 
minister to you?' [45]Then he will answer them, saying, 'Truly, I say to 
you, as you did not do it to one of the least of these, you did not do it 
to me.' [46]And these will go away into eternal punishment, but the 
righteous into eternal life." (ESV) +++^*[comment] Here again we see an apparent false distinction - we've all done "good" things now and then and we've all failed to do the good we knew we should have.  The only solution I can see right now is the PartialSoul===
   Jesus said to him, "You have said so. But I tell you, from now on you 
will see the Son of Man seated at the right hand of Power and coming on 
the clouds of heaven." (ESV)
What if we slightly re-phrased our definition of "miracle"?  What if we said that miracles aren't "anti-natural" or "supernatural", but "supra-natural", meaning "something that happened within the natural universe at the hands of a 'universe expert'".  Many scientific phenomenon we take for granted today would have been viewed as supernatural hundreds of years ago.  

So in this view, the actual "miraculous" events are still "natural", but they're simultaneously "supernatural" because of the spiritual agency that endows the situation with "super-expert" knowledge/influence.

This would shift the conversation back to "what is the nature of biblical spirituality"
<<tiddler [[Heb 10:25]]>>


This is often used to get people to stop slacking off in going to church.  I agree that we should go to church, but this is not the passage to use.  Hebrews is written to the Judeizers (sp?) i.e. those early Christians who were lapsing back into Jewish ways and basically separating themselves from the gentile Christians.  So this passage is telling them not to segregate into two groups but to continue to meet together and drop all the Hebrew rituals now that Christ has come
(I think I originally came across this from GregKoukle, but I might be wrong)

as a sidenote, notice how he talks about "the day drawing near", referring to Christ ComingOnClouds
see also [[Doug Wilson on Hebrews]]
<<search>><<closeAll>><<permaview>><<newTiddler>><<newJournal "DD MMM YYYY">><<saveChanges>><<tiddler TspotSidebar>><<slider chkSliderOptionsPanel OptionsPanel "options »" "Change TiddlyWiki advanced options">>
[[MonkeyPirateTiddlyWiki|http://mptw.tiddlyspot.com]] is a distribution of [[TiddlyWiki|http://www.tiddlywiki.com/]] created by Simon Baird. See [[the web site|http://mptw.tiddlyspot.com/]] for more information.
!!Upgrading ~MonkeyPirateTiddlyWiki
This "empty" ~MonkeyPirateTiddlyWiki file comes pre-installed with the core ~MonkeyPirateTiddlyWiki plugins. You can upgrade these core plugins to the latest version by doing the following:
* Click ImportTiddlers
* Click "Choose..." and select "~MptwUpgradeURL"
* Click "open"
* Click the checkbox in the first column heading to select all tiddlers
* Click "More actions..." and select "Import these tiddlers"

* Click "OK" to confirm you want to overwrite the tiddlers
* Save and reload
I don't post here much anymore, but if I'm feeling literary, I'll still occasionally post here:

[[The National Soul|http://thenationalsoul.wordpress.com/]]

where I'm slowly writing a book.
/***
| Name|MptwLayoutPlugin|
| Description|A package containing templates and css for the MonkeyPirateTiddlyWiki layout|
| Version|3.0 ($Rev: 2721 $)|
| Source|http://mptw.tiddlyspot.com/#MptwLayoutPlugin|
| Author|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
!Notes
Presumes you have TagglyTaggingPlugin installed. To enable this you should have a PageTemplate containing {{{[[MptwPageTemplate]]}}} and similar for ViewTemplate and EditTemplate.
***/
//{{{
// used in MptwViewTemplate
config.mptwDateFormat = 'DD/MM/YY';
config.mptwJournalFormat = 'Journal DD/MM/YY';
//config.mptwDateFormat = 'MM/0DD/YY';
//config.mptwJournalFormat = 'Journal MM/0DD/YY';

config.shadowTiddlers.GettingStarted += "\n\nSee also MonkeyPirateTiddlyWiki.";

merge(config.annotations,{
	MptwEditTemplate: "Contains the default MPTW EditTemplate. If you want to customise this rename it to EditTemplate",
	MptwViewTemplate: "Contains the default MPTW ViewTemplate. If you want to customise this rename it to ViewTemplate",
	MptwPageTemplate: "Contains the default MPTW PageTemplate. If you want to customise this rename it to PageTemplate",
	MptwStyleSheet:   "Contains the default MPTW ~StyleSheet. Designed to be included in StyleSheet tiddler using the double square bracketted notation like this: {{{[[MptwStyleSheet]]}}}"

});

//}}}

//{{{
merge(config.shadowTiddlers,{

'MptwEditTemplate':[
 "<!--{{{-->",
 "<!--- http://mptw.tiddlyspot.com/#MptwEditTemplate ($Rev: 2720 $) --->",
 "<div class=\"toolbar\" macro=\"toolbar +saveTiddler saveCloseTiddler closeOthers -cancelTiddler cancelCloseTiddler deleteTiddler\"></div>",
 "<div class=\"title\" macro=\"view title\"></div>",
 "<div class=\"editLabel\">Title</div><div class=\"editor\" macro=\"edit title\"></div>",
 "<div macro='annotations'></div>",
 "<div macro=\"showWhenExists EditPanelTemplate\">[[EditPanelTemplate]]</div>",
 "<div class=\"editLabel\">Tags</div><div class=\"editor\" macro=\"edit tags\"></div>",
 "<div macro='tiddler QuickEditToolbar'></div>",
 "<div class=\"editLabel\">Content</div><div class=\"editor\" macro=\"edit text\"></div>",

 "<div class=\"editorFooter\"><span macro=\"message views.editor.tagPrompt\"></span><span macro=\"tagChooser\"></span></div>",
 "<!--}}}-->"

].join("\n"),

'MptwPageTemplate':[
 "<!--{{{-->",
 "<!-- http://mptw.tiddlyspot.com/#MptwPageTemplate ($Rev: 1829 $) -->",
 "<div class='header' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>",
 "	<div class='headerShadow'>",
 "		<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;",
 "		<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>",
 "	</div>",
 "	<div class='headerForeground'>",
 "		<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;",
 "		<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>",
 "	</div>",
 "</div>",
 "<!-- horizontal MainMenu -->",
 "<div id='topMenu' refresh='content' tiddler='MainMenu'></div>",
 "<!-- original MainMenu menu -->",
 "<!-- <div id='mainMenu' refresh='content' tiddler='MainMenu'></div> -->",
 "<div id='sidebar'>",
 "	<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>",
 "	<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>",
 "</div>",
 "<div id='displayArea'>",
 "	<div id='messageArea'></div>",
 "	<div id='tiddlerDisplay'></div>",
 "</div>",
 "<!--}}}-->"

].join("\n"),

'MptwStyleSheet':[
 "/*{{{*/",
 "/* http://mptw.tiddlyspot.com/#MptwStyleSheet ($Rev: 2720 $) */",
 "",
 "/* a contrasting background so I can see where one tiddler ends and the other begins */",
 "body {",
 "	background: [[ColorPalette::TertiaryLight]];",
 "}",
 "",
 "/* sexy colours and font for the header */",
 ".headerForeground {",
 "	color: [[ColorPalette::PrimaryPale]];",
 "}",
 ".headerShadow, .headerShadow a {",
 "	color: [[ColorPalette::PrimaryMid]];",
 "}",
 "",
 "/* separate the top menu parts */",
 ".headerForeground, .headerShadow {",
 "	padding: 1em 1em 0;",
 "}",
 "",
 ".headerForeground, .headerShadow {",
 "	font-family: 'Trebuchet MS' sans-serif;",
 "	font-weight:bold;",
 "}",
 ".headerForeground .siteSubtitle {",
 "	color: [[ColorPalette::PrimaryLight]];",
 "}",
 ".headerShadow .siteSubtitle {",
 "	color: [[ColorPalette::PrimaryMid]];",
 "}",
 "",
 "/* make shadow go and down right instead of up and left */",
 ".headerShadow {",
 "	left: 1px;",
 "	top: 1px;",
 "}",
 "",
 "/* prefer monospace for editing */",
 ".editor textarea, .editor input {",
 "	font-family: 'Consolas' monospace;",
 "	background-color:[[ColorPalette::TertiaryPale]];",
 "}",
 "",
 "",
 "/* sexy tiddler titles */",
 ".title {",
 "	font-size: 250%;",
 "	color: [[ColorPalette::PrimaryLight]];",
 "	font-family: 'Trebuchet MS' sans-serif;",
 "}",
 "",
 "/* more subtle tiddler subtitle */",
 ".subtitle {",
 "	padding:0px;",
 "	margin:0px;",
 "	padding-left:0.5em;",
 "	font-size: 90%;",
 "	color: [[ColorPalette::TertiaryMid]];",
 "}",
 ".subtitle .tiddlyLink {",
 "	color: [[ColorPalette::TertiaryMid]];",
 "}",
 "",
 "/* a little bit of extra whitespace */",
 ".viewer {",
 "	padding-bottom:3px;",
 "}",
 "",
 "/* don't want any background color for headings */",
 "h1,h2,h3,h4,h5,h6 {",
 "	background: [[ColorPalette::Background]];",
 "	color: [[ColorPalette::Foreground]];",
 "}",
 "",
 "/* give tiddlers 3d style border and explicit background */",
 ".tiddler {",
 "	background: [[ColorPalette::Background]];",
 "	border-right: 2px [[ColorPalette::TertiaryMid]] solid;",
 "	border-bottom: 2px [[ColorPalette::TertiaryMid]] solid;",
 "	margin-bottom: 1em;",
 "	padding:1em 2em 2em 1.5em;",
 "}",
 "",
 "/* make options slider look nicer */",
 "#sidebarOptions .sliderPanel {",
 "	border:solid 1px [[ColorPalette::PrimaryLight]];",
 "}",
 "",
 "/* the borders look wrong with the body background */",
 "#sidebar .button {",
 "	border-style: none;",
 "}",
 "",
 "/* this means you can put line breaks in SidebarOptions for readability */",
 "#sidebarOptions br {",
 "	display:none;",
 "}",
 "/* undo the above in OptionsPanel */",
 "#sidebarOptions .sliderPanel br {",
 "	display:inline;",
 "}",
 "",
 "/* horizontal main menu stuff */",
 "#displayArea {",
 "	margin: 1em 15.7em 0em 1em; /* use the freed up space */",
 "}",
 "#topMenu br {",
 "	display: none;",
 "}",
 "#topMenu {",
 "	background: [[ColorPalette::PrimaryMid]];",
 "	color:[[ColorPalette::PrimaryPale]];",
 "}",
 "#topMenu {",
 "	padding:2px;",
 "}",
 "#topMenu .button, #topMenu .tiddlyLink, #topMenu a {",
 "	margin-left: 0.5em;",
 "	margin-right: 0.5em;",
 "	padding-left: 3px;",
 "	padding-right: 3px;",
 "	color: [[ColorPalette::PrimaryPale]];",
 "	font-size: 115%;",
 "}",
 "#topMenu .button:hover, #topMenu .tiddlyLink:hover {",
 "	background: [[ColorPalette::PrimaryDark]];",
 "}",
 "",
 "/* make 2.2 act like 2.1 with the invisible buttons */",
 ".toolbar {",
 "	visibility:hidden;",
 "}",
 ".selected .toolbar {",
 "	visibility:visible;",
 "}",
 "",
 "/* experimental. this is a little borked in IE7 with the button ",
 " * borders but worth it I think for the extra screen realestate */",
 ".toolbar { float:right; }",
 "",
 "/* Tagger Plugin users uncomment this.  from sb56637 */",
 "/*",
 ".popup li a {",
 "   display:inline;",
 "}",
 "*/",
 "",
 "/* make it print a little cleaner */",
 "@media print {",
 "	#topMenu {",
 "		display: none ! important;",
 "	}",
 "	/* not sure if we need all the importants */",
 "	.tiddler {",
 "		border-style: none ! important;",
 "		margin:0px ! important;",
 "		padding:0px ! important;",
 "		padding-bottom:2em ! important;",
 "	}",
 "	.tagglyTagging .button, .tagglyTagging .hidebutton {",
 "		display: none ! important;",
 "	}",
 "	.headerShadow {",
 "		visibility: hidden ! important;",
 "	}",
 "	.tagglyTagged .quickopentag, .tagged .quickopentag {",
 "		border-style: none ! important;",
 "	}",
 "	.quickopentag a.button, .miniTag {",
 "		display: none ! important;",
 "	}",
 "}",
 "/*}}}*/"

].join("\n"),

'MptwViewTemplate':[
 "<!--{{{-->",
 "<!--- http://mptw.tiddlyspot.com/#MptwViewTemplate ($Rev: 2247 $) --->",
 "",
 "<div class='toolbar'>",
 "	<span macro=\"showWhenTagged systemConfig\">",
 "		<span macro=\"toggleTag systemConfigDisable . '[[disable|systemConfigDisable]]'\"></span>",
 "	</span>",
 "	</span>",
 "	<span style=\"padding:1em;\"></span>",
 "	<span macro='toolbar closeTiddler closeOthers +editTiddler easyEdit deleteTiddler > fields syncing permalink references jump'></span> <span macro='newHere label:\"new here\"'></span>",
 "	<span macro='newJournalHere {{config.mptwJournalFormat?config.mptwJournalFormat:\"MM/0DD/YY\"}}'></span>",
 "</div>",
 "",
 "<div class=\"tagglyTagged\" macro=\"tags\"></div>",
 "",
 "<div class='titleContainer'>",
 "	<span class='title' macro='view title'></span>",
 "	<span macro=\"miniTag\"></span>",
 "</div>",
 "",
 "<div class='subtitle'>",
 "	<span macro='view modified date {{config.mptwDateFormat?config.mptwDateFormat:\"MM/0DD/YY\"}}'></span>",
 "	(<span macro='message views.wikified.createdPrompt'></span>",
 "	<span macro='view created date {{config.mptwDateFormat?config.mptwDateFormat:\"MM/0DD/YY\"}}'></span>)",
 "</div>",
 "",
 "<div macro=\"showWhenExists ViewPanelTemplate\">[[ViewPanelTemplate]]</div>",
 "",
 "<div macro=\"hideWhen tiddler.tags.containsAny(['css','html','pre','systemConfig']) && !tiddler.text.match('{{'+'{')\">",
 "	<div class='viewer' macro='view text wikified'></div>",
 "</div>",
 "<div macro=\"showWhen tiddler.tags.containsAny(['css','html','pre','systemConfig']) && !tiddler.text.match('{{'+'{')\">",
 "	<div class='viewer'><pre macro='view text'></pre></div>",
 "</div>",
 "",
 "<div macro=\"showWhenExists ViewDashboardTemplate\">[[ViewDashboardTemplate]]</div>",
 "",
 "<div class=\"tagglyTagging\" macro=\"tagglyTagging\"></div>",
 "",
 "<!--}}}-->"

].join("\n")

});
//}}}
For upgrading directly from tiddlyspot. See [[ImportTiddlers]].
URL: /proxy/mptw.tiddlyspot.com/upgrade.html
For upgrading. See [[ImportTiddlers]].
URL: http://mptw.tiddlyspot.com/upgrade.html
Although I will likely be jotting things down that belong in many different classifications, I have three main areas of interest:

#//''the Beginning ''//(the Young Earth perspective) [[here|YoungEarth]]
#//''the End ''//(a partial preterist view on end times) [[here|eschatology]] AKA Seek ye first the Kingdom of God
#//''the middle bits''// (the actual content of SpiritualWarfare ((not just the labels(<<tiddler NotJustTheLabels>>))) )
I suspect that subconsciously or otherwise, George Lucas and Gene Roddenberry were [[Post Millennialists|PostMillennialism]].  George has a model of the Millennial Kingdom period going, and Gene has an eternity life model happening.

Okay, okay, they're both a big big stretch, but its a nice thing to think about and explore when you're watching the movies with your kids.  Half the fun of exploring metaphors is pointing out where they fall apart.  But anyway, here's what I think and you can decide if you see the same things:

!Star Wars as the Millennial Kingdom
Its all about a grand republic of thousands of planets that for the most part has steadily grown stronger (although not without --sin-- "normal" crimes and petty rivalries) and more expansive over a --thousand years--  long period of time, and then --Satan is released for a time-- the Sith's chosen one comes to "balance the force" (i.e. tip the scales away from the long dominant good side), but in the end the bad guys are finally vanquished.


!Star Trek as the new heaven and new earth
This one is a bigger stretch, but I think that, just like the focus on ever expanding exploration in Star Trek, the eternal state, with our new bodies that like Jesus can come and go at will (can you say "transporter"), will be one of constantly exploring the wonders of God not only spiritually, but physically.  There are a lot of stars out there - maybe we'll actually get to explore them...


see also MyTolkienTheory
I think Tolkien was also a (closet) PostMillennialist

to be continued...(this one could take a while)
Lots of room here for counter arguement... will put it here a bit at a time

Here's a good start: [[The Wreck of the Titan vs the Titanic|http://en.wikipedia.org/wiki/Futility,_or_the_Wreck_of_the_Titan]]

the above mentioned book is a story that very closely matches the historic event that happened 14 years later.  Does that mean that the sinking of the Titanic is just a myth?
I think the best term for [[this idea|Partial Soul]] is "National Soul" as I see the soul as a micro version of the nation of Isreal (more on that later)
Okay, it ''//all//'' needs work, but these are the really incomplete topics
/***
|Name|NestedSlidersPlugin|
|Source|http://www.TiddlyTools.com/#NestedSlidersPlugin|
|Documentation|http://www.TiddlyTools.com/#NestedSlidersPluginInfo|
|Version|2.4.1|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.1|
|Type|plugin|
|Requires||
|Overrides||
|Description|show content in nest-able sliding/floating panels, without creating separate tiddlers for each panel's content|
This plugin adds new wiki syntax for embedding 'slider' panels directly into tiddler content.  
!!!!!Documentation

>see [[NestedSlidersPluginInfo]]
!!!!!Configuration
<<<
Enable animation for slider panels
<<option chkFloatingSlidersAnimate>> allow sliders to animate when opening/closing
>(note: This setting is in //addition// to the general option for enabling/disabling animation effects:
><<option chkAnimate>> enable animations (entire document)
>For slider animation to occur, you must also allow animation in general.

Debugging messages for 'lazy sliders' deferred rendering:
<<option chkDebugLazySliderDefer>> show debugging alert when deferring slider rendering
<<option chkDebugLazySliderRender>> show debugging alert when deferred slider is actually rendered

<<<
!!!!!Revisions
<<<
2008.04.01 - 2.4.1 open on hover also triggers document.onclick to close other transient sliders
2008.04.01 - 2.4.0 re-introduced 'open on hover' feature using "@" symbol
|please see [[NestedSlidersPluginInfo]] for additional revision details|
2005.11.03 - 1.0.0 initial public release.  Thanks to RodneyGomes, GeoffSlocock, and PaulPetterson for suggestions and experiments.
<<<
!!!!!Code
***/
//{{{
version.extensions.nestedSliders = {major: 2, minor: 4, revision: 1, date: new Date(2008,4,1)};
//}}}

//{{{
// options for deferred rendering of sliders that are not initially displayed
if (config.options.chkDebugLazySliderDefer==undefined) config.options.chkDebugLazySliderDefer=false;
if (config.options.chkDebugLazySliderRender==undefined) config.options.chkDebugLazySliderRender=false;
if (config.options.chkFloatingSlidersAnimate==undefined) config.options.chkFloatingSlidersAnimate=false;

// default styles for 'floating' class
setStylesheet(".floatingPanel { position:absolute; z-index:10; padding:0.5em; margin:0em; \
	background-color:#eee; color:#000; border:1px solid #000; text-align:left; }","floatingPanelStylesheet");
//}}}

//{{{
config.formatters.push( {
	name: "nestedSliders",
	match: "\\n?\\+{3}",
	terminator: "\\s*\\={3}\\n?",
	lookahead: "\\n?\\+{3}(\\+)?(\\([^\\)]*\\))?(\\!*)?(\\^(?:[^\\^\\*\\@\\[\\>]*\\^)?)?(\\*)?(\\@)?(?:\\{\\{([\\w]+[\\s\\w]*)\\{)?(\\[[^\\]]*\\])?(\\[[^\\]]*\\])?(?:\\}{3})?(\\#[^:]*\\:)?(\\>)?(\\.\\.\\.)?\\s*",
	handler: function(w)
		{
			lookaheadRegExp = new RegExp(this.lookahead,"mg");
			lookaheadRegExp.lastIndex = w.matchStart;
			var lookaheadMatch = lookaheadRegExp.exec(w.source)
			if(lookaheadMatch && lookaheadMatch.index == w.matchStart)
			{
				var defopen=lookaheadMatch[1];
				var cookiename=lookaheadMatch[2];
				var header=lookaheadMatch[3];
				var panelwidth=lookaheadMatch[4];
				var transient=lookaheadMatch[5];
				var hover=lookaheadMatch[6];
				var buttonClass=lookaheadMatch[7];
				var label=lookaheadMatch[8];
				var openlabel=lookaheadMatch[9];
				var panelID=lookaheadMatch[10];
				var blockquote=lookaheadMatch[11];
				var deferred=lookaheadMatch[12];

				// location for rendering button and panel
				var place=w.output;

				// default to closed, no cookie, no accesskey, no alternate text/tip
				var show="none"; var cookie=""; var key="";
				var closedtext=">"; var closedtip="";
				var openedtext="<"; var openedtip="";

				// extra "+", default to open
				if (defopen) show="block";

				// cookie, use saved open/closed state
				if (cookiename) {
					cookie=cookiename.trim().slice(1,-1);
					cookie="chkSlider"+cookie;
					if (config.options[cookie]==undefined)
						{ config.options[cookie] = (show=="block") }
					show=config.options[cookie]?"block":"none";
				}

				// parse label/tooltip/accesskey: [label=X|tooltip]
				if (label) {
					var parts=label.trim().slice(1,-1).split("|");
					closedtext=parts.shift();
					if (closedtext.substr(closedtext.length-2,1)=="=")	
						{ key=closedtext.substr(closedtext.length-1,1); closedtext=closedtext.slice(0,-2); }
					openedtext=closedtext;
					if (parts.length) closedtip=openedtip=parts.join("|");
					else { closedtip="show "+closedtext; openedtip="hide "+closedtext; }
				}

				// parse alternate label/tooltip: [label|tooltip]
				if (openlabel) {
					var parts=openlabel.trim().slice(1,-1).split("|");
					openedtext=parts.shift();
					if (parts.length) openedtip=parts.join("|");
					else openedtip="hide "+openedtext;
				}

				var title=show=='block'?openedtext:closedtext;
				var tooltip=show=='block'?openedtip:closedtip;

				// create the button
				if (header) { // use "Hn" header format instead of button/link
					var lvl=(header.length>5)?5:header.length;
					var btn = createTiddlyElement(createTiddlyElement(place,"h"+lvl,null,null,null),"a",null,buttonClass,title);
					btn.onclick=onClickNestedSlider;
					btn.setAttribute("href","javascript:;");
					btn.setAttribute("title",tooltip);
				}
				else
					var btn = createTiddlyButton(place,title,tooltip,onClickNestedSlider,buttonClass);
				btn.innerHTML=title; // enables use of HTML entities in label

				// set extra button attributes
				btn.setAttribute("closedtext",closedtext);
				btn.setAttribute("closedtip",closedtip);
				btn.setAttribute("openedtext",openedtext);
				btn.setAttribute("openedtip",openedtip);
				btn.sliderCookie = cookie; // save the cookiename (if any) in the button object
				btn.defOpen=defopen!=null; // save default open/closed state (boolean)
				btn.keyparam=key; // save the access key letter ("" if none)
				if (key.length) {
					btn.setAttribute("accessKey",key); // init access key
					btn.onfocus=function(){this.setAttribute("accessKey",this.keyparam);}; // **reclaim** access key on focus
				}
				btn.setAttribute("hover",hover?"true":"false");
				btn.onmouseover=function(event) {
					// optional 'open on hover' handling
					if (this.getAttribute("hover")=="true" && this.sliderPanel.style.display=='none') {
						document.onclick(event); // close transients
						onClickNestedSlider(event); // open this slider
					}
					// mouseover on button aligns floater position with button
					if (window.adjustSliderPos) window.adjustSliderPos(this.parentNode,this,this.sliderPanel);
				}

				// create slider panel
				var panelClass=panelwidth?"floatingPanel":"sliderPanel";
				if (panelID) panelID=panelID.slice(1,-1); // trim off delimiters
				var panel=createTiddlyElement(place,"div",panelID,panelClass,null);
				panel.button = btn; // so the slider panel know which button it belongs to
				btn.sliderPanel=panel; // so the button knows which slider panel it belongs to
				panel.defaultPanelWidth=(panelwidth && panelwidth.length>2)?panelwidth.slice(1,-1):"";
				panel.setAttribute("transient",transient=="*"?"true":"false");
				panel.style.display = show;
				panel.style.width=panel.defaultPanelWidth;
				panel.onmouseover=function(event) // mouseover on panel aligns floater position with button
					{ if (window.adjustSliderPos) window.adjustSliderPos(this.parentNode,this.button,this); }

				// render slider (or defer until shown) 
				w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;
				if ((show=="block")||!deferred) {
					// render now if panel is supposed to be shown or NOT deferred rendering
					w.subWikify(blockquote?createTiddlyElement(panel,"blockquote"):panel,this.terminator);
					// align floater position with button
					if (window.adjustSliderPos) window.adjustSliderPos(place,btn,panel);
				}
				else {
					var src = w.source.substr(w.nextMatch);
					var endpos=findMatchingDelimiter(src,"+++","===");
					panel.setAttribute("raw",src.substr(0,endpos));
					panel.setAttribute("blockquote",blockquote?"true":"false");
					panel.setAttribute("rendered","false");
					w.nextMatch += endpos+3;
					if (w.source.substr(w.nextMatch,1)=="\n") w.nextMatch++;
					if (config.options.chkDebugLazySliderDefer) alert("deferred '"+title+"':\n\n"+panel.getAttribute("raw"));
				}
			}
		}
	}
)

// TBD: ignore 'quoted' delimiters (e.g., "{{{+++foo===}}}" isn't really a slider)
function findMatchingDelimiter(src,starttext,endtext) {
	var startpos = 0;
	var endpos = src.indexOf(endtext);
	// check for nested delimiters
	while (src.substring(startpos,endpos-1).indexOf(starttext)!=-1) {
		// count number of nested 'starts'
		var startcount=0;
		var temp = src.substring(startpos,endpos-1);
		var pos=temp.indexOf(starttext);
		while (pos!=-1)  { startcount++; pos=temp.indexOf(starttext,pos+starttext.length); }
		// set up to check for additional 'starts' after adjusting endpos
		startpos=endpos+endtext.length;
		// find endpos for corresponding number of matching 'ends'
		while (startcount && endpos!=-1) {
			endpos = src.indexOf(endtext,endpos+endtext.length);
			startcount--;
		}
	}
	return (endpos==-1)?src.length:endpos;
}
//}}}

//{{{
window.onClickNestedSlider=function(e)
{
	if (!e) var e = window.event;
	var theTarget = resolveTarget(e);
	var theLabel = theTarget.firstChild.data;
	var theSlider = theTarget.sliderPanel
	var isOpen = theSlider.style.display!="none";

	// toggle label
	theTarget.innerHTML=isOpen?theTarget.getAttribute("closedText"):theTarget.getAttribute("openedText");
	// toggle tooltip
	theTarget.setAttribute("title",isOpen?theTarget.getAttribute("closedTip"):theTarget.getAttribute("openedTip"));

	// deferred rendering (if needed)
	if (theSlider.getAttribute("rendered")=="false") {
		if (config.options.chkDebugLazySliderRender)
			alert("rendering '"+theLabel+"':\n\n"+theSlider.getAttribute("raw"));
		var place=theSlider;
		if (theSlider.getAttribute("blockquote")=="true")
			place=createTiddlyElement(place,"blockquote");
		wikify(theSlider.getAttribute("raw"),place);
		theSlider.setAttribute("rendered","true");
	}
	// show/hide the slider
	if(config.options.chkAnimate && (!hasClass(theSlider,'floatingPanel') || config.options.chkFloatingSlidersAnimate))
		anim.startAnimating(new Slider(theSlider,!isOpen,e.shiftKey || e.altKey,"none"));
	else
		theSlider.style.display = isOpen ? "none" : "block";
	// reset to default width (might have been changed via plugin code)
	theSlider.style.width=theSlider.defaultPanelWidth;
	// align floater panel position with target button
	if (!isOpen && window.adjustSliderPos) window.adjustSliderPos(theSlider.parentNode,theTarget,theSlider);
	// if showing panel, set focus to first 'focus-able' element in panel
	if (theSlider.style.display!="none") {
		var ctrls=theSlider.getElementsByTagName("*");
		for (var c=0; c<ctrls.length; c++) {
			var t=ctrls[c].tagName.toLowerCase();
			if ((t=="input" && ctrls[c].type!="hidden") || t=="textarea" || t=="select")
				{ ctrls[c].focus(); break; }
		}
	}
	var cookie=theTarget.sliderCookie;
	if (cookie && cookie.length) {
		config.options[cookie]=!isOpen;
		if (config.options[cookie]!=theTarget.defOpen)
			saveOptionCookie(cookie);
		else { // remove cookie if slider is in default display state
			var ex=new Date(); ex.setTime(ex.getTime()-1000);
			document.cookie = cookie+"=novalue; path=/; expires="+ex.toGMTString();
		}
	}
	// prevent SHIFT-CLICK from being processed by browser (opens blank window... yuck!)
	// but allow plain click to bubble up to page background (to dismiss open popup, if any)
	if (e.shiftKey) { e.cancelBubble=true; if (e.stopPropagation) e.stopPropagation(); }
	return false;
}
//}}}

//{{{
// click in document background closes transient panels 
document.nestedSliders_savedOnClick=document.onclick;
document.onclick=function(ev) { if (!ev) var ev=window.event; var target=resolveTarget(ev);
	// call original click handler
	if (document.nestedSliders_savedOnClick)
		var retval=document.nestedSliders_savedOnClick.apply(this,arguments);
	// if click was inside a popup... leave transient panels alone
	var p=target; while (p) if (hasClass(p,"popup")) break; else p=p.parentNode; if (p) return retval;
	// if click was inside transient panel (or something contained by a transient panel), leave it alone
	var p=target; while (p)
		if ((hasClass(p,"floatingPanel")||hasClass(p,"sliderPanel"))&&p.getAttribute("transient")=="true") break;
		else p=p.parentNode;
	if (p) return retval;
	// otherwise, find and close all transient panels...
	var all=document.all?document.all:document.getElementsByTagName("DIV");
	for (var i=0; i<all.length; i++) {
		 // if it is not a transient panel, or the click was on the button that opened this panel, don't close it.
		if (all[i].getAttribute("transient")!="true" || all[i].button==target) continue;
		// otherwise, if the panel is currently visible, close it by clicking it's button
		if (all[i].style.display!="none") window.onClickNestedSlider({target:all[i].button}) 
	}
	return retval;
};
//}}}

//{{{
// adjust floating panel position based on button position
if (window.adjustSliderPos==undefined) window.adjustSliderPos=function(place,btn,panel) {
	if (hasClass(panel,"floatingPanel")) {
		var left=0;
		var top=btn.offsetHeight; 
		if (place.style.position!="relative") {
			var left=findPosX(btn);
			var top=findPosY(btn)+btn.offsetHeight;
			var p=place; while (p && !hasClass(p,'floatingPanel')) p=p.parentNode;
			if (p) { left-=findPosX(p); top-=findPosY(p); }
		}
		if (findPosX(btn)+panel.offsetWidth > getWindowWidth())  // adjust position to stay inside right window edge
			left-=findPosX(btn)+panel.offsetWidth-getWindowWidth()+15; // add extra 15px 'fudge factor'
		panel.style.left=left+"px"; panel.style.top=top+"px";
	}
}

function getWindowWidth() {
	if(document.width!=undefined)
		return document.width; // moz (FF)
	if(document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) )
		return document.documentElement.clientWidth; // IE6
	if(document.body && ( document.body.clientWidth || document.body.clientHeight ) )
		return document.body.clientWidth; // IE4
	if(window.innerWidth!=undefined)
		return window.innerWidth; // IE - general
	return 0; // unknown
}
//}}}

//{{{
// TW2.1 and earlier:
// hijack Slider animation handler 'stop' handler so overflow is visible after animation has completed
Slider.prototype.coreStop = Slider.prototype.stop;
Slider.prototype.stop = function()
	{ this.coreStop.apply(this,arguments); this.element.style.overflow = "visible"; }

// TW2.2+
// hijack start/stop handlers so overflow style is saved and restored after animation has completed
if (version.major+.1*version.minor+.01*version.revision>=2.2) {
/**
	Animator.prototype.core_startAnimating = Animator.prototype.startAnimating;
	Animator.prototype.startAnimating = function() {
		for(var t=0; t<arguments.length; t++)
			arguments[t].element.save_overflow=arguments[t].element.style.overflow;
		return this.core_startAnimating.apply(this,arguments);
	};
**/
	Morpher.prototype.coreStop = Morpher.prototype.stop;
	Morpher.prototype.stop = function() {
		this.coreStop.apply(this,arguments);
		this.element.style.overflow = this.element.save_overflow||"visible";
	};
}
//}}}
/***
|Name|NestedSlidersPluginInfo|
|Source|http://www.TiddlyTools.com/#NestedSlidersPlugin|
|Documentation|http://www.TiddlyTools.com/#NestedSlidersPluginInfo|
|Version|2.4.5|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.1|
|Type|documentation|
|Requires||
|Overrides||
|Description|documentation for NestedSlidersPlugin|
This plugin adds new wiki syntax for embedding 'slider' panels directly into tiddler content.
!!!!!Usage
<<<
Use {{{+++}}} and {{{===}}} to delimit the slider content.  You can also 'nest' these sliders as deep as you like (see complex nesting example below), so that expandable 'tree-like' hierarchical displays can be created.  This is most useful when converting existing in-line text content to create in-line annotations, footnotes, context-sensitive help, or other subordinate information displays.

Additional optional syntax elements let you specify
*default to open
*cookiename
*heading level
*floater (with optional CSS width value)
*transient display (clicking elsewhere closes panel)
*open on hover (without needing to click)
*custom class/label/tooltip/accesskey
*alternate label/tooltip (displayed when panel is open)
*panelID (for later use with {{{<<DOM>>}}} macro.  See [[DOMTweaksPlugin]])
*automatic blockquote style on panel
*deferred rendering of panel content
The complete syntax, using all options, is:
//{{{
++++(cookiename)!!!!!^width^*@{{class{[label=key|tooltip][altlabel|alttooltip]}}}#panelID:>...
content goes here
===
//}}}
where:
* ''"""+++""" (or """++++""") and """==="""''<br>marks the start and end of the slider definition, respectively.  When the extra {{{+}}} is used, the slider will be open when initially displayed.
* ''"""(cookiename)"""''<br>saves the slider opened/closed state, and restores this state whenever the slider is re-rendered.
* ''"""! through !!!!!"""''<br>displays the slider label using a formatted headline (Hn) style instead of a button/link style
* ''"""^width^ (or just ^)"""''<br>makes the slider 'float' on top of other content rather than shifting that content downward.  'width' must be a valid CSS value (e.g., "30em", "180px", "50%", etc.).  If omitted, the default width is "auto" (i.e., fit to content)
* ''"""*"""''<br>denotes "transient display": when a click occurs elsewhere in the document, the slider/floating panel will be automatically closed.  This is useful for creating 'pulldown menus' that automatically go away after they are used.  //Note: using SHIFT-click on a slider label will open/close that slider without triggering the automatic closing of any transient slider panels that are currently displayed, permitting ''temporary'' display of several transient panels at once.//
* ''"""@"""''<br>denotes "open on hover": the slider/floating panel will be automatically opened as soon as the mouse moves over the slider label, without requiring a click.
* ''"""{{class{[label=key|tooltip][altlabel|alttooltip]}}}"""''<br>uses label/tooltip/accesskey.  """{{class{...}}}""", """=key""", """|tooltip""" and """[altlabel|alttooltip]""" are optional.  'class' is any valid CSS class name, used to style the slider label text.  'key' must be a ''single letter only''.  altlabel/alttooltip specify alternative label/tooltip for use when slider/floating panel is displayed.  //Note: you can use HTML syntax within the label text to include HTML entities (e.g., {{{&raquo;}}} (&raquo;) or {{{&#x25ba;}}} (&#x25ba;), or even embedded images (e.g., {{{<img src="images/eric3.gif">}}}).//
* ''"""#panelID:"""''<br>defines a unique DOM element ID that is assigned to the panel element used to display the slider content.  This ID can then be used later to reposition the panel using the {{{<<DOM move id>>}}} macro (see [[DOMTweaksPlugin]]), or to access/modify the panel element through use of {{{document.getElementById(...)}}}) javascript code in a plugin or inline script.
* ''""">"""''<br>automatically adds blockquote formatting to slider content
* ''"""..."""''<br>defers rendering of closed sliders until the first time they are opened.  //Note: deferred rendering may produce unexpected results in some cases.  Use with care.//

//Note: to make slider definitions easier to read and recognize when editing a tiddler, newlines immediately following the {{{+++}}} 'start slider' or preceding the {{{===}}} 'end slider' sequence are automatically supressed so that excess whitespace is eliminated from the output.//

<<<
!!!!!Examples
<<<
simple in-line slider: 
{{{
+++
   content
===
}}}
+++
   content
===
----
use a custom label and tooltip: 
{{{
+++[label|tooltip]
   content
===
}}}
+++[label|tooltip]
   content
===
----
content automatically blockquoted: 
{{{
+++>
   content
===
}}}
+++>
   content
===
----
all options (except cookie) //(default open, heading, sized floater, transient, open on hover, class, label/tooltip/key, blockquoted, deferred)//
{{{
++++!!!^30em^*@{{big{[label=Z|click or press Alt-Z to open]}}}>...
   content
===
}}}
++++!!!^30em^*@{{big{[label=Z|click or press Alt-Z to open]}}}>...
   content
===
----
complex nesting example:
{{{
+++[get info...=I|click for information or press Alt-I]
	put some general information here,
	plus a floating panel with more specific info:
	+++^10em^[view details...|click for details]
		put some detail here, which could in turn contain a transient panel,
		perhaps with a +++^25em^*[glossary definition]explaining technical terms===
	===
===
}}}
+++[get info...=I|click for information or press Alt-I]
	put some general information here,
	plus a floating panel with more specific info:
	+++^10em^[view details...|click for details]
		put some detail here, which could in turn contain a transient panel,
		perhaps with a +++^25em^*[glossary definition]explaining technical terms===
	===
===
----
embedded image as slider button
{{{
+++[<img src=images/eric3.gif>|click me!]>
	{{big{OUCH!}}}
===
}}}
+++[<img src=images/eric3.gif>|click me!]>

	{{big{OUCH!}}}
===
<<<
!!!!!Revisions
<<<
2008.06.07 - 2.4.5 in 'onmouseover' handler for 'open on hover' slider buttons, use call() method when invoking document.onclick function (avoids error in IE)
2008.06.07 - 2.4.4 changed default for chkFloatingSlidersAnimate to FALSE to avoid clipping problem on some browsers (IE).  Updated Morpher hijack (again) to adjust regular sliderPanel styles as well as floatingPanel styles.
2008.05.07 - 2.4.3 updated Morpher hijack to adjust floatingPanel styles after animation without affecting other animated elements (i.e. popups).  Also, updated adjustSliderPos() to account for scrollwidth and use core findWindowWidth().
2008.04.02 - 2.4.2 in onClickNestedSlider, handle clicks on elements contained //within// slider buttons (e.g., when using HTML to display an image as a slider button).
2008.04.01 - 2.4.1 open on hover also triggers document.onclick to close other transient sliders
2008.04.01 - 2.4.0 re-introduced 'open on hover' feature using "@" symbol
2008.03.26 - 2.3.5 in document.onclick(), if click is in popup, don't dismiss transient panel (if any)
2008.01.08 - [*.*.*] plugin size reduction: documentation moved to ...Info tiddler
2007.12.28 - 2.3.4 added hijack for Animator.prototype.startAnimating().  Previously, the plugin code simply set the overflow to "visible" after animation.  This code tweak corrects handling of elements that were styled with overflow=hidden/auto/scroll before animation by saving the overflow style and then restoring it after animation has completed.
2007.12.17 - 2.3.3 use hasClass() instead of direct comparison to test for "floatingPanel" class.  Allows floating panels to have additional classes assigned to them (i.e., by AnimationEffectsPlugin).
2007.11.14 - 2.3.2 in onClickNestedSlider(), prevent SHIFT-click events from opening a new, empty browser window by setting "cancelBubble=true" and calling "stopPropagation()".  Note: SHIFT-click is still processed as a normal click (i.e., it toggles the slider panel display).  Also, using SHIFT-click will prevent 'transient' sliders from being automatically closed when another slider is opened, allowing you to *temporarily* display several transient sliders at once.
2007.07.26 - 2.3.1 in document.onclick(), propagate return value from hijacked core click handler to consume OR bubble up click as needed.  Fixes "IE click disease", whereby nearly every mouse click causes a page transition.
2007.07.20 - 2.3.0 added syntax for setting panel ID (#panelID:).  This allows individual slider panels to be repositioned within tiddler content simply by giving them a unique ID and then moving them to the desired location using the {{{<<DOM move id>>}}} macro.
2007.07.19 - 2.2.0 added syntax for alttext and alttip (button label and tooltip to be displayed when panel is open)
2007.07.14 - 2.1.2 corrected use of 'transient' attribute in IE to prevent (non-recursive) infinite loop
2007.07.12 - 2.1.0 replaced use of "*" for 'open/close on rollover' (which didn't work too well).  "*" now indicates 'transient' panels that are automatically closed if a click occurs somewhere else in the document.  This permits use of nested sliders to create nested "pulldown menus" that automatically disappear after interaction with them has been completed.  Also, in onClickNestedSlider(), use "theTarget.sliderCookie", instead of "this.sliderCookie" to correct cookie state tracking when automatically dismissing transient panels.
2007.06.10 - 2.0.5 add check to ensure that window.adjustSliderPanel() is defined before calling it (prevents error on shutdown when mouse event handlers are still defined)
2007.05.31 - 2.0.4 add handling to invoke adjustSliderPanel() for onmouseover events on slider button and panel.  This allows the panel position to be re-synced when the button position shifts due to changes in unrelated content above it on the page.  (thanks to Harsha for bug report)
2007.03.30 - 2.0.3 added chkFloatingSlidersAnimate (default to FALSE), so that slider animation can be disabled independent of the overall document animation setting (avoids strange rendering and focus problems in floating panels)
2007.03.01 - 2.0.2 for TW2.2+, hijack Morpher.prototype.stop so that "overflow:hidden" can be reset to "overflow:visible" after animation ends
2007.03.01 - 2.0.1 in hijack for Slider.prototype.stop, use apply() to pass params to core function
2006.07.28 - 2.0.0 added custom class syntax around label/tip/key syntax: {{{{{classname{[label=key|tip]}}}}}}
2006.07.25 - 1.9.3 when parsing slider, save default open/closed state in button element, then in onClickNestedSlider(), if slider state matches saved default, instead of saving cookie, delete it.  Significantly reduces the 'cookie overhead' when default slider states are used.
2006.06.29 - 1.9.2 in onClickNestedSlider(), when setting focus to first control, skip over type="hidden"

2006.06.22 - 1.9.1 added panel.defaultPanelWidth to save requested panel width, even after resizing has changed the style value
2006.05.11 - 1.9.0 added optional '^width^' syntax for floating sliders and '=key' syntax for setting an access key on a slider label
2006.05.09 - 1.8.0 in onClickNestedSlider(), when showing panel, set focus to first child input/textarea/select element
2006.04.24 - 1.7.8 in adjustSliderPos(), if floating panel is contained inside another floating panel, subtract offset of containing panel to find correct position
2006.02.16 - 1.7.7 corrected deferred rendering to account for use-case where show/hide state is tracked in a cookie
2006.02.15 - 1.7.6 in adjustSliderPos(), ensure that floating panel is positioned completely within the browser window (i.e., does not go beyond the right edge of the browser window)
2006.02.04 - 1.7.5 add 'var' to unintended global variable declarations to avoid FireFox 1.5.0.1 crash bug when assigning to globals
2006.01.18 - 1.7.4 only define adjustSliderPos() function if it has not already been provided by another plugin.  This lets other plugins 'hijack' the function even when they are loaded first.
2006.01.16 - 1.7.3 added adjustSliderPos(place,btn,panel,panelClass) function to permit specialized logic for placement of floating panels.  While it provides improved placement for many uses of floating panels, it exhibits a relative offset positioning error when used within *nested* floating panels.  Short-term workaround is to only adjust the position for 'top-level' floaters.
2006.01.16 - 1.7.2 added button property to slider panel elements so that slider panel can tell which button it belongs to.  Also, re-activated and corrected animation handling so that nested sliders aren't clipped by hijacking Slider.prototype.stop so that "overflow:hidden" can be reset to "overflow:visible" after animation ends
2006.01.14 - 1.7.1 added optional "^" syntax for floating panels.  Defines new CSS class, ".floatingPanel", as an alternative for standard in-line ".sliderPanel" styles.
2006.01.14 - 1.7.0 added optional "*" syntax for rollover handling to show/hide slider without requiring a click (Based on a suggestion by tw4efl)
2006.01.03 - 1.6.2 When using optional "!" heading style, instead of creating a clickable "Hn" element, create an "A" element inside the "Hn" element.  (allows click-through in SlideShowPlugin, which captures nearly all click events, except for hyperlinks)
2005.12.15 - 1.6.1 added optional "..." syntax to invoke deferred ('lazy') rendering for initially hidden sliders
removed checkbox option for 'global' application of lazy sliders
2005.11.25 - 1.6.0 added optional handling for 'lazy sliders' (deferred rendering for initially hidden sliders)
2005.11.21 - 1.5.1 revised regular expressions: if present, a single newline //preceding// and/or //following// a slider definition will be suppressed so start/end syntax can be place on separate lines in the tiddler 'source' for improved readability.  Similarly, any whitespace (newlines, tabs, spaces, etc.) trailing the 'start slider' syntax or preceding the 'end slider' syntax is also suppressed.
2005.11.20 - 1.5.0 added (cookiename) syntax for optional tracking and restoring of slider open/close state
2005.11.11 - 1.4.0 added !!!!! syntax to render slider label as a header (Hn) style instead of a button/link style
2005.11.07 - 1.3.0 removed alternative syntax {{{(((}}} and {{{)))}}} (so they can be used by other formatting extensions) and simplified/improved regular expressions to trim multiple excess newlines
2005.11.05 - 1.2.1 changed name to NestedSlidersPlugin
2005.11.04 - 1.2.0 added alternative character-mode syntax {{{(((}}} and {{{)))}}}
tweaked "eat newlines" logic for line-mode {{{+++}}} and {{{===}}} syntax
2005.11.03 - 1.1.1 fixed toggling of default tooltips ("more..." and "less...") when a non-default button label is used.  code cleanup, added documentation
2005.11.03 - 1.1.0 changed delimiter syntax from {{{(((}}} and {{{)))}}} to {{{+++}}} and {{{===}}}.  changed name to EasySlidersPlugin
2005.11.03 - 1.0.0 initial public release

<<<
/***
| Name:|NewHerePlugin|
| Description:|Creates the new here and new journal macros|
| Version:|3.0 ($Rev: 1845 $)|
| Date:|$Date: 2007-03-16 15:19:22 +1000 (Fri, 16 Mar 2007) $|
| Source:|http://mptw.tiddlyspot.com/#NewHerePlugin|
| Author:|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
***/
//{{{
merge(config.macros, {
	newHere: {
		handler: function(place,macroName,params,wikifier,paramString,tiddler) {
			wikify("<<newTiddler "+paramString+" tag:[["+tiddler.title+"]]>>",place,null,tiddler);
		}
	},
	newJournalHere: {
		handler: function(place,macroName,params,wikifier,paramString,tiddler) {
			wikify("<<newJournal "+paramString+" tag:[["+tiddler.title+"]]>>",place,null,tiddler);
		}
	}
});

//}}}
/***
| Name:|NewMeansNewPlugin|
| Description:|If 'New Tiddler' already exists then create 'New Tiddler (1)' and so on|
| Version:|1.0 ($Rev: 2263 $)|
| Date:|$Date: 2007-06-13 04:22:32 +1000 (Wed, 13 Jun 2007) $|
| Source:|http://mptw.tiddlyspot.com/empty.html#NewMeansNewPlugin|
| Author:|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
***/
//{{{

String.prototype.getNextFreeName = function() {
       var numberRegExp = / \(([0-9]+)\)$/;
       var match = numberRegExp.exec(this);
       if (match) {
               var num = parseInt(match[1]) + 1;
               return this.replace(numberRegExp," ("+num+")");
       }
       else {
               return this + " (1)";
       }
}

config.macros.newTiddler.getName = function(newName) {
       while (store.getTiddler(newName))
               newName = newName.getNextFreeName();
       return newName;
}


config.macros.newTiddler.onClickNewTiddler = function()
{
	var title = this.getAttribute("newTitle");
	if(this.getAttribute("isJournal") == "true") {
		var now = new Date();
		title = now.formatString(title.trim());
	}

	title = config.macros.newTiddler.getName(title); // <--- only changed bit

	var params = this.getAttribute("params");
	var tags = params ? params.split("|") : [];
	var focus = this.getAttribute("newFocus");
	var template = this.getAttribute("newTemplate");
	var customFields = this.getAttribute("customFields");
	story.displayTiddler(null,title,template,false,null,null);
	var tiddlerElem = document.getElementById(story.idPrefix + title);
	if(customFields)
		story.addCustomFields(tiddlerElem,customFields);
	var text = this.getAttribute("newText");
	if(typeof text == "string")
		story.getTiddlerField(title,"text").value = text.format([title]);
	for(var t=0;t<tags.length;t++)
		story.setTiddlerTag(title,tags[t],+1);
	story.focusTiddler(title,focus);
	return false;
};

//}}}
I mean, sure, we should "put on the armour of God", but what does it really mean to e.g. put on the helmet of Salvation?  I can tell you what it doesn't mean - It's not "visualize putting a shiny helmet on - there, now your protected from evil"
"Evangilism to Evangelicals"
Stand to Reason: 1800 227-5278 
Bible Answer Man:  1-888-ASK-HANK (275-4265) Monday through Friday between 5:30pm and 8:00pm Eastern 
the Gary DeMar Show:  email questions to mail@americanvision.org
the Narrow Mind:  1-800-466-1873, 9AM west coast time (different themes each day)
Background: #fff
Foreground: #000
PrimaryPale: #8cf
PrimaryLight: #18f
PrimaryMid: #04b
PrimaryDark: #014
SecondaryPale: #ffc
SecondaryLight: #fe8
SecondaryMid: #db4
SecondaryDark: #841
TertiaryPale: #eee
TertiaryLight: #ccc
TertiaryMid: #999
TertiaryDark: #666
Error: #f88
[[net bible|http://net.bible.org/home.php]]
[[studylight.org|http://studylight.org/]]
[[blueletter bible|http://blueletterbible.com]]
+++^*@[John Calvin's Commentaries]
very good (according to GaryDeMar) - see http://www.ccel.org/ccel/calvin/commentaries.i.html
===
First proposed by Anselm (as told by RC Sproul)
*as opposed to [[Cosmological arguement for the existence of God]] "look at the universe"
* and [[Teleological arguement for the existence of God]] re: design & purpose

Arguement from being (ontology is science of being)
The way he states it is important:
"God is that, than which no greater can be conceived"
"For God to be (the above) he must exist in reality as well as in the mind - he must have real being and not just hypothetical being"

I'll have to admit I couldn't follow RC Sproul's explanation, other than it seems that he's saying "if you use the word 'being' in the arguement, it means by definition that the thing actually exists, i.e. its not hypothetical".  That doesn't actually sound like a good arguement, but maybe I just don't understand...
<<tiddler TspotOptions>>These InterfaceOptions for customising TiddlyWiki are saved in your browser

Your username for signing your edits. Write it as a WikiWord (eg JoeBloggs)

<<option txtUserName>>
<<option chkSaveBackups>> SaveBackups
<<option chkAutoSave>> AutoSave

<<option chkRegExpSearch>> RegExpSearch
<<option chkCaseSensitiveSearch>> CaseSensitiveSearch
<<option chkAnimate>> EnableAnimations

----
Also see AdvancedOptions
/***
|Name|AOverflowTheme|
|Description|the standard theme with overflowing layout|
|Author|[[FND]]|
|Source|http://cleanlayout.tiddlyspot.com/#FlexibilityTest|
|PageTemplate|AOverflowTheme##PageTemplate|
|ViewTemplate|AViewTemplate|
|EditTemplate|AEditTemplate|
|StyleSheet|AOverflowTheme##StyleSheet|
***/
!PageTemplate
<!--{{{-->
<div id='header' class='header' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>

<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle##Overflow'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle##Overflow'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>

</div>
<div id='toolBar' refresh='content' tiddler='ToolBar'></div>
</div>
<div id='topMenu' refresh='content' tiddler='TopMenu'></div>
[[OPageTemplateBody]]
<!--}}}-->
!StyleSheet
[[StyleSheet]]
[[RoundedStyle]]
[[TopMenuStyle]]
/*{{{*/
#mainMenu {
	position: static;
	float: left;
	width: auto;
	padding: 1.5em 0.5em 0.5em 0.5em;
	font-size:1.1em;
	line-height: 1.6em;
	text-align: right;
}

#sidebar {
	position: static;
	float: right;
	margin-right: 3px;
	width: 16em;
	font-size: 0.9em;
}

#displayArea {
	display: inline-block; /* IE bugfix: give layout (hasLayout = true) */
}
#displayArea {
	display: block; /* restore proper behavior (see IE bugfix above) */
	overflow: hidden;
	margin: 1em 1em 0;
}
/*}}}*/
Infant baptism
From Wikipedia, the free encyclopedia
  (Redirected from Paedobaptist)
 
	This article may contain original research or unverified claims.
Please improve the article by adding references. See the talk page for details. (March 2007)
 

In Christian religious practice,'' infant baptism'' is the baptism of young children or infants. In theological discussions, the practice is sometimes referred to as paedobaptism or pedobaptism from the Greek pais meaning "child." The practice is sometimes contrasted with what is called "believer's baptism," or credobaptism, from the Latin word credo meaning "I believe", which is the religious practice of baptizing only individuals who personally confess faith in Jesus, therefore excluding small children.

Most Christian churches practice infant baptism.[1] Among them are the Roman Catholic Church, the Eastern Orthodox Church, Oriental Orthodoxy, the Anglican Communion, Lutherans, Presbyterians, Methodists, the Assyrian Church of the East, the Church of the Nazarene,[2] the Reformed Church in America,[3] the United Church of Christ (UCC) and the Continental Reformed.

//''Groups within the Protestant tradition that reject infant baptism include''// Baptists, most Pentecostals, Mennonites, Amish, Community of Christ,Plymouth Brethren, Seventh-day Adventists, most non-denominational churches and other Arminian denominations. Infant baptism is also excluded by Jehovah's Witnesses, Christadelphians and Latter-day Saints.
/***
|''Name''|PaletteViewMacro|
|''Version''|0.2|
|''Author''|FND|
|''Source''|[[FND's DevPad|http://devpad.tiddlyspot.com/#PaletteViewMacro]]|
|''License''|[[Creative Commons Attribution-ShareAlike 3.0 License|http://creativecommons.org/licenses/by-sa/3.0/]]|
|''~CoreVersion''|2.1|
|''Type''|macro|
|''Requires''|N/A|
|''Overrides''|N/A|
|''Description''|Displays color palettes.|
!Notes
There is also [[ViewPalettePlugin|http://simon.tiddlyspot.com/#ViewPalettePlugin]], which currently does not work with TiddlyWiki v2.2 though.
!Usage
{{{
<<paletteView [tiddler name]>>
}}}
!!Example
<<paletteView [[ColorPalette]]>>

!Revision History
!!v0.1 (2007-11-18)
* initial release
!!v0.2 (2007-11-20)
* limited processing to slices containing [[actual color values|http://www.w3.org/TR/CSS21/syndata.html#color-units]]
* changed fallback value to the tiddler the macro is called from (instead of using [[ColorPalette]])
!To Do
* selection list for all available palettes (tag-based)
* parameter for custom table class
* customizable column order
* documentation (e.g. using from within [[ViewTemplate]])
!Code
***/
//{{{
config.macros.paletteView = {};

config.macros.paletteView.handler = function(place, macroName, params, wikifier, paramString, tiddler) {
	var title = params[0] || tiddler.title;
	//var palettes = store.getTaggedTiddlers(params[0]); // DEBUG: yet to be implemented
	var colors = store.calcAllSlices(title);
	var labels = [];
	for(var c in colors) {
		if(this.isColor(colors[c])) {
			labels.push(c);
		}
	}
	if(labels.length > 0) {
		var output = "|!Sample|!Value|!Name|h\n";
		for(var i = 0; i < labels.length; i++) {
			output += "|padding:0 4em;background-color:" + colors[labels[i]] + ";&nbsp;|"
				+ "{{{" + colors[labels[i]] + "}}}|"

				+ "[[" + labels[i] + "|" + title + "]]|\n";
		}
		wikify(output, place);
	}
};

config.macros.paletteView.isColor = function(s) {
	var colors = ["Black", "Green", "Silver", "Lime", "Gray", "Olive", "White", "Yellow",
		"Maroon", "Navy", "Red", "Blue", "Purple", "Teal", "Fuchsia", "Aqua", "Orange"];
	var match = s.match(/^#[0-9A-F]{3}$|^#[0-9A-F]{6}$|^RGB\([\d,\s]{5,}\)$/i);
	if(match) return true;
	if(colors.contains(s)) return true;
	return false;
};
//}}}
(a.k.a. "Composite Soul", i.e. I can't make up my mind what to call it (my mind is divided on the matter - ha ha) aka [[National Soul]])

The idea that upon judgment the "good parts" of our soul / character that Christ identifies with (or placed there) will be re-united with our DNA that God designed us with in our resurrected bodies, and those other  bad moments / traits will be destroyed and never again re-occur.

If this is correct, then what's the point of being a "declared Christian"?  Don't you want to contribute to how much of you lasts to see eternity?, or are you content to be a clean, empty slate like the infant that dies "pre-maturely".  I'm sure they'd both be good, but I think living this life contributing to eternity is far more interesting and honoring to God.

WhythisIsntUniversalism
(still thinking about this)

this is based primarily upon instances in scripture that appear to be speaking to an action or attitude, but speaks as if towards the entire person.  See PartialSoulExamples
these are examples that seem to suggest that the human soul is not an indivisible whole, but rather composite in nature, and therefore (I think) destined for rennovations in the FinalJudgment - parts of us heading for eternity (thanks to the work of Christ) and parts for destruction (in [[Hell]])

I'll add to this as I think of them / come across them
/***
|''Name:''|PasswordOptionPlugin|
|''Description:''|Extends TiddlyWiki options with non encrypted password option.|
|''Version:''|1.0.2|
|''Date:''|Apr 19, 2007|
|''Source:''|http://tiddlywiki.bidix.info/#PasswordOptionPlugin|
|''Author:''|BidiX (BidiX (at) bidix (dot) info)|
|''License:''|[[BSD open source license|http://tiddlywiki.bidix.info/#%5B%5BBSD%20open%20source%20license%5D%5D ]]|
|''~CoreVersion:''|2.2.0 (Beta 5)|
***/
//{{{
version.extensions.PasswordOptionPlugin = {
	major: 1, minor: 0, revision: 2, 
	date: new Date("Apr 19, 2007"),
	source: 'http://tiddlywiki.bidix.info/#PasswordOptionPlugin',
	author: 'BidiX (BidiX (at) bidix (dot) info',
	license: '[[BSD open source license|http://tiddlywiki.bidix.info/#%5B%5BBSD%20open%20source%20license%5D%5D]]',
	coreVersion: '2.2.0 (Beta 5)'
};

config.macros.option.passwordCheckboxLabel = "Save this password on this computer";
config.macros.option.passwordInputType = "password"; // password | text
setStylesheet(".pasOptionInput {width: 11em;}\n","passwordInputTypeStyle");

merge(config.macros.option.types, {
	'pas': {
		elementType: "input",
		valueField: "value",
		eventName: "onkeyup",
		className: "pasOptionInput",
		typeValue: config.macros.option.passwordInputType,
		create: function(place,type,opt,className,desc) {
			// password field
			config.macros.option.genericCreate(place,'pas',opt,className,desc);
			// checkbox linked with this password "save this password on this computer"

			config.macros.option.genericCreate(place,'chk','chk'+opt,className,desc);			
			// text savePasswordCheckboxLabel
			place.appendChild(document.createTextNode(config.macros.option.passwordCheckboxLabel));
		},
		onChange: config.macros.option.genericOnChange
	}
});

merge(config.optionHandlers['chk'], {
	get: function(name) {
		// is there an option linked with this chk ?
		var opt = name.substr(3);
		if (config.options[opt]) 
			saveOptionCookie(opt);
		return config.options[name] ? "true" : "false";
	}
});

merge(config.optionHandlers, {
	'pas': {
 		get: function(name) {
			if (config.options["chk"+name]) {
				return encodeCookie(config.options[name].toString());
			} else {
				return "";
			}
		},
		set: function(name,value) {config.options[name] = decodeCookie(value);}
	}
});

// need to reload options to load passwordOptions
loadOptionsCookie();

/*
if (!config.options['pasPassword'])
	config.options['pasPassword'] = '';

merge(config.optionsDesc,{
		pasPassword: "Test password"
	});
*/
//}}}
Is that your moral opinion?  (if not, why do you care about what anyone teaches about anything?)

"ought" is a moral word
[[Perseverance of the Saints Scriptures]]
Perseverance Of The Saints

(Job 17:9) “The righteous also shall hold on his way, and he that hath clean hands shall be stronger and stronger.”

(Psalms 1:3) “And he shall be like a tree planted by the rivers of water, that bringeth forth his fruit in his season; his leaf also shall not wither; and whatsoever he doeth shall prosper.”

(Psalms 23) “A Psalm of David. The LORD is my shepherd; I shall not want.
{2} He maketh me to lie down in green pastures: he leadeth me beside the still waters.
{3} He restoreth my soul: he leadeth me in the paths of righteousness for his name’s sake.
{4} Yea, though I walk through the valley of the shadow of death, I will fear no evil: for thou art with me; thy rod and thy staff they comfort me.
{5} Thou preparest a table before me in the presence of mine enemies: thou anointest my head with oil; my cup runneth over.
{6} Surely goodness and mercy shall follow me all the days of my life: and I will dwell in the house of the LORD for ever.”

(Psalms 34:7) “The angel of the LORD encampeth round about them that fear him, and delivereth them.”

(Psalms 48:14) “For this God is our God for ever and ever: he will be our guide even unto death.”

(Psalms 92:12) “The righteous shall flourish like the palm tree: he shall grow like a cedar in Lebanon.”

(Psalms 125:1) “A Song of degrees. They that trust in the LORD shall be as mount Zion, which cannot be removed, but abideth for ever.”

(Psalms 138:8) “The LORD will perfect that which concerneth me: thy mercy, O LORD, endureth for ever: forsake not the works of thine own hands.”

(Ecclesiastes 3:14) “I know that, whatsoever God doeth, it shall be for ever: nothing can be put to it, nor any thing taken from it: and God doeth it, that men should fear before him.”

(Isaiah 46:4) “And even to your old age I am he; and even to hoar hairs will I carry you: I have made, and I will bear; even I will carry, and will deliver you.”

(Jeremiah 32:40) “And I will make an everlasting covenant with them, that I will not turn away from them, to do them good; but I will put my fear in their hearts, that they shall not depart from me.”

(Ezekiel 11:19-20) “And I will give them one heart, and I will put a new spirit within you; and I will take the stony heart out of their flesh, and will give them an heart of flesh:
{20} That they may walk in my statutes, and keep mine ordinances, and do them: and they shall be my people, and I will be their God.”

(Matthew 7:24) “Therefore whosoever heareth these sayings of mine, and doeth them, I will liken him unto a wise man, which built his house upon a rock:”

(Matthew 10:20) “For it is not ye that speak, but the Spirit of your Father which speaketh in you.”

(John 4:14) “But whosoever drinketh of the water that I shall give him shall never thirst; but the water that I shall give him shall be in him a well of water springing up into everlasting life.”

(John 5:24) “Verily, verily, I say unto you, He that heareth my word, and believeth on him that sent me, hath everlasting life, and shall not come into condemnation; but is passed from death unto life.”

(John 6:37-40) “All that the Father giveth me shall come to me; and him that cometh to me I will in no wise cast out.
{38} For I came down from heaven, not to do mine own will, but the will of him that sent me.
{39} And this is the Father’s will which hath sent me, that of all which he hath given me I should lose nothing, but should raise it up again at the last day.
{40} And this is the will of him that sent me, that every one which seeth the Son, and believeth on him, may have everlasting life: and I will raise him up at the last day.”

(John 6:47) “Verily, verily, I say unto you, He that believeth on me hath everlasting life.”

(John 6:51) “I am the living bread which came down from heaven: if any man eat of this bread, he shall live for ever: and the bread that I will give is my flesh, which I will give for the life of the world.”

(John 10:28-30) “And I give unto them eternal life; and they shall never perish, neither shall any man pluck them out of my hand.
{29} My Father, which gave them me, is greater than all; and no man is able to pluck them out of my Father’s hand.
{30} I and my Father are one.”

(John 11:25) “Jesus said unto her, I am the resurrection, and the life: he that believeth in me, though he were dead, yet shall he live:”

(John 17:24) “Father, I will that they also, whom thou hast given me, be with me where I am; that they may behold my glory, which thou hast given me: for thou lovedst me before the foundation of the world.”

(Romans 4:8) “Blessed is the man to whom the Lord will not impute sin.”

(Romans 6:23) “For the wages of sin is death; but the gift of God is eternal life through Jesus Christ our Lord.”

(Romans 8:17) “And if children, then heirs; heirs of God, and joint-heirs with Christ; if so be that we suffer with him, that we may be also glorified together.”

(Romans 8:28-39) “And we know that all things work together for good to them that love God, to them who are the called according to his purpose.
{29} For whom he did foreknow, he also did predestinate to be conformed to the image of his Son, that he might be the firstborn among many brethren.
{30} Moreover whom he did predestinate, them he also called: and whom he called, them he also justified: and whom he justified, them he also glorified.
{31} What shall we then say to these things? If God be for us, who can be against us?
{32} He that spared not his own Son, but delivered him up for us all, how shall he not with him also freely give us all things?
{33} Who shall lay any thing to the charge of God’s elect? It is God that justifieth.
{34} Who is he that condemneth? It is Christ that died, yea rather, that is risen again, who is even at the right hand of God, who also maketh intercession for us.
{35} Who shall separate us from the love of Christ? shall tribulation, or distress, or persecution, or famine, or nakedness, or peril, or sword?
{36} As it is written, For thy sake we are killed all the day long; we are accounted as sheep for the slaughter.
{37} Nay, in all these things we are more than conquerors through him that loved us.
{38} For I am persuaded, that neither death, nor life, nor angels, nor principalities, nor powers, nor things present, nor things to come,
{39} Nor height, nor depth, nor any other creature, shall be able to separate us from the love of God, which is in Christ Jesus our Lord.”

(Romans 11:29) “For the gifts and calling of God are without repentance.”

(Romans 14:4) “Who art thou that judgest another man’s servant? to his own master he standeth or falleth. Yea, he shall be holden up: for God is able to make him stand.”

(1 Corinthians 10:13) “There hath no temptation taken you but such as is common to man: but God is faithful, who will not suffer you to be tempted above that ye are able; but will with the temptation also make a way to escape, that ye may be able to bear it.”

(2 Corinthians 2:14) “Now thanks be unto God, which always causeth us to triumph in Christ, and maketh manifest the savour of his knowledge by us in every place.”

(2 Corinthians 4:8-9) “We are troubled on every side, yet not distressed; we are perplexed, but not in despair;
{9} Persecuted, but not forsaken; cast down, but not destroyed;”

(2 Corinthians 4:14) “Knowing that he which raised up the Lord Jesus shall raise up us also by Jesus, and shall present us with you.”

(2 Corinthians 9:8) “And God is able to make all grace abound toward you; that ye, always having all sufficiency in all things, may abound to every good work:”

(Ephesians 1:5) “Having predestinated us unto the adoption of children by Jesus Christ to himself, according to the good pleasure of his will,”

(Ephesians 1:14) “Which is the earnest of our inheritance until the redemption of the purchased possession, unto the praise of his glory.”

(Ephesians 4:30) “And grieve not the holy Spirit of God, whereby ye are sealed unto the day of redemption.”

(Philippians 1:6) “Being confident of this very thing, that he which hath begun a good work in you will perform it until the day of Jesus Christ:”

(2 Timothy 2:19) “Nevertheless the foundation of God standeth sure, having this seal, The Lord knoweth them that are his. And, Let every one that nameth the name of Christ depart from iniquity.”

(2 Timothy 4:18) “And the Lord shall deliver me from every evil work, and will preserve me unto his heavenly kingdom: to whom be glory for ever and ever. Amen.”

(Hebrews 7:25) “Wherefore he is able also to save them to the uttermost that come unto God by him, seeing he ever liveth to make intercession for them.”

(Hebrews 10:14) “For by one offering he hath perfected for ever them that are sanctified.”

(1 John 5:13) “These things have I written unto you that believe on the name of the Son of God; that ye may know that ye have eternal life, and that ye may believe on the name of the Son of God.”

(Revelation 3:5) “He that overcometh, the same shall be clothed in white raiment; and I will not blot out his name out of the book of life, but I will confess his name before my Father, and before his angels.”

(Revelation 13:8) “And all that dwell upon the earth shall worship him, whose names are not written in the book of life of the Lamb slain from the foundation of the world.”

(Revelation 17:8) “The beast that thou sawest was, and is not; and shall ascend out of the bottomless pit, and go into perdition: and they that dwell on the earth shall wonder, whose names were not written in the book of life from the foundation of the world, when they behold the beast that was, and is not, and yet is.”

(Revelation 20:12-15) “And I saw the dead, small and great, stand before God; and the books were opened: and another book was opened, which is the book of life: and the dead were judged out of those things which were written in the books, according to their works.
{13} And the sea gave up the dead which were in it; and death and hell delivered up the dead which were in them: and they were judged every man according to their works.
{14} And death and hell were cast into the lake of fire. This is the second death.
{15} And whosoever was not found written in the book of life was cast into the lake of fire.”

(Revelation 21:27) “And there shall in no wise enter into it any thing that defileth, neither whatsoever worketh abomination, or maketh a lie: but they which are written in the Lamb’s book of life.” 
...

The more I read the bible and others' commentaries, and the more I understand, the more I see points of tension in the Christian life. I'll try to remember to add them here as I think of them.
/***
|Name|PopupPreviewPlugin|
|Source|http://www.TiddlyTools.com/#PopupPreviewPlugin|
|Version|1.1.0|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
|Type|plugin|
|Requires|StickyPopupPlugin (optional, recommended)|
|Overrides|createTiddlyLink|
|Options|##Configuration|
|Description|popup a formatted preview of a linked tiddler's content|
This plugin adds a custom 'shift-click' or mouseover handler to all tiddler links (or images with tiddler links) to display a popup with a fully-formatted preview of the linked tiddler's content.
!!!!!Usage
<<<
When you click the mouse on a preview-enhanced tiddler link while holding the SHIFT key, a popup will be displayed, containing the fully-formatted content of the linked tiddler, in a restricted size, scrolling area.  Note that, while you can //scroll// this preview display to //view// its contents, clicking anywhere (even within the preview popup) will automatically dismiss the popup display, making interaction with the preview content impossible.  To actually interact with the content of a tiddler, you should open it in the normal fashion (i.e, by clicking the tiddler link //without// holding the SHIFT key).
<<<
!!!!!Configuration
<<<
<<option chkPopupPreviews>> enable popup previews (shift-click)
{{{usage: <<option chkPopupPreviews>>}}}

<<option chkPopupPreviewMouseover>> show previews on mouseover (no click needed)
{{{usage: <<option chkPopupPreviewMouseover>>}}}
width of popup: <<option txtPopupPreviewWidth>> height of popup: <<option txtPopupPreviewHeight>>
//(width and height may be specified using any valid CSS units, e.g., "px", "em", "in", "cm", "%")//
{{{usage: <<option txtPopupPreviewWidth>> <<option txtPopupPreviewHeight>>}}}

<<<
!!!!!Revisions
<<<
2009.09.22 [1.1.0] added chkPopupPreviewMouseover option
2007.11.19 [1.0.0] fixed handling for imageLinks ('tiddlylink' attrib is on the *parentNode* of target image element)
2007.11.10 [0.5.0] alpha development - use with care
<<<
!!!!!Code
***/
//{{{
version.extensions.PopupPreviewPlugin= {major: 1, minor: 1, revision: 0, date: new Date(2009,9,22)};

var co=config.options; // abbrev
if (co.chkPopupPreviews===undefined) co.chkPopupPreviews=true;
if (co.txtPopupPreviewWidth==undefined) co.txtPopupPreviewWidth="50%";
if (co.txtPopupPreviewHeight==undefined) co.txtPopupPreviewHeight="10em";
if (co.chkPopupPreviewMouseover===undefined) co.txtPopupPreviewHeight=false;

if (window.popupPreview_createTiddlyLink===undefined) { // only once
window.popupPreview_createTiddlyLink=window.createTiddlyLink;
window.createTiddlyLink=function()
{
	var btn=this.popupPreview_createTiddlyLink.apply(this,arguments);
	var handler=config.options.chkPopupPreviewMouseover?'onmouseover':'onclick';
	btn.savedHandler=btn[handler];
	btn[handler]=function(e) {
		var co=config.options; // abbrev
		if (!e) var e=window.event; var theTarget=resolveTarget(e);
		if (!e.shiftKey&&!co.chkPopupPreviewMouseover || !co.chkPopupPreviews) 
			return this.savedHandler.apply(this,arguments); // perform normal click or mouseover handling
		else { // show tiddler preview if enabled and SHIFT is pressed
			var tid=theTarget.getAttribute("tiddlylink");
			if (!tid) tid=theTarget.parentNode.getAttribute("tiddlylink"); // for "imageLink" elements
			var text=store.getTiddlerText(tid);
			if (text && text.length) {
				var popup = Popup.create(this,null,"sticky popup");
				popup.style.width=co.txtPopupPreviewWidth;
				popup.style.padding=".5em";
				var msg="%0 %1".format([tid,config.views.wikified.shadowModifier]);
				var tiddler=store.getTiddler(tid); if (tiddler) msg=tiddler.getSubtitle();
				wikify("@@display:block;font-size:80%;line-height:110%;"+msg+"@@",popup);
				var div=createTiddlyElement(popup,"DIV",null,"popupPreview viewer");
				div.style.overflow="auto"; 
				div.style.whiteSpace="normal";
				div.style[config.browser.isIE?'height':'maxHeight']=co.txtPopupPreviewHeight;
				wikify(text,div);
				Popup.show('bottom','left');
			}
			e.cancelBubble=true; if (e.stopPropagation) e.stopPropagation(); return false;
		}
	}
	return btn;
}
}
//}}}
the SecondComing is //''after''// the MillennialKingdom.  In my version, things will gradually get better and better, except near the end when Satan is released to screw things up for a while, and then the second coming will happen


Okay, here's what I've landed on as the main difference between Post and A-millennialism:  Amillenniallists believe that things will get worse and worse, and PostMillenialists think the world will get better and better under Christs current heavenly rule
the SecondComing is "pre" i.e. //**before**// the MillennialKingom.
I kept hearing this term, listening to TheNarrowMind podcasts and thought I'd better look it up.  It seems to make sense so far...

 Presuppositional Apologetics

This form of Christian apologetics deals with presuppositions.1  A Christian presuppositionalist presupposes God's existence and argues from that perspective to show the validity of Christian theism.2  This position also presupposes the truth of the Christian Scriptures and relies on the validity and power of the gospel to change lives (Rom. 1:16). From the scriptures, we see that the unbeliever is sinful in his mind (Rom. 1:18-32) and unable to understand spiritual things (1 Cor. 2:14).  This means that no matter how convincing the evidence or good the logic, an unbeliever cannot come to the faith because his fallen nature will distort how he perceives the truth.  The only thing that can ultimately change him is regeneration.  To this end, the presuppositionalist seeks to change a person's presuppositions to be in conformity with biblical revelation.

I have found that a person's presuppositions are extremely important when discussing God and the validity of Christianity.  I always ask diagnostic questions to find out where a person is philosophically and presuppositionally so I might better discuss Christianity.  This is a very important point to focus on because one's presuppositions will govern how one interprets facts.  Please consider the following dialogue as a realistic example of how this works.

    Allen:  I am an atheist and evolutionist.  Prove to me there is a God.
    Paul:   I do not think I can do that, because of your presuppositions.
    Allen:  Why not?
    Paul:  Because your presuppositions will not allow you to examine without bias the evidence that I present to you for God's existence.
    Allen: That is because there is no evidence for God's existence.
    Paul:  See?  There you go.  You just confirmed what I was stating.
    Allen:  How so?
    Paul:  Your presupposition is that there is no God; therefore, no matter what I might present to you to show His existence, you must interpret it in a manner consistent with your presupposition: namely, that there is no God.  If I were to have a video tape of God coming down from heaven, you'd say it was a special effect.  If I had a thousand eye-witnesses saying they saw Him, you'd say it was mass-hysteria.  If I had Old Testament prophecies fulfilled in the New Testament, you'd say they were forged, dated incorrectly, or not real prophecies.  So, I cannot prove anything to you since your presupposition won't allow it.  It is limited.
    Allen: It is not limited.
    Paul:  Yes it is.  Your presupposition cannot allow you to rightly determine God's existence from evidence -- providing that there were factual proofs of His existence.  Don't you see?  If I DID have incontrovertible proof, your presupposition would force you to interpret the facts consistently with your presupposition and you would not be able to see the proof.
    Allen:  I see your point, but I am open to being persuaded, if you can.
    Paul:  Then, I must ask you, what kind of evidence would you accept that would prove God's existence?  I must see what your presuppositions are and work either with them or against them. 

Presuppositional apologetics differs from Classical apologetics "in that presuppositional apologetics rejects the validity of traditional proofs for the existence of God."3  A pure presuppositionalist tackles the worldview of a person and seeks to change the very foundation of how a person perceives facts.

Adherents to this position have been Cornelius Van Til, Abraham Kuyper, Greg Bahnsen, John Frame, etc.


_________________
1.  A presupposition is an assumption that is taken for granted.
2.  Theism is the belief that God exists and is involved in the world.
3.  Geisler, Baker's Encyclopedia of Christian Apologetics, page 607.
 


What about the idea of repentance?
>Acts 17:29 So since we are God’s offspring, we should not think the deity is like gold or silver or stone, an image made by human skill and imagination. 17:30 Therefore, //although God has overlooked  such times of ignorance,  he now ''commands all people  everywhere to repent''//,   17:31 because he has set a day on which he is going to judge the world in righteousness, by a man whom he designated,  having provided proof to everyone by raising  him from the dead.”

If there are people who don't consciously / verbally confess Christ as their Lord and Saviour, but who will survive in part (with the sinful bits removed) because Christ has implanted Himself into their life in someway to do His work in the world in spite of their also-present rebellious nature, then what is the significance of the command to repent?

A non-Christian repents when s/he becomes conscious of the reality of Christ's existence and work, sees the sin in his/her life and makes a decision to resist that sin and cling to Christ's promises of help for that purpose.  The ability to recognize that s/he even has sin and needs saving can only possibly be from God and not his/her own human nature, so by definition that person was already written in the book of life from eternity past.  So repentance leads to growth in Christ in a person and growth of the kingdom in  society, so its a good thing.

So we've come around a circle: why would God possibly work in people's lives without their ever knowing (in this life) and renovate their souls to still join us "conscious Christians" in eternity?  Short answer: just like in life, maybe in eternity it will "take all kinds" to make up the new world.  (I'll have to think about this some more...:-)

We already focus on the judging the world part that follows the repentance part, and we see that the "overlooking such times of ignorance" is part of a "this was then, but now its different" concept, could that concept continue to be in effect, but in a diminishing capacity as Gods Kingdom progresses?
Psa 5:5  	The boastful shall not stand before Your eyes; You hate all who do iniquity. (NASB)

/***
|Name|QuickEditPlugin|
|Source|http://www.TiddlyTools.com/#QuickEditPlugin|
|Documentation|http://www.TiddlyTools.com/#QuickEditPlugin|
|Version|1.0.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 3.0 License|http://creativecommons.org/licenses/by-sa/3.0/]]|
|~CoreVersion|2.1|
|Type|plugin|
|Requires||
|Overrides||
|Description||
This plugin defines javascript utility functions, config.quickEdit.*, to provide support for QuickEditToolbar and QuickEditButton* scripts.
!!!!!Revision History
<<<
2008.01.11 [2.2.0] converted from inline script
2007.03.29 [1.0.0] initial release (as inline script)
<<<
!!!!!Code
***/
//{{{
version.extensions.QuickEdit= {major: 2, minor: 2, revision: 0, date: new Date(2008,1,11)};

// SET STYLESHEET (for toolbar button style)
setStylesheet(".quickEdit a { border:2px outset ButtonFace; -moz-appearance:button; padding:0px 3px; \
	background-color:ButtonFace; color:ButtonText !important;  line-height:200%; font-weight:normal; }", "quickEditStyles");

config.quickEdit = {
	getField: function(where) {
		var here=story.findContainingTiddler(where); if (!here) return null;
		var e=story.getTiddlerField(here.getAttribute("tiddler"),"text");
		if (e&&e.getAttribute("edit")=="text") return e;
		return null;
	},
	setSelection: function(where,newtext) {
		var e=this.getField(where); if (!e) return false;
		e.focus(); replaceSelection(e,newtext);
		return false;
	},
	wrapSelection: function(where,before,after) {
		var e=this.getField(where); if (!e) return false;
		e.focus(); replaceSelection(e,before+config.quickEdit.getSelection(e)+after);
		return false;
	},
	getSelection: function(e) {
		var seltext="";
		if (e&&e.setSelectionRange)
			seltext=e.value.substr(e.selectionStart,e.selectionEnd-e.selectionStart);
		else if (document.selection) {
			var range = document.selection.createRange();
			if (range.parentElement()==e) seltext=range.text
		}
		return seltext;
	},
	promptForFilename: function(msg,path,file) {
		if(window.Components) { // moz
			try {
				netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
				var nsIFilePicker = window.Components.interfaces.nsIFilePicker;
				var picker = Components.classes['@mozilla.org/filepicker;1'].createInstance(nsIFilePicker);
				picker.init(window, msg, nsIFilePicker.modeOpen);
				var thispath = Components.classes['@mozilla.org/file/local;1'].createInstance(Components.interfaces.nsILocalFile);
				thispath.initWithPath(path);
				picker.displayDirectory=thispath;
				picker.defaultExtension='jpg';
				picker.defaultString=file;
				picker.appendFilters(nsIFilePicker.filterAll|nsIFilePicker.filterImages);
				if (picker.show()!=nsIFilePicker.returnCancel)
					var result="file:///"+picker.file.persistentDescriptor.replace(/\\/g,'/');
			}
			catch(e) { alert('error during local file access: '+e.toString()) }
		}
		else { // IE
			try { // XP only
				var s = new ActiveXObject('UserAccounts.CommonDialog');
				s.Filter='All files|*.*|JPG files|*.jpg|GIF files|*.gif|PNG files|*.png|';
				s.FilterIndex=1; // default to JPG files;
				s.InitialDir=path;
				s.FileName=file;
				if (s.showOpen()) var result=s.FileName;
			}
			catch(e) { var result=prompt(msg,path+file); } // fallback for non-XP IE
		}
		return result;
	}
}
//}}}
/%
|Name|QuickEditToolbar|
|Source|http://www.TiddlyTools.com/#QuickEditToolbar|
|Version|2.1.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.2|
|Type|script|
|Requires|QuickEditPlugin, InlineJavascriptPlugin, StickyPopupPlugin|
|Optional|QuickEdit_Format, QuickEdit_Alignment, QuickEdit_Insert, QuickEdit_Replace, QuickEdit_Sort|
|Overrides||
|Description|quickly insert TiddlyWiki tiddler links or common formatting sequences directly into tiddler content|

Usage (in EditTemplate): <div macro='tiddler QuickEditToolbar'></div>

%/<<tiddler HideTiddlerTags>>/%

TOOLBAR DEFINITIONS BEGIN HERE...
= = = = = = = = = = = = = = = = =
%/{{hidden fine center quickEdit{
<script>
	// note: always show toolbar when directly viewing the tiddler containing the actual toolbar definition!
	var here=story.findContainingTiddler(place); if (here) var tid=here.getAttribute("tiddler");
	place.style.display=(config.options.chkShowQuickEdit||tid=="QuickEditToolbar")?"block":"none";

</script>/%
%/<<tiddler QuickEdit_replace>>/%
%/ &nbsp;/% (SPACER)
%/<<tiddler QuickEdit_link>>/%
%/<<tiddler QuickEdit_macro>>/%
%/<<tiddler QuickEdit_image>>/%
%/<<tiddler QuickEdit_tiddler>>/%
%/<<tiddler QuickEdit_file>>/%
%/ &nbsp;/% (SPACER)
%/<<tiddler QuickEdit_align>>/% (TEXT ALIGNMENT GROUP)
%/ &nbsp;/% (SPACER)
%/<<tiddler QuickEdit_format>>/% (TEXT FORMATTING GROUP)
%/ &nbsp;/% (SPACER)
%/<<tiddler QuickEdit_sort>>/%
%/}}}
/%
|Name|QuickEditToolbarCommand|
|Source|http://www.TiddlyTools.com/#QuickEditToolbarCommand|
|Version|1.0.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.1|
|Type|script|
|Requires|InlineJavascriptPlugin, QuickEditToolbar|
|Overrides||
|Description|toggles QuickEditToolbar display and option setting|

Usage (in EditTemplate):
	<span class='toolbar' macro='tiddler QuickEditToolbarCommand'></span>

%/<script>
	// initial default is to NOT show the toolbar
	if (config.options.chkShowQuickEdit==undefined) config.options.chkShowQuickEdit=false;
</script><script label="toolbar" title="show QuickEditToolbar">

	// click on text toggles checkbox
	config.options.chkShowQuickEdit=!config.options.chkShowQuickEdit;
	// save cookie when toolbar shown, remove cookie when toolbar hidden
	if (config.options.chkShowQuickEdit) saveOptionCookie("chkShowQuickEdit");
	else {
		var ex=new Date(); ex.setTime(ex.getTime()-1000);
		document.cookie = "chkShowQuickEdit=novalue; path=/; expires="+ex.toGMTString();
	}
	// set link and title based on option state
	place.innerHTML=config.options.chkShowQuickEdit?"[toolbar]":"toolbar";
	place.title=(config.options.chkShowQuickEdit?"hide":"show")+" QuickEditToolbar";
	// refresh all actively displayed tiddler editor(s)
	story.forEachTiddler(function(t,e){if (story.isDirty(t)) refreshElements(e);});
	return false;

</script><script>
	var label=place.lastChild;
	// set link and title based on option state
	label.innerHTML=config.options.chkShowQuickEdit?"[toolbar]":"toolbar";
	label.title=(config.options.chkShowQuickEdit?"hide":"show")+" QuickEditToolbar";
	// style tweak for link text
	label.style.fontWeight="normal";

</script>
/%
|Name|QuickEdit_align|
|Source|http://www.TiddlyTools.com/#QuickEdit_align|
|Version|2.1.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.2|
|Type|script|
|Requires|QuickEditPlugin, InlineJavascriptPlugin, StickyPopupPlugin|
|Overrides||
|Description|definition of toolbar buttons for text alignment|

Usage (in QuickEditToolbar): <<tiddler QuickEdit_align>>

**** ALIGNMENT ****
%/<script label="<nowiki>|</nowiki>&#x2261;&nbsp;" title="{{left{...}}}">

	return config.quickEdit.wrapSelection(place,"{{left{","}}}");
</script>/%
%/<script label="&nbsp;&#x2261;&nbsp;" title="{{center{...}}}">
	return config.quickEdit.wrapSelection(place,"{{center{","}}}");

</script>/%
%/<script label="&nbsp;&#x2261;|" title="{{right{...}}}">
	return config.quickEdit.wrapSelection(place,"{{right{","}}}");
</script>/%
%/<script label="<nowiki>|</nowiki>&#x2261;|" title="{{justify{{...}}}">

	return config.quickEdit.wrapSelection(place,"{{justify{","}}}");
</script>/%
%/<script label="&lt;&#x2261;&nbsp;" title="{{floatleft{...}}}">
	return config.quickEdit.wrapSelection(place,"{{floatleft{","}}}");

</script>/%
%/<script label="&nbsp;&#x2261;&gt;" title="{{floatright{...}}}">
	return config.quickEdit.wrapSelection(place,"{{floatright{","}}}");
</script>
/%
|Name|QuickEdit_color|
|Source|http://www.TiddlyTools.com/#QuickEdit_color|
|Version|2.2.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.2|
|Type|script|
|Requires|QuickEditPlugin, InlineJavascriptPlugin, StickyPopupPlugin|
|Overrides||
|Description|definition of toolbar button for "color" command|

Usage (in QuickEditToolbar): <<tiddler QuickEdit_color>>

**** COLOR ****
%/<html><hide linebreaks><a href="javascript:;" class="tiddlyLink"

title="text/background color - @@color:#RGB;background-color:#RGB;...@@"
onclick="var p=Popup.create(this,null,'popup sticky smallform'); if (!p) return false;
 	p.style.padding='2px';
	function hex(d) { return '0123456789ABCDEF'.substr(d,1); }
	var fg=createTiddlyElement(p,'select'); fg.button=this;
	fg.style.width='12em';
	fg.options[0]=new Option('text color...','');
	fg.options[1]=new Option('\xa0 or enter a value','_ask');
	fg.options[2]=new Option('\xa0 or use default color','');
	for (var r=0;r<16;r+=3) for (var g=0;g<16;g+=3) for (var b=0;b<16;b+=3) {
		var label=hex(r)+hex(g)+hex(b);
		fg.options[fg.length]=new Option(label,'#'+label);
		fg.options[fg.length-1].style.color='#'+label;
	}
	fg.onchange=function(){ var val=this.value;
		if (val=='_ask') { val=prompt('Enter a CSS color value');
		if (!val||!val.length) return false; }
		this.options[0].value=val; this.options[0].text=val.length?'text: '+val:'text color...';
		var bg=this.nextSibling;
		for (var i=3;i<bg.options.length;i++) bg.options[i].style.color=val;
		var preview=this.nextSibling.nextSibling.nextSibling;
		var t=config.quickEdit.getSelection(config.quickEdit.getField(this.button));
		t=t.replace(/^@@(color\:.+;)?(background-color\:.+;)?/,'').replace(/@@$/,'');
		if (!t.length) t='~AaBbCcDdEeFfGgHhIiJj 1234567890';
		var fg=this.value; if (fg.length) fg='color:'+fg+';';
		var bg=this.nextSibling.value; if (bg.length) bg='background-color:'+bg+';';
		if (fg.length||bg.length) t='@@'+fg+bg+t+'@@';
		removeChildren(preview); wikify(t,preview);
		this.selectedIndex=0; return false;
	};
	var bg=createTiddlyElement(p,'select'); bg.button=this;
	bg.style.width='12em';
	bg.options[0]=new Option('background color...','');
	bg.options[1]=new Option('\xa0 or enter a value','_ask');
	bg.options[2]=new Option('\xa0 or use default color','');
	for (var r=0;r<16;r+=3) for (var g=0;g<16;g+=3) for (var b=0;b<16;b+=3) {
		var label=hex(15-r)+hex(15-g)+hex(15-b);
		bg.options[bg.length]=new Option(label,'#'+label);
		bg.options[bg.length-1].style.backgroundColor='#'+label;
	}
	bg.onchange=function(){ var val=this.value;
		if (val=='_ask') { val=prompt('Enter a CSS color value');
		if (!val||!val.length) return false; }
		this.options[0].value=val;
		this.options[0].text=val.length?'background: '+val:'background color...';
		var fg=this.previousSibling;
		for (var i=3;i<fg.options.length;i++) fg.options[i].style.backgroundColor=val;
		var preview=this.nextSibling.nextSibling;
		var t=config.quickEdit.getSelection(config.quickEdit.getField(this.button));
		t=t.replace(/^@@(color\:.+;)?(background-color\:.+;)?/,'').replace(/@@$/,'');
		if (!t.length) t='~AaBbCcDdEeFfGgHhIiJj 1234567890';
		var fg=this.previousSibling.value; if (fg.length) fg='color:'+fg+';';
		var bg=this.value; if (bg.length) bg='background-color:'+bg+';';
		if (fg.length||bg.length) t='@@'+fg+bg+t+'@@';
		removeChildren(preview); wikify(t,preview);
		this.selectedIndex=0; return false;
	};
	var b=createTiddlyElement(p,'input',null,null,null,{type:'button'}); b.button=this;
	b.value='ok'; b.style.width='4em';
	b.onclick=function() {
		var fg=this.previousSibling.previousSibling.value; if (fg.length) fg='color:'+fg+';';
		var bg=this.previousSibling.value; if (bg.length) bg='background-color:'+bg+';';
		var t=config.quickEdit.getSelection(config.quickEdit.getField(this.button));
		t=t.replace(/^@@(color\:.+;)?(background-color\:.+;)?/,'').replace(/@@$/,'');
		if (fg.length||bg.length) config.quickEdit.setSelection(this.button,'@@'+fg+bg+t+'@@');
		Popup.remove(); return false;
	};
	var preview=createTiddlyElement(p,'div',null,'viewer'); var s=preview.style;
	s.border='1px solid'; s.margin='2px'; s.width='24em'; s.padding='3px'; s.MozBorderRadius='3px';
	s.overflow='hidden'; s.textAlign='center'; s.whiteSpace='normal';
	var t=config.quickEdit.getSelection(config.quickEdit.getField(this));
	wikify(t.length?t:'~AaBbCcDdEeFfGgHhIiJj 1234567890',preview);
	Popup.show(p,false);
	event.cancelBubble=true;if(event.stopPropagation)event.stopPropagation();return false;
">color</a></html>
/%
|Name|QuickEdit_file|
|Source|http://www.TiddlyTools.com/#QuickEdit_file|
|Version|2.1.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.2|
|Type|script|
|Requires|QuickEditPlugin, InlineJavascriptPlugin, StickyPopupPlugin|
|Overrides||
|Description|definition for toolbar buttons that insert content from other sources|

Usage (in QuickEditToolbar): <<tiddler QuickEdit_file>>

**** INSERT FILE ****
%/<script label="file" title="insert content from an external text file">
	var fn=config.quickEdit.promptForFilename("Enter/select a text file",getLocalPath(document.location.href),"");
	if (!fn) return false; // cancelled by user
	var text=loadFile(getLocalPath(fn)); if (!text) { alert("Error: unable to read contents from '"+fn+"'"); return; }
	return config.quickEdit.setSelection(place,text);

</script>
/%
|Name|QuickEdit_format|
|Source|http://www.TiddlyTools.com/#QuickEdit_format|
|Version|2.1.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.2|
|Type|script|
|Requires|QuickEditPlugin, InlineJavascriptPlugin, StickyPopupPlugin|
|Overrides||
|Description|definition of toolbar buttons for text formatting|

Usage (in QuickEditToolbar): <<tiddler QuickEdit_format>>

**** SIMPLE TEXT STYLES ****
%/<script label="&nbsp;B&nbsp;" title="''bold''">

	return config.quickEdit.wrapSelection(place,"''","''");
</script>/%
%/<script label="&nbsp;I&nbsp;" title="//italics//">
	return config.quickEdit.wrapSelection(place,"//","//");

</script>/%
%/<script label="&nbsp;U&nbsp;" title="__underline__">
	return config.quickEdit.wrapSelection(place,"__","__");
</script>/%
%/<script label="&nbsp;S&nbsp;" title="--strikethrough--">

	return config.quickEdit.wrapSelection(place,"--","--");
</script>/%

**** WRAPPERS ****
%/ &nbsp;/% (SPACER)
%/<script label="style" title="inline CSS styles - @@attr:value;attr:value;...@@">
	var css=prompt("Enter CSS attribute/value pairs (attr:val;attr:val;...;)","");
	if (!css) return false; // cancelled by user
	return config.quickEdit.wrapSelection(place,"@@"+css,"@@");

</script>/%
%/<script label="class" title="CSS class wrapper - {{classname classname etc{...}}}">
	var class=prompt("Enter a CSS classname","");
	if (!class) return false; // cancelled by user
	return config.quickEdit.wrapSelection(place,"{{"+class+"{","}}}");

</script>/%
%/<<tiddler QuickEdit_color>>/%
%/ &nbsp;/% (SPACER)
%/<script label="quote" title="indented blockquote - <<<">
	return config.quickEdit.wrapSelection(place,"\n<<<\n","\n<<<\n");

</script>/%
%/<script label="mono" title="inline monospaced text - {{{...}}}">
	return config.quickEdit.wrapSelection(place,"{{{","}}}");
</script>/%
%/<script label="pre" title="multiline monospaced text box - {{{...}}}">

	return config.quickEdit.wrapSelection(place,"\n{{{\n","\n}}}\n");
</script>/%
%/<script label="comment" title="comment - /%...%/">
	return config.quickEdit.wrapSelection(place,"/%","%/");

</script>
/%
|Name|QuickEdit_image|
|Source|http://www.TiddlyTools.com/#QuickEdit_image|
|Version|2.1.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.2|
|Type|script|
|Requires|QuickEditPlugin, InlineJavascriptPlugin, StickyPopupPlugin|
|Overrides||
|Description|definition for toolbar buttons that insert content from other sources|

Usage (in QuickEditToolbar): <<tiddler QuickEdit_image>>

**** INSERT IMAGE ****
%/<script label="image" title="embed an image (jpg/gif/png) - [img[tooltip|URL]] or [img[tooltip|path/to/file.ext]]">

	var fn=config.quickEdit.promptForFilename("Enter/select an image file",getLocalPath(document.location.href),"");
	if (!fn) return false; // cancelled by user
	var tip=prompt("Enter a tooltip for this image",""); if (!tip) tip=""; else tip+="|";
	return config.quickEdit.setSelection(place,"[img["+tip+fn+"]]");
</script>
/%
|Name|QuickEdit_link|
|Source|http://www.TiddlyTools.com/#QuickEdit_link|
|Version|2.1.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.2|
|Type|script|
|Requires|QuickEditPlugin, InlineJavascriptPlugin, StickyPopupPlugin|
|Overrides||
|Description|definition for toolbar buttons that insert content from other sources|

Usage (in QuickEditToolbar): <<tiddler QuickEdit_link>>

**** INSERT LINK ****
%/<html><hide linebreaks><a href="javascript:;" class="tiddlyLink"

title="add a 'PrettyLink' to another tiddler - [[link text|TiddlerName]]"
onclick="var p=Popup.create(this); if (!p) return false; p.className+=' sticky smallform';
	var s=createTiddlyElement(p,'select'); s.button=this;
	s.options[0]=new Option('select a tiddler...','');
	s.onchange=function(){
		var title=this.value;
		var txt=prompt('Enter the text to display for this link',title);
		if (!txt) { this.selectedIndex=0; this.focus(); return false; }
		config.quickEdit.setSelection(this.button,'[['+txt+'|'+title+']]');
		Popup.remove(); return false;
	};
	var tids=store.getTiddlers('title');
	for (var t=0; t<tids.length; t++) {
		s.options[s.length]=new Option(tids[t].title,tids[t].title);
		s.options[s.length-1].title=tids[t].getSubtitle();
	}
	Popup.show(p,false);
	event.cancelBubble=true;if(event.stopPropagation)event.stopPropagation();return false;
">link</a></html>
/%
|Name|QuickEdit_macro|
|Source|http://www.TiddlyTools.com/#QuickEdit_macro|
|Version|2.1.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.2|
|Type|script|
|Requires|QuickEditPlugin, InlineJavascriptPlugin, StickyPopupPlugin|
|Overrides||
|Description|definition for toolbar buttons that insert content from other sources|

Usage (in QuickEditToolbar): <<tiddler QuickEdit_macro>>

**** INSERT MACRO ****
The "macro" command can include optional "guideText" for any given macro, as an aide to entering macro parameters, by embedding placeholders or recommended default values into the macro syntax that is inserted into your tiddler content.  For built-in TW core macros, this guideText is defined below.  You can add guideText to your own plugin-defined macros by using the following javascript syntax: config.macros.macroName.guideText="guide text goes here";
%/<script>
	// SET MACRO GUIDE TEXT (for built-in core macros) (11/17 - TBD - incomplete list)
	config.macros.edit.guideText="fieldname #rows";
	config.macros.view.guideText="fieldname (link,wikified,date) format";
	config.macros.slider.guideText="cookie TiddlerName label tooltip";
	config.macros.option.guideText="(txtCookieName,chkCookieName)";
	config.macros.tiddler.guideText="TiddlerName with: params...";

</script><html><hide linebreaks><a href="javascript:;" class="tiddlyLink"
title="add a macro - \<\<macroName ...\>\>"
onclick="var p=Popup.create(this); if (!p) return false; p.className+=' sticky smallform';
	var s=createTiddlyElement(p,'select'); s.button=this;
	s.options[0]=new Option('select a macro...','');
	s.onchange=function(){
		config.quickEdit.setSelection(this.button,'\<\<'+this.value+'\>\>');
		Popup.remove(); return false;
	};
	var macros=[]; for (var m in config.macros) if (config.macros[m].handler) macros.push(m); macros.sort();
	for (var i=0; i<macros.length; i++) { var m=macros[i];
		var help=config.macros[m].guideText; if (!help) help=''; else help=' '+help;
		s.options[s.length]=new Option(m,m+help);
		s.options[s.length-1].title='\<\<'+m+help+'\>\>';
	}
	Popup.show(p,false);
	event.cancelBubble=true;if(event.stopPropagation)event.stopPropagation();return false;

">macro</a></html>
/%
|Name|QuickEdit_replace|
|Source|http://www.TiddlyTools.com/#QuickEdit_replace|
|Version|2.1.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.2|
|Type|script|
|Requires|QuickEditPlugin, InlineJavascriptPlugin, StickyPopupPlugin|
|Overrides||
|Description|definition for find/replace toolbar button|

Usage (in QuickEditToolbar): <<tiddler QuickEdit_replace>>

**** FIND/REPLACE/NEXT/ALL ****
%/<html><hide linebreaks><a href="javascript:;" class="tiddlyLink"

title="find/replace selected text with replacement text"
onclick="var here=story.findContainingTiddler(this); if (!here) return false;
	var e=config.quickEdit.getField(here);
	var s=config.quickEdit.getSelection(e); 
	var p=Popup.create(this,null,'popup sticky smallform'); if (!p) return false;
	var t=createTiddlyElement(p,'input'); t.onfocus=function(){this.select()};
	t.value=s.length?s:'enter target text';
	var r=createTiddlyElement(p,'input'); r.onfocus=function(){this.select()};
	r.value='enter replacement text';
	var tid=here.getAttribute('tiddler');
	var b=createTiddlyElement(p,'button',null,null,'?',{tid:tid});
	b.style.width='2em';
	b.title='FIND/FIND NEXT target text';
	b.onclick=function(ev) { /* FIND */
		var e=story.getTiddlerField(this.getAttribute('tid'),'text');
		if (!e||e.getAttribute('edit')!='text') return;
		var t=this.previousSibling.previousSibling;
		e.focus();
		if (e.setSelectionRange) { /* MOZ */
			var newstart=e.value.indexOf(t.value,e.selectionStart+1);
			if (newstart==-1) newstart=e.value.indexOf(t.value); /* wrap around */
			if (newstart==-1) { alert('\u0022'+t.value+'\u0022 not found'); t.focus(); return; }
			e.setSelectionRange(newstart,newstart+t.value.length);
			var linecount=e.value.split('\n').length;
			var thisline=e.value.substr(0,e.selectionStart).split('\n').length;
			e.scrollTop=Math.floor((thisline-1-e.rows/2)*e.scrollHeight/linecount);
		} else if (document.selection) { /* IE */
			var range=document.selection.createRange();
			if(range.parentElement()==e) {
				range.collapse(false);
				var found=false; try{found=range.findText(t.value,e.value.length,4)}catch(e){}
				if (found) range.select();
				else { alert('\u0022'+t.value+'\u0022 not found'); t.focus(); }
			}
		}
	};
	b=createTiddlyElement(p,'button',null,null,'=',{tid:tid});
	b.style.width='2em';
	b.title='REPLACE selected text';
	b.onclick=function(ev) { /* REPLACE */
		var e=story.getTiddlerField(this.getAttribute('tid'),'text');
		if (!e||e.getAttribute('edit')!='text') return;
		var t=this.previousSibling.previousSibling.previousSibling;
		var r=this.previousSibling.previousSibling;
		if (   (e.selectionStart!==undefined && e.selectionEnd==e.selectionStart)
		    || (document.selection && document.selection.createRange().text==''))
			this.previousSibling.click(); /* no selection... do FIND first */
		if (   (e.selectionStart!==undefined && e.selectionEnd==e.selectionStart)
		    || (document.selection && document.selection.createRange().text==''))
			{ t.focus(); return; } /* still no selection... goto target input */
		e.focus(); replaceSelection(e,r.value);
	};
	b=createTiddlyElement(p,'button',null,null,'+',{tid:tid});
	b.style.width='2em';
	b.title='REPLACE selected text AND FIND NEXT target text';
	b.onclick=function(ev) { /* REPLACE and FIND NEXT */
		this.previousSibling.click();
		this.previousSibling.previousSibling.click();
	};
	b=createTiddlyElement(p,'button',null,null,'!',{tid:tid});
	b.style.width='2em';
	b.title='REPLACE ALL occurrences of target text';
	b.onclick=function(ev) { /* REPLACE ALL */
		var e=story.getTiddlerField(this.getAttribute('tid'),'text');
		if (!e||e.getAttribute('edit')!='text') return;
		var t=this.previousSibling.previousSibling.previousSibling.previousSibling.previousSibling;
		var r=this.previousSibling.previousSibling.previousSibling.previousSibling;
		if (!t.value.length) { alert('Please enter the target text'); t.focus(); return; }
		var m='This will replace all occurences of:\n\n';
		m+='\''+t.value+'\'\n\nwith:\n\n\''+r.value+'\'\n\nAre you sure?';
		if (!confirm(m)) { r.focus(); r.select(); return; }
		e.value=e.value.replace(new RegExp(t.value.escapeRegExp(),'gm'),r.value);
		e.focus(); e.select(); Popup.remove();
	};
	Popup.show(p,false);
	if (!s.length) {t.focus();t.select()} else {r.focus();r.select()}
	event.cancelBubble=true;if(event.stopPropagation)event.stopPropagation();return false;
">replace</a></html>
/%
|Name|QuickEdit_sort|
|Source|http://www.TiddlyTools.com/#QuickEdit_sort|
|Version|2.1.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.2|
|Type|script|
|Requires|QuickEditPlugin, InlineJavascriptPlugin, StickyPopupPlugin|
|Overrides||
|Description|definition for toolbar "sort" button|

Usage (in QuickEditToolbar): <<tiddler QuickEdit_sort>>

**** SORT LINES ****
%/<script label="sort" title="sort selected lines of tiddler content">

	var e=config.quickEdit.getField(place); if (!e) return false;
	replaceSelection(e,config.quickEdit.getSelection(e).split('\n').sort().join('\n'));
	e.focus();
	return false;
</script>
/%
|Name|QuickEdit_tiddler|
|Source|http://www.TiddlyTools.com/#QuickEdit_tiddler|
|Version|2.1.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.2|
|Type|script|
|Requires|QuickEditPlugin, InlineJavascriptPlugin, StickyPopupPlugin|
|Overrides||
|Description|definition for toolbar buttons that insert content from other sources|

Usage (in QuickEditToolbar): <<tiddler QuickEdit_tiddler>>

**** INSERT TIDDLER ****
%/<html><hide linebreaks><a href="javascript:;" class="tiddlyLink"

title="copy content from another tiddler"
onclick="var p=Popup.create(this); if (!p) return false; p.className+=' sticky smallform';
	var s=createTiddlyElement(p,'select'); s.button=this;
	s.options[0]=new Option('select a tiddler...','');
	s.onchange=function(){
		var txt=store.getTiddlerText(this.value);
		if (!txt) { displayMessage(this.value+' not found'); this.selectedIndex=0; this.focus(); return false; }
		config.quickEdit.setSelection(this.button,txt);
		Popup.remove(); return false;
	};
	var tids=store.getTiddlers('title');
	for (var t=0; t<tids.length; t++) {
		s.options[s.length]=new Option(tids[t].title,tids[t].title);
		s.options[s.length-1].title=tids[t].getSubtitle();
	}
	Popup.show(p,false);
	event.cancelBubble=true;if(event.stopPropagation)event.stopPropagation();return false;
">tiddler</a></html>
/***
| Name|QuickOpenTagPlugin|
| Description|Changes tag links to make it easier to open tags as tiddlers|
| Version|3.0.1 ($Rev: 2342 $)|
| Date|$Date: 2007-07-05 10:57:49 +1000 (Thu, 05 Jul 2007) $|
| Source|http://mptw.tiddlyspot.com/#QuickOpenTagPlugin|
| Author|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
***/
//{{{
config.quickOpenTag = {

	dropdownChar: (document.all ? "\u25bc" : "\u25be"), // the little one doesn't work in IE?

	createTagButton: function(place,tag,excludeTiddler) {
		// little hack so we can to <<tag PrettyTagName|RealTagName>>

		var splitTag = tag.split("|");
		var pretty = tag;
		if (splitTag.length == 2) {
			tag = splitTag[1];
			pretty = splitTag[0];
		}
		
		var sp = createTiddlyElement(place,"span",null,"quickopentag");
		createTiddlyText(createTiddlyLink(sp,tag,false),pretty);
		
		var theTag = createTiddlyButton(sp,config.quickOpenTag.dropdownChar,
                        config.views.wikified.tag.tooltip.format([tag]),onClickTag);
		theTag.setAttribute("tag",tag);
		if (excludeTiddler)
			theTag.setAttribute("tiddler",excludeTiddler);
    		return(theTag);
	},

	miniTagHandler: function(place,macroName,params,wikifier,paramString,tiddler) {
		var tagged = store.getTaggedTiddlers(tiddler.title);
		if (tagged.length > 0) {
			var theTag = createTiddlyButton(place,config.quickOpenTag.dropdownChar,
                        	config.views.wikified.tag.tooltip.format([tiddler.title]),onClickTag);
			theTag.setAttribute("tag",tiddler.title);
			theTag.className = "miniTag";
		}
	},

	allTagsHandler: function(place,macroName,params) {
		var tags = store.getTags(params[0]);
		var filter = params[1]; // new feature
		var ul = createTiddlyElement(place,"ul");
		if(tags.length == 0)
			createTiddlyElement(ul,"li",null,"listTitle",this.noTags);
		for(var t=0; t<tags.length; t++) {
			var title = tags[t][0];
			if (!filter || (title.match(new RegExp('^'+filter)))) {
				var info = getTiddlyLinkInfo(title);
				var theListItem =createTiddlyElement(ul,"li");
				var theLink = createTiddlyLink(theListItem,tags[t][0],true);
				var theCount = " (" + tags[t][1] + ")";
				theLink.appendChild(document.createTextNode(theCount));
				var theDropDownBtn = createTiddlyButton(theListItem," " +
					config.quickOpenTag.dropdownChar,this.tooltip.format([tags[t][0]]),onClickTag);
				theDropDownBtn.setAttribute("tag",tags[t][0]);
			}
		}
	},

	// todo fix these up a bit
	styles: [

"/*{{{*/",
"/* created by QuickOpenTagPlugin */",
".tagglyTagged .quickopentag, .tagged .quickopentag ",
"	{ margin-right:1.2em; border:1px solid #eee; padding:2px; padding-right:0px; padding-left:1px; }",
".quickopentag .tiddlyLink { padding:2px; padding-left:3px; }",
".quickopentag a.button { padding:1px; padding-left:2px; padding-right:2px;}",
"/* extra specificity to make it work right */",
"#displayArea .viewer .quickopentag a.button, ",

"#displayArea .viewer .quickopentag a.tiddyLink, ",
"#mainMenu .quickopentag a.tiddyLink, ",
"#mainMenu .quickopentag a.tiddyLink ",
"	{ border:0px solid black; }",
"#displayArea .viewer .quickopentag a.button, ",
"#mainMenu .quickopentag a.button ",
"	{ margin-left:0px; padding-left:2px; }",
"#displayArea .viewer .quickopentag a.tiddlyLink, ",

"#mainMenu .quickopentag a.tiddlyLink ",
"	{ margin-right:0px; padding-right:0px; padding-left:0px; margin-left:0px; }",
"a.miniTag {font-size:150%;} ",
"#mainMenu .quickopentag a.button ",
"	/* looks better in right justified main menus */",
"	{ margin-left:0px; padding-left:2px; margin-right:0px; padding-right:0px; }", 
"#topMenu .quickopentag { padding:0px; margin:0px; border:0px; }",

"#topMenu .quickopentag .tiddlyLink { padding-right:1px; margin-right:0px; }",
"#topMenu .quickopentag .button { padding-left:1px; margin-left:0px; border:0px; }",
"/*}}}*/",
		""].join("\n"),

	init: function() {
		// we fully replace these builtins. can't hijack them easily
		window.createTagButton = this.createTagButton;
		config.macros.allTags.handler = this.allTagsHandler;
		config.macros.miniTag = { handler: this.miniTagHandler };
		config.shadowTiddlers["QuickOpenTagStyles"] = this.styles;
		store.addNotification("QuickOpenTagStyles",refreshStyles);
	}
}

config.quickOpenTag.init();

//}}}
Website: http://www.ligonier.org/
|''things I agree with him about'' | ''things I disagree with him about'' |
| excellent bible teacher | I think is a PaedoBaptist |

podcast: http://www.ligonier.org/rym_podcast_subscribe.php
or go to The_iTunesStore and search for "ligonier"

Greg Koukle says...
Reality is what injured you when you don't get it right.

also:
Reality is the way things are, belief is the way you think things are, and truth is when you're right (i.e. when the claim to truth matches reality)
and faith is when you //''act''// on what you believe to be true.
Why are people so surprised when you talk about the church being Jewish.  They say that because most of the Jews rejected Jesus, that "the Jews never believed", but they did, 3000 in one day - over the 40 years until AD70 there were lots - maybe even 144000 ish.  It was a remnant, just like Judah was the minority compared to Israel (the northern kingdom), just like Joseph was the minority out of his brothers , Abraham out of the whole world, Noah out of the whole world.
/***
| Name:|RenameTagsPlugin|
| Description:|Allows you to easily rename or delete tags across multiple tiddlers|
| Version:|3.0 ($Rev: 1845 $)|
| Date:|$Date: 2007-03-16 15:19:22 +1000 (Fri, 16 Mar 2007) $|
| Source:|http://mptw.tiddlyspot.com/#RenameTagsPlugin|
| Author:|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
Rename a tag and you will be prompted to rename it in all its tagged tiddlers.
***/
//{{{
config.renameTags = {

	prompts: {
		rename: "Rename the tag '%0' to '%1' in %2 tidder%3?",
		remove: "Remove the tag '%0' from %1 tidder%2?"

	},

	removeTag: function(tag,tiddlers) {
		store.suspendNotifications();
		for (var i=0;i<tiddlers.length;i++) {
			store.setTiddlerTag(tiddlers[i].title,false,tag);
		}
		store.resumeNotifications();
		store.notifyAll();
	},

	renameTag: function(oldTag,newTag,tiddlers) {
		store.suspendNotifications();
		for (var i=0;i<tiddlers.length;i++) {
			store.setTiddlerTag(tiddlers[i].title,false,oldTag); // remove old
			store.setTiddlerTag(tiddlers[i].title,true,newTag);  // add new
		}
		store.resumeNotifications();
		store.notifyAll();
	},

	storeMethods: {

		saveTiddler_orig_renameTags: TiddlyWiki.prototype.saveTiddler,

		saveTiddler: function(title,newTitle,newBody,modifier,modified,tags,fields) {
			if (title != newTitle) {
				var tagged = this.getTaggedTiddlers(title);
				if (tagged.length > 0) {
					// then we are renaming a tag
					if (confirm(config.renameTags.prompts.rename.format([title,newTitle,tagged.length,tagged.length>1?"s":""])))
						config.renameTags.renameTag(title,newTitle,tagged);

					if (!this.tiddlerExists(title) && newBody == "")
						// dont create unwanted tiddler
						return null;
				}
			}
			return this.saveTiddler_orig_renameTags(title,newTitle,newBody,modifier,modified,tags,fields);
		},

		removeTiddler_orig_renameTags: TiddlyWiki.prototype.removeTiddler,

		removeTiddler: function(title) {
			var tagged = this.getTaggedTiddlers(title);
			if (tagged.length > 0)
				if (confirm(config.renameTags.prompts.remove.format([title,tagged.length,tagged.length>1?"s":""])))
					config.renameTags.removeTag(title,tagged);
			return this.removeTiddler_orig_renameTags(title);
		}

	},

	init: function() {
		merge(TiddlyWiki.prototype,this.storeMethods);
	}
}

config.renameTags.init();

//}}}
The movie "Pleasantville" (in my opinion) argues against christianity (subtly, indirectly) by implying that "ordered moral life" (read: christianity) is dull and boring and what you really need is sex (or other interests for some, but for most its sex) and you're life will become more colorful.

The strawman implied is that it is christianity or ordered moral life in general that is the culprit.  My interpretation, however, is that it is the secularization that devalues deep meaning in life that makes things dull and colorless.
Jesus and the Eyewitnesses: The Gospel As Eyewitness Testimony (Eerdmans, 2006) 

and
http://www.theopedia.com/Richard_Bauckham
from [[here|http://www.crossway.org/blog/2010/08/the-work-of-the-son-and-spirit/]]
[<img(80%+,+)[http://www.crossway.org/blog/wp-content/uploads/2010/08/screen-shot-2010-08-24-at-22957-pm.png]]





















.
<html><div class="esv"><h2>Romans 1:8 <small class="audio">(<a href="http://www.gnpcb.org/esv/share/audio/smil?passage=Romans+1%3A8">Listen</a>)</small></h2>

<div class="esv-text">
<p><span class="verse-num" id="v45001008-1">8&nbsp;</span>First, I thank my God through Jesus Christ for all of you, because your faith is proclaimed in all the world.  (<a href="http://www.esv.org" class="copyright">ESV</a>)</p>

</div>
</div></html>
   [31]What then shall we say to these things? If God is for us, who can 
be against us? [32]He who did not spare his own Son but gave him up for 
us all, how will he not also with him graciously give us all things? 
[33]Who shall bring any charge against God's elect? It is God who 
justifies. [34]Who is to condemn? Christ Jesus is the one who died-more 
than that, who was raised-who is at the right hand of God, who indeed is 
interceding for us. [35]Who shall separate us from the love of Christ? 
Shall tribulation, or distress, or persecution, or famine, or nakedness, 
or danger, or sword? [36]As it is written,

  "For your sake we are being killed all the day long;
    we are regarded as sheep to be slaughtered."
[37]No, in all these things we are ((more than conquerors(hypernikaō (Strong's G5245) = "hyper conquerors" = "//Super Conquerors//" - take that Nietche!))) through him who 
loved us. (ESV)
means not only the gift //from// God - God //is// the gift
/***
| Name|SaveCloseTiddlerPlugin|
| Description|Provides two extra toolbar commands, saveCloseTiddler and cancelCloseTiddler|
| Version|3.0 ($Rev: 2134 $)|
| Date|$Date: 2007-04-30 16:11:12 +1000 (Mon, 30 Apr 2007) $|
| Source|http://mptw.tiddlyspot.com/#SaveCloseTiddlerPlugin|
| Author|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
To use these you must add them to the tool bar in your EditTemplate
***/
//{{{
merge(config.commands,{

	saveCloseTiddler: {
		text: 'done/close',
		tooltip: 'Save changes to this tiddler and close it',
		handler: function(e,src,title) {
			config.commands.saveTiddler.handler(e,src,title);
			config.commands.closeTiddler.handler(e,src,title);
			return false;
		}
	},

	cancelCloseTiddler: {
		text: 'cancel/close',
		tooltip: 'Undo changes to this tiddler and close it',
		handler: function(e,src,title) {
			config.commands.cancelTiddler.handler(e,src,title);
			config.commands.closeTiddler.handler(e,src,title);
			return false;
		}
	}

});

//}}}
Say Hello to my Little Friend is a podcast / netcast by GlennPeoples, see here [[here|http://www.beretta-online.com/wordpress/index.php/tag/podcast/]], see also the blog [[here|http://www.beretta-online.com/wordpress/]]

|''things I agree with him about'' | ''things I disagree with him about'' |
| lots so far |may possibly be an "old earth" creationist (I'm a "young earth" creationist|



go to The_iTunesStore and search for "say hello to my little friend beretta"
this refers to the final coming at the end of the millennium when all people are judged and sin and hades and death are done with, oh yeah, and we get our resurrected bodies (woo hoo!) <-- real enthusiasm, not sarcasm
/%
!info
|Name|ShowPopup|
|Source|http://www.TiddlyTools.com/#ShowPopup|
|Version|1.2.0|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
|Type|transcluded html|
|Requires||
|Overrides||
|Description|display tiddler content in a TiddlyWiki popup panel|
Usage:
<<<
{{{
<<tiddler ShowPopup with: TiddlerName label tooltip buttonClass width popupClass>>
}}}
where:
*''~TiddlerName''<br>title of the tiddler to be displayed
*''label''<br>text for the command link
*''tooltip''<br>mouseover help text for the link
*''buttonClass''<br>CSS classname applied to the command text (default=button)
*''width''<br>width of the popup (using CSS measurements, default=auto)
*''popupClass''<br>CSS classname applied to the popup panel (default=none).<br>Use 'sticky' for persistent popups (see StickyPopupPlugin)

<<<
Example:
<<<
{{{
<<tiddler ShowPopup with: ShowPopup [[Try this]] [[show this tiddler in a popup]]>>
}}}
<<tiddler ShowPopup with: ShowPopup [[Try this]] [[show this tiddler in a popup]]>>
<<<
!end

!show
<html><hide linebreaks>
<a href="javascript:;" class="$4" title="$3" onclick="

	var p=Popup.create(this); if(!p)return;
	p.className+='$6'!='$'+'6'?' $6':'';
	var d=createTiddlyElement(p,'div');
	var s=d.style;
	s.whiteSpace='normal';
	s.width='$5'!='$'+'5'?'$5':'auto';
	s.padding='2px';
	wikify(store.getTiddlerText('$1',''),d);
	Popup.show();
	event.cancelBubble=true;
	if(event.stopPropagation)event.stopPropagation();
	return(false);
">$2</a></html>
!end

%/<<tiddler {{'ShowPopup##'+('$1'=='$'+'1'?'info':'show')}} with: [[$1]] [[$2]] [[$3]] [[$4]] [[$5]] [[$6]]>>
<<search>><<closeAll>><<permaview>><<newTiddler>><<newJournal "DD MMM YYYY">><<saveChanges>><<tiddler TspotSidebar>><<slider chkSliderOptionsPanel OptionsPanel "options »" "Change TiddlyWiki advanced options">>
At the end of the Millennial kingdom, I'd suspect that the approach of the loosing of Satan, when he's allowed to deceive the nations, and the actual events will look alot like what believers of pre-millennialism have imagined will happen leading up to and during the "Great Tribulation". It'll be like the joke about the jew and christian who ask Messiah if this is his first or second coming.

If we are in the Millennial Kingdom, the noticeable difference is that there will be no rapture until after Satan is defeated. We [or our descendants] will be here watching the whole debacle unfold. At that time the pre-millennialists may need some encouragement as they may be tempted to doubt their faith in Christ because of faulty eschatology.


I wonder if after the rapture finally does happen, they'd be reminded of these words...

Rev22:6 And he said to me, "These words are faithful and true "; and the Lord, the God of the spirits of the prophets, sent His angel to show to His bond-servants the things which must soon take place. 7 "And behold, I am coming quickly. Blessed is he who heeds the words of the prophecy of this book. "

Will John be asking "how much more clearer could I have been than ' must soon take place '?"
Dave's Transparent Worldview and Christian Hypotheses
the Glass Atlas
#where did the information (in DNA come from)
##if supposedly random, why haven't there been any computer modelling to show how information can arise spontaneously - computers are fast enough now to model millions of years of randomization
##there have been no examples of beneficial mutations (in real life)
#why are there so many fossils supposedly hundreds of millions of years old that are exactly the same as present day species?  With evolution being constant there should be no fossils that are the same as present day with that much time gap.
#IrreducibleComplexity
#there have been no examples of beneficial mutations
I think we have to look at [[speciation]] (which I think does happen, and in opposition to mutation-derived adaptations which I think doesn't happen) as something like the process of [[cellular differentiation|http://en.wikipedia.org/wiki/Cellular_differentiation]].

In the the embryo the first cells are not differentiated yet.  Each cell has all the potential to become any cell of the body, and as the body develops, cells become more and more "committed" to becoming a certain type of cell (e.g. Osteoblast), and once certain "decisions" have been made along its pathway to full differentiation, there's no going back and changing to another cell type

When the bible speaks of "kinds" of animals being created, I believe that each kind had all the genetic potential to become a wide variety of subspecies depending on how natural selection acted upon the various populations, and when one group goes so far down the path of differentiation/speciation, it can no longer interbreed with its "cousins" and becomes fully committed to that pathway.  So speciation is not new information causing new species, but a "fracturing" or differentiation of the gene pool, causing further and further narrowing of genetic potential as speciation continues. 

Adam and Eve would have been the most "undifferentiated" people there every existed representing the entire set of human genetic possibilities, and (approximately 1000 years) later all the species on Noah's Arc would have been much less differentiated than our current species.  For example, maybe there was one species of canines, one of bears etc.  In fact even the human race would have been radically "narrowed" in its genetic profile, the flood having killed off all but 8 people.

This view is supported (I think - now I'm totally speculating:) by the absence or at least "less of an emphasis" earlier in human history of sibling or cousin mating taboos.  Now that the genetic fracturing/narrowing has reached this degree this can no longer be tolerated (with good reason)
This is the moment-to-moment wrestlling with what one believes is actually true, and whether or not one is willing to act upon it.  It ranges from the mundane to the profound.  In fact, this site is a form of it.

I also think it implies that we're wrestling with our own emotional responses to various situations that happen within us despite what we hold to be right and true.  That's the hard part, and that's when we know for sure that we need to invoke God's supernatural aid.
/***

''Inspired by [[TiddlyPom|http://www.warwick.ac.uk/~tuspam/tiddlypom.html]]''

|Name|SplashScreenPlugin|
|Created by|SaqImtiaz|
|Location|http://tw.lewcid.org/#SplashScreenPlugin|
|Version|0.21 |
|Requires|~TW2.08+|
!Description:
Provides a simple splash screen that is visible while the TW is loading.

!Installation
Copy the source text of this tiddler to your TW in a new tiddler, tag it with systemConfig and save and reload. The SplashScreen will now be installed and will be visible the next time you reload your TW.

!Customizing
Once the SplashScreen has been installed and you have reloaded your TW, the splash screen html will be present in the MarkupPreHead tiddler. You can edit it and customize to your needs.

!History
* 20-07-06 : version 0.21, modified to hide contentWrapper while SplashScreen is displayed.
* 26-06-06 : version 0.2, first release

!Code
***/
//{{{
var old_lewcid_splash_restart=restart;

restart = function()
{   if (document.getElementById("SplashScreen"))
        document.getElementById("SplashScreen").style.display = "none";
      if (document.getElementById("contentWrapper"))
        document.getElementById("contentWrapper").style.display = "block";
    
    old_lewcid_splash_restart();
   
    if (splashScreenInstall)
       {if(config.options.chkAutoSave)
			{saveChanges();}
        displayMessage("TW SplashScreen has been installed, please save and refresh your TW.");
        }
}


var oldText = store.getTiddlerText("MarkupPreHead");
if (oldText.indexOf("SplashScreen")==-1)
   {var siteTitle = store.getTiddlerText("SiteTitle");
   var splasher='\n\n<style type="text/css">#contentWrapper {display:none;}</style><div id="SplashScreen" style="border: 3px solid #ccc; display: block; text-align: center; width: 320px; margin: 100px auto; padding: 50px; color:#000; font-size: 28px; font-family:Tahoma; background-color:#eee;"><b>'+siteTitle +'</b> is loading<blink> ...</blink><br><br><span style="font-size: 14px; color:red;">Requires Javascript.</span></div>';
   if (! store.tiddlerExists("MarkupPreHead"))
       {var myTiddler = store.createTiddler("MarkupPreHead");}
   else
      {var myTiddler = store.getTiddler("MarkupPreHead");}
      myTiddler.set(myTiddler.title,oldText+splasher,config.options.txtUserName,null,null);
      store.setDirty(true);
      var splashScreenInstall = true;
}
//}}}
I was just listening to UnBelievable, a podcast I really like, and one fellow made the statement that (paraphrased) said "to be a young earther is to throw out the laws of physics" because of what we know of the age of the stars.

I sent in this email to the program
<<<
I've been listening to this week's show about the Darwin movie "Creation", and I've had to stop it to send this response.  One of your guests claimed that if you believe in a young earth you have to throw out all of physics, giving the example that the universe appears to be billions of years old.  I'd like to submit two arguments against that.  I'm not a scientist, but I've never heard answers regarding the following 2 points: 

1.  Einstein had a theory about time and [[gravitational lenses|Gravitational Lensing and Age of the Universe]] that states that if the earth were at the centre of all mass in the universe, then time will happen "slower" at the centre than at the periphery.  Please note, this is not saying we are at the centre of the solar system or galaxy, but as far as I know the universe does appear to surround us equally in all directions as far as we can see.  This would make the farther reaches of the universe appear very old.

2.  Modern physicists throw out classic physics anyway in the theory of inflation they use to get the big bang to work.  In it they claim that in the first moments of the universe all the mass expanded faster then the speed of light, yet young earth creationists are accused of throwing out the laws of physics.  I'd like to suggest they shouldn't be allowed to have their cake and eat it too. :-)
<<<

Then I found this discussion about the location of the centre of the universe:
http://www.astronomycast.com/astronomy/ep-77-where-is-the-centre-of-the-universe/

that had this excerpt:
<<<

Fraser: I guess the other way to look at it is what if all the galaxies are speeding away from us, at the centre of the universe? What if we're the middle of the universe and everything is moving away from us?

Pamela: That's one concern we have. ''//Observationally, there's no way to say that's any different. We have what we call different cosmological principles.//'' One of the principles says that we don't live in a special time or place. It goes on where our universe is homogeneous and isotropic. This means if you take a large enough chunk of any part of the universe, it's going to be similar to any other chunk of the universe. No matter where you go, as you look out at what you can see, you should be able to see pretty much the same stuff I can see here.
<<<

conclusion: the obvious appearance of our being at the centre of the universe is dismissed simply by adopting the presupposition that "there is no centre of the universe" without any evidence whatsoever.  How convenient!
/***
|Name|StickyPopupPlugin|
|Source|http://www.TiddlyTools.com/#StickyPopupPlugin|
|Version|1.1.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.1|
|Type|plugin|
|Requires||
|Overrides|Popup.onDocumentClick|
|Description|allow mouse interactions inside popups without automatically closing them|
Usually, when a TW popup is displayed, it is automatically closed whenever a click occurs //anywhere// in the document, either //inside// or //outside// the popup itself.  This plugin makes popups persistent (a.k.a, "sticky"), allowing you to perform multiple mouse interactions on content //inside// the popup (e.g., entering form fields, opening links, selecting text, etc.), remaining visible until you click //outside// the popup or perform an action that opens another popup (only one popup can be displayed at any given time).
!!!!!Usage
<<<
You can cause popups to behave in a persistent ("sticky") manner simply by selecting the option checkbox below.  The selected popup display behavior will be applied to ALL popups in the document automatically.

><<option chkStickyPopups>> make all popups "sticky"
>{{{usage: <<option chkStickyPopups>>}}}

Alternatively, if you are developing your own plugins or inline scripts that create popups programmatically using the core function:
{{{
Popup.create(this)
}}}
you can provide additional parameters that specify the desired CSS classname(s) to assign to the popup DOM element.  The default class when none is specified is simply "popup".  To create a //sticky// popup, simply enter a custom class combination like this:
{{{
Popup.create(this,null,"sticky popup")
}}}
<<<
!!!!!Revision History
<<<
2008.01.20 [1.1.0] added recognition of "anno" class for compatibility with popups created by [[http://tw.lewcid.org/#AnnotationsPlugin]]
2007.11.25 [1.0.0] initial release - moved from [[CoreTweaks]]

<<<
!!!!!Code
***/
//{{{
version.extensions.StickyPopups= {major: 1, minor: 1, revision: 0, date: new Date(2008,1,20)};

if (config.options.chkStickyPopups==undefined) config.options.chkStickyPopups=false;

Popup.stickyPopup_onDocumentClick = function(ev)
{
	// if click is in a sticky popup, ignore it so popup will remain visible
	// see tw.lewcid.org/#AnnotationsPlugin for use of 'anno' class
	var e = ev ? ev : window.event; var target = resolveTarget(e);
	var p=target; while (p) {
		if ((hasClass(p,"popup")||hasClass(p,"anno"))
			&& (hasClass(p,"sticky")||config.options.chkStickyPopups)) break;
		else p=p.parentNode;
	}
	if (!p) // not in sticky popup (or sticky popups disabled)... use normal click handling
		Popup.onDocumentClick(ev);
	return true;
};
removeEvent(document,"click",Popup.onDocumentClick);
addEvent(document,"click",Popup.stickyPopup_onDocumentClick);
//}}}
I guess I'd better start a heading on RCSproul, I quote him enough
.title {color:[[ColorPalette::SecondaryPale]];} 
.tagged.button {border:none;} 
body {

         background-image: url('http://www.cedar-chiropractic.com/images/golden woods1.5.jpeg'); 
         background-repeat: no-repeat;
         background-position: center;
         background-attachment: fixed;


}
.viewer
	{ background: #cccc99; border:0; -moz-border-radius:1em;-webkit-border-radius:1em; padding:1em; opacity:0.9; filter:'alpha(opacity:90)'; }

.tiddler { 

        margin: 0.5em; 

        padding: 0.5em; 
        -moz-border-radius: 1em; 
	 width: 74.5%;
} 
 

#mainMenu {width: 15em;} 
#displayArea { margin-left:20em; } 

.toolbar .button{border:1px solid transparent;}
.toolbar .button:hover{border:1px solid
[[ColorPalette:SecondaryDark]];} 
/***
|Name|SwitchThemePlugin|
|Source|http://www.TiddlyTools.com/#SwitchThemePlugin|
|Documentation|http://www.TiddlyTools.com/#SwitchThemePluginInfo|
|Version|5.3.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.3|
|Type|plugin|
|Requires||
|Overrides||
|Description|Select alternative TiddlyWiki template/stylesheet 'themes' from a droplist|
!!!!!Documentation
>see [[SwitchThemePluginInfo]]
!!!!!Configuration
<<<
Current theme:<<switchTheme width:auto>>
<<option chkRandomTheme>> select a random theme at startup
//Note: to prevent a given theme from being chosen at random, tag it with <<tag noRandom>>//

<<<
!!!!!Installation Note
>As of 4/13/2008, a "core patch" function that provides backward-compatibility with TW2.3.x has been split into a separate [[SwitchThemePluginPatch]] tiddler to reduce installation overhead for //this// plugin.  ''You should only install [[SwitchThemePluginPatch]] when using this plugin in documents based on a core version prior to TW2.4.0''
!!!!!Revisions
<<<
2008.04.23 [5.3.0] added option for chkRandomTheme (select random theme at startup)
2008.04.13 [5.2.0] moved TW2.3.x fixup for core's switchTheme() function to [[SwitchThemePluginPatch]] and simplified random theme handling.  Also, changed "Web*" prefix to "*ReadOnly" suffix for compatibility with TW240 core convention.
| Please see [[SwitchThemePluginInfo]] for previous revision details |
2008.01.22 [5.0.0] Completely re-written and renamed from [[SelectStylesheetPlugin]] (now retired)
>//history for retired [[SelectStylesheetPlugin]] omitted//
2005.07.20 [1.0.0] Initial Release
<<<
!!!!!Code
***/
//{{{
version.extensions.SwitchThemePlugin= {major: 5, minor: 3, revision: 0, date: new Date(2008,4,23)};

config.macros.switchTheme = {
	handler: function(place,macroName,params) {
		setStylesheet(".switchTheme {width:100%;font-size:8pt;margin:0em}","switchThemePlugin");
		if (params[0] && (params[0].substr(0,6)=="width:"))	var width=(params.shift()).substr(6);
		if (params[0] && (params[0].substr(0,6)=="label:"))	var label=(params.shift()).substr(6);
		if (params[0] && (params[0].substr(0,7)=="prompt:"))	var prompt=(params.shift()).substr(7);
		if (params[0] && params[0].trim().length) // create a link that sets a specific theme
			createTiddlyButton(place,label?label:params[0],prompt?prompt:params[0],
				function(){ config.macros.switchTheme.set(params[0]); return false;});
		else { // create a select list of available themes
			var theList=createTiddlyElement(place,"select",null,"switchTheme",null);
			theList.size=1;
			if (width) theList.style.width=width;
			theList.onchange=function() { config.macros.switchTheme.set(this.value); return true; };
			this.refresh(theList);
		}
	},
	refresh: function(list) {
		var indent = String.fromCharCode(160)+String.fromCharCode(160);
		while(list.length > 0){list.options[0]=null;} // clear list
		list.options[list.length] = new Option("select a theme:","",true,true);
		list.options[list.length] = new Option(indent+"[default]","StyleSheet");
		list.options[list.length] = new Option(indent+"[random]","*");
		var themes=store.getTaggedTiddlers("systemTheme");
		for (var i=0; i<themes.length; i++) if (themes[i].title!="StyleSheet")
			list.options[list.length]=new Option(indent+themes[i].title,themes[i].title);
		// show current selection
		for (var t=0; t<list.options.length; t++)
			if (list.options[t].value==config.options.txtTheme)
				{ list.selectedIndex=t; break; }
	},
	set: function(theme) {
		if (!theme||!theme.trim().length) return;
		if (theme=="*") { // select a random theme (excluding themes tagged with "noRandom")
			var themes=store.getTaggedTiddlers("systemTheme"); if (!themes.length) return false;
			var which=Math.floor(Math.random()*themes.length);
			while (themes[which].title==config.options.txtTheme||themes[which].isTagged("noRandom"))
				which=Math.floor(Math.random()*themes.length);
			theme=themes[which].title;
		}
		// apply and remember selected theme
		story.switchTheme(theme);
		config.options.txtTheme=theme;
		saveOptionCookie("txtTheme");
		// sync theme droplists
		var elems=document.getElementsByTagName("select");
		var lists=[]; for (var i=0; i<elems.length; i++)
			if (hasClass(elems[i],"switchTheme")) lists.push(elems[i]);
		for (var k=0; k<lists.length; k++)
			for (var t=0; t<lists[k].options.length; t++)
				if (lists[k].options[t].value==config.options.txtTheme)
					{ lists[k].selectedIndex=t; break; }
		return;
	}
}
//}}}

// // select a random theme at startup (if enabled)
//{{{
if (config.options.chkRandomTheme===undefined)
	config.options.chkRandomTheme=false;
if (config.options.chkRandomTheme)
	config.macros.switchTheme.set("*");
//}}}
/***
|Name|SwitchThemePluginInfo|
|Source|http://www.TiddlyTools.com/#SwitchThemePlugin|
|Documentation|http://www.TiddlyTools.com/#SwitchThemePluginInfo|
|Version|5.3.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.3|
|Type|documentation|
|Requires||
|Overrides||
|Description|documentation for SwitchThemePlugin|
This plugin replaces the features previously provided by SelectStylesheetPlugin (which has been retired from distribution because it is no longer compatible with the current release of the TiddlyWiki core).

Please note: ''//This plugin requires TiddlyWiki version 2.3.0 or later//''
!!!!!Usage
<<<
{{medium{__Defining a theme:__}}}
First, create a new tiddler (or import an existing tiddler) containing the desired CSS definitions and tag that tiddler with<<tag systemTheme>>.  At the top of that tiddler, embed a //slice table// that defines at least one slice, "~StyleSheet", whose value is the name of the tiddler itself, e.g., in a tiddler called [[MyTheme]], you would write:
{{{
/***
|StyleSheet|MyTheme|
***/
}}}
>Take note of the use of {{{/***}}} and {{{***/}}} surrounding the slice table syntax.   This is a ~TiddlyWiki-enhanced comment syntax that, when used in a stylesheet, permits the browser to ignore any wiki-syntax that has been embedded within the tiddler while still processing the ~CSS-syntax it contains.
In addition to the "~StyleSheet" slice entry, a theme tiddler can also contain one or more slices that associate customized versions of [[PageTemplate]], [[ViewTemplate]], and/or [[EditTemplate]], for use with that theme:
{{{
/***
|PageTemplate|MyPageTemplate|
|ViewTemplate|MyViewTemplate|
|EditTemplate|MyEditTemplate|
***/
}}}
where the slice //name// is the standard template name, and the slice //value// is the title of the alternative custom template that will be used when that theme is selected.

You can also associate a secondary set of ''"read only" templates that will be automatically applied whenever a document is being viewed online'' (i.e., via http: protocol)
{{{
|PageTemplateReadOnly|MyWebPageTemplate|
|ViewTemplateReadOnly|MyWebViewTemplate|
|EditTemplateReadOnly|MyWebEditTemplate|
}}}
These definitions can be used to seemlessly present a reduced-feature "reader" interface when your document is being viewed on-line by others, while still offering you access to the full-featured "author" interface when you are updating your content locally.

{{medium{__Selecting a theme from a droplist:__}}}
To display a droplist of available themes, use this syntax:
{{{

<<switchTheme width:nnn>>
}}}
where ''width:nnn[cm|px|em|%]'' is optional, and overrides the built-in CSS width declaration (=100%).  Use standard CSS width units (cm=centimeters, px=pixels, em=M-space, %=proportional to containing area).  You can also use a ".switchTheme" custom CSS class definition to override the built-in CSS declarations.}}}

All tiddlers tagged with<<tag systemTheme>> will be included in the droplist of available themes for you to select.  The currently selected theme is remembered between browser sessions using a TiddlyWiki option cookie ("txtTheme").  Each time you reload your document, the selected theme is automatically re-applied, based on the stored cookie value.  If there is no cookie or the selected theme no longer exists in the document (e.g., it was deleted/renamed after being selected), the [default] CSS tiddler, [[StyleSheet]], will be used as a fallback theme.  If [random] is seleced, the plugin automatically selects a random theme.  You can exclude a theme from being randomly selected by tagging it with <<tag noRandom>>.

Example:
{{{<<switchTheme width:30%>>}}}
<<switchTheme width:30%>>

{{medium{__Selecting a theme from a command link:__}}}
The {{{<<switchTheme>>}}} macro can also be used to embed a command link that, when clicked, will apply a specific, pre-selected theme, using the following syntax:
{{{
<<switchTheme "label:link text" "prompt:tooltip text" TiddlerName>>
}}}
where:
* {{block{
''label:text'' and ''prompt:text'' (optional)
define the link text the 'tooltip' text that appears near the mouse pointer when placed over the link, respectively.}}}
* {{block{
''~TiddlerName''
specifies the name of the theme tiddler to be applied (e.g., {{{<<switchTheme [[Woodshop]]>>}}}}}}
Examples:
{{{
<<switchTheme Plain>>
<<switchTheme Blackout>> 

<<switchTheme Woodshop>>
<<switchTheme Textures>>
<<switchTheme [[Edge of Night]]>>
<<switchTheme label:[default] StyleSheet>>
<<switchTheme label:randomize *>>
}}}
<<switchTheme Plain>> <<switchTheme Blackout>> <<switchTheme Woodshop>> <<switchTheme Textures>> <<switchTheme [[Edge of Night]]>> <<switchTheme label:[default] StyleSheet>> <<switchTheme label:randomize *>>

NOTE:
>You can also create a command link that specifies "*" for the theme name.  This will select a theme //at random// from the current list of available themes.  Once selected, the theme is re-applied each time the document is loaded, unless a different theme selection is subsequently made.  To prevent a given theme from being chosen at random, tag it with <<tag noRandom>>.
<<<
!!!!!Configuration
<<<
<<option chkRandomTheme>> select a random theme at startup
//Note: to prevent a given theme from being chosen at random, tag it with <<tag noRandom>>//
<<<

!!!!!Revisions
<<<
2008.04.23 [5.3.0] added option for chkRandomTheme (select random theme at startup)
2008.04.13 [5.2.0] moved TW2.3.x fixup for core's switchTheme() function to [[SwitchThemePluginPatch]] and simplified random theme handling.  Also, changed "Web*" prefix to "*ReadOnly" suffix for compatibility with TW240 core convention.
2008.02.01 [5.1.3] in response to a change for core ticket #435 (see http://trac.tiddlywiki.org/changeset/3450) -- in switchTheme, use config.refresherData.* values (if defined), instead of config.refreshers.*  This change allows the plugin to work with both the current release (~TW230) AND the upcoming ~TW240 release.
2008.02.01 [5.1.2] in switchTheme, replace hard-coded "~StyleSheet" with config.refreshers.stylesheet (used as name of loaded styles)
2008.01.30 [5.1.1] changed tag-detection to use "systemTheme" instead of "theme" for compatibility with core theme switching mechanism.
2008.01.26 [5.1.0] added support for txtTheme="*" (applies random theme at startup) and {{{<<randomTheme>>}}} macro (selects/applies a random theme when a command link is clicked)
2008.01.25 [5.0.1] in refresh() and set(), removed use of ">" to indicate current theme 
2008.01.22 [5.0.0] Completely re-written and renamed from [[SelectStylesheetPlugin]] (now retired)

>//previous history for [[SelectStylesheetPlugin]] omitted//
2005.07.20 [1.0.0] Initial Release
<<<

<<allTags excludeLists>>
<<tabs txtMoreTab "Tags" "All Tags" TabAllTags "Miss" "Missing tiddlers" TabMoreMissing "Orph" "Orphaned tiddlers" TabMoreOrphans "Shad" "Shadowed tiddlers" TabMoreShadowed>>
<<allTags excludeLists [a-z]>>
/***
| Name|TagglyTaggingPlugin|
| Description|tagglyTagging macro is a replacement for the builtin tagging macro in your ViewTemplate|
| Version|3.1 ($Rev: 2351 $)|
| Date|$Date: 2007-07-12 10:18:02 +1000 (Thu, 12 Jul 2007) $|
| Source|http://mptw.tiddlyspot.com/#TagglyTaggingPlugin|
| Author|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
!Notes
See http://mptw.tiddlyspot.com/#TagglyTagging
***/
//{{{
config.taggly = {

	// for translations
	lingo: {
		labels: {
			asc:        "\u2191", // down arrow
			desc:       "\u2193", // up arrow
			title:      "title",
			modified:   "modified",
			created:    "created",
			show:       "+",
			hide:       "-",
			normal:     "normal",
			group:      "group",
			commas:     "commas",
			sitemap:    "sitemap",
			numCols:    "cols\u00b1", // plus minus sign
			label:      "Tagged as '%0':",
			excerpts:   "excerpts",
			contents:   "contents",
			sliders:    "sliders",
			noexcerpts: "title only"

		},

		tooltips: {
			title:    "Click to sort by title",
			modified: "Click to sort by modified date",
			created:  "Click to sort by created date",
			show:     "Click to show tagging list",
			hide:     "Click to hide tagging list",
			normal:   "Click to show a normal ungrouped list",
			group:    "Click to show list grouped by tag",
			sitemap:  "Click to show a sitemap style list",
			commas:   "Click to show a comma separated list",
			numCols:  "Click to change number of columns",
			excerpts: "Click to show excerpts",
			contents: "Click to show entire tiddler contents",
			sliders:  "Click to show tiddler contents in sliders",
			noexcerpts: "Click to show entire title only"

		}
	},

	config: {
		showTaggingCounts: true,
		listOpts: {
			// the first one will be the default
			sortBy:     ["title","modified","created"],
			sortOrder:  ["asc","desc"],
			hideState:  ["show","hide"],
			listMode:   ["normal","group","sitemap","commas"],
			numCols:    ["1","2","3","4","5","6"],
			excerpts:   ["sliders","noexcerpts","excerpts","contents"]
		},
		valuePrefix: "taggly.",
		excludeTags: ["excludeLists","excludeTagging"],
		excerptSize: 50,
		excerptMarker: "/%"+"%/"

	},

	getTagglyOpt: function(title,opt) {
		var val = store.getValue(title,this.config.valuePrefix+opt);
		return val ? val : this.config.listOpts[opt][0];
	},

	setTagglyOpt: function(title,opt,value) {
		if (!store.tiddlerExists(title))
			// create it silently
			store.saveTiddler(title,title,config.views.editor.defaultText.format([title]),config.options.txtUserName,new Date(),null);
		// if value is default then remove it to save space
		return store.setValue(title,
			this.config.valuePrefix+opt,
			value == this.config.listOpts[opt][0] ? null : value);
	},

	getNextValue: function(title,opt) {
		var current = this.getTagglyOpt(title,opt);
		var pos = this.config.listOpts[opt].indexOf(current);
		// a little usability enhancement. actually it doesn't work right for grouped or sitemap
		var limit = (opt == "numCols" ? store.getTaggedTiddlers(title).length : this.config.listOpts[opt].length);
		var newPos = (pos + 1) % limit;
		return this.config.listOpts[opt][newPos];
	},

	toggleTagglyOpt: function(title,opt) {
		var newVal = this.getNextValue(title,opt);
		this.setTagglyOpt(title,opt,newVal);
	}, 

	createListControl: function(place,title,type) {
		var lingo = config.taggly.lingo;
		var label;
		var tooltip;
		var onclick;

		if ((type == "title" || type == "modified" || type == "created")) {
			// "special" controls. a little tricky. derived from sortOrder and sortBy
			label = lingo.labels[type];
			tooltip = lingo.tooltips[type];

			if (this.getTagglyOpt(title,"sortBy") == type) {
				label += lingo.labels[this.getTagglyOpt(title,"sortOrder")];
				onclick = function() {
					config.taggly.toggleTagglyOpt(title,"sortOrder");
					return false;
				}
			}
			else {
				onclick = function() {
					config.taggly.setTagglyOpt(title,"sortBy",type);
					config.taggly.setTagglyOpt(title,"sortOrder",config.taggly.config.listOpts.sortOrder[0]);
					return false;
				}
			}
		}
		else {
			// "regular" controls, nice and simple
			label = lingo.labels[type == "numCols" ? type : this.getNextValue(title,type)];
			tooltip = lingo.tooltips[type == "numCols" ? type : this.getNextValue(title,type)];
			onclick = function() {
				config.taggly.toggleTagglyOpt(title,type);
				return false;
			}
		}

		// hide button because commas don't have columns
		if (!(this.getTagglyOpt(title,"listMode") == "commas" && type == "numCols"))
			createTiddlyButton(place,label,tooltip,onclick,type == "hideState" ? "hidebutton" : "button");
	},

	makeColumns: function(orig,numCols) {
		var listSize = orig.length;
		var colSize = listSize/numCols;
		var remainder = listSize % numCols;

		var upperColsize = colSize;
		var lowerColsize = colSize;

		if (colSize != Math.floor(colSize)) {
			// it's not an exact fit so..
			upperColsize = Math.floor(colSize) + 1;
			lowerColsize = Math.floor(colSize);
		}

		var output = [];
		var c = 0;
		for (var j=0;j<numCols;j++) {
			var singleCol = [];
			var thisSize = j < remainder ? upperColsize : lowerColsize;
			for (var i=0;i<thisSize;i++) 
				singleCol.push(orig[c++]);
			output.push(singleCol);
		}

		return output;
	},

	drawTable: function(place,columns,theClass) {
		var newTable = createTiddlyElement(place,"table",null,theClass);
		var newTbody = createTiddlyElement(newTable,"tbody");
		var newTr = createTiddlyElement(newTbody,"tr");
		for (var j=0;j<columns.length;j++) {
			var colOutput = "";
			for (var i=0;i<columns[j].length;i++) 
				colOutput += columns[j][i];
			var newTd = createTiddlyElement(newTr,"td",null,"tagglyTagging"); // todo should not need this class
			wikify(colOutput,newTd);
		}
		return newTable;
	},

	createTagglyList: function(place,title) {
		switch(this.getTagglyOpt(title,"listMode")) {
			case "group":  return this.createTagglyListGrouped(place,title); break;
			case "normal": return this.createTagglyListNormal(place,title,false); break;
			case "commas": return this.createTagglyListNormal(place,title,true); break;
			case "sitemap":return this.createTagglyListSiteMap(place,title); break;
		}
	},

	getTaggingCount: function(title) {
		// thanks to Doug Edmunds
		if (this.config.showTaggingCounts) {
			var tagCount = store.getTaggedTiddlers(title).length;
			if (tagCount > 0)
				return " ("+tagCount+")";
		}
		return "";
	},

	getExcerpt: function(inTiddlerTitle,title,indent) {
    if (!indent)
			indent = 1;
		if (this.getTagglyOpt(inTiddlerTitle,"excerpts") == "excerpts") {
			var t = store.getTiddler(title);
			if (t) {
				var text = t.text.replace(/\n/," ");
				var marker = text.indexOf(this.config.excerptMarker);
				if (marker != -1) {
					return " {{excerpt{<nowiki>" + text.substr(0,marker) + "</nowiki>}}}";
				}
				else if (text.length < this.config.excerptSize) {
					return " {{excerpt{<nowiki>" + t.text + "</nowiki>}}}";
				}
				else {
					return " {{excerpt{<nowiki>" + t.text.substr(0,this.config.excerptSize) + "..." + "</nowiki>}}}";
				}
			}
		}
		else if (this.getTagglyOpt(inTiddlerTitle,"excerpts") == "contents") {
			var t = store.getTiddler(title);
			if (t) {
				return "\n{{contents indent"+indent+"{\n" + t.text + "\n}}}";
			}
		}
		else if (this.getTagglyOpt(inTiddlerTitle,"excerpts") == "sliders") {
                 var t = store.getTiddler(title);
if (t) {
  return "+++^*@[peek]\n"+t.text+"\n<<tagglyTagging [["+t.title+"]]>>"+"\n===\n";
}

        } 
		return "";
	},

	notHidden: function(t,inTiddler) {
		if (typeof t == "string") 
			t = store.getTiddler(t);
		return (!t || !t.tags.containsAny(this.config.excludeTags) ||
				(inTiddler && this.config.excludeTags.contains(inTiddler)));
	},

	// this is for normal and commas mode
	createTagglyListNormal: function(place,title,useCommas) {

		var list = store.getTaggedTiddlers(title,this.getTagglyOpt(title,"sortBy"));

		if (this.getTagglyOpt(title,"sortOrder") == "desc")
			list = list.reverse();

		var output = [];
		var first = true;
		for (var i=0;i<list.length;i++) {
			if (this.notHidden(list[i],title)) {
				var countString = this.getTaggingCount(list[i].title);
				var excerpt = this.getExcerpt(title,list[i].title);
				if (useCommas)
					output.push((first ? "" : ", ") + "[[" + list[i].title + "]]" + countString + excerpt);
				else
					output.push("*[[" + list[i].title + "]]" + countString + excerpt + "\n");

				first = false;
			}
		}

		return this.drawTable(place,
			this.makeColumns(output,useCommas ? 1 : parseInt(this.getTagglyOpt(title,"numCols"))),
			useCommas ? "commas" : "normal");
	},

	// this is for the "grouped" mode
	createTagglyListGrouped: function(place,title) {
		var sortBy = this.getTagglyOpt(title,"sortBy");
		var sortOrder = this.getTagglyOpt(title,"sortOrder");

		var list = store.getTaggedTiddlers(title,sortBy);

		if (sortOrder == "desc")
			list = list.reverse();

		var leftOvers = []
		for (var i=0;i<list.length;i++)
			leftOvers.push(list[i].title);

		var allTagsHolder = {};
		for (var i=0;i<list.length;i++) {
			for (var j=0;j<list[i].tags.length;j++) {

				if (list[i].tags[j] != title) { // not this tiddler

					if (this.notHidden(list[i].tags[j],title)) {

						if (!allTagsHolder[list[i].tags[j]])
							allTagsHolder[list[i].tags[j]] = "";

						if (this.notHidden(list[i],title)) {
							allTagsHolder[list[i].tags[j]] += "**[["+list[i].title+"]]"

										+ this.getTaggingCount(list[i].title) + this.getExcerpt(title,list[i].title) + "\n";

							leftOvers.setItem(list[i].title,-1); // remove from leftovers. at the end it will contain the leftovers

						}
					}
				}
			}
		}

		var allTags = [];
		for (var t in allTagsHolder)
			allTags.push(t);

		var sortHelper = function(a,b) {
			if (a == b) return 0;
			if (a < b) return -1;
			return 1;
		};

		allTags.sort(function(a,b) {
			var tidA = store.getTiddler(a);
			var tidB = store.getTiddler(b);
			if (sortBy == "title") return sortHelper(a,b);
			else if (!tidA && !tidB) return 0;
			else if (!tidA) return -1;
			else if (!tidB) return +1;
			else return sortHelper(tidA[sortBy],tidB[sortBy]);
		});

		var leftOverOutput = "";
		for (var i=0;i<leftOvers.length;i++)
			if (this.notHidden(leftOvers[i],title))
				leftOverOutput += "*[["+leftOvers[i]+"]]" + this.getTaggingCount(leftOvers[i]) + this.getExcerpt(title,leftOvers[i]) + "\n";

		var output = [];

		if (sortOrder == "desc")
			allTags.reverse();
		else if (leftOverOutput != "")
			// leftovers first...
			output.push(leftOverOutput);

		for (var i=0;i<allTags.length;i++)
			if (allTagsHolder[allTags[i]] != "")
				output.push("*[["+allTags[i]+"]]" + this.getTaggingCount(allTags[i]) + this.getExcerpt(title,allTags[i]) + "\n" + allTagsHolder[allTags[i]]);

		if (sortOrder == "desc" && leftOverOutput != "")
			// leftovers last...
			output.push(leftOverOutput);

		return this.drawTable(place,
				this.makeColumns(output,parseInt(this.getTagglyOpt(title,"numCols"))),
				"grouped");

	},

	// used to build site map
	treeTraverse: function(title,depth,sortBy,sortOrder) {

		var list = store.getTaggedTiddlers(title,sortBy);
		if (sortOrder == "desc")
			list.reverse();

		var indent = "";
		for (var j=0;j<depth;j++)
			indent += "*"

		var childOutput = "";
		for (var i=0;i<list.length;i++)
			if (list[i].title != title)
				if (this.notHidden(list[i].title,this.config.inTiddler))
					childOutput += this.treeTraverse(list[i].title,depth+1,sortBy,sortOrder);

		if (depth == 0)
			return childOutput;
		else
			return indent + "[["+title+"]]" + this.getTaggingCount(title) + this.getExcerpt(this.config.inTiddler,title,depth) + "\n" + childOutput;
	},

	// this if for the site map mode
	createTagglyListSiteMap: function(place,title) {
		this.config.inTiddler = title; // nasty. should pass it in to traverse probably
		var output = this.treeTraverse(title,0,this.getTagglyOpt(title,"sortBy"),this.getTagglyOpt(title,"sortOrder"));
		return this.drawTable(place,
				this.makeColumns(output.split(/(?=^\*\[)/m),parseInt(this.getTagglyOpt(title,"numCols"))), // regexp magic
				"sitemap"

				);
	},

	macros: {
		tagglyTagging: {
			handler: function (place,macroName,params,wikifier,paramString,tiddler) {
				var refreshContainer = createTiddlyElement(place,"div");
				// do some refresh magic to make it keep the list fresh - thanks Saq
				refreshContainer.setAttribute("refresh","macro");
				refreshContainer.setAttribute("macroName",macroName);
        			refreshContainer.setAttribute("title",tiddler.title);
				this.refresh(refreshContainer);
			},

			refresh: function(place) {
				var title = place.getAttribute("title");
				removeChildren(place);
				if (store.getTaggedTiddlers(title).length > 0) {
					var lingo = config.taggly.lingo;
					config.taggly.createListControl(place,title,"hideState");
					if (config.taggly.getTagglyOpt(title,"hideState") == "show") {
						createTiddlyElement(place,"span",null,"tagglyLabel",lingo.labels.label.format([title]));
						config.taggly.createListControl(place,title,"title");
						config.taggly.createListControl(place,title,"modified");
						config.taggly.createListControl(place,title,"created");
						config.taggly.createListControl(place,title,"listMode");
						config.taggly.createListControl(place,title,"excerpts");
						config.taggly.createListControl(place,title,"numCols");
						config.taggly.createTagglyList(place,title);
					}
				}
			}
		}
	},

	// todo fix these up a bit
	styles: [

"/*{{{*/",
"/* created by TagglyTaggingPlugin */",
".tagglyTagging { padding-top:0.5em; }",
".tagglyTagging li.listTitle { display:none; }",
".tagglyTagging ul {",
"	margin-top:0px; padding-top:0.5em; padding-left:2em;",
"	margin-bottom:0px; padding-bottom:0px;",
"}",

".tagglyTagging { vertical-align: top; margin:0px; padding:0px; }",
".tagglyTagging table { margin:0px; padding:0px; }",
".tagglyTagging .button { visibility:hidden; margin-left:3px; margin-right:3px; }",
".tagglyTagging .button, .tagglyTagging .hidebutton {",
"	color:[[ColorPalette::TertiaryLight]]; font-size:90%;",
"	border:0px; padding-left:0.3em;padding-right:0.3em;",
"}",
".tagglyTagging .button:hover, .hidebutton:hover, ",

".tagglyTagging .button:active, .hidebutton:active  {",
"	border:0px; background:[[ColorPalette::TertiaryPale]]; color:[[ColorPalette::TertiaryDark]];",
"}",
".selected .tagglyTagging .button { visibility:visible; }",
".tagglyTagging .hidebutton { color:[[ColorPalette::Background]]; }",
".selected .tagglyTagging .hidebutton { color:[[ColorPalette::TertiaryLight]] }",
".tagglyLabel { color:[[ColorPalette::TertiaryMid]]; font-size:90%; }",
".tagglyTagging ul {padding-top:0px; padding-bottom:0.5em; margin-left:1em; }",

".tagglyTagging ul ul {list-style-type:disc; margin-left:-1em;}",
".tagglyTagging ul ul li {margin-left:0.5em; }",
".editLabel { font-size:90%; padding-top:0.5em; }",
".tagglyTagging .commas { padding-left:1.8em; }",
"/* not technically tagglytagging but will put them here anyway */",
".tagglyTagged li.listTitle { display:none; }",
".tagglyTagged li { display: inline; font-size:90%; }",
".tagglyTagged ul { margin:0px; padding:0px; }",
".excerpt { color:[[ColorPalette::TertiaryDark]]; }",

"div.tagglyTagging table,",
"div.tagglyTagging table tr,",
"td.tagglyTagging",
" {border-style:none!important; }",
".tagglyTagging .contents { border-bottom:2px solid [[ColorPalette::TertiaryPale]]; padding:0 1em 1em 0.5em;",
"  margin-bottom:0.5em; }",
".tagglyTagging .indent1  { margin-left:3em;  }",
".tagglyTagging .indent2  { margin-left:4em;  }",

".tagglyTagging .indent3  { margin-left:5em;  }",
".tagglyTagging .indent4  { margin-left:6em;  }",
".tagglyTagging .indent5  { margin-left:7em;  }",
".tagglyTagging .indent6  { margin-left:8em;  }",
".tagglyTagging .indent7  { margin-left:9em;  }",
".tagglyTagging .indent8  { margin-left:10em; }",
".tagglyTagging .indent9  { margin-left:11em; }",
".tagglyTagging .indent10 { margin-left:12em; }",
"/*}}}*/",
		""].join("\n"),

	init: function() {
		merge(config.macros,this.macros);
		config.shadowTiddlers["TagglyTaggingStyles"] = this.styles;
		store.addNotification("TagglyTaggingStyles",refreshStyles);
	}
};

config.taggly.init();

//}}}

/***
InlineSlidersPlugin
By Saq Imtiaz
http://tw.lewcid.org/sandbox/#InlineSlidersPlugin

// syntax adjusted to not clash with NestedSlidersPlugin

***/
//{{{
config.formatters.unshift( {
	name: "inlinesliders",
	// match: "\\+\\+\\+\\+|\\<slider",
	match: "\\<slider",
	// lookaheadRegExp: /(?:\+\+\+\+|<slider) (.*?)(?:>?)\n((?:.|\n)*?)\n(?:====|<\/slider>)/mg,
	lookaheadRegExp: /(?:<slider) (.*?)(?:>)\n((?:.|\n)*?)\n(?:<\/slider>)/mg,
	handler: function(w) {
		this.lookaheadRegExp.lastIndex = w.matchStart;
		var lookaheadMatch = this.lookaheadRegExp.exec(w.source)
		if(lookaheadMatch && lookaheadMatch.index == w.matchStart ) {
			var btn = createTiddlyButton(w.output,lookaheadMatch[1] + " "+"\u00BB",lookaheadMatch[1],this.onClickSlider,"button sliderButton");
			var panel = createTiddlyElement(w.output,"div",null,"sliderPanel");
			panel.style.display = "none";
			wikify(lookaheadMatch[2],panel);
			w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;
		}
   },
   onClickSlider : function(e) {
		if(!e) var e = window.event;
		var n = this.nextSibling;
		n.style.display = (n.style.display=="none") ? "block" : "none";
		return false;
	}
});

//}}}
/***
|Name:|TagglyTaggingPlugin|
|Description:|tagglyTagging macro is a replacement for the builtin tagging macro in your ViewTemplate|
|Version:|3.1 ($Rev: 4092 $)|
|Date:|$Date: 2008-03-24 12:32:33 +1000 (Mon, 24 Mar 2008) $|
|Source:|http://mptw.tiddlyspot.com/#TagglyTaggingPlugin|
|Author:|Simon Baird <simon.baird@gmail.com>|
|License:|http://mptw.tiddlyspot.com/#TheBSDLicense|
!Notes
See http://mptw.tiddlyspot.com/#TagglyTagging
***/
//{{{
config.taggly = {

	// for translations
	lingo: {
		labels: {
			asc:        "\u2191", // down arrow
			desc:       "\u2193", // up arrow
			title:      "title",
			modified:   "modified",
			created:    "created",
			show:       "+",
			hide:       "-",
			normal:     "normal",
			group:      "group",
			commas:     "commas",
			sitemap:    "sitemap",
			numCols:    "cols\u00b1", // plus minus sign
			label:      "Tagged as '%0':",
			excerpts:   "excerpts",
			descr:      "descr",
			slices:     "slices",
			contents:   "contents",
			sliders:    "sliders",
			noexcerpts: "title only"

		},

		tooltips: {
			title:    "Click to sort by title",
			modified: "Click to sort by modified date",
			created:  "Click to sort by created date",
			show:     "Click to show tagging list",
			hide:     "Click to hide tagging list",
			normal:   "Click to show a normal ungrouped list",
			group:    "Click to show list grouped by tag",
			sitemap:  "Click to show a sitemap style list",
			commas:   "Click to show a comma separated list",
			numCols:  "Click to change number of columns",
			excerpts: "Click to show excerpts",
			descr:    "Click to show the description slice",
			slices:    "Click to show all slices",
			contents: "Click to show entire tiddler contents",
			sliders:  "Click to show tiddler contents in sliders",
			noexcerpts: "Click to show entire title only"

		}
	},

	config: {
		showTaggingCounts: true,
		listOpts: {
			// the first one will be the default
			sortBy:     ["title","modified","created"],
			sortOrder:  ["asc","desc"],
			hideState:  ["show","hide"],
			listMode:   ["normal","group","sitemap","commas"],
			numCols:    ["1","2","3","4","5","6"],
			excerpts:   ["sliders","noexcerpts","excerpts","descr","slices","contents"]
		},
		valuePrefix: "taggly.",
		excludeTags: ["excludeLists","excludeTagging"],
		excerptSize: 50,
		excerptMarker: "/%"+"%/"

	},

	getTagglyOpt: function(title,opt) {
		var val = store.getValue(title,this.config.valuePrefix+opt);
		return val ? val : this.config.listOpts[opt][0];
	},

	setTagglyOpt: function(title,opt,value) {
		if (!store.tiddlerExists(title))
			// create it silently
			store.saveTiddler(title,title,config.views.editor.defaultText.format([title]),config.options.txtUserName,new Date(),"");
		// if value is default then remove it to save space
		return store.setValue(title,
			this.config.valuePrefix+opt,
			value == this.config.listOpts[opt][0] ? null : value);
	},

	getNextValue: function(title,opt) {
		var current = this.getTagglyOpt(title,opt);
		var pos = this.config.listOpts[opt].indexOf(current);
		// a little usability enhancement. actually it doesn't work right for grouped or sitemap
		var limit = (opt == "numCols" ? store.getTaggedTiddlers(title).length : this.config.listOpts[opt].length);
		var newPos = (pos + 1) % limit;
		return this.config.listOpts[opt][newPos];
	},

	toggleTagglyOpt: function(title,opt) {
		var newVal = this.getNextValue(title,opt);
		this.setTagglyOpt(title,opt,newVal);
	}, 

	createListControl: function(place,title,type) {
		var lingo = config.taggly.lingo;
		var label;
		var tooltip;
		var onclick;

		if ((type == "title" || type == "modified" || type == "created")) {
			// "special" controls. a little tricky. derived from sortOrder and sortBy
			label = lingo.labels[type];
			tooltip = lingo.tooltips[type];

			if (this.getTagglyOpt(title,"sortBy") == type) {
				label += lingo.labels[this.getTagglyOpt(title,"sortOrder")];
				onclick = function() {
					config.taggly.toggleTagglyOpt(title,"sortOrder");
					return false;
				}
			}
			else {
				onclick = function() {
					config.taggly.setTagglyOpt(title,"sortBy",type);
					config.taggly.setTagglyOpt(title,"sortOrder",config.taggly.config.listOpts.sortOrder[0]);
					return false;
				}
			}
		}
		else {
			// "regular" controls, nice and simple
			label = lingo.labels[type == "numCols" ? type : this.getNextValue(title,type)];
			tooltip = lingo.tooltips[type == "numCols" ? type : this.getNextValue(title,type)];
			onclick = function() {
				config.taggly.toggleTagglyOpt(title,type);
				return false;
			}
		}

		// hide button because commas don't have columns
		if (!(this.getTagglyOpt(title,"listMode") == "commas" && type == "numCols"))
			createTiddlyButton(place,label,tooltip,onclick,type == "hideState" ? "hidebutton" : "button");
	},

	makeColumns: function(orig,numCols) {
		var listSize = orig.length;
		var colSize = listSize/numCols;
		var remainder = listSize % numCols;

		var upperColsize = colSize;
		var lowerColsize = colSize;

		if (colSize != Math.floor(colSize)) {
			// it's not an exact fit so..
			upperColsize = Math.floor(colSize) + 1;
			lowerColsize = Math.floor(colSize);
		}

		var output = [];
		var c = 0;
		for (var j=0;j<numCols;j++) {
			var singleCol = [];
			var thisSize = j < remainder ? upperColsize : lowerColsize;
			for (var i=0;i<thisSize;i++) 
				singleCol.push(orig[c++]);
			output.push(singleCol);
		}

		return output;
	},

	drawTable: function(place,columns,theClass) {
		var newTable = createTiddlyElement(place,"table",null,theClass);
		var newTbody = createTiddlyElement(newTable,"tbody");
		var newTr = createTiddlyElement(newTbody,"tr");
		for (var j=0;j<columns.length;j++) {
			var colOutput = "";
			for (var i=0;i<columns[j].length;i++) 
				colOutput += columns[j][i];
			var newTd = createTiddlyElement(newTr,"td",null,"tagglyTagging"); // todo should not need this class
			wikify(colOutput,newTd);
		}
		return newTable;
	},

	createTagglyList: function(place,title) {
		switch(this.getTagglyOpt(title,"listMode")) {
			case "group":  return this.createTagglyListGrouped(place,title); break;
			case "normal": return this.createTagglyListNormal(place,title,false); break;
			case "commas": return this.createTagglyListNormal(place,title,true); break;
			case "sitemap":return this.createTagglyListSiteMap(place,title); break;
		}
	},

	getTaggingCount: function(title) {
		// thanks to Doug Edmunds
		if (this.config.showTaggingCounts) {
			var tagCount = store.getTaggedTiddlers(title).length;
			if (tagCount > 0)
				return " ("+tagCount+")";
		}
		return "";
	},

	getExcerpt: function(inTiddlerTitle,title,indent) {
		if (!indent)
			indent = 1;

		var displayMode = this.getTagglyOpt(inTiddlerTitle,"excerpts");
		var t = store.getTiddler(title);

		if (t && displayMode == "excerpts") {
			var text = t.text.replace(/\n/," ");
			var marker = text.indexOf(this.config.excerptMarker);
			if (marker != -1) {
				return " {{excerpt{<nowiki>" + text.substr(0,marker) + "</nowiki>}}}";
			}
			else if (text.length < this.config.excerptSize) {
				return " {{excerpt{<nowiki>" + t.text + "</nowiki>}}}";
			}
			else {
				return " {{excerpt{<nowiki>" + t.text.substr(0,this.config.excerptSize) + "..." + "</nowiki>}}}";
			}
		}
		else if (t && displayMode == "contents") {
			return "\n{{contents indent"+indent+"{\n" + t.text + "\n}}}";
		}
		else if (t && displayMode == "sliders") { 
var t = store.getTiddler(title);
if (t) {
  return "+++^*@[peek]\n"+t.text+"\n<<tagglyTagging [["+t.title+"]]>>"+"\n===\n";
}
		}
		else if (t && displayMode == "descr") {
			var descr = store.getTiddlerSlice(title,'Description');
			return descr ? " {{excerpt{" + descr  + "}}}" : "";
		}
		else if (t && displayMode == "slices") {
			var result = "";
			var slices = store.calcAllSlices(title);
			for (var s in slices)
				result += "|%0|<nowiki>%1</nowiki>|\n".format([s,slices[s]]);
			return result ? "\n{{excerpt excerptIndent{\n" + result  + "}}}" : "";
		}
		return "";
	},

	notHidden: function(t,inTiddler) {
		if (typeof t == "string") 
			t = store.getTiddler(t);
		return (!t || !t.tags.containsAny(this.config.excludeTags) ||
				(inTiddler && this.config.excludeTags.contains(inTiddler)));
	},

	// this is for normal and commas mode
	createTagglyListNormal: function(place,title,useCommas) {

		var list = store.getTaggedTiddlers(title,this.getTagglyOpt(title,"sortBy"));

		if (this.getTagglyOpt(title,"sortOrder") == "desc")
			list = list.reverse();

		var output = [];
		var first = true;
		for (var i=0;i<list.length;i++) {
			if (this.notHidden(list[i],title)) {
				var countString = this.getTaggingCount(list[i].title);
				var excerpt = this.getExcerpt(title,list[i].title);
				if (useCommas)
					output.push((first ? "" : ", ") + "[[" + list[i].title + "]]" + countString + excerpt);
				else
					output.push("*[[" + list[i].title + "]]" + countString + excerpt + "\n");

				first = false;
			}
		}

		return this.drawTable(place,
			this.makeColumns(output,useCommas ? 1 : parseInt(this.getTagglyOpt(title,"numCols"))),
			useCommas ? "commas" : "normal");
	},

	// this is for the "grouped" mode
	createTagglyListGrouped: function(place,title) {
		var sortBy = this.getTagglyOpt(title,"sortBy");
		var sortOrder = this.getTagglyOpt(title,"sortOrder");

		var list = store.getTaggedTiddlers(title,sortBy);

		if (sortOrder == "desc")
			list = list.reverse();

		var leftOvers = []
		for (var i=0;i<list.length;i++)
			leftOvers.push(list[i].title);

		var allTagsHolder = {};
		for (var i=0;i<list.length;i++) {
			for (var j=0;j<list[i].tags.length;j++) {

				if (list[i].tags[j] != title) { // not this tiddler

					if (this.notHidden(list[i].tags[j],title)) {

						if (!allTagsHolder[list[i].tags[j]])
							allTagsHolder[list[i].tags[j]] = "";

						if (this.notHidden(list[i],title)) {
							allTagsHolder[list[i].tags[j]] += "**[["+list[i].title+"]]"

										+ this.getTaggingCount(list[i].title) + this.getExcerpt(title,list[i].title) + "\n";

							leftOvers.setItem(list[i].title,-1); // remove from leftovers. at the end it will contain the leftovers

						}
					}
				}
			}
		}

		var allTags = [];
		for (var t in allTagsHolder)
			allTags.push(t);

		var sortHelper = function(a,b) {
			if (a == b) return 0;
			if (a < b) return -1;
			return 1;
		};

		allTags.sort(function(a,b) {
			var tidA = store.getTiddler(a);
			var tidB = store.getTiddler(b);
			if (sortBy == "title") return sortHelper(a,b);
			else if (!tidA && !tidB) return 0;
			else if (!tidA) return -1;
			else if (!tidB) return +1;
			else return sortHelper(tidA[sortBy],tidB[sortBy]);
		});

		var leftOverOutput = "";
		for (var i=0;i<leftOvers.length;i++)
			if (this.notHidden(leftOvers[i],title))
				leftOverOutput += "*[["+leftOvers[i]+"]]" + this.getTaggingCount(leftOvers[i]) + this.getExcerpt(title,leftOvers[i]) + "\n";

		var output = [];

		if (sortOrder == "desc")
			allTags.reverse();
		else if (leftOverOutput != "")
			// leftovers first...
			output.push(leftOverOutput);

		for (var i=0;i<allTags.length;i++)
			if (allTagsHolder[allTags[i]] != "")
				output.push("*[["+allTags[i]+"]]" + this.getTaggingCount(allTags[i]) + this.getExcerpt(title,allTags[i]) + "\n" + allTagsHolder[allTags[i]]);

		if (sortOrder == "desc" && leftOverOutput != "")
			// leftovers last...
			output.push(leftOverOutput);

		return this.drawTable(place,
				this.makeColumns(output,parseInt(this.getTagglyOpt(title,"numCols"))),
				"grouped");

	},

	// used to build site map
	treeTraverse: function(title,depth,sortBy,sortOrder) {

		var list = store.getTaggedTiddlers(title,sortBy);
		if (sortOrder == "desc")
			list.reverse();

		var indent = "";
		for (var j=0;j<depth;j++)
			indent += "*"

		var childOutput = "";
		for (var i=0;i<list.length;i++)
			if (list[i].title != title)
				if (this.notHidden(list[i].title,this.config.inTiddler))
					childOutput += this.treeTraverse(list[i].title,depth+1,sortBy,sortOrder);

		if (depth == 0)
			return childOutput;
		else
			return indent + "[["+title+"]]" + this.getTaggingCount(title) + this.getExcerpt(this.config.inTiddler,title,depth) + "\n" + childOutput;
	},

	// this if for the site map mode
	createTagglyListSiteMap: function(place,title) {
		this.config.inTiddler = title; // nasty. should pass it in to traverse probably
		var output = this.treeTraverse(title,0,this.getTagglyOpt(title,"sortBy"),this.getTagglyOpt(title,"sortOrder"));
		return this.drawTable(place,
				this.makeColumns(output.split(/(?=^\*\[)/m),parseInt(this.getTagglyOpt(title,"numCols"))), // regexp magic
				"sitemap"

				);
	},

	macros: {
		tagglyTagging: {
			handler: function (place,macroName,params,wikifier,paramString,tiddler) {
				var refreshContainer = createTiddlyElement(place,"div");
				// do some refresh magic to make it keep the list fresh - thanks Saq
				refreshContainer.setAttribute("refresh","macro");
				refreshContainer.setAttribute("macroName",macroName);
				if (params[0])
					refreshContainer.setAttribute("title",params[0]);
				else {
        			refreshContainer.setAttribute("title",tiddler.title);
				}
				this.refresh(refreshContainer);
			},

			refresh: function(place) {
				var title = place.getAttribute("title");
				removeChildren(place);
				addClass(place,"tagglyTagging");
				if (store.getTaggedTiddlers(title).length > 0) {
					var lingo = config.taggly.lingo;
					config.taggly.createListControl(place,title,"hideState");
					if (config.taggly.getTagglyOpt(title,"hideState") == "show") {
						createTiddlyElement(place,"span",null,"tagglyLabel",lingo.labels.label.format([title]));
						config.taggly.createListControl(place,title,"title");
						config.taggly.createListControl(place,title,"modified");
						config.taggly.createListControl(place,title,"created");
						config.taggly.createListControl(place,title,"listMode");
						config.taggly.createListControl(place,title,"excerpts");
						config.taggly.createListControl(place,title,"numCols");
						config.taggly.createTagglyList(place,title);
					}
				}
			}
		}
	},

	// todo fix these up a bit
	styles: [

"/*{{{*/",
"/* created by TagglyTaggingPlugin */",
".tagglyTagging { padding-top:0.5em; }",
".tagglyTagging li.listTitle { display:none; }",
".tagglyTagging ul {",
"	margin-top:0px; padding-top:0.5em; padding-left:2em;",
"	margin-bottom:0px; padding-bottom:0px;",
"}",

".tagglyTagging { vertical-align: top; margin:0px; padding:0px; }",
".tagglyTagging table { margin:0px; padding:0px; }",
".tagglyTagging .button { visibility:hidden; margin-left:3px; margin-right:3px; }",
".tagglyTagging .button, .tagglyTagging .hidebutton {",
"	color:[[ColorPalette::TertiaryLight]]; font-size:90%;",
"	border:0px; padding-left:0.3em;padding-right:0.3em;",
"}",
".tagglyTagging .button:hover, .hidebutton:hover, ",

".tagglyTagging .button:active, .hidebutton:active  {",
"	border:0px; background:[[ColorPalette::TertiaryPale]]; color:[[ColorPalette::TertiaryDark]];",
"}",
".selected .tagglyTagging .button { visibility:visible; }",
".tagglyTagging .hidebutton { color:[[ColorPalette::Background]]; }",
".selected .tagglyTagging .hidebutton { color:[[ColorPalette::TertiaryLight]] }",
".tagglyLabel { color:[[ColorPalette::TertiaryMid]]; font-size:90%; }",
".tagglyTagging ul {padding-top:0px; padding-bottom:0.5em; margin-left:1em; }",

".tagglyTagging ul ul {list-style-type:disc; margin-left:-1em;}",
".tagglyTagging ul ul li {margin-left:0.5em; }",
".editLabel { font-size:90%; padding-top:0.5em; }",
".tagglyTagging .commas { padding-left:1.8em; }",
"/* not technically tagglytagging but will put them here anyway */",
".tagglyTagged li.listTitle { display:none; }",
".tagglyTagged li { display: inline; font-size:90%; }",
".tagglyTagged ul { margin:0px; padding:0px; }",
".excerpt { color:[[ColorPalette::TertiaryDark]]; }",

".excerptIndent { margin-left:4em; }",
"div.tagglyTagging table,",
"div.tagglyTagging table tr,",
"td.tagglyTagging",
" {border-style:none!important; }",
".tagglyTagging .contents { border-bottom:2px solid [[ColorPalette::TertiaryPale]]; padding:0 1em 1em 0.5em;",
"  margin-bottom:0.5em; }",
".tagglyTagging .indent1  { margin-left:3em;  }",

".tagglyTagging .indent2  { margin-left:4em;  }",
".tagglyTagging .indent3  { margin-left:5em;  }",
".tagglyTagging .indent4  { margin-left:6em;  }",
".tagglyTagging .indent5  { margin-left:7em;  }",
".tagglyTagging .indent6  { margin-left:8em;  }",
".tagglyTagging .indent7  { margin-left:9em;  }",
".tagglyTagging .indent8  { margin-left:10em; }",
".tagglyTagging .indent9  { margin-left:11em; }",
".tagglyTagging .indent10 { margin-left:12em; }",

"/*}}}*/",
		""].join("\n"),

	init: function() {
		merge(config.macros,this.macros);
		config.shadowTiddlers["TagglyTaggingStyles"] = this.styles;
		store.addNotification("TagglyTaggingStyles",refreshStyles);
	}
};

config.taggly.init();

//}}}

/***
InlineSlidersPlugin
By Saq Imtiaz
http://tw.lewcid.org/sandbox/#InlineSlidersPlugin

// syntax adjusted to not clash with NestedSlidersPlugin
// added + syntax to start open instead of closed

***/
//{{{
config.formatters.unshift( {
	name: "inlinesliders",
	// match: "\\+\\+\\+\\+|\\<slider",
	match: "\\<slider",
	// lookaheadRegExp: /(?:\+\+\+\+|<slider) (.*?)(?:>?)\n((?:.|\n)*?)\n(?:====|<\/slider>)/mg,
	lookaheadRegExp: /(?:<slider)(\+?) (.*?)(?:>)\n((?:.|\n)*?)\n(?:<\/slider>)/mg,
	handler: function(w) {
		this.lookaheadRegExp.lastIndex = w.matchStart;
		var lookaheadMatch = this.lookaheadRegExp.exec(w.source)
		if(lookaheadMatch && lookaheadMatch.index == w.matchStart ) {
			var btn = createTiddlyButton(w.output,lookaheadMatch[2] + " "+"\u00BB",lookaheadMatch[2],this.onClickSlider,"button sliderButton");
			var panel = createTiddlyElement(w.output,"div",null,"sliderPanel");
			panel.style.display = (lookaheadMatch[1] == '+' ? "block" : "none");
			wikify(lookaheadMatch[3],panel);
			w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;
		}
   },
   onClickSlider : function(e) {
		if(!e) var e = window.event;
		var n = this.nextSibling;
		n.style.display = (n.style.display=="none") ? "block" : "none";
		return false;
	}
});

//}}}
there's a fellow (RichardBauckham) [[here|http://www.premierradio.org.uk/listen/ondemand.aspx?mediaid={0AECB5BB-FCAE-432F-8224-960C4AD52A5C}]] who says that, while most scholars say that John jumps around chronologically, putting the cleansing of the Temple artificially at the beginning of Jesus's ministry, its actually John who is likely more tied to true chronology than Mark, and that Mathew and Luke just followed Mark's non-chronologic example.  

Part of his arguement is that the SynopticGospels were more vague about time references than John's specific tie-ins to specific Jewish feasts, and it was just more likely that Jesus went to Jerusalem on several occasions, and that Mark concentrated the Jerusalem accounts/stories into one week for literary purposes.
The Evolution / Creation Classroom debate is upside-down in the sense that Christians should not be trying to get creation taught in science class.

They should, however, be arguing that evolution should be taken out of science class because it is not even a true scientific theory. A scientific theory has to be disprovable - it has to make predictions that can be tested. Because the evolution hypothesis describes a process that slowly takes place over millions of years it is impossible to make predictions that can be measured to prove or disprove that theory.

Evolution at best can be called a hypothesis, but more acurately it is a faith-based ideology. What can and are being tested and measured are some of the assumptions that support the hypothesis of evolution, e.g. The RATE study that has examined several aspects of the problems with dating the earth as millions of years old [eg why is carbon14 [max 10,000 years old] found inside diamonds dated by other methods to be supposedly millions of years old]

Lets call a spade a spade:"Evolution as fact" in the classroom is state-sponsored teaching of a faith-based worldview.

See EvolutionaryAssumptions
These are the different interpretations of the bible in the sense of:
*when does the SecondComing of Christ take place in reference to the MillennialKingdom in which Christ reigns for 1000 years (the time which I view as meaning "a really long time)
The problem with "Left Behinders" is that the emphasis is on hunkering down, getting spiritual and not being worldy in the sense of almost not participating in higher orders of society other than to make money and look for opportunities to evangelize on the sinking ship. Church is all and society is the mission-field that will eventually burn up - so why bother trying to effect long term change?
Post-millennialism [partial preterism] on the other hand encourages one to engage with the world, because it is Christ's world and we [being more than conquerors] have already won. We are to continue to pursue our main purpose in life - to glorify God in the midst of a dark but inevitably brightening world [and to evangelise the lost so they don't self-destruct just before things get better]. The Kingdom is all, and the Church is just the self-aware [ruling [if we get off our Chicken Little Duffs]] part of the kingdom
<<tiddler [[Dan 9:24-27]]>>
I see a conflict between what we read in scriptures and how our current culture views the nature of the human soul.  Modern culture, secular or religious, seems to view the soul as indivisible, but I see places in scripture that appears to point to a composite nature.

This speaks to the apparent contradiction of passages that say that all liars will have their place in the lake of fire ([[Hell]]), yet others that gives assurance of our salvation inspite of our falling short of righteousness.  People who are [[Arminians|Arminianism]] have all sorts of problems with these and think that they can loose their salvation (poor sots!)

One example is where Jesus is speaking with Peter.  Within probably a very short period of time he tells Peter he's been given the keys to the Kingdom, and shortly after he looks right at him and says "get behind me Satan"

+++^*[see scripture: Mat 16:13-23]<<tiddler [[Mat 16:13-23]]>>===



..., so when the bible speaks about a person who does evil, is it addressing the indivisible person, the little "i am", or is it talking about the present attitude that is guiding or influencing that person at that time?

+++^*[see also scripture: Mat 25:31-46]<<tiddler [[Mat 25:31-46]]>>===
The Narrow Mind is a podcast / netcast by GeneCook, see here [[here|http://unchainedradio.com/new/index.php]], see also the blog [[here|http://tnma.blogspot.com/]]

|''things I agree with them about'' | ''things I disagree with them about'' |
| anti "left-behind" |adheres to AMillennialism (I adhere to PostMillennialism)|
| is a CredoBaptist | seems to be a HyperCalvinist (but not totally sure)|


go to The_iTunesStore and search for "the narrow mind, cook"
Get iTunes here: http://www.apple.com/itunes/download/
once you have it running, click on iTunes Store on the left side, then search for the podcast you're looking for, then click subscribe

NB: sometimes my downloads stop working mysteriously.  If you get that too, just close iTunes and restart it again - that works for me.
the theme of the bible is one of growing from immaturity to maturity.  I've always thought that, but recently heard this apt description by JamesBJordan.  I think of the old testament as relaying childhood, Christ's time on earth as adolescence and a young marriage (see Reveleation) and the rest of time until death (the final judgement) as a growing marriage.  Right now I'd guess the world is at about the equvalent of a married individual of the age of about the late 20's or early 30's
"..except for this statement - it's absolutely true"
from "Themes from Hebrews: about the book"

#Who wrote this book?
#To whom was it addressed?
#At what time in history was it produced?
#What was the historical occasion that provoked the writing?
because most portrayals of annihilationism are portrayed as the non-existence of hell, a concept which is clearly anti-biblical

2010-05-04 Okay, maybe I am an annihilationist (see the "Hell" series [[here|http://www.beretta-online.com/wordpress/index.php/episode-005-its-one-hell-of-an-episode/]]), as GlennPeoples describes it.  I'll just have to clarify that it isn't saying that Hell doesn't exist.
<!--{{{-->
<!-- <div class='header' macro='gradient vert [[ColorPalette::GrisMacClar]] [[ColorPalette::GrisMacFosc]]'> -->
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>

<span class='TopMenu' refresh='content' tiddler='TopMenu'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>

<div id='mainMenu' refresh='content' force='true' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>
<!-- <div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div> -->
</div>
<div id='displayArea'>

<div id='messageArea'></div>
<div id='tiddlersBar' refresh='none' ondblclick='config.macros.tiddlersBar.onTiddlersBarAction(event)'></div>
<div id='tiddlerDisplay'></div>
</div>
<!--}}}-->
open this topic to see subtopics
*get references more easily seen instead of just tags
*make tooltips into popups
/***
| Name|ToggleTagPlugin|
| Description|Makes a checkbox which toggles a tag in a tiddler|
| Version|3.0 ($Rev: 1845 $)|
| Date|$Date: 2007-03-16 15:19:22 +1000 (Fri, 16 Mar 2007) $|
| Source|http://tiddlyspot.com/mptw/#ToggleTagMacro|
| Author|Simon Baird <simon.baird@gmail.com>|
| License|http://mptw.tiddlyspot.com/#TheBSDLicense|
!Usage
{{{<<toggleTag }}}//{{{TagName TiddlerName LabelText}}}//{{{>>}}}
* TagName - the tag to be toggled, default value "checked"
* TiddlerName - the tiddler to toggle the tag in, default value the current tiddler
* LabelText - the text (gets wikified) to put next to the check box, default value is '{{{[[TagName]]}}}' or '{{{[[TagName]] [[TiddlerName]]}}}'
(If a parameter is '.' then the default will be used)

Examples:

|Code|Description|Example|h
|{{{<<toggleTag>>}}}|Toggles the default tag (checked) in this tiddler|<<toggleTag>>|
|{{{<<toggleTag TagName>>}}}|Toggles the TagName tag in this tiddler|<<toggleTag TagName>>|
|{{{<<toggleTag TagName TiddlerName>>}}}|Toggles the TagName tag in the TiddlerName tiddler|<<toggleTag TagName TiddlerName>>|
|{{{<<toggleTag TagName TiddlerName 'click me'>>}}}|Same but with custom label|<<toggleTag TagName TiddlerName 'click me'>>|
|{{{<<toggleTag . . 'click me'>>}}}|dot means use default value|<<toggleTag . . 'click me'>>|
Notes:
* If TiddlerName doesn't exist it will be silently created
* Set label to '-' to specify no label
* See also http://mgtd-alpha.tiddlyspot.com/#ToggleTag2

!Known issues
* Doesn't smoothly handle the case where you toggle a tag in a tiddler that is current open for editing

***/
//{{{

merge(config.macros,{

	toggleTag: {

		doRefreshAll: true,
		createIfRequired: true,
		shortLabel: "[[%0]]",
		longLabel: "[[%0]] [[%1]]",

		handler: function(place,macroName,params,wikifier,paramString,tiddler) {
			var tag = (params[0] && params[0] != '.') ? params[0] : "checked";
			var title = (params[1] && params[1] != '.') ? params[1] : tiddler.title;
			var defaultLabel = (title == tiddler.title ? this.shortLabel : this.longLabel);
			var label = (params[2] && params[2] != '.') ? params[2] : defaultLabel;
			label = (label == '-' ? '' : label);
			var theTiddler =  title == tiddler.title ? tiddler : store.getTiddler(title);
			var cb = createTiddlyCheckbox(place, label.format([tag,title]), theTiddler && theTiddler.isTagged(tag), function(e) {
				if (!store.tiddlerExists(title)) {
					if (config.macros.toggleTag.createIfRequired) {
						var content = store.getTiddlerText(title); // just in case it's a shadow
						store.saveTiddler(title,title,content?content:"",config.options.txtUserName,new Date(),null);
					}
					else 
						return false;
				}
				store.setTiddlerTag(title,this.checked,tag);
				return true;
			});
		}
	}
});

//}}}
If you don't know where to start reading, pick one of these...
from Mat 24:34 <<search>> <<newHere>> <<references>>

*this is not saying that everything before was false, it's saying "what I am about to say is key above all the rest of my words here"
/***
Contains the stuff you need to use Tiddlyspot
Note you must also have UploadPlugin installed
***/
//{{{

// edit this if you are migrating sites or retrofitting an existing TW
config.tiddlyspotSiteId = 'theglassatlas';

// make it so you can by default see edit controls via http

window.readOnly = false; // make sure of it (for tw 2.2)

// disable autosave in d3
if (window.location.protocol != "file:")
	config.options.chkGTDLazyAutoSave = false;

// tweak shadow tiddlers to add upload button, password entry box etc
with (config.shadowTiddlers) {
	SiteUrl = 'http://'+config.tiddlyspotSiteId+'.tiddlyspot.com';
	SideBarOptions = SideBarOptions.replace(/(<<saveChanges>>)/,"$1<<tiddler TspotSidebar>>");
	OptionsPanel = OptionsPanel.replace(/^/,"<<tiddler TspotOptions>>");
	DefaultTiddlers = DefaultTiddlers.replace(/^/,"WelcomeToTiddlyspot]] ");
	MainMenu = MainMenu.replace(/^/,"[[WelcomeToTiddlyspot]] ");
}

// create some shadow tiddler content
merge(config.shadowTiddlers,{

'WelcomeToTiddlyspot':[
 "This document is a ~TiddlyWiki from tiddlyspot.com.  A ~TiddlyWiki is an electronic notebook that is great for managing todo lists, personal information, and all sorts of things.",
 "",
 "@@font-weight:bold;font-size:1.3em;color:#444; //What now?// &nbsp;&nbsp;@@ Before you can save any changes, you need to enter your password in the form below.  Then configure privacy and other site settings at your [[control panel|http://" + config.tiddlyspotSiteId + ".tiddlyspot.com/controlpanel]] (your control panel username is //" + config.tiddlyspotSiteId + "//).",
 "<<tiddler TspotControls>>",
 "See also GettingStarted.",
 "",
 "@@font-weight:bold;font-size:1.3em;color:#444; //Working online// &nbsp;&nbsp;@@ You can edit this ~TiddlyWiki right now, and save your changes using the \"save to web\" button in the column on the right.",
 "",
 "@@font-weight:bold;font-size:1.3em;color:#444; //Working offline// &nbsp;&nbsp;@@ A fully functioning copy of this ~TiddlyWiki can be saved onto your hard drive or USB stick.  You can make changes and save them locally without being connected to the Internet.  When you're ready to sync up again, just click \"upload\" and your ~TiddlyWiki will be saved back to tiddlyspot.com.",
 "",
 "@@font-weight:bold;font-size:1.3em;color:#444; //Help!// &nbsp;&nbsp;@@ Find out more about ~TiddlyWiki at [[TiddlyWiki.com|http://tiddlywiki.com]].  Also visit [[TiddlyWiki Guides|http://tiddlywikiguides.org]] for documentation on learning and using ~TiddlyWiki. New users are especially welcome on the [[TiddlyWiki mailing list|http://groups.google.com/group/TiddlyWiki]], which is an excellent place to ask questions and get help.  If you have a tiddlyspot related problem email [[tiddlyspot support|mailto:support@tiddlyspot.com]].",
 "",
 "@@font-weight:bold;font-size:1.3em;color:#444; //Enjoy :)// &nbsp;&nbsp;@@ We hope you like using your tiddlyspot.com site.  Please email [[feedback@tiddlyspot.com|mailto:feedback@tiddlyspot.com]] with any comments or suggestions."

].join("\n"),

'TspotControls':[
 "| tiddlyspot password:|<<option pasUploadPassword>>|",
 "| site management:|<<upload http://" + config.tiddlyspotSiteId + ".tiddlyspot.com/store.cgi index.html . .  " + config.tiddlyspotSiteId + ">>//(requires tiddlyspot password)//<<br>>[[control panel|http://" + config.tiddlyspotSiteId + ".tiddlyspot.com/controlpanel]], [[download (go offline)|http://" + config.tiddlyspotSiteId + ".tiddlyspot.com/download]]|",
 "| links:|[[tiddlyspot.com|http://tiddlyspot.com/]], [[FAQs|http://faq.tiddlyspot.com/]], [[announcements|http://announce.tiddlyspot.com/]], [[blog|http://tiddlyspot.com/blog/]], email [[support|mailto:support@tiddlyspot.com]] & [[feedback|mailto:feedback@tiddlyspot.com]], [[donate|http://tiddlyspot.com/?page=donate]]|"

].join("\n"),

'TspotSidebar':[
 "<<upload http://" + config.tiddlyspotSiteId + ".tiddlyspot.com/store.cgi index.html . .  " + config.tiddlyspotSiteId + ">><html><a href='http://" + config.tiddlyspotSiteId + ".tiddlyspot.com/download' class='button'>download</a></html>"

].join("\n"),

'TspotOptions':[
 "tiddlyspot password:",
 "<<option pasUploadPassword>>",
 ""
].join("\n")

});
//}}}
!"So what you're saying is that two contradictory things //''can't''// be true at the same time"

(i.e., each statement contradict the other, so if the first one is true then the second is true (and then the first one becomes false -ha ha))

Also note, while pointing this out may be fun, it probably won't win that person over to Christ.  On the other hand, sometimes its good to place a pebble in their shoe...


this is another gem from GregKoukle

+++^*@[comments:]What if the two ideas are not contradictory? Creation - or a form thereof, AND evolution. Contradictions or simultaneous miracles?! (Vicki P) +++^*@[Dave's answer] That's a good point.  Quite often an apparent contradiction is not an actual contradiction because the contradictions are only within the assumptions surrounding the "thing" being talked about - but not within the actual facts.  There are examples of this type in the apparent contradictions surrounding the first reports of Christ's resurrection.

That said, there are some fundamental problems trying to mix the creation account and evolution.  
*The first is the time frame:  evolution requires huge amounts of time (billions of years).  Although there are Christians that accept that hypothesis, the old earth hypothesis can't jive with a view that takes Genesis to mean 24 hour days when it says "There was evening, and there was morning, marking the first day."
*the second (there are probably more than two...) is that by definition, evolution is not design at all because it supposedly happens by chance/accident/happenstance, whereas creation is entirely and exquisitely designed.  There is a paradox in here, but its not evolution/creation - its [[God's Sovereignty/Free Will|Free Will / Election]] 
=== ===
|''things I agree with them about'' | ''things I disagree with them about'' |
| very civil but willing to engage in discussing God with unbelievers | nothing yet |

 see it [[here|http://www.premier.org.uk/unbelievable]]

go to The_iTunesStore and search for "Unbelievable  premier"
The idea that all humans throughout all of history will be saved (even Hitler)
| !date | !user | !location | !storeUrl | !uploadDir | !toFilename | !backupdir | !origin |
| 12/10/2010 10:19:35 | DaveParker | [[theglassatlas(4).html|file:///home/david/Downloads/theglassatlas(4).html]] | [[store.cgi|http://theglassatlas.tiddlyspot.com/store.cgi]] | . | [[index.html | http://theglassatlas.tiddlyspot.com/index.html]] | . |
| 21/10/2010 12:47:56 | Dave | [[/|http://theglassatlas.tiddlyspot.com/]] | [[store.cgi|http://theglassatlas.tiddlyspot.com/store.cgi]] | . | [[index.html | http://theglassatlas.tiddlyspot.com/index.html]] | . |
| 03/11/2010 13:29:21 | Dave | [[/|http://theglassatlas.tiddlyspot.com/]] | [[store.cgi|http://theglassatlas.tiddlyspot.com/store.cgi]] | . | [[index.html | http://theglassatlas.tiddlyspot.com/index.html]] | . |
| 13/01/2011 08:56:35 | DaveParker | [[/|http://theglassatlas.tiddlyspot.com/]] | [[store.cgi|http://theglassatlas.tiddlyspot.com/store.cgi]] | . | [[index.html | http://theglassatlas.tiddlyspot.com/index.html]] | . | ok |
| 13/01/2011 09:33:14 | DaveParker | [[/|http://theglassatlas.tiddlyspot.com/]] | [[store.cgi|http://theglassatlas.tiddlyspot.com/store.cgi]] | . | [[index.html | http://theglassatlas.tiddlyspot.com/index.html]] | . | ok |
| 13/01/2011 09:36:03 | DaveParker | [[/|http://theglassatlas.tiddlyspot.com/]] | [[store.cgi|http://theglassatlas.tiddlyspot.com/store.cgi]] | . | [[index.html | http://theglassatlas.tiddlyspot.com/index.html]] | . |
| 07/02/2011 10:18:46 | Dave | [[/|http://theglassatlas.tiddlyspot.com/]] | [[store.cgi|http://theglassatlas.tiddlyspot.com/store.cgi]] | . | [[index.html | http://theglassatlas.tiddlyspot.com/index.html]] | . |
| 15/02/2011 10:12:45 | DaveParker | [[/|http://theglassatlas.tiddlyspot.com/]] | [[store.cgi|http://theglassatlas.tiddlyspot.com/store.cgi]] | . | [[index.html | http://theglassatlas.tiddlyspot.com/index.html]] | . |
| 24/02/2011 09:37:19 | DaveParker | [[/|http://theglassatlas.tiddlyspot.com/]] | [[store.cgi|http://theglassatlas.tiddlyspot.com/store.cgi]] | . | [[index.html | http://theglassatlas.tiddlyspot.com/index.html]] | . |
| 21/03/2012 09:23:40 | YourName | [[/|http://theglassatlas.tiddlyspot.com/]] | [[store.cgi|http://theglassatlas.tiddlyspot.com/store.cgi]] | . | [[index.html | http://theglassatlas.tiddlyspot.com/index.html]] | . |
/***
|''Name:''|UploadPlugin|
|''Description:''|Save to web a TiddlyWiki|
|''Version:''|4.1.4|
|''Date:''|2008-08-11|
|''Source:''|http://tiddlywiki.bidix.info/#UploadPlugin|
|''Documentation:''|http://tiddlywiki.bidix.info/#UploadPluginDoc|
|''Author:''|BidiX (BidiX (at) bidix (dot) info)|
|''License:''|[[BSD open source license|http://tiddlywiki.bidix.info/#%5B%5BBSD%20open%20source%20license%5D%5D ]]|
|''~CoreVersion:''|2.2.0|
|''Requires:''|PasswordOptionPlugin|
***/
//{{{
version.extensions.UploadPlugin = {
	major: 4, minor: 1, revision: 4,
	date: new Date("2008-08-11"),
	source: 'http://tiddlywiki.bidix.info/#UploadPlugin',
	author: 'BidiX (BidiX (at) bidix (dot) info',
	coreVersion: '2.2.0'
};

//
// Environment
//

if (!window.bidix) window.bidix = {}; // bidix namespace
bidix.debugMode = false;	// true to activate both in Plugin and UploadService
	
//
// Upload Macro
//

config.macros.upload = {
// default values
	defaultBackupDir: '',	//no backup
	defaultStoreScript: "store.php",
	defaultToFilename: "index.html",
	defaultUploadDir: ".",
	authenticateUser: true	// UploadService Authenticate User
};
	
config.macros.upload.label = {
	promptOption: "Save and Upload this TiddlyWiki with UploadOptions",
	promptParamMacro: "Save and Upload this TiddlyWiki in %0",
	saveLabel: "save to web", 
	saveToDisk: "save to disk",
	uploadLabel: "upload"	

};

config.macros.upload.messages = {
	noStoreUrl: "No store URL in parmeters or options",
	usernameOrPasswordMissing: "Username or password missing"
};

config.macros.upload.handler = function(place,macroName,params) {
	if (readOnly)
		return;
	var label;
	if (document.location.toString().substr(0,4) == "http") 
		label = this.label.saveLabel;
	else
		label = this.label.uploadLabel;
	var prompt;
	if (params[0]) {
		prompt = this.label.promptParamMacro.toString().format([this.destFile(params[0], 
			(params[1] ? params[1]:bidix.basename(window.location.toString())), params[3])]);
	} else {
		prompt = this.label.promptOption;
	}
	createTiddlyButton(place, label, prompt, function() {config.macros.upload.action(params);}, null, null, this.accessKey);
};

config.macros.upload.action = function(params)
{
		// for missing macro parameter set value from options
		if (!params) params = {};
		var storeUrl = params[0] ? params[0] : config.options.txtUploadStoreUrl;
		var toFilename = params[1] ? params[1] : config.options.txtUploadFilename;
		var backupDir = params[2] ? params[2] : config.options.txtUploadBackupDir;
		var uploadDir = params[3] ? params[3] : config.options.txtUploadDir;
		var username = params[4] ? params[4] : config.options.txtUploadUserName;
		var password = config.options.pasUploadPassword; // for security reason no password as macro parameter	
		// for still missing parameter set default value
		if ((!storeUrl) && (document.location.toString().substr(0,4) == "http")) 
			storeUrl = bidix.dirname(document.location.toString())+'/'+config.macros.upload.defaultStoreScript;
		if (storeUrl.substr(0,4) != "http")
			storeUrl = bidix.dirname(document.location.toString()) +'/'+ storeUrl;
		if (!toFilename)
			toFilename = bidix.basename(window.location.toString());
		if (!toFilename)
			toFilename = config.macros.upload.defaultToFilename;
		if (!uploadDir)
			uploadDir = config.macros.upload.defaultUploadDir;
		if (!backupDir)
			backupDir = config.macros.upload.defaultBackupDir;
		// report error if still missing
		if (!storeUrl) {
			alert(config.macros.upload.messages.noStoreUrl);
			clearMessage();
			return false;
		}
		if (config.macros.upload.authenticateUser && (!username || !password)) {
			alert(config.macros.upload.messages.usernameOrPasswordMissing);
			clearMessage();
			return false;
		}
		bidix.upload.uploadChanges(false,null,storeUrl, toFilename, uploadDir, backupDir, username, password); 
		return false; 
};

config.macros.upload.destFile = function(storeUrl, toFilename, uploadDir) 
{
	if (!storeUrl)
		return null;
		var dest = bidix.dirname(storeUrl);
		if (uploadDir && uploadDir != '.')
			dest = dest + '/' + uploadDir;
		dest = dest + '/' + toFilename;
	return dest;
};

//
// uploadOptions Macro
//

config.macros.uploadOptions = {
	handler: function(place,macroName,params) {
		var wizard = new Wizard();
		wizard.createWizard(place,this.wizardTitle);
		wizard.addStep(this.step1Title,this.step1Html);
		var markList = wizard.getElement("markList");
		var listWrapper = document.createElement("div");
		markList.parentNode.insertBefore(listWrapper,markList);
		wizard.setValue("listWrapper",listWrapper);
		this.refreshOptions(listWrapper,false);
		var uploadCaption;
		if (document.location.toString().substr(0,4) == "http") 
			uploadCaption = config.macros.upload.label.saveLabel;
		else
			uploadCaption = config.macros.upload.label.uploadLabel;
		
		wizard.setButtons([
				{caption: uploadCaption, tooltip: config.macros.upload.label.promptOption, 
					onClick: config.macros.upload.action},
				{caption: this.cancelButton, tooltip: this.cancelButtonPrompt, onClick: this.onCancel}
				
			]);
	},
	options: [
		"txtUploadUserName",
		"pasUploadPassword",
		"txtUploadStoreUrl",
		"txtUploadDir",
		"txtUploadFilename",
		"txtUploadBackupDir",
		"chkUploadLog",
		"txtUploadLogMaxLine"		
	],
	refreshOptions: function(listWrapper) {
		var opts = [];
		for(i=0; i<this.options.length; i++) {
			var opt = {};
			opts.push();
			opt.option = "";
			n = this.options[i];
			opt.name = n;
			opt.lowlight = !config.optionsDesc[n];
			opt.description = opt.lowlight ? this.unknownDescription : config.optionsDesc[n];
			opts.push(opt);
		}
		var listview = ListView.create(listWrapper,opts,this.listViewTemplate);
		for(n=0; n<opts.length; n++) {
			var type = opts[n].name.substr(0,3);
			var h = config.macros.option.types[type];
			if (h && h.create) {
				h.create(opts[n].colElements['option'],type,opts[n].name,opts[n].name,"no");
			}
		}
		
	},
	onCancel: function(e)
	{
		backstage.switchTab(null);
		return false;
	},
	
	wizardTitle: "Upload with options",
	step1Title: "These options are saved in cookies in your browser",
	step1Html: "<input type='hidden' name='markList'></input><br>",
	cancelButton: "Cancel",
	cancelButtonPrompt: "Cancel prompt",
	listViewTemplate: {
		columns: [
			{name: 'Description', field: 'description', title: "Description", type: 'WikiText'},
			{name: 'Option', field: 'option', title: "Option", type: 'String'},
			{name: 'Name', field: 'name', title: "Name", type: 'String'}
			],
		rowClasses: [
			{className: 'lowlight', field: 'lowlight'} 
			]}
};

//
// upload functions
//

if (!bidix.upload) bidix.upload = {};

if (!bidix.upload.messages) bidix.upload.messages = {
	//from saving
	invalidFileError: "The original file '%0' does not appear to be a valid TiddlyWiki",
	backupSaved: "Backup saved",
	backupFailed: "Failed to upload backup file",
	rssSaved: "RSS feed uploaded",
	rssFailed: "Failed to upload RSS feed file",
	emptySaved: "Empty template uploaded",
	emptyFailed: "Failed to upload empty template file",
	mainSaved: "Main TiddlyWiki file uploaded",
	mainFailed: "Failed to upload main TiddlyWiki file. Your changes have not been saved",
	//specific upload
	loadOriginalHttpPostError: "Can't get original file",
	aboutToSaveOnHttpPost: 'About to upload on %0 ...',
	storePhpNotFound: "The store script '%0' was not found."

};

bidix.upload.uploadChanges = function(onlyIfDirty,tiddlers,storeUrl,toFilename,uploadDir,backupDir,username,password)
{
	var callback = function(status,uploadParams,original,url,xhr) {
		if (!status) {
			displayMessage(bidix.upload.messages.loadOriginalHttpPostError);
			return;
		}
		if (bidix.debugMode) 
			alert(original.substr(0,500)+"\n...");
		// Locate the storeArea div's 
		var posDiv = locateStoreArea(original);
		if((posDiv[0] == -1) || (posDiv[1] == -1)) {
			alert(config.messages.invalidFileError.format([localPath]));
			return;
		}
		bidix.upload.uploadRss(uploadParams,original,posDiv);
	};
	
	if(onlyIfDirty && !store.isDirty())
		return;
	clearMessage();
	// save on localdisk ?
	if (document.location.toString().substr(0,4) == "file") {
		var path = document.location.toString();
		var localPath = getLocalPath(path);
		saveChanges();
	}
	// get original
	var uploadParams = new Array(storeUrl,toFilename,uploadDir,backupDir,username,password);
	var originalPath = document.location.toString();
	// If url is a directory : add index.html
	if (originalPath.charAt(originalPath.length-1) == "/")
		originalPath = originalPath + "index.html";
	var dest = config.macros.upload.destFile(storeUrl,toFilename,uploadDir);
	var log = new bidix.UploadLog();
	log.startUpload(storeUrl, dest, uploadDir,  backupDir);
	displayMessage(bidix.upload.messages.aboutToSaveOnHttpPost.format([dest]));
	if (bidix.debugMode) 
		alert("about to execute Http - GET on "+originalPath);
	var r = doHttp("GET",originalPath,null,null,username,password,callback,uploadParams,null);
	if (typeof r == "string")
		displayMessage(r);
	return r;
};

bidix.upload.uploadRss = function(uploadParams,original,posDiv) 
{
	var callback = function(status,params,responseText,url,xhr) {
		if(status) {
			var destfile = responseText.substring(responseText.indexOf("destfile:")+9,responseText.indexOf("\n", responseText.indexOf("destfile:")));
			displayMessage(bidix.upload.messages.rssSaved,bidix.dirname(url)+'/'+destfile);
			bidix.upload.uploadMain(params[0],params[1],params[2]);
		} else {
			displayMessage(bidix.upload.messages.rssFailed);			
		}
	};
	// do uploadRss
	if(config.options.chkGenerateAnRssFeed) {
		var rssPath = uploadParams[1].substr(0,uploadParams[1].lastIndexOf(".")) + ".xml";
		var rssUploadParams = new Array(uploadParams[0],rssPath,uploadParams[2],'',uploadParams[4],uploadParams[5]);
		var rssString = generateRss();
		// no UnicodeToUTF8 conversion needed when location is "file" !!!
		if (document.location.toString().substr(0,4) != "file")
			rssString = convertUnicodeToUTF8(rssString);	
		bidix.upload.httpUpload(rssUploadParams,rssString,callback,Array(uploadParams,original,posDiv));
	} else {
		bidix.upload.uploadMain(uploadParams,original,posDiv);
	}
};

bidix.upload.uploadMain = function(uploadParams,original,posDiv) 
{
	var callback = function(status,params,responseText,url,xhr) {
		var log = new bidix.UploadLog();
		if(status) {
			// if backupDir specified
			if ((params[3]) && (responseText.indexOf("backupfile:") > -1))  {
				var backupfile = responseText.substring(responseText.indexOf("backupfile:")+11,responseText.indexOf("\n", responseText.indexOf("backupfile:")));
				displayMessage(bidix.upload.messages.backupSaved,bidix.dirname(url)+'/'+backupfile);
			}
			var destfile = responseText.substring(responseText.indexOf("destfile:")+9,responseText.indexOf("\n", responseText.indexOf("destfile:")));
			displayMessage(bidix.upload.messages.mainSaved,bidix.dirname(url)+'/'+destfile);
			store.setDirty(false);
			log.endUpload("ok");
		} else {
			alert(bidix.upload.messages.mainFailed);
			displayMessage(bidix.upload.messages.mainFailed);
			log.endUpload("failed");			
		}
	};
	// do uploadMain
	var revised = bidix.upload.updateOriginal(original,posDiv);
	bidix.upload.httpUpload(uploadParams,revised,callback,uploadParams);
};

bidix.upload.httpUpload = function(uploadParams,data,callback,params)
{
	var localCallback = function(status,params,responseText,url,xhr) {
		url = (url.indexOf("nocache=") < 0 ? url : url.substring(0,url.indexOf("nocache=")-1));
		if (xhr.status == 404)
			alert(bidix.upload.messages.storePhpNotFound.format([url]));
		if ((bidix.debugMode) || (responseText.indexOf("Debug mode") >= 0 )) {
			alert(responseText);
			if (responseText.indexOf("Debug mode") >= 0 )
				responseText = responseText.substring(responseText.indexOf("\n\n")+2);
		} else if (responseText.charAt(0) != '0') 
			alert(responseText);
		if (responseText.charAt(0) != '0')
			status = null;
		callback(status,params,responseText,url,xhr);
	};
	// do httpUpload
	var boundary = "---------------------------"+"AaB03x";	
	var uploadFormName = "UploadPlugin";
	// compose headers data
	var sheader = "";
	sheader += "--" + boundary + "\r\nContent-disposition: form-data; name=\"";
	sheader += uploadFormName +"\"\r\n\r\n";
	sheader += "backupDir="+uploadParams[3] +
				";user=" + uploadParams[4] +
				";password=" + uploadParams[5] +
				";uploaddir=" + uploadParams[2];
	if (bidix.debugMode)
		sheader += ";debug=1";
	sheader += ";;\r\n"; 
	sheader += "\r\n" + "--" + boundary + "\r\n";
	sheader += "Content-disposition: form-data; name=\"userfile\"; filename=\""+uploadParams[1]+"\"\r\n";
	sheader += "Content-Type: text/html;charset=UTF-8" + "\r\n";
	sheader += "Content-Length: " + data.length + "\r\n\r\n";
	// compose trailer data
	var strailer = new String();
	strailer = "\r\n--" + boundary + "--\r\n";
	data = sheader + data + strailer;
	if (bidix.debugMode) alert("about to execute Http - POST on "+uploadParams[0]+"\n with \n"+data.substr(0,500)+ " ... ");
	var r = doHttp("POST",uploadParams[0],data,"multipart/form-data; ;charset=UTF-8; boundary="+boundary,uploadParams[4],uploadParams[5],localCallback,params,null);
	if (typeof r == "string")
		displayMessage(r);
	return r;
};

// same as Saving's updateOriginal but without convertUnicodeToUTF8 calls
bidix.upload.updateOriginal = function(original, posDiv)
{
	if (!posDiv)
		posDiv = locateStoreArea(original);
	if((posDiv[0] == -1) || (posDiv[1] == -1)) {
		alert(config.messages.invalidFileError.format([localPath]));
		return;
	}
	var revised = original.substr(0,posDiv[0] + startSaveArea.length) + "\n" +
				store.allTiddlersAsHtml() + "\n" +
				original.substr(posDiv[1]);
	var newSiteTitle = getPageTitle().htmlEncode();
	revised = revised.replaceChunk("<title"+">","</title"+">"," " + newSiteTitle + " ");
	revised = updateMarkupBlock(revised,"PRE-HEAD","MarkupPreHead");
	revised = updateMarkupBlock(revised,"POST-HEAD","MarkupPostHead");
	revised = updateMarkupBlock(revised,"PRE-BODY","MarkupPreBody");
	revised = updateMarkupBlock(revised,"POST-SCRIPT","MarkupPostBody");
	return revised;
};

//
// UploadLog
// 
// config.options.chkUploadLog :
//		false : no logging
//		true : logging
// config.options.txtUploadLogMaxLine :
//		-1 : no limit
//      0 :  no Log lines but UploadLog is still in place
//		n :  the last n lines are only kept
//		NaN : no limit (-1)

bidix.UploadLog = function() {
	if (!config.options.chkUploadLog) 
		return; // this.tiddler = null
	this.tiddler = store.getTiddler("UploadLog");
	if (!this.tiddler) {
		this.tiddler = new Tiddler();
		this.tiddler.title = "UploadLog";
		this.tiddler.text = "| !date | !user | !location | !storeUrl | !uploadDir | !toFilename | !backupdir | !origin |";
		this.tiddler.created = new Date();
		this.tiddler.modifier = config.options.txtUserName;
		this.tiddler.modified = new Date();
		store.addTiddler(this.tiddler);
	}
	return this;
};

bidix.UploadLog.prototype.addText = function(text) {
	if (!this.tiddler)
		return;
	// retrieve maxLine when we need it
	var maxLine = parseInt(config.options.txtUploadLogMaxLine,10);
	if (isNaN(maxLine))
		maxLine = -1;
	// add text
	if (maxLine != 0) 
		this.tiddler.text = this.tiddler.text + text;
	// Trunck to maxLine
	if (maxLine >= 0) {
		var textArray = this.tiddler.text.split('\n');
		if (textArray.length > maxLine + 1)
			textArray.splice(1,textArray.length-1-maxLine);
			this.tiddler.text = textArray.join('\n');		
	}
	// update tiddler fields
	this.tiddler.modifier = config.options.txtUserName;
	this.tiddler.modified = new Date();
	store.addTiddler(this.tiddler);
	// refresh and notifiy for immediate update
	story.refreshTiddler(this.tiddler.title);
	store.notify(this.tiddler.title, true);
};

bidix.UploadLog.prototype.startUpload = function(storeUrl, toFilename, uploadDir,  backupDir) {
	if (!this.tiddler)
		return;
	var now = new Date();
	var text = "\n| ";
	var filename = bidix.basename(document.location.toString());
	if (!filename) filename = '/';
	text += now.formatString("0DD/0MM/YYYY 0hh:0mm:0ss") +" | ";
	text += config.options.txtUserName + " | ";
	text += "[["+filename+"|"+location + "]] |";
	text += " [[" + bidix.basename(storeUrl) + "|" + storeUrl + "]] | ";
	text += uploadDir + " | ";
	text += "[[" + bidix.basename(toFilename) + " | " +toFilename + "]] | ";
	text += backupDir + " |";
	this.addText(text);
};

bidix.UploadLog.prototype.endUpload = function(status) {
	if (!this.tiddler)
		return;
	this.addText(" "+status+" |");
};

//
// Utilities
// 

bidix.checkPlugin = function(plugin, major, minor, revision) {
	var ext = version.extensions[plugin];
	if (!
		(ext  && 
			((ext.major > major) || 
			((ext.major == major) && (ext.minor > minor))  ||
			((ext.major == major) && (ext.minor == minor) && (ext.revision >= revision))))) {
			// write error in PluginManager
			if (pluginInfo)
				pluginInfo.log.push("Requires " + plugin + " " + major + "." + minor + "." + revision);
			eval(plugin); // generate an error : "Error: ReferenceError: xxxx is not defined"

	}
};

bidix.dirname = function(filePath) {
	if (!filePath) 
		return;
	var lastpos;
	if ((lastpos = filePath.lastIndexOf("/")) != -1) {
		return filePath.substring(0, lastpos);
	} else {
		return filePath.substring(0, filePath.lastIndexOf("\\"));
	}
};

bidix.basename = function(filePath) {
	if (!filePath) 
		return;
	var lastpos;
	if ((lastpos = filePath.lastIndexOf("#")) != -1) 
		filePath = filePath.substring(0, lastpos);
	if ((lastpos = filePath.lastIndexOf("/")) != -1) {
		return filePath.substring(lastpos + 1);
	} else
		return filePath.substring(filePath.lastIndexOf("\\")+1);
};

bidix.initOption = function(name,value) {
	if (!config.options[name])
		config.options[name] = value;
};

//
// Initializations
//

// require PasswordOptionPlugin 1.0.1 or better
bidix.checkPlugin("PasswordOptionPlugin", 1, 0, 1);

// styleSheet
setStylesheet('.txtUploadStoreUrl, .txtUploadBackupDir, .txtUploadDir {width: 22em;}',"uploadPluginStyles");

//optionsDesc
merge(config.optionsDesc,{
	txtUploadStoreUrl: "Url of the UploadService script (default: store.php)",
	txtUploadFilename: "Filename of the uploaded file (default: in index.html)",
	txtUploadDir: "Relative Directory where to store the file (default: . (downloadService directory))",
	txtUploadBackupDir: "Relative Directory where to backup the file. If empty no backup. (default: ''(empty))",
	txtUploadUserName: "Upload Username",
	pasUploadPassword: "Upload Password",
	chkUploadLog: "do Logging in UploadLog (default: true)",
	txtUploadLogMaxLine: "Maximum of lines in UploadLog (default: 10)"

});

// Options Initializations
bidix.initOption('txtUploadStoreUrl','');
bidix.initOption('txtUploadFilename','');
bidix.initOption('txtUploadDir','');
bidix.initOption('txtUploadBackupDir','');
bidix.initOption('txtUploadUserName','');
bidix.initOption('pasUploadPassword','');
bidix.initOption('chkUploadLog',true);
bidix.initOption('txtUploadLogMaxLine','10');


// Backstage
merge(config.tasks,{
	uploadOptions: {text: "upload", tooltip: "Change UploadOptions and Upload", content: '<<uploadOptions>>'}
});
config.backstageTasks.push("uploadOptions");


//}}}

[[MptwViewTemplate]]
Hi, this is the spot where I jot down random (and not always internally consistent) thoughts about how the world really works (i.e. from a biblical perspective).  You'll probably disagree with me at some point, but I hope its at least interesting.  //This is mainly targeted at those who already consider themselves to be believers in Christ.//
*Warning:  no guarantees about the regularity of posting here
*[[How this is different from a Blog]]

To start reading, ''click one of the things over on the left'' (but not the "Controls" - that's for me (okay, you can click that if you want, but its not very interesting))
If you get too many paragraphs open, just click the "c" on the floating thingie on the right
*when viewing subtopics by hovering over "peek", go from the bottom up instead of the top down (you'll see why...)

here's more details about HowToUseThisThing



also: this is best viewed by using the FirefoxBrowser, not Internet Explorer
 

According to Revelation, at the end of the great tribulation Satan was thrown into the abyss and will be released at the end of the millenial kingdom to wreak havok for a short while. So if Satan isn't here now, why is there so much evil in the world?

First, lets not forget about sin...

Second, how many angels were created to begin with? Let's guess, say 10 billion. 1/3 turned to the dark side, so what is that, 3 billion and change? Okay 3 billion minus 3 (satan, the beast, and the false prophet) - that still leaves a lot of demons to stir things up.

+++[here's a conversation about this with DD Warren|click]
http://www.preteristsite.com/wordpress/?p=345#comment-1069

I'm still not sure I agree with her.  It seems that satan being bound during Christ's ministry is distinct from the thing that John is describing in Revelation.  Just as the period after AD70 is distinct from the period before it.
===
tbc...
What does it really matter what your creation and end time views are as long as you're saved, right? 

Well, my argument is that it really does affect your attitude in several ways. Take climate change, for example: If you believe the scientists who say the earth is billions of years old, then all this rapid melting of this glacier and that ice shelf represents an abrupt [and therefore alarming] change. On top of that, if you're a pre-millennialist, this sense of alarm could feed right in to thoughts that "the end is near". Now I do believe we should be personally ready at all times as our individual ends may be near, but living with the sense that our own children likely won't live long enough [before the rapture happens] to die of old age can really change your perspective on life [more on this later]

Back to climate change: if on the other hand we see the earth as roughly 6-10,000 years old, then the things that are happening with the climate are on the same scale as the rest of history and don't represent a drastic change.

Some quick examples of dating problems: 
#a plane of early vintage found buried in greenland ice in a layer normally interpreted as being up to 10,000 years old. 
#Human artifacts found embedded in coal. 
#Carbon14 found in diamonds. [more on this later too.]
#Helium in rocks that should have long ago diffused out
#the presence of any comets at all (should have melted away millions of years ago)


+++^*@[Comments]

Vicki P says:
>I am not a scientist, so I cannot refute your examples of dating problems. The does not mean, however, that your statements cannot be refuted. Have you sent your questions to Quirks & Quarks (I think that's a CBC radio science show)? You would have to give more detail as to the source of your examples, so that they could be researched, but it would be interesting to hear what scientists have to say about this. +++^*@[Dave's response] I have occasionally sent in questions / comments in response to various things I've heard that to me seemed blatantly one-sided, asking to have the Christian view equally represented, but my jaded/cynical side thinks that they dismiss such "patently false" views as unworthy of consideration (i.e. there was no response)  Maybe I'll try again with a really specific question about the Helium or maybe argon halos in granite.  If they answer, I'll post back here, and/or email you ===


>As for global warming, I'm considering starting a protest to picket the Suzuki Foundation offices -- if the globe is getting warmer then shouldn't we have the benefit of a little warmth on this, the first day of summer?? If not a record cold June, it has been pretty close to one here (nothing like Alberta, of course, but there were fewer blossoms in February!). I believe that "no" means "no" and I believe that "warm" should mean "warm"!! How's that for a scientific attitude?!+++^*@[Dave's response] Amen sister!! I could use a little less -40 and a little more +30 C ===
Vicki-P | 06.21.08 - 12:21 am | # 
===

...but not so many in the New Testament?

I view the life of Isreal / the Church as like that of an individual.  When a person is a child (Israel), the parents (GodTheFather) intervene quite often (Miracles).  Then, after the tumult of adolescence (the early church before AD70), the adult is now left to the wisdom they've learned and continue to learn to guide them from the inside, without so much overt help from the parent.

That said, the miracles and supernatural things more apparent in the Old Testament were actual things that physically happened, but for the purpose to act throughout the rest of history as object lessons on things that are actually of a spiritual (and therefore, more inward)  nature
quote:
!"there is no problem in your Christian life other than sin"

If you disagree with that one... just think a little longer.


[[This sermon about the repentance of David after his famous sin|http://www.christkirk.com/sermons/mp3/1581.mp3]] is a good one.  Click the link to listen.

N.B.   this church is pretty traditional, so the first couple minutes may seem a little weird.
I always wondered how it was that the world kept under control.  I mean, there was a moment when I realized there was no Prime Minister or President of the world.  There were powerful people and powerful institutions, but no one thing or one person could ever possibly direct or guide of control the way things happened in the world.

Now I know the world is under control of the ruler sitting at the right hand of God.  He has the best way of influence - through the hearts of believers over the centuries, and the consequences of their decisions while under the influence of the Holy Spirit.  Of course its also directed by those without Christ (see how God uses Babylon, and Egypt, and Alexander the Great, and Rome, and..)
Hi there, 

My name is Dave and I have no special theology training (other than all the [[podcasts I listen to|Podcasts I listen to]]), just a lot of curiosity.  I'm a member of a Baptist church in Alberta, Canada if that helps.
!Why this isn't [[Universalism]]

the traditional thought of universalism (that is correctly argued against) was that even the guy that says "Jesus was not who he said he was" will be saved by Christ.  This is different in that within the idea of the PartialSoul, the part of that person who says that will be destroyed in [[Hell]].  If there are any parts or attitudes in that person that Jesus has caused to be, such as maybe being obedient to his parents as a child, then that part of him will remain and he will be similar in the Resurrection to David's son who died as a child. 
/***
|''Name:''|WikifiedMessagesPlugin|
|''Description:''|Wikify displayMessage text  |
|''Author:''|PaulDowney (psd (at) osmosoft (dot) com) |
|''Source:''|http://whatfettle.com/2008/07/WikifiedMessagesPlugin/ |
|''CodeRepository:''|http://svn.tiddlywiki.org/Trunk/contributors/PaulDowney/plugins/WikifiedMessagesPlugin/ |
|''Version:''|0.3|
|''License:''|[[BSD License|http://www.opensource.org/licenses/bsd-license.php]] |
|''Comments:''|Please make comments at http://groups.google.co.uk/group/TiddlyWikiDev |
|''~CoreVersion:''|2.4|
!!Documentation
A plugin to replace the core displayMessage function with a version which wikifies the message text.
The construction of the [close] single message and [close all] buttons has been seperated to be overrideable and the created message div is returned by displayMessage, for extensibility by other plugins.
!!Code
***/
//{{{
if(!version.extensions.WikifiedMessagesPlugin) {
version.extensions.WikifiedMessagesPlugin = {installed:true};

	if(!config.extensions){
		config.extensions = {};
	}

	config.extensions.WikifiedMessages = {

		createClearAllButton: function(msgArea)
		{
			return (msgArea.hasChildNodes())? null :
				createTiddlyButton(createTiddlyElement(msgArea,"div",null,"messageToolbar"),
					config.messages.messageClose.text,
					config.messages.messageClose.tooltip,
					clearMessage);
		},
		createClearMessageButton: function(e)
		{
			return null;
		},
		getMessageDiv: function()
		{
			var msgArea = document.getElementById("messageArea");
			var me = config.extensions.WikifiedMessages;
			if(!msgArea){
				return null;
			}
			msgArea.style.display = "block";
			me.createClearAllButton(msgArea);
			e = createTiddlyElement(msgArea,"div",null,"messageBox");
			me.createClearMessageButton(e);
			return e;
		},
		displayMessage: function(text,linkText)
		{
			var e = getMessageDiv();
			if(!e) {
				alert(wikifyPlain(text));
				return null;
			}
			if(linkText) {
				text = "[["+text+"|"+linkText+"]]";
			}
			t = createTiddlyElement(e,"span",null,"messageText");
			t.innerHTML = wikifyStatic(text);
			return e;
		}
	};

	displayMessage = config.extensions.WikifiedMessages.displayMessage;
	getMessageDiv = config.extensions.WikifiedMessages.getMessageDiv;

        // macro, useful for testing
        config.macros.DisplayMessage = {
                handler: function(place,macroName,params,wikifier,paramString,tiddler){
                        displayMessage(paramString);
                }
        };
}
//}}}
If we are to assume that this civilization in which we now live is the FifthEmpire, the millennial kingdom, then what are we to do with the concept of worldliness? At the time of the new testament writings, the fourth empire [Rome] was the world, and worldliness meant doing things as the Romans did - rule through fear, lust, greed, and generally just plain old self interest.

But what about now? Take a look around you. Take a look at your roads and schools and hospitals and cars and computers and laws and freedoms. Do you honestly think this all happened through the worldliness of selfish people? God used Babylon as a stick to whack Judah "upside the head". Don't you think he's running the show now [in spite of all the same selfish people]?
I'm not talking about any one nation - I'm talking about this Empire that Christ has built through people "infected" with His Spirit and the fruit of that spirit - is
" love, joy, peace, patience, kindness, goodness, faithfulness, gentleness, self-control; against such things there is no law."

And regarding those who are not "infected", He also is reining with an iron rod:

Rev 19v15 From His mouth comes a sharp sword, so that with it He may strike down the nations, and He will rule them with a rod of iron ; and He treads the wine press of the fierce wrath of God, the Almighty."

so anyway, if Satan is no longer ruler of this world, but Christ is then we have to be careful with what we consider "worldliness".

Someone [maybe Adrian Rogers?] defined worldliness as anything that makes sin appear normal. I like that. But what about those that assist their ministries with successful business models? Is that worldliness?

I have to go to sleep now, but I'll return to this question, the answer to which I think can be found in 2Peter:

5 Now for this very reason also, applying all diligence, in your faith supply moral excellence, and in your moral excellence, knowledge, 
6 and in your knowledge, self-control, and in your self-control, perseverance, and in your perseverance, godliness, 
7 and in your godliness, brotherly kindness, and in your brotherly kindness, love. 
8 For if these qualities are yours and are increasing, they render you neither useless nor unfruitful in the true knowledge of our Lord Jesus Christ. 
9 For he who lacks these qualities is blind or short-sighted, having forgotten his purification from his former sins.

<<haloscan comments>>
are you sure about that?

After believing for years that the earth was billions of years old, I now think that it is most reasonable to believe that the earth is young.  My reasons will slowly appear in the category (unless, of course, I change my mind again ;-)  Also, arguements against the theory of evolution will show up here as one depends upon the other.
/***
|''Name:''|YourSearchPlugin|
|''Version:''|2.1.2 (2008-03-17)|
|''Source:''|http://tiddlywiki.abego-software.de/#YourSearchPlugin|
|''Author:''|UdoBorkowski (ub [at] abego-software [dot] de)|
|''Licence:''|[[BSD open source license (abego Software)|http://www.abego-software.de/legal/apl-v10.html]]|
|''Copyright:''|&copy; 2005-2008 [[abego Software|http://www.abego-software.de]]|
|''~CoreVersion:''|2.1.0|
|''Community:''|[[del.icio.us|http://del.icio.us/post?url=http://tiddlywiki.abego-software.de/index.html%23YourSearchPlugin]]|
|''Browser:''|Firefox 1.0.4+; Firefox 1.5; ~InternetExplorer 6.0|
!About YourSearch
YourSearch gives you a bunch of new features to simplify and speed up your daily searches in TiddlyWiki. It seamlessly integrates into the standard TiddlyWiki search: just start typing into the 'search' field and explore!

For more information see [[Help|YourSearch Help]].
!Compatibility
This plugin requires TiddlyWiki 2.1. 
Check the [[archive|http://tiddlywiki.abego-software.de/archive]] for ~YourSearchPlugins supporting older versions of TiddlyWiki.
!Source Code
***/
/***
This plugin's source code is compressed (and hidden). Use this [[link|http://tiddlywiki.abego-software.de/archive/YourSearchPlugin/Plugin-YourSearch-src.2.1.2.js]] to get the readable source code.
***/
///%
if(!version.extensions.YourSearchPlugin){version.extensions.YourSearchPlugin={major:2,minor:1,revision:2,source:"http://tiddlywiki.abego-software.de/#YourSearchPlugin",licence:"[[BSD open source license (abego Software)|http://www.abego-software.de/legal/apl-v10.html]]",copyright:"Copyright (c) abego Software GmbH, 2005-2007 (www.abego-software.de)"};if(!window.abego){window.abego={};}if(!Array.forEach){Array.forEach=function(_1,_2,_3){for(var i=0,len=_1.length;i<len;i++){_2.call(_3,_1[i],i,_1);}};Array.prototype.forEach=function(_5,_6){for(var i=0,len=this.length;i<len;i++){_5.call(_6,this[i],i,this);}};}abego.toInt=function(s,_9){if(!s){return _9;}var n=parseInt(s);return (n==NaN)?_9:n;};abego.createEllipsis=function(_b){var e=createTiddlyElement(_b,"span");e.innerHTML="&hellip;";};abego.shallowCopy=function(_d){if(!_d){return _d;}var _e={};for(var n in _d){_e[n]=_d[n];}return _e;};abego.copyOptions=function(_10){return !_10?{}:abego.shallowCopy(_10);};abego.countStrings=function(_11,s){if(!s){return 0;}var len=s.length;var n=0;var _15=0;while(1){var i=_11.indexOf(s,_15);if(i<0){return n;}n++;_15=i+len;}return n;};abego.getBracedText=function(_17,_18,_19){if(!_18){_18=0;}var re=/\{([^\}]*)\}/gm;re.lastIndex=_18;var m=re.exec(_17);if(m){var s=m[1];var _1d=abego.countStrings(s,"{");if(!_1d){if(_19){_19.lastIndex=re.lastIndex;}return s;}var len=_17.length;for(var i=re.lastIndex;i<len&&_1d;i++){var c=_17.charAt(i);if(c=="{"){_1d++;}else{if(c=="}"){_1d--;}}}if(!_1d){if(_19){_19.lastIndex=i-1;}return _17.substring(m.index+1,i-1);}}};abego.select=function(_21,_22,_23,_24){if(!_24){_24=[];}_21.forEach(function(t){if(_22.call(_23,t)){_24.push(t);}});return _24;};abego.TiddlerFilterTerm=function(_26,_27){if(!_27){_27={};}var _28=_26;if(!_27.textIsRegExp){_28=_26.escapeRegExp();if(_27.fullWordMatch){_28="\\b"+_28+"\\b";}}var _29=new RegExp(_28,"m"+(_27.caseSensitive?"":"i"));this.tester=new abego.MultiFieldRegExpTester(_29,_27.fields,_27.withExtendedFields);};abego.TiddlerFilterTerm.prototype.test=function(_2a){return this.tester.test(_2a);};abego.parseNewTiddlerCommandLine=function(s){var m=/(.*?)\.(?:\s+|$)([^#]*)(#.*)?/.exec(s);if(!m){m=/([^#]*)()(#.*)?/.exec(s);}if(m){var r;if(m[3]){var s2=m[3].replace(/#/g,"");r=s2.parseParams("tag");}else{r=[[]];}var _2f=m[2]?m[2].trim():"";r.push({name:"text",value:_2f});r[0].text=[_2f];return {title:m[1].trim(),params:r};}else{return {title:s.trim(),params:[[]]};}};abego.parseTiddlerFilterTerm=function(_30,_31,_32){var re=/\s*(?:(?:\{([^\}]*)\})|(?:(=)|([#%!])|(?:(\w+)\s*\:(?!\/\/))|(?:(?:("(?:(?:\\")|[^"])+")|(?:\/((?:(?:\\\/)|[^\/])+)\/)|(\w+\:\/\/[^\s]+)|([^\s\)\-\"]+)))))/mg;var _34={"!":"title","%":"text","#":"tags"};var _35={};var _36;re.lastIndex=_31;while(1){var i=re.lastIndex;var m=re.exec(_30);if(!m||m.index!=i){throw "Word or String literal expected";}if(m[1]){var _39={};var _3a=abego.getBracedText(_30,0,_39);if(!_3a){throw "Invalid {...} syntax";}var f=Function("tiddler","return ("+_3a+");");return {func:f,lastIndex:_39.lastIndex,markRE:null};}if(m[2]){_36=true;}else{if(m[3]){_35[_34[m[3]]]=1;}else{if(m[4]){_35[m[4]]=1;}else{var _3c=m[6];var _3d=m[5]?window.eval(m[5]):m[6]?m[6]:m[7]?m[7]:m[8];var _3e=abego.copyOptions(_3e);_3e.fullWordMatch=_36;_3e.textIsRegExp=_3c;var _3f=[];for(var n in _35){_3f.push(n);}if(_3f.length==0){_3e.fields=_3e.defaultFields;}else{_3e.fields=_3f;_3e.withExtendedFields=false;}var _41=new abego.TiddlerFilterTerm(_3d,_3e);var _42=_3c?_3d:_3d.escapeRegExp();if(_42&&_36){_42="\\b"+_42+"\\b";}return {func:function(_43){return _41.test(_43);},lastIndex:re.lastIndex,markRE:_42?"(?:"+_42+")":null};}}}}};abego.BoolExp=function(s,_45,_46){this.s=s;var _47=_46&&_46.defaultOperationIs_OR;var _48=/\s*(?:(\-|not)|(\())/gi;var _49=/\s*\)/g;var _4a=/\s*(?:(and|\&\&)|(or|\|\|))/gi;var _4b=/\s*[^\)\s]/g;var _4c=/\s*(\-|not)?(\s*\()?/gi;var _4d;var _4e=function(_4f){_4c.lastIndex=_4f;var m=_4c.exec(s);var _51;var _52;if(m&&m.index==_4f){_4f+=m[0].length;_51=m[1];if(m[2]){var e=_4d(_4f);_49.lastIndex=e.lastIndex;if(!_49.exec(s)){throw "Missing ')'";}_52={func:e.func,lastIndex:_49.lastIndex,markRE:e.markRE};}}if(!_52){_52=_45(s,_4f,_46);}if(_51){_52.func=(function(f){return function(_55){return !f(_55);};})(_52.func);_52.markRE=null;}return _52;};_4d=function(_56){var _57=_4e(_56);while(1){var l=_57.lastIndex;_4a.lastIndex=l;var m=_4a.exec(s);var _5a;var _5b;if(m&&m.index==l){_5a=!m[1];_5b=_4e(_4a.lastIndex);}else{try{_5b=_4e(l);}catch(e){return _57;}_5a=_47;}_57.func=(function(_5c,_5d,_5e){return _5e?function(_5f){return _5c(_5f)||_5d(_5f);}:function(_60){return _5c(_60)&&_5d(_60);};})(_57.func,_5b.func,_5a);_57.lastIndex=_5b.lastIndex;if(!_57.markRE){_57.markRE=_5b.markRE;}else{if(_5b.markRE){_57.markRE=_57.markRE+"|"+_5b.markRE;}}}};var _61=_4d(0);this.evalFunc=_61.func;if(_61.markRE){this.markRegExp=new RegExp(_61.markRE,_46.caseSensitive?"mg":"img");}};abego.BoolExp.prototype.exec=function(){return this.evalFunc.apply(this,arguments);};abego.BoolExp.prototype.getMarkRegExp=function(){return this.markRegExp;};abego.BoolExp.prototype.toString=function(){return this.s;};abego.MultiFieldRegExpTester=function(re,_63,_64){this.re=re;this.fields=_63?_63:["title","text","tags"];this.withExtendedFields=_64;};abego.MultiFieldRegExpTester.prototype.test=function(_65){var re=this.re;for(var i=0;i<this.fields.length;i++){var s=store.getValue(_65,this.fields[i]);if(typeof s=="string"&&re.test(s)){return this.fields[i];}}if(this.withExtendedFields){return store.forEachField(_65,function(_69,_6a,_6b){return typeof _6b=="string"&&re.test(_6b)?_6a:null;},true);}return null;};abego.TiddlerQuery=function(_6c,_6d,_6e,_6f,_70){if(_6e){this.regExp=new RegExp(_6c,_6d?"mg":"img");this.tester=new abego.MultiFieldRegExpTester(this.regExp,_6f,_70);}else{this.expr=new abego.BoolExp(_6c,abego.parseTiddlerFilterTerm,{defaultFields:_6f,caseSensitive:_6d,withExtendedFields:_70});}this.getQueryText=function(){return _6c;};this.getUseRegExp=function(){return _6e;};this.getCaseSensitive=function(){return _6d;};this.getDefaultFields=function(){return _6f;};this.getWithExtendedFields=function(){return _70;};};abego.TiddlerQuery.prototype.test=function(_71){if(!_71){return false;}if(this.regExp){return this.tester.test(_71);}return this.expr.exec(_71);};abego.TiddlerQuery.prototype.filter=function(_72){return abego.select(_72,this.test,this);};abego.TiddlerQuery.prototype.getMarkRegExp=function(){if(this.regExp){return "".search(this.regExp)>=0?null:this.regExp;}return this.expr.getMarkRegExp();};abego.TiddlerQuery.prototype.toString=function(){return (this.regExp?this.regExp:this.expr).toString();};abego.PageWiseRenderer=function(){this.firstIndexOnPage=0;};merge(abego.PageWiseRenderer.prototype,{setItems:function(_73){this.items=_73;this.setFirstIndexOnPage(0);},getMaxPagesInNavigation:function(){return 10;},getItemsCount:function(_74){return this.items?this.items.length:0;},getCurrentPageIndex:function(){return Math.floor(this.firstIndexOnPage/this.getItemsPerPage());},getLastPageIndex:function(){return Math.floor((this.getItemsCount()-1)/this.getItemsPerPage());},setFirstIndexOnPage:function(_75){this.firstIndexOnPage=Math.min(Math.max(0,_75),this.getItemsCount()-1);},getFirstIndexOnPage:function(){this.firstIndexOnPage=Math.floor(this.firstIndexOnPage/this.getItemsPerPage())*this.getItemsPerPage();return this.firstIndexOnPage;},getLastIndexOnPage:function(){return Math.min(this.getFirstIndexOnPage()+this.getItemsPerPage()-1,this.getItemsCount()-1);},onPageChanged:function(_76,_77){},renderPage:function(_78){if(_78.beginRendering){_78.beginRendering(this);}try{if(this.getItemsCount()){var _79=this.getLastIndexOnPage();var _7a=-1;for(var i=this.getFirstIndexOnPage();i<=_79;i++){_7a++;_78.render(this,this.items[i],i,_7a);}}}finally{if(_78.endRendering){_78.endRendering(this);}}},addPageNavigation:function(_7c){if(!this.getItemsCount()){return;}var _7d=this;var _7e=function(e){if(!e){var e=window.event;}var _81=abego.toInt(this.getAttribute("page"),0);var _82=_7d.getCurrentPageIndex();if(_81==_82){return;}var _83=_81*_7d.getItemsPerPage();_7d.setFirstIndexOnPage(_83);_7d.onPageChanged(_81,_82);};var _84;var _85=this.getCurrentPageIndex();var _86=this.getLastPageIndex();if(_85>0){_84=createTiddlyButton(_7c,"Previous","Go to previous page (Shortcut: Alt-'<')",_7e,"prev");_84.setAttribute("page",(_85-1).toString());_84.setAttribute("accessKey","<");}for(var i=-this.getMaxPagesInNavigation();i<this.getMaxPagesInNavigation();i++){var _88=_85+i;if(_88<0){continue;}if(_88>_86){break;}var _89=(i+_85+1).toString();var _8a=_88==_85?"currentPage":"otherPage";_84=createTiddlyButton(_7c,_89,"Go to page %0".format([_89]),_7e,_8a);_84.setAttribute("page",(_88).toString());}if(_85<_86){_84=createTiddlyButton(_7c,"Next","Go to next page (Shortcut: Alt-'>')",_7e,"next");_84.setAttribute("page",(_85+1).toString());_84.setAttribute("accessKey",">");}}});abego.LimitedTextRenderer=function(){var _8b=40;var _8c=4;var _8d=function(_8e,_8f,_90){var n=_8e.length;if(n==0){_8e.push({start:_8f,end:_90});return;}var i=0;for(;i<n;i++){var _93=_8e[i];if(_93.start<=_90&&_8f<=_93.end){var r;var _95=i+1;for(;_95<n;_95++){r=_8e[_95];if(r.start>_90||_8f>_93.end){break;}}var _96=_8f;var _97=_90;for(var j=i;j<_95;j++){r=_8e[j];_96=Math.min(_96,r.start);_97=Math.max(_97,r.end);}_8e.splice(i,_95-i,{start:_96,end:_97});return;}if(_93.start>_90){break;}}_8e.splice(i,0,{start:_8f,end:_90});};var _99=function(_9a){var _9b=0;for(var i=0;i<_9a.length;i++){var _9d=_9a[i];_9b+=_9d.end-_9d.start;}return _9b;};var _9e=function(c){return (c>="a"&&c<="z")||(c>="A"&&c<="Z")||c=="_";};var _a0=function(s,_a2){if(!_9e(s[_a2])){return null;}for(var i=_a2-1;i>=0&&_9e(s[i]);i--){}var _a4=i+1;var n=s.length;for(i=_a2+1;i<n&&_9e(s[i]);i++){}return {start:_a4,end:i};};var _a6=function(s,_a8,_a9){var _aa;if(_a9){_aa=_a0(s,_a8);}else{if(_a8<=0){return _a8;}_aa=_a0(s,_a8-1);}if(!_aa){return _a8;}if(_a9){if(_aa.start>=_a8-_8c){return _aa.start;}if(_aa.end<=_a8+_8c){return _aa.end;}}else{if(_aa.end<=_a8+_8c){return _aa.end;}if(_aa.start>=_a8-_8c){return _aa.start;}}return _a8;};var _ab=function(s,_ad){var _ae=[];if(_ad){var _af=0;var n=s.length;var _b1=0;do{_ad.lastIndex=_af;var _b2=_ad.exec(s);if(_b2){if(_af<_b2.index){var t=s.substring(_af,_b2.index);_ae.push({text:t});}_ae.push({text:_b2[0],isMatch:true});_af=_b2.index+_b2[0].length;}else{_ae.push({text:s.substr(_af)});break;}}while(true);}else{_ae.push({text:s});}return _ae;};var _b4=function(_b5){var _b6=0;for(var i=0;i<_b5.length;i++){if(_b5[i].isMatch){_b6++;}}return _b6;};var _b8=function(s,_ba,_bb,_bc,_bd){var _be=Math.max(Math.floor(_bd/(_bc+1)),_8b);var _bf=Math.max(_be-(_bb-_ba),0);var _c0=Math.min(Math.floor(_bb+_bf/3),s.length);var _c1=Math.max(_c0-_be,0);_c1=_a6(s,_c1,true);_c0=_a6(s,_c0,false);return {start:_c1,end:_c0};};var _c2=function(_c3,s,_c5){var _c6=[];var _c7=_b4(_c3);var pos=0;for(var i=0;i<_c3.length;i++){var t=_c3[i];var _cb=t.text;if(t.isMatch){var _cc=_b8(s,pos,pos+_cb.length,_c7,_c5);_8d(_c6,_cc.start,_cc.end);}pos+=_cb.length;}return _c6;};var _cd=function(s,_cf,_d0){var _d1=_d0-_99(_cf);while(_d1>0){if(_cf.length==0){_8d(_cf,0,_a6(s,_d0,false));return;}else{var _d2=_cf[0];var _d3;var _d4;if(_d2.start==0){_d3=_d2.end;if(_cf.length>1){_d4=_cf[1].start;}else{_8d(_cf,_d3,_a6(s,_d3+_d1,false));return;}}else{_d3=0;_d4=_d2.start;}var _d5=Math.min(_d4,_d3+_d1);_8d(_cf,_d3,_d5);_d1-=(_d5-_d3);}}};var _d6=function(_d7,s,_d9,_da,_db){if(_da.length==0){return;}var _dc=function(_dd,s,_df,_e0,_e1){var t;var _e3;var pos=0;var i=0;var _e6=0;for(;i<_df.length;i++){t=_df[i];_e3=t.text;if(_e0<pos+_e3.length){_e6=_e0-pos;break;}pos+=_e3.length;}var _e7=_e1-_e0;for(;i<_df.length&&_e7>0;i++){t=_df[i];_e3=t.text.substr(_e6);_e6=0;if(_e3.length>_e7){_e3=_e3.substr(0,_e7);}if(t.isMatch){createTiddlyElement(_dd,"span",null,"marked",_e3);}else{createTiddlyText(_dd,_e3);}_e7-=_e3.length;}if(_e1<s.length){abego.createEllipsis(_dd);}};if(_da[0].start>0){abego.createEllipsis(_d7);}var _e8=_db;for(var i=0;i<_da.length&&_e8>0;i++){var _ea=_da[i];var len=Math.min(_ea.end-_ea.start,_e8);_dc(_d7,s,_d9,_ea.start,_ea.start+len);_e8-=len;}};this.render=function(_ec,s,_ee,_ef){if(s.length<_ee){_ee=s.length;}var _f0=_ab(s,_ef);var _f1=_c2(_f0,s,_ee);_cd(s,_f1,_ee);_d6(_ec,s,_f0,_f1,_ee);};};(function(){function alertAndThrow(msg){alert(msg);throw msg;}if(version.major<2||(version.major==2&&version.minor<1)){alertAndThrow("YourSearchPlugin requires TiddlyWiki 2.1 or newer.\n\nCheck the archive for YourSearch plugins\nsupporting older versions of TiddlyWiki.\n\nArchive: http://tiddlywiki.abego-software.de/archive");}abego.YourSearch={};var _f3;var _f4;var _f5=function(_f6){_f3=_f6;};var _f7=function(){return _f3?_f3:[];};var _f8=function(){return _f3?_f3.length:0;};var _f9=4;var _fa=10;var _fb=2;var _fc=function(s,re){var m=s.match(re);return m?m.length:0;};var _100=function(_101,_102){var _103=_102.getMarkRegExp();if(!_103){return 1;}var _104=_101.title.match(_103);var _105=_104?_104.length:0;var _106=_fc(_101.getTags(),_103);var _107=_104?_104.join("").length:0;var _108=_101.title.length>0?_107/_101.title.length:0;var rank=_105*_f9+_106*_fb+_108*_fa+1;return rank;};var _10a=function(_10b,_10c,_10d,_10e,_10f,_110){_f4=null;var _111=_10b.reverseLookup("tags",_110,false);try{var _112=[];if(config.options.chkSearchInTitle){_112.push("title");}if(config.options.chkSearchInText){_112.push("text");}if(config.options.chkSearchInTags){_112.push("tags");}_f4=new abego.TiddlerQuery(_10c,_10d,_10e,_112,config.options.chkSearchExtendedFields);}catch(e){return [];}var _113=_f4.filter(_111);var _114=abego.YourSearch.getRankFunction();for(var i=0;i<_113.length;i++){var _116=_113[i];var rank=_114(_116,_f4);_116.searchRank=rank;}if(!_10f){_10f="title";}var _118=function(a,b){var _11b=a.searchRank-b.searchRank;if(_11b==0){if(a[_10f]==b[_10f]){return (0);}else{return (a[_10f]<b[_10f])?-1:+1;}}else{return (_11b>0)?-1:+1;}};_113.sort(_118);return _113;};var _11c=80;var _11d=50;var _11e=250;var _11f=50;var _120=25;var _121=10;var _122="yourSearchResult";var _123="yourSearchResultItems";var _124;var _125;var _126;var _127;var _128;var _129=function(){if(version.extensions.YourSearchPlugin.styleSheetInited){return;}version.extensions.YourSearchPlugin.styleSheetInited=true;setStylesheet(store.getTiddlerText("YourSearchStyleSheet"),"yourSearch");};var _12a=function(){return _125!=null&&_125.parentNode==document.body;};var _12b=function(){if(_12a()){document.body.removeChild(_125);}};var _12c=function(e){_12b();var _12e=this.getAttribute("tiddlyLink");if(_12e){var _12f=this.getAttribute("withHilite");var _130=highlightHack;if(_12f&&_12f=="true"&&_f4){highlightHack=_f4.getMarkRegExp();}story.displayTiddler(this,_12e);highlightHack=_130;}return (false);};var _131=function(){if(!_126){return;}var root=_126;var _133=findPosX(root);var _134=findPosY(root);var _135=root.offsetHeight;var _136=_133;var _137=_134+_135;var _138=findWindowWidth();if(_138<_125.offsetWidth){_125.style.width=(_138-100)+"px";_138=findWindowWidth();}var _139=_125.offsetWidth;if(_136+_139>_138){_136=_138-_139-30;}if(_136<0){_136=0;}_125.style.left=_136+"px";_125.style.top=_137+"px";_125.style.display="block";};var _13a=function(){if(_125){window.scrollTo(0,ensureVisible(_125));}if(_126){window.scrollTo(0,ensureVisible(_126));}};var _13b=function(){_131();_13a();};var _13c;var _13d;var _13e=new abego.PageWiseRenderer();var _13f=function(_140){this.itemHtml=store.getTiddlerText("YourSearchItemTemplate");if(!this.itemHtml){alertAndThrow("YourSearchItemTemplate not found");}this.place=document.getElementById(_123);if(!this.place){this.place=createTiddlyElement(_140,"div",_123);}};merge(_13f.prototype,{render:function(_141,_142,_143,_144){_13c=_144;_13d=_142;var item=createTiddlyElement(this.place,"div",null,"yourSearchItem");item.innerHTML=this.itemHtml;applyHtmlMacros(item,null);refreshElements(item,null);},endRendering:function(_146){_13d=null;}});var _147=function(){if(!_125||!_126){return;}var html=store.getTiddlerText("YourSearchResultTemplate");if(!html){html="<b>Tiddler YourSearchResultTemplate not found</b>";}_125.innerHTML=html;applyHtmlMacros(_125,null);refreshElements(_125,null);var _149=new _13f(_125);_13e.renderPage(_149);_13b();};_13e.getItemsPerPage=function(){var n=(config.options.chkPreviewText)?abego.toInt(config.options.txtItemsPerPageWithPreview,_121):abego.toInt(config.options.txtItemsPerPage,_120);return (n>0)?n:1;};_13e.onPageChanged=function(){_147();};var _14b=function(){if(_126==null||!config.options.chkUseYourSearch){return;}if((_126.value==_124)&&_124&&!_12a()){if(_125&&(_125.parentNode!=document.body)){document.body.appendChild(_125);_13b();}else{abego.YourSearch.onShowResult(true);}}};var _14c=function(){_12b();_125=null;_124=null;};var _14d=function(self,e){while(e!=null){if(self==e){return true;}e=e.parentNode;}return false;};var _150=function(e){if(e.target==_126){return;}if(e.target==_127){return;}if(_125&&_14d(_125,e.target)){return;}_12b();};var _152=function(e){if(e.keyCode==27){_12b();}};addEvent(document,"click",_150);addEvent(document,"keyup",_152);var _154=function(text,_156,_157){_124=text;_f5(_10a(store,text,_156,_157,"title","excludeSearch"));abego.YourSearch.onShowResult();};var _158=function(_159,_15a,_15b,_15c,_15d,_15e){_129();_124="";var _15f=null;var _160=function(txt){if(config.options.chkUseYourSearch){_154(txt.value,config.options.chkCaseSensitiveSearch,config.options.chkRegExpSearch);}else{story.search(txt.value,config.options.chkCaseSensitiveSearch,config.options.chkRegExpSearch);}_124=txt.value;};var _162=function(e){_160(_126);return false;};var _164=function(e){if(!e){var e=window.event;}_126=this;switch(e.keyCode){case 13:if(e.ctrlKey&&_128&&_12a()){_128.onclick.apply(_128,[e]);}else{_160(this);}break;case 27:if(_12a()){_12b();}else{this.value="";clearMessage();}break;}if(String.fromCharCode(e.keyCode)==this.accessKey||e.altKey){_14b();}if(this.value.length<3&&_15f){clearTimeout(_15f);}if(this.value.length>2){if(this.value!=_124){if(!config.options.chkUseYourSearch||config.options.chkSearchAsYouType){if(_15f){clearTimeout(_15f);}var txt=this;_15f=setTimeout(function(){_160(txt);},500);}}else{if(_15f){clearTimeout(_15f);}}}if(this.value.length==0){_12b();}};var _168=function(e){this.select();clearMessage();_14b();};var args=_15d.parseParams("list",null,true);var _16b=getFlag(args,"buttonAtRight");var _16c=getParam(args,"sizeTextbox",this.sizeTextbox);var btn;if(!_16b){btn=createTiddlyButton(_159,this.label,this.prompt,_162);}var txt=createTiddlyElement(_159,"input",null,null,null);if(_15b[0]){txt.value=_15b[0];}txt.onkeyup=_164;txt.onfocus=_168;txt.setAttribute("size",_16c);txt.setAttribute("accessKey",this.accessKey);txt.setAttribute("autocomplete","off");if(config.browser.isSafari){txt.setAttribute("type","search");txt.setAttribute("results","5");}else{txt.setAttribute("type","text");}if(_16b){btn=createTiddlyButton(_159,this.label,this.prompt,_162);}_126=txt;_127=btn;};var _16f=function(){_12b();var _170=_f7();var n=_170.length;if(n){var _172=[];for(var i=0;i<n;i++){_172.push(_170[i].title);}story.displayTiddlers(null,_172);}};var _174=function(_175,_176,_177,_178){invokeMacro(_175,"option",_176,_177,_178);var elem=_175.lastChild;var _17a=elem.onclick;elem.onclick=function(e){var _17c=_17a.apply(this,arguments);_147();return _17c;};return elem;};var _17d=function(s){var _17f=["''","{{{","}}}","//","<<<","/***","***/"];var _180="";for(var i=0;i<_17f.length;i++){if(i!=0){_180+="|";}_180+="("+_17f[i].escapeRegExp()+")";}return s.replace(new RegExp(_180,"mg"),"").trim();};var _182=function(){var i=_13c;return (i>=0&&i<=9)?(i<9?(i+1):0):-1;};var _184=new abego.LimitedTextRenderer();var _185=function(_186,s,_188){_184.render(_186,s,_188,_f4.getMarkRegExp());};var _189=TiddlyWiki.prototype.saveTiddler;TiddlyWiki.prototype.saveTiddler=function(_18a,_18b,_18c,_18d,_18e,tags,_190){_189.apply(this,arguments);_14c();};var _191=TiddlyWiki.prototype.removeTiddler;TiddlyWiki.prototype.removeTiddler=function(_192){_191.apply(this,arguments);_14c();};config.macros.yourSearch={label:"yourSearch",prompt:"Gives access to the current/last YourSearch result",handler:function(_193,_194,_195,_196,_197,_198){if(_195.length==0){return;}var name=_195[0];var func=config.macros.yourSearch.funcs[name];if(func){func(_193,_194,_195,_196,_197,_198);}},tests:{"true":function(){return true;},"false":function(){return false;},"found":function(){return _f8()>0;},"previewText":function(){return config.options.chkPreviewText;}},funcs:{itemRange:function(_19b){if(_f8()){var _19c=_13e.getLastIndexOnPage();var s="%0 - %1".format([_13e.getFirstIndexOnPage()+1,_19c+1]);createTiddlyText(_19b,s);}},count:function(_19e){createTiddlyText(_19e,_f8().toString());},query:function(_19f){if(_f4){createTiddlyText(_19f,_f4.toString());}},version:function(_1a0){var t="YourSearch %0.%1.%2".format([version.extensions.YourSearchPlugin.major,version.extensions.YourSearchPlugin.minor,version.extensions.YourSearchPlugin.revision]);var e=createTiddlyElement(_1a0,"a");e.setAttribute("href","http://tiddlywiki.abego-software.de/#YourSearchPlugin");e.innerHTML="<font color=\"black\" face=\"Arial, Helvetica, sans-serif\">"+t+"<font>";},copyright:function(_1a3){var e=createTiddlyElement(_1a3,"a");e.setAttribute("href","http://www.abego-software.de");e.innerHTML="<font color=\"black\" face=\"Arial, Helvetica, sans-serif\">&copy; 2005-2006 <b><font color=\"red\">abego</font></b> Software<font>";},newTiddlerButton:function(_1a5){if(_f4){var r=abego.parseNewTiddlerCommandLine(_f4.getQueryText());var btn=config.macros.newTiddler.createNewTiddlerButton(_1a5,r.title,r.params,"new tiddler","Create a new tiddler based on search text. (Shortcut: Ctrl-Enter; Separators: '.', '#')",null,"text");var _1a8=btn.onclick;btn.onclick=function(){_12b();_1a8.apply(this,arguments);};_128=btn;}},linkButton:function(_1a9,_1aa,_1ab,_1ac,_1ad,_1ae){if(_1ab<2){return;}var _1af=_1ab[1];var text=_1ab<3?_1af:_1ab[2];var _1b1=_1ab<4?text:_1ab[3];var _1b2=_1ab<5?null:_1ab[4];var btn=createTiddlyButton(_1a9,text,_1b1,_12c,null,null,_1b2);btn.setAttribute("tiddlyLink",_1af);},closeButton:function(_1b4,_1b5,_1b6,_1b7,_1b8,_1b9){var _1ba=createTiddlyButton(_1b4,"close","Close the Search Results (Shortcut: ESC)",_12b);},openAllButton:function(_1bb,_1bc,_1bd,_1be,_1bf,_1c0){var n=_f8();if(n==0){return;}var _1c2=n==1?"open tiddler":"open all %0 tiddlers".format([n]);var _1c3=createTiddlyButton(_1bb,_1c2,"Open all found tiddlers (Shortcut: Alt-O)",_16f);_1c3.setAttribute("accessKey","O");},naviBar:function(_1c4,_1c5,_1c6,_1c7,_1c8,_1c9){_13e.addPageNavigation(_1c4);},"if":function(_1ca,_1cb,_1cc,_1cd,_1ce,_1cf){if(_1cc.length<2){return;}var _1d0=_1cc[1];var _1d1=(_1d0=="not");if(_1d1){if(_1cc.length<3){return;}_1d0=_1cc[2];}var test=config.macros.yourSearch.tests[_1d0];var _1d3=false;try{if(test){_1d3=test(_1ca,_1cb,_1cc,_1cd,_1ce,_1cf)!=_1d1;}else{_1d3=(!eval(_1d0))==_1d1;}}catch(ex){}if(!_1d3){_1ca.style.display="none";}},chkPreviewText:function(_1d4,_1d5,_1d6,_1d7,_1d8,_1d9){var _1da=_1d6.slice(1).join(" ");var elem=_174(_1d4,"chkPreviewText",_1d7,_1d9);elem.setAttribute("accessKey","P");elem.title="Show text preview of found tiddlers (Shortcut: Alt-P)";return elem;}}};config.macros.foundTiddler={label:"foundTiddler",prompt:"Provides information on the tiddler currently processed on the YourSearch result page",handler:function(_1dc,_1dd,_1de,_1df,_1e0,_1e1){var name=_1de[0];var func=config.macros.foundTiddler.funcs[name];if(func){func(_1dc,_1dd,_1de,_1df,_1e0,_1e1);}},funcs:{title:function(_1e4,_1e5,_1e6,_1e7,_1e8,_1e9){if(!_13d){return;}var _1ea=_182();var _1eb=_1ea>=0?"Open tiddler (Shortcut: Alt-%0)".format([_1ea.toString()]):"Open tiddler";var btn=createTiddlyButton(_1e4,null,_1eb,_12c,null);btn.setAttribute("tiddlyLink",_13d.title);btn.setAttribute("withHilite","true");_185(btn,_13d.title,_11c);if(_1ea>=0){btn.setAttribute("accessKey",_1ea.toString());}},tags:function(_1ed,_1ee,_1ef,_1f0,_1f1,_1f2){if(!_13d){return;}_185(_1ed,_13d.getTags(),_11d);},text:function(_1f3,_1f4,_1f5,_1f6,_1f7,_1f8){if(!_13d){return;}_185(_1f3,_17d(_13d.text),_11e);},field:function(_1f9,_1fa,_1fb,_1fc,_1fd,_1fe){if(!_13d){return;}var name=_1fb[1];var len=_1fb.length>2?abego.toInt(_1fb[2],_11f):_11f;var v=store.getValue(_13d,name);if(v){_185(_1f9,_17d(v),len);}},number:function(_202,_203,_204,_205,_206,_207){var _208=_182();if(_208>=0){var text="%0)".format([_208.toString()]);createTiddlyElement(_202,"span",null,"shortcutNumber",text);}}}};var opts={chkUseYourSearch:true,chkPreviewText:true,chkSearchAsYouType:true,chkSearchInTitle:true,chkSearchInText:true,chkSearchInTags:true,chkSearchExtendedFields:true,txtItemsPerPage:_120,txtItemsPerPageWithPreview:_121};for(var n in opts){if(config.options[n]==undefined){config.options[n]=opts[n];}}config.shadowTiddlers.AdvancedOptions+="\n<<option chkUseYourSearch>> Use 'Your Search' //([[more options|YourSearch Options]]) ([[help|YourSearch Help]])// ";config.shadowTiddlers["YourSearch Help"]="!Field Search\nWith the Field Search you can restrict your search to certain fields of a tiddler, e.g"+" only search the tags or only the titles. The general form is //fieldname//'':''//textToSearch// (e."+"g. {{{title:intro}}}). In addition one-character shortcuts are also supported for the standard field"+"s {{{title}}}, {{{text}}} and {{{tags}}}:\n|!What you want|!What you type|!Example|\n|Search ''titles "+"only''|start word with ''!''|{{{!jonny}}} (shortcut for {{{title:jonny}}})|\n|Search ''contents/text "+"only''|start word with ''%''|{{{%football}}} (shortcut for {{{text:football}}})|\n|Search ''tags only"+"''|start word with ''#''|{{{#Plugin}}} (shortcut for {{{tags:Plugin}}})|\n\nUsing this feature you may"+" also search the extended fields (\"Metadata\") introduced with TiddlyWiki 2.1, e.g. use {{{priority:1"+"}}} to find all tiddlers with the priority field set to \"1\".\n\nYou may search a word in more than one"+" field. E.g. {{{!#Plugin}}} (or {{{title:tags:Plugin}}} in the \"long form\") finds tiddlers containin"+"g \"Plugin\" either in the title or in the tags (but does not look for \"Plugin\" in the text). \n\n!Boole"+"an Search\nThe Boolean Search is useful when searching for multiple words.\n|!What you want|!What you "+"type|!Example|\n|''All words'' must exist|List of words|{{{jonny jeremy}}} (or {{{jonny and jeremy}}}"+")|\n|''At least one word'' must exist|Separate words by ''or''|{{{jonny or jeremy}}}|\n|A word ''must "+"not exist''|Start word with ''-''|{{{-jonny}}} (or {{{not jonny}}})|\n\n''Note:'' When you specify two"+" words, separated with a space, YourSearch finds all tiddlers that contain both words, but not neces"+"sarily next to each other. If you want to find a sequence of word, e.g. '{{{John Brown}}}', you need"+" to put the words into quotes. I.e. you type: {{{\"john brown\"}}}.\n\nUsing parenthesis you may change "+"the default \"left to right\" evaluation of the boolean search. E.g. {{{not (jonny or jeremy)}}} finds"+" all tiddlers that contain neither \"jonny\" nor \"jeremy. In contrast to this {{{not jonny or jeremy}}"+"} (i.e. without parenthesis) finds all tiddlers that either don't contain \"jonny\" or that contain \"j"+"eremy\".\n\n!'Exact Word' Search\nBy default a search result all matches that 'contain' the searched tex"+"t. E.g. if you search for {{{Task}}} you will get all tiddlers containing 'Task', but also '~Complet"+"edTask', '~TaskForce' etc.\n\nIf you only want to get the tiddlers that contain 'exactly the word' you"+" need to prefix it with a '='. E.g. typing '=Task' will find the tiddlers that contain the word 'Tas"+"k', ignoring words that just contain 'Task' as a substring.\n\n!~CaseSensitiveSearch and ~RegExpSearch"+"\nThe standard search options ~CaseSensitiveSearch and ~RegExpSearch are fully supported by YourSearc"+"h. However when ''~RegExpSearch'' is on Filtered and Boolean Search are disabled.\n\nIn addition you m"+"ay do a \"regular expression\" search even with the ''~RegExpSearch'' set to false by directly enterin"+"g the regular expression into the search field, framed with {{{/.../}}}. \n\nExample: {{{/m[ae][iy]er/"+"}}} will find all tiddlers that contain either \"maier\", \"mayer\", \"meier\" or \"meyer\".\n\n!~JavaScript E"+"xpression Filtering\nIf you are familiar with JavaScript programming and know some TiddlyWiki interna"+"ls you may also use JavaScript expression for the search. Just enter a JavaScript boolean expression"+" into the search field, framed with {{{ { ... } }}}. In the code refer to the variable tiddler and e"+"valuate to {{{true}}} when the given tiddler should be included in the result. \n\nExample: {{{ { tidd"+"ler.modified > new Date(\"Jul 4, 2005\")} }}} returns all tiddler modified after July 4th, 2005.\n\n!Com"+"bined Search\nYou are free to combine the various search options. \n\n''Examples''\n|!What you type|!Res"+"ult|\n|{{{!jonny !jeremy -%football}}}|all tiddlers with both {{{jonny}}} and {{{jeremy}}} in its tit"+"les, but no {{{football}}} in content.|\n|{{{#=Task}}}|All tiddlers tagged with 'Task' (the exact wor"+"d). Tags named '~CompletedTask', '~TaskForce' etc. are not considered.|\n\n!Access Keys\nYou are encour"+"aged to use the access keys (also called \"shortcut\" keys) for the most frequently used operations. F"+"or quick reference these shortcuts are also mentioned in the tooltip for the various buttons etc.\n\n|"+"!Key|!Operation|\n|{{{Alt-F}}}|''The most important keystroke'': It moves the cursor to the search in"+"put field so you can directly start typing your query. Pressing {{{Alt-F}}} will also display the pr"+"evious search result. This way you can quickly display multiple tiddlers using \"Press {{{Alt-F}}}. S"+"elect tiddler.\" sequences.|\n|{{{ESC}}}|Closes the [[YourSearch Result]]. When the [[YourSearch Resul"+"t]] is already closed and the cursor is in the search input field the field's content is cleared so "+"you start a new query.|\n|{{{Alt-1}}}, {{{Alt-2}}},... |Pressing these keys opens the first, second e"+"tc. tiddler from the result list.|\n|{{{Alt-O}}}|Opens all found tiddlers.|\n|{{{Alt-P}}}|Toggles the "+"'Preview Text' mode.|\n|{{{Alt-'<'}}}, {{{Alt-'>'}}}|Displays the previous or next page in the [[Your"+"Search Result]].|\n|{{{Return}}}|When you have turned off the 'as you type' search mode pressing the "+"{{{Return}}} key actually starts the search (as does pressing the 'search' button).|\n\n//If some of t"+"hese shortcuts don't work for you check your browser if you have other extensions installed that alr"+"eady \"use\" these shortcuts.//";config.shadowTiddlers["YourSearch Options"]="|>|!YourSearch Options|\n|>|<<option chkUseYourSearch>> Use 'Your Search'|\n|!|<<option chkPreviewText"+">> Show Text Preview|\n|!|<<option chkSearchAsYouType>> 'Search As You Type' Mode (No RETURN required"+" to start search)|\n|!|Default Search Filter:<<option chkSearchInTitle>>Title ('!')     <<option chk"+"SearchInText>>Text ('%')     <<option chkSearchInTags>>Tags ('#')    <<option chkSearchExtendedFiel"+"ds>>Extended Fields<html><br><font size=\"-2\">The fields of a tiddlers that are searched when you don"+"'t explicitly specify a filter in the search text <br>(Explictly specify fields using one or more '!"+"', '%', '#' or 'fieldname:' prefix before the word/text to find).</font></html>|\n|!|Number of items "+"on search result page: <<option txtItemsPerPage>>|\n|!|Number of items on search result page with pre"+"view text: <<option txtItemsPerPageWithPreview>>|\n";config.shadowTiddlers["YourSearchStyleSheet"]="/***\n!~YourSearchResult Stylesheet\n***/\n/*{{{*/\n.yourSearchResult {\n\tposition: absolute;\n\twidth: 800"+"px;\n\n\tpadding: 0.2em;\n\tlist-style: none;\n\tmargin: 0;\n\n\tbackground: #ffd;\n\tborder: 1px solid DarkGra"+"y;\n}\n\n/*}}}*/\n/***\n!!Summary Section\n***/\n/*{{{*/\n.yourSearchResult .summary {\n\tborder-bottom-width:"+" thin;\n\tborder-bottom-style: solid;\n\tborder-bottom-color: #999999;\n\tpadding-bottom: 4px;\n}\n\n.yourSea"+"rchRange, .yourSearchCount, .yourSearchQuery   {\n\tfont-weight: bold;\n}\n\n.yourSearchResult .summary ."+"button {\n\tfont-size: 10px;\n\n\tpadding-left: 0.3em;\n\tpadding-right: 0.3em;\n}\n\n.yourSearchResult .summa"+"ry .chkBoxLabel {\n\tfont-size: 10px;\n\n\tpadding-right: 0.3em;\n}\n\n/*}}}*/\n/***\n!!Items Area\n***/\n/*{{{*"+"/\n.yourSearchResult .marked {\n\tbackground: none;\n\tfont-weight: bold;\n}\n\n.yourSearchItem {\n\tmargin-to"+"p: 2px;\n}\n\n.yourSearchNumber {\n\tcolor: #808080;\n}\n\n\n.yourSearchTags {\n\tcolor: #008000;\n}\n\n.yourSearc"+"hText {\n\tcolor: #808080;\n\tmargin-bottom: 6px;\n}\n\n/*}}}*/\n/***\n!!Footer\n***/\n/*{{{*/\n.yourSearchFoote"+"r {\n\tmargin-top: 8px;\n\tborder-top-width: thin;\n\tborder-top-style: solid;\n\tborder-top-color: #999999;"+"\n}\n\n.yourSearchFooter a:hover{\n\tbackground: none;\n\tcolor: none;\n}\n/*}}}*/\n/***\n!!Navigation Bar\n***/"+"\n/*{{{*/\n.yourSearchNaviBar a {\n\tfont-size: 16px;\n\tmargin-left: 4px;\n\tmargin-right: 4px;\n\tcolor: bla"+"ck;\n\ttext-decoration: underline;\n}\n\n.yourSearchNaviBar a:hover {\n\tbackground-color: none;\n}\n\n.yourSe"+"archNaviBar .prev {\n\tfont-weight: bold;\n\tcolor: blue;\n}\n\n.yourSearchNaviBar .currentPage {\n\tcolor: #"+"FF0000;\n\tfont-weight: bold;\n\ttext-decoration: none;\n}\n\n.yourSearchNaviBar .next {\n\tfont-weight: bold"+";\n\tcolor: blue;\n}\n/*}}}*/\n";config.shadowTiddlers["YourSearchResultTemplate"]="<!--\n{{{\n-->\n<span macro=\"yourSearch if found\">\n<!-- The Summary Header ============================"+"================ -->\n<table class=\"summary\" border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">"+"<tbody>\n  <tr>\n\t<td align=\"left\">\n\t\tYourSearch Result <span class=\"yourSearchRange\" macro=\"yourSearc"+"h itemRange\"></span>\n\t\t&nbsp;of&nbsp;<span class=\"yourSearchCount\" macro=\"yourSearch count\"></span>\n"+"\t\tfor&nbsp;<span class=\"yourSearchQuery\" macro=\"yourSearch query\"></span>\n\t</td>\n\t<td class=\"yourSea"+"rchButtons\" align=\"right\">\n\t\t<span macro=\"yourSearch chkPreviewText\"></span><span class=\"chkBoxLabel"+"\">preview text</span>\n\t\t<span macro=\"yourSearch newTiddlerButton\"></span>\n\t\t<span macro=\"yourSearch openAllButton\"></span>\n\t\t<span macro=\"yourSearch lin"+"kButton 'YourSearch Options' options 'Configure YourSearch'\"></span>\n\t\t<span macro=\"yourSearch linkB"+"utton 'YourSearch Help' help 'Get help how to use YourSearch'\"></span>\n\t\t<span macro=\"yourSearch clo"+"seButton\"></span>\n\t</td>\n  </tr>\n</tbody></table>\n\n<!-- The List of Found Tiddlers ================="+"=========================== -->\n<div id=\"yourSearchResultItems\" itemsPerPage=\"25\" itemsPerPageWithPr"+"eview=\"10\"></div>\n\n<!-- The Footer (with the Navigation) ==========================================="+"= -->\n<table class=\"yourSearchFooter\" border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"0\"><tbody"+">\n  <tr>\n\t<td align=\"left\">\n\t\tResult page: <span class=\"yourSearchNaviBar\" macro=\"yourSearch naviBar"+"\"></span>\n\t</td>\n\t<td align=\"right\"><span macro=\"yourSearch version\"></span>, <span macro=\"yourSearc"+"h copyright\"></span>\n\t</td>\n  </tr>\n</tbody></table>\n<!-- end of the 'tiddlers found' case ========="+"================================== -->\n</span>\n\n\n<!-- The \"No tiddlers found\" case ================="+"========================== -->\n<span macro=\"yourSearch if not found\">\n<table class=\"summary\" border="+"\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"0\"><tbody>\n  <tr>\n\t<td align=\"left\">\n\t\tYourSearch Resu"+"lt: No tiddlers found for <span class=\"yourSearchQuery\" macro=\"yourSearch query\"></span>.\n\t</td>\n\t<t"+"d class=\"yourSearchButtons\" align=\"right\">\n\t\t<span macro=\"yourSearch newTiddlerButton\"></span>\n\t\t<span macro=\"yourSearch linkButton 'YourSearch Options'"+" options 'Configure YourSearch'\"></span>\n\t\t<span macro=\"yourSearch linkButton 'YourSearch Help' help"+" 'Get help how to use YourSearch'\"></span>\n\t\t<span macro=\"yourSearch closeButton\"></span>\n\t</td>\n  <"+"/tr>\n</tbody></table>\n</span>\n\n\n<!--\n}}}\n-->\n";config.shadowTiddlers["YourSearchItemTemplate"]="<!--\n{{{\n-->\n<span class='yourSearchNumber' macro='foundTiddler number'></span>\n<span class='yourSea"+"rchTitle' macro='foundTiddler title'/></span>&nbsp;-&nbsp;\n<span class='yourSearchTags' macro='found"+"Tiddler field tags 50'/></span>\n<span macro=\"yourSearch if previewText\"><div class='yourSearchText' macro='fo"+"undTiddler field text 250'/></div></span>\n<!--\n}}}\n-->";config.shadowTiddlers["YourSearch"]="<<tiddler [[YourSearch Help]]>>";config.shadowTiddlers["YourSearch Result"]="The popup-like window displaying the result of a YourSearch query.";config.macros.search.handler=_158;var _20c=function(){if(config.macros.search.handler!=_158){alert("Message from YourSearchPlugin:\n\n\nAnother plugin has disabled the 'Your Search' features.\n\n\nYou may "+"disable the other plugin or change the load order of \nthe plugins (by changing the names of the tidd"+"lers)\nto enable the 'Your Search' features.");}};setTimeout(_20c,5000);abego.YourSearch.getStandardRankFunction=function(){return _100;};abego.YourSearch.getRankFunction=function(){return abego.YourSearch.getStandardRankFunction();};abego.YourSearch.getCurrentTiddler=function(){return _13d;};abego.YourSearch.closeResult=function(){_12b();};abego.YourSearch.getFoundTiddlers=function(){return _f3;};abego.YourSearch.getQuery=function(){return _f4;};abego.YourSearch.onShowResult=function(_20d){highlightHack=_f4?_f4.getMarkRegExp():null;if(!_20d){_13e.setItems(_f7());}if(!_125){_125=createTiddlyElement(document.body,"div",_122,"yourSearchResult");}else{if(_125.parentNode!=document.body){document.body.appendChild(_125);}}_147();highlightHack=null;};})();}
//%/
	
dull
	#222211
	#664422
	#997722
	#cc9933
	#cccc99
vibrant
	#333300
	#aa7700
	#ffaa00
	#ffcc33
	#ffffee



	
dull
	#444433
	#996622
	#997744
	#bb9933
	#ccccbb
vibrant
	#775533
	#ff9900
	#ee9944
	#ffdd22
	#ffffff


	
dull
	#554411
	#997722
	#aa9922
	#ccbb33
	#bbbb77
vibrant
	#996600
	#ffbb00
	#ffff00
	#ffff22
	#eeeeaa

the world in that passage means "known world" as in "Roman Empire", not the entire planet.

Examples below
Its only been recently that I've finally realized what this scripture +++^*[Mat 21:21] <<tiddler [[Mat 21:19-22]]>>=== is really talking about.  

I don't think its saying "faith is like magic - just believe enough and it will happen".  What's important here (again) is context.  What Jesus had just referred to is the failure of Israel to bear fruit (Israel has become "apostate").  The mountain symbolism, as always (?i think?) refers to the City of God (mount Zion, Jerusalem, the Holy Place etc...) and the scripture here is referring to how the Holy Nation (the remnant in Israel) is about to be plucked out of the land (the symbolic word that represents Israel) and placed into the sea (the symbolic word that represents the gentile nations).  Note also that later in the book of Revelation, there is mention that there will be no more sea, meaning there will be no more "gentile nations", ie, just the Kingdom is left - all just Gods children and no more unbelievers.

This is in keeping with the Lords Prayer which is about the Kingdom of God, the building of which the apostles were about to spend forty years building as a humongous act of faith.
"one's epistemology" is the set of all one's presuppositions about what has to be true.   (see also [[ontology]])

+++^*@[dictionary.com's definition:] (e·pis·te·mol·o·gy      /ɪˌpɪstəˈmɒlədʒi/ Pronunciation Key - [i-pis-tuh-mol-uh-jee] 

–noun
a branch of philosophy that investigates the origin, nature, methods, and limits of human knowledge.
[Origin: 1855–60; < Gk epistm(é) knowledge + -o- + -logy] ===
I believe that the end (in the general sense) is ''//not//''  near.  I think the presently predominant view (at least in evangelical circles) of PreMillennialism, a.k.a. the LeftBehind view, is not only wrong but is a spiritual cancer in the church, blocks growth of Christ's Kingdom here on earth,  and needs to be (and if I'm right - will be) corrected.
I've heard recently (Feb 2010) that Haloscan, my comment service, is closing down.  As I'm no programming genius, I'm falling back on email for commenting.

!you can send comments about the ideas here at "glassatlasscomments" at "gmail" dot "com".  
just paste in the thing you're commenting on and send it with your comments, and when I have time I will repost your comments and attach it to the thing you've cited here (with my reply(s))
open this topic to see subtopics
tbc...
if the wages of sin is EternalConsciousTorment, then why didn't Christ get that punishment when he paid for our sins?  He didn't get that.  He got conscious torment and death, but not EternalConsciousTorment.
http://flickr.com/photos/bethblank/52601757/
[img[http://www.flowcorp.com/uploadedImages/Applications/Waterjet_Cutting/artistic_glass_map_2.jpg]]
[img[http://www.britishbuttonsociety.org/SmallImages/MilkGlassAtlas18C.jpg]]
[img[http://www.geoinnovations.co.uk/Media/Geo-InnovationsGlassGlobe.jpg]]
/***
''InlineJavascriptPlugin for ~TiddlyWiki version 1.2.x and 2.0''
^^author: Eric Shulman - ELS Design Studios
source: http://www.TiddlyTools.com/#InlineJavascriptPlugin
license: [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]^^

Insert Javascript executable code directly into your tiddler content.  Lets you ''call directly into TW core utility routines, define new functions, calculate values, add dynamically-generated TiddlyWiki-formatted output'' into tiddler content, or perform any other programmatic actions each time the tiddler is rendered.
!!!!!Usage
<<<
When installed, this plugin adds new wiki syntax for surrounding tiddler content with {{{<script>}}} and {{{</script>}}} markers, so that it can be treated as embedded javascript and executed each time the tiddler is rendered.

''Deferred execution from an 'onClick' link''
By including a label="..." parameter in the initial {{{<script>}}} marker, the plugin will create a link to an 'onclick' script that will only be executed when that specific link is clicked, rather than running the script each time the tiddler is rendered.

''External script source files:''
You can also load javascript from an external source URL, by including a src="..." parameter in the initial {{{<script>}}} marker (e.g., {{{<script src="demo.js"></script>}}}).  This is particularly useful when incorporating third-party javascript libraries for use in custom extensions and plugins.  The 'foreign' javascript code remains isolated in a separate file that can be easily replaced whenever an updated library file becomes available.

''Display script source in tiddler output''
By including the keyword parameter "show", in the initial {{{<script>}}} marker, the plugin will include the script source code in the output that it displays in the tiddler.

''Defining javascript functions and libraries:''
Although the external javascript file is loaded while the tiddler content is being rendered, any functions it defines will not be available for use until //after// the rendering has been completed.  Thus, you cannot load a library and //immediately// use it's functions within the same tiddler.  However, once that tiddler has been loaded, the library functions can be freely used in any tiddler (even the one in which it was initially loaded).

To ensure that your javascript functions are always available when needed, you should load the libraries from a tiddler that will be rendered as soon as your TiddlyWiki document is opened.  For example, you could put your {{{<script src="..."></script>}}} syntax into a tiddler called LoadScripts, and then add {{{<<tiddler LoadScripts>>}}} in your MainMenu tiddler.

Since the MainMenu is always rendered immediately upon opening your document, the library will always be loaded before any other tiddlers that rely upon the functions it defines.  Loading an external javascript library does not produce any direct output in the tiddler, so these definitions should have no impact on the appearance of your MainMenu.

''Creating dynamic tiddler content''
An important difference between this implementation of embedded scripting and conventional embedded javascript techniques for web pages is the method used to produce output that is dynamically inserted into the document:
* In a typical web document, you use the document.write() function to output text sequences (often containing HTML tags) that are then rendered when the entire document is first loaded into the browser window.
* However, in a ~TiddlyWiki document, tiddlers (and other DOM elements) are created, deleted, and rendered "on-the-fly", so writing directly to the global 'document' object does not produce the results you want (i.e., replacing the embedded script within the tiddler content), and completely replaces the entire ~TiddlyWiki document in your browser window.
* To allow these scripts to work unmodified, the plugin automatically converts all occurences of document.write() so that the output is inserted into the tiddler content instead of replacing the entire ~TiddlyWiki document.

If your script does not use document.write() to create dynamically embedded content within a tiddler, your javascript can, as an alternative, explicitly return a text value that the plugin can then pass through the wikify() rendering engine to insert into the tiddler display.  For example, using {{{return "thistext"}}} will produce the same output as {{{document.write("thistext")}}}.

//Note: your script code is automatically 'wrapped' inside a function, {{{_out()}}}, so that any return value you provide can be correctly handled by the plugin and inserted into the tiddler.  To avoid unpredictable results (and possibly fatal execution errors), this function should never be redefined or called from ''within'' your script code.//

''Accessing the ~TiddlyWiki DOM''
The plugin provides one pre-defined variable, 'place', that is passed in to your javascript code so that it can have direct access to the containing DOM element into which the tiddler output is currently being rendered.

Access to this DOM element allows you to create scripts that can:
* vary their actions based upon the specific location in which they are embedded
* access 'tiddler-relative' information (use findContainingTiddler(place))
* perform direct DOM manipulations (when returning wikified text is not enough)

<<<
!!!!!Examples
<<<
an "alert" message box:
><script show>
	alert('InlineJavascriptPlugin: this is a demonstration message');
</script>
dynamic output:
><script show>
	return (new Date()).toString();

</script>
wikified dynamic output:
><script show>
	return "link to current user: [["+config.options.txtUserName+"]]";
</script>
dynamic output using 'place' to get size information for current tiddler:
><script show>
   if (!window.story) window.story=window;
   var title=story.findContainingTiddler(place).id.substr(7);
   return title+" is using "+store.getTiddlerText(title).length+" bytes";

</script>
creating an 'onclick' button/link that runs a script:
><script label="click here" show>
   if (!window.story) window.story=window;
   alert("Hello World!\nlinktext='"+place.firstChild.data+"'\ntiddler='"+story.findContainingTiddler(place).id.substr(7)+"'");
</script>

loading a script from a source url:
>http://www.TiddlyTools.com/demo.js contains:
>>{{{function demo() { alert('this output is from demo(), defined in demo.js') } }}}
>>{{{alert('InlineJavascriptPlugin: demo.js has been loaded'); }}}
><script src="demo.js" show>
	return "loading demo.js..."
</script>
><script label="click to execute demo() function" show>

	demo()
</script>
<<<
!!!!!Installation
<<<
import (or copy/paste) the following tiddlers into your document:
''InlineJavascriptPlugin'' (tagged with <<tag systemConfig>>)
<<<
!!!!!Revision History
<<<
''2006.06.01 [1.5.1]'' when calling wikify() on script return value, pass hightlightRegExp and tiddler params so macros that rely on these values can render properly
''2006.04.19 [1.5.0]'' added 'show' parameter to force display of javascript source code in tiddler output
''2006.01.05 [1.4.0]'' added support 'onclick' scripts.  When label="..." param is present, a button/link is created using the indicated label text, and the script is only executed when the button/link is clicked.  'place' value is set to match the clicked button/link element.
''2005.12.13 [1.3.1]'' when catching eval error in IE, e.description contains the error text, instead of e.toString().  Fixed error reporting so IE shows the correct response text.  Based on a suggestion by UdoBorkowski
''2005.11.09 [1.3.0]'' for 'inline' scripts (i.e., not scripts loaded with src="..."), automatically replace calls to 'document.write()' with 'place.innerHTML+=' so script output is directed into tiddler content.  Based on a suggestion by BradleyMeck
''2005.11.08 [1.2.0]'' handle loading of javascript from an external URL via src="..." syntax
''2005.11.08 [1.1.0]'' pass 'place' param into scripts to provide direct DOM access 
''2005.11.08 [1.0.0]'' initial release

<<<
!!!!!Credits
<<<
This feature was developed by EricShulman from [[ELS Design Studios|http:/www.elsdesign.com]]
<<<
!!!!!Code
***/
//{{{
version.extensions.inlineJavascript= {major: 1, minor: 5, revision: 1, date: new Date(2006,6,1)};

config.formatters.push( {
	name: "inlineJavascript",
	match: "\\<script",
	lookahead: "\\<script(?: src=\\\"((?:.|\\n)*?)\\\")?(?: label=\\\"((?:.|\\n)*?)\\\")?( show)?\\>((?:.|\\n)*?)\\</script\\>",

	handler: function(w) {
		var lookaheadRegExp = new RegExp(this.lookahead,"mg");
		lookaheadRegExp.lastIndex = w.matchStart;
		var lookaheadMatch = lookaheadRegExp.exec(w.source)
		if(lookaheadMatch && lookaheadMatch.index == w.matchStart) {
			if (lookaheadMatch[1]) { // load a script library
				// make script tag, set src, add to body to execute, then remove for cleanup
				var script = document.createElement("script"); script.src = lookaheadMatch[1];
				document.body.appendChild(script); document.body.removeChild(script);
			}
			if (lookaheadMatch[4]) { // there is script code
				if (lookaheadMatch[3]) // show inline script code in tiddler output
					wikify("{{{\n"+lookaheadMatch[0]+"\n}}}\n",w.output);
				if (lookaheadMatch[2]) { // create a link to an 'onclick' script
					// add a link, define click handler, save code in link (pass 'place'), set link attributes
					var link=createTiddlyElement(w.output,"a",null,"tiddlyLinkExisting",lookaheadMatch[2]);
					link.onclick=function(){try{return(eval(this.code))}catch(e){alert(e.description?e.description:e.toString())}}
					link.code="function _out(place){"+lookaheadMatch[4]+"};_out(this);"

					link.setAttribute("href","javascript:;"); link.setAttribute("title",""); link.style.cursor="pointer";
				}
				else { // run inline script code
					var code="function _out(place){"+lookaheadMatch[4]+"};_out(w.output);"
					code=code.replace(/document.write\(/gi,'place.innerHTML+=(');
					try { var out = eval(code); } catch(e) { out = e.description?e.description:e.toString(); }
					if (out && out.length) wikify(out,w.output,w.highlightRegExp,w.tiddler);
				}
			}
			w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;
		}
	}
} )
//}}}
or, are you a heretic if you consider that "eternal destruction" is not the same thing as "EternalConsciousTorment"?

This is a loose category, but to frame the question I'll point out that it's easy to call someone a heretic and attempt guilt by association.  E.g. I've heard this view defined as heresy because the Jehovah's Witnesses have a similar view (supposedly - I don't know for sure).  If that's an okay rule of engagement (I'm saying it isn't) then anyone who is a ((Premillennialist (believes that the church will ultimately fail, "real" Christians will be "Raptured" out and the world will go through a "great tribulation" for 7 years, and then the end of the world will come where everyone will be judged by God)))  is also a heretic because Mormons are premillennialists too.

*For the record, I don't believe that Premillennialism or EternalConsciousTorment believers are heretics
   [22]So also you have sorrow now, but I will see you again, and your 
hearts will rejoice, and no one will take your joy from you. [23]In that 
day you will ask nothing of me. Truly, truly, I say to you, whatever you 
ask of the Father in my name, he will give it to you. [24]Until now you 
have asked nothing in my name. Ask, and you will receive, that your joy 
may be full.
   [25]"I have said these things to you in figures of speech. The hour is 
coming when I will no longer speak to you in figures of speech but will 
tell you plainly about the Father. [26]In that day you will ask in my 
name, and I do not say to you that I will ask the Father on your behalf; 
[27]for the Father himself loves you, because you have loved me and have 
believed that I came from God. (ESV)
<<forEachTiddler 
 where
 'tiddler.modified && 
! tiddler.tags.contains("systemConfig") && 
! tiddler.tags.contains("script") && 

! tiddler.tags.contains("hide")'
 sortBy
 'tiddler.modified'
 descending
>>
here it is:

<<tiddler [[Acts 2:45]]>>

This seems to universally be used to make Christians feel guilty about having possessions and not giving enough to the local church.  My problem with it is that this scripture refers to a time when the christians in Jerusalem were aware that shortly Jerusalem would be destroyed (which it was a little time later by Titus and the Romans) and because of that, their property (esp land) would be worthless anyway.

this is a much different scenario than we have now.
how your given +++^*@[epistemology] [[open|epistemology]] <<tiddler [[epistemology]]>>=== logically plays out in reality, i.e. this is your worldview.

((dictionary.com's definition:(on·tol·o·gy      /ɒnˈtɒlədʒi/ Pronunciation Key - [on-tol-uh-jee] 

–noun
1.	the branch of metaphysics that studies the nature of existence or being as such. )))
| !Old Testament | !New Testament |
| literal historic events | new, spiritual realities based on Old Testament (physical) shadows |
| supernatural miracles | supernatural spiritual truths governing mundane physicality |
| childhood | adulthood (AD 30 to 70 = adolescence) |
| High Priest | Jesus Christ |
| Levites | Christians |
| all the other tribes | anyone not consciously a professing Christian |
| Israel's Kingdom (1000 years from first temple to AD70) | the Millennial Kingdom |
| Israel to the world | the Church to the world |
| Jerusalem to Israel | the Church to the world |
| the temple to Jerusalem | the Church to the world |
| Israel to the world | Christ to the Church |
| Jerusalem to Israel | Christ to the Church |
| the temple to Jerusalem | Christ to the Church |
| Israel as a nation of individuals of conflicted allegiances | the human soul as a population of conflicting beliefs and attitudes |
| the prophets' struggle with a stiff-necked nation | a pastor's struggle with a stiff-necked congregation |


!''click a topic heading to open, hover over the word "peek" to just read what's there, click outside any pop-ups to dismiss them.'' 
//(sorry, but the "peek" function doesn't seem to work in InternetExplorer)//

<<forEachTiddler where '!tiddler.tags.contains("hide")'
    sortBy 
        tiddler.modified
    descending

    write 
        '(index < 20) ? "\n[["+tiddler.title+"]]+++^*@[peek]<<tiddler [["+tiddler.title+"]]$))===\n" : ""'


>>
(see below)
The splitting of one genetic line of living organism into two that no longer can interbreed.


see [[here|Speciation without new information]]
[[Isaiah19:1]]
[[Isaiah 34:9]] 
many more to add
Friday, August 11, 2006


Another large terrorist attack plan was foiled yesterday, bringing to the news editorials items about the seeming impossibility to prevent these types of things from occasionally succeeding. The "eschatological tension" arises when we start talking about the most likely solutions - increased surveillance, large databases and identification technology. For the pre-millennial set these are all concepts tied in with a one-world government and the mark of the beast and must be resisted. 

If, on the other hand the mark of the beast was actually a ritual that had to be publicly performed proclaiming allegiance to the Roman Emperor (who claimed to be a god) in order to engage in the commerce of the day, and if the force governing the nations is the risen Christ currently reigning at the right hand of God, then these technological protections for the kingdom should be (carefully) embraced...
<<paletteView [[OldColorPalette]]>>
more content
content goes here
If this idea is correct, there is no "age of accountability", a person either has been given at least one belief in Christ, or has not and will be destroyed like chaff.  I'd imagine that many children have beliefs in Christ that their parents may not be aware of.  What about miscarried babies?  I'd bet God designed them for a purpose too which is probably quite different from the long-lived and faithful Christian in the eternal (and physical) kingdom to come.
there's a fellow (Richard Bauckham) [[here|http://www.premierradio.org.uk/listen/ondemand.aspx?mediaid={0AECB5BB-FCAE-432F-8224-960C4AD52A5C}]] who says that, according to Papias, a bishop in Asia Minor at the time the gospels were being written, it was Mark who recorded Peter's teaching in order to translate it from Aramaic into Greek or Latin.
whenever a new vista opens up, it is the forces of evil that swoop in and try to take quick advantage of this new "space"

Eg.s
|the new frontier| the quick evil | the delayed good |
|internet| porn and other garbage on the internet | the easiest time in history for regular folk to become informed from the bible and knowledgable believers |
|fast food industry | unhealthy food to the masses | healthy food to the masses |


application: the glass starts half full (or less) and fills from there as chirstians get off their lazy butts and fill it up.  See the sin of MagicalChristianity
!my first thoughts
16 Simon Peter answered, "You are the Christ, the Son of the living God. "  17 And Jesus said to him, "Blessed are you, Simon Barjona, because flesh and blood did not reveal this to you, but My Father who is in heaven.  18 "I also say to you that you are Peter, and upon this rock I will build My church; @@and the gates of Hades will not overpower it. @@ 19 "I will give you the keys of the kingdom of heaven; and whatever you bind on earth shall have been bound in heaven, and whatever you loose on earth shall have been loosed in heaven. "  20 Then He warned the disciples that they should tell no one that He was the Christ.  

the gates are like the weak points in the defences of a stronghhold, and the progress of the church as the front of the advance of the kingdom cannot be resisted

!on second thought...
in the point above, the word "stronghold" suggests spiritual warfare in the sense of struggling with demonic forces (you know, "Hell, the homebase of the devil").  I think that's a wrong view:

I've just realized that ((Hades(the word translated here as "Hell"))) has nothing to do with demonic opposition - its talking about death itself.  Christians individually will die but the church will live on.  The demons are either just roaming around causing trouble, or are in the Abyss (or ultimately the lake of fire).  Hades was never a place where demons were - it is the holding place of the dead, divided before Christ into 2 "compartments", Torments and Paradise.  After Christ was crucified, he went and took all the souls from Paradise to be in the presence of God

2Cor 5:8
we are of good courage, I say, and prefer rather to be absent from the body and to be at home with the Lord. NASV

and 
1Pet 3:18-20

<<esv 1Pet 3:18-20>>

now I've got another question: why does it talk about the days of Noah, when there were dead there from after Noahs time as well?  (maybe they were the "really bad" ones)
http://freebooks.entrewave.com/freebooks/docs/214e_47e.htm
RCSproul points out that the the english word "comfort" when broken into its component Latin parts means "with" (com) "strength" (forte).  So the comforter is not the one that comes to encourage you //after// the battle, __he is the one who encourages you //for// the battle.
__
paraklētos (Strong's G3875) 
+++*[reveal scripture]
Joh 14:16-26

<<tiddler [[Joh 14:16-26]]>>
===

+++*[more...]
Sproul says Friedrich Nietzsche wanted a "superman" (even though he (Nietche) said the world has beaten us), how's this for a superman:

Rom 8:31-37
<<tiddler [[Rom 8:31-37]]>>
===
My point here is that Christ is building his kingdom through the hearts of individuals, not through the human organizations we make.  That's not to minimise the importance of the church, its just that Christ is not __restricted__ in working //only// through the church.  I think that he works through anything that is good, honest, noble, etc...  This specifically includes working through even those (especially those, at this point in history?) who do not confess Jesus as their lord and saviour.


On the other hand, I think I read recently somewhere (Timothy? not really sure) that said the church //was// the kingdom.  I'll have to look that one up.
open this topic to see subtopics
(from Gary deMar show at or before April 26, 2008)

This refers to the 3 1/2 years of Jesus ministry and the following 3 1/2 years that the gospel was presented to the Jews until the time Peter presented the gospel to Cornelius.

Between a believer and a non-believer is that when they see any good in their character, the believer says "God did that", and Christ looks at the bad and says "I'll pay for that", whereas the non believer says of the good "I did that", and  God will say "No you didn't - that was mine, let me remind you what's yours", and He'll show you what you've really done on your own.
This is the arguement "how can you possibly believe that the "end times" have already come and gone when the bible says:
> <<tiddler [[Mat 24:14]]>>

they argue that gospel has not yet been preached to all the nations and that's why the end has not come.
see [[Isa 13:10-13]]

<<toolbar references>>
"this generation" can't mean "the jewish race" because the destruction of the temple happened in AD 70, and there were still Jews after that.
<<version>>
This topic started from a call to TheNarrowMind podcast #913

+++^*[see 2 Cor 5]
<<tiddler [[2 Cor 5]]>>===

When a person dies, the body is said to be asleep and the soul is immediately in the presence of God, awaiting the time when the man will be reunited in the unity of his composition.  At the resurrection, the soul is re-united with the body (but in its new state - like that of Christ after his resurrection). 

the question remains, will the soul be conscious or will the resurrection from the point of view of the believer who dies be immediate? 
John 5 1Cor 15
...more details later
{{{
{{left{
<html><img src="http://www.cedar-chiropractic.com/images/golden woods1.jpeg" style="height: 220px; "/></html>}}}
{{left{
<html><img src="http://www.cedar-chiropractic.com/images/golden woods2.jpeg" style="height: 220px; "/></html>}}}
{{left{
<html><img src="http://www.cedar-chiropractic.com/images/golden woods3.jpeg" style="height: 220px; "/></html>}}}
}}}

{{left{
<html><img src="http://www.cedar-chiropractic.com/images/golden woods1.jpeg" style="height: 220px; "/></html>}}}
{{left{
<html><img src="http://www.cedar-chiropractic.com/images/golden woods2.jpeg" style="height: 220px; "/></html>}}}
{{left{
<html><img src="http://www.cedar-chiropractic.com/images/golden woods3.jpeg" style="height: 220px; "/></html>}}}
If Satan really is bound currently (and since AD 70) then there should be a difference in the nature of world history and spiritual warfare...

Proposition:  when Satan was still around, he (being a egotistical megalomaniac) would primarily work by trying to take over human government (e.g. the four empires of Daniel), whereas since the fall of the Roman Empire, there has never been one world government (from the viewpoint of Israel or the church).  Since then, Satan's followers (all the rest of the billions of fallen angels) have influenced things in other, less self-centred ways, e.g. by copying Jesus by making new religions
are you being neutral when you say that? 

(no, the person stating this obviously has a particular bias they want you to adopt)