<!--{{{-->
<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]];}

#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 0em 1em 1em; left:-1px; top:-1px;}
.headerForeground {position:absolute; padding:4.5em 0em 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:0em 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 .3em 0;}
#sidebarTabs .tabContents {width:15em; overflow:hidden;}

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

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

.tiddlerPopupButton {padding:0.2em 0.2em 0.2em 0.2em;}
.popupTiddler {position: absolute; z-index:300; padding:1em 1em 1em 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 0em;}
.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 0em 0em 0.5em;}
.tab {margin:0em 0em 0em 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 0em 14em;}

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

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

.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:0em 0.25em; padding:0em 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 0em; font-size:.9em;}
.editorFooter .button {padding-top:0px; padding-bottom:0px;}

.fieldsetFix {border:0; padding:0; margin:1px 0px 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 0.3em 0.5em;}
#backstageToolbar {position:relative;}
#backstageArea a {font-weight:bold; margin-left:0.5em; padding:0.3em 0.5em 0.3em 0.5em;}
#backstageButton {display:none; position:absolute; z-index:175; top:0em; right:0em;}
#backstageButton a {padding:0.1em 0.4em 0.1em 0.4em; margin:0.1em 0.1em 0.1em 0.1em;}
#backstage {position:relative; width:100%; z-index:50;}
#backstagePanel {display:none; z-index:100; position:absolute; width:90%; margin:0em 3em 0em 3em; padding:1em 1em 1em 1em;}
.backstagePanelFooter {padding-top:0.2em; float:right;}
.backstagePanelFooter a {padding:0.2em 0.4em 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 1em;}
/* Fixes a feature in Firefox 1.5.0.2 where print preview displays the noscript content */
noscript {display:none;}
}
/*}}}*/
<!--{{{-->
<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'></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>>
/***
|Name|CalendarPlugin|
|Source|http://www.TiddlyTools.com/#CalendarPlugin|
|Version|2008.09.09|
|Author|Eric Shulman|
|Original Author|SteveRumsby|
|License|unknown|
|~CoreVersion|2.1|
|Type|plugin|
|Requires||
|Overrides||
|Options|##Configuration|
|Description|display monthly and yearly calendars|

NOTE: For enhanced date display (including popups), you must also install [[DatePlugin]]
!!!!!Usage:
<<<
|{{{<<calendar>>}}}|Produce a full-year calendar for the current year|
|{{{<<calendar year>>}}}|Produce a full-year calendar for the given year|
|{{{<<calendar year month>>}}}|Produce a one-month calendar for the given month and year|
|{{{<<calendar thismonth>>}}}|Produce a one-month calendar for the current month|
|{{{<<calendar lastmonth>>}}}|Produce a one-month calendar for last month|
|{{{<<calendar nextmonth>>}}}|Produce a one-month calendar for next month|
|{{{<<calendar +n>>}}}<br>{{{<<calendar -n>>}}}|Produce a one-month calendar for a month +/- 'n' months from now|
<<<
!!!!!Configuration:
<<<
|''First day of week:''<br>{{{config.options.txtCalFirstDay}}}|<<option txtCalFirstDay>>|(Monday = 0, Sunday = 6)|
|''First day of weekend:''<br>{{{config.options.txtCalStartOfWeekend}}}|<<option txtCalStartOfWeekend>>|(Monday = 0, Sunday = 6)|

<<option chkDisplayWeekNumbers>> Display week numbers //(note: Monday will be used as the start of the week)//
|''Week number display format:''<br>{{{config.options.txtWeekNumberDisplayFormat }}}|<<option txtWeekNumberDisplayFormat >>|
|''Week number link format:''<br>{{{config.options.txtWeekNumberLinkFormat }}}|<<option txtWeekNumberLinkFormat >>|
<<<
!!!!!Revisions
<<<
2008.09.10: added "+n" (and "-n") param to permit display of relative months (e.g., "+6" means "six months from now", "-3" means "three months ago".  Based on suggestion from Jean.
2008.06.17: added support for config.macros.calendar.todaybg
2008.02.27: in handler(), DON'T set hard-coded default date format, so that *customized* value (pre-defined in config.macros.calendar.journalDateFmt is used.
2008.02.17: in createCalendarYear(), fix next/previous year calculation (use parseInt() to convert to numeric value).  Also, use journalDateFmt for date linking when NOT using [[DatePlugin]].
2008.02.16: in createCalendarDay(), week numbers now created as TiddlyLinks, allowing quick creation/navigation to 'weekly' journals (based on request from Kashgarinn)
2008.01.08: in createCalendarMonthHeader(), "month year" heading is now created as TiddlyLink, allowing quick creation/navigation to 'month-at-a-time' journals
2007.11.30: added "return false" to onclick handlers (prevent IE from opening blank pages)
2006.08.23: added handling for weeknumbers (code supplied by Martin Budden (see "wn**" comment marks).  Also, incorporated updated by Jeremy Sheeley to add caching for reminders (see [[ReminderMacros]], if installed)
2005.10.30: in config.macros.calendar.handler(), use "tbody" element for IE compatibility.  Also, fix year calculation for IE's getYear() function (which returns '2005' instead of '105'). Also, in createCalendarDays(), use showDate() function (see [[DatePlugin]], if installed) to render autostyled date with linked popup.  Updated calendar stylesheet definition: use .calendar class-specific selectors, add text centering and margin settings
2006.05.29: added journalDateFmt handling
<<<
***/
/***
!!!!!Code section:
***/
//{{{
version.extensions.CalendarPlugin= { major: 0, minor: 7, revision: 0, date: new Date(2008, 6, 17)};

if(config.options.txtCalFirstDay == undefined)
  config.options.txtCalFirstDay = 0;
if(config.options.txtCalStartOfWeekend == undefined)
  config.options.txtCalStartOfWeekend = 5;
if(config.options.chkDisplayWeekNumbers == undefined)//wn**
  config.options.chkDisplayWeekNumbers = false;
if(config.options.chkDisplayWeekNumbers)
  config.options.txtCalFirstDay = 0;
if(config.options.txtWeekNumberDisplayFormat == undefined)//wn**
  config.options.txtWeekNumberDisplayFormat = "w0WW";
if(config.options.txtWeekNumberLinkFormat == undefined)//wn**
  config.options.txtWeekNumberLinkFormat = "YYYY-w0WW";

config.macros.calendar = {};
config.macros.calendar.monthnames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
config.macros.calendar.daynames = ["一", "二", "三", "四", "五", "六", "日"];
config.macros.calendar.todaybg = "#ccffcc";
config.macros.calendar.weekendbg = "#c0c0c0";
config.macros.calendar.monthbg = "#e0e0e0";
config.macros.calendar.holidaybg = "#ff8888";
config.macros.calendar.journalDateFmt = "DD MMM YYYY";
config.macros.calendar.monthdays = [ 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
config.macros.calendar.holidays = ["11/06/2009", "12/06/2009", "18/06/2009", "19/06/2009"]; // Not sure this is required anymore - use reminders instead
//}}}
//{{{
function calendarIsHoliday(date) // Is the given date a holiday?
{
	var longHoliday = date.formatString("0DD/0MM/YYYY");
	var shortHoliday = date.formatString("0DD/0MM");
	for(var i = 0; i < config.macros.calendar.holidays.length; i++) {
		if(config.macros.calendar.holidays[i] == longHoliday || config.macros.calendar.holidays[i] == shortHoliday)
			return true;
	}
	return false;
}
//}}}
//{{{
config.macros.calendar.handler = function(place,macroName,params) {
	var calendar = createTiddlyElement(place, "table", null, "calendar", null);
	var tbody = createTiddlyElement(calendar, "tbody", null, null, null);
	var today = new Date();
	var year = today.getYear();
	if (year<1900) year+=1900;

 	// get format for journal link by reading from SideBarOptions (ELS 5/29/06 - based on suggestion by Martin Budden)
	var text = store.getTiddlerText("SideBarOptions");
	var re = new RegExp("<<(?:newJournal)([^>]*)>>","mg"); var fm = re.exec(text);
	if (fm && fm[1]!=null) { var pa=fm[1].readMacroParams(); if (pa[0]) this.journalDateFmt = pa[0]; }

	var month=-1;
	if (params[0] == "thismonth") {
		var month=today.getMonth();
	} else if (params[0] == "lastmonth") {
		var month = today.getMonth()-1; if (month==-1) { month=11; year--; }
	} else if (params[0] == "nextmonth") {
		var month = today.getMonth()+1; if (month>11) { month=0; year++; }
	} else if (params[0]&&"+-".indexOf(params[0].substr(0,1))!=-1) {
		var month = today.getMonth()+parseInt(params[0]);
		if (month>11) { year+=Math.floor(month/12); month%=12; };
		if (month<0)  { year+=Math.floor(month/12); month=12+month%12; }
	} else if (params[0]) {
		year = params[0];
		if(params[1]) month=parseInt(params[1])-1;
		if (month>11) month=11; if (month<0) month=0;
	}

	if (month!=-1) {
		cacheReminders(new Date(year, month, 1, 0, 0), 31);
		createCalendarOneMonth(tbody, year, month);
	} else {
		cacheReminders(new Date(year, 0, 1, 0, 0), 366);
		createCalendarYear(tbody, year);
	}
	window.reminderCacheForCalendar = null;
}
//}}}
//{{{
//This global variable is used to store reminders that have been cached
//while the calendar is being rendered.  It will be renulled after the calendar is fully rendered.
window.reminderCacheForCalendar = null;
//}}}
//{{{
function cacheReminders(date, leadtime)
{
	if (window.findTiddlersWithReminders == null) return;
	window.reminderCacheForCalendar = {};
	var leadtimeHash = [];
	leadtimeHash [0] = 0;
	leadtimeHash [1] = leadtime;
	var t = findTiddlersWithReminders(date, leadtimeHash, null, 1);
	for(var i = 0; i < t.length; i++) {
		//just tag it in the cache, so that when we're drawing days, we can bold this one.
		window.reminderCacheForCalendar[t[i]["matchedDate"]] = "reminder:" + t[i]["params"]["title"]; 
	}
}
//}}}
//{{{
function createCalendarOneMonth(calendar, year, mon)
{
	var row = createTiddlyElement(calendar, "tr", null, null, null);
	createCalendarMonthHeader(calendar, row, config.macros.calendar.monthnames[mon] + " " + year, true, year, mon);
	row = createTiddlyElement(calendar, "tr", null, null, null);
	createCalendarDayHeader(row, 1);
	createCalendarDayRowsSingle(calendar, year, mon);
}
//}}}
//{{{
function createCalendarMonth(calendar, year, mon)
{
	var row = createTiddlyElement(calendar, "tr", null, null, null);
	createCalendarMonthHeader(calendar, row, config.macros.calendar.monthnames[mon] + " " + year, false, year, mon);
	row = createTiddlyElement(calendar, "tr", null, null, null);
	createCalendarDayHeader(row, 1);
	createCalendarDayRowsSingle(calendar, year, mon);
}
//}}}
//{{{
function createCalendarYear(calendar, year)
{
	var row;
	row = createTiddlyElement(calendar, "tr", null, null, null);
	var back = createTiddlyElement(row, "td", null, null, null);
	var backHandler = function() {
		removeChildren(calendar);
		createCalendarYear(calendar, parseInt(year)-1);
		return false; // consume click
	};
	createTiddlyButton(back, "<", "Previous year", backHandler);
	back.align = "center";
	var yearHeader = createTiddlyElement(row, "td", null, "calendarYear", year);
	yearHeader.align = "center";
	yearHeader.setAttribute("colSpan",config.options.chkDisplayWeekNumbers?22:19);//wn**
	var fwd = createTiddlyElement(row, "td", null, null, null);
	var fwdHandler = function() {
		removeChildren(calendar);
		createCalendarYear(calendar, parseInt(year)+1);
		return false; // consume click
	};
	createTiddlyButton(fwd, ">", "Next year", fwdHandler);
	fwd.align = "center";
	createCalendarMonthRow(calendar, year, 0);
	createCalendarMonthRow(calendar, year, 3);
	createCalendarMonthRow(calendar, year, 6);
	createCalendarMonthRow(calendar, year, 9);
}
//}}}
//{{{
function createCalendarMonthRow(cal, year, mon)
{
	var row = createTiddlyElement(cal, "tr", null, null, null);
	createCalendarMonthHeader(cal, row, config.macros.calendar.monthnames[mon], false, year, mon);
	createCalendarMonthHeader(cal, row, config.macros.calendar.monthnames[mon+1], false, year, mon);
	createCalendarMonthHeader(cal, row, config.macros.calendar.monthnames[mon+2], false, year, mon);
	row = createTiddlyElement(cal, "tr", null, null, null);
	createCalendarDayHeader(row, 3);
	createCalendarDayRows(cal, year, mon);
}
//}}}
//{{{
function createCalendarMonthHeader(cal, row, name, nav, year, mon)
{
	var month;
	if (nav) {
		var back = createTiddlyElement(row, "td", null, null, null);
		back.align = "center";
		back.style.background = config.macros.calendar.monthbg;

		var backMonHandler = function() {
			var newyear = year;
			var newmon = mon-1;
			if(newmon == -1) { newmon = 11; newyear = newyear-1;}
			removeChildren(cal);
			cacheReminders(new Date(newyear, newmon , 1, 0, 0), 31);
			createCalendarOneMonth(cal, newyear, newmon);
			return false; // consume click
		};
		createTiddlyButton(back, "<", "Previous month", backMonHandler);
		month = createTiddlyElement(row, "td", null, "calendarMonthname")
		createTiddlyLink(month,name,true);
		month.setAttribute("colSpan", config.options.chkDisplayWeekNumbers?6:5);//wn**
		var fwd = createTiddlyElement(row, "td", null, null, null);
		fwd.align = "center";
		fwd.style.background = config.macros.calendar.monthbg; 

		var fwdMonHandler = function() {
			var newyear = year;
			var newmon = mon+1;
			if(newmon == 12) { newmon = 0; newyear = newyear+1;}
			removeChildren(cal);
			cacheReminders(new Date(newyear, newmon , 1, 0, 0), 31);
			createCalendarOneMonth(cal, newyear, newmon);
			return false; // consume click
		};
		createTiddlyButton(fwd, ">", "Next month", fwdMonHandler);
	} else {
		month = createTiddlyElement(row, "td", null, "calendarMonthname", name)
		month.setAttribute("colSpan",config.options.chkDisplayWeekNumbers?8:7);//wn**
	}
	month.align = "center";
	month.style.background = config.macros.calendar.monthbg;
}
//}}}
//{{{
function createCalendarDayHeader(row, num)
{
	var cell;
	for(var i = 0; i < num; i++) {
		if (config.options.chkDisplayWeekNumbers) createTiddlyElement(row, "td");//wn**
		for(var j = 0; j < 7; j++) {
			var d = j + (config.options.txtCalFirstDay - 0);
			if(d > 6) d = d - 7;
			cell = createTiddlyElement(row, "td", null, null, config.macros.calendar.daynames[d]);
			if(d == (config.options.txtCalStartOfWeekend-0) || d == (config.options.txtCalStartOfWeekend-0+1))
				cell.style.background = config.macros.calendar.weekendbg;
		}
	}
}
//}}}
//{{{
function createCalendarDays(row, col, first, max, year, mon) {
	var i;
	if (config.options.chkDisplayWeekNumbers){
		if (first<=max) {
			var ww = new Date(year,mon,first);
			var td=createTiddlyElement(row, "td");//wn**
			var link=createTiddlyLink(td,ww.formatString(config.options.txtWeekNumberLinkFormat),false);
			link.appendChild(document.createTextNode(ww.formatString(config.options.txtWeekNumberDisplayFormat)));
		}
		else createTiddlyElement(row, "td", null, null, null);//wn**
	}
	for(i = 0; i < col; i++)
		createTiddlyElement(row, "td", null, null, null);
	var day = first;
	for(i = col; i < 7; i++) {
		var d = i + (config.options.txtCalFirstDay - 0);
		if(d > 6) d = d - 7;
		var daycell = createTiddlyElement(row, "td", null, null, null);
		var isaWeekend = ((d == (config.options.txtCalStartOfWeekend-0) || d == (config.options.txtCalStartOfWeekend-0+1))? true:false);
		if(day > 0 && day <= max) {
			var celldate = new Date(year, mon, day);
			// ELS 2005.10.30: use <<date>> macro's showDate() function to create popup
			// ELS 5/29/06 - use journalDateFmt 
			if (window.showDate)
				showDate(daycell,celldate,"popup","DD",config.macros.calendar.journalDateFmt,true, isaWeekend);
			else {
				if(isaWeekend) daycell.style.background = config.macros.calendar.weekendbg;
				var title = celldate.formatString(config.macros.calendar.journalDateFmt);
				if(calendarIsHoliday(celldate))
					daycell.style.background = config.macros.calendar.holidaybg;
				var now=new Date();
				if ((now-celldate>=0) && (now-celldate<86400000)) // is today?
					daycell.style.background = config.macros.calendar.todaybg;
				if(window.findTiddlersWithReminders == null) {
					var link = createTiddlyLink(daycell, title, false);
					link.appendChild(document.createTextNode(day));
				} else
					var button = createTiddlyButton(daycell, day, title, onClickCalendarDate);
			}
		}
		day++;
	}
}
//}}}
//{{{
// We've clicked on a day in a calendar - create a suitable pop-up of options.
// The pop-up should contain:
//  * a link to create a new entry for that date
//  * a link to create a new reminder for that date
//  * an <hr>
//  * the list of reminders for that date
// NOTE: The following code is only used when [[DatePlugin]] is not present
function onClickCalendarDate(e)
{
	var button = this;
	var date = button.getAttribute("title");
	var dat = new Date(date.substr(6,4), date.substr(3,2)-1, date.substr(0, 2));

	date = dat.formatString(config.macros.calendar.journalDateFmt);
	var popup = createTiddlerPopup(this);
	popup.appendChild(document.createTextNode(date));
	var newReminder = function() {
		var t = store.getTiddlers(date);
		displayTiddler(null, date, 2, null, null, false, false);
		if(t) {
			document.getElementById("editorBody" + date).value += "\n<<reminder day:" + dat.getDate() +
				" month:" + (dat.getMonth()+1) + " year:" + (dat.getYear()+1900) + " title: >>";
		} else {
			document.getElementById("editorBody" + date).value = "<<reminder day:" + dat.getDate() +
				" month:" + (dat.getMonth()+1) +" year:" + (dat.getYear()+1900) + " title: >>";
		}
		return false; // consume click
	};
	var link = createTiddlyButton(popup, "New reminder", null, newReminder); 
	popup.appendChild(document.createElement("hr"));
	var t = findTiddlersWithReminders(dat, [0,14], null, 1);
	for(var i = 0; i < t.length; i++) {
		link = createTiddlyLink(popup, t[i].tiddler, false);
		link.appendChild(document.createTextNode(t[i].tiddler));
	}
	return false; // consume click
}
//}}}
//{{{
function calendarMaxDays(year, mon)
{
	var max = config.macros.calendar.monthdays[mon];
	if(mon == 1 && (year % 4) == 0 && ((year % 100) != 0 || (year % 400) == 0)) max++;
	return max;
}
//}}}
//{{{
function createCalendarDayRows(cal, year, mon)
{
	var row = createTiddlyElement(cal, "tr", null, null, null);
	var first1 = (new Date(year, mon, 1)).getDay() -1 - (config.options.txtCalFirstDay-0);
	if(first1 < 0) first1 = first1 + 7;
	var day1 = -first1 + 1;
	var first2 = (new Date(year, mon+1, 1)).getDay() -1 - (config.options.txtCalFirstDay-0);
	if(first2 < 0) first2 = first2 + 7;
	var day2 = -first2 + 1;
	var first3 = (new Date(year, mon+2, 1)).getDay() -1 - (config.options.txtCalFirstDay-0);
	if(first3 < 0) first3 = first3 + 7;
	var day3 = -first3 + 1;

	var max1 = calendarMaxDays(year, mon);
	var max2 = calendarMaxDays(year, mon+1);
	var max3 = calendarMaxDays(year, mon+2);

	while(day1 <= max1 || day2 <= max2 || day3 <= max3) {
		row = createTiddlyElement(cal, "tr", null, null, null);
		createCalendarDays(row, 0, day1, max1, year, mon); day1 += 7;
		createCalendarDays(row, 0, day2, max2, year, mon+1); day2 += 7;
		createCalendarDays(row, 0, day3, max3, year, mon+2); day3 += 7;
	}
}
//}}}
//{{{
function createCalendarDayRowsSingle(cal, year, mon)
{
	var row = createTiddlyElement(cal, "tr", null, null, null);
	var first1 = (new Date(year, mon, 1)).getDay() -1 - (config.options.txtCalFirstDay-0);
	if(first1 < 0) first1 = first1+ 7;
	var day1 = -first1 + 1;
	var max1 = calendarMaxDays(year, mon);
	while(day1 <= max1) {
		row = createTiddlyElement(cal, "tr", null, null, null);
		createCalendarDays(row, 0, day1, max1, year, mon); day1 += 7;
	}
}
//}}}
//{{{
setStylesheet(".calendar, .calendar table, .calendar th, .calendar tr, .calendar td { text-align:center; } .calendar, .calendar a { margin:0px !important; padding:0px !important; }", "calendarStyles");
//}}}
[[鏡音的入門手冊]] 
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>>
/***
|''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);
}
//}}}
''總述:''
*是NIWANGO公司所提供的線上影片分享網站,常被簡稱為niconico或nico等。與You Tube等影片共享網站相似,但NICONICO動畫提供觀賞者可在影片上留言的功能,而留言會以字幕的形式出現在影片上。

''簡介:''
*2006年12月12日,NICONICO動畫開始提供實驗性質的服務,稱為ニコニコ動画(仮)。此時的NICONICO動畫只是將儲存於You Tube上的影片,加上即時留言字幕的功能,本身並沒有提供影片上載的服務,與You Tube也沒有正式的關係。2007年2月23日後,You Tube禁止NICONICO動畫存取其影片,於是NIWANGO公司推出自己的動畫分享服務SMILEVIDEO。目前NICONICO動畫可以存取儲存於SMILEVIDEO與photozou等網站上的動畫。
*NICONICO動畫最大的特徵為字幕形式的留言功能。使用者可自由指定字幕出現的時間、於影片上的位置、字體的大小、顏色等。留言可以從影片的右方移動到左方,也可以固定在某個位置一段時間。
*NICONICO動畫的使用者絕大部分是日本人,但據管理者統計,每日影片觀看次數約有1%來自於台灣、0.5%來自於香港。這使得 NICONICO動畫於2007年10月18日開始提供台灣版的服務,提供正體中文使用介面、專用留言系統與NICONICO市場。

''系統:''
*直至現在,NICONICO動畫並不容許用戶直接上傳至本網站,而是透過屬同一公司的上傳網站SMILEVIDEO取得影片片源,NICONICO動畫的機能本身只是為片源加上留言。
*直至β時期為止,NICONICO動畫是能對應You tube的影片的,而事實上當時網站大部分的影片都是來自Youtube的。但是自從You tube阻擋NICONICO動畫的連線後,β就結束服務,當以γ的名稱重新開放時,NICONICO動畫則完全切斷自己於You tube的連線。然後作為代替,開設了SMILEVIDEO。另外,對於You tube把從NICONICO動畫的連線阻擋的事件,Youtube至此亦沒有任何公開解釋,因此網路上出現很多不同的揣測。
*其後在RC時期曾經對應另一網站Ameba Vision的影片,但在2007年10月1日進行系統維護後,以運用上的原因終止了對此網站的對應。那是因為有在SMILEVIDEO上傳多套違犯條約而被停止帳號的使用者,移到Ameba Vision申請帳號並上傳影片。而且來自其他上載網站(如You tube、SMILEVIDEO)比來自Ameba Vision的多很多亦是原因之一。

''留言功能:''(留言功能(コメント機能)是NICONICO動畫最大的特徵之一。)
*評論功能的特徵
**評論在影片播放中按下按鈕便會發送,成功的話3秒後就會顯示在影片上。結果就做出了與一般留言版不同,「超越實際時間,虛擬的時間共享」(管理層稱之為「非同期Live」)的感覺。評論功能導入了時間的觀念,使NICONICO動畫使用者獲得其他影片網站都沒有的「觀眾一起參與」的感覺,並取得空前的成功。
**另外針對不喜歡影片有文字流過的人,NICONICO動畫亦設有不顯示評論的功能。
**另外NICONICO動畫亦設有「我的備忘錄」功能,讓使用者能保存特定時點的評論。而觀看「我的備忘錄」時亦可以任意更改指定留言是否顯示。
**至γ時代為止,輸入留言是會顯示使用者的名稱的,但因為大部分人認為像匿名討論區般才能自由發表評論,導致極少人在個人資料中加上自己的顯示名稱。因為這樣,這個功能就在RC服務開始的同時停止了。
*指令功能
**正常的留言都是由右流向左(曾經在2008年4月1日愚人節全面改為由左流向右),文字的顏色為白色。而指令功能就能更改留言的顏色、大小。使用方法是在留言欄的左邊輸入指令(如「ue」、「big」等),不同屬性的指令亦能夠共用。應用方面,此功能能夠為影片造出字幕,當此功能加上特殊文字(Unicode)並且組合,更能造出巨大的形文字。
*保存留言數
**一套影片的留言保存數目,1分00秒以內的話為100個,1分01秒至5分00秒以內為250個,5分01秒至9分59秒以內為500個,10分00秒以上的則統一為1000個。超出此數字的話就會以發送時間為優先,顯示最新的留言。
**留言的顯示數目在營運當初是沒限制全部顯示的,後來在2006年12月19日訂立統一250個的限制,在2007年1月5日又改變為上述的三級制,直至現在。
*留言的傾向
**NICONICO動畫的留言內容,跟留言版2ch的留言有很多相同的特徵。這是因為在NICONICO動畫營運當初,2ch的管理人西村博之在自己的部落格介紹此網站的緣故。NICONICO動畫及2ch的留言最大的相同特徵,就是把笑寫成「w」(通稱「芝」,取自「笑う」(Wara-u)的日語羅馬字的首個字母W)並以已大量的方式送出(例如「wwwwwww」)。現在niwango官方製作的初學者入門動畫中,亦有說明在影片中該笑的地方寫出「w」。
* 對於惡意使用者的政策
**然而,NICONICO動畫間中亦會出現惡意使用者(一般通稱『廚』)利用標籤、留言等方式,對其他人施誹謗或中傷的事件。對此營運會對這施以刪除。









<div id='header'>
<div id='titleLine'>
<span id='siteTitle' refresh='content' tiddler='SiteTitle'></span>
<span id='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<div id='sidebar'>
<div id='mainMenu' refresh='content' tiddler='MainMenu'></div>
<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div><div id="licensePanel">
<a rel="license" href="http://shared.snapgrid.com/gtd_tiddlywiki.html#RevisionHistory" target="_new">GTDTW Version <span macro="version"></span></a>
<a rel="license" href="http://www.tiddlywiki.com" target="_new">
TiddlyWiki is published by Jeremy Ruston at Osmosoft under a BSD open source license</a>
<a rel="license" href="http://snapgrid.com" target="_new">GTD TiddlyWiki is a modification by Nathan Bowers at Snapgrid under the same license terms.</a>
<a rel="license" href="http://davidco.com" target="_new">"Getting Things Done" is &#169; David Allen at Davidco. Davidco has no affiliation with TiddlyWiki or GTD TiddlyWiki.</a></div></div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
/***
|''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"
	});
*/
//}}}
<html>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="400" height="80"><param name="movie" value="http://pic.wretch.cc/icon/mp3player.swf?config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909542.mp3" /><param name="quality" value="high" /><embed src="http://pic.wretch.cc/icon/mp3player.swf" flashvars="config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909542.mp3" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="400" height="80"></embed></object>

</html>


作詞:悪ノP 
作曲:悪ノP 
編曲:悪ノP 
唄:鏡音レン 



目覚めたとき僕はひとり 
黒く塗りつぶされた部屋 
何も見えず 何も聞こえず 
一人震える闇の中 

天井には大きな穴 
よく見ればそこには巨大なぜんまい 
その先から突如響く 
得体の知れぬ不気味な声 

「罪深き少年よ」 
「お前はこの先永遠に」 
「この部屋からは出られぬ」といった 

瞬間 思い出した全ての記憶 
自らが重ねた罪の数々を 
ここにいる理由と結末に気づいた 
もうあのころには戻れないのだと 

気づけば両腕にはめられた赤い手錠 
それはきっと誰かの流した血の色 
両の足首には青い色の鎖 
それはきっと誰かの涙の色 

「るりらるりら」 聞こえてきた歌は 
誰が歌う子守唄だろうか… 

どれほどの時が流れただろう 
動かぬぜんまいに尋ねた 
どこからともなく聞こえてくる 
歌声だけが僕を癒す 

ある日僕は気づいたんだ 
その歌の真実の意味を 
そして僕は子守唄に 
新しい言葉を付け足した 

ぜんまいの隙間から 
落ちてきた小さな光 
それはきっと 
― 君がくれたメッセージ ― 

廻り始めたぜんまいは静かに語る 
「罪が決して許されることはない」 
だけど 水という言葉 悪という言葉 
僕らはそれらを唄へと変えよう 

赤い手錠外れ 僕に語りかける 
「これからあなたは生まれ変わるのよ」と 
青い足枷外れ 僕に話しかける 
「今日が君の新しいBirthday」 

すべてが廻りそして白く染まる 
もうすぐ君に会いに行くよ 

--被灌過水的--   
''瀏覽人數''
[img[http://www.easycounter.com/counter.php?972il]] 
<<calendar thismonth>>
<<search>> 
<<closeAll>>
<<saveChanges>>
<<newTiddler>>
<<tiddler TspotSidebar>>

<html>
<embed src=http://npass.net/misc/rin_clap.swf?url=輸入你的網址  width="200" height="180"type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
</html>
(--綠色是敵人--)
[img[リン|http://farm4.static.flickr.com/3416/3608766504_19013a93ec_m.jpg]]VOCALOID
鏡音雙子[img[レン|http://farm3.static.flickr.com/2450/3607973729_cc9970e2a1_m.jpg]]
/***
!GTD Style
http://tiddlystyles.com/#theme:GTD

!Generic rules /%==================================================================== %/
***/
/*{{{*/
body {
 background: #464646 url('http://shared.snapgrid.com/images/tiddlywiki/bodygradient.png') repeat-x top fixed;
 color: #000;
 font: .82em/1.25em "Bitstream Vera Sans", Verdana, Helvetica, Arial, sans-serif;
/*"Lucida Sans Unicode", "Lucida Grande","Trebuchet MS", */
}
/*}}}*/
/***
!Header rules /%====================================================================== %/
***/
/*{{{*/
#contentWrapper
{
 margin: 0 auto;
width: 59em;
position: relative;
}

#header
{
 color: #fff;
 padding: 1.5em 1em .6em 0;
}

#siteTitle {

 font-size: 2.3em;
 margin: 0;
}

#siteSubtitle {
 font-size: 1em;
 padding-left: .8em;;
}

#titleLine{
 background: transparent;
 padding: 0;
}

#titleLine a {
 color: #cf6;
}

#titleLine a:hover {
 background: transparent;
}
/*}}}*/
/***
!Sidebar rules /%====================================================================== %/
***/
/*{{{*/
#sidebar{
 left: 0;
width: 18em;
 margin: .9em .9em 0 0;
 color: #000;
 background: transparent;
}
/*}}}*/
/***
!Main menu rules /%=================================================================== %/
***/
/*{{{*/
#mainMenu{
 position: static;
 width: auto;

 background: #600;
 border-right: 3px solid #500;
padding: 0;
 text-align: left;
 font-size: 1em;
}

#mainMenu h1{
 padding: 5px;
 margin: 0;
 font-size: 1em;
 font-weight: bold;
 background: transparent;
 color: #fff;
}

#mainMenu ul{
 padding: 0;
 margin: 0;
 list-style: none;
}

#mainMenu h1 a,
#mainMenu li a,
#mainMenu li a.button{
 display: block;
 padding: 0 5px 0 10px;
border: 0;
 border-bottom: 1px solid #500;
 border-top: 1px solid #900;
margin: 0;
}

