[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-panel-devel
Subject:    D10219: Load translations from KPackage files if bundled
From:       Chris Holland <noreply () phabricator ! kde ! org>
Date:       2018-02-01 0:01:36
Message-ID: 20180201000136.1.D8AADDA987972D3F () phabricator ! kde ! org
[Download RAW message or body]

Zren created this revision.
Zren added a reviewer: Plasma.
Restricted Application added a project: Plasma.
Restricted Application added a subscriber: plasma-devel.
Zren requested review of this revision.

REVISION SUMMARY
  Based on https://phabricator.kde.org/D5209, which adds this feature to \
plasma-framework.  
  -----
  
  https://phabricator.kde.org/D5209

TEST PLAN
  Assuming `/usr/share/locale/fr/LC_MESSAGES/plasma_applet_org.kde.plasma.digitalclock.mo` \
exists.  
  - `LANGUAGE=fr plasmoidviewer -a org.kde.plasma.digitalclock`
    - `i18n()` strings are translated into french.
    - Qt datetime formatting (`Qt.formatDate(tzDate,"dddd")`) like in digitalclock's \
                tooltip **uses the system locale**.
  - `LANG=fr_CA.UTF-8 LANGUAGE=fr plasmoidviewer -a org.kde.plasma.digitalclock`
    - `i18n()` strings are translated into french.
    - Qt datetime formatting uses the french canadian locale.
  
  Before patch:
  
  - `LANGUAGE=fr plasmoidviewer -a ./package`
    - `i18n()` strings are **not translated**.
  - `plasmoidviewer -a ./bundle.plasmoid`
    - Does not work. Seems it needs to be extracted first for plasmoidviewer to work.
  
  After patch:
  First setup a test env that doesn't have translations elsewhere.
  
    cp -r /usr/share/plasma/plasmoids/org.kde.plasma.volume .
    cd org.kde.plasma.volume
    mkdir -p contents/locale/fr/LC_MESSAGES
    rm metadata.json
    kwriteconfig5 --file "$(realpath metadata.desktop)" --group "Desktop Entry" --key \
"X-KDE-PluginInfo-Name" "org.kde.plasma.volumetest"  cd \
contents/locale/fr/LC_MESSAGES  cp \
/usr/share/locale/fr/LC_MESSAGES/plasma_applet_org.kde.plasma.volume.mo .  mv \
plasma_applet_org.kde.plasma.volume.mo plasma_applet_org.kde.plasma.volumetest.mo  cd \
../../../..  
  
  
  - `LANGUAGE=fr plasmoidviewer -a .`
    - `i18n()` strings are translated into french, loaded from \
                `./package/contents/locale/fr/LC_MESSAGES/plasma_applet_na.me.space.mo`
                
  - Tested when `contents/locale` doesn't exist.
  - Tested when `metadata.desktop` and `metadata.json` doesn't exist.

REPOSITORY
  R118 Plasma SDK

REVISION DETAIL
  https://phabricator.kde.org/D10219

AFFECTED FILES
  plasmoidviewer/view.cpp

To: Zren, #plasma
Cc: plasma-devel, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, \
abetts, sebas, apol, mart


[Attachment #3 (unknown)]

<table><tr><td style="">Zren created this revision.<br />Zren added a reviewer: \
Plasma.<br />Restricted Application added a project: Plasma.<br />Restricted \
Application added a subscriber: plasma-devel.<br />Zren requested review of this \
revision. </td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; \
float: right; color: #464C5C; font-weight: bold; border-radius: 3px; \
background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); \
display: inline-block; border: 1px solid rgba(71,87,120,.2);" \
href="https://phabricator.kde.org/D10219" rel="noreferrer">View \
Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>Based on \
<a href="https://phabricator.kde.org/D5209" style="background-color: #e7e7e7;  \
border-color: #e7e7e7;  border-radius: 3px;
          padding: 0 4px;
          font-weight: bold;
          color: black;text-decoration: line-through;" rel="noreferrer">D5209</a>, \
which adds this feature to plasma-framework.</p>

<hr class="remarkup-hr" />

<p><a href="https://phabricator.kde.org/D5209" class="remarkup-link" target="_blank" \
rel="noreferrer">https://phabricator.kde.org/D5209</a></p></div></div><br \
/><div><strong>TEST PLAN</strong><div><p>Assuming <tt style="background: #ebebeb; \
font-size: 13px;">/usr/share/locale/fr/LC_MESSAGES/plasma_applet_org.kde.plasma.digitalclock.mo</tt> \
exists.</p>

<ul class="remarkup-list">
<li class="remarkup-list-item"><tt style="background: #ebebeb; font-size: \
13px;">LANGUAGE=fr plasmoidviewer -a org.kde.plasma.digitalclock</tt><ul \
class="remarkup-list"> <li class="remarkup-list-item"><tt style="background: #ebebeb; \
font-size: 13px;">i18n()</tt> strings are translated into french.</li> <li \
class="remarkup-list-item">Qt datetime formatting (<tt style="background: #ebebeb; \
font-size: 13px;">Qt.formatDate(tzDate,&quot;dddd&quot;)</tt>) like in \
digitalclock&#039;s tooltip <strong>uses the system locale</strong>.</li> </ul></li>
<li class="remarkup-list-item"><tt style="background: #ebebeb; font-size: \
13px;">LANG=fr_CA.UTF-8 LANGUAGE=fr plasmoidviewer -a \
org.kde.plasma.digitalclock</tt><ul class="remarkup-list"> <li \
class="remarkup-list-item"><tt style="background: #ebebeb; font-size: \
13px;">i18n()</tt> strings are translated into french.</li> <li \
class="remarkup-list-item">Qt datetime formatting uses the french canadian \
locale.</li> </ul></li>
</ul>

<p>Before patch:</p>

<ul class="remarkup-list">
<li class="remarkup-list-item"><tt style="background: #ebebeb; font-size: \
13px;">LANGUAGE=fr plasmoidviewer -a ./package</tt><ul class="remarkup-list"> <li \
class="remarkup-list-item"><tt style="background: #ebebeb; font-size: \
13px;">i18n()</tt> strings are <strong>not translated</strong>.</li> </ul></li>
<li class="remarkup-list-item"><tt style="background: #ebebeb; font-size: \
13px;">plasmoidviewer -a ./bundle.plasmoid</tt><ul class="remarkup-list"> <li \
class="remarkup-list-item">Does not work. Seems it needs to be extracted first for \
plasmoidviewer to work.</li> </ul></li>
</ul>

<p>After patch:<br />
First setup a test env that doesn&#039;t have translations elsewhere.</p>

<div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" \
data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px \
&quot;Menlo&quot;, &quot;Consolas&quot;, &quot;Monaco&quot;, monospace; padding: \
12px; margin: 0; background: rgba(71, 87, 120, 0.08);">cp -r \
/usr/share/plasma/plasmoids/org.kde.plasma.volume . cd org.kde.plasma.volume
mkdir -p contents/locale/fr/LC_MESSAGES
rm metadata.json
kwriteconfig5 --file &quot;$(realpath metadata.desktop)&quot; --group &quot;Desktop \
Entry&quot; --key &quot;X-KDE-PluginInfo-Name&quot; \
&quot;org.kde.plasma.volumetest&quot; cd contents/locale/fr/LC_MESSAGES
cp /usr/share/locale/fr/LC_MESSAGES/plasma_applet_org.kde.plasma.volume.mo .
mv plasma_applet_org.kde.plasma.volume.mo plasma_applet_org.kde.plasma.volumetest.mo
cd ../../../..</pre></div>



<ul class="remarkup-list">
<li class="remarkup-list-item"><tt style="background: #ebebeb; font-size: \
13px;">LANGUAGE=fr plasmoidviewer -a .</tt><ul class="remarkup-list"> <li \
class="remarkup-list-item"><tt style="background: #ebebeb; font-size: \
13px;">i18n()</tt> strings are translated into french, loaded from <tt \
style="background: #ebebeb; font-size: \
13px;">./package/contents/locale/fr/LC_MESSAGES/plasma_applet_na.me.space.mo</tt></li>
 </ul></li>
<li class="remarkup-list-item">Tested when <tt style="background: #ebebeb; font-size: \
13px;">contents/locale</tt> doesn&#039;t exist.</li> <li \
class="remarkup-list-item">Tested when <tt style="background: #ebebeb; font-size: \
13px;">metadata.desktop</tt> and <tt style="background: #ebebeb; font-size: \
13px;">metadata.json</tt> doesn&#039;t exist.</li> </ul></div></div><br \
/><div><strong>REPOSITORY</strong><div><div>R118 Plasma SDK</div></div></div><br \
/><div><strong>REVISION DETAIL</strong><div><a \
href="https://phabricator.kde.org/D10219" \
rel="noreferrer">https://phabricator.kde.org/D10219</a></div></div><br \
/><div><strong>AFFECTED \
FILES</strong><div><div>plasmoidviewer/view.cpp</div></div></div><br \
/><div><strong>To: </strong>Zren, Plasma<br /><strong>Cc: </strong>plasma-devel, \
ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, \
mart<br /></div>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic