Update version, translation fixes

This commit is contained in:
Georgy Litvinov 2020-05-18 17:16:20 +02:00
parent ba938c7ef4
commit a8f91c44c4
8 changed files with 81 additions and 42 deletions

View file

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Clean" script:language="StarBasic">Sub mark53
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Clean" script:language="StarBasic">Sub mark54
End Sub
@ -367,6 +367,8 @@ Private Sub removeUserPageStyles
End Sub
Private Sub fixFrequentMistakes
Dim config As Object
config = initRedactionConfiguration()
Dim NBSP As String
Dim space As String
NBSP = &quot; &quot;
@ -383,48 +385,51 @@ Private Sub fixFrequentMistakes
AskAndReplace(&quot;^$&quot;,&quot;&quot;)
&apos;Не должно быть пробелов перед знаками пунктуации .,;:?!)]}»¡¿”‘’
AskAndReplace(&quot;[:space:]+(?=[\.,;:?!\)\]\}»¡¿”‘’])&quot;,&quot;&quot;)
&apos;Между словом том и цифрой должен быть неразрывный пробел, а не обычный
AskAndReplace(&quot;(?&lt;=\b[тТ](ом|\.))\ (?=[:digit:])&quot;,NBSP)
&apos;Между словом серия и цифрой должен быть неразрывный пробел, а не обычный
AskAndReplace(&quot;(?&lt;=\b[сС](ерия|\.))\ +(?=[:digit:])&quot;,NBSP)
&apos;Между словом часть и цифрой должен быть неразрывный пробел, а не обычный
AskAndReplace(&quot;(?&lt;=\b[чЧ](асть|\.))\ +(?=[:digit:])&quot;,NBSP)
&apos;Между числом и &quot;г.&quot; должен быть неразрывный пробел, а не обычный
AskAndReplace(&quot;(?&lt;=[0-9])[:space:]*г(?=\.)&quot;,NBSP &amp; &quot;г&quot;)
&apos;Между инициалами и Фамилией должен быть неразрывный пробел, а не обычный
&apos;А.[м/б пробел]А.Иванов -&gt; А.[м/б пробел]А. Иванов
AskAndReplace(&quot;(?&lt;=[:upper:]\.[:space:]?[:upper:])\.[:space:]?(?=[:upper:][:lower:]{1,30})&quot;,&quot;.&quot; &amp; NBSP)
&apos; А.[пробел]А.Иванов -&gt; А.А. Иванов
AskAndReplace(&quot;(?&lt;=[:upper:])\.[:space:](?=[:upper:]\.[:space:][:upper:][:lower:]{1,30})&quot;,&quot;.&quot;)
&apos;Между Фамилией и инициалами должен быть неразрывный пробел, а не обычный
&apos;Иванов А.[м/б пробел]А. -&gt; Иванов А.А.
AskAndReplace(&quot;(?&lt;=[:upper:][:lower:]{1,30}[:space:][:upper:])\.[:space:]?(?=[:upper:]\.)&quot;,&quot;.&quot;)
&apos;Не должно быть пробелов после скобок [({ и кавычек «„
&apos;Не должно быть пробелов после скобок [({ и кавычек «„
AskAndReplace(&quot;(?&lt;=[\(\[\{«„])[:space:]&quot;,&quot;&quot;)
&apos;Между &quot;и&quot; и &quot;т.&quot; должен быть неразрывный пробел, а не обычный
AskAndReplace(&quot;(?&lt;=\bи)\ (?=т\.)&quot;,NBSP)
&apos;Между &quot;т.&quot; и &quot;е./н./д./п./к.&quot; не должно быть пробела
AskAndReplace(&quot;(?&lt;=\bт)\.[:space:]?(?=[ендпк]\.)&quot;,&quot;.&quot;)
&apos;Между буквами среднее тире должно обрамляться пробелами
&apos;Между буквами среднее тире должно обрамляться пробелами
AskAndReplace(&quot;(?&lt;=[:alpha:])(?=[:alpha:])&quot;,NBSP &amp; &quot;&quot; &amp; NBSP)
&apos;Между буквами дефис-минус, цифровое тире и длинное тире заменяется на среднее тире
AskAndReplace(&quot;(?&lt;=[:alpha:][:space:])[-‒—](?=[:space:][:alpha:])&quot;,&quot;&quot;)
&apos;Между двумя цифрами и тире между ними не долнжо быть пробелов. А также тире должно быть цифровым
AskAndReplace(&quot;(?&lt;=[:digit:])(?:[:space:])?[-‒–—](?:[:space:])?(?=[:digit:])&quot;,&quot;&quot;)
AskAndReplace(&quot;(?&lt;=[:digit:])(?:[:space:])?[-‒–—](?:[:space:])?(?=[:digit:])&quot;,&quot;&quot;)
&apos;Между двумя римскими цифрами и тире между ними не долнжо быть пробелов. А также тире должно быть средним
AskAndReplace(&quot;(?&lt;=[MDCLXVI])(?:[:space:])?[-‒–—](?:[:space:])?(?=[MDCLXVI])&quot;,&quot;&quot;)
&apos;Между буквой и угловой открывающейся скобкой должен быть пробел
AskAndReplace(&quot;(?&lt;=[:alpha:])&lt;(?=…&gt;)&quot;,space &amp; &quot;&lt;&quot;)
&apos;Между угловой закрывающейся скобкой и буквой должен быть пробел
AskAndReplace(&quot;(?&lt;=&lt;…)&gt;(?=[:alpha:])&quot;,&quot;&gt;&quot; &amp; space)
AskAndReplace(&quot;[ий][\u0306]+&quot;,&quot;й&quot;)
AskAndReplace(&quot;[ИЙ][\u0306]+&quot;,&quot;Й&quot;)
AskAndReplace(&quot;[её][\u0308]+&quot;,&quot;ё&quot;)
AskAndReplace(&quot;[ЕЁ][\u0308]+&quot;,&quot;Ё&quot;)
AskAndReplace(&quot;(?&lt;=&lt;…)&gt;(?=[:alpha:])&quot;,&quot;&gt;&quot; &amp; space)
If config.getPropertyValue(&quot;fixes_russian_iph&quot;) = &quot;true&quot; Then
&apos;между N. Y. не должно быть пробела
AskAndReplace(&quot;(?&lt;=N\.)[:space:](?=Y\.)&quot;,&quot;&quot;)
&apos;Между словом том и цифрой должен быть неразрывный пробел, а не обычный
AskAndReplace(&quot;(?&lt;=\b[тТ](ом|\.))\ (?=[:digit:])&quot;,NBSP)
&apos;Между словом серия и цифрой должен быть неразрывный пробел, а не обычный
AskAndReplace(&quot;(?&lt;=\b[сС](ерия|\.))\ +(?=[:digit:])&quot;,NBSP)
&apos;Между словом часть и цифрой должен быть неразрывный пробел, а не обычный
AskAndReplace(&quot;(?&lt;=\b[чЧ](асть|\.))\ +(?=[:digit:])&quot;,NBSP)
&apos;Между числом и &quot;г.&quot; должен быть неразрывный пробел, а не обычный
AskAndReplace(&quot;(?&lt;=[0-9])[:space:]*г(?=\.)&quot;,NBSP &amp; &quot;г&quot;)
&apos;Между инициалами и Фамилией должен быть неразрывный пробел, а не обычный
&apos;А.[м/б пробел]А.Иванов -&gt; А.[м/б пробел]А. Иванов
AskAndReplace(&quot;(?&lt;=[:upper:]\.[:space:]?[:upper:])\.[:space:]?(?=[:upper:][:lower:]{1,30})&quot;,&quot;.&quot; &amp; NBSP)
&apos; А.[пробел]А.Иванов -&gt; А.А. Иванов
AskAndReplace(&quot;(?&lt;=[:upper:])\.[:space:](?=[:upper:]\.[:space:][:upper:][:lower:]{1,30})&quot;,&quot;.&quot;)
&apos;Между Фамилией и инициалами должен быть неразрывный пробел, а не обычный
&apos;Иванов А.[м/б пробел]А. -&gt; Иванов А.А.
AskAndReplace(&quot;(?&lt;=[:upper:][:lower:]{1,30}[:space:][:upper:])\.[:space:]?(?=[:upper:]\.)&quot;,&quot;.&quot;)
&apos;Между &quot;и&quot; и &quot;т.&quot; должен быть неразрывный пробел, а не обычный
AskAndReplace(&quot;(?&lt;=\bи)\ (?=т\.)&quot;,NBSP)
&apos;Между &quot;т.&quot; и &quot;е./н./д./п./к.&quot; не должно быть пробела
AskAndReplace(&quot;(?&lt;=\bт)\.[:space:]?(?=[ендпк]\.)&quot;,&quot;.&quot;)
AskAndReplace(&quot;[ий][\u0306]+&quot;,&quot;й&quot;)
AskAndReplace(&quot;[ИЙ][\u0306]+&quot;,&quot;Й&quot;)
AskAndReplace(&quot;[её][\u0308]+&quot;,&quot;ё&quot;)
AskAndReplace(&quot;[ЕЁ][\u0308]+&quot;,&quot;Ё&quot;)
EndIf
End Sub
Private Sub loadArticleStyles

View file

@ -1,10 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dlg:window PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "dialog.dtd">
<dlg:window xmlns:dlg="http://openoffice.org/2000/dialog" xmlns:script="http://openoffice.org/2000/script" dlg:id="ConfigDialog" dlg:left="196" dlg:top="109" dlg:width="157" dlg:height="64" dlg:help-text="&amp;23.ConfigDialog.HelpText" dlg:closeable="true" dlg:moveable="true" dlg:title="&amp;24.ConfigDialog.Title">
<dlg:window xmlns:dlg="http://openoffice.org/2000/dialog" xmlns:script="http://openoffice.org/2000/script" dlg:id="ConfigDialog" dlg:left="196" dlg:top="109" dlg:width="157" dlg:height="103" dlg:help-text="&amp;23.ConfigDialog.HelpText" dlg:closeable="true" dlg:moveable="true" dlg:title="&amp;24.ConfigDialog.Title">
<dlg:bulletinboard>
<dlg:checkbox dlg:id="CB_complexity" dlg:tab-index="0" dlg:left="5" dlg:top="13" dlg:width="150" dlg:height="19" dlg:value="Включить режим эксперта" dlg:checked="false"/>
<dlg:button dlg:id="OK" dlg:tab-index="1" dlg:left="9" dlg:top="45" dlg:width="59" dlg:height="13" dlg:value="Сохранить" dlg:button-type="ok"/>
<dlg:checkbox dlg:id="CB_complexity" dlg:tab-index="0" dlg:left="5" dlg:top="13" dlg:width="150" dlg:height="11" dlg:value="Включить режим эксперта" dlg:checked="false"/>
<dlg:button dlg:id="OK" dlg:tab-index="1" dlg:left="15" dlg:top="85" dlg:width="59" dlg:height="13" dlg:value="Сохранить" dlg:button-type="ok"/>
<dlg:button dlg:id="CommandButton1" dlg:tab-index="2" dlg:left="-132" dlg:top="41" dlg:width="2" dlg:height="0" dlg:value="CommandButton1"/>
<dlg:button dlg:id="CANCEL" dlg:tab-index="3" dlg:left="77" dlg:top="45" dlg:width="59" dlg:height="13" dlg:value="Отмена" dlg:button-type="cancel"/>
<dlg:button dlg:id="CANCEL" dlg:tab-index="3" dlg:left="83" dlg:top="85" dlg:width="59" dlg:height="13" dlg:value="Отмена" dlg:button-type="cancel"/>
<dlg:checkbox dlg:id="cb_russian_fixes_iph" dlg:tab-index="4" dlg:left="5" dlg:top="26" dlg:width="150" dlg:height="11" dlg:value="Исправления для института философии" dlg:checked="true"/>
</dlg:bulletinboard>
</dlg:window>

View file

@ -13,6 +13,7 @@ Function initRedactionConfiguration()
reg = regFactory.createPropertySetRegistry(redactionExtensionName)
redactionProps = reg.openPropertySet(redactionExtensionName, TRUE)
redactionProps.addProperty(&quot;fixes_russian_iph&quot;, 128, &quot;true&quot;)
redactionProps.addProperty(&quot;complexity&quot;, 128, &quot;user&quot;)
exceptionHandler:
Resume Next
@ -26,11 +27,19 @@ End Function
Private Sub setConfigFromDialog(dialog As Object)
Dim config As Object
config = initRedactionConfiguration()
If dialog.getControl(&quot;CB_complexity&quot;).state = 1 Then
config.setPropertyValue(&quot;complexity&quot;, &quot;makerUp&quot;)
Else
config.setPropertyValue(&quot;complexity&quot;, &quot;user&quot;)
EndIf
If dialog.getControl(&quot;cb_russian_fixes_iph&quot;).state = 1 Then
config.setPropertyValue(&quot;fixes_russian_iph&quot;, &quot;true&quot;)
Else
config.setPropertyValue(&quot;fixes_russian_iph&quot;, &quot;false&quot;)
EndIf
End Sub
Private Sub loadConfigToDialog(dialog As Object)
@ -41,6 +50,13 @@ Private Sub loadConfigToDialog(dialog As Object)
Else
dialog.getControl(&quot;CB_complexity&quot;).state = 0
EndIf
If config.getPropertyValue(&quot;fixes_russian_iph&quot;) = &quot;true&quot; Then
dialog.getControl(&quot;cb_russian_fixes_iph&quot;).state = 1
Else
dialog.getControl(&quot;cb_russian_fixes_iph&quot;).state = 0
EndIf
End Sub
@ -50,6 +66,7 @@ Private Sub configurationDialog
dialog = CreateUnoDialog(DialogLibraries.Redaction.ConfigDialog)
loadConfigToDialog(dialog)
dialog.getControl(&quot;CB_complexity&quot;).Label = getTranslation(&quot;dialogConfigComplexity&quot;)
dialog.getControl(&quot;cb_russian_fixes_iph&quot;).Label = getTranslation(&quot;dialogRussianFixesIPH&quot;)
dialog.Title = getTranslation(&quot;dialogConfigTitle&quot;)
dialog.getControl(&quot;OK&quot;).Label = getTranslation(&quot;buttonYes&quot;)
dialog.getControl(&quot;CANCEL&quot;).Label = getTranslation(&quot;buttonStop&quot;)

View file

@ -200,6 +200,9 @@ Function getRussian(identifier As String) As String
Case &quot;dialogConfigTitle&quot;
getRussian = &quot;Настройка чистки и проверки&quot;
Exit Function
Case &quot;dialogRussianFixesIPH&quot;
getRussian = &quot;Исправления для текстов на русском&quot;
Exit Function
Case Else
getRussian = &quot;Перевод не найден&quot;
End Select
@ -263,8 +266,8 @@ Function getEnglish(identifier As String) As String
getEnglish = &quot;Remove page break at document start&quot;
Exit Function
Case &quot;advancedMenuFixMistakes&quot;
getEnglish = &quot;Remove frequent mistakes&quot;
Exit Function
getEnglish = &quot;Fix frequent mistakes&quot;
Exit Function
Case &quot;advancedMenuConfigAnchors&quot;
getEnglish = &quot;Configure image anchors for digital publications&quot;
Exit Function
@ -382,6 +385,9 @@ Function getEnglish(identifier As String) As String
Case &quot;dialogConfigTitle&quot;
getEnglish = &quot;Clean and validation configuration&quot;
Exit Function
Case &quot;dialogRussianFixesIPH&quot;
getEnglish = &quot;Corrections for texts in Russian&quot;
Exit Function
Case Else
getEnglish = &quot;No translation&quot;
End Select
@ -563,6 +569,9 @@ Function getCroatian(identifier As String) As String
Case &quot;dialogConfigTitle&quot;
getCroatian = &quot;Podešavanje čišćenja i provjere&quot;
Exit Function
Case &quot;dialogRussianFixesIPH&quot;
getCroatian = &quot;Ispravci za tekstove na ruskom&quot;
Exit Function
Case Else
getCroatian = &quot;No translation&quot;
End Select
@ -744,6 +753,9 @@ Function getSerbian(identifier As String) As String
Case &quot;dialogConfigTitle&quot;
getSerbian = &quot;Подешавање чишћења и провере&quot;
Exit Function
Case &quot;dialogRussianFixesIPH&quot;
getSerbian = &quot;Исправци за текстове на руском&quot;
Exit Function
Case Else
getSerbian = &quot;No translation&quot;
End Select
@ -925,6 +937,9 @@ Function getBosnian(identifier As String) As String
Case &quot;dialogConfigTitle&quot;
getBosnian = &quot;Podešavanje čišćenja i provjere&quot;
Exit Function
Case &quot;dialogRussianFixesIPH&quot;
getBosnian = &quot;Ispravci za tekstove na ruskom&quot;
Exit Function
Case Else
getBosnian = &quot;No translation&quot;
End Select

View file

@ -2,9 +2,9 @@
<description xmlns="http://openoffice.org/extensions/update/2006"
xmlns:xlink="http://www.w3.org/1999/xlink">
<identifier value="pro.litvinovg.Redaction"/>
<version value="0.7.11" />
<version value="0.7.12" />
<update-download>
<src xlink:href="https://dev.litvinovg.pro/litvinovg/cleanandvalidate/uploads/c7c134f3d5167364318cf4b1620799af/cleanAndValidate.oxt" />
<src xlink:href="https://dev.litvinovg.pro/litvinovg/cleanandvalidate/uploads/ad227288b530f44b8c9b481c54ae9b20/cleanAndValidate.oxt" />
</update-download>
<release-notes>
<src xlink:href="https://dev.litvinovg.pro/litvinovg/cleanandvalidate/-/raw/master/releasenotes.txt" lang="en" />

View file

@ -3,7 +3,7 @@
xmlns:dep="http://openoffice.org/extensions/description/2006"
xmlns:xlink="http://www.w3.org/1999/xlink">
<identifier value="pro.litvinovg.Redaction" />
<version value="0.7.11" />
<version value="0.7.12" />
<platform value="all" />
<display-name>
<name lang="en">Cleaning and validation documents for publishing in html and epub with pagination</name>

View file

@ -1,3 +1,4 @@
0.7.12 Transaltions update, fix for mistakes added
0.7.11 Serbian, Croatian, Bosnian translations added
0.7.9 Translations improved
0.7.5 Small fix for frequent mistakes macro

Binary file not shown.