#mainMenu a,
#mainMenu a.button{
 height: 22px;
height: 1.83em;
 line-height: 22px;
 color: #fff;
 background: #700;
margin-left: 1em;
}

#mainMenu a:hover,
#mainMenu a.button:hover {
 background: #b00;
 color: #fff;
}
/*}}}*/
/***
!Sidebar options rules /%============================================================ %/
***/
/*{{{*/
#sidebarOptions {
 background: #eeb;
 border-right: 3px solid #bb8;
 color: #B4C675;
 padding: .5em 0;
}

#sidebarOptions a {
 color: #700;
 margin: .2em .8em;
 padding: 0;
 border: 0;
}

#sidebarOptions a:hover, #sidebarOptions a:active {
 color: #fff;
 background: #700;
 border: 0;
}

#sidebarOptions input{
 margin: 2px 10px;
 border: 1px inset #333;
padding: 0;
}

#sidebarOptions .sliderPanel {
 background: #fff;
 color: #000;
 padding: 5px 10px;
 font-size: .9em;
}

#sidebarOptions .sliderPanel a{
 font-weight: normal;
 margin: 0;
}

#sidebarOptions .sliderPanel a:link,#sidebarOptions .sliderPanel a:visited {
 color: #700;
}

#sidebarOptions .sliderPanel a:hover,#sidebarOptions .sliderPanel a:active {
 color: #fff;
 background: #700;
}
/*}}}*/
/***
!Sidebar tabs rules /%===================================================================== %/
***/
/*{{{*/
#sidebarTabs {
 background: transparent;
 border-right: 3px solid #740;
 border-bottom: 3px solid #520;
 border: 0;
 padding: 0;
}

#contentWrapper #sidebarTabs a,
#contentWrapper #displayArea .tabContents a{
 color: #fff;
}

#contentWrapper #sidebarTabs a:hover,
#contentWrapper #displayArea .tabContents a:hover {
 background: #000;
 color: #fff;
}

#contentWrapper #sidebarTabs a:active,
#contentWrapper #displayArea .tabContents a:active{
 color: #000;
}



#contentWrapper .tabSelected {
 background: #960;
}

#contentWrapper .tabUnselected{
 background: #660;
}

#contentWrapper #sidebar .tabset{
 background: #eeb;
 border-right: 3px solid #bb8;
 padding: 0 0 0 .75em;
}

#contentWrapper .tabContents{
font-size: .95em;
background: #960;
border:0;
 border-right: 3px solid #740;
 border-bottom: 3px solid #520;
 padding: .75em;
}

#contentWrapper .tabContents{
 width: auto;
}

#contentWrapper #sidebarTabs .tabContents .tabset,
#contentWrapper .tabContents .tabset{
 border: 0;
 padding: 0;
 background: transparent;
}

#contentWrapper .tabContents .tabSelected,
#contentWrapper .tabContents .tabContents {
 background: #700;
 border: 0;
}

#contentWrapper .tabContents .tabUnselected {
 background: #440;
}

#contentWrapper .tabset a {
 color: #fff;
 padding: .2em .7em;
 margin: 0 .17em 0 0;
 height: 2em;
position: static;
}

#contentWrapper .tabset a:hover {
 background: #000;
 color: #fff;
}

#contentWrapper .tabset a:active {
 color: #000;
}

#contentWrapper .tabContents ul{
 margin: 0;
 padding: 0;
 list-style: none;
}

#contentWrapper .tabContents .tabContents ul{
 color: #eeb;
}

.tabContents ul a,
.tabContents ul .button{
 color: #fff;
 display: block;
 padding: .1em 0 .1em .7em;
 background: transparent;
 border: 0;
}

.tabContents ul a:hover {
 color: #fff;
 background: #000;
}
/*}}}*/
/***
!License panel rules /%==================================================================== %/
***/
/*{{{*/
#licensePanel {
 padding: 0px 1em;
 font-size: .9em;
}

#licensePanel a {
 color: #960;
 display: block;
 margin-top: .9em;
}

#licensePanel a:hover {
 color: #fff;
 background: transparent;
}
/*}}}*/
/***
!Popup rules /%================================================================= %/
***/
/*{{{*/
.popup {
 font-size: .8em;
 padding: 0em;
 background: #333;
 border: 1px solid #000;
}

.popup hr {
 margin: 1px 0 0 0;
 visibility: hidden;
}

.popup li.disabled {
 color: #666;
}

.popup li a,
.popup li a:visited{
 color: #000;
 border: .1em outset #cf6;
 background: #cf6;
}

.popup li a:hover {
border: .1em outset #cf6;
 background: #ef9;
 color: #000;
}
/*}}}*/
/***
!Message area rules /%================================================================= %/
***/
/*{{{*/
#messageArea{
 font-size: .9em;
 padding: .4em;
 background: #FFE72F;
 border-right: .25em solid #da1;
 border-bottom: .25em solid #a80;

position: fixed;
 top: 10px;
 right: 10px;
 color: #000;
}

#contentWrapper #messageArea a{
 color: #00e;
 text-decoration: none;
}

#contentWrapper #messageArea a:hover{
 color: #00e;
 text-decoration: underline;
 background: transparent;
}

#contentWrapper #messageArea .messageToolbar a.button{
 border: 1px solid #da1;
}

#contentWrapper #messageArea .messageToolbar a.button:hover{
 color: #00e;
 text-decoration: none;
 border: 1px solid #000;
 background: #fff;
}



/*}}}*/
/***
!Tiddler display rules /%================================================================== %/
***/
/*{{{*/
#displayArea {
 width: 39.75em;
 margin: 0 0 0 17em;
}

.tiddler {
 margin: 0 0 .9em 0;
 padding: 0 1em;
 border-right: .25em solid #aaa;
 border-bottom: .25em solid #555;
 background: #fff;
}

.title {
 font-size: 1.5em;
 font-weight: bold;
 color: #900;
}

.toolbar {
 font-size: .8em;
 padding: .5em 0;
}

.toolbar .button{
 padding: .1em .3em;
 color: #000;

 border: .1em outset #cf6;
 background: #cf6;
margin: .1em;
}

.toolbar .button:hover {
 background: #ef9;
 color: #000;
}

.toolbar .button:active {
 background: #ff0;
}

/*}}}*/
/***
!Viewer rules /% ------------------------------------------------------------------------------------------ %/
***/
/*{{{*/
.viewer {
 line-height: 1.4em;
 font-size: 1em;
}

.viewer a:link, .viewer a:visited {
 color: #15b;
}

.viewer a:hover {
 color: #fff;
 background: #000;
}

.viewer .button{
 background: transparent;
 border-top: 1px solid #eee;
 border-left: 1px solid #eee;
 border-bottom: 1px solid #000;
 border-right: 1px solid #000;
}

.viewer .button:hover{
 background: #eee;
 color: #000;
}

.viewer .button:active{
 background: #ccc;
 border-bottom: 1px solid #eee;
 border-right: 1px solid #eee;
 border-top: 1px solid #111;
 border-left: 1px solid #111;
}


.viewer blockquote {
 border-left: 3px solid #777;
 margin: .3em;
 padding: .3em;
}

.viewer pre{
 background: #fefefe;
 border: 1px solid #f1f1f1;
}

.viewer pre, .viewer code{
 color: #000;
}

.viewer ul {
 padding-left: 30px;
}

.viewer ol {
 padding-left: 30px;
}
ul{
list-style-type: asquare;
}
ol{ 
 list-style-type: decimal;
}

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

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

.viewer ul, .viewer ol, .viewer p {
 margin: .0;
}

.viewer li {
 margin: .2em 0;
}

h1,h2,h3,h4,h5,h6 {
 color: #000;
 font-weight: bold;
 background: #eee;
 padding: 2px 10px;
 margin: 5px 0;
}

.viewer h1 {font-size: 1.3em;}
.viewer h2 {font-size: 1.2em;}
.viewer h3 {font-size: 1.1em;}
.viewer h4 {font-size: 1em;}
.viewer h5 { font-size: .9em;}
.viewer h6 { font-size: .8em;}

.viewer table {
 border: 2px solid #303030;
 font-size: 11px;
 margin: 10px 0;
}

.viewer th, .viewer thead td{
 color: #000;
 background: #eee;
 border: 1px solid #aaa;
 padding: 0 3px;
}

.viewer td {
 border: 1px solid #aaa;
 padding: 0 3px;
}

.viewer caption {
 padding: 3px;
}

.viewer hr {
 border: none;
 border-top: dotted 1px #777;
 height: 1px;
 color: #777;
 margin: 7px 0;
}

.viewer
{
 margin: .5em 0 0 0;
 padding: .5em 0;
 border-top: 1px solid #ccc;
}

.highlight {
 color: #000;
 background: #ffe72f;
}
/*}}}*/
/***
!Editor rules /% ----------------------------------------------------------------------------------------- %/
***/
/*{{{*/
.editor {
 font-size: .8em;
 color: #402C74;
 padding: .3em 0;
}

.editor input, .editor textarea {
 font: 1.1em/130% "Andale Mono", "Monaco", "Lucida Console", "Courier New", monospace;
 margin: 0;
 border: 1px inset #333;
 padding: 2px 0;
}

.editor textarea {
 height: 42em;
 width: 100%;
}

input:focus, textarea:focus
{
 background: #ffe;
 border: 1px solid #000;
}
.footer
{
 padding: .5em 0;
 margin: .5em 0;
 border-top: 1px solid #ddd;
 color: #555;
 text-align: center; 
}
/*}}}*/
/***
!IE Display hacks /% ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~%/
***/
/*{{{*/
body{
 _text-align: center;
}

#contentWrapper
{
/* _width: 770px; CSS UNDERSCORE HACK FOR PROPER WIN/IE DISPLAY */
 _text-align: left; /* CSS UNDERSCORE HACK FOR PROPER WIN/IE DISPLAY */ 
}

#messageArea{
 _position: absolute;
}
/*}}}*/
/***
Description: Contains the stuff you need to use Tiddlyspot
Note, you also need UploadPlugin, PasswordOptionPlugin and LoadRemoteFileThroughProxy
from http://tiddlywiki.bidix.info for a complete working Tiddlyspot site.
***/
//{{{

// edit this if you are migrating sites or retrofitting an existing TW
config.tiddlyspotSiteId = 'zihzih';

// make it so you can by default see edit controls via http
config.options.chkHttpReadOnly = false;
window.readOnly = false; // make sure of it (for tw 2.2)
window.showBackstage = true; // show backstage too

