From d0aa30087a6af508f1f7b1a0ddc9468269722eb3 Mon Sep 17 00:00:00 2001 From: honeplus Date: Thu, 7 Mar 2013 15:07:36 +0000 Subject: [PATCH] =?utf8?q?#30840=20=E4=B8=8D=E8=A6=81=E3=81=AB=E3=81=AA?= =?utf8?q?=E3=81=A3=E3=81=A6=E3=81=84=E3=81=9FTemplate:Documentation?= =?utf8?q?=E7=B5=A1=E3=81=BF=E3=81=AE=E5=87=A6=E7=90=86=E3=82=82=E9=99=A4?= =?utf8?q?=E5=8E=BB,=20#27313=20=E8=A8=98=E4=BA=8B=E6=83=85=E5=A0=B1?= =?utf8?q?=E3=82=82API=E3=81=8B=E3=82=89=E5=8F=96=E5=BE=97=E3=81=97?= =?utf8?q?=E3=81=A6=E7=8F=BE=E8=B1=A1=E3=82=92=E5=9B=9E=E9=81=BF=E3=81=99?= =?utf8?q?=E3=82=8B=E3=82=88=E3=81=86=E4=BF=AE=E6=AD=A3,=20Wikitravel?= =?utf8?q?=E3=81=AE=E8=A8=AD=E5=AE=9A=E3=82=92=E9=99=A4=E5=8E=BB=E3=81=97?= =?utf8?q?=E4=BB=A3=E3=82=8F=E3=82=8A=E3=81=ABWikivoyage=E3=82=92=E8=BF=BD?= =?utf8?q?=E5=8A=A0,=20Wikipedia=E7=94=A8=E3=81=AE=E8=A6=8B=E5=87=BA?= =?utf8?q?=E3=81=97=E3=81=AE=E5=A4=89=E6=8F=9B=E3=83=91=E3=82=BF=E3=83=BC?= =?utf8?q?=E3=83=B3=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit git-svn-id: http://svn.osdn.net/svnroot/wptscs/trunk@49 7cc79d57-4d93-40a1-83d5-ec7b38613dec --- Wikipedia 翻訳支援ツール.asta | Bin 129589 -> 129295 bytes Wptscs/ConfigForm.Designer.cs | 309 +- Wptscs/ConfigForm.cs | 35 +- Wptscs/ConfigForm.ja.resx | 114 +- Wptscs/ConfigForm.resx | 3518 ++++++++------------ Wptscs/Logics/MediaWikiTranslator.cs | 6 - Wptscs/Properties/Resources.Designer.cs | 11 +- Wptscs/Properties/Resources.ja.resx | 4 - Wptscs/Properties/Resources.resx | 4 - Wptscs/Properties/Settings.Designer.cs | 7 +- Wptscs/Properties/Settings.settings | 4 +- Wptscs/Readme.txt | 19 +- Wptscs/Utilities/EndPeriodException.cs | 46 - Wptscs/Websites/MediaWiki.cs | 166 +- Wptscs/Wikipedia.xml | 122 +- Wptscs/Wikitravel.xml | 312 -- Wptscs/Wikivoyage.xml | 354 ++ Wptscs/Wiktionary.xml | 21 - Wptscs/Wptscs.csproj | 3 +- Wptscs/app.config | 4 +- WptscsTest/Data/MediaWiki/en/Template_context.xml | 80 +- WptscsTest/Data/MediaWiki/en/example.xml | 64 +- .../MediaWiki/ja/スペースシップツー.xml | 58 +- WptscsTest/Data/MediaWiki/result/config.xml | Bin 64622 -> 57800 bytes WptscsTest/Data/config.xml | 61 - WptscsTest/Models/MockFactory.cs | 2 +- WptscsTest/Websites/MediaWikiPageTest.cs | 25 +- WptscsTest/Websites/MediaWikiTest.cs | 117 +- 28 files changed, 1991 insertions(+), 3475 deletions(-) delete mode 100644 Wptscs/Utilities/EndPeriodException.cs delete mode 100644 Wptscs/Wikitravel.xml create mode 100644 Wptscs/Wikivoyage.xml diff --git a/Wikipedia 翻訳支援ツール.asta b/Wikipedia 翻訳支援ツール.asta index b0b386d223d67dbf751c8b48afd9275e7deef5ca..8a3cc955a770011b2ccc910f0e60eb249cf74f1a 100644 GIT binary patch literal 129295 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≠lG0cqY{l~LtM|%?!Huj>WFZc`y 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

_ZwerYIU500Png91)% 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 literal 129589 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

D)2?LHEZMDA!otA_vpr$E9Ez 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\%IYhcZ?Wwpv+XA%azFJv6-U}W^y6H%r`z`$HDH< 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

