Create a plural-only English translation. Use it to pluralize the Follow

Stream and Flow Graph hint statistics.

svn path=/trunk/; revision=53326
This commit is contained in:
Gerald Combs 2013-11-14 22:35:10 +00:00
parent 64f4e13fff
commit 1745e131fc
11 changed files with 75 additions and 18 deletions

View File

@ -227,7 +227,7 @@ Function .onInit
MessageBox MB_YESNOCANCEL|MB_ICONQUESTION \
"$OLD_DISPLAYNAME is already installed.\
$\n$\nWould you like to uninstall it first?" \
$\n$\nWould you like to uninstall it first?" \
/SD IDYES \
IDYES prep_uninstaller \
IDNO done

View File

@ -213,16 +213,16 @@ Section "Main"
EnvironmentVariables:
; set the U3 environment variables
StrCpy $PDRIVE $EXEDIR 2
System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_SERIAL", "0000060414068917").r0'
;System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_SERIAL", "0000060414068917").r0'
System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_PATH", "$PDRIVE").r0'
System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DOCUMENT_PATH", "$PDRIVE\Documents").r0'
System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_VENDOR", "Wireshark Developers").r0'
;System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DOCUMENT_PATH", "$PDRIVE\Documents").r0'
;System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_VENDOR", "Wireshark Developers").r0'
System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_PRODUCT", "PortableApps").r0'
System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_VENDOR_ID", "0000").r0'
;System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_VENDOR_ID", "0000").r0'
System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_APP_DATA_PATH", "$EXEDIR\Data").r0'
System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_HOST_EXEC_PATH", "$EXEDIR\App\Wireshark").r0'
System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_EXEC_PATH", "$EXEDIR\App\Wireshark").r0'
System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_ENV_VERSION", "1.0").r0'
;System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_ENV_VERSION", "1.0").r0'
System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_ENV_LANGUAGE", "1033").r0'
StrCmp $SECONDARYLAUNCH "true" LaunchAndExit

View File

@ -194,6 +194,7 @@ set(QTSHARK_QRC
set(QTSHARK_TS
qtshark_de.ts
qtshark_en.ts # lupdate -pluralonly
qtshark_fr.ts
qtshark_zh_CN.ts
)

View File

@ -203,20 +203,23 @@ QRC_FILES = \
#
# .ts files.
# qtshark_en should be pluralonly.
#
TS_FILES = \
qtshark_de.ts \
qtshark_en.ts \
qtshark_fr.ts \
qtshark_zh_CN.ts \
qtshark_de.ts
qtshark_zh_CN.ts
#
# .qm files.
#
# Should be auto-generated ?
QM_FILES = \
qtshark_de.qm \
qtshark_en.qm \
qtshark_fr.qm \
qtshark_zh_CN.qm \
qtshark_de.qm
qtshark_zh_CN.qm
#
# The .rcc.cpp files generated from them.

View File

@ -438,10 +438,12 @@ RESOURCES += \
welcome.qrc \
# qtshark_en should be pluralonly.
TRANSLATIONS = \
qtshark_de.ts \
qtshark_zh_CN.ts \
qtshark_fr.ts
qtshark_en.ts \
qtshark_fr.ts \
qtshark_zh_CN.ts
ICON = ../../packaging/macosx/Resources/Wireshark.icns

View File

@ -136,8 +136,9 @@ void FollowStreamDialog::fillHintLabel(int text_pos)
hint = QString("Packet %1. ").arg(pkt);
}
hint.append(QString("%1 client pkts, %2 server pkts, %3 turns.")
.arg(client_packet_count_).arg(server_packet_count_).arg(turns_));
hint += tr("%Ln client pkt(s), ", "", client_packet_count_)
+ tr("%Ln server pkt(s), ", "", server_packet_count_)
+ tr("%Ln turn(s).", "", turns_);
if (pkt > 0) {
hint.append(QString(" Click to select."));

View File

@ -22,7 +22,8 @@
<RCC>
<qresource prefix="/i18n">
<file>qtshark_de.qm</file>
<file>qtshark_zh_CN.qm</file>
<file>qtshark_en.qm</file>
<file>qtshark_fr.qm</file>
<file>qtshark_zh_CN.qm</file>
</qresource>
</RCC>

BIN
ui/qt/qtshark_en.qm Executable file

Binary file not shown.

50
ui/qt/qtshark_en.ts Executable file
View File

@ -0,0 +1,50 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.0" language="en">
<context>
<name>FollowStreamDialog</name>
<message numerus="yes">
<location filename="follow_stream_dialog.cpp" line="139"/>
<source>%Ln client pkt(s), </source>
<translation>
<numerusform>%Ln client pkt, </numerusform>
<numerusform>%Ln client pkts, </numerusform>
</translation>
</message>
<message numerus="yes">
<location filename="follow_stream_dialog.cpp" line="140"/>
<source>%Ln server pkt(s), </source>
<translation>
<numerusform>%Ln server pkt, </numerusform>
<numerusform>%Ln server pkts, </numerusform>
</translation>
</message>
<message numerus="yes">
<location filename="follow_stream_dialog.cpp" line="141"/>
<source>%Ln turn(s).</source>
<translation>
<numerusform>%Ln turn.</numerusform>
<numerusform>%Ln turns.</numerusform>
</translation>
</message>
</context>
<context>
<name>SequenceDialog</name>
<message numerus="yes">
<location filename="sequence_dialog.cpp" line="284"/>
<source>%Ln node(s)</source>
<translation>
<numerusform>%Ln node</numerusform>
<numerusform>%Ln nodes</numerusform>
</translation>
</message>
<message numerus="yes">
<location filename="sequence_dialog.cpp" line="285"/>
<source>%Ln item(s)</source>
<translation>
<numerusform>%Ln item</numerusform>
<numerusform>%Ln items</numerusform>
</translation>
</message>
</context>
</TS>

View File

@ -281,7 +281,8 @@ void SequenceDialog::mouseMoved(QMouseEvent *event)
}
if (hint.isEmpty()) {
hint += QString("%1 nodes, %2 items").arg(seq_analysis_.num_nodes).arg(num_items_);
hint += tr("%Ln node(s)", "", seq_analysis_.num_nodes) + QString(", ")
+ tr("%Ln item(s)", "", num_items_);
}
hint.prepend("<small><i>");

View File

@ -89,8 +89,6 @@ void u3_runtime_info(GString *str)
g_string_append(str, " from a ");
}
g_string_append(str, " U3 device");
if((u3devicepath_lcl =
#ifdef _WIN32
getenv_utf8