// 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.org|http://tiddlywiki.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/]], [[blog|http://tiddlyspot.blogspot.com/]], 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")

});
//}}}
| !date | !user | !location | !storeUrl | !uploadDir | !toFilename | !backupdir | !origin |
| 12/06/2009 00:34:19 | 黃姿瑩 | [[zihzih.html|file:///C:/Documents%20and%20Settings/123/%E6%A1%8C%E9%9D%A2/zihzih.html]] | [[store.cgi|http://zihzih.tiddlyspot.com/store.cgi]] | . | [[index.html | http://zihzih.tiddlyspot.com/index.html]] | . | ok |
| 12/06/2009 01:00:08 | 黃姿瑩 | [[zihzih.html|file:///C:/Documents%20and%20Settings/123/%E6%A1%8C%E9%9D%A2/zihzih.html]] | [[store.cgi|http://zihzih.tiddlyspot.com/store.cgi]] | . | [[index.html | http://zihzih.tiddlyspot.com/index.html]] | . | ok |
| 12/06/2009 01:01:43 | 黃姿瑩 | [[zihzih.html|file:///C:/Documents%20and%20Settings/123/%E6%A1%8C%E9%9D%A2/zihzih.html]] | [[store.cgi|http://zihzih.tiddlyspot.com/store.cgi]] | . | [[index.html | http://zihzih.tiddlyspot.com/index.html]] | . | ok |
| 12/06/2009 01:06:34 | 黃姿瑩 | [[zihzih.html|file:///C:/Documents%20and%20Settings/123/%E6%A1%8C%E9%9D%A2/zihzih.html]] | [[store.cgi|http://zihzih.tiddlyspot.com/store.cgi]] | . | [[index.html | http://zihzih.tiddlyspot.com/index.html]] | . | ok |
| 12/06/2009 01:08:30 | 黃姿瑩 | [[zihzih.html|file:///C:/Documents%20and%20Settings/123/%E6%A1%8C%E9%9D%A2/zihzih.html]] | [[store.cgi|http://zihzih.tiddlyspot.com/store.cgi]] | . | [[index.html | http://zihzih.tiddlyspot.com/index.html]] | . | ok |
| 12/06/2009 01:28:59 | 黃姿瑩 | [[zihzih.html|file:///C:/Documents%20and%20Settings/123/%E6%A1%8C%E9%9D%A2/zihzih.html]] | [[store.cgi|http://zihzih.tiddlyspot.com/store.cgi]] | . | [[index.html | http://zihzih.tiddlyspot.com/index.html]] | . | ok |
| 12/06/2009 01:31:52 | 黃姿瑩 | [[zihzih.html|file:///C:/Documents%20and%20Settings/123/%E6%A1%8C%E9%9D%A2/zihzih.html]] | [[store.cgi|http://zihzih.tiddlyspot.com/store.cgi]] | . | [[index.html | http://zihzih.tiddlyspot.com/index.html]] | . | ok |
| 12/06/2009 01:34:25 | 黃姿瑩 | [[zihzih.html|file:///C:/Documents%20and%20Settings/123/%E6%A1%8C%E9%9D%A2/zihzih.html]] | [[store.cgi|http://zihzih.tiddlyspot.com/store.cgi]] | . | [[index.html | http://zihzih.tiddlyspot.com/index.html]] | . | ok |
| 12/06/2009 03:18:18 | 黃姿瑩 | [[zihzih.html|file:///C:/Documents%20and%20Settings/123/%E6%A1%8C%E9%9D%A2/zihzih.html]] | [[store.cgi|http://zihzih.tiddlyspot.com/store.cgi]] | . | [[index.html | http://zihzih.tiddlyspot.com/index.html]] | . | ok |
| 12/06/2009 14:40:04 | 陳禹瑄 | [[zihzih.html|file:///C:/Documents%20and%20Settings/123/%E6%A1%8C%E9%9D%A2/zihzih.html]] | [[store.cgi|http://zihzih.tiddlyspot.com/store.cgi]] | . | [[index.html | http://zihzih.tiddlyspot.com/index.html]] | . |
/***
|''Name:''|UploadPlugin|
|''Description:''|Save to web a TiddlyWiki|
|''Version:''|4.1.3|
|''Date:''|Feb 24, 2008|
|''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: 3,
	date: new Date("Feb 24, 2008"),
	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");


//}}}

軟體使用了Yamaha的VOCALOID語音合成引擎,把人類的聲音錄音並合成為酷似真正的歌聲。__只需輸入音調、歌詞則可發出聲音,亦可以調整震音、音速等的「感情參數」,最多能夠16人合唱,亦支援即時演奏、對應R eWire__。製作完成後會以WAV格式輸出,@@但軟體本身只可做出歌唱部分,伴奏音聲需要使用其他音樂軟體合成@@。歌詞輸入能辨認//平假名//、//片假名//和//羅馬字//,但不能辨認は、へ作為助詞和う、い作為長音時會分別轉為わ、え、お、え的發音,亦不能對應促音、漢字,需要自行修改。
<html>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="400" height="80"><param name="movie" value="http://pic.wretch.cc/icon/mp3player.swf?config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909545.mp3" /><param name="quality" value="high" /><embed src="http://pic.wretch.cc/icon/mp3player.swf" flashvars="config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909545.mp3" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="400" height="80"></embed></object>

</html>



作詞:流星P 
作曲:流星P 
編曲:流星P
唄: 鏡音リン、鏡音レン 
原唱者:巡音ルカ・初音ミク



か細い火が 心の端に灯る 
いつの間にか燃え広がる熱情 
私の蝶 不規則に飛び回り 
あなたの手に鱗粉を付けた 

絡み合う指ほどいて 唇から舌へと 
許されない事ならば 尚更燃え上がるの 

抱き寄せて欲しい 確かめて欲しい 
間違いなど無いんだと 思わせて 
キスをして 塗り替えて欲しい 
魅惑の時に酔いしれ溺れていたいの 

束縛して もっと必要として 
愛しいなら執着を見せつけて 
「おかしい」のが たまらなく好きになる 
行けるトコまで行けばいいよ 

迷い込んだ心なら 簡単に融けてゆく 
優しさなんて感じる暇など 無い位に 

繰り返したのは あの夢じゃなくて 
紛れも無い現実の私達 
触れてから 戻れないと知る それでいいの… 
誰よりも大切なあなた 

夜明けが来ると不安で 泣いてしまう私に 
「大丈夫」と囁いたあなたも 泣いていたの?

抱き寄せて欲しい 確かめて欲しい 
間違いなど無いんだと 思わせて 
キスをして 塗り替えて欲しい 魅惑の時に 
酔いしれ溺れたい 

引き寄せて マグネットのように 
例えいつか離れても巡り会う 
触れていて 戻れなくていい それでいいの 
誰よりも大切なあなた  
''背景介紹:''
*在2007年8月31日,以VOCALOID 2語音合成而引擊的虛擬女性歌手軟體角色主唱系列CV 01「初音未來(初音ミク)」發售。軟體因[[NICONICO動畫]]的推動等等的原因而大受歡迎,截至同年10月27日售出20000套,在銷路較狹窄、售出1000套已是大賣的音樂軟體市場中,是個罕見的高銷售量。因此在同年10月開始有其他企業向製作初音未來的CRYPTON FUTURE MEDIA提議各種企劃,其中包括漫畫化。對此負責企劃及販賣的佐佐木涉在當時表示會「慎重考慮,但CRYPTON未必能夠負荷大型的計劃」。在10月25日,月刊COMIC RUSH宣布開始連載本漫畫,CRYPTON方面表示「這不會是官方的正式作品,並希望以儘量不波及或干涉到其他的世界觀為目標來製作。」。當時標題定為「初音Mix!(初音みっくす!)」,在正式開始連載時則加上「廠商非正式」,改為現在的標題,但在版權上表示為「(C)2007 CRYPTON FUTURE MEDIA, INC. ALL RIGHTS RESERVED.」。

''基本架構:''
*以北海道為故事舞台,每回以@@短篇形式@@描述初音未來和鏡音鈴‧連的故事。

''登場人物:''
*初音未來(初音 ミク(はつね - )) <<slider testVar 註  "註" "點我點我">> 
主角。16歲、身高158cm、體重42kg,擅長流行歌曲。經常都是沒精神的樣子,但唱歌時就會變得很有幹勁。漫畫中,她的台詞很少附有對話框,對話框以外的台詞即表示那是對製作人來說無法理解的語言(第1話),不過鈴‧連卻能理解對話框以外的台詞(第3話)。但由於每一話的設定也不同,第4話中說話時也附上了對話框,可以跟一般人對話。 
其他在本作特有的特徵有:口頭禪是「みく(重複)」,平時會戴眼鏡和放下頭髮,洗澡和睡覺時也不會拿走耳機,對蔥好像沒有特別的想法。 
*鏡音鈴(鏡音 リン(かがみね - )) 
第2話開始登場。在第1話的預告出現後第2話跟鏡音連一起突然登場。為何會演變為跟初音、製作人同住的情況,現時第14集說明。14歲、身高152cm、體重43kg,擅長搖滾、舞蹈、歌謠曲、演歌系流行曲。連的搭檔。雖然在角色主唱系列的官方設定中和初音未來無任何關係,但在漫畫中稱初音為「姐姐」。以壓路機代替單車代步。 
*鏡音連(鏡音 レン(かがみね - )) 
第2話開始登場。14歲、身高156cm、體重47kg,擅長搖滾、舞蹈、歌謠曲、演歌系流行曲。鈴的搭檔,雖然在角色主唱系列的官方設定中沒有和鈴是雙子的設定,但在本作是雙子設定。第2話時叫鈴為「姐姐」(但第三話開始只叫她鈴)。也稱初音為「姐姐」。 
鈴‧連跟初音不同,說話時附有對話框,可以跟製作人等一般人溝通。 
製作人姐姐(Meiko) <<slider testVar 註  "註" "點我點我">> 
第1話開始登場。藝人公司的製作人,正發掘有偶像潛力的人。某天在街上偶然碰到被「遺棄」的初音未來而「拾」回家。本名第一字的發音是「ME…」的樣子。 
*圍巾青年(Kaito) <<slider testVar 註  "註" "點我點我">> 
第2話開始登場。長圍巾的商標加上其外表無論怎樣看也是「KA…」,但名字以及在藝人公司中的地位如何也是不明。第2話第一次登場只有背影看不見其容貌,第3話有看到他的臉但一句台詞也沒有,正式登場是從第5話開始。經常被製作人姐姐那惡劣的酒品所連累,聽說每年春天賞花時也會被她活埋在櫻樹下。 
*wat 
第2話開始登場。製作人姐姐的部下,「wat」是藝名。口頭禪是「太棒了!(最高だよ!)」、「這不是很棒嗎?(最高じゃないですか?)」。有著常人無法理解的品味。 
負責角色主唱系列企劃及販賣的佐佐木涉在官方blogMEDIA PHAGE的筆名是「wat」。 
<html>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="400" height="80"><param name="movie" value="http://pic.wretch.cc/icon/mp3player.swf?config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909536.mp3" /><param name="quality" value="high" /><embed src="http://pic.wretch.cc/icon/mp3player.swf" flashvars="config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909536.mp3" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="400" height="80"></embed></object>

</html>


作詞:トラボルタP 
作曲:トラボルタP 
編曲:トラボルタP 
唄:鏡音リン 


孤独な科学者に作られたロボット 
出来栄えを言うなら "奇跡" 
だけどまだ足りない 
一つだけ出来ない 
それは「心」と言う 
プログラム 

幾百年が過ぎ 
独りで残された 
奇跡のロボットは 
願う 
知リタイ アノ人ガ 
命ノ 終リマデ 
私ニ 作ッテタ 
「ココロ」 

今 動き始めた 加速する奇跡 
ナゼか ナミダが 止まらナい… 
ナぜ 私 震える? 加速する鼓動 
こレが私の望んだ「ココロ」? 

フシギ ココロ ココロ フシギ 
私は知った 喜ぶ事を 
フシギ ココロ ココロ フシギ 
私は知った 悲しむ事を 
フシギ ココロ ココロ ムゲン 
なんて深く切ない… 

今 気付き始めた 
生まれた理由を 
きっと独りは寂しい 
そう、あの日、あの時 
全ての記憶に 
宿る「ココロ」が溢れ出す 

今 言える 
本当の言葉 
捧げる あなたに 
アリガトウ・・・ 
この世に私を生んでくれて 
アリガトウ・・・ 
一緒に過ごせた日々を 
アリガトウ・・・ 
あなたが私にくれた全て 
アリガトウ・・・ 
永遠に歌う 
アリガトウ・・・ 

エピローグ

It was exactly a miracle. 
The robot that obtained 'Kokoro' kept singing. 
She sang all of her feelings. 

But the miracle lasted only a moment. 

The 'Kokoro' was far too big for her. 
Unable to withstand that weight, 
the machine shorted 
and was never to move again. 

However, her face was filled with smile, 
she looked like an angel. 

それはまさに奇跡でした。 
"ココロ"を手に入れたロボットは歌い続けました。 
思いを全てを。 

しかし、その奇跡もつかの間。 

"ココロ"は彼女にはあまりにも大きすぎました。 
その大きさに耐えられず機械はショートし 
二度と動く事はありませんでした。 

しかし、その表情は笑顔に満ち溢れ 
まるで天使のようでした。 

<html>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="400" height="80"><param name="movie" value="http://pic.wretch.cc/icon/mp3player.swf?config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909538.mp3" /><param name="quality" value="high" /><embed src="http://pic.wretch.cc/icon/mp3player.swf" flashvars="config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909538.mp3" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="400" height="80"></embed></object>

</html>


作詞:悪ノP 
作曲:悪ノP 
編曲:悪ノP 
唄:鏡音リン 



街はずれの小さな港 一人たたずむ少女 
この海に昔からある ひそかな言い伝え 

「願いを書いた羊皮紙を 小瓶に入れて 
 海に流せばいつの日か 想いは実るでしょう」 

流れていく ガラスの小瓶 
願いを込めたメッセージ 
水平線の彼方に 静かに消えていく 

君はいつも私のために なんでもしてくれたのに 
私はいつもわがままばかり 君を困らせてた 

願いをかなえてくれる君 もういないから 
この海に私の想い 届けてもらうの 

流れていく 小さな願い 
涙と少しのリグレット 
罪に気付くのはいつも 全て終わった後 

流れていく ガラスの小瓶 
願いを込めたメッセージ 
水平線の彼方に 静かに消えていく 

流れていく 小さな願い 
涙と少しのリグレット 
「もしも生まれ変われるならば 」
<html>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="400" height="80"><param name="movie" value="http://pic.wretch.cc/icon/mp3player.swf?config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909543.mp3" /><param name="quality" value="high" /><embed src="http://pic.wretch.cc/icon/mp3player.swf" flashvars="config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909543.mp3" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="400" height="80"></embed></object>

</html>


作詞:一行P 
作曲:一行P 
編曲:一行P 
唄:鏡音リン,鏡音レン 



二代目襲名 早三月 
番付埋めるは先代ばかり 
ここらで一花咲かせませうと 
成り上がります下剋上 

一番槍 俺がいただき 
切り込み隊長鏡音レンだ 
連打F5 
変な捏造のせいでニコでの俺の扱いはショタ 
ちょっとまてゴルァ 
俺は漢だ 
なめた真似すっと轢くぞロードローラーで 
ちょっとイメージ違うんでない 
秘めたる力は実はかつてない程の 
美声 聴け 
キー高くして 
ひでぇ滑舌は無視して 

歌をくれ!! 
先代に太刀打ちできる力を 
歌をくれ!! 
そいつ武器に俺は成り上がるぜ 

そらいくぞ!! 下剋上!! 
此処に集え我等鏡音一家 ・・・ 

一家総出で啖呵切った 
ちょいコメ荒れたけどまあいっか 
リンがみんなにお詫びちゃんと 
リンガ〇ハットで奢るちゃんぽん 
こんなデレかたならミク姉より 
あたしの方が可愛くねぇ? 
でも可愛いだけじゃ何も変わらないから 
ここはあえてツン全開 

いいか 聴きな 座右の銘は 
無論 おk、緑は、敵だ。 
次代担うこの熱い胸には 
機械に無い魂が宿る 

鏡音一家の御旗の下 
集う絵師楽師が振り翳す炎 
一騎当千の虎を筆頭に 
臨機応変に掴みに行く勝利 

歌をくれる 
楽師達には夢かなう声を 
ふたり描く 
絵師達には笑顔を捧げるぜ 

(鏡音使いの)作者GJ!! 下剋上!! 
此処に集え我等鏡音一家 
(鏡音描きの)作者GJ!! 下剋上!! 
此処に集え我等鏡音一家 
(鏡音創りの)作者GJ!! 下剋上!! 
此処に集え我等鏡音一家 
(大切な事なので4回言います)作者GJ!! 下剋上!! 
此処に集え我等鏡音一家 

そらいくぞ!!下剋上!! 
此処に集え我等鏡音一家 ・・・ 

(1986年1月30日-)是日本女性聲優、舞台劇演員,鳥取縣出身,血型A型。ARTSVISION所屬,是日本旁白演技研究所的優異生。暱稱有「あさぽん」、「アーサー」、「ゲっタン」。
<<tabs tabsClass 初めての恋が終わる時 初めての恋が終わる時 初めての恋が終わる時 追憶 追憶 追憶 置き去り月夜抄 置き去り月夜抄 置き去り月夜抄 magnet magnet magnet 暗い森のサーカス 暗い森のサーカス 暗い森のサーカス>>
<html>
<embed allowscriptaccess="never"  src="http://pic.wretch.cc/icon/mp3player.swf" flashvars="config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909528.mp3" type="application/x-shockwave-flash" width="400" height="80"></embed> 
</html>


作詞:ryo 
作曲:ryo 
編曲:ryo 
唄:鏡音レン
原唱者:初音ミク


はじめてのキスは涙の味がした 
まるでドラマみたいな恋 
見計らったように発車のベルが鳴った 

冷たい冬の風が頬をかすめる 
吐いた息で両手をこすった 
街はイルミネーション 魔法をかけたみたい 
裸の街路樹 キラキラ 

どうしても言えなかった 
この気持ち 押さえつけた 
前から決めていた事だから  
これでいいの 
振り向かないから 

ありがとう サヨナラ 
切ない片思い 
足を止めたら思い出してしまう 
だから 
ありがとう サヨナラ 
泣いたりしないから 
そう思った途端にふわり 
舞い降りてくる雪 
触れたら溶けてきえた 

駅へと続く大通り 
寄り添ってる二人 楽しそう 
「ほら見て初雪!」 
キミとあんな風になりたくて 
初めて作った 
手編みのマフラー 

どうしたら渡せたんだろう 
意気地なし 怖かっただけ 
思い出になるなら 
このままで構わないって 
それは本当なの? 

ありがとう サヨナラ 
いつかこんな時が来てしまうこと 
わかってたはずだわ 
なのに 
ありがとう サヨナラ? 
体が震えてる 
もうすぐ列車が来るのに 
それは今になって 
私を苦しめる 

繋がりたい 
どれほど願っただろう 
この手は空っぽ 
ねえ サヨナラってこういうこと? 

行かなくちゃ 
そんなのわかってる 
キミが優しい事も知ってる 
だから 
「……この手を離してよ」 
出会えてよかった 
キミが好き 

ありがとう サヨナラ 
一言が言えない 
今だけでいい 私に勇気を  
「あのね――」 
言いかけた唇 キミとの距離は0 
……今だけは泣いていいよね 
もう言葉はいらない 
お願い ぎゅっとしていて  

来年の今頃には 
どんな私がいて 
どんなキミがいるのかな 
VOCALOID 2
*''初音ミク(未來)''
**於2007年8月31日發售
**原聲提供:<<slider testVar 藤田咲  "藤田咲" "點我點我">>
**擅長的曲種:流行歌曲
[img[我是愛甩蔥的初音|http://farm3.static.flickr.com/2440/3607680867_895b4a60e8_m.jpg]]
<html>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="400" height="80"><param name="movie" value="http://pic.wretch.cc/icon/mp3player.swf?config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909539.mp3" /><param name="quality" value="high" /><embed src="http://pic.wretch.cc/icon/mp3player.swf" flashvars="config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909539.mp3" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="400" height="80"></embed></object>

</html>


作詞:水野悠良 
作曲:のりP 
編曲:のりP 
唄:鏡音リン、鏡音レン(レン版) 



右肩に紫蝶々 キスをしたこの部屋の隅で 
切ないという感情を知る 響くピアノ 不協和音 

悪い夢にうなされた私を早く起こして 
どんなことでも始まりは些細なことでしょう? 
どこがいいかなんて 聞かれても困る 
綺麗な夜に惑わされたまま行方不明だから 

長いまつげ 三日月アイラインまぶたに乗せて 光るリップ 

右肩に紫蝶々 キスをしたこの部屋の隅で 
切ないという感情を知る 響くピアノ 不協和音 

雨の中で濡れた 髪が異常に冷たくて 
寂しさをトイレに吐き出して震えて待ってる 
追いかけては逃げるからそれ以上で返して 
真剣だから笑うと痛い目に遭うよいい? 

赤い爪と 安物の指輪 傷付く度増えるピアス 

抱き寄せて 歪んだ体 埋めるのはあなたしかいない 
そうでしょう? わかってるくせに 境界線とっくに越えてる 
後悔は死ぬほどしてる その分だけ快感を呼び覚ます 
狂いだした私を止めて 一瞬でラクにしてよ 

傷口から溶け出したものは 愛情それとも Ah... 

後悔は死ぬほどしてる その分だけ快感を呼び覚ます 
狂いだした私を止めて 一瞬でラクにしてよ 
抱き寄せて 歪んだ体 埋めるのはあなたしかいない 
そうでしょう? わかってるくせに 境界線とっくに越えてる 

右肩に紫蝶々 キスをしたこの部屋の隅で 
切ないという感情を知る 響くピアノ 不協和音 

右肩に紫蝶々 
切ないという感情を知る 

不協和音 
*同人一詞來自日語的「どうじん」,原指有著相同志向的人們、同好。
*作為動漫文化的用詞,指「自創、不受商業影響的自我創作」,或「自主」的創作。
*它比商業創作有較大的創作自由度,以及「想創作甚麼,便創作甚麼」的味道。

''語源:''
  現代漢語中的「同人」一詞最早似出現在新文化運動時期。魯迅、周作人等曾使用「同人刊物」一詞來稱呼他們所創辦的《語絲》周刊,其意為非商業性「自編自寫」的刊物,即編輯同時也是撰稿人。更有人上追至《易經》的同人卦,指出這是「同人」一詞的最早起源。 然而,現在這個同人文化的興起,以動漫文化為主。本條目所述的,主要亦是這個同人文化部分。

''語義:''
  由於許多漫畫同人作品是以由商業漫畫中的人物為基礎進行的二次創作(又稱再創作),在日常語彙的方便上,「同人」被廣泛用於指代愛好者用特定文學、動漫、電影、遊戲作品中人物再創作、情節與原作無關的文學或美術作品,即同人小說與同人畫作的合稱。然而,「同人」並不一定是再創作,也可以是原創。
VOCALOID
*''咲音メイコ(芽衣子)''
**於2004年11月發售
**原聲提供:拜鄉芽衣子(拝郷メイコ)
**擅長的曲種:流行曲、搖滾樂、爵士樂、R&B、童謠等廣範圍歌種
[img[我是愛喝酒的大姐|http://farm4.static.flickr.com/3318/3607660779_c2cb5ff948_m.jpg]]
VOCALOID
*''始音カイト(海人)''
**於2006年2月發售
**原聲提供:<<slider testVar 風雅なおと "風雅なおと" "點我點我">>
**擅長的曲種:歌謠曲、童謠
[img[我是愛吃冰的大哥|http://farm4.static.flickr.com/3341/3607660621_54f4356be7_m.jpg]]
VOCALOID 2
*''巡音ルカ(流歌)''
**於2009年1月30日發售
**原聲提供:<<slider testVar 淺川悠  "淺川悠" "點我點我">>
**擅長的曲種:拉丁爵士至民族系流行曲、浩室音樂至電子音樂
[img[我是愛轉圈的章魚?|http://farm4.static.flickr.com/3374/3607680973_21e38d4732_m.jpg]]
<html>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="400" height="80"><param name="movie" value="http://pic.wretch.cc/icon/mp3player.swf?config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909541.mp3" /><param name="quality" value="high" /><embed src="http://pic.wretch.cc/icon/mp3player.swf" flashvars="config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909541.mp3" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="400" height="80"></embed></object>



</html>


作詞:悪ノP 
作曲:悪ノP 
編曲:悪ノP 
唄:鏡音レン 



君は王女 僕は召使 
運命分かつ 哀れな双子 
君を守る その為ならば 
僕は悪にだってなってやる 

期待の中僕らは生まれた 
祝福するは教会の鐘 
大人たちの勝手な都合で 
僕らの未来は二つに裂けた 

たとえ世界の全てが 
君の敵になろうとも 
僕が君を守るから 
君はそこで笑っていて 

君は王女 僕は召使 
運命分かつ 哀れな双子 
君を守る その為ならば 
僕は悪にだってなってやる 

隣の国へ出かけたときに 
街で見かけた緑のあの娘 
その優しげな声と笑顔に 
一目で僕は恋に落ちました 

だけど王女があの娘のこと 
消してほしいと願うなら 
僕はそれに応えよう 
どうして?涙が止まらない 

君は王女 僕は召使 
運命分かつ 狂おしき双子 
「今日のおやつはブリオッシュだよ」 
君は笑う 無邪気に笑う 

もうすぐこの国は終わるだろう 
怒れる国民たちの手で 
これが報いだというのならば 
僕はあえて それに逆らおう 

「ほら僕の服を貸してあげる」 
「これを着てすぐお逃げなさい」 
「大丈夫僕らは双子だよ」 
「きっとだれにもわからないさ」 

僕は王女 君は逃亡者 
運命分かつ 悲しき双子 
君を悪だというのならば 
僕だって同じ 血が流れてる 

むかしむかしあるところに 
悪逆非道の王国の 
頂点に君臨してた 
とても可愛い僕の姉弟 

たとえ世界の全てが (ついにその時はやってきて) 
君の敵になろうとも (終わりを告げる鐘が鳴る) 
僕が君を守るから (民衆などには目もくれず) 
君はどこかで笑っていて (君は私の口癖を言う) 

君は王女 僕は召使 
運命分かつ 哀れな双子 
君を守る その為ならば 
僕は悪にだってなってやる 

もしも生まれ変われるならば 
その時はまた遊んでね 

<html>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="400" height="80"><param name="movie" value="http://pic.wretch.cc/icon/mp3player.swf?config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909537.mp3" /><param name="quality" value="high" /><embed src="http://pic.wretch.cc/icon/mp3player.swf" flashvars="config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909537.mp3" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="400" height="80"></embed></object>


</html>


作詞:悪ノP 
作曲:悪ノP 
編曲:悪ノP 
唄:鏡音リン 



むかしむかしあるところに 
悪逆非道の王国の 
頂点に君臨するは 
齢十四の王女様 

絢爛豪華な調度品 
顔のよく似た召使 
愛馬の名前はジョセフィーヌ 
全てが全て彼女のもの 

お金が足りなくなったなら 
愚民どもから搾りとれ 
私に逆らう者たちは 
粛清してしまえ 

「さあ、ひざまずきなさい!」 

悪の華 可憐に咲く 
鮮やかな彩りで 
周りの哀れな雑草は 
嗚呼 養分となり朽ちていく 

暴君王女が恋するは 
海の向こうの青い人 
だけども彼は隣国の 
緑の女にひとめぼれ 

嫉妬に狂った王女様 
ある日大臣を呼び出して 
静かな声で言いました 
「緑の国を滅ぼしなさい」 

幾多の家が焼き払われ 
幾多の命が消えていく 
苦しむ人々の嘆きは 
王女には届かない 

「あら、おやつの時間だわ」 

悪の華 可憐に咲く 
狂おしい彩りで 
とても美しい花なのに 
嗚呼 棘が多すぎて触れない 

悪の王女を倒すべく 
ついに人々は立ち上がる 
烏合の彼らを率いるは 
赤き鎧の女剣士 

つもりにつもったその怒り 
国全体を包み込んだ 
長年の戦で疲れた 
兵士たちなど敵ではない 

ついに王宮は囲まれて 
家臣たちも逃げ出した 
可愛く可憐な王女様 
ついに捕らえられた 

「この 無礼者!」 

悪の華 可憐に咲く 
悲しげな彩りで 
彼女のための楽園は 
嗚呼 もろくもはかなく崩れてく 

むかしむかしあるところに 
悪逆非道の王国の 
頂点に君臨してた 
齢十四の王女様 

処刑の時間は午後三時 
教会の鐘が鳴る時間 
王女と呼ばれたその人は 
一人牢屋で何を思う 

ついにその時はやってきて 
終わりを告げる鐘が鳴る 
民衆などには目もくれず 
-彼女-はこういった 

「あら、おやつの時間だわ」 

悪の華 可憐に散る 
鮮やかな彩りで 
のちの人々はこう語る 
嗚呼 彼女は正に悪ノ娘 

''故事簡介:''
*內容描述歐洲古代某一對貴族雙胞胎幼年時人生遭成年貴族操弄,所造成之悲劇不僅令雙胞胎人格扭曲,亦吞噬整個國家,漫延至鄰國,悲劇最後對雙胞胎之間扭曲的手足之情所作的懲罰持續到雙胞胎身故許久後才獲得救贖。

''角色簡介:''
*公主(王女 演出:鏡音鈴) 
**貴族雙胞胎的姊姊,十四歲時掌握黃之國國政,統治極為殘暴。單戀藍髮王子。 
*僕人(召使 演出:鏡音連) 
**貴族雙胞胎的弟弟,幼年時在成年貴族操弄下被迫與姊姊分離,十四歲返王宮不具王子身份只能當僕人,對姊姊懷有扭曲的手足之情,對姊姊的所作所為完全放縱,甚至姊姊要他去做的事無論對錯都會照做。 
*之國的少女(緑の女 演出:初音ミク)<<slider testVar 註  "註" "點我點我">> 
**僕人的單戀對象,綠之國的少女愛的是藍髮王子,黃之國公主因此妒火中燒,想要殺掉綠之國的少女,但不知道綠之國的少女是綠之國的哪一個人,索性發動軍隊消滅綠之國。綠之國的少女是綠之國的平民,不具貴族身份更不是公主。 
*青之國的藍髮王子(青い人 演出:KAITO)<<slider testVar 註  "註" "點我點我">> 
**黃之國公主的單戀對象,藍髮王子愛的是綠之國的少女,綠之國被滅後發動軍隊攻入黃之國。 
*紅鎧女劍士(赤き鎧の女剣士 演出:MEIKO) <<slider testVar 註  "註" "點我點我">>
**紅鎧女劍士發動被公主暴政統治的人民起身抗暴,紅鎧女劍士的起義軍與藍髮王子率領的軍隊兩軍合流攻陷黃之國王宮。

[img[其一劇照|http://farm4.static.flickr.com/3373/3616073483_283fe269ac_m.jpg]]
<html>
<embed allowscriptaccess="never"  src="http://pic.wretch.cc/icon/mp3player.swf" flashvars="config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909535.mp3" type="application/x-shockwave-flash" width="400" height="80"></embed>
</html>

作詞:マチゲリータP 
作曲:マチゲリータP 
編曲:マチゲリータP 
唄:初音ミク、鏡音リン、鏡音レン 



森のね、奥の奥にあるんだ。そのサーカス 
座長は大きな目に高い背、10メートル 

キャストはみんな愉快、容姿(かたち)は変だけれど 
とってもたのしいんだ!暗い森のサーカス! 

二つあたまミセモノ、異形の歌姫に 
冷たいもの食べるの、青いけものが 

望まれて生まれてきたわけじゃない この身体 
なんでそんな目で見ているの 顔が腐ってく 

「苦しいよ苦しくて仕方がない」と 

彼女は言ったんだ それでもこのサーカスは続くんだ 

楽しいよ楽しいよ このサーカスは楽しい 
腐った実 熔ける目に 爛れた肌が映るの 

死にたいよ死にたいよ ここから出してください 

「それは無理なこと」と誰かが言っていた気がする。
!大事記
366年——日耳曼一個部落同盟阿拉曼人越過冰封的萊茵河,入侵羅馬帝國。 
533年——教宗若望二世即位,是第一位使用新名號即位的教宗。 
1492年——西班牙軍隊攻下了摩爾人在伊比利亞半島的最後一個重鎮格拉納達,收復失地運動結束。 
1905年——日俄戰爭:駐守旅順的俄軍向日軍投降。 
1909年——義大利墨西拿發生地震,20萬人喪生。 
1909年——清政府將袁世凱撤職。 
1920年——@@美國禁酒令生效@@。 
1921年——盧森堡共產黨成立。 
1932年——日軍攻佔錦州,全部佔領中國東北 
1942年——中國軍隊在第三次長沙戰役擊敗日軍。 
1942年——日軍佔領菲律賓首都馬尼拉。 
1959年——蘇聯在哈薩克拜科努爾發射場發射了世界上第一個星際探測器月球1號。 
1959年——捷·古華拉率革命軍成功佔領古巴首都哈瓦那,巴蒂斯塔出逃。 
1966年——中國人民日報發表文章,掀起工業學大慶的浪潮。 
1977年——洛陽黃河公路大橋建成通車。 
1988年——香港廉政公署拘捕香港聯合交易所高層人員。 
2001年——金門與廈門之間開通「小三通」。 
2004年——美國星塵號太空探測器飛過維爾特二號彗星,採集彗星塵埃及氣體樣本 

!出生
1822年——@@魯道夫·克勞修斯@@,德國物理學家和數學家,熱力學的主要奠基人。(1888年去世) 
1875年——沈鈞儒,中華人民共和國最高人民法院院長。(1963年去世) 
1900年——黃子卿,中國化學家。(1982年去世) 
1901年——黃海岱,台灣布袋戲藝人。(2007年去世) 
1905年——麥可·蒂皮特,英國音樂家。(1998年去世) 
1920年——艾薩克·阿西莫夫,美國科幻小說作家。(1992年去世) 
1928年——池田大作,日本作家。 
1933年——森村誠一,日本推理小說作家。 
1944年——拉那烈親王,柬埔寨前政府第一首相。 
1953年——吳孟達,香港影視演員。 
1960年——浦澤直樹,日本漫畫家。 
1969年——克莉絲蒂·杜靈頓,美國超級名模。 
1971年——竹野內豐,日本演員。 
1978年——豐口惠,日本女性聲優。
*演出作品:
**電視動畫:
|1998|愛莉絲SOS(愛莉絲)、ONE PIECE特別篇-打倒海賊強薩克(娜美)|
|1999|行世界物語(ミス・ラー(羅螺みつき))、無限的未知(市川レイコ、ラン・ラックモルデ)|
|2000|銀河冒險戰記(パルフェ・バルブレア) 、哈姆太郎(マリアちゃん)、風雲爆彈娘(櫻小路妖、蘿絲)|
|2001|銀河冒險戰記 the second stage(パルフェ・バルブレア)、通靈王(黎冥)、辣妹當家(壽蘭)|
|2002|猴王戰記五九(ミュール)、機動戰士鋼彈 SEED(米蕾莉亞・哈烏)、十二國記(禎衛)、CHOBITS(大村裕美)、hackSIGN(ミミル)|
|2003|復仇天使(蕾拉・阿修雷)、宇宙星路(町田初佳)、萬花筒之星(まなみ)、魔法少年賈修(マリル王女)、巷說百物語(八重)、琉球武士瘋雲錄、廢棄公主(艾爾菲迪麗)、星空防衛隊(アネット・ケイリー)、鋼之鍊金術師(溫莉‧洛克貝爾)、神奇寶貝超世代(メグミ、莎拉公主)|
|2004|頭文字D Fourth Stage(岩瀨恭子)、學園愛麗絲(宮園百合)、機動戰士鋼彈 SEED DESTINY(米蕾莉亞‧哈烏)、KERORO軍曹(メロディー・ハニー)、KERORO軍曹(メロディー・ハニー)、蒼穹之戰神(妙尼爾(真壁紅音))、Dear S(ルビ)、 BURN-UP SCRAMBLE(甲子園利緒)、爆裂天使(惠)、瑪莉亞的凝望(佐藤聖)、瑪莉亞的凝望~春~(佐藤聖)、MONSTER(司書)、混沌武士(百合)|
|2005|草莓100%(西野司)、玻璃假面(春日泰子)、Gun×Sword(バニー)、高機動交響曲(石田咲良)、Canvas2 ~彩虹色的圖畫~(竹內麻巳)、地獄少女(赤坂詩織)、翼之奇幻旅程(夏兒梅)、BLACK CAT(水無月沙耶)、BLOOD+(伊蓮娜)、名偵探柯南(アシスタントA)、魔兵傳奇(ギド)、まじめにふまじめかいけつゾロリ【第9話~23話】|
|2006|INNOCENT VENUS(レニー・ヴィクロー)、The Third ~蒼之瞳的少女~(火乃香)、SIMOUN(阿爾提)、蜘蛛行者(レミン)、心跳回憶 Only Love(大珠裕美)、hackRoots(塔比)、企業傭兵(拉薇(蕾貝卡))、神奇寶貝鑽石&珍珠(小光)、まじめにふまじめ かいけつゾロリ(モモ)、南の島の小さな飛行機 バーディー(アニー)、REC(吉岡)、驅魔少年(美蘭達‧諾度)|
|2007|Claymore(ソフィア、Mysel)f ; Yourself(藤村 柚希)、竹劍 (千葉 紀梨乃) 、旋風管家 (葛葉 霧香) 、彩雲國物語 (藍 十三姬) 、驅魔少年 (美蘭達‧諾度) |
|2008|假面女僕 (吹雪) 、銀魂 (妹(うらら)) 、出包王女 (娘) 、秘密 〜The Revelation〜 (デボラ・リード)、超時空要塞 Frontier (格蘭·葛蘭大尉) 、無限之住人 (百琳) 、風之少女艾蜜莉 (茱麗葉‧墨瑞→茱麗葉‧史塔) 、Mission-E (蜜莉絲・布林貝爾格) 、世界毀滅 (アヤ)|
|2009|瑪莉亞的凝望(佐藤聖) 、瑪莉亞狂熱(熊谷芙美) 、RIDEBACK(上村翔子) 、四葉遊戲(月島一葉)|

**OVA:
***ジョジョの奇妙な冒険ADVENTURE(ホル・ホースの女) 
***アーケードゲーマーふぶき(メロディー・ハニー)
***きらめき☆プロジェクト(ネネ)
***柯塞特的肖像(真瀧翔子)
***FINAL FANTASY VII ADVENT CHILDREN(イリーナ) 
***ONE PIECE 倒せ!海賊ギャンザック(ナミ) 
**劇場版動畫:
***劇場版 鋼之鍊金術師 香巴拉的征服者(ウィンリィ・ロックベル) 
***パルムの樹(ポポ)
1981年——柯克·辛里奇,美國職業籃球運動員。 
1981年——馬克西米利亞諾·羅德里格斯,阿根廷足球運動員。 
1983年——凱特·伯斯沃斯,美國演員。 
1988年——明坂聰美,日本女性聲優。 
1988年——莊尼伊雲斯,北愛爾蘭足球員,現效力曼聯。 

!去世
1952年——羅盛教,中國人民志願軍戰士。(1931年出生) 
1999年——賽巴斯提安·哈夫納,德國記者、作家。(1907年出生) 
2006年——比爾·史凱特,巴布亞紐幾內亞前總理。(1952年出生) 
2007年——白南淳,朝鮮外務相。(1929年出生) 

!節假日和習俗
瑞士:婦女掌權日。 

!參考文獻
取自"http://zh.wikipedia.org/w/index.php?title=1%E6%9C%882%E6%97%A5&variant=zh-tw"
!大事記
1521年——教宗利奧十世發布訓諭,將馬丁·路德逐出天主教會。 
1777年——在美國獨立戰爭期間,華盛頓率領的美國軍隊在普林斯頓戰役中戰勝英國軍隊。 
1839年——清朝道光帝任命林則徐為欽差大臣,主持查禁鴉片。 
1843年——魏源編著的《海國圖志》50卷出版。 
1851年——法國物理學家傅科為證實地球的自轉而設計了傅科擺,直接驗證了地球自轉。 
1868年——日本明治維新開始。 
1882年——(清光緒七年一月十四)張之洞任山西巡撫。 
1888年——美國加利福尼亞州聖荷西利克天文台91厘米的折射望遠鏡開光,成為當時世界上最大的望遠鏡。 
1914年——呼倫貝爾自治政府與俄國商人簽訂在烏奴爾溝等地採伐樹木的合同。 
1927年——漢口爆發「一·三」事件,中國政府宣布收回漢口英租界。 
1933年——日軍攻入山海關。 
1942年——哈爾濱王崗區滿洲國飛行隊起義。 
1946年——中國國民政府發布公告,承認外蒙古獨立。 
1955年——中國足球協會成立。 
1958年——英國在加勒比海上的十個殖民地合併,組成西印度群島聯邦。 
1959年——阿拉斯加州加入美國。 
1961年——美國和古巴斷交。 
1962年——教宗若望二十三世革除菲德爾·卡斯楚的教籍。 
1967年——江青、林彪等人策劃了「一月風暴」,陳丕顯、曹荻秋等原上海市委領導被批鬥,王洪文等人奪取了上海的黨政大權。 
1989年——長江葛洲壩水利樞紐工程宣告建成。 
1990年——巴拿馬總統曼紐爾·諾列加走出梵蒂岡駐巴拿馬大使館向入侵巴拿馬的美國軍隊投降。 
1993年——喬治·H·W·布希與鮑里斯·葉爾欽簽署第二個削減戰略武器條約。 
2004年——埃及閃光航空一架包機從旅遊勝地沙姆沙伊赫起飛不久在紅海上空墜毀,機上148人全部罹難,其中120多人是法國旅客。 
2004年——西八區20時35分,勇氣號成功登陸火星。 

!出生
前106年——西塞羅,古羅馬政治家。(前43年去世) 
1196年——土御門天皇,日本天皇。(1231年去世) 
1836年——坂本龍馬,日本明治維新時期的政治家和實業家。(1867年去世) 
1876年——威廉·皮克,民主德國總統。(1960年去世) 
1883年——克萊門特·艾德禮,英國前首相。(1967年去世) 
1892年——約翰·羅納德·魯埃爾·托爾金,英國作家。(1973年去世) 
1901年——吳廷琰,越南共和國第一任總統。(1963年去世) 
1905年——黃柳霜,美籍華人好萊塢電影演員。(1961年去世) 
1909年——維托·埔柱,丹麥鋼琴家。(2000年去世) 
1929年——塞吉歐·李昂尼,義大利導演。(1989年去世) 
1939年——@@蕭萬長@@,中華民國第十二任副總統。 
1944年——艾德敦,英國指揮家。 
1956年——梅爾·吉勃遜,美國演員。 
*榮譽:
**奧斯卡最佳導演獎(1995年)
**奧斯卡最佳影片獎(1995年)
**金球獎最佳導演獎(1996年)
**澳洲電影學會最佳男主角獎(1979年、1981年)
**澳洲勳章(Officer of the Order of Australia)
**藝術及文學勳章 (法國)。梅爾·吉勃遜拒絕接受以抗議法國的核彈試爆。 
**《時代雜誌》2004年度風雲人物。梅爾·吉勃遜謝拒被登在封面及專訪,封面人物改成喬治·沃克·布希總統,為布希第二次登上封面。 
*著名作品列表:
|197X| 《夏日城市》、《提姆愛我》、《衝鋒飛車隊》 |
|198X| 《加里波底》、《衝鋒飛車隊2》、《危險年代》、《Z字特攻隊》、《怒河春醒》、《叛逆巡航》、《衝鋒飛車隊3》、《致命武器》、《破曉時刻》、《致命武器2》 |
|199X| 《驚弓之鳥》、《飛離航道》、《致命武器3》、《今生有約》、《無臉的男人》、《賭俠馬華域》、《英雄本色》、《綁票通緝令》、《絕命大反擊》、《致命武器4》、《危險人物》 |
|200X| 《男人百分百》、《決戰時刻》、《百萬大飯店》、《落跑雞》、《勇士們》、《靈異象限》、《歌舞神探》、《受難記:最後的激情》、《狗仔隊》、《阿波卡獵逃》 |
1965年——蔡一智,香港歌手,原草蜢樂隊成員。 
1969年——麥可·舒馬赫,德國一級方程式賽車車手。 
1970年——胡衛東,中國籃球運動員。 
1973年——孫耀威,香港歌手。 
1974年——伊藤健太郎,日本聲優。 
1975年——麻枝准,日本美少女遊戲腳本家、作曲家。 
1977年——飯塚雅弓,日本女性聲優。 
1979年——田中理惠,日本女性聲優。 
1981年——黃伊汶,香港藝員。 
1993年——鄭羽婷,台灣女藝人。 

!去世
1641年——傑雷米亞·霍羅克斯,英國天文學家。(1618年出生) 
1795年——約書亞·威治伍德,英國陶藝家。(1730年出生) 
1931年——霞飛,法國元帥、軍事家。(1852年出生) 
2004年——閔智亭,中國道教協會會長。(1924年出生) 
2004年——馬文瑞,前中國人民政治協商會議全國委員會副主席。(1912年出生) 
2005年——辜振甫,台灣海峽交流基金會董事長。(1917年出生) 
2006年——東史郎,日本侵華戰爭老兵。(1912年出生) 

! 節假日
瑞士:婦女掌權日 

!參考文獻
取自"http://zh.wikipedia.org/w/index.php?title=1%E6%9C%883%E6%97%A5&variant=zh-tw"
!大事記
1698年——英國君主在倫敦的主要居所懷特霍爾宮在一場火災中大部分被燒毀。 
1493年——克里斯多福·哥倫布離開新世界,結束他的第一次航行。 
1884年——英國一群知識分子在倫敦成立主張採取漸進措施對資本主義實行改良的社會主義團體費邊社。 
1901年——楊儒就交收東三省事與俄羅斯談判。 
1917年——蔡元培就任北京大學校長 
1921年——沈雁冰、鄭振鐸等發起成立文學研究會。 
1932年——印度國大黨被英國當局宣布為非法。甘地入獄。 
1935年——中國工農紅軍突破烏江。 
1944年——蘇軍第一次越過波蘇邊界。 
1948年——緬甸脫離英國殖民統治宣告獨立,吳努成為首任緬甸總理。 
1951年——在韓戰第三次戰役中,中國人民志願軍和朝鮮人民軍佔領韓國首都漢城。 
1956年——中蒙蘇國際聯運鐵路正式通車。 
1960年——歐洲自由貿易聯盟成立。
*歐盟由三大組織組成:
**歐洲共同體
***其中包括關稅同盟、單一市場、共同農業政策、共同漁業政策、單一貨幣、申根條約等諸多部分
**共同外交與安全政策
***維護聯盟共同價值、基本利益、獨立和不受侵犯 
***加強聯盟的安全
***維護和平,加強符合相應國際條約規定的國際安全
***促進國際合作
***發展並加強民主與法治,以及尊重人權和基本自由 
**刑事事件之警政與司法合作
1969年——為香港供水問題,決定在西貢興建萬宜水庫。 
1981年——長江葛洲壩截流工程合龍。 
1985年——美國總統雷根實行星球大戰計劃。 
1992年——中國與烏克蘭建交。 
1992年——中亞五國協商建立共同市場。 
2004年——世界協調時4時35分,美國火星探測漫遊者計劃的第一部火星漫遊車勇氣號在火星表面成功著陸。 
2006年——以色列總理沙龍突發中風被送醫院搶救,副總理奧爾默特代行總理職權。 

!出生
629年——舒明天皇,日本第34代天皇。(641年去世) 
629年——孝德天皇,日本第36代天皇。(654年去世) 
1076年——宋哲宗,中國北宋皇帝。(1100年去世) 
1334年——阿梅迪奧六世,義大利薩伏依伯爵。(1383年去世) 
1643年——艾薩克·牛頓,英國數學家和物理學家。(1727年去世) 
1785年——雅各布·格林,德國法學家、作家,《格林童話》的作者之一。(1863年去世) 
1809年——路易斯·布萊葉,@@盲人文字系統布萊葉點字法的發明者@@。(1852年去世) 
1848年——桂太郎,日本首相。(1913年去世) 
1893年——皆川米子,前世界最年長者。(2007年去世) 
1896年——陳潭秋,中國共產黨創始人之一。(1943年去世) 
1898年——陳誠,曾任中華民國國民革命軍一級上將,歷任臺灣省政府主席,中華民國行政院院長,中華民國副總統等職。(1965年去世) 
1902年——廖繼春,台灣畫家。(1976年去世) 
1913年——馬列托亞·塔努馬菲利二世,薩摩亞國家元首。(2007年去世) 
1922年——山田風太郎,日本小說家。(2001年去世) 
1937年——徐鴻志,第九任及第十任台灣桃園縣縣長。 
1940年——高行健,中國作家,諾貝爾文學獎獲得者。 
1940年——布賴恩·戴維·約瑟夫森,英國物理學家,諾貝爾物理學獎獲得者。 
1945年——理察·施羅克,美國化學家,諾貝爾化學獎獲得者。 
1965年——那州雪繪,日本漫畫家。 
1972年——姚瑩瑩,1991年奪得新加坡小姐冠軍並代表新加坡參加環球小姐,現為香港無綫電視藝員。 
1976年——泰德·李利,美國棒球運動員。 
1977年——陳伶俐,香港電視藝人,電視節目主持。 

!去世
1752年——加布里爾·克拉默,瑞士數學家。(1704年出生) 
1913年——阿爾弗雷德·馮·施里芬,德國陸軍元帥。(1833年出生) 
1941年——亨利·柏格森,法國哲學家。(1859年出生) 
1949年——奧古斯特·普豐特,美國物理學家。(1879年出生) 
1960年——阿爾貝·加繆,法國哲學家。(1913年出生) 
1961年——埃爾溫·薛丁格,奧地利物理學家,諾貝爾物理學獎獲得者。(1887年出生) 
1965年——托馬斯·斯特爾那斯·艾略特,美裔英國作家。(1888年出生) 
1976年——魯道夫·閔可夫斯基,德裔美國天文學家。(1895年出生) 
1983年——蔡培火,台灣教育家、政治家。(1889年出生) 
1991年——@@三毛@@,台灣作家。(1943年出生) 
*主要作品:
|197X| 《撒哈拉的故事》、《雨季不再來》、《稻草人手記》、《哭泣的駱駝》、《溫柔的夜》 |
|198X| 《夢裡花落知多少》、《背影》、《萬水千山走遍》、《送你一匹馬》、《隨想》、《傾城》、《哭泣的駱駝》 |
|199X| 《滾滾紅塵》、《親愛的三毛》、《高原的百合花》 |
2006年——馬克圖姆·本·拉希德·阿勒馬克圖姆,阿拉伯聯合大公國副總統兼總理,杜拜酋長。(1943年出生) 
2007年——馬萊斯·維利歐恩,南非前總統。(1915年出生) 
2008年──楊官璘,中國象棋棋手。(1925年出生) 

!節假日和習俗
瑞士:婦女掌權日 

!參考文獻
取自"http://zh.wikipedia.org/w/index.php?title=1%E6%9C%884%E6%97%A5&variant=zh-tw"
(1975年3月20日-),是一名日本女性聲優。身高160公分。隸屬於ARTSVISION Inc.。東京都出身。前夫是同樣為聲優的森久保祥太郎。
<html>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="400" height="80"><param name="movie" value="http://pic.wretch.cc/icon/mp3player.swf?config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909540.mp3" /><param name="quality" value="high" /><embed src="http://pic.wretch.cc/icon/mp3player.swf" flashvars="config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909540.mp3" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="400" height="80"></embed></object>

</html>


作詞:kuma 
作曲:iroha 
編曲:iroha 
唄:鏡音リン 



街明かり 華やか 
エーテル麻酔 の 冷たさ 
眠れない 午前二時 
全てが 急速に変わる 

オイル切れのライター 
焼けつくような胃の中 
全てがそう嘘なら 
本当に よかったのにね 

君の首を締める夢を見た 
光の溢れる昼下がり 
君の細い喉が跳ねるのを 
泣き出しそうな眼で見ていた 

核融合炉にさ 
飛び込んでみたい と思う 
真っ青な 光 包まれて奇麗 
核融合炉にさ 
飛び込んでみたら そしたら 
すべてが許されるような気がして 

ベランダの向こう側 
階段を昇ってゆく音 
陰り出した空が 
窓ガラスに 部屋に落ちる 

拡散する夕暮れ 
泣き腫らしたような陽の赤 
融けるように少しずつ 
少しずつ死んでゆく世界 

君の首を絞める夢を見た 
春風に揺れるカーテン 
乾いて切れた唇から 
零れる言葉は泡のよう 

核融合炉にさ 
飛び込んでみたい と思う 
真っ白に 記憶 融かされて消える 
核融合炉にさ 
飛び込んでみたら また昔みたいに 
眠れるような そんな気がして 

時計の秒針や 
テレビの司会者や 
そこにいるけど 見えない誰かの 
笑い声 飽和して反響する 

アレグロ・アジテート 
耳鳴りが消えない 止まない 
アレグロ・アジテート 
耳鳴りが消えない 止まない 

誰もみんな消えてく夢を見た 
真夜中の 部屋の広さと静寂が 
胸につっかえて 
上手に 息ができなくなる 

(Shout!!) 

核融合炉にさ 
飛び込んでみたら そしたら 
きっと眠るように 消えていけるんだ 
僕のいない朝は 
今よりずっと 素晴らしくて 
全ての歯車が噛み合った 
きっと そんな世界だ 


[img[全家福1|http://farm4.static.flickr.com/3315/3608497656_1ab8454c55_m.jpg]]

[img[全家福2|http://farm3.static.flickr.com/2439/3607681191_83bf81a300_m.jpg]]
<html>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="400" height="80"><param name="movie" value="http://pic.wretch.cc/icon/mp3player.swf?config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909546.mp3" /><param name="quality" value="high" /><embed src="http://pic.wretch.cc/icon/mp3player.swf" flashvars="config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471909546.mp3" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="400" height="80"></embed></object>

</html>



作詞:悪ノP 
作曲:悪ノP 
編曲:悪ノP 
唄:鏡音リン、鏡音レン 


母さん 
この道はどんな幸せに続いているの? 
そこでは 
大好きなおやつをたくさん食べられるのかな? 

父さん 
この先に神様は待っているのですか? 
どうして 
そんな悲しい顔で僕らを見るのですか? 

暗い森の中 
本当は全てわかっていた 
このまま進めば 
もう帰ることはできないと 

ふたりぼっちで残された僕ら 
まるでヘンゼルとグレーテル 
お月様のわずかな光では 
帰る道もわからない 

僕らは歩く さ迷い歩く 
手掛かりがないわけじゃない 
ガラスの小瓶 月に照らされ 
ぴかぴかひかり 道を照らす 

されどもそれが 正しい道か 
僕らは知らず ただただ歩く 
やっと見つけた 僕らにはわかる 
ここは魔女の家 

さあ 悪い魔女をやっつけろ 
燃えるかまどに放り投げろ 
彼女がいなけりゃ僕らはきっと 
幸せになれるはず 

ねえ母さん 私をほめて 
悪い魔女は倒したのよ 
ねえ父さん 僕をほめて 
魔女の子分も倒したんだ 

それにしても 
ここはとても落ち着くところだね 
まるで昔から 
住んでいたような気がするね 

さあ「本当の」母さんと父さんに会いに行こう 
(ふじた さき、1984年10月19日-)是日本的女性聲優。所屬事務所是ARTSVISION。本名藤田 咲子(ふじた さきこ)。東京都出身。血型:AB(自稱)。川村學園女子大學 文學部歷史系畢業。現在正在日本ナレーション演技研究所學習中。(※雖然還未畢業但已經被該教學單位母公司ARTSVISION先行調用)

主要演出作品有《つよきす Cool × Sweet》的蟹沢きぬ、《ときめきメモリアル Only Love》的彌生水奈,以及電腦軟體《角色主唱系列》的虛擬歌手初音未來。

詳情請見:[[鏡音的家族人物]]
維基百科:http://zh.wikipedia.org/wiki/Wikipedia:%E9%A6%96%E9%A1%B5

無名小站:http://www.wretch.cc/

yam天空:http://www.yam.com/

初音ミク Wiki:http://www5.atwiki.jp/hmiku/

''本網站僅僅做匯整動作,一切的版權皆為原作所有''
<html>
<embed allowscriptaccess="never"  src="http://pic.wretch.cc/icon/mp3player.swf" flashvars="config=http://pic.wretch.cc/icon/mp3player-no-auto.xml&file=http://f8.wretch.yimg.com/zihzih0228/32764/1471903387.mp3" type="application/x-shockwave-flash" width="400" height="80"></embed> 
</html>

作詞:ここ狭いP 
作曲:ここ狭いP 
編曲:ここ狭いP 
唄:鏡音レン 



夕立が去っていった 
昔、この雷雨に怯えていた日を思う 
いつから変わったのか 
僕にその答えは出ず 

太陽が沈む 
蝉が鳴く 
明日が近づく 
何度も呟いては 
また恥ずかしくなる 

そう、僕もいつか 
この街を出ていく 
忘れずに置いていく 
幼い日々を 

雨上がりの空 
煙立つ 
その匂い 
懐かしくなる 

河原の木々の中 
覗く花火の音が寝る時刻を知らせる 
明日を知ることが 
気付けば怖くなっていた 

小さなこの手は 
いつの間に天井に届き 
世界を触りながら 
また汚れを知った 

眠るように生き 
過ぎ去りし喜びは痛みで気付く 
失くした時間を取り戻す方法を 
まだ探している 

太陽が昇る 
蝉が鳴く 
“明日”が始まる 
何度も振り返っては 
また愛おしくなる 

そう、僕もいつか 
この街を出ていく 
忘れずに置いていく 
幼い日々を 

繋いでいた手の温もりを思い出す 
もう戻れない 

VOCALOID 2
*''鏡音リン・レン(鈴‧連)''
**於2007年12月27日發售
**原聲提供:<<slider testVar 下田麻美  "下田麻美" "點我點我">>
**擅長的曲種:搖滾、舞蹈、電聲音樂、歌謠曲、演歌系流行曲
[img[我們是萌又腹黑的雙子|http://farm4.static.flickr.com/3403/3607660911_32997eaed2_m.jpg]]
''鏡音鈴、連(鏡音リン・レン)''是CRYPTON FUTURE MEDIA以Yamaha的__[[VOCALOID]]__語音合成引擎為基礎開發販售的虛擬歌手軟體角色主唱系列的第二作;或此軟體的印象角色(這只是軟體的象徵,不會在實際使用時出現)。於2007年12月27日發售,於2008年7月上旬發售更新版「act2」。兩個版本也是開放價格,官方估計系列軟體實際價格約15,750日圓。延續著前作初音未來的熱潮,鏡音鈴、連也是大受歡迎。

[img[http://farm4.static.flickr.com/3344/3607761733_ac05f17573_m.jpg]]
<<tabs tabsClass 咲音メイコ 咲音メイコ 咲音メイコ 始音カイト 始音カイト 始音カイト 初音ミク 初音ミク 初音ミク 鏡音リン・レン 鏡音リン・レン 鏡音リン・レン 巡音ルカ 巡音ルカ 巡音ルカ>>
*2008年1月2日
**我的壓路機(俺のロードローラーだッ!)
*2008年3月3日
**心([[ココロ]])
***其後,於2008年3月31日,由鏡音レン主唱的歌曲「心·奇跡」(ココロ・キセキ),將「心」的故事延續下去。
*2008年4月2日
**以下剋上([[下剋上]])
***這首歌被認為是鏡音鈴、連宣告將和初音未來、KAITO、MEIKO競爭歌壇地位的歌曲。 
*[[惡之系列(悪ノシリーズ)/惡之四部曲(悪ノ四部作)/惡之組曲(組曲悪ノ物語)]]:
**2008年4月6日
***惡魔般的少女([[悪ノ娘]])
****2008年9月17日有"惡魔般的少女的重編曲版"
**2008年4月29日
***惡魔般的僕人([[悪ノ召使]])
****2008年10月5日有"惡魔般的僕人的重編曲版"
**2008年5月25日
***悔恨的訊息([[リグレットメッセージ]])
****2008年12月27日有"悔恨的訊息的重編曲版"
**2008年12月27日
***再生之日([[Re_birthday]])
*2008年12月20日
**爐心融解([[炉心融解]])
*2009年4月1日
**右肩之蝶([[右肩の蝶]])

關於鏡音的作品實在太多,而我也只是才剛接觸而已,也有許多的好作品還未欣賞過,所以我只能在簡單介紹一下:[[其他作品欣賞]](--站長的私心--)
''基本資料:''
| | 鈴(リン, Rin) | 連(レン, Len) |h
|性別 | 女 | 男 |
|年齡 | 14歳 | 14歳 |
|身高 | 152cm | 156cm |
|體重 | 43kg | 47kg |
|代表物● | 橘子 | 香焦 |
|擅長的節奏 | 85~175BPM | 70~160BPM |
|擅長的音域 | F#3~C#5 | D3~C#5◎ |
●共同代表物:壓路機
◎原設定為E3~C#5,因製作人員認為E3的發聲不夠自然而提升一個小二度。

''製作過程:''
  鏡音鈴、連和初音未來一樣由KEI設計人物及繪畫。由在[[NICONICO動畫]]亦受歡迎的新人聲優下田麻美提供原聲,和初音未來同一時期錄音,下田以有活力的印象錄音,錄音時是配合當時播放的音樂唱出一些無特別意義的片假名,過程分兩天進行,共花費八小時,但最初只錄下鈴的聲音,鏡音連在當時還只是在構思階段,2007年9月中旬正式決定,同年9月28日錄音。鏡音鈴於2007年11月1日公開名字「リン」,@@名字的漢字「鈴」、「鐘」,有吸引別人注意的意思@@,姓氏「鏡音」則是「@@從鏡反射的聲音@@」和「@@自己在鏡中反映出來的異性@@」。主題上是「鏡中的世界」、「錯覺與現實交錯的世界交差點」。於11月7日,因含CV 02介紹的《DTM MAGAZINE》2007年12月號提早發售而比官方更早公開姓氏和聲優。設定上和初音未來沒有任何血緣關係,但經常被人稱為「妹妹」。在同年12月3日,發表男聲「鏡音連(鏡音レン)」,運用了男聲女配。名字的「連」是「@@連接著的存在@@」之意,鈴(Rin)和連(Len)的羅馬字亦有「LR(左右)」的意思。雖然鏡音鈴和連的姓氏一樣,但不是兄妹或姊弟,也沒有朋友的設定,而只是「@@自己在鏡中反映出來的異性@@」,這是因為CRYPTON想用戶有更大的創作空間;然而有不少人仍稱鈴和連為「雙子」、「姊弟」,官方的公認漫畫[[《廠商非正式 初音Mix》]]內的連也稱鈴為「姐姐」。鈴和連的歌聲資料庫分開,製作經費比初音未來高,但鈴和連作為一套軟體發售,價格和初音未來差不多;這是因為初音未來的熱潮令電子音樂製作的初學者突然增多,而已15,750円的價格對一般人來說較難購買(但在同類軟體中,這個價錢是較低),所以CRYPTON決定軟體在和初音未來相同的價錢下,加入更多內容。軟體最後於12月11日製作完成,12月27日發售。@@適合演唱搖滾、電聲音樂、舞蹈、歌謠曲、演歌系的流行曲@@,在性別參數(GEN、Gender Factor)的調整性能比初音未來更高;倍音的成分亦比較複雜,但因此低音時有變成trance聲線的副作用。另外,在官方試聽曲公開前已在其他地方公開鈴和連的軟體效果。

''[[同人]]設定:''
  鈴(リン,Rin):蘿莉、貧乳、活潑、(選擇性)腹黑、小惡魔心態。
  連(レン,Len):正太、有個性、活潑、小惡魔心態、家中陰勝陽衰的受害者。

[img[http://farm4.static.flickr.com/3368/3608578068_96262388d3_m.jpg]]
原本是音樂講師
後來還當過節目的現場樂隊
還有演歌歌手「五木ひろし」和「石川さゆり」的合音
幫廣告配音
或是歌手的合音
都沒沒無聞
後來也接觸不少卡通擔任聲優
範圍很廣從18禁的BL卡通到兒童卡通都有


2006年VOCALOID的日本版男性聲音「KAITO」是他浮上檯面的代表作

<<tagging 吱吱>>
!基本簡介

|姓名| 黃姿瑩 |
|綽號| 吱吱 |
|個性| 陰晴不定 |
|興趣| 宅在屋裡 |


!小小自傳

家裡成員:爸爸、媽媽和一個哥哥,是一個小家庭。
十分熱愛音樂,只要是能聽音樂或能演奏樂器就很快樂。
現在努力的練習畫畫,因為有興趣也因為之後會用到。

!學習經歷

2002 -- 大榮國小畢業
2005 -- 和美國中畢業
2008 -- 彰師附工畢業
現在 -- 世新大學 -- 數媒系

[img[http://farm4.static.flickr.com/3339/3447155997_8095fdea29_m.jpg]]