&3gUoC 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 diff --git a/Wptscs/ConfigForm.Designer.cs b/Wptscs/ConfigForm.Designer.cs index a9898f7..6aa4696 100644 --- a/Wptscs/ConfigForm.Designer.cs +++ b/Wptscs/ConfigForm.Designer.cs @@ -65,17 +65,13 @@ this.labelLangFormat = new System.Windows.Forms.Label(); this.textBoxLinkInterwikiFormat = new System.Windows.Forms.TextBox(); this.labelLinkInterwikiFormat = new System.Windows.Forms.Label(); - this.textBoxDocumentationTemplateDefaultPage = new System.Windows.Forms.TextBox(); - this.labelDocumentationTemplateDefaultPage = new System.Windows.Forms.Label(); - this.textBoxDocumentationTemplate = new System.Windows.Forms.TextBox(); - this.labelDocumentationTemplate = new System.Windows.Forms.Label(); this.textBoxFileNamespace = new System.Windows.Forms.TextBox(); this.textBoxCategoryNamespace = new System.Windows.Forms.TextBox(); this.labelCategoryNamespace = new System.Windows.Forms.Label(); this.textBoxTemplateNamespace = new System.Windows.Forms.TextBox(); this.labelTemplateNamespace = new System.Windows.Forms.Label(); - this.textBoxExportPath = new System.Windows.Forms.TextBox(); - this.labelExportPath = new System.Windows.Forms.Label(); + this.textBoxContentApi = new System.Windows.Forms.TextBox(); + this.labelContentApi = new System.Windows.Forms.Label(); this.textBoxMetaApi = new System.Windows.Forms.TextBox(); this.labelMetaApi = new System.Windows.Forms.Label(); this.textBoxLocation = new System.Windows.Forms.TextBox(); @@ -100,7 +96,7 @@ this.checkBoxIgnoreError = new System.Windows.Forms.CheckBox(); this.labelRefererNote = new System.Windows.Forms.Label(); this.labelUserAgentNote = new System.Windows.Forms.Label(); - this.labelChaceNote = new System.Windows.Forms.Label(); + this.labelCacheNote = new System.Windows.Forms.Label(); this.textBoxCacheExpire = new System.Windows.Forms.TextBox(); this.textBoxReferer = new System.Windows.Forms.TextBox(); this.labelReferer = new System.Windows.Forms.Label(); @@ -128,9 +124,6 @@ // buttonOk // resources.ApplyResources(this.buttonOk, "buttonOk"); - this.errorProvider.SetError(this.buttonOk, resources.GetString("buttonOk.Error")); - this.errorProvider.SetIconAlignment(this.buttonOk, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("buttonOk.IconAlignment")))); - this.errorProvider.SetIconPadding(this.buttonOk, ((int)(resources.GetObject("buttonOk.IconPadding")))); this.buttonOk.Name = "buttonOk"; this.toolTip.SetToolTip(this.buttonOk, resources.GetString("buttonOk.ToolTip")); this.buttonOk.UseVisualStyleBackColor = true; @@ -141,9 +134,6 @@ resources.ApplyResources(this.buttonCancel, "buttonCancel"); this.buttonCancel.CausesValidation = false; this.buttonCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel; - this.errorProvider.SetError(this.buttonCancel, resources.GetString("buttonCancel.Error")); - this.errorProvider.SetIconAlignment(this.buttonCancel, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("buttonCancel.IconAlignment")))); - this.errorProvider.SetIconPadding(this.buttonCancel, ((int)(resources.GetObject("buttonCancel.IconPadding")))); this.buttonCancel.Name = "buttonCancel"; this.toolTip.SetToolTip(this.buttonCancel, resources.GetString("buttonCancel.ToolTip")); this.buttonCancel.UseVisualStyleBackColor = true; @@ -155,33 +145,21 @@ this.tabControl.Controls.Add(this.tabPageHeadings); this.tabControl.Controls.Add(this.tabPageServer); this.tabControl.Controls.Add(this.tabPageApplication); - this.errorProvider.SetError(this.tabControl, resources.GetString("tabControl.Error")); - this.errorProvider.SetIconAlignment(this.tabControl, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("tabControl.IconAlignment")))); - this.errorProvider.SetIconPadding(this.tabControl, ((int)(resources.GetObject("tabControl.IconPadding")))); this.tabControl.Name = "tabControl"; this.tabControl.SelectedIndex = 0; - this.toolTip.SetToolTip(this.tabControl, resources.GetString("tabControl.ToolTip")); // // tabPageItems // - resources.ApplyResources(this.tabPageItems, "tabPageItems"); this.tabPageItems.Controls.Add(this.labelItemsNote); this.tabPageItems.Controls.Add(this.dataGridViewItems); - this.errorProvider.SetError(this.tabPageItems, resources.GetString("tabPageItems.Error")); - this.errorProvider.SetIconAlignment(this.tabPageItems, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("tabPageItems.IconAlignment")))); - this.errorProvider.SetIconPadding(this.tabPageItems, ((int)(resources.GetObject("tabPageItems.IconPadding")))); + resources.ApplyResources(this.tabPageItems, "tabPageItems"); this.tabPageItems.Name = "tabPageItems"; - this.toolTip.SetToolTip(this.tabPageItems, resources.GetString("tabPageItems.ToolTip")); this.tabPageItems.UseVisualStyleBackColor = true; // // labelItemsNote // resources.ApplyResources(this.labelItemsNote, "labelItemsNote"); - this.errorProvider.SetError(this.labelItemsNote, resources.GetString("labelItemsNote.Error")); - this.errorProvider.SetIconAlignment(this.labelItemsNote, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelItemsNote.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelItemsNote, ((int)(resources.GetObject("labelItemsNote.IconPadding")))); this.labelItemsNote.Name = "labelItemsNote"; - this.toolTip.SetToolTip(this.labelItemsNote, resources.GetString("labelItemsNote.ToolTip")); // // dataGridViewItems // @@ -195,12 +173,8 @@ this.ColumnToCode, this.ColumnToTitle, this.ColumnTimestamp}); - this.errorProvider.SetError(this.dataGridViewItems, resources.GetString("dataGridViewItems.Error")); - this.errorProvider.SetIconAlignment(this.dataGridViewItems, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("dataGridViewItems.IconAlignment")))); - this.errorProvider.SetIconPadding(this.dataGridViewItems, ((int)(resources.GetObject("dataGridViewItems.IconPadding")))); this.dataGridViewItems.Name = "dataGridViewItems"; this.dataGridViewItems.RowTemplate.Height = 21; - this.toolTip.SetToolTip(this.dataGridViewItems, resources.GetString("dataGridViewItems.ToolTip")); this.dataGridViewItems.CellValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridViewItems_CellValidated); this.dataGridViewItems.CellValidating += new System.Windows.Forms.DataGridViewCellValidatingEventHandler(this.DataGridViewItems_CellValidating); this.dataGridViewItems.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridViewItems_CellValueChanged); @@ -253,13 +227,9 @@ // // tabPageHeadings // - resources.ApplyResources(this.tabPageHeadings, "tabPageHeadings"); this.tabPageHeadings.Controls.Add(this.dataGridViewHeading); - this.errorProvider.SetError(this.tabPageHeadings, resources.GetString("tabPageHeadings.Error")); - this.errorProvider.SetIconAlignment(this.tabPageHeadings, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("tabPageHeadings.IconAlignment")))); - this.errorProvider.SetIconPadding(this.tabPageHeadings, ((int)(resources.GetObject("tabPageHeadings.IconPadding")))); + resources.ApplyResources(this.tabPageHeadings, "tabPageHeadings"); this.tabPageHeadings.Name = "tabPageHeadings"; - this.toolTip.SetToolTip(this.tabPageHeadings, resources.GetString("tabPageHeadings.ToolTip")); this.tabPageHeadings.UseVisualStyleBackColor = true; // // dataGridViewHeading @@ -276,35 +246,24 @@ dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText; dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True; this.dataGridViewHeading.DefaultCellStyle = dataGridViewCellStyle1; - this.errorProvider.SetError(this.dataGridViewHeading, resources.GetString("dataGridViewHeading.Error")); - this.errorProvider.SetIconAlignment(this.dataGridViewHeading, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("dataGridViewHeading.IconAlignment")))); - this.errorProvider.SetIconPadding(this.dataGridViewHeading, ((int)(resources.GetObject("dataGridViewHeading.IconPadding")))); this.dataGridViewHeading.Name = "dataGridViewHeading"; this.dataGridViewHeading.RowTemplate.Height = 21; - this.toolTip.SetToolTip(this.dataGridViewHeading, resources.GetString("dataGridViewHeading.ToolTip")); // // tabPageServer // - resources.ApplyResources(this.tabPageServer, "tabPageServer"); this.tabPageServer.Controls.Add(this.buttonLanguageRemove); this.tabPageServer.Controls.Add(this.buttonLunguageAdd); this.tabPageServer.Controls.Add(this.groupBoxLanguage); this.tabPageServer.Controls.Add(this.groupBoxServer); this.tabPageServer.Controls.Add(this.comboBoxLanguage); this.tabPageServer.Controls.Add(this.labelLanguage); - this.errorProvider.SetError(this.tabPageServer, resources.GetString("tabPageServer.Error")); - this.errorProvider.SetIconAlignment(this.tabPageServer, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("tabPageServer.IconAlignment")))); - this.errorProvider.SetIconPadding(this.tabPageServer, ((int)(resources.GetObject("tabPageServer.IconPadding")))); + resources.ApplyResources(this.tabPageServer, "tabPageServer"); this.tabPageServer.Name = "tabPageServer"; - this.toolTip.SetToolTip(this.tabPageServer, resources.GetString("tabPageServer.ToolTip")); this.tabPageServer.UseVisualStyleBackColor = true; // // buttonLanguageRemove // resources.ApplyResources(this.buttonLanguageRemove, "buttonLanguageRemove"); - this.errorProvider.SetError(this.buttonLanguageRemove, resources.GetString("buttonLanguageRemove.Error")); - this.errorProvider.SetIconAlignment(this.buttonLanguageRemove, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("buttonLanguageRemove.IconAlignment")))); - this.errorProvider.SetIconPadding(this.buttonLanguageRemove, ((int)(resources.GetObject("buttonLanguageRemove.IconPadding")))); this.buttonLanguageRemove.Name = "buttonLanguageRemove"; this.toolTip.SetToolTip(this.buttonLanguageRemove, resources.GetString("buttonLanguageRemove.ToolTip")); this.buttonLanguageRemove.UseVisualStyleBackColor = true; @@ -313,9 +272,6 @@ // buttonLunguageAdd // resources.ApplyResources(this.buttonLunguageAdd, "buttonLunguageAdd"); - this.errorProvider.SetError(this.buttonLunguageAdd, resources.GetString("buttonLunguageAdd.Error")); - this.errorProvider.SetIconAlignment(this.buttonLunguageAdd, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("buttonLunguageAdd.IconAlignment")))); - this.errorProvider.SetIconPadding(this.buttonLunguageAdd, ((int)(resources.GetObject("buttonLunguageAdd.IconPadding")))); this.buttonLunguageAdd.Name = "buttonLunguageAdd"; this.toolTip.SetToolTip(this.buttonLunguageAdd, resources.GetString("buttonLunguageAdd.ToolTip")); this.buttonLunguageAdd.UseVisualStyleBackColor = true; @@ -327,20 +283,13 @@ this.groupBoxLanguage.Controls.Add(this.groupBoxLanguageName); this.groupBoxLanguage.Controls.Add(this.textBoxBracket); this.groupBoxLanguage.Controls.Add(this.labelBracket); - this.errorProvider.SetError(this.groupBoxLanguage, resources.GetString("groupBoxLanguage.Error")); - this.errorProvider.SetIconAlignment(this.groupBoxLanguage, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("groupBoxLanguage.IconAlignment")))); - this.errorProvider.SetIconPadding(this.groupBoxLanguage, ((int)(resources.GetObject("groupBoxLanguage.IconPadding")))); this.groupBoxLanguage.Name = "groupBoxLanguage"; this.groupBoxLanguage.TabStop = false; - this.toolTip.SetToolTip(this.groupBoxLanguage, resources.GetString("groupBoxLanguage.ToolTip")); // // groupBoxLanguageName // resources.ApplyResources(this.groupBoxLanguageName, "groupBoxLanguageName"); this.groupBoxLanguageName.Controls.Add(this.dataGridViewLanguageName); - this.errorProvider.SetError(this.groupBoxLanguageName, resources.GetString("groupBoxLanguageName.Error")); - this.errorProvider.SetIconAlignment(this.groupBoxLanguageName, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("groupBoxLanguageName.IconAlignment")))); - this.errorProvider.SetIconPadding(this.groupBoxLanguageName, ((int)(resources.GetObject("groupBoxLanguageName.IconPadding")))); this.groupBoxLanguageName.Name = "groupBoxLanguageName"; this.groupBoxLanguageName.TabStop = false; this.toolTip.SetToolTip(this.groupBoxLanguageName, resources.GetString("groupBoxLanguageName.ToolTip")); @@ -354,12 +303,8 @@ this.ColumnCode, this.ColumnName, this.ColumnShortName}); - this.errorProvider.SetError(this.dataGridViewLanguageName, resources.GetString("dataGridViewLanguageName.Error")); - this.errorProvider.SetIconAlignment(this.dataGridViewLanguageName, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("dataGridViewLanguageName.IconAlignment")))); - this.errorProvider.SetIconPadding(this.dataGridViewLanguageName, ((int)(resources.GetObject("dataGridViewLanguageName.IconPadding")))); this.dataGridViewLanguageName.Name = "dataGridViewLanguageName"; this.dataGridViewLanguageName.RowTemplate.Height = 21; - this.toolTip.SetToolTip(this.dataGridViewLanguageName, resources.GetString("dataGridViewLanguageName.ToolTip")); this.dataGridViewLanguageName.RowValidated += new System.Windows.Forms.DataGridViewCellEventHandler(this.ResetErrorText_RowValidated); this.dataGridViewLanguageName.RowValidating += new System.Windows.Forms.DataGridViewCellCancelEventHandler(this.DataGridViewLanguageName_RowValidating); this.dataGridViewLanguageName.Validating += new System.ComponentModel.CancelEventHandler(this.DataGridViewLanguageName_Validating); @@ -386,9 +331,6 @@ // textBoxBracket // resources.ApplyResources(this.textBoxBracket, "textBoxBracket"); - this.errorProvider.SetError(this.textBoxBracket, resources.GetString("textBoxBracket.Error")); - this.errorProvider.SetIconAlignment(this.textBoxBracket, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxBracket.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxBracket, ((int)(resources.GetObject("textBoxBracket.IconPadding")))); this.textBoxBracket.Name = "textBoxBracket"; this.toolTip.SetToolTip(this.textBoxBracket, resources.GetString("textBoxBracket.ToolTip")); this.textBoxBracket.Validating += new System.ComponentModel.CancelEventHandler(this.TextBoxBracket_Validating); @@ -397,9 +339,6 @@ // labelBracket // resources.ApplyResources(this.labelBracket, "labelBracket"); - this.errorProvider.SetError(this.labelBracket, resources.GetString("labelBracket.Error")); - this.errorProvider.SetIconAlignment(this.labelBracket, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelBracket.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelBracket, ((int)(resources.GetObject("labelBracket.IconPadding")))); this.labelBracket.Name = "labelBracket"; this.toolTip.SetToolTip(this.labelBracket, resources.GetString("labelBracket.ToolTip")); // @@ -413,53 +352,36 @@ this.groupBoxServer.Controls.Add(this.labelLangFormat); this.groupBoxServer.Controls.Add(this.textBoxLinkInterwikiFormat); this.groupBoxServer.Controls.Add(this.labelLinkInterwikiFormat); - this.groupBoxServer.Controls.Add(this.textBoxDocumentationTemplateDefaultPage); - this.groupBoxServer.Controls.Add(this.labelDocumentationTemplateDefaultPage); - this.groupBoxServer.Controls.Add(this.textBoxDocumentationTemplate); - this.groupBoxServer.Controls.Add(this.labelDocumentationTemplate); this.groupBoxServer.Controls.Add(this.textBoxFileNamespace); this.groupBoxServer.Controls.Add(this.textBoxCategoryNamespace); this.groupBoxServer.Controls.Add(this.labelCategoryNamespace); this.groupBoxServer.Controls.Add(this.textBoxTemplateNamespace); this.groupBoxServer.Controls.Add(this.labelTemplateNamespace); - this.groupBoxServer.Controls.Add(this.textBoxExportPath); - this.groupBoxServer.Controls.Add(this.labelExportPath); + this.groupBoxServer.Controls.Add(this.textBoxContentApi); + this.groupBoxServer.Controls.Add(this.labelContentApi); this.groupBoxServer.Controls.Add(this.textBoxMetaApi); this.groupBoxServer.Controls.Add(this.labelMetaApi); this.groupBoxServer.Controls.Add(this.textBoxLocation); this.groupBoxServer.Controls.Add(this.labelLocation); this.groupBoxServer.Controls.Add(this.labelFileNamespace); - this.errorProvider.SetError(this.groupBoxServer, resources.GetString("groupBoxServer.Error")); - this.errorProvider.SetIconAlignment(this.groupBoxServer, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("groupBoxServer.IconAlignment")))); - this.errorProvider.SetIconPadding(this.groupBoxServer, ((int)(resources.GetObject("groupBoxServer.IconPadding")))); this.groupBoxServer.Name = "groupBoxServer"; this.groupBoxServer.TabStop = false; - this.toolTip.SetToolTip(this.groupBoxServer, resources.GetString("groupBoxServer.ToolTip")); // // textBoxInterlanguageApi // resources.ApplyResources(this.textBoxInterlanguageApi, "textBoxInterlanguageApi"); - this.errorProvider.SetError(this.textBoxInterlanguageApi, resources.GetString("textBoxInterlanguageApi.Error")); - this.errorProvider.SetIconAlignment(this.textBoxInterlanguageApi, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxInterlanguageApi.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxInterlanguageApi, ((int)(resources.GetObject("textBoxInterlanguageApi.IconPadding")))); this.textBoxInterlanguageApi.Name = "textBoxInterlanguageApi"; this.toolTip.SetToolTip(this.textBoxInterlanguageApi, resources.GetString("textBoxInterlanguageApi.ToolTip")); // // labelInterlanguageApi // resources.ApplyResources(this.labelInterlanguageApi, "labelInterlanguageApi"); - this.errorProvider.SetError(this.labelInterlanguageApi, resources.GetString("labelInterlanguageApi.Error")); - this.errorProvider.SetIconAlignment(this.labelInterlanguageApi, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelInterlanguageApi.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelInterlanguageApi, ((int)(resources.GetObject("labelInterlanguageApi.IconPadding")))); this.labelInterlanguageApi.Name = "labelInterlanguageApi"; this.toolTip.SetToolTip(this.labelInterlanguageApi, resources.GetString("labelInterlanguageApi.ToolTip")); // // checkBoxHasLanguagePage // resources.ApplyResources(this.checkBoxHasLanguagePage, "checkBoxHasLanguagePage"); - this.errorProvider.SetError(this.checkBoxHasLanguagePage, resources.GetString("checkBoxHasLanguagePage.Error")); - this.errorProvider.SetIconAlignment(this.checkBoxHasLanguagePage, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("checkBoxHasLanguagePage.IconAlignment")))); - this.errorProvider.SetIconPadding(this.checkBoxHasLanguagePage, ((int)(resources.GetObject("checkBoxHasLanguagePage.IconPadding")))); this.checkBoxHasLanguagePage.Name = "checkBoxHasLanguagePage"; this.toolTip.SetToolTip(this.checkBoxHasLanguagePage, resources.GetString("checkBoxHasLanguagePage.ToolTip")); this.checkBoxHasLanguagePage.UseVisualStyleBackColor = true; @@ -467,82 +389,30 @@ // textBoxLangFormat // resources.ApplyResources(this.textBoxLangFormat, "textBoxLangFormat"); - this.errorProvider.SetError(this.textBoxLangFormat, resources.GetString("textBoxLangFormat.Error")); - this.errorProvider.SetIconAlignment(this.textBoxLangFormat, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxLangFormat.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxLangFormat, ((int)(resources.GetObject("textBoxLangFormat.IconPadding")))); this.textBoxLangFormat.Name = "textBoxLangFormat"; this.toolTip.SetToolTip(this.textBoxLangFormat, resources.GetString("textBoxLangFormat.ToolTip")); // // labelLangFormat // resources.ApplyResources(this.labelLangFormat, "labelLangFormat"); - this.errorProvider.SetError(this.labelLangFormat, resources.GetString("labelLangFormat.Error")); - this.errorProvider.SetIconAlignment(this.labelLangFormat, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelLangFormat.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelLangFormat, ((int)(resources.GetObject("labelLangFormat.IconPadding")))); this.labelLangFormat.Name = "labelLangFormat"; this.toolTip.SetToolTip(this.labelLangFormat, resources.GetString("labelLangFormat.ToolTip")); // // textBoxLinkInterwikiFormat // resources.ApplyResources(this.textBoxLinkInterwikiFormat, "textBoxLinkInterwikiFormat"); - this.errorProvider.SetError(this.textBoxLinkInterwikiFormat, resources.GetString("textBoxLinkInterwikiFormat.Error")); - this.errorProvider.SetIconAlignment(this.textBoxLinkInterwikiFormat, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxLinkInterwikiFormat.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxLinkInterwikiFormat, ((int)(resources.GetObject("textBoxLinkInterwikiFormat.IconPadding")))); this.textBoxLinkInterwikiFormat.Name = "textBoxLinkInterwikiFormat"; this.toolTip.SetToolTip(this.textBoxLinkInterwikiFormat, resources.GetString("textBoxLinkInterwikiFormat.ToolTip")); // // labelLinkInterwikiFormat // resources.ApplyResources(this.labelLinkInterwikiFormat, "labelLinkInterwikiFormat"); - this.errorProvider.SetError(this.labelLinkInterwikiFormat, resources.GetString("labelLinkInterwikiFormat.Error")); - this.errorProvider.SetIconAlignment(this.labelLinkInterwikiFormat, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelLinkInterwikiFormat.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelLinkInterwikiFormat, ((int)(resources.GetObject("labelLinkInterwikiFormat.IconPadding")))); this.labelLinkInterwikiFormat.Name = "labelLinkInterwikiFormat"; this.toolTip.SetToolTip(this.labelLinkInterwikiFormat, resources.GetString("labelLinkInterwikiFormat.ToolTip")); // - // textBoxDocumentationTemplateDefaultPage - // - resources.ApplyResources(this.textBoxDocumentationTemplateDefaultPage, "textBoxDocumentationTemplateDefaultPage"); - this.errorProvider.SetError(this.textBoxDocumentationTemplateDefaultPage, resources.GetString("textBoxDocumentationTemplateDefaultPage.Error")); - this.errorProvider.SetIconAlignment(this.textBoxDocumentationTemplateDefaultPage, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxDocumentationTemplateDefaultPage.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxDocumentationTemplateDefaultPage, ((int)(resources.GetObject("textBoxDocumentationTemplateDefaultPage.IconPadding")))); - this.textBoxDocumentationTemplateDefaultPage.Name = "textBoxDocumentationTemplateDefaultPage"; - this.toolTip.SetToolTip(this.textBoxDocumentationTemplateDefaultPage, resources.GetString("textBoxDocumentationTemplateDefaultPage.ToolTip")); - // - // labelDocumentationTemplateDefaultPage - // - resources.ApplyResources(this.labelDocumentationTemplateDefaultPage, "labelDocumentationTemplateDefaultPage"); - this.errorProvider.SetError(this.labelDocumentationTemplateDefaultPage, resources.GetString("labelDocumentationTemplateDefaultPage.Error")); - this.errorProvider.SetIconAlignment(this.labelDocumentationTemplateDefaultPage, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelDocumentationTemplateDefaultPage.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelDocumentationTemplateDefaultPage, ((int)(resources.GetObject("labelDocumentationTemplateDefaultPage.IconPadding")))); - this.labelDocumentationTemplateDefaultPage.Name = "labelDocumentationTemplateDefaultPage"; - this.toolTip.SetToolTip(this.labelDocumentationTemplateDefaultPage, resources.GetString("labelDocumentationTemplateDefaultPage.ToolTip")); - // - // textBoxDocumentationTemplate - // - this.textBoxDocumentationTemplate.AcceptsReturn = true; - resources.ApplyResources(this.textBoxDocumentationTemplate, "textBoxDocumentationTemplate"); - this.errorProvider.SetError(this.textBoxDocumentationTemplate, resources.GetString("textBoxDocumentationTemplate.Error")); - this.errorProvider.SetIconAlignment(this.textBoxDocumentationTemplate, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxDocumentationTemplate.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxDocumentationTemplate, ((int)(resources.GetObject("textBoxDocumentationTemplate.IconPadding")))); - this.textBoxDocumentationTemplate.Name = "textBoxDocumentationTemplate"; - this.toolTip.SetToolTip(this.textBoxDocumentationTemplate, resources.GetString("textBoxDocumentationTemplate.ToolTip")); - // - // labelDocumentationTemplate - // - resources.ApplyResources(this.labelDocumentationTemplate, "labelDocumentationTemplate"); - this.errorProvider.SetError(this.labelDocumentationTemplate, resources.GetString("labelDocumentationTemplate.Error")); - this.errorProvider.SetIconAlignment(this.labelDocumentationTemplate, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelDocumentationTemplate.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelDocumentationTemplate, ((int)(resources.GetObject("labelDocumentationTemplate.IconPadding")))); - this.labelDocumentationTemplate.Name = "labelDocumentationTemplate"; - this.toolTip.SetToolTip(this.labelDocumentationTemplate, resources.GetString("labelDocumentationTemplate.ToolTip")); - // // textBoxFileNamespace // resources.ApplyResources(this.textBoxFileNamespace, "textBoxFileNamespace"); - this.errorProvider.SetError(this.textBoxFileNamespace, resources.GetString("textBoxFileNamespace.Error")); - this.errorProvider.SetIconAlignment(this.textBoxFileNamespace, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxFileNamespace.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxFileNamespace, ((int)(resources.GetObject("textBoxFileNamespace.IconPadding")))); this.textBoxFileNamespace.Name = "textBoxFileNamespace"; this.toolTip.SetToolTip(this.textBoxFileNamespace, resources.GetString("textBoxFileNamespace.ToolTip")); this.textBoxFileNamespace.Validating += new System.ComponentModel.CancelEventHandler(this.TextBoxNamespace_Validating); @@ -551,9 +421,6 @@ // textBoxCategoryNamespace // resources.ApplyResources(this.textBoxCategoryNamespace, "textBoxCategoryNamespace"); - this.errorProvider.SetError(this.textBoxCategoryNamespace, resources.GetString("textBoxCategoryNamespace.Error")); - this.errorProvider.SetIconAlignment(this.textBoxCategoryNamespace, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxCategoryNamespace.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxCategoryNamespace, ((int)(resources.GetObject("textBoxCategoryNamespace.IconPadding")))); this.textBoxCategoryNamespace.Name = "textBoxCategoryNamespace"; this.toolTip.SetToolTip(this.textBoxCategoryNamespace, resources.GetString("textBoxCategoryNamespace.ToolTip")); this.textBoxCategoryNamespace.Validating += new System.ComponentModel.CancelEventHandler(this.TextBoxNamespace_Validating); @@ -562,18 +429,12 @@ // labelCategoryNamespace // resources.ApplyResources(this.labelCategoryNamespace, "labelCategoryNamespace"); - this.errorProvider.SetError(this.labelCategoryNamespace, resources.GetString("labelCategoryNamespace.Error")); - this.errorProvider.SetIconAlignment(this.labelCategoryNamespace, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelCategoryNamespace.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelCategoryNamespace, ((int)(resources.GetObject("labelCategoryNamespace.IconPadding")))); this.labelCategoryNamespace.Name = "labelCategoryNamespace"; this.toolTip.SetToolTip(this.labelCategoryNamespace, resources.GetString("labelCategoryNamespace.ToolTip")); // // textBoxTemplateNamespace // resources.ApplyResources(this.textBoxTemplateNamespace, "textBoxTemplateNamespace"); - this.errorProvider.SetError(this.textBoxTemplateNamespace, resources.GetString("textBoxTemplateNamespace.Error")); - this.errorProvider.SetIconAlignment(this.textBoxTemplateNamespace, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxTemplateNamespace.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxTemplateNamespace, ((int)(resources.GetObject("textBoxTemplateNamespace.IconPadding")))); this.textBoxTemplateNamespace.Name = "textBoxTemplateNamespace"; this.toolTip.SetToolTip(this.textBoxTemplateNamespace, resources.GetString("textBoxTemplateNamespace.ToolTip")); this.textBoxTemplateNamespace.Validating += new System.ComponentModel.CancelEventHandler(this.TextBoxNamespace_Validating); @@ -582,83 +443,56 @@ // labelTemplateNamespace // resources.ApplyResources(this.labelTemplateNamespace, "labelTemplateNamespace"); - this.errorProvider.SetError(this.labelTemplateNamespace, resources.GetString("labelTemplateNamespace.Error")); - this.errorProvider.SetIconAlignment(this.labelTemplateNamespace, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelTemplateNamespace.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelTemplateNamespace, ((int)(resources.GetObject("labelTemplateNamespace.IconPadding")))); this.labelTemplateNamespace.Name = "labelTemplateNamespace"; this.toolTip.SetToolTip(this.labelTemplateNamespace, resources.GetString("labelTemplateNamespace.ToolTip")); // - // textBoxExportPath + // textBoxContentApi // - resources.ApplyResources(this.textBoxExportPath, "textBoxExportPath"); - this.errorProvider.SetError(this.textBoxExportPath, resources.GetString("textBoxExportPath.Error")); - this.errorProvider.SetIconAlignment(this.textBoxExportPath, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxExportPath.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxExportPath, ((int)(resources.GetObject("textBoxExportPath.IconPadding")))); - this.textBoxExportPath.Name = "textBoxExportPath"; - this.toolTip.SetToolTip(this.textBoxExportPath, resources.GetString("textBoxExportPath.ToolTip")); + resources.ApplyResources(this.textBoxContentApi, "textBoxContentApi"); + this.textBoxContentApi.Name = "textBoxContentApi"; + this.toolTip.SetToolTip(this.textBoxContentApi, resources.GetString("textBoxContentApi.ToolTip")); // - // labelExportPath + // labelContentApi // - resources.ApplyResources(this.labelExportPath, "labelExportPath"); - this.errorProvider.SetError(this.labelExportPath, resources.GetString("labelExportPath.Error")); - this.errorProvider.SetIconAlignment(this.labelExportPath, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelExportPath.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelExportPath, ((int)(resources.GetObject("labelExportPath.IconPadding")))); - this.labelExportPath.Name = "labelExportPath"; - this.toolTip.SetToolTip(this.labelExportPath, resources.GetString("labelExportPath.ToolTip")); + resources.ApplyResources(this.labelContentApi, "labelContentApi"); + this.labelContentApi.Name = "labelContentApi"; + this.toolTip.SetToolTip(this.labelContentApi, resources.GetString("labelContentApi.ToolTip")); // // textBoxMetaApi // resources.ApplyResources(this.textBoxMetaApi, "textBoxMetaApi"); - this.errorProvider.SetError(this.textBoxMetaApi, resources.GetString("textBoxMetaApi.Error")); - this.errorProvider.SetIconAlignment(this.textBoxMetaApi, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxMetaApi.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxMetaApi, ((int)(resources.GetObject("textBoxMetaApi.IconPadding")))); this.textBoxMetaApi.Name = "textBoxMetaApi"; this.toolTip.SetToolTip(this.textBoxMetaApi, resources.GetString("textBoxMetaApi.ToolTip")); // // labelMetaApi // resources.ApplyResources(this.labelMetaApi, "labelMetaApi"); - this.errorProvider.SetError(this.labelMetaApi, resources.GetString("labelMetaApi.Error")); - this.errorProvider.SetIconAlignment(this.labelMetaApi, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelMetaApi.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelMetaApi, ((int)(resources.GetObject("labelMetaApi.IconPadding")))); this.labelMetaApi.Name = "labelMetaApi"; this.toolTip.SetToolTip(this.labelMetaApi, resources.GetString("labelMetaApi.ToolTip")); // // textBoxLocation // resources.ApplyResources(this.textBoxLocation, "textBoxLocation"); - this.errorProvider.SetError(this.textBoxLocation, resources.GetString("textBoxLocation.Error")); - this.errorProvider.SetIconAlignment(this.textBoxLocation, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxLocation.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxLocation, ((int)(resources.GetObject("textBoxLocation.IconPadding")))); this.textBoxLocation.Name = "textBoxLocation"; this.toolTip.SetToolTip(this.textBoxLocation, resources.GetString("textBoxLocation.ToolTip")); // // labelLocation // resources.ApplyResources(this.labelLocation, "labelLocation"); - this.errorProvider.SetError(this.labelLocation, resources.GetString("labelLocation.Error")); - this.errorProvider.SetIconAlignment(this.labelLocation, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelLocation.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelLocation, ((int)(resources.GetObject("labelLocation.IconPadding")))); this.labelLocation.Name = "labelLocation"; this.toolTip.SetToolTip(this.labelLocation, resources.GetString("labelLocation.ToolTip")); // // labelFileNamespace // resources.ApplyResources(this.labelFileNamespace, "labelFileNamespace"); - this.errorProvider.SetError(this.labelFileNamespace, resources.GetString("labelFileNamespace.Error")); - this.errorProvider.SetIconAlignment(this.labelFileNamespace, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelFileNamespace.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelFileNamespace, ((int)(resources.GetObject("labelFileNamespace.IconPadding")))); this.labelFileNamespace.Name = "labelFileNamespace"; this.toolTip.SetToolTip(this.labelFileNamespace, resources.GetString("labelFileNamespace.ToolTip")); // // comboBoxLanguage // - resources.ApplyResources(this.comboBoxLanguage, "comboBoxLanguage"); this.comboBoxLanguage.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; - this.errorProvider.SetError(this.comboBoxLanguage, resources.GetString("comboBoxLanguage.Error")); this.comboBoxLanguage.FormattingEnabled = true; - this.errorProvider.SetIconAlignment(this.comboBoxLanguage, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("comboBoxLanguage.IconAlignment")))); - this.errorProvider.SetIconPadding(this.comboBoxLanguage, ((int)(resources.GetObject("comboBoxLanguage.IconPadding")))); + resources.ApplyResources(this.comboBoxLanguage, "comboBoxLanguage"); this.comboBoxLanguage.Name = "comboBoxLanguage"; this.comboBoxLanguage.Sorted = true; this.toolTip.SetToolTip(this.comboBoxLanguage, resources.GetString("comboBoxLanguage.ToolTip")); @@ -667,20 +501,14 @@ // labelLanguage // resources.ApplyResources(this.labelLanguage, "labelLanguage"); - this.errorProvider.SetError(this.labelLanguage, resources.GetString("labelLanguage.Error")); - this.errorProvider.SetIconAlignment(this.labelLanguage, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelLanguage.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelLanguage, ((int)(resources.GetObject("labelLanguage.IconPadding")))); this.labelLanguage.Name = "labelLanguage"; this.toolTip.SetToolTip(this.labelLanguage, resources.GetString("labelLanguage.ToolTip")); // // tabPageApplication // - resources.ApplyResources(this.tabPageApplication, "tabPageApplication"); this.tabPageApplication.Controls.Add(this.groupBoxInformation); this.tabPageApplication.Controls.Add(this.groupBoxApplicationConfig); - this.errorProvider.SetError(this.tabPageApplication, resources.GetString("tabPageApplication.Error")); - this.errorProvider.SetIconAlignment(this.tabPageApplication, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("tabPageApplication.IconAlignment")))); - this.errorProvider.SetIconPadding(this.tabPageApplication, ((int)(resources.GetObject("tabPageApplication.IconPadding")))); + resources.ApplyResources(this.tabPageApplication, "tabPageApplication"); this.tabPageApplication.Name = "tabPageApplication"; this.toolTip.SetToolTip(this.tabPageApplication, resources.GetString("tabPageApplication.ToolTip")); this.tabPageApplication.UseVisualStyleBackColor = true; @@ -692,50 +520,30 @@ this.groupBoxInformation.Controls.Add(this.linkLabelWebsite); this.groupBoxInformation.Controls.Add(this.labelCopyright); this.groupBoxInformation.Controls.Add(this.labelApplicationName); - this.errorProvider.SetError(this.groupBoxInformation, resources.GetString("groupBoxInformation.Error")); - this.errorProvider.SetIconAlignment(this.groupBoxInformation, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("groupBoxInformation.IconAlignment")))); - this.errorProvider.SetIconPadding(this.groupBoxInformation, ((int)(resources.GetObject("groupBoxInformation.IconPadding")))); this.groupBoxInformation.Name = "groupBoxInformation"; this.groupBoxInformation.TabStop = false; - this.toolTip.SetToolTip(this.groupBoxInformation, resources.GetString("groupBoxInformation.ToolTip")); // // labelWebsite // resources.ApplyResources(this.labelWebsite, "labelWebsite"); - this.errorProvider.SetError(this.labelWebsite, resources.GetString("labelWebsite.Error")); - this.errorProvider.SetIconAlignment(this.labelWebsite, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelWebsite.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelWebsite, ((int)(resources.GetObject("labelWebsite.IconPadding")))); this.labelWebsite.Name = "labelWebsite"; - this.toolTip.SetToolTip(this.labelWebsite, resources.GetString("labelWebsite.ToolTip")); // // linkLabelWebsite // resources.ApplyResources(this.linkLabelWebsite, "linkLabelWebsite"); - this.errorProvider.SetError(this.linkLabelWebsite, resources.GetString("linkLabelWebsite.Error")); - this.errorProvider.SetIconAlignment(this.linkLabelWebsite, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("linkLabelWebsite.IconAlignment")))); - this.errorProvider.SetIconPadding(this.linkLabelWebsite, ((int)(resources.GetObject("linkLabelWebsite.IconPadding")))); this.linkLabelWebsite.Name = "linkLabelWebsite"; this.linkLabelWebsite.TabStop = true; - this.toolTip.SetToolTip(this.linkLabelWebsite, resources.GetString("linkLabelWebsite.ToolTip")); this.linkLabelWebsite.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.LinkLabelWebsite_LinkClicked); // // labelCopyright // resources.ApplyResources(this.labelCopyright, "labelCopyright"); - this.errorProvider.SetError(this.labelCopyright, resources.GetString("labelCopyright.Error")); - this.errorProvider.SetIconAlignment(this.labelCopyright, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelCopyright.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelCopyright, ((int)(resources.GetObject("labelCopyright.IconPadding")))); this.labelCopyright.Name = "labelCopyright"; - this.toolTip.SetToolTip(this.labelCopyright, resources.GetString("labelCopyright.ToolTip")); // // labelApplicationName // resources.ApplyResources(this.labelApplicationName, "labelApplicationName"); - this.errorProvider.SetError(this.labelApplicationName, resources.GetString("labelApplicationName.Error")); - this.errorProvider.SetIconAlignment(this.labelApplicationName, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelApplicationName.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelApplicationName, ((int)(resources.GetObject("labelApplicationName.IconPadding")))); this.labelApplicationName.Name = "labelApplicationName"; - this.toolTip.SetToolTip(this.labelApplicationName, resources.GetString("labelApplicationName.ToolTip")); // // groupBoxApplicationConfig // @@ -750,35 +558,24 @@ this.groupBoxApplicationConfig.Controls.Add(this.checkBoxIgnoreError); this.groupBoxApplicationConfig.Controls.Add(this.labelRefererNote); this.groupBoxApplicationConfig.Controls.Add(this.labelUserAgentNote); - this.groupBoxApplicationConfig.Controls.Add(this.labelChaceNote); + this.groupBoxApplicationConfig.Controls.Add(this.labelCacheNote); this.groupBoxApplicationConfig.Controls.Add(this.textBoxCacheExpire); this.groupBoxApplicationConfig.Controls.Add(this.textBoxReferer); this.groupBoxApplicationConfig.Controls.Add(this.labelReferer); this.groupBoxApplicationConfig.Controls.Add(this.labelCacheExpire); this.groupBoxApplicationConfig.Controls.Add(this.textBoxUserAgent); this.groupBoxApplicationConfig.Controls.Add(this.labelUserAgent); - this.errorProvider.SetError(this.groupBoxApplicationConfig, resources.GetString("groupBoxApplicationConfig.Error")); - this.errorProvider.SetIconAlignment(this.groupBoxApplicationConfig, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("groupBoxApplicationConfig.IconAlignment")))); - this.errorProvider.SetIconPadding(this.groupBoxApplicationConfig, ((int)(resources.GetObject("groupBoxApplicationConfig.IconPadding")))); this.groupBoxApplicationConfig.Name = "groupBoxApplicationConfig"; this.groupBoxApplicationConfig.TabStop = false; - this.toolTip.SetToolTip(this.groupBoxApplicationConfig, resources.GetString("groupBoxApplicationConfig.ToolTip")); // // labelApplicationConfigNote // resources.ApplyResources(this.labelApplicationConfigNote, "labelApplicationConfigNote"); - this.errorProvider.SetError(this.labelApplicationConfigNote, resources.GetString("labelApplicationConfigNote.Error")); - this.errorProvider.SetIconAlignment(this.labelApplicationConfigNote, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelApplicationConfigNote.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelApplicationConfigNote, ((int)(resources.GetObject("labelApplicationConfigNote.IconPadding")))); this.labelApplicationConfigNote.Name = "labelApplicationConfigNote"; - this.toolTip.SetToolTip(this.labelApplicationConfigNote, resources.GetString("labelApplicationConfigNote.ToolTip")); // // textBoxConnectRetryTime // resources.ApplyResources(this.textBoxConnectRetryTime, "textBoxConnectRetryTime"); - this.errorProvider.SetError(this.textBoxConnectRetryTime, resources.GetString("textBoxConnectRetryTime.Error")); - this.errorProvider.SetIconAlignment(this.textBoxConnectRetryTime, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxConnectRetryTime.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxConnectRetryTime, ((int)(resources.GetObject("textBoxConnectRetryTime.IconPadding")))); this.textBoxConnectRetryTime.Name = "textBoxConnectRetryTime"; this.toolTip.SetToolTip(this.textBoxConnectRetryTime, resources.GetString("textBoxConnectRetryTime.ToolTip")); this.textBoxConnectRetryTime.Validating += new System.ComponentModel.CancelEventHandler(this.TextBoxConnectRetryTime_Validating); @@ -787,27 +584,17 @@ // labelConnectRetryTimeNote // resources.ApplyResources(this.labelConnectRetryTimeNote, "labelConnectRetryTimeNote"); - this.errorProvider.SetError(this.labelConnectRetryTimeNote, resources.GetString("labelConnectRetryTimeNote.Error")); - this.errorProvider.SetIconAlignment(this.labelConnectRetryTimeNote, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelConnectRetryTimeNote.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelConnectRetryTimeNote, ((int)(resources.GetObject("labelConnectRetryTimeNote.IconPadding")))); this.labelConnectRetryTimeNote.Name = "labelConnectRetryTimeNote"; - this.toolTip.SetToolTip(this.labelConnectRetryTimeNote, resources.GetString("labelConnectRetryTimeNote.ToolTip")); // // labelConnectRetryTime // resources.ApplyResources(this.labelConnectRetryTime, "labelConnectRetryTime"); - this.errorProvider.SetError(this.labelConnectRetryTime, resources.GetString("labelConnectRetryTime.Error")); - this.errorProvider.SetIconAlignment(this.labelConnectRetryTime, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelConnectRetryTime.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelConnectRetryTime, ((int)(resources.GetObject("labelConnectRetryTime.IconPadding")))); this.labelConnectRetryTime.Name = "labelConnectRetryTime"; this.toolTip.SetToolTip(this.labelConnectRetryTime, resources.GetString("labelConnectRetryTime.ToolTip")); // // textBoxMaxConnectRetries // resources.ApplyResources(this.textBoxMaxConnectRetries, "textBoxMaxConnectRetries"); - this.errorProvider.SetError(this.textBoxMaxConnectRetries, resources.GetString("textBoxMaxConnectRetries.Error")); - this.errorProvider.SetIconAlignment(this.textBoxMaxConnectRetries, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxMaxConnectRetries.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxMaxConnectRetries, ((int)(resources.GetObject("textBoxMaxConnectRetries.IconPadding")))); this.textBoxMaxConnectRetries.Name = "textBoxMaxConnectRetries"; this.toolTip.SetToolTip(this.textBoxMaxConnectRetries, resources.GetString("textBoxMaxConnectRetries.ToolTip")); this.textBoxMaxConnectRetries.Validating += new System.ComponentModel.CancelEventHandler(this.TextBoxMaxConnectRetries_Validating); @@ -816,27 +603,17 @@ // labelMaxConnectRetriesNote // resources.ApplyResources(this.labelMaxConnectRetriesNote, "labelMaxConnectRetriesNote"); - this.errorProvider.SetError(this.labelMaxConnectRetriesNote, resources.GetString("labelMaxConnectRetriesNote.Error")); - this.errorProvider.SetIconAlignment(this.labelMaxConnectRetriesNote, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelMaxConnectRetriesNote.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelMaxConnectRetriesNote, ((int)(resources.GetObject("labelMaxConnectRetriesNote.IconPadding")))); this.labelMaxConnectRetriesNote.Name = "labelMaxConnectRetriesNote"; - this.toolTip.SetToolTip(this.labelMaxConnectRetriesNote, resources.GetString("labelMaxConnectRetriesNote.ToolTip")); // // labelMaxConnectRetries // resources.ApplyResources(this.labelMaxConnectRetries, "labelMaxConnectRetries"); - this.errorProvider.SetError(this.labelMaxConnectRetries, resources.GetString("labelMaxConnectRetries.Error")); - this.errorProvider.SetIconAlignment(this.labelMaxConnectRetries, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelMaxConnectRetries.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelMaxConnectRetries, ((int)(resources.GetObject("labelMaxConnectRetries.IconPadding")))); this.labelMaxConnectRetries.Name = "labelMaxConnectRetries"; this.toolTip.SetToolTip(this.labelMaxConnectRetries, resources.GetString("labelMaxConnectRetries.ToolTip")); // // checkBoxIgnoreError // resources.ApplyResources(this.checkBoxIgnoreError, "checkBoxIgnoreError"); - this.errorProvider.SetError(this.checkBoxIgnoreError, resources.GetString("checkBoxIgnoreError.Error")); - this.errorProvider.SetIconAlignment(this.checkBoxIgnoreError, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("checkBoxIgnoreError.IconAlignment")))); - this.errorProvider.SetIconPadding(this.checkBoxIgnoreError, ((int)(resources.GetObject("checkBoxIgnoreError.IconPadding")))); this.checkBoxIgnoreError.Name = "checkBoxIgnoreError"; this.toolTip.SetToolTip(this.checkBoxIgnoreError, resources.GetString("checkBoxIgnoreError.ToolTip")); this.checkBoxIgnoreError.UseVisualStyleBackColor = true; @@ -844,36 +621,21 @@ // labelRefererNote // resources.ApplyResources(this.labelRefererNote, "labelRefererNote"); - this.errorProvider.SetError(this.labelRefererNote, resources.GetString("labelRefererNote.Error")); - this.errorProvider.SetIconAlignment(this.labelRefererNote, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelRefererNote.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelRefererNote, ((int)(resources.GetObject("labelRefererNote.IconPadding")))); this.labelRefererNote.Name = "labelRefererNote"; - this.toolTip.SetToolTip(this.labelRefererNote, resources.GetString("labelRefererNote.ToolTip")); // // labelUserAgentNote // resources.ApplyResources(this.labelUserAgentNote, "labelUserAgentNote"); - this.errorProvider.SetError(this.labelUserAgentNote, resources.GetString("labelUserAgentNote.Error")); - this.errorProvider.SetIconAlignment(this.labelUserAgentNote, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelUserAgentNote.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelUserAgentNote, ((int)(resources.GetObject("labelUserAgentNote.IconPadding")))); this.labelUserAgentNote.Name = "labelUserAgentNote"; - this.toolTip.SetToolTip(this.labelUserAgentNote, resources.GetString("labelUserAgentNote.ToolTip")); // - // labelChaceNote + // labelCacheNote // - resources.ApplyResources(this.labelChaceNote, "labelChaceNote"); - this.errorProvider.SetError(this.labelChaceNote, resources.GetString("labelChaceNote.Error")); - this.errorProvider.SetIconAlignment(this.labelChaceNote, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelChaceNote.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelChaceNote, ((int)(resources.GetObject("labelChaceNote.IconPadding")))); - this.labelChaceNote.Name = "labelChaceNote"; - this.toolTip.SetToolTip(this.labelChaceNote, resources.GetString("labelChaceNote.ToolTip")); + resources.ApplyResources(this.labelCacheNote, "labelCacheNote"); + this.labelCacheNote.Name = "labelCacheNote"; // // textBoxCacheExpire // resources.ApplyResources(this.textBoxCacheExpire, "textBoxCacheExpire"); - this.errorProvider.SetError(this.textBoxCacheExpire, resources.GetString("textBoxCacheExpire.Error")); - this.errorProvider.SetIconAlignment(this.textBoxCacheExpire, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxCacheExpire.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxCacheExpire, ((int)(resources.GetObject("textBoxCacheExpire.IconPadding")))); this.textBoxCacheExpire.Name = "textBoxCacheExpire"; this.toolTip.SetToolTip(this.textBoxCacheExpire, resources.GetString("textBoxCacheExpire.ToolTip")); this.textBoxCacheExpire.Validating += new System.ComponentModel.CancelEventHandler(this.TextBoxCacheExpire_Validating); @@ -882,45 +644,30 @@ // textBoxReferer // resources.ApplyResources(this.textBoxReferer, "textBoxReferer"); - this.errorProvider.SetError(this.textBoxReferer, resources.GetString("textBoxReferer.Error")); - this.errorProvider.SetIconAlignment(this.textBoxReferer, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxReferer.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxReferer, ((int)(resources.GetObject("textBoxReferer.IconPadding")))); this.textBoxReferer.Name = "textBoxReferer"; this.toolTip.SetToolTip(this.textBoxReferer, resources.GetString("textBoxReferer.ToolTip")); // // labelReferer // resources.ApplyResources(this.labelReferer, "labelReferer"); - this.errorProvider.SetError(this.labelReferer, resources.GetString("labelReferer.Error")); - this.errorProvider.SetIconAlignment(this.labelReferer, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelReferer.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelReferer, ((int)(resources.GetObject("labelReferer.IconPadding")))); this.labelReferer.Name = "labelReferer"; this.toolTip.SetToolTip(this.labelReferer, resources.GetString("labelReferer.ToolTip")); // // labelCacheExpire // resources.ApplyResources(this.labelCacheExpire, "labelCacheExpire"); - this.errorProvider.SetError(this.labelCacheExpire, resources.GetString("labelCacheExpire.Error")); - this.errorProvider.SetIconAlignment(this.labelCacheExpire, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelCacheExpire.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelCacheExpire, ((int)(resources.GetObject("labelCacheExpire.IconPadding")))); this.labelCacheExpire.Name = "labelCacheExpire"; this.toolTip.SetToolTip(this.labelCacheExpire, resources.GetString("labelCacheExpire.ToolTip")); // // textBoxUserAgent // resources.ApplyResources(this.textBoxUserAgent, "textBoxUserAgent"); - this.errorProvider.SetError(this.textBoxUserAgent, resources.GetString("textBoxUserAgent.Error")); - this.errorProvider.SetIconAlignment(this.textBoxUserAgent, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("textBoxUserAgent.IconAlignment")))); - this.errorProvider.SetIconPadding(this.textBoxUserAgent, ((int)(resources.GetObject("textBoxUserAgent.IconPadding")))); this.textBoxUserAgent.Name = "textBoxUserAgent"; this.toolTip.SetToolTip(this.textBoxUserAgent, resources.GetString("textBoxUserAgent.ToolTip")); // // labelUserAgent // resources.ApplyResources(this.labelUserAgent, "labelUserAgent"); - this.errorProvider.SetError(this.labelUserAgent, resources.GetString("labelUserAgent.Error")); - this.errorProvider.SetIconAlignment(this.labelUserAgent, ((System.Windows.Forms.ErrorIconAlignment)(resources.GetObject("labelUserAgent.IconAlignment")))); - this.errorProvider.SetIconPadding(this.labelUserAgent, ((int)(resources.GetObject("labelUserAgent.IconPadding")))); this.labelUserAgent.Name = "labelUserAgent"; this.toolTip.SetToolTip(this.labelUserAgent, resources.GetString("labelUserAgent.ToolTip")); // @@ -928,7 +675,6 @@ // this.errorProvider.BlinkStyle = System.Windows.Forms.ErrorBlinkStyle.NeverBlink; this.errorProvider.ContainerControl = this; - resources.ApplyResources(this.errorProvider, "errorProvider"); // // toolTip // @@ -949,7 +695,6 @@ this.Name = "ConfigForm"; this.ShowIcon = false; this.ShowInTaskbar = false; - this.toolTip.SetToolTip(this, resources.GetString("$this.ToolTip")); this.Load += new System.EventHandler(this.ConfigForm_Load); this.tabControl.ResumeLayout(false); this.tabPageItems.ResumeLayout(false); @@ -1002,14 +747,14 @@ private System.Windows.Forms.Label labelWebsite; private System.Windows.Forms.Label labelRefererNote; private System.Windows.Forms.Label labelUserAgentNote; - private System.Windows.Forms.Label labelChaceNote; + private System.Windows.Forms.Label labelCacheNote; private System.Windows.Forms.GroupBox groupBoxServer; private System.Windows.Forms.TextBox textBoxLocation; private System.Windows.Forms.Label labelLocation; private System.Windows.Forms.TextBox textBoxMetaApi; private System.Windows.Forms.Label labelMetaApi; - private System.Windows.Forms.TextBox textBoxExportPath; - private System.Windows.Forms.Label labelExportPath; + private System.Windows.Forms.TextBox textBoxContentApi; + private System.Windows.Forms.Label labelContentApi; private System.Windows.Forms.Label labelTemplateNamespace; private System.Windows.Forms.TextBox textBoxTemplateNamespace; private System.Windows.Forms.Label labelFileNamespace; @@ -1022,10 +767,6 @@ private System.Windows.Forms.GroupBox groupBoxLanguageName; private System.Windows.Forms.DataGridView dataGridViewLanguageName; private System.Windows.Forms.CheckBox checkBoxIgnoreError; - private System.Windows.Forms.Label labelDocumentationTemplate; - private System.Windows.Forms.TextBox textBoxDocumentationTemplateDefaultPage; - private System.Windows.Forms.Label labelDocumentationTemplateDefaultPage; - private System.Windows.Forms.TextBox textBoxDocumentationTemplate; private System.Windows.Forms.ErrorProvider errorProvider; private System.Windows.Forms.ToolTip toolTip; private System.Windows.Forms.Label labelLinkInterwikiFormat; diff --git a/Wptscs/ConfigForm.cs b/Wptscs/ConfigForm.cs index 1c9f8ff..af159ad 100644 --- a/Wptscs/ConfigForm.cs +++ b/Wptscs/ConfigForm.cs @@ -762,22 +762,12 @@ namespace Honememo.Wptscs this.LoadCurrentValue((Website)site); // MediaWikiクラス分の読み込み - this.textBoxExportPath.Text = StringUtils.DefaultString(site.ExportPath); + this.textBoxContentApi.Text = StringUtils.DefaultString(site.ContentApi); this.textBoxMetaApi.Text = StringUtils.DefaultString(site.MetaApi); this.textBoxInterlanguageApi.Text = StringUtils.DefaultString(site.InterlanguageApi); this.textBoxTemplateNamespace.Text = site.TemplateNamespace.ToString(); this.textBoxCategoryNamespace.Text = site.CategoryNamespace.ToString(); this.textBoxFileNamespace.Text = site.FileNamespace.ToString(); - - // Template:Documentionは改行区切りのマルチテキストとして扱う - StringBuilder b = new StringBuilder(); - foreach (string s in site.DocumentationTemplates) - { - b.Append(s).Append(Environment.NewLine); - } - - this.textBoxDocumentationTemplate.Text = b.ToString(); - this.textBoxDocumentationTemplateDefaultPage.Text = StringUtils.DefaultString(site.DocumentationTemplateDefaultPage); this.textBoxLinkInterwikiFormat.Text = StringUtils.DefaultString(site.LinkInterwikiFormat); this.textBoxLangFormat.Text = StringUtils.DefaultString(site.LangFormat); this.checkBoxHasLanguagePage.Checked = site.HasLanguagePage; @@ -842,10 +832,10 @@ namespace Honememo.Wptscs // ※ もうちょっと綺麗に書きたかったが、うまい手が思いつかなかったので力技 // MediaWikiクラス側で行わないのは、場合によっては意図的に初期値と同じ値を設定すること // もありえるから(初期値が変わる可能性がある場合など)。 - string str = StringUtils.DefaultString(this.textBoxExportPath.Text).Trim(); - if (str != site.ExportPath) + string str = StringUtils.DefaultString(this.textBoxContentApi.Text).Trim(); + if (str != site.ContentApi) { - site.ExportPath = str; + site.ContentApi = str; } str = StringUtils.DefaultString(this.textBoxMetaApi.Text).Trim(); @@ -860,23 +850,6 @@ namespace Honememo.Wptscs site.InterlanguageApi = str; } - // Template:Documentionの設定は行ごとに格納 - // ※ この値は初期値を持たないパラメータ - site.DocumentationTemplates.Clear(); - foreach (string s in StringUtils.DefaultString(this.textBoxDocumentationTemplate.Text).Split('\n')) - { - if (!string.IsNullOrWhiteSpace(s)) - { - site.DocumentationTemplates.Add(s.Trim()); - } - } - - str = StringUtils.DefaultString(this.textBoxDocumentationTemplateDefaultPage.Text).Trim(); - if (str != site.DocumentationTemplateDefaultPage) - { - site.DocumentationTemplateDefaultPage = str; - } - str = StringUtils.DefaultString(this.textBoxLinkInterwikiFormat.Text).Trim(); if (str != site.LinkInterwikiFormat) { diff --git a/Wptscs/ConfigForm.ja.resx b/Wptscs/ConfigForm.ja.resx index 8f04bda..2d8c254 100644 --- a/Wptscs/ConfigForm.ja.resx +++ b/Wptscs/ConfigForm.ja.resx @@ -119,16 +119,16 @@ - 335, 504 + 335, 429 キャンセル - 624, 536 + 624, 461 - 9, 417 + 6, 370 426, 12 @@ -155,19 +155,16 @@ 取得日時 - 580, 408 + 580, 361 - 592, 480 + 592, 385 記事の置き換え - - 580, 425 - - 592, 480 + 592, 385 見出しの置き換え @@ -210,10 +207,10 @@ 51 - 260, 342 + 260, 267 - 272, 366 + 272, 291 各言語での言語名 @@ -225,7 +222,7 @@ 括弧のスタイル: - 286, 415 + 286, 340 言語の設定 @@ -257,7 +254,7 @@ http://www.mediawiki.org/wiki/API:Properties/ja#langlinks_.2F_ll http://www.mediawiki.org/wiki/API:Properties/ja#langlinks_.2F_ll - 8, 391 + 8, 314 134, 16 @@ -266,13 +263,13 @@ http://www.mediawiki.org/wiki/API:Properties/ja#langlinks_.2F_ll 言語名のページが存在 - 132, 365 + 132, 288 136, 19 - 6, 368 + 6, 291 117, 12 @@ -281,13 +278,13 @@ http://www.mediawiki.org/wiki/API:Properties/ja#langlinks_.2F_ll 言語指定用フォーマット: - 115, 337 + 115, 260 153, 19 - 6, 340 + 6, 263 105, 12 @@ -295,36 +292,6 @@ http://www.mediawiki.org/wiki/API:Properties/ja#langlinks_.2F_ll 仮リンク用フォーマット: - - 115, 309 - - - 90, 19 - - - 6, 312 - - - 93, 12 - - - デフォルトページ名: - - - 115, 262 - - - 160, 39 - - - 6, 265 - - - 97, 12 - - - 解説用テンプレート: - 143, 229 @@ -352,17 +319,28 @@ http://www.mediawiki.org/wiki/API:Properties/ja#langlinks_.2F_ll テンプレート名前空間のID: - - 81, 66 + + 81, 64 + + + サーバーから記事をXMLでダウンロードするためのパスを入力します。 +記事名を代入する部分を $1 としてください。 + +どのようなパスかについては、下記URL等を参照してください。 +http://www.mediawiki.org/wiki/API:Properties/ja#revisions_.2F_rv - - 6, 51 + + 138, 12 - - 142, 12 + + 記事情報取得用のAPIパス: - - XMLエクスポート用のAPIパス: + + サーバーから記事をXMLでダウンロードするためのパスを入力します。 +記事名を代入する部分を $1 としてください。 + +どのようなパスかについては、下記URL等を参照してください。 +http://www.mediawiki.org/wiki/API:Properties/ja#revisions_.2F_rv 81, 109 @@ -401,7 +379,7 @@ http://www.mediawiki.org/wiki/API:Meta/ja#siteinfo_.2F_si ファイル名前空間のID: - 288, 415 + 288, 340 MediaWikiの設定 @@ -416,7 +394,7 @@ http://www.mediawiki.org/wiki/API:Meta/ja#siteinfo_.2F_si 言語: - 592, 460 + 592, 385 サーバー/言語 @@ -427,8 +405,11 @@ http://www.mediawiki.org/wiki/API:Meta/ja#siteinfo_.2F_si 配布元: + + 6, 251 + - 580, 182 + 580, 128 バージョン情報 @@ -487,13 +468,13 @@ http://www.mediawiki.org/wiki/API:Meta/ja#siteinfo_.2F_si (空欄:アプリケーション独自のUA) - + 183, 18 - + 49, 12 - + (0:無効) @@ -505,25 +486,28 @@ http://www.mediawiki.org/wiki/API:Meta/ja#siteinfo_.2F_si キャッシュ有効期限(日): + + 580, 239 + アプリケーションの設定 - 592, 480 + 592, 385 その他 - 600, 486 + 600, 411 - 640, 575 + 640, 500 設定 - 215, 504 + 215, 429 \ No newline at end of file diff --git a/Wptscs/ConfigForm.resx b/Wptscs/ConfigForm.resx index 21cb1e1..7d97bf0 100644 --- a/Wptscs/ConfigForm.resx +++ b/Wptscs/ConfigForm.resx @@ -117,2843 +117,2057 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 187, 19 + + + Bottom - - + + + 215, 409 - - labelItemsNote + + 75, 23 - - False - - - 15 - - - Language name + + 2 - - 81, 100 + + OK - - groupBoxServer + + 148, 17 + + + 設定を入力された内容で更新し、この画面を閉じます。 - - 21 + + buttonOk - - Meta API: + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + $this - - Application + + 2 - - + + Bottom - - - Disable + + 335, 409 - - 80 + + 75, 23 - - 0 + + 3 - - 14 + + Cancel - - MiddleRight + + 設定を更新せず、この画面を閉じます。 - - labelUserAgent + + buttonCancel - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - + + $this 1 - - groupBoxLanguage - - - + + Top, Bottom, Left, Right - - groupBoxApplicationConfig + + Bottom, Left - - 180, 11 + + True - - 6, 249 + + 9, 348 - - 255 + + 281, 12 - + 1 - - 2 - - - Top, Bottom, Left - - - groupBoxInformation - - - groupBoxServer - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 83, 16 + + * Don't remove many rows by one operation. (max 50) - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + labelItemsNote System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - labelTemplateNamespace + + tabPageItems - + 0 - - + + Top, Bottom, Left, Right - + True + + + Source - - 7 - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 75, 43 + + 記事の置き換えパターンの翻訳元言語です。 - - 3 + + 66 - - 252, 12 + + True + + + Title - - Bottom + + 記事の置き換えパターンの翻訳元記事名です。 - - Top, Bottom, Left, Right + + 66 - - 9 + + True + + + Redirect - - 上記APIで取得した名前空間のうち、ファイルに該当する番号を入力します。 + + 翻訳元記事名がリダイレクトの場合の、リダイレクト先の記事名です。 - - 1 + + 80 - - groupBoxServer + + True + + + - - 187, 19 + + 21 - - buttonCancel + + True + + + Destination - - 56, 23 + + 記事の置き換えパターンの翻訳先言語です。 - - 0 + + 66 - - 設定を入力された内容で更新し、この画面を閉じます。 + + True + + + Title - - 言語名のページが存在する場合、言語名を出力する際に内部リンクの形で出力します。 + + 記事の置き換えパターンの翻訳先記事名です。 +言語間リンクが無い場合は空欄です。 - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 66 - - 6, 18 + + True + + + Timestamp - - errorProvider + + 置き換えパターンを言語間リンクから取得した場合の取得日時です。 +取得日時から一定期間キャッシュとしてこの置き換えを使用します。 +空欄の場合、無期限で使用します。 - - その言語での [[Template:Documentation]] の [[/doc]] に相当する、デフォルトの解説ページ名を入力します。 + + 78 - - 76, 12 + + 6, 6 - - dataGridViewLanguageName + + 580, 337 - + 0 - - groupBoxApplicationConfig + + dataGridViewItems - - + + System.Windows.Forms.DataGridView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - tabPageHeadings + + tabPageItems - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 1 - - MiddleRight + + 4, 22 - - MiddleRight + + 3, 3, 3, 3 - - 12 + + 592, 365 - - User Agent として使用する文字列を入力します。 -空欄の場合、このツール独自のUAを使用します。 + + 0 - - サーバーから名前空間やウィキ間リンクといったメタ情報をXMLでダウンロードするためのパスを入力します。 - -どのようなパスかについては、下記URL等を参照してください。 -http://www.mediawiki.org/wiki/API:Meta#siteinfo_.2F_si + + Item table - - Language + + 記事の置き換えパターンです。 +言語間リンクを使用せず、固定で置き換えを行う場合は、こちらに登録してください。 +また一度取得した言語間リンクは自動的に登録され、一定期間キャッシュとして使用されます。 +再取得したい場合は、該当行を削除してください。 - - + + tabPageItems - - 12 + + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + tabControl + + + 0 + + + Top, Bottom, Left, Right + + + 6, 6 + + + 580, 353 + + + 0 dataGridViewHeading - - 15 + + System.Windows.Forms.DataGridView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - + + tabPageHeadings - - tabControl + + 0 - - True + + 4, 22 - - labelReferer + + 3, 3, 3, 3 - - + + 592, 365 - + 1 - - groupBoxServer + + Heading table - - 0 + + 見出しの置き換えパターンです。 +見出しを置き換える場合、こちらに各言語での語句を登録してください。 +複数の語句が同じ用途で使用されている場合、改行で区切って登録してください。 - - 17 + + tabPageHeadings - - 0 + + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - MiddleRight + + tabControl - - 0 + + 1 - - System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + True - + + False + + NoControl - - groupBoxLanguageName + + 233, 11 - - 63, 12 + + 56, 23 - - 15 + + 3 - - MiddleRight + + Remove - - 81, 13 + + 選択されている言語を削除します。 + + + buttonLanguageRemove - - MiddleRight + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - MiddleRight + + tabPageServer - - 表記先の言語での名称です。MediaWikiの記事名が望ましいです。 + + 0 - - 2000 + + 180, 11 - - 187, 19 + + 47, 23 - - 272, 371 + + 2 - - MiddleRight + + Add... - - MiddleRight + + 言語を追加するダイアログを表示します。 - - 0 + + buttonLunguageAdd - - Title + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - Abbr + + tabPageServer - - groupBoxServer + + 1 - - 6, 6 + + Top, Bottom, Left, Right - - + + Top, Bottom, Left, Right + + + Top, Bottom, Left, Right + + + True + + + Code 表記先の言語です。 - - groupBoxServer - - - File namespace's ID: + + 56 - + True + + + Name (Article) - - True + + 表記先の言語での名称です。MediaWikiの記事名が望ましいです。 - - Disable + + 96 - - 66 + + True + + + Abbr - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 表記先の言語での略称です。特に不要な場合空欄です。 - - MiddleRight + + 54 - - ColumnArrow + + 6, 18 - - + + 260, 247 - - Category namespace's ID: + + 0 - - ConfigForm + + dataGridViewLanguageName - - 0 + + System.Windows.Forms.DataGridView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 3 + + groupBoxLanguageName - + 0 - - 62, 12 - - - + + 8, 43 - - textBoxLocation + + 272, 271 - - 3 + + 2 - - 255 + + Language name - - 2083 + + その言語が、各言語でなんと表記されるかを登録します。 +(例 日本語→英語では Japanese と表記) - - True + + groupBoxLanguageName - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 各言語での括弧書きのスタイルを入力します。 -括弧の中身部分を $1 としてください。 - - - - - - groupBoxApplicationConfig + + groupBoxLanguage - - 56 + + 0 - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 89, 18 - - + + 10 - - 8, 157 + + 100, 19 - - 上記APIで取得した名前空間のうち、ファイルに該当する番号を入力します。 + + 1 - - 7 + + 各言語での括弧書きのスタイルを入力します。 +括弧の中身部分を $1 としてください。 - - 19 + + textBoxBracket - - 11 + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 0 + + groupBoxLanguage - - 61, 12 + + 1 - - textBoxExportPath + + True 6, 21 - - textBoxTemplateNamespace - - - True - - - http://sourceforge.jp/projects/wptscs/ - - - 0 - - - 187, 19 - - - 3 + + 76, 12 - + 0 - - System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 121, 15 - - - textBoxDocumentationTemplateDefaultPage + + Bracket style: - - True + + 各言語での括弧書きのスタイルを入力します。 +括弧の中身部分を $1 としてください。 - - labelInterlanguageApi + + labelBracket - - True + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + groupBoxLanguage - - 通信エラー時にリトライする際の待機時間です。 -サーバーが混雑している場合など、ウェイト時間を取ったほうがリトライに成功する可能性があがります。 -単位はミリ秒です。待機しない場合は0を指定してください。 + + 2 - - 12 + + False - - 0 + + 300, 39 - - 110, 12 + + 286, 320 - - tabPageHeadings + + 5 - - MiddleRight + + Language - - 8 + + groupBoxLanguage - - 0 + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - Website: + + tabPageServer - - Connect retry time (ms): + + 2 - - + + Top, Bottom, Left - - 114, 12 + + 81, 100 - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 2083 - - 見出しの置き換えパターンです。 -見出しを置き換える場合、こちらに各言語での語句を登録してください。 -複数の語句が同じ用途で使用されている場合、改行で区切って登録してください。 + + 187, 19 - - 108, 12 + + 4 - - + + サーバーから言語間リンク情報をXMLでダウンロードするためのパスを入力します。 +記事名を代入する部分を $1 としてください。 + +どのようなパスかについては、下記URL等を参照してください。 +http://www.mediawiki.org/wiki/API:Properties#langlinks_.2F_ll textBoxInterlanguageApi - - ColumnCode + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 81, 18 + + groupBoxServer - - その言語での [[Template:Documentation]] に相当するテンプレート名を入力します。 -行ごとに複数のテンプレートが指定可能です(リダイレクト等で複数存在する場合のため)。 + + 0 - - 6 + + True - - groupBoxApplicationConfig + + 6, 103 - - Add... + + 72, 12 - - groupBoxApplicationConfig + + 20 - - 3 + + Interwiki API: - - MiddleRight + + サーバーから言語間リンク情報をXMLでダウンロードするためのパスを入力します。 +記事名を代入する部分を $1 としてください。 + +どのようなパスかについては、下記URL等を参照してください。 +http://www.mediawiki.org/wiki/API:Properties#langlinks_.2F_ll - - tabPageServer + + labelInterlanguageApi - - 2 + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 0 + + groupBoxServer - - ColumnName + + 1 - - linkLabelWebsite + + True - - 12, 12 + + 8, 284 - - ColumnTimestamp + + 169, 16 - - + + 10 - - 6, 157 + + This wiki has language page - - 各言語ごとのサーバー/書式等の設定です。 + + 言語名のページが存在する場合、言語名を出力する際に内部リンクの形で出力します。 - - サーバーから記事をXMLでダウンロードするためのパスを入力します。 -記事名を代入する部分を $1 としてください。 - -どのようなパスかについては、日本語版Wikipediaの -特別ページ → ページの書き出し -などを参照ください。 + + checkBoxHasLanguagePage - - 記事の置き換えで取得済みの内容をキャッシュとして使用する有効期限です。 -日数、またはキャッシュしない場合0を入力します。 + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 0 + + groupBoxServer - - 3 + + 2 - - ColumnToCode + + 81, 257 - - MiddleRight + + 255 - - MiddleRight + + 187, 19 - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 9 - - (0: Disable) + + 言語コードを明示的に指定した記述で使用するフォーマットを入力します。 +言語, 文字列 に相当する部分を $1, $2 としてください。 +空欄の場合、言語コードを明示的に指定せず出力します。 - - labelMaxConnectRetriesNote + + textBoxLangFormat - - Bracket style: + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - + + groupBoxServer - - UserAgent: + + 3 - - + + True - - Destination + + 6, 260 - - groupBoxApplicationConfig + + 68, 12 - - + + 19 - - MiddleRight + + Lang format: - - 0 + + 言語コードを明示的に指定した記述で使用するフォーマットを入力します。 +言語, 文字列 に相当する部分を $1, $2 としてください。 +空欄の場合、言語コードを明示的に指定せず出力します。 - - 0 + + labelLangFormat - - 1 + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - MiddleRight + + groupBoxServer - - 0 + + 4 - - + + 81, 227 - - サーバーから言語間リンク情報をXMLでダウンロードするためのパスを入力します。 -記事名を代入する部分を $1 としてください。 - -どのようなパスかについては、下記URL等を参照してください。 -http://www.mediawiki.org/wiki/API:Properties#langlinks_.2F_ll + + 255 - - System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 187, 19 - - 6 + + 8 - - MiddleRight + + 言語間リンクが見つからない場合に置き換えるフォーマットを入力します。 +記事名, 言語, 他言語版記事名, 表示名 に相当する部分を $1, $2, $3, $4 としてください。 +空欄の場合、[[:記事名:言語|表示名]] での置き換えを行います。 - - サーバーから記事をXMLでダウンロードするためのパスを入力します。 -記事名を代入する部分を $1 としてください。 - -どのようなパスかについては、日本語版Wikipediaの -特別ページ → ページの書き出し -などを参照ください。 + + textBoxLinkInterwikiFormat - - 2 + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 14 + + groupBoxServer - - 6, 103 + + 5 - - 記事の置き換えパターンの翻訳先言語です。 + + True - - checkBoxIgnoreError + + 6, 211 - - System.Windows.Forms.DataGridView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 114, 12 - - groupBoxServer + + 18 - - 設定を更新せず、この画面を閉じます。 + + Link-interwiki format: - - 0 + + 言語間リンクが見つからない場合に置き換えるフォーマットを入力します。 +記事名, 言語, 他言語版記事名, 表示名 に相当する部分を $1, $2, $3, $4 としてください。 +空欄の場合、[[:記事名:言語|表示名]] での置き換えを行います。 - - Top, Bottom, Left, Right + + labelLinkInterwikiFormat - - + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - System.Windows.Forms.ErrorProvider, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + groupBoxServer - - 0 + + 6 - - groupBoxServer + + Disable - - 選択されている言語を削除します。 + + 150, 181 - - Bottom, Left + + 2 - - groupBoxApplicationConfig + + 36, 19 - - その他の設定・情報です。 + + 7 - - MiddleRight + + 上記APIで取得した名前空間のうち、ファイルに該当する番号を入力します。 - - 翻訳元記事名がリダイレクトの場合の、リダイレクト先の記事名です。 + + textBoxFileNamespace - - MiddleRight + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 17 + + groupBoxServer - - 54, 12 + + 7 - - System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + Disable - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 150, 154 - - groupBoxApplicationConfig + + 2 - - 1 + + 36, 19 - - tabPageServer + + 6 - - Redirect + + 上記APIで取得した名前空間のうち、カテゴリに該当する番号を入力します。 - - + + textBoxCategoryNamespace - - tabPageApplication + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - Disable + + groupBoxServer - - 0 + + 8 - + True - - Code + + 6, 157 - - + + 137, 12 - - 0 + + 12 - - 6 + + Category namespace's ID: - - Source + + 上記APIで取得した名前空間のうち、カテゴリに該当する番号を入力します。 - - 0 + + labelCategoryNamespace - - 43, 19 + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 通信エラー時にリトライする回数です。 -リトライしない場合は0を指定してください。 + + groupBoxServer - - 2 + + 9 - - + + Disable - + + 150, 127 + + 2 - - 各言語での括弧書きのスタイルを入力します。 -括弧の中身部分を $1 としてください。 + + 36, 19 - - 記事の置き換えパターンの翻訳元記事名です。 + + 5 - - tabPageServer + + 上記APIで取得した名前空間のうち、テンプレートに該当する番号を入力します。 - - + + textBoxTemplateNamespace - - 0 + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - MiddleRight + + groupBoxServer - - 3, 3, 3, 3 + + 10 - - ColumnShortName + + True - - groupBoxServer + + 6, 130 - - 9, 467 + + 138, 12 - + + 10 + + + Template namespace's ID: + + + 上記APIで取得した名前空間のうち、テンプレートに該当する番号を入力します。 + + + labelTemplateNamespace + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 288, 420 + + groupBoxServer - - 2 + + 11 - - 1 + + 81, 46 - - 5 + + 2083 - - 言語コードを明示的に指定した記述で使用するフォーマットを入力します。 -言語, 文字列 に相当する部分を $1, $2 としてください。 -空欄の場合、言語コードを明示的に指定せず出力します。 + + 187, 19 + + + 2 - - labelExportPath + + サーバーから記事をXMLでダウンロードするためのパスを入力します。 +記事名を代入する部分を $1 としてください。 + +どのようなパスかについては、下記URL等を参照してください。 +http://www.mediawiki.org/wiki/API:Properties#revisions_.2F_rv + - - + + textBoxContentApi - + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - MiddleRight + + groupBoxServer - - 0 + + 12 - - $this + + True - - groupBoxServer + + 6, 49 - - 6 + + 69, 12 - + 6 - - 260, 347 + + Content API: - - True + + サーバーから記事をXMLでダウンロードするためのパスを入力します。 +記事名を代入する部分を $1 としてください。 + +どのようなパスかについては、下記URL等を参照してください。 +http://www.mediawiki.org/wiki/API:Properties#revisions_.2F_rv - - 215, 509 + + labelContentApi - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - dataGridViewItems + + groupBoxServer - - labelDocumentationTemplateDefaultPage + + 13 - - 0 + + 81, 73 - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 2083 - - Export API: + + 187, 19 - - 10 + + 3 - - MiddleRight + + サーバーから名前空間やウィキ間リンクといったメタ情報をXMLでダウンロードするためのパスを入力します。 + +どのようなパスかについては、下記URL等を参照してください。 +http://www.mediawiki.org/wiki/API:Meta#siteinfo_.2F_si - - MiddleRight + + textBoxMetaApi System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 335, 509 + + groupBoxServer - - groupBoxApplicationConfig + + 14 - - 設定を変更したい言語を選択します。 + + True - - 通信エラー時にリトライする回数です。 -リトライしない場合は0を指定してください。 - + + 6, 76 - - True + + 54, 12 - - 96 + + 4 - - labelWebsite + + Meta API: - - 2083 + + サーバーから名前空間やウィキ間リンクといったメタ情報をXMLでダウンロードするためのパスを入力します。 + +どのようなパスかについては、下記URL等を参照してください。 +http://www.mediawiki.org/wiki/API:Meta#siteinfo_.2F_si - - + + labelMetaApi - - groupBoxApplicationConfig + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 8, 43 + + groupBoxServer - - 255 + + 15 - - + + 81, 18 - - 0 + + 300 - - MiddleRight + + 187, 19 - - Link-interwiki format: + + 1 - - 0 + + サーバーのURLを入力します。 - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + textBoxLocation - - 4, 22 + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + + groupBoxServer + + + 16 + + True - - 0 + + 6, 22 - - 10 + + 40, 12 - + 0 - - 217, 128 + + Server: - - 286, 420 + + サーバーのURLを入力します。 - - labelConnectRetryTimeNote + + labelLocation - - 設定を変更したい言語を選択します。 + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 12 + + groupBoxServer - - 0 + + 17 - - textBoxLinkInterwikiFormat + + True - - * Don't remove many rows by one operation. (max 50) + + 6, 184 - - Cache expire (day) : + + 110, 12 - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 14 - - 592, 465 + + File namespace's ID: - - 12, 67 + + 上記APIで取得した名前空間のうち、ファイルに該当する番号を入力します。 - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - groupBoxInformation - - - - - - System.Windows.Forms.TabControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + labelFileNamespace - - MiddleRight + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + groupBoxServer - - 9 - - - 187, 39 - - - 261, 19 + + 18 - - 75, 23 + + False - - 624, 541 + + 6, 39 - - 6, 320 + + 288, 320 - - True + + 4 - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + MediaWiki - - + + groupBoxServer - - 0 + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 6, 49 + + tabPageServer - - 148, 125 + + 3 - - 0 + + 81, 13 - - True + + 85, 20 - - 10 + + 1 - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 設定を変更したい言語を選択します。 - - 0 + + comboBoxLanguage - - Disable + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 0 + + tabPageServer - - 47, 12 + + 4 - - 148, 99 + + True - - 1 + + 20, 16 - - System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 55, 12 - + 0 - - 6, 76 + + Language: - - textBoxLangFormat + + 設定を変更したい言語を選択します。 - - MiddleRight + + labelLanguage - - + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 4 + + tabPageServer - - MiddleRight + + 5 - + 4, 22 - - tabControl + + 3, 3, 3, 3 - - 0 + + 592, 365 - - 7 + + 2 - - 10 + + Server/Language - - 1 + + 各言語ごとのサーバー/書式等の設定です。 - - 0 + + tabPageServer - - 0 + + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - その言語が、各言語でなんと表記されるかを登録します。 -(例 日本語→英語では Japanese と表記) + + tabControl - - + + 2 - - System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + Top, Bottom, Left, Right - - + + True - - 0, 12 + + 12, 67 - - 150, 181 + + 47, 12 - - + + 3 - - 2 + + Website: - - 言語間リンクが見つからない場合に置き換えるフォーマットを入力します。 -記事名, 言語, 他言語版記事名, 表示名 に相当する部分を $1, $2, $3, $4 としてください。 -空欄の場合、[[:記事名:言語|表示名]] での置き換えを行います。 + + labelWebsite - - groupBoxApplicationConfig + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - MiddleRight + + groupBoxInformation - + 0 - - MiddleRight + + True - - checkBoxHasLanguagePage + + 61, 67 - - groupBoxApplicationConfig + + 205, 12 - - Title + + 1 - - 8, 393 + + http://sourceforge.jp/projects/wptscs/ - - About + + linkLabelWebsite - - + + System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 言語間リンクが見つからない場合に置き換えるフォーマットを入力します。 -記事名, 言語, 他言語版記事名, 表示名 に相当する部分を $1, $2, $3, $4 としてください。 -空欄の場合、[[:記事名:言語|表示名]] での置き換えを行います。 + + groupBoxInformation - - System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 1 - - 0 + + True - - MiddleRight + + 12, 45 - - 14 + + 252, 12 - - labelBracket + + 1 - - 0 + + Copyright (C) Honeplus 2011 ※AssemblyInfo.cs - + + labelCopyright + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 63, 19 + + groupBoxInformation - - 7 + + 2 - - tabPageServer + + True - - MiddleRight + + MS UI Gothic, 9pt, style=Bold - - 0 + + 12, 24 - - 0 + + 373, 12 - - + + 0 - - + + Wikipdia翻訳支援ツール Ver1.00 ※FormUtil.ApplicationName() - - + + labelApplicationName - - etc + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - + + groupBoxInformation - - 170, 18 + + 3 - - Copyright (C) Honeplus 2011 ※AssemblyInfo.cs + + 6, 223 - - 16 + + 580, 136 - - 上記APIで取得した名前空間のうち、カテゴリに該当する番号を入力します。 + + 2 - - 1 + + About - - 0 + + groupBoxInformation - - 47, 23 + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + + tabPageApplication + + 0 - - + + Top, Left, Right - - + + True - - 342, 46 + + 6, 188 - - System.Windows.Forms.DataGridView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 0, 12 - - True + + 17 - - MiddleRight + + labelApplicationConfigNote - - 3 + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBoxApplicationConfig - + 0 - - + + Disable - - Referer: + + 148, 125 - - 18 + + 6 - - MiddleRight + + 63, 19 - - 6, 277 + + 5 - - MiddleRight + + 通信エラー時にリトライする際の待機時間です。 +サーバーが混雑している場合など、ウェイト時間を取ったほうがリトライに成功する可能性があがります。 +単位はミリ秒です。待機しない場合は0を指定してください。 - - 0 + + textBoxConnectRetryTime - - 2 + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - Item table + + groupBoxApplicationConfig - - 6, 18 + + 1 - - その言語での [[Template:Documentation]] の [[/doc]] に相当する、デフォルトの解説ページ名を入力します。 + + True - - 2 + + NoControl - - Wikipdia翻訳支援ツール Ver1.00 ※FormUtil.ApplicationName() + + 217, 128 - - Lang format: + + 0, 12 - - + + 16 - - 81, 73 + + labelConnectRetryTimeNote - + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 1 - - - MiddleRight + + groupBoxApplicationConfig - - 4 + + 2 - - 6, 213 + + True - - 3 + + 6, 128 - - 0 + + 130, 12 - - Timestamp + + 15 - - MiddleRight + + Connect retry time (ms): - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 通信エラー時にリトライする際の待機時間です。 +サーバーが混雑している場合など、ウェイト時間を取ったほうがリトライに成功する可能性があがります。 +単位はミリ秒です。待機しない場合は0を指定してください。 - - Ignore error + + labelConnectRetryTime - - 3 + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 0 + + groupBoxApplicationConfig - - Top, Bottom, Left, Right + + 3 - - + + Disable - - False + + 148, 99 - - MiddleRight + + 1 - - + + 43, 19 - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 4 - - 66 + + 通信エラー時にリトライする回数です。 +リトライしない場合は0を指定してください。 + - - サーバーから言語間リンク情報をXMLでダウンロードするためのパスを入力します。 -記事名を代入する部分を $1 としてください。 - -どのようなパスかについては、下記URL等を参照してください。 -http://www.mediawiki.org/wiki/API:Properties#langlinks_.2F_ll + + textBoxMaxConnectRetries - - 36, 19 + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 169, 16 + + groupBoxApplicationConfig - + 4 - - - - - Server/Language + + True - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 198, 102 - - True + + 63, 12 13 - - MiddleRight - - - + + (0: Disable) - - groupBoxServer + + labelMaxConnectRetriesNote - - labelCacheExpire + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + groupBoxApplicationConfig - - 0 + + 5 - - $this + + True - - 36, 19 + + 6, 102 - - 4 - - - MiddleRight - - - 55, 12 + + 109, 12 - - + + 12 - - 6, 39 + + Max connect retries: - - 0 + + 通信エラー時にリトライする回数です。 +リトライしない場合は0を指定してください。 - - tabPageItems + + labelMaxConnectRetries - - 0, 12 + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 373, 12 + + groupBoxApplicationConfig - - 6, 130 + + 6 - - System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + True - - + + 8, 157 - - 0 + + 83, 16 - - groupBoxServer + + 6 - - 2083 + + Ignore error - - 16 + + エラーが発生した際に処理を中止せず、無視して可能な限り処理を続行したい場合、チェックします。 - - textBoxMetaApi + + checkBoxIgnoreError - - groupBoxServer + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - MiddleRight + + groupBoxApplicationConfig - - 13 + + 7 - - 6 + + True - - + + NoControl - - textBoxConnectRetryTime + + 342, 71 - - buttonLunguageAdd + + 75, 12 - - groupBoxInformation + + 9 - - Server: + + (Empty: Auto) - - 66 + + labelRefererNote - - MiddleRight + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 2 + + groupBoxApplicationConfig - - 45, 12 + + 8 - - 9 + + True - - 1 + + NoControl - - MiddleRight + + 342, 46 - - NoControl + + 152, 12 - - + + 8 - - 0 + + (Empty: Itself by application) - - 0 + + labelUserAgentNote - - True + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + groupBoxApplicationConfig - - labelRefererNote + + 9 - - 6, 369 + + True - - + + 170, 18 - - 0 + + 63, 12 - - (Empty: Auto) + + 7 - - 0 + + (0: Disable) - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + labelCacheNote - - 75, 68 + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 130, 12 + + groupBoxApplicationConfig - - System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 10 - - 記事の置き換えパターンの翻訳元言語です。 + + Disable - - エラーが発生した際に処理を中止せず、無視して可能な限り処理を続行したい場合、チェックします。 + + 121, 15 - - groupBoxLanguageName + + 3 - - + + 43, 19 - - MiddleRight + + 1 - - 0 + + 記事の置き換えで取得済みの内容をキャッシュとして使用する有効期限です。 +日数、またはキャッシュしない場合0を入力します。 - - 0 + + textBoxCacheExpire - + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + groupBoxApplicationConfig - - labelApplicationName + + 11 - - Disable + + 75, 68 - - True + + 2083 - - 640, 580 + + 261, 19 - - 4 + + 3 - - 592, 485 + + Referer を固定で指定する場合、URLを入力します。 +空欄の場合、Referer はアクセスしたページに応じて動的に設定されます。 - - MiddleRight + + textBoxReferer - - tabPageServer + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - labelUserAgentNote + + groupBoxApplicationConfig - - 0 + + 12 - - 1 + + True - - 8 + + 6, 71 - - 137, 12 + + 45, 12 - - Top, Bottom, Left, Right + + 2 - - tabPageServer + + Referer: + + + Referer を固定で指定する場合、URLを入力します。 +空欄の場合、Referer はアクセスしたページに応じて動的に設定されます。 - - MiddleRight + + labelReferer - + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 0 - - - - - - This wiki has language page - - - 12, 24 - - - 置き換えパターンを言語間リンクから取得した場合の取得日時です。 -取得日時から一定期間キャッシュとしてこの置き換えを使用します。 -空欄の場合、無期限で使用します。 - - - tabPageServer - - - textBoxCategoryNamespace - - - MiddleRight - - - MiddleRight - - - 0 - - - 6, 102 + + groupBoxApplicationConfig 13 - - 281, 12 - True - - 6, 22 + + 6, 18 - - + + 108, 12 - - 4, 22 + + 4 - - Remove + + Cache expire (day) : - - + + 記事の置き換えで取得済みの内容をキャッシュとして使用する有効期限です。 +日数、またはキャッシュしない場合0を入力します。 - - 0 + + labelCacheExpire - - Name (Article) + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - MiddleRight + + groupBoxApplicationConfig - - System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 14 - - Heading table + + 75, 43 - - MiddleRight + + 255 - - 4 + + 261, 19 - + 2 - - groupBoxApplicationConfig + + User Agent として使用する文字列を入力します。 +空欄の場合、このツール独自のUAを使用します。 textBoxUserAgent - - + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 11 + + groupBoxApplicationConfig - - 89, 18 + + 15 - - groupBoxServer + + True - - 580, 457 + + 6, 46 - - 10 + + 61, 12 - - toolTip + + 0 - - textBoxReferer + + UserAgent: - - 1 + + User Agent として使用する文字列を入力します。 +空欄の場合、このツール独自のUAを使用します。 - - Documentation templates: + + labelUserAgent - - True + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - tabPageItems + + groupBoxApplicationConfig - - 通信エラー時にリトライする際の待機時間です。 -サーバーが混雑している場合など、ウェイト時間を取ったほうがリトライに成功する可能性があがります。 -単位はミリ秒です。待機しない場合は0を指定してください。 + + 16 - - + + 6, 6 - - 137, 12 + + 580, 211 - - 66 + + 1 - - 記事の置き換えで取得済みの内容をキャッシュとして使用する有効期限です。 -日数、またはキャッシュしない場合0を入力します。 + + Application - - groupBoxServer + + groupBoxApplicationConfig - - ColumnFromTitle + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - buttonOk + + tabPageApplication - - groupBoxInformation + + 1 - - Top, Bottom, Left, Right + + 4, 22 - - 300, 39 + + 3, 3, 3, 3 - - 20 + + 592, 365 - - MS UI Gothic, 9pt, style=Bold + + 3 - - その言語での [[Template:Documentation]] に相当するテンプレート名を入力します。 -行ごとに複数のテンプレートが指定可能です(リダイレクト等で複数存在する場合のため)。 + + etc - - 342, 71 + + その他の設定・情報です。 - - MiddleRight + + tabPageApplication - - True + + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 153, 19 + + tabControl - - Max connect retries: + + 3 - - 2 + + 12, 12 - - 上記APIで取得した名前空間のうち、テンプレートに該当する番号を入力します。 + + True - - + + 600, 391 - - + + 1 - - True + + tabControl - - System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + System.Windows.Forms.TabControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - + + $this - - サーバーから名前空間やウィキ間リンクといったメタ情報をXMLでダウンロードするためのパスを入力します。 - -どのようなパスかについては、下記URL等を参照してください。 -http://www.mediawiki.org/wiki/API:Meta#siteinfo_.2F_si + + 0 - - textBoxCacheExpire + + 17, 17 + + + True + + + 6, 12 - - + + 624, 441 - - 138, 12 + + 640, 480 - - textBoxBracket + + Settings - - 2 + + ColumnFromCode - - + + System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 0 + + ColumnFromTitle - - Top, Bottom, Left, Right + + System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 85, 20 - - - groupBoxServer - - - - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 0 - - - 81, 46 - - - 11 - - - MiddleRight - - - 1 - - - labelCategoryNamespace - - - 0 - - - 0 - - - 100, 19 - - - True - - - MiddleRight - - - サーバーのURLを入力します。 - - - False - - - labelDocumentationTemplate - - - True - - - groupBoxApplicationConfig - - - 8 - - - NoControl - - - System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - MiddleRight - - - - - - 上記APIで取得した名前空間のうち、カテゴリに該当する番号を入力します。 - - - 81, 293 - - - MiddleRight - - - groupBoxServer - - - MiddleRight - - - 記事の置き換えパターンの翻訳先記事名です。 -言語間リンクが無い場合は空欄です。 - - - labelLanguage - - - 205, 12 - - - - - - 187, 19 - - - 592, 485 - - - 6, 6 - - - Default documentation page: - - - - - - 17 - - - 5 - - - 2 - - - 0 - - - 81, 230 - - - 187, 19 - - - - - - - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 3 - - - 言語を追加するダイアログを表示します。 - - - labelFileNamespace - - - labelApplicationConfigNote - - - - - - 72, 12 - - - - - - 81, 336 - - - 8 - - - comboBoxLanguage - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 1 - - - Vertical - - - 20 - - - True - - - User Agent として使用する文字列を入力します。 -空欄の場合、このツール独自のUAを使用します。 - - - Template namespace's ID: - - - $this - - - True - - - 61, 67 - - - 9 - - - - - - 3, 3, 3, 3 - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - textBoxMaxConnectRetries - - - labelMetaApi - - - 75, 12 - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - - - MiddleRight - - - MiddleRight - - - System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - NoControl - - - groupBoxLanguage - - - 2 - - - Bottom - - - System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tabPageApplication - - - System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tabPageApplication - - - 6, 46 - - - サーバーのURLを入力します。 - - - 580, 473 - - - True - - - 0 - - - 78 - - - 0 - - - - - - 2083 - - - 580, 237 - - - OK - - - groupBoxServer - - - 5 - - - 記事の置き換えパターンです。 -言語間リンクを使用せず、固定で置き換えを行う場合は、こちらに登録してください。 -また一度取得した言語間リンクは自動的に登録され、一定期間キャッシュとして使用されます。 -再取得したい場合は、該当行を削除してください。 - - - Top, Left, Right - - - MediaWiki - - - 16 - - - MiddleRight - - - 6, 188 - - - labelLocation - - - 6, 184 - - - MiddleRight - - - 3, 3, 3, 3 - - - groupBoxLanguage - - - 150, 127 - - - (0: Disable) - - - (Empty: Itself by application) - - - tabControl - - - 19 - - - Top, Bottom, Left, Right - - - System.Windows.Forms.ToolTip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - - - 6, 71 - - - labelChaceNote - - - 6, 128 - - - 6, 12 - - - labelLangFormat - - - 68, 12 - - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 2 - - - 0 - - - 300 - - - True - - - buttonLanguageRemove - - - groupBoxServer - - - 22 - - - 3, 3, 3, 3 - - - Language: - - - groupBoxServer - - - 0 - - - 1 - - - MiddleRight - - - textBoxFileNamespace - - - 0 - - - System.Windows.Forms.DataGridView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 255 - - - tabControl - - - labelLinkInterwikiFormat - - - Referer を固定で指定する場合、URLを入力します。 -空欄の場合、Referer はアクセスしたページに応じて動的に設定されます。 - - - ColumnAlias - - - 2 - - - labelConnectRetryTime - - - MiddleRight - - - 63, 12 - - - - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - groupBoxLanguage - - - - - - 0 - - - True - - - 1 - - - 表記先の言語での略称です。特に不要な場合空欄です。 - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - True - - - 40, 12 - - - - - - tabControl - - - - - - 0 - - - Referer を固定で指定する場合、URLを入力します。 -空欄の場合、Referer はアクセスしたページに応じて動的に設定されます。 - - - 21 - - - 4 - - - groupBoxServer - - - True - - - - - - 0 - - - 1 - - - groupBoxServer - - - - - - MiddleRight - - - labelCopyright - - - 3 - - - 18 - - - 81, 366 - - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 150, 154 - - - MiddleRight - - - textBoxDocumentationTemplate - - - Cancel - - - - - - 4, 22 - - - 上記APIで取得した名前空間のうち、テンプレートに該当する番号を入力します。 - - - 0 - - - 5 - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 5 - - - - - - 0 - - - ColumnFromCode - - - 12, 45 - - - 12 - - - 36, 19 - - - MiddleRight - - - True - - - 20, 16 - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 43, 19 - - - 6, 6 - - - 3 - - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - True - - - 0 - - - MiddleRight - - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - - - tabPageItems + + ColumnAlias System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - - 2 - - - 233, 11 - - - - - - 言語コードを明示的に指定した記述で使用するフォーマットを入力します。 -言語, 文字列 に相当する部分を $1, $2 としてください。 -空欄の場合、言語コードを明示的に指定せず出力します。 - - - groupBoxApplicationConfig - - - 75, 23 - - - Settings - - - 109, 12 - - - 152, 12 - - - groupBoxInformation - - - 0 - - - 198, 102 - - - 600, 491 - - - 0 - - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + ColumnArrow - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - groupBoxApplicationConfig + + ColumnToCode - - + + System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 ColumnToTitle - - 150, 12 - - - labelMaxConnectRetries - - - - - - Disable - - - 1 - - - True - - - - - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 261, 19 - - - 0 - - - 4 + + System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + ColumnTimestamp - - System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - Interwiki API: + + ColumnCode - - 580, 230 + + System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + ColumnName - - 0 + + System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 5 + + ColumnShortName - - 54 + + System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + errorProvider - - 0 + + System.Windows.Forms.ErrorProvider, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 15 + + toolTip - - groupBoxServer + + System.Windows.Forms.ToolTip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 592, 485 + + ConfigForm - - MiddleRight + + System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - True - - - True - - - True - - - True - - - True - - - 17, 17 - - - True - - - True - - - 148, 17 - - - True - - - True - - - True - - - True - \ No newline at end of file diff --git a/Wptscs/Logics/MediaWikiTranslator.cs b/Wptscs/Logics/MediaWikiTranslator.cs index a571a58..9e79e8f 100644 --- a/Wptscs/Logics/MediaWikiTranslator.cs +++ b/Wptscs/Logics/MediaWikiTranslator.cs @@ -1006,12 +1006,6 @@ namespace Honememo.Wptscs.Logics { string dummy = page.Text; } - catch (EndPeriodException) - { - // 末尾がピリオドで終わるページが処理できない既知の不具合への対応、警告メッセージを出す - this.Logger.AddResponse(Resources.LogMessageErrorPageName, page.Title); - return false; - } catch (Exception e) { // その他例外の場合、エラー情報を出力 diff --git a/Wptscs/Properties/Resources.Designer.cs b/Wptscs/Properties/Resources.Designer.cs index ab9d38a..e0ab1b0 100644 --- a/Wptscs/Properties/Resources.Designer.cs +++ b/Wptscs/Properties/Resources.Designer.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // このコードはツールによって生成されました。 -// ランタイム バージョン:4.0.30319.239 +// ランタイム バージョン:4.0.30319.18033 // // このファイルへの変更は、以下の状況下で不正な動作の原因になったり、 // コードが再生成されるときに損失したりします。 @@ -189,15 +189,6 @@ namespace Honememo.Wptscs.Properties { } ///

- /// {0} is not supported page name. に類似しているローカライズされた文字列を検索します。 - /// - internal static string LogMessageErrorPageName { - get { - return ResourceManager.GetString("LogMessageErrorPageName", resourceCulture); - } - } - - /// /// URL : {0} に類似しているローカライズされた文字列を検索します。 /// internal static string LogMessageErrorURL { diff --git a/Wptscs/Properties/Resources.ja.resx b/Wptscs/Properties/Resources.ja.resx index e680521..75d63d3 100644 --- a/Wptscs/Properties/Resources.ja.resx +++ b/Wptscs/Properties/Resources.ja.resx @@ -178,10 +178,6 @@ 翻訳支援処理処理を完了した際のメッセージ - - {0} は、現在のツールでは処理できないページ名です。 - ページ名絡みの既知の不具合用の暫定メッセージ - 要求したURLは {0} です。 通信エラー発生時のURLを示すメッセージ diff --git a/Wptscs/Properties/Resources.resx b/Wptscs/Properties/Resources.resx index dafad57..67be391 100644 --- a/Wptscs/Properties/Resources.resx +++ b/Wptscs/Properties/Resources.resx @@ -340,10 +340,6 @@ Process stopped. Log: {0} Max connect retries must be greater than or equal to 0. リトライ回数に不正な値を入れられた場合のメッセージ - - {0} is not supported page name. - ページ名絡みの既知の不具合用の暫定メッセージ - (load failed) 設定ファイル読み込み失敗時の状態 diff --git a/Wptscs/Properties/Settings.Designer.cs b/Wptscs/Properties/Settings.Designer.cs index 3e17642..1ea7201 100644 --- a/Wptscs/Properties/Settings.Designer.cs +++ b/Wptscs/Properties/Settings.Designer.cs @@ -159,10 +159,11 @@ namespace Honememo.Wptscs.Properties { [global::System.Configuration.ApplicationScopedSettingAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("/wiki/Special:Export/$1")] - public string MediaWikiExportPath { + [global::System.Configuration.DefaultSettingValueAttribute("/w/api.php?action=query&prop=revisions&titles=$1&redirects&rvprop=timestamp|conte" + + "nt&format=xml")] + public string MediaWikiContentApi { get { - return ((string)(this["MediaWikiExportPath"])); + return ((string)(this["MediaWikiContentApi"])); } } diff --git a/Wptscs/Properties/Settings.settings b/Wptscs/Properties/Settings.settings index 4b38656..1cc33ba 100644 --- a/Wptscs/Properties/Settings.settings +++ b/Wptscs/Properties/Settings.settings @@ -143,8 +143,8 @@ <string>#iferror</string> </ArrayOfString> - - /wiki/Special:Export/$1 + + /w/api.php?action=query&prop=revisions&titles=$1&redirects&rvprop=timestamp|content&format=xml ($1) diff --git a/Wptscs/Readme.txt b/Wptscs/Readme.txt index a3a00c4..6cf5de0 100644 --- a/Wptscs/Readme.txt +++ b/Wptscs/Readme.txt @@ -13,7 +13,7 @@ Wikipediaでの言語間翻訳をサポートするためのツールです。 指定されたWikipediaの記事に存在する内部リンク先を確認し、その言語間リンクを取得します。 また、登録されていれば、見出しも変換します。 -同じくMediaWikiを使用している Wiktionary, Wikitravel においても使用可能です。 +同じくMediaWikiを使用している Wiktionary, Wikivoyage においても使用可能です。 @@ -27,7 +27,7 @@ ja/wptscs.resources.dll : 日本語リソースdll hmlib.dll : 共通ライブラリdll wptscs.exe.config : デフォルト値やプログラム的な設定ファイル Wikipedia.xml : Wikipedia用の設定ファイル -Wikitravel.xml : Wikitravel用の設定ファイル +Wikivoyage.xml : Wikivoyage用の設定ファイル Wiktionary.xml : Wiktionary用の設定ファイル アプリケーション上で設定した内容は、上記設定ファイルには反映されません。 @@ -105,7 +105,7 @@ zip版の場合は展開したファイルを削除してください。 ・ソースについて -wptscs121-src.zip としてソースファイル一式を配布しています。 +wptscs130-src.zip としてソースファイル一式を配布しています。 開発環境はVisual Studio 2012 Express for Windows Desktopです。 その他外部ツールとしてコーディングスタイルチェック用のStyleCopを使用しています。 また、インストーラの作成にはWiXを使用しています。 @@ -190,17 +190,20 @@ Ver1.21 2012/12/09 記事名が空の不正なテンプレート呼び出しで テンプレート名の後にコメント等が入っている場合にエラーになるのを修正。 ※ 本バージョンから、開発環境がVisual Studio 2010→2012へと変化しています。 特に影響は無いはずですが、何らかの問題が生じた場合はお知らせください。 + Ver1.30 2013/03/xx 言語間リンクの取得を自前の解析処理を使わずMediaWikiのAPIを使用して行うよう変更。 + 記事名がピリオドやハテナマークで終わるページも扱えるよう対応。 変数の処理でエラーになるパターンがあったのを修正。 + MediaWiki APIが無効化されていたのでWikitravel対応を取り止め。 + 代わりにWikivoyageの対応を追加(ただしまだ日本語版は無し)。 + その他設定ファイルを精査。 + ※ 設定ファイルに互換性はありますが、一部設定項目の変更・追加・削除が発生しています。 + 独自の設定を追加している場合、変更が必要になる可能性があります。 ・仕様上の制限 -プログラム上の問題により、記事名がピリオドやハテナマークで終わるページは処理できません。 -(例、[[Vulcan Inc.]], [[How does one patch KDE2 under FreeBSD?]]) - キャッシュの一覧で一度に大量の項目を削除すると、フリーズしたかのように時間がかかります。 - -上記2点については、該当する処理に関連する部分に警告メッセージを表示しています。 +上記については、該当する処理に関連する部分に警告メッセージを表示しています。 その他、Wikipedia上言語間リンクが存在しても、現行のアプリでは見つけられないページもあります。 (例、何故かAPIに言語間リンクが反ってこない{{Lang-la}}) diff --git a/Wptscs/Utilities/EndPeriodException.cs b/Wptscs/Utilities/EndPeriodException.cs deleted file mode 100644 index 8fd218d..0000000 --- a/Wptscs/Utilities/EndPeriodException.cs +++ /dev/null @@ -1,46 +0,0 @@ -// ================================================================================================ -// -// 末尾がピリオドのページが取得できない既知の不具合に該当することを表す例外クラスソース -// -// -// Copyright (C) 2012 Honeplus. All rights reserved. -// -// Honeplus -// ================================================================================================ - -namespace Honememo.Wptscs.Utilities -{ - using System; - - /// - /// 末尾がピリオドのページが取得できない既知の不具合に該当することを表す例外クラスです。 - /// - /// - /// - /// 末尾がピリオドのページが取得できない既知の不具合への暫定対応。 - /// もともとただのを投げていたが、 - /// スキーム名が不正な場合等にもこの例外が飛ぶことが判明したため、 - /// 区別できるように作成。 - /// - /// - /// この問題は実装クラスでおきているため、 - /// このパッケージに定義する。 - /// - /// - public class EndPeriodException : NotSupportedException - { - #region コンストラクタ - - /// - /// 指定したエラーメッセージを使用して、 - /// 新しい例外インスタンスを作成します。 - /// - /// エラーメッセージ。 - public EndPeriodException(string message) - : base(message) - { - } - - #endregion - } -} diff --git a/Wptscs/Websites/MediaWiki.cs b/Wptscs/Websites/MediaWiki.cs index 448379e..3531531 100644 --- a/Wptscs/Websites/MediaWiki.cs +++ b/Wptscs/Websites/MediaWiki.cs @@ -36,9 +36,9 @@ namespace Honememo.Wptscs.Websites private string metaApi; /// - /// 記事のXMLデータが存在するパス。 + /// MediaWiki記事データ取得用にアクセスするAPI。 /// - private string exportPath; + private string contentApi; /// /// MediaWiki言語間リンク取得用にアクセスするAPI。 @@ -46,11 +46,6 @@ namespace Honememo.Wptscs.Websites private string interlanguageApi; /// - /// リダイレクトの文字列。 - /// - private string redirect; - - /// /// テンプレートの名前空間を示す番号。 /// private int? templateNamespace; @@ -90,11 +85,6 @@ namespace Honememo.Wptscs.Websites /// private object lockLoadMetaApi = new object(); - /// - /// Template:Documentation(言語間リンク等を別ページに記述するためのテンプレート)に相当するページ名。 - /// - private IList documentationTemplates = new List(); - #endregion #region コンストラクタ @@ -157,24 +147,24 @@ namespace Honememo.Wptscs.Websites } /// - /// 記事のXMLデータが存在するパス。 + /// MediaWiki記事データ取得用にアクセスするAPI。 /// /// 値が指定されていない場合、デフォルト値を返す。 - public string ExportPath + public string ContentApi { get { - if (string.IsNullOrEmpty(this.exportPath)) + if (string.IsNullOrEmpty(this.contentApi)) { - return Settings.Default.MediaWikiExportPath; + return Settings.Default.MediaWikiContentApi; } - return this.exportPath; + return this.contentApi; } set { - this.exportPath = value; + this.contentApi = value; } } @@ -366,44 +356,6 @@ namespace Honememo.Wptscs.Websites #region それ以外のプロパティ /// - /// Template:Documentation(言語間リンク等を別ページに記述するためのテンプレート)に相当するページ名。 - /// - /// 空の場合、その言語版にはこれに相当する機能は無いものとして扱う。 - public IList DocumentationTemplates - { - get - { - return this.documentationTemplates; - } - - set - { - if (value == null) - { - // nullの場合、空のリストを代入 - // ※ 例外にしてもよいが、このクラスにはnullで初期化としている - // プロパティが多数存在するので、動きをあわせる - value = new List(); - } - - this.documentationTemplates = value; - } - } - - /// - /// Template:Documentationで指定が無い場合に参照するページ名。 - /// - /// - /// ほとんどの言語では[[/Doc]]の模様。 - /// 空の場合、明示的な指定が無い場合は参照不能として扱う。 - /// - public string DocumentationTemplateDefaultPage - { - get; - set; - } - - /// /// Template:仮リンク(他言語へのリンク)で書式化するためのフォーマット。 /// /// 空の場合、その言語版にはこれに相当する機能は無いor使用しないものとして扱う。 @@ -511,68 +463,50 @@ namespace Honememo.Wptscs.Websites } // URIを生成 - Uri uri = new Uri(new Uri(this.Location), StringUtils.FormatDollarVariable(this.ExportPath, escapeTitle)); - if (uri.OriginalString.EndsWith(".") || uri.OriginalString.EndsWith("?")) - { - // 末尾がピリオドのページが取得できない既知の不具合への暫定対応 - // 対処方法が不明なため、せめて例外を投げて検知する - throw new EndPeriodException(title + " is not suppoted"); - } + Uri uri = new Uri(new Uri(this.Location), StringUtils.FormatDollarVariable(this.ContentApi, escapeTitle)); // ページのXMLデータをMediaWikiサーバーから取得 - XmlDocument xml = new XmlDocument(); - try + XElement doc; + using (Stream reader = this.WebProxy.GetStream(uri)) { - using (Stream reader = this.WebProxy.GetStream(uri)) - { - xml.Load(reader); - } + doc = XElement.Load(reader); } - catch (System.Net.WebException e) - { - // 404エラーによるページ取得失敗は詰め替えて返す - if (this.IsNotFound(e)) - { - throw new FileNotFoundException("page not found", e); - } - throw e; + // ページエレメントを取得 + // ※ この問い合わせでは、ページが無い場合も要素自体は毎回ある模様 + // 一件しか返らないはずなので先頭データを対象とする + XElement pe; + try + { + pe = (from query in doc.Elements("query") + from pages in query.Elements("pages") + from n in pages.Elements("page") + select n).First(); } - - // ルートエレメントまで取得し、フォーマットをチェック - XmlElement rootElement = xml["mediawiki"]; - if (rootElement == null) + catch (InvalidOperationException) { - // XMLは取得できたが空 or フォーマットが想定外 - throw new InvalidDataException("parse failed : mediawiki element is not found"); + throw new InvalidOperationException("parse failed : query/pages/page element is not found"); } // ページの解析 - XmlElement pageElement = rootElement["page"]; - if (pageElement == null) + if (pe.Attribute("missing") != null) { - // ページ無し + // missing属性が存在する場合、ページ無し throw new FileNotFoundException("page not found"); } // ページ名、ページ本文、最終更新日時 - // ※ 一応、各項目が無くても動作するようにする - string pageTitle = XmlUtils.InnerText(pageElement["title"], title); - string text = null; - DateTime? time = null; - XmlElement revisionElement = pageElement["revision"]; - if (revisionElement != null) - { - text = XmlUtils.InnerText(revisionElement["text"], null); - XmlElement timeElement = revisionElement["timestamp"]; - if (timeElement != null) - { - time = new DateTime?(DateTime.Parse(timeElement.InnerText)); - } - } + var re = (from revisions in pe.Elements("revisions") + from n in revisions.Elements("rev") + select n).First(); // ページ情報を作成して返す - return new MediaWikiPage(this, pageTitle, text, time, uri); + return new MediaWikiPage( + this, + XmlUtils.Value(pe.Attribute("title"), title), + re.Value, + new DateTime?(DateTime.Parse(re.Attribute("timestamp").Value)), + uri); } /// @@ -723,7 +657,7 @@ namespace Honememo.Wptscs.Websites } this.MetaApi = XmlUtils.InnerText(siteElement.SelectSingleNode("MetaApi")); - this.ExportPath = XmlUtils.InnerText(siteElement.SelectSingleNode("ExportPath")); + this.ContentApi = XmlUtils.InnerText(siteElement.SelectSingleNode("ContentApi")); this.InterlanguageApi = XmlUtils.InnerText(siteElement.SelectSingleNode("InterlanguageApi")); int namespaceId; @@ -768,21 +702,6 @@ namespace Honememo.Wptscs.Websites this.InterwikiPrefixs = prefixs; } - // Template:Documentationの設定 - this.DocumentationTemplates = new List(); - foreach (XmlNode docNode in siteElement.SelectNodes("DocumentationTemplates/DocumentationTemplate")) - { - this.DocumentationTemplates.Add(docNode.InnerText); - XmlElement docElement = docNode as XmlElement; - if (docElement != null) - { - // ※ XML上DefaultPageはテンプレートごとに異なる値を持てるが、 - // そうした例を見かけたことがないため、代表で一つの値のみ使用 - // (複数値が持てるのも、リダイレクトが存在するためその対策として) - this.DocumentationTemplateDefaultPage = docElement.GetAttribute("DefaultPage"); - } - } - this.LinkInterwikiFormat = XmlUtils.InnerText(siteElement.SelectSingleNode("LinkInterwikiFormat")); this.LangFormat = XmlUtils.InnerText(siteElement.SelectSingleNode("LangFormat")); bool hasLanguagePage; @@ -804,7 +723,7 @@ namespace Honememo.Wptscs.Websites // MediaWiki固有の情報 // ※ 設定ファイルに初期値を持つものは、プロパティではなく値から出力 writer.WriteElementString("MetaApi", this.metaApi); - writer.WriteElementString("ExportPath", this.exportPath); + writer.WriteElementString("ContentApi", this.contentApi); writer.WriteElementString("InterlanguageApi", this.interlanguageApi); writer.WriteElementString( "TemplateNamespace", @@ -837,17 +756,6 @@ namespace Honememo.Wptscs.Websites } } - // Template:Documentationの設定 - writer.WriteEndElement(); - writer.WriteStartElement("DocumentationTemplates"); - foreach (string doc in this.DocumentationTemplates) - { - writer.WriteStartElement("DocumentationTemplate"); - writer.WriteAttributeString("DefaultPage", this.DocumentationTemplateDefaultPage); - writer.WriteValue(doc); - writer.WriteEndElement(); - } - writer.WriteEndElement(); writer.WriteElementString("LinkInterwikiFormat", this.LinkInterwikiFormat); writer.WriteElementString("LangFormat", this.LangFormat); diff --git a/Wptscs/Wikipedia.xml b/Wptscs/Wikipedia.xml index 98c1ec5..2ae1f2a 100644 --- a/Wptscs/Wikipedia.xml +++ b/Wptscs/Wikipedia.xml @@ -20,12 +20,8 @@ - /wiki/%D8%AE%D8%A7%D8%B5:%D8%AA%D8%B5%D8%AF%D9%8A%D8%B1/$1 - - قالب:توثيق - {{وإو|عر=$1|لغ=$2|تر=$3|نص=$4}} {{رمزلغة|$1|$2}} True @@ -48,10 +44,8 @@ - /wiki/%E0%A6%AC%E0%A6%BF%E0%A6%B6%E0%A7%87%E0%A6%B7:Export/$1 - True @@ -80,12 +74,8 @@ - /wiki/Spezial:Exportieren/$1 - - Vorlage:Dokumentation - {{Lang|$1|$2}} True @@ -157,11 +147,6 @@ - - Template:Documentation - Template:Doc - Template:Template doc - {{link-interwiki|en=$1|en_text=$4|lang=$2|lang_title=$3}} {{Lang|$1|$2}} True @@ -192,12 +177,8 @@ - /wiki/Especial:Exportar/$1 - - Plantilla:Documentación - {{Lang|$1|$2}} True @@ -231,12 +212,8 @@ - /wiki/Sp%C3%A9cial:Exporter/$1 - - Modèle:Documentation - {{Lien|fr=$1|lang=$2|trad=$3|texte=$4}} {{Lang|$1|$2}} True @@ -259,10 +236,8 @@ - /wiki/%E0%A4%B5%E0%A4%BF%E0%A4%B6%E0%A5%87%E0%A4%B7:Export/$1 - {{भाषा|$1|$2}} True @@ -292,12 +267,8 @@ - /wiki/Speciale:Esporta/$1 - - Template:Man - {{Lang|$1|$2}} True @@ -336,7 +307,6 @@ ($1) - /wiki/%E7%89%B9%E5%88%A5:%E3%83%87%E3%83%BC%E3%82%BF%E6%9B%B8%E3%81%8D%E5%87%BA%E3%81%97/$1 CURRENTYEAR CURRENTMONTH @@ -485,11 +455,6 @@ 親ページ名 - - Template:Documentation - Template:Doc - Template:Template doc - {{仮リンク|$1|$2|$3|label=$4}} {{Lang|$1|$2}} True @@ -516,12 +481,8 @@ - /wiki/%ED%8A%B9%EC%88%98%EA%B8%B0%EB%8A%A5:%EB%82%B4%EB%B3%B4%EB%82%B4%EA%B8%B0/$1 - - 틀:틀 설명문서 - {{Lang|$1|$2}} True @@ -547,12 +508,8 @@ - /wiki/Speciaal:Exporteren/$1 - - Sjabloon:Sjabdoc - {{Lang|$1|$2}} True @@ -574,12 +531,8 @@ - /wiki/Specjalna:Eksport/$1 - - Szablon:Dokumentacja - True @@ -608,12 +561,8 @@ - /wiki/Especial:Exportar/$1 - - Predefinição:Documentação - {{Lang|$1|$2}} True @@ -643,12 +592,8 @@ - /wiki/Служебная:Export/$1 - - Шаблон:Doc - {{Lang|$1|$2}} True @@ -670,10 +615,8 @@ - /wiki/%E0%B7%80%E0%B7%92%E0%B7%81%E0%B7%9A%E0%B7%82:%E0%B6%B1%E0%B7%92%E0%B6%BB%E0%B7%8A%E0%B6%BA%E0%B7%8F%E0%B6%AD%E0%B6%9A%E0%B6%BB%E0%B6%B1%E0%B7%8A%E0%B6%B1/$1 - True @@ -694,10 +637,8 @@ - /wiki/%E0%AE%9A%E0%AE%BF%E0%AE%B1%E0%AE%AA%E0%AF%8D%E0%AE%AA%E0%AF%81:Export/$1 - True @@ -726,14 +667,8 @@ - /wiki/Special:%E5%AF%BC%E5%87%BA%E9%A1%B5%E9%9D%A2/$1 - - Template:Documentation - Template:Doc - Template:Template doc - {{Lang|$1|$2}} True @@ -746,7 +681,6 @@ - @@ -762,6 +696,10 @@ + Administrative units + 行政区画 + + Advantages 利点 @@ -770,6 +708,10 @@ 背景 + Climate + 気候 + + Costs 費用 @@ -784,6 +726,10 @@ 文化 + Demographics + 人口動態 + + Disadvantages 欠点 @@ -793,6 +739,14 @@ 經濟 + Education + 教育 + + + Ethnicity + 民族 + + Example 例 @@ -817,6 +771,14 @@ 関連資料 + Gallery + 画像 + + + Geography + 地理 + + History Historia Histoire @@ -826,6 +788,10 @@ 歷史 + Infrastructure + インフラ + + Quellen Notes Notas @@ -838,6 +804,14 @@ 注釋 + Planetary system + 惑星系 + + + Politics + 政治 + + Literatur References Bibliography @@ -853,6 +827,10 @@ 参考文献 + Religion + 宗教 + + Siehe auch See Also Véase también @@ -866,8 +844,20 @@ 參見 + Sports + スポーツ + + + Sister cities + 姉妹都市 + + Theory 理論 + + Transportation + 交通 + \ No newline at end of file diff --git a/Wptscs/Wikitravel.xml b/Wptscs/Wikitravel.xml deleted file mode 100644 index 7b07e7d..0000000 --- a/Wptscs/Wikitravel.xml +++ /dev/null @@ -1,312 +0,0 @@ - - - MediaWikiTranslator - - - http://wikitravel.org - - - - Deutsch - - - - German - - - - ドイツ語 - 独 - - - 德语 - - - - - /wiki/de/api.php?format=xml&action=query&meta=siteinfo&siprop=namespaces|interwikimap - /de/Spezial:Exportieren/$1 - - - - {{Lang|$1|$2}} - - - http://wikitravel.org - - - - Englisch - - - - English - - - - 英語 - 英 - - - 英語 - - - - Anglais - - - - Английский язык - - - - - /wiki/en/api.php?format=xml&action=query&meta=siteinfo&siprop=namespaces|interwikimap - /en/Special:Export/$1 - - - - {{Lang|$1|$2}} - - - http://wikitravel.org - - - - Französisch - - - - French - - - - Français - - - - フランス語 - 仏 - - - 法语 - - - - - /wiki/fr/api.php?format=xml&action=query&meta=siteinfo&siprop=namespaces|interwikimap - /fr/Special:Export/$1 - - - - {{Lang|$1|$2}} - - - http://wikitravel.org - - - - Japanisch - - - - Japanese - - - - 日本語 - 日 - - - 日語 - - - - ($1) - - /wiki/ja/api.php?format=xml&action=query&meta=siteinfo&siprop=namespaces|interwikimap - /ja/%E7%89%B9%E5%88%A5:Export/$1 - - - - {{Lang|$1|$2}} - - - http://wikitravel.org - - - - Russian - - - - ロシア語 - 露 - - - русский язык - русский - - - 俄语 - - - - - /wiki/ru/api.php?format=xml&action=query&meta=siteinfo&siprop=namespaces|interwikimap - /ru/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:Export/$1 - - - - {{Lang|$1|$2}} - - - http://wikitravel.org - - - - Chinesisch - - - - Chinese - - - - 中国語 - 中 - - - 中文 - - - - - /wiki/zh/api.php?format=xml&action=query&meta=siteinfo&siprop=namespaces|interwikimap - /zh/Special:Export/$1 - - - - {{Lang|$1|$2}} - - - - - - Buy - 買う - - - By boat - 船で - - - By bus - バスで - - - By car - 車で - - - By mail - 郵便 - - - By net - インターネット - - - By phone - 電話 - - - By plane - 飛行機で - - - By rail - 列車で - - - By taxi - タクシーで - - - Cities - 都市 - - - Climate - 気候 - - - Contact - 連絡する - - - Culture - 文化 - - - Do - 遊ぶ - - - Drink - 飲む - - - Eat - 食べる - - - Get around - 動く - - - Get in - 着く - - - Get out - 出かける - - - Highway buses - 高速バス - - - History - 歴史 - - - Local buses - 路線バス - - - Mobile phones - 携帯電話 - - - See - 観る - - - Sleep - 泊まる - - - Stay healthy - 健康を保つ - - - Talk - 喋る - - - Understand - 分かる - - - \ No newline at end of file diff --git a/Wptscs/Wikivoyage.xml b/Wptscs/Wikivoyage.xml new file mode 100644 index 0000000..8a88117 --- /dev/null +++ b/Wptscs/Wikivoyage.xml @@ -0,0 +1,354 @@ + + + MediaWikiTranslator + + + http://de.wikivoyage.org + + + + Deutsche Sprache + Deutsch + + + German language + German + + + ドイツ語 + 独 + + + 독일어 + + + + 德语 + + + + + + + False + + + http://en.wikivoyage.org + + + + لغة إنجليزية + + + + ইংরেজি ভাষা + + + + Englische Sprache + Englisch + + + English language + English + + + Idioma inglés + Inglés + + + Anglais + + + + अंग्रेज़ी भाषा + + + + Lingua inglese + inglese + + + 英語 + 英 + + + 영어 + + + + Engels + + + + Język angielski + + + + Língua inglesa + Inglês + + + Английский язык + + + + 英语 + + + + + + + False + + + http://es.wikivoyage.org + + + + Spanish language + Spanish + + + Idioma español + Español + + + スペイン語 + 西 + + + 에스파냐어 + + + + 西班牙语 + + + + + + + False + + + http://fr.wikivoyage.org + + + + French language + French + + + Französische Sprache + Französisch + + + Français + + + + フランス語 + 仏 + + + 프랑스어 + + + + 法语 + + + + + + + False + + + http://it.wikivoyage.org + + + + Italian language + Italian + + + Lingua italiana + Italiano + + + イタリア語 + 伊 + + + 이탈리아어 + + + + 意大利语 + + + + + + + False + + + http://nl.wikivoyage.org + + + + Niederländisch + + + + Dutch language + + + + オランダ語 + 蘭 + + + Nederlands + + + + + + + False + + + http://pl.wikivoyage.org + + + + Polish language + Polish + + + ポーランド語 + + + + Język polski + + + + + + + False + + + http://pt.wikivoyage.org + + + + Portuguese language + Portuguese + + + ポルトガル語 + 葡 + + + 포르투갈어 + + + + Língua portuguesa + Português + + + 葡萄牙語 + + + + + + + False + + + http://sv.wikivoyage.org + + + + Swedish language + Swedish + + + スウェーデン語 + 典 + + + Svenska + + + + + + + False + + + http://ro.wikivoyage.org + + + + Romanian language + Romanian + + + ルーマニア語 + + + + Limba română + română + + + + + + False + + + http://ru.wikivoyage.org + + + + Russian language + Russian + + + ロシア語 + 露 + + + 러시아어 + + + + Русский язык + Русский + + + 俄语 + + + + + + + False + + + + + \ No newline at end of file diff --git a/Wptscs/Wiktionary.xml b/Wptscs/Wiktionary.xml index 01e71d8..298142f 100644 --- a/Wptscs/Wiktionary.xml +++ b/Wptscs/Wiktionary.xml @@ -26,9 +26,6 @@ - - Vorlage:Dokumentation - {{lang|$1|$2}} @@ -63,9 +60,6 @@ - - Template:documentation - http://fr.wiktionary.org @@ -93,10 +87,8 @@ - /wiki/Sp%C3%A9cial:Exporter/$1 - http://ja.wiktionary.org @@ -121,12 +113,8 @@ ($1) - /wiki/%E7%89%B9%E5%88%A5:%E3%83%87%E3%83%BC%E3%82%BF%E6%9B%B8%E3%81%8D%E5%87%BA%E3%81%97/$1 - - テンプレート:Documentation - {{lang|$1|$2}} @@ -151,12 +139,8 @@ - /wiki/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:Export/$1 - - Шаблон:doc - http://zh.wiktionary.org @@ -180,13 +164,8 @@ - /wiki/Special:%E5%AF%BC%E5%87%BA%E9%A1%B5%E9%9D%A2/$1 - - Template:documentation - Template:doc - {{語|$1|$2}} diff --git a/Wptscs/Wptscs.csproj b/Wptscs/Wptscs.csproj index 642f65e..e70b171 100644 --- a/Wptscs/Wptscs.csproj +++ b/Wptscs/Wptscs.csproj @@ -90,7 +90,6 @@ - @@ -163,7 +162,7 @@ Always Designer - + Always diff --git a/Wptscs/app.config b/Wptscs/app.config index fd7fb34..bd0fda2 100644 --- a/Wptscs/app.config +++ b/Wptscs/app.config @@ -138,8 +138,8 @@ - - /wiki/Special:Export/$1 + + /w/api.php?action=query&prop=revisions&titles=$1&redirects&rvprop=timestamp|content&format=xml ($1) diff --git a/WptscsTest/Data/MediaWiki/en/Template_context.xml b/WptscsTest/Data/MediaWiki/en/Template_context.xml index 5c9618b..b73261b 100644 --- a/WptscsTest/Data/MediaWiki/en/Template_context.xml +++ b/WptscsTest/Data/MediaWiki/en/Template_context.xml @@ -1,63 +1,13 @@ - - - Wiktionary - http://en.wiktionary.org/wiki/Wiktionary:Main_Page - MediaWiki 1.18wmf1 - case-sensitive - - Media - Special - - Talk - User - User talk - Wiktionary - Wiktionary talk - File - File talk - MediaWiki - MediaWiki talk - Template - Template talk - Help - Help talk - Category - Category talk - Thread - Thread talk - Summary - Summary talk - Appendix - Appendix talk - Concordance - Concordance talk - Index - Index talk - Rhymes - Rhymes talk - Transwiki - Transwiki talk - Wikisaurus - Wikisaurus talk - Citations - Citations talk - Sign gloss - Sign gloss talk - - - - Template:context - 279373 - edit=sysop:move=sysop - - 13743405 - 2011-08-29T20:15:35Z - - Bequw - 36224 - - hopefully fix script2 - <includeonly><!-- + + + + + + + + + + <includeonly><!-- if not in a sub call, open paren, content span -->{{#if:{{{sub|}}}||<span class="ib-brac"><span class="qualifier-brac">(</span></span><span class="ib-content"><span class="qualifier-content">}}<!-- if label, generate it @@ -94,7 +44,9 @@ -->{{#ifeq:{{NAMESPACE}}{{{sub|}}}|{{ns:template}}|[[Category:{{ucfirst:{{{tcat|{{#if:{{{topcat|}}}|topical| {{#if:{{{poscat|}}}|usage| {{#if:{{{regcat|}}}|regional| -{{#ifeq:{{{1|}}}{{{2|}}}|_|qualifier}}}}}}}} }}} context labels}}|{{PAGENAME}}]]}}</includeonly><noinclude>{{documentation}}<noinclude> - - - +{{#ifeq:{{{1|}}}{{{2|}}}|_|qualifier}}}}}}}} }}} context labels}}|{{PAGENAME}}]]}}</includeonly><noinclude>{{documentation}}<noinclude> + + + + + \ No newline at end of file diff --git a/WptscsTest/Data/MediaWiki/en/example.xml b/WptscsTest/Data/MediaWiki/en/example.xml index 028a2ac..5ab4640 100644 --- a/WptscsTest/Data/MediaWiki/en/example.xml +++ b/WptscsTest/Data/MediaWiki/en/example.xml @@ -1,47 +1,13 @@ - - - Wikipedia - http://en.wikipedia.org/wiki/Main_Page - MediaWiki 1.16wmf4 - first-letter - - Media - Special - - Talk - User - User talk - Wikipedia - Wikipedia talk - File - File talk - MediaWiki - MediaWiki talk - Template - Template talk - Help - Help talk - Category - Category talk - Portal - Portal talk - Book - Book talk - - - - Example - 1646233 - - 373175932 - 2010-07-13T00:49:18Z - - Joshua Scott - 819997 - - - cleanup - [[File:Example.png|thumb|Wikipedia's example image. (Example.png)]] + + + + + + + + + + [[File:Example.png|thumb|Wikipedia's example image. (Example.png)]] {{wiktionary}} {{wikiquote}} '''Example''' may refer to: @@ -56,7 +22,9 @@ {{disambig}} [[fr:Example]] -[[ksh:Example (Watt ėßß datt?)]] - - - \ No newline at end of file +[[ksh:Example (Watt ėßß datt?)]] + + + + + \ No newline at end of file diff --git a/WptscsTest/Data/MediaWiki/ja/スペースシップツー.xml b/WptscsTest/Data/MediaWiki/ja/スペースシップツー.xml index 6b29f13..69419b7 100644 --- a/WptscsTest/Data/MediaWiki/ja/スペースシップツー.xml +++ b/WptscsTest/Data/MediaWiki/ja/スペースシップツー.xml @@ -1,44 +1,10 @@ - - - Wikipedia - http://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8 - MediaWiki 1.17wmf1 - first-letter - - メディア - 特別 - - ノート - 利用者 - 利用者‐会話 - Wikipedia - Wikipedia‐ノート - ファイル - ファイル‐ノート - MediaWiki - MediaWiki‐ノート - Template - Template‐ノート - Help - Help‐ノート - Category - Category‐ノート - Portal - Portal‐ノート - プロジェクト - プロジェクト‐ノート - - - - スペースシップツー - 1751498 - - 32113142 - 2010-05-16T01:47:15Z - - 59.84.93.2 - - {{Infobox 航空機 + + + + + + + {{Infobox 航空機 |名称 = スペースシップツー |画像 = ファイル:SS2 and VMS Eve.jpg |キャプション = @@ -89,7 +55,9 @@ [[ru:SpaceShipTwo]] [[sk:SpaceShipTwo]] [[sv:SpaceShipTwo]] -[[zh:太空船2号]] - - - +[[zh:太空船2号]] + + + + + \ No newline at end of file diff --git a/WptscsTest/Data/MediaWiki/result/config.xml b/WptscsTest/Data/MediaWiki/result/config.xml index 2f67e91e0a37b4200a59562f069dbf4df120a8e2..8e31b23f54b5debff44a1a16c52516aa514935a6 100644 GIT binary patch delta 571 zcmaF&gZac^<_#UJyv_{y40#MC45=V;a-oa-<^n$_#>orzsZ9=;&bIj$#}8a;HalF> zW8CZ{RK|wGkj)GBB`|K5lKminLjl~DS%!WbIMhH4@v!s2WeePpeeU0IITffTVzXaB z4?A8g5ZySjdJo)?HH*a^QJIl_LHf)TCdHeR8 z_uhQ(`+ncw8$WEgb9cj6?`>T0=xus~=4hTS&~Ykbe4UE4hu)$Zox`(-MreW@j3x3y z^JkiKmkv;&`LBd^W(U79^Aa7=^E^hUwPu)Hvhk7a7!Tn$h8^GTe<`zL0zA&pMVh55 z)xjlmS_7?4)1b`a4(FNH_~^687ZR?;zCqlrN~f{&BKC^}&VX{5hQZ8!Wvi#uFy!H? z9cn`5RDpJ>qiVN$Ub%|djs4QYF>HOlIIy$B@|e{_Ck7hJ*K&<7v&tXN-c6<@k47Qe z5{>C`9AlW`YWYVgywXrupAPY8DE!t1r9fUT1d{H$+8HaA_G?nrx0jyF_}@HqNmXMM zzXFF-&~cS6L+fSe3S5Pls^QH%o_eoBiA8b_AY(ASi21yRD?_cILB#Lcp?zpqCycdA zvymEN{_?d`8ULTHe{9|omSx}t{6808No95?605z7*;R148J1Kd^Ya$3^Qj#TFh)2- z`yO2%{%qkd4KJw`#lFCQXZLhpIYv(_ti+=?wVlkw+DRF}>u$gg#Mw5rjxfZooSl3P zGoFi$MBP7M@Gq)Asl!HRkVK-OnkiPLyQR$oDt8xE?HrO}^cAwJML2%o%eg2i=-|2$jejU6x{V?H7D4c{uDd8Z< z>!U$XcCBj=Y}iY)jSp`szj)+>>}$zTR&8R7)gv}9Ib3;-v9)Gib5`4Q;MMI({cl~p zrkL(0$M5tdN^(7&{5UXMPJ4Ltbo%N9$*&~2o;GeL7$sd|a~FyWTSC3|ARKFkZ=OO z>HS+OAp#i&QXClsGM)s1`2aRtUI~O;o$z}aRI;lSlwyV^2!szi3A_pR7@97zTWebc zO7!qAbqoq{y0x#JA}htaEj~N{RpY>8niqkSkb;nkK(=M zU2&sTcpv+x0?t^h4=DCy)Ldg?{*f7OGBQr|L2f1AM zoV`HS$U<|YwA$J?h7XrD9K@ra z+7UjdYdaS%uAerc1vKa%?4Qh}Y8HN*t_b9Qby)h+!H#x9c@6VygeYsIi!Jw(&UKKZ z9}AkSye)2#twT<$rQY2DQwadw(ktH|OCkjm3rz=t@5kk>+{P3tt%BE799;O6v^=DH u@99z~uPc-i(5^4EwfB1UEtfKMcHxY1C2>88h - /wiki/%D8%AE%D8%A7%D8%B5:%D8%AA%D8%B5%D8%AF%D9%8A%D8%B1/$1 - - قالب:توثيق - {{وإو|عر=$1|لغ=$2|تر=$3|نص=$4}} {{رمزلغة|$1|$2}} True @@ -48,10 +44,8 @@ - /wiki/%E0%A6%AC%E0%A6%BF%E0%A6%B6%E0%A7%87%E0%A6%B7:Export/$1 - True @@ -80,12 +74,8 @@ - /wiki/Spezial:Exportieren/$1 - - Vorlage:Dokumentation - {{Lang|$1|$2}} True @@ -157,10 +147,6 @@ - - Template:Documentation - Template:Doc - {{link-interwiki|en=$1|en_text=$4|lang=$2|lang_title=$3}} {{Lang|$1|$2}} True @@ -191,12 +177,8 @@ - /wiki/Especial:Exportar/$1 - - Plantilla:Documentación - {{Lang|$1|$2}} True @@ -226,12 +208,8 @@ - /wiki/Sp%C3%A9cial:Exporter/$1 - - Modèle:Documentation - {{Lien|fr=$1|lang=$2|trad=$3|texte=$4}} {{Lang|$1|$2}} True @@ -254,10 +232,8 @@ - /wiki/%E0%A4%B5%E0%A4%BF%E0%A4%B6%E0%A5%87%E0%A4%B7:Export/$1 - {{भाषा|$1|$2}} True @@ -287,12 +263,8 @@ - /wiki/Speciale:Esporta/$1 - - Template:Man - {{Lang|$1|$2}} True @@ -331,7 +303,6 @@ ($1) - /wiki/%E7%89%B9%E5%88%A5:%E3%83%87%E3%83%BC%E3%82%BF%E6%9B%B8%E3%81%8D%E5%87%BA%E3%81%97/$1 CURRENTYEAR CURRENTMONTH @@ -480,10 +451,6 @@ 親ページ名 - - Template:Documentation - Template:Doc - {{仮リンク|$1|$2|$3|label=$4}} {{Lang|$1|$2}} True @@ -510,12 +477,8 @@ - /wiki/%ED%8A%B9%EC%88%98%EA%B8%B0%EB%8A%A5:%EB%82%B4%EB%B3%B4%EB%82%B4%EA%B8%B0/$1 - - 틀:틀 설명문서 - {{Lang|$1|$2}} True @@ -541,12 +504,8 @@ - /wiki/Speciaal:Exporteren/$1 - - Sjabloon:Sjabdoc - {{Lang|$1|$2}} True @@ -568,12 +527,8 @@ - /wiki/Specjalna:Eksport/$1 - - Szablon:Dokumentacja - True @@ -602,12 +557,8 @@ - /wiki/Especial:Exportar/$1 - - Predefinição:Documentação - {{Lang|$1|$2}} True @@ -637,12 +588,8 @@ - /wiki/Служебная:Export/$1 - - Шаблон:Doc - {{Lang|$1|$2}} True @@ -664,10 +611,8 @@ - /wiki/%E0%B7%80%E0%B7%92%E0%B7%81%E0%B7%9A%E0%B7%82:%E0%B6%B1%E0%B7%92%E0%B6%BB%E0%B7%8A%E0%B6%BA%E0%B7%8F%E0%B6%AD%E0%B6%9A%E0%B6%BB%E0%B6%B1%E0%B7%8A%E0%B6%B1/$1 - True @@ -688,10 +633,8 @@ - /wiki/%E0%AE%9A%E0%AE%BF%E0%AE%B1%E0%AE%AA%E0%AF%8D%E0%AE%AA%E0%AF%81:Export/$1 - True @@ -716,12 +659,8 @@ - /wiki/Special:%E5%AF%BC%E5%87%BA%E9%A1%B5%E9%9D%A2/$1 - - 模板:Documentation - {{Lang|$1|$2}} True diff --git a/WptscsTest/Models/MockFactory.cs b/WptscsTest/Models/MockFactory.cs index c230bc1..7abff17 100644 --- a/WptscsTest/Models/MockFactory.cs +++ b/WptscsTest/Models/MockFactory.cs @@ -120,7 +120,7 @@ namespace Honememo.Wptscs.Models UriBuilder b = new UriBuilder("file", string.Empty); b.Path = Path.GetFullPath(MockFactory.TestMediaWikiDir) + "\\"; wiki.Location = new Uri(b.Uri, wiki.Language.Code + "/").ToString(); - wiki.ExportPath = "$1.xml"; + wiki.ContentApi = "$1.xml"; wiki.MetaApi = "_api.xml"; wiki.InterlanguageApi = "interlanguages/$1.xml"; } diff --git a/WptscsTest/Websites/MediaWikiPageTest.cs b/WptscsTest/Websites/MediaWikiPageTest.cs index 036ff3a..44806fe 100644 --- a/WptscsTest/Websites/MediaWikiPageTest.cs +++ b/WptscsTest/Websites/MediaWikiPageTest.cs @@ -31,7 +31,7 @@ namespace Honememo.Wptscs.Websites /// /// example.xmlのページ本文。 /// - private static readonly string exampleText + private static readonly string ExampleText = "[[File:Example.png|thumb|Wikipedia's example image. (Example.png)]]\n{{wiktionary}}\n{{wikiquote}}\n" + "'''Example''' may refer to:\n\n*[[Example (rapper)]], a British rapper\n*[[example.com]], " + "[[example.net]], [[example.org]] and [[.example]], domain names reserved for use in documentation " @@ -42,7 +42,7 @@ namespace Honememo.Wptscs.Websites /// /// example.xmlのページ本文。 /// - private static readonly DateTime exampleTimestamp = DateTime.Parse("2010-07-13T00:49:18Z"); + private static readonly DateTime ExampleTimestamp = DateTime.Parse("2010-07-13T00:49:18Z"); #endregion @@ -58,18 +58,18 @@ namespace Honememo.Wptscs.Websites // 同時にタイムスタンプ, URIも設定される // ※ 異常系については、MediaWiki側の実装なのでそちらでテストする MediaWiki site = new MockFactory().GetMediaWiki("en"); - Uri uri = new Uri(new Uri(site.Location), StringUtils.FormatDollarVariable(site.ExportPath, "example")); + Uri uri = new Uri(new Uri(site.Location), StringUtils.FormatDollarVariable(site.ContentApi, "example")); MediaWikiPageMock page = new MediaWikiPageMock(site, "example"); Assert.IsNull(page.Uri); - Assert.AreEqual(MediaWikiPageTest.exampleText, page.Text); - Assert.AreEqual(MediaWikiPageTest.exampleTimestamp, page.Timestamp); + Assert.AreEqual(MediaWikiPageTest.ExampleText, page.Text); + Assert.AreEqual(MediaWikiPageTest.ExampleTimestamp, page.Timestamp); Assert.AreEqual(uri, page.Uri); // 一度読み込むと、次回以降はその値が設定されている page.Title = "new name"; - Assert.AreEqual(MediaWikiPageTest.exampleText, page.Text); - Assert.AreEqual(MediaWikiPageTest.exampleTimestamp, page.Timestamp); + Assert.AreEqual(MediaWikiPageTest.ExampleText, page.Text); + Assert.AreEqual(MediaWikiPageTest.ExampleTimestamp, page.Timestamp); // 値が設定されている状態では、設定された値が返る page = new MediaWikiPageMock(site, "example"); @@ -88,18 +88,18 @@ namespace Honememo.Wptscs.Websites // 同時にページ本文, URIも設定される // ※ 異常系については、MediaWiki側の実装なのでそちらでテストする MediaWiki site = new MockFactory().GetMediaWiki("en"); - Uri uri = new Uri(new Uri(site.Location), StringUtils.FormatDollarVariable(site.ExportPath, "example")); + Uri uri = new Uri(new Uri(site.Location), StringUtils.FormatDollarVariable(site.ContentApi, "example")); MediaWikiPageMock page = new MediaWikiPageMock(site, "example"); Assert.IsNull(page.Uri); - Assert.AreEqual(MediaWikiPageTest.exampleTimestamp, page.Timestamp); - Assert.AreEqual(MediaWikiPageTest.exampleText, page.Text); + Assert.AreEqual(MediaWikiPageTest.ExampleTimestamp, page.Timestamp); + Assert.AreEqual(MediaWikiPageTest.ExampleText, page.Text); Assert.AreEqual(uri, page.Uri); // 一度読み込むと、次回以降はその値が設定されている page.Title = "new name"; - Assert.AreEqual(MediaWikiPageTest.exampleTimestamp, page.Timestamp); - Assert.AreEqual(MediaWikiPageTest.exampleText, page.Text); + Assert.AreEqual(MediaWikiPageTest.ExampleTimestamp, page.Timestamp); + Assert.AreEqual(MediaWikiPageTest.ExampleText, page.Text); // 値が設定されている状態では、設定された値が返る page = new MediaWikiPageMock(site, "example"); @@ -339,7 +339,6 @@ namespace Honememo.Wptscs.Websites #region 非公開プロパティテスト用のオーラーライドプロパティ - /// /// ページタイトル。 /// diff --git a/WptscsTest/Websites/MediaWikiTest.cs b/WptscsTest/Websites/MediaWikiTest.cs index 15f0e60..cd4bac2 100644 --- a/WptscsTest/Websites/MediaWikiTest.cs +++ b/WptscsTest/Websites/MediaWikiTest.cs @@ -36,12 +36,10 @@ namespace Honememo.Wptscs.Websites /// private static readonly string TestXml = "http://ja.wikipedia.org" + "" - + "_api.xml/export/$1/interlanguage/$1.xml" + + "_api.xml/export/$1/interlanguage/$1.xml" + "100101200" + "特別マジックワード" + "外部ウィキニュース" - + "Template:ドキュメント" - + "テンプレート:Doc" + "{{仮リンク|$1|$2|$3|label=$4}}" + "{{Lang|$1|$2}}" + "True"; @@ -129,25 +127,31 @@ namespace Honememo.Wptscs.Websites } /// - /// プロパティテストケース。 + /// プロパティテストケース。 /// [TestMethod] - public void TestExportPath() + public void TestContentApi() { MediaWiki site = new MediaWiki(new Language("ja")); // デフォルトでは設定ファイルの値が返される - Assert.AreEqual("/wiki/Special:Export/$1", site.ExportPath); + Assert.AreEqual( + "/w/api.php?action=query&prop=revisions&titles=$1&redirects&rvprop=timestamp|content&format=xml", + site.ContentApi); // 値を設定するとその値が返る - site.ExportPath = "test"; - Assert.AreEqual("test", site.ExportPath); + site.ContentApi = "test"; + Assert.AreEqual("test", site.ContentApi); // 空またはnullの場合、再び設定ファイルの値が入る - site.ExportPath = null; - Assert.AreEqual("/wiki/Special:Export/$1", site.ExportPath); - site.ExportPath = string.Empty; - Assert.AreEqual("/wiki/Special:Export/$1", site.ExportPath); + site.ContentApi = null; + Assert.AreEqual( + "/w/api.php?action=query&prop=revisions&titles=$1&redirects&rvprop=timestamp|content&format=xml", + site.ContentApi); + site.ContentApi = string.Empty; + Assert.AreEqual( + "/w/api.php?action=query&prop=revisions&titles=$1&redirects&rvprop=timestamp|content&format=xml", + site.ContentApi); } /// @@ -301,49 +305,6 @@ namespace Honememo.Wptscs.Websites #region それ以外のプロパティテストケース /// - /// プロパティテストケース。 - /// - [TestMethod] - public void TestDocumentationTemplates() - { - MediaWiki site = new MediaWiki(new Language("ja")); - - // デフォルトでは空 - Assert.IsNotNull(site.DocumentationTemplates); - Assert.AreEqual(0, site.DocumentationTemplates.Count); - - // 値を設定するとそのオブジェクトが返る - string[] templates = new string[] { "Template:Documentation" }; - site.DocumentationTemplates = templates; - Assert.AreEqual(1, site.DocumentationTemplates.Count); - Assert.AreEqual("Template:Documentation", site.DocumentationTemplates[0]); - Assert.AreSame(templates, site.DocumentationTemplates); - - // nullを設定すると初期化 - site.DocumentationTemplates = null; - Assert.IsNotNull(site.DocumentationTemplates); - Assert.AreEqual(0, site.DocumentationTemplates.Count); - } - - /// - /// プロパティテストケース。 - /// - [TestMethod] - public void TestDocumentationTemplateDefaultPage() - { - MediaWiki site = new MediaWiki(new Language("ja")); - - // デフォルトでは空 - Assert.AreEqual(string.Empty, StringUtils.DefaultString(site.DocumentationTemplateDefaultPage)); - - // 値を設定するとその値が返る - site.DocumentationTemplateDefaultPage = "/doc"; - Assert.AreEqual("/doc", site.DocumentationTemplateDefaultPage); - site.DocumentationTemplateDefaultPage = null; - Assert.AreEqual(string.Empty, StringUtils.DefaultString(site.DocumentationTemplateDefaultPage)); - } - - /// /// プロパティテストケース。 /// [TestMethod] @@ -454,34 +415,6 @@ namespace Honememo.Wptscs.Websites } /// - /// メソッドテストケース(末尾ピリオド)。 - /// - [TestMethod] - [ExpectedException(typeof(EndPeriodException))] - public void TestGetPageBodyAndTimestampAboutEndPeriodException() - { - // ピリオドで終わるページは2012年現在処理できないため、 - // 暫定対応として例外を投げる - // ※ httpでページ名が末尾に来るパスになるよう設定 - // 処理の都合上、このテストはサーバーに接続しています - new MediaWiki(new Language("en")).GetPageBodyAndTimestamp("Vulcan Inc."); - } - - /// - /// メソッドテストケース(末尾クエッションマーク)。 - /// - [TestMethod] - [ExpectedException(typeof(EndPeriodException))] - public void TestGetPageBodyAndTimestampAboutEndPeriodExceptionByQuestion() - { - // ?で終わるページも2012年現在処理できないため、 - // 暫定対応として例外を投げる - // ※ httpでページ名が末尾に来るパスになるよう設定 - // 処理の都合上、このテストはサーバーに接続しています - new MediaWiki(new Language("en")).GetPageBodyAndTimestamp("How does one patch KDE2 under FreeBSD?"); - } - - /// /// メソッドテストケース。 /// [TestMethod] @@ -627,8 +560,6 @@ namespace Honememo.Wptscs.Websites Assert.IsNotNull(site); Assert.AreEqual("http://ja.wikipedia.org", site.Location); Assert.AreEqual("ja", site.Language.Code); - Assert.AreEqual(0, site.DocumentationTemplates.Count); - Assert.AreEqual(string.Empty, StringUtils.DefaultString(site.DocumentationTemplateDefaultPage)); Assert.AreEqual(string.Empty, StringUtils.DefaultString(site.LinkInterwikiFormat)); Assert.AreEqual(string.Empty, StringUtils.DefaultString(site.LangFormat)); Assert.IsFalse(site.HasLanguagePage); @@ -637,7 +568,7 @@ namespace Honememo.Wptscs.Websites // ※ Namespacesは空の場合サーバーからデフォルト値を取得するため、ここではテストしない // ※ InterwikiPrefixsのgetは常にサーバーからも値を取得するため、ここではテストしない Assert.AreEqual("/w/api.php?format=xml&action=query&meta=siteinfo&siprop=namespaces|namespacealiases|interwikimap", site.MetaApi); - Assert.AreEqual("/wiki/Special:Export/$1", site.ExportPath); + Assert.AreEqual("/w/api.php?action=query&prop=revisions&titles=$1&redirects&rvprop=timestamp|content&format=xml", site.ContentApi); Assert.AreEqual("/w/api.php?action=query&prop=langlinks&titles=$1&redirects=&lllimit=500&format=xml", site.InterlanguageApi); Assert.AreEqual(10, site.TemplateNamespace); Assert.AreEqual(14, site.CategoryNamespace); @@ -655,7 +586,7 @@ namespace Honememo.Wptscs.Websites Assert.AreEqual("http://ja.wikipedia.org", site.Location); Assert.AreEqual("ja", site.Language.Code); Assert.AreEqual("_api.xml", site.MetaApi); - Assert.AreEqual("/export/$1", site.ExportPath); + Assert.AreEqual("/export/$1", site.ContentApi); Assert.AreEqual("/interlanguage/$1.xml", site.InterlanguageApi); Assert.AreEqual(100, site.TemplateNamespace); Assert.AreEqual(101, site.CategoryNamespace); @@ -663,10 +594,6 @@ namespace Honememo.Wptscs.Websites Assert.AreEqual(2, site.MagicWords.Count); Assert.IsTrue(site.MagicWords.Contains("特別")); Assert.IsTrue(site.MagicWords.Contains("マジックワード")); - Assert.AreEqual(2, site.DocumentationTemplates.Count); - Assert.IsTrue(site.DocumentationTemplates.Contains("Template:ドキュメント")); - Assert.IsTrue(site.DocumentationTemplates.Contains("テンプレート:Doc")); - Assert.AreEqual("/サブページ", site.DocumentationTemplateDefaultPage); Assert.AreEqual("{{仮リンク|$1|$2|$3|label=$4}}", site.LinkInterwikiFormat); Assert.AreEqual("{{Lang|$1|$2}}", site.LangFormat); Assert.IsTrue(site.HasLanguagePage); @@ -693,22 +620,20 @@ namespace Honememo.Wptscs.Websites Assert.AreEqual( "http://ja.wikipedia.org" - + "" - + "" + + "" + + "" + "False", b.ToString()); // プロパティに値が設定された場合の出力 site.MetaApi = "_api.xml"; - site.ExportPath = "/export/$1"; + site.ContentApi = "/export/$1"; site.InterlanguageApi = "/interlanguage/$1.xml"; site.TemplateNamespace = 100; site.CategoryNamespace = 101; site.FileNamespace = 200; site.MagicWords = new HashSet(new string[] { "特別", "マジックワード" }); site.InterwikiPrefixs = new IgnoreCaseSet(new string[] { "外部ウィキ", "ニュース" }); - site.DocumentationTemplates = new string[] { "Template:ドキュメント", "テンプレート:Doc" }; - site.DocumentationTemplateDefaultPage = "/サブページ"; site.LinkInterwikiFormat = "{{仮リンク|$1|$2|$3|label=$4}}"; site.LangFormat = "{{Lang|$1|$2}}"; site.HasLanguagePage = true; -- 2.11.0