View Single Post
Old 07-11-2018, 12:25 PM   #7
DiapDealer
Grand Sorcerer
DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.
 
DiapDealer's Avatar
 
Posts: 28,715
Karma: 205039118
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
Quote:
Originally Posted by BeckyEbook View Post
Thank you.
I admit that this poll was simply to show the problem for @KevinH and @DiapDialer (apart issue 346).

But please consider another solution too.

Only four or five contexts (37 short translations) are missing in the .ts file:
  • QLineEdit
  • QPlatformTheme
  • QMessageBox
  • QWidgetTextControl
  • and optionally QUnicodeControlCharacterMenu (11 short translations)

Including these 37/48 short translations to base.ts makes Sigil's translation from Qt independent.

Spoiler:
Code:
<context>
    <name>QLineEdit</name>
    <message>
        <source>Cu&amp;t</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>&amp;Copy</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>&amp;Redo</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>&amp;Undo</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>&amp;Paste</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Delete</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Select All</source>
        <translation type="unfinished"></translation>
    </message>
</context>
<context>
    <name>QPlatformTheme</name>
    <message>
        <source>OK</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>&amp;No</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>&amp;Yes</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Help</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Open</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Save</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Abort</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Apply</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Close</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Reset</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Retry</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Restore Defaults</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Cancel</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Ignore</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>N&amp;o to All</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Save All</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Discard</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Yes to &amp;All</source>
        <translation type="unfinished"></translation>
    </message>
</context>
<context>
    <name>QMessageBox</name>
    <message>
        <source>OK</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Help</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Show Details...</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Hide Details...</source>
        <translation type="unfinished"></translation>
    </message>
</context>
<context>
    <name>QWidgetTextControl</name>
    <message>
        <source>Cu&amp;t</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>&amp;Copy</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>&amp;Redo</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>&amp;Undo</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>&amp;Paste</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Delete</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Select All</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Copy &amp;Link Location</source>
        <translation type="unfinished"></translation>
    </message>
</context>
<context>
    <name>QUnicodeControlCharacterMenu</name>
    <message>
        <source>RLE Start of right-to-left embedding</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>ZWSP Zero width space</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>Insert Unicode control character</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>LRO Start of left-to-right override</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>LRE Start of left-to-right embedding</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>RLM Right-to-left mark</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>PDF Pop directional formatting</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>ZWNJ Zero width non-joiner</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>RLO Start of right-to-left override</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>ZWJ Zero width joiner</source>
        <translation type="unfinished"></translation>
    </message>
    <message>
        <source>LRM Left-to-right mark</source>
        <translation type="unfinished"></translation>
    </message>
</context>
In short (unless Kevin convinces me otherwise): no.

Generating Sigil's base.ts file is an automated process. We generate the .ts files, upload to Transifex, wait for translation, download and ultimately ... automatically compile to the various .qm files. Other than running the generation command, translation is basically a hands-off process for us. And I'd like to keep it that way.

I'm sorry, but I'm not really amenable to having to manually diddle (or remember to run an extra process on) base.ts after it's generated to insert a list of non-Sigil strings (a list that will likely need to be curated over time) before each Sigil release. Sigil translates Sigil, Qt translates Qt.

Last edited by DiapDealer; 07-11-2018 at 12:28 PM.
DiapDealer is offline   Reply With Quote