Merge lp:~dpm/ubuntu-filemanager-app/enable-translations into lp:ubuntu-filemanager-app

Proposed by David Planella on 2013-09-27
Status: Work in progress
Proposed branch: lp:~dpm/ubuntu-filemanager-app/enable-translations
Merge into: lp:ubuntu-filemanager-app
Diff against target: 757 lines (+459/-66)
19 files modified
.bzrignore (+4/-0)
FolderListPage.qml (+7/-6)
FolderListView.qml (+5/-3)
Makefile (+1/-1)
README (+1/-1)
README.translations (+36/-0)
debian/changelog (+6/-0)
debian/control (+8/-7)
debian/filemanager-app-autopilot.install (+1/-1)
debian/filemanager-app.install (+5/-5)
debian/rules (+9/-0)
filemanager-app (+1/-1)
filemanager-app.desktop (+3/-2)
filemanager-app.qml (+2/-2)
filemanager-app.qmlproject (+15/-1)
po/filemanager-app.pot (+311/-0)
po/po.pro (+39/-31)
tests/autopilot/filemanager_app/tests/__init__.py (+4/-4)
tests/autopilot/filemanager_app/tests/test_filemanager.py (+1/-1)
To merge this branch: bzr merge lp:~dpm/ubuntu-filemanager-app/enable-translations
Reviewer Review Type Date Requested Status
Carlos Jose Mazieri 2013-09-27 Approve on 2013-09-28
Ubuntu Phone Apps Jenkins Bot continuous-integration Needs Fixing on 2013-09-27
Review via email: mp+187975@code.launchpad.net

Commit message

Enable the translations infrastructure: expose translations in Launchpad and build/ship them in the Debian package.

Description of the change

NOTE: if you do a review, feel free to approve/disapprove in the comments, but do not top-approve yet, as this needs to be coordinated with the package name change in the seeds.

Enable the translations infrastructure: expose translations in Launchpad and build/ship them in the Debian package.

Unmerged revisions

69. By David Planella on 2013-09-27

Remove unneded files to show in the project, update Debian changelog

68. By David Planella on 2013-09-27

Added rule to build and install translations

67. By David Planella on 2013-09-27

Created .pot file, improved some messages to ease translation

66. By David Planella on 2013-09-27

Do not scan for translations in JavaScript files, the project does not seem to have any

65. By David Planella on 2013-09-27

Renamed all paths files and code from ubuntu-filemanager-app to filemanager-app for consistency. We want to drop the ubuntu- prefix from all apps progressively, so this might be a good point for the file manager

64. By David Planella on 2013-09-27

Added basic translations infrastructure

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file '.bzrignore'
2--- .bzrignore 2013-04-04 11:05:43 +0000
3+++ .bzrignore 2013-09-27 05:10:56 +0000
4@@ -4,3 +4,7 @@
5 debian/app-template/
6 debian/*.debhelper.log
7 debian/*.substvars
8+.build
9+po/Makefile
10+debian/filemanager-app
11+debian/filemanager-app-autopilot
12
13=== modified file 'FolderListPage.qml'
14--- FolderListPage.qml 2013-09-17 16:47:57 +0000
15+++ FolderListPage.qml 2013-09-27 05:10:56 +0000
16@@ -179,9 +179,10 @@
17 // Properties to emulate a model entry for use by FileDetailsPopover
18 property bool isDir: true
19 property string fileName: pathName(pageModel.path)
20- property string fileSize: (folderListView.count === 1
21- ? i18n.tr("1 file")
22- : i18n.tr("%1 files").arg(folderListView.count))
23+ property string fileSize: i18n.tr("%1 file",
24+ "%1 files",
25+ folderListView.count).arg(folderListView.count)
26+
27 property date accessedDate: pageModel.pathAccessedDate
28 property date modifiedDate: pageModel.pathModifiedDate
29 property bool isWritable: pageModel.pathIsWritable
30@@ -229,9 +230,9 @@
31 Action {
32 text: pageModel.clipboardUrlsCounter === 0
33 ? i18n.tr("Paste")
34- : pageModel.clipboardUrlsCounter === 1
35- ? i18n.tr("Paste %1 File").arg(pageModel.clipboardUrlsCounter)
36- : i18n.tr("Paste %1 Files").arg(pageModel.clipboardUrlsCounter)
37+ : i18n.tr("Paste %1 file",
38+ "Paste %1 files",
39+ pageModel.clipboardUrlsCounter).arg(pageModel.clipboardUrlsCounter)
40 onTriggered: {
41 console.log("Pasting to current folder items of count " + pageModel.clipboardUrlsCounter)
42 fileOperationDialog.startOperation(i18n.tr("Paste files"))
43
44=== modified file 'FolderListView.qml'
45--- FolderListView.qml 2013-09-17 16:40:38 +0000
46+++ FolderListView.qml 2013-09-27 05:10:56 +0000
47@@ -30,9 +30,11 @@
48
49 header: Header {
50 objectName: "directoryHeader"
51- text: (root.count == 1
52- ? i18n.tr("%1 (1 file)").arg(root.folderPath)
53- : i18n.tr("%1 (%2 files)").arg(root.folderPath).arg(root.count))
54+ // TRANSLATORS: this refers to the header shown for a folder
55+ // %1 is the folder path and %2 the number of files it contains
56+ text: i18n.tr("%1 (%2 file)",
57+ "%1 (%2 files)",
58+ root.count).arg(root.folderPath).arg(root.count)
59 }
60
61 Component {
62
63=== modified file 'Makefile'
64--- Makefile 2013-09-17 17:05:56 +0000
65+++ Makefile 2013-09-27 05:10:56 +0000
66@@ -1,7 +1,7 @@
67 all:
68
69 run:
70- /usr/bin/qmlscene $@ ubuntu-filemanager-app.qml
71+ /usr/bin/qmlscene $@ filemanager-app.qml
72
73 icon:
74 inkscape --export-png=icons/$(ICON).png --export-dpi=32 --export-background-opacity=0 --without-gui /usr/share/icons/ubuntu-mobile/actions/scalable/$(ICON).svg
75
76=== modified file 'README'
77--- README 2013-06-14 05:55:15 +0000
78+++ README 2013-09-27 05:10:56 +0000
79@@ -10,4 +10,4 @@
80 Running filemanager
81 ===================
82
83-qmlscene ubuntu-filemanager-app.qml
84+qmlscene filemanager-app.qml
85
86=== added file 'README.translations'
87--- README.translations 1970-01-01 00:00:00 +0000
88+++ README.translations 2013-09-27 05:10:56 +0000
89@@ -0,0 +1,36 @@
90+# Updating translations
91+
92+Translations for the File Manager app happen in [Launchpad Translations][] and
93+are automatically committed daily on the trunk branch in the po/ folder.
94+
95+They are then built and installed as part of the package build, so that
96+developers don't really need to worry about them.
97+
98+However, there is one task that needs to be taken care of: exposing new
99+translatable messages to translators. So whenever you add new translatable
100+messages in the code, make sure to follow these steps:
101+
102+ 1. Change directory to the po/ folder: `cd po`
103+ 2. Update the translations template: `qmake && make pot`
104+ 3. Commit the generated .pot file: `bzr commit -m"Updated translation template"`
105+ 4. Push the branch and send a merge proposal as usual
106+
107+And that's it, once the branch lands Launchpad should take care of all the rest!
108+
109+# Behind the scenes
110+
111+Behind the scenes, whenever the po/*.pot file (also known as translations template)
112+is committed to trunk Launchpad reads it and updates the translatable strings
113+exposed in the web UI. This will enable translators to work on the new strings.
114+The translations template contains all translatable strings that have been
115+extracted from the source code files.
116+
117+Launchpad will then store translations in its database and will commit them daily
118+in the form of textual po/*.po files to trunk. The PO files are also usually
119+referred to as the translations files. You'll find a translation file for each
120+language the app has got at least a translated message available for.
121+
122+Translations for core apps follow the standard [gettext format].
123+
124+ [Launchpad Translations]: https://translations.launchpad.net/ubuntu-filemanager-app
125+ [gettext format]: https://www.gnu.org/software/gettext/
126
127=== modified file 'debian/changelog'
128--- debian/changelog 2013-04-19 20:30:19 +0000
129+++ debian/changelog 2013-09-27 05:10:56 +0000
130@@ -1,3 +1,9 @@
131+ubuntu-filemanager-app (0.2) saucy; urgency=low
132+
133+ * Added translations infrastructure, renamed package and paths
134+
135+ -- David Planella <david.planella@ubuntu.com> Fri, 27 Sep 2013 07:02:14 +0200
136+
137 ubuntu-filemanager-app (0.1.1) raring; urgency=low
138
139 * Initial release
140
141=== modified file 'debian/control'
142--- debian/control 2013-08-30 17:49:35 +0000
143+++ debian/control 2013-09-27 05:10:56 +0000
144@@ -1,30 +1,31 @@
145 Source: ubuntu-filemanager-app
146 Priority: extra
147 Maintainer: Ubuntu App Cats <ubuntu-touch-coreapps@lists.launchpad.net>
148-Build-Depends: debhelper (>= 9),
149+Build-Depends: debhelper (>= 9)
150 Standards-Version: 3.9.4
151 Section: misc
152 Homepage: https://launchpad.net/ubuntu-filemanager-app
153 Vcs-Bzr: https://code.launchpad.net/~ubuntu-filemanager-dev/ubuntu-filemanager-app/trunk
154
155-Package: ubuntu-filemanager-app
156+Package: filemanager-app
157 Section: misc
158 Architecture: all
159-Depends: ${misc:Depends},
160- qmlscene,
161+Depends: qmlscene,
162 qtdeclarative5-ubuntu-ui-toolkit-plugin | qt-components-ubuntu,
163 qtdeclarative5-qtquick2-plugin,
164 qtdeclarative5-nemo-qml-plugin-folderlistmodel,
165- qtdeclarative5-u1db1.0
166+ qtdeclarative5-u1db1.0,
167+ ${misc:Depends},
168 Description: File Manager application
169 Core File Manager application
170
171-Package: ubuntu-filemanager-app-autopilot
172+Package: filemanager-app-autopilot
173 Architecture: all
174 Depends: libautopilot-qt,
175 libqt5test5,
176 python-mock,
177 ubuntu-ui-toolkit-autopilot,
178- ubuntu-filemanager-app (= ${source:Version})
179+ filemanager-app (= ${source:Version}),
180+ ${misc:Depends},
181 Description: Autopilot tests for File Manager Application
182 This package contains the autopilot tests for the File Manager
183
184=== renamed file 'debian/ubuntu-filemanager-app-autopilot.install' => 'debian/filemanager-app-autopilot.install'
185--- debian/ubuntu-filemanager-app-autopilot.install 2013-05-31 12:23:54 +0000
186+++ debian/filemanager-app-autopilot.install 2013-09-27 05:10:56 +0000
187@@ -1,1 +1,1 @@
188-tests/autopilot/ubuntu_filemanager_app/* usr/lib/python2.7/dist-packages/ubuntu_filemanager_app/
189+tests/autopilot/filemanager_app/* usr/lib/python2.7/dist-packages/filemanager_app/
190
191=== renamed file 'debian/ubuntu-filemanager-app.install' => 'debian/filemanager-app.install'
192--- debian/ubuntu-filemanager-app.install 2013-07-07 11:16:44 +0000
193+++ debian/filemanager-app.install 2013-09-27 05:10:56 +0000
194@@ -1,5 +1,5 @@
195-ubuntu-filemanager-app usr/bin/
196-ubuntu-filemanager-app.desktop usr/share/applications/
197-*.qml usr/share/ubuntu-filemanager-app/
198-*.png usr/share/ubuntu-filemanager-app/
199-icons/ usr/share/ubuntu-filemanager-app/
200+filemanager-app usr/bin/
201+filemanager-app.desktop usr/share/applications/
202+*.qml usr/share/filemanager-app/
203+*.png usr/share/filemanager-app/
204+icons/ usr/share/filemanager-app/
205
206=== modified file 'debian/rules'
207--- debian/rules 2013-04-11 21:15:17 +0000
208+++ debian/rules 2013-09-27 05:10:56 +0000
209@@ -9,3 +9,12 @@
210
211 override_dh_install:
212 dh_install --fail-missing
213+ appname=ubuntu-weather-app; \
214+ for pofile in $(shell find ./po -name "*.po"); do \
215+ pofilename="$${pofile##*/}"; \
216+ langcode="$${pofilename%.*}"; \
217+ localedir="debian/$$appname/usr/share/locale/$$langcode/LC_MESSAGES"; \
218+ mkdir -p $$localedir; \
219+ mofile="$$localedir/$$appname.mo"; \
220+ msgfmt -o $$mofile $$pofile; \
221+ done
222
223=== renamed file 'ubuntu-filemanager-app' => 'filemanager-app'
224--- ubuntu-filemanager-app 2013-04-11 21:15:17 +0000
225+++ filemanager-app 2013-09-27 05:10:56 +0000
226@@ -1,2 +1,2 @@
227 #!/bin/bash
228-qmlscene /usr/share/ubuntu-filemanager-app/ubuntu-filemanager-app.qml
229+qmlscene /usr/share/filemanager-app/filemanager-app.qml
230
231=== renamed file 'ubuntu-filemanager-app.desktop' => 'filemanager-app.desktop'
232--- ubuntu-filemanager-app.desktop 2013-05-20 19:57:23 +0000
233+++ filemanager-app.desktop 2013-09-27 05:10:56 +0000
234@@ -2,8 +2,9 @@
235 Version=1.0
236 Type=Application
237 Terminal=false
238-Exec=qmlscene /usr/share/ubuntu-filemanager-app/ubuntu-filemanager-app.qml
239-Icon=/usr/share/ubuntu-filemanager-app/filemanager64.png
240+Exec=qmlscene /usr/share/filemanager-app/filemanager-app.qml
241+Icon=/usr/share/filemanager-app/filemanager64.png
242 Name=File Manager
243+Keywords=file;files;file manager;folders
244 X-Ubuntu-Touch=true
245 X-Ubuntu-StageHint=SideStage
246
247=== renamed file 'ubuntu-filemanager-app.qml' => 'filemanager-app.qml'
248--- ubuntu-filemanager-app.qml 2013-09-17 16:47:57 +0000
249+++ filemanager-app.qml 2013-09-27 05:10:56 +0000
250@@ -31,7 +31,7 @@
251 id: root
252 // objectName for functional testing purposes (autopilot-qt5)
253 objectName: "filemanager"
254- applicationName: "ubuntu-filemanager-app"
255+ applicationName: "filemanager-app"
256
257 width: units.gu(100)
258 height: units.gu(75)
259@@ -98,7 +98,7 @@
260
261 U1db.Database {
262 id: storage
263- path: "ubuntu-filemanager-app.db"
264+ path: "filemanager-app.db"
265 }
266
267 U1db.Document {
268
269=== renamed file 'filemanager.qmlproject' => 'filemanager-app.qmlproject'
270--- filemanager.qmlproject 2013-06-25 16:22:38 +0000
271+++ filemanager-app.qmlproject 2013-09-27 05:10:56 +0000
272@@ -3,7 +3,7 @@
273 import QmlProject 1.1
274
275 Project {
276- mainFile: "ubuntu-filemanager-app.qml"
277+ mainFile: "filemanager-app.qml"
278
279 /* Include .qml, .js, and image files from current directory and subdirectories */
280 QmlFiles {
281@@ -15,6 +15,20 @@
282 ImageFiles {
283 directory: "."
284 }
285+ Files {
286+ filter: "*.desktop"
287+ }
288+ /* Shows the README files in the project view */
289+ Files {
290+ filter: "README*"
291+ }
292+ /* Shows the translation files and the .pro file used to generate the .pot template */
293+ Files {
294+ filter: "*.po*"
295+ }
296+ Files {
297+ filter: "*.pro"
298+ }
299 /* List of plugin directories passed to QML runtime */
300 importPaths: [ "." ,"/usr/lib/x86_64-linux-gnu/qt5/qml" ]
301 }
302
303=== added file 'po/filemanager-app.pot'
304--- po/filemanager-app.pot 1970-01-01 00:00:00 +0000
305+++ po/filemanager-app.pot 2013-09-27 05:10:56 +0000
306@@ -0,0 +1,311 @@
307+# SOME DESCRIPTIVE TITLE.
308+# Copyright (C) YEAR Canonical Ltd.
309+# This file is distributed under the same license as the PACKAGE package.
310+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
311+#
312+#, fuzzy
313+msgid ""
314+msgstr ""
315+"Project-Id-Version: filemanager-app\n"
316+"Report-Msgid-Bugs-To: \n"
317+"POT-Creation-Date: 2013-09-27 06:56+0200\n"
318+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
319+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
320+"Language-Team: LANGUAGE <LL@li.org>\n"
321+"Language: \n"
322+"MIME-Version: 1.0\n"
323+"Content-Type: text/plain; charset=CHARSET\n"
324+"Content-Transfer-Encoding: 8bit\n"
325+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
326+
327+#: ../ConfirmDialog.qml:31 ../ConfirmDialogWithInput.qml:41
328+#: ../NotifyDialog.qml:25
329+msgid "Ok"
330+msgstr ""
331+
332+#: ../ConfirmDialog.qml:41 ../ConfirmDialogWithInput.qml:51
333+#: ../FileActionDialog.qml:45 ../FileOperationProgressDialog.qml:44
334+#: ../GoToDialog.qml:59
335+msgid "Cancel"
336+msgstr ""
337+
338+#: ../FileActionDialog.qml:30
339+msgid "Choose action"
340+msgstr ""
341+
342+#: ../FileActionDialog.qml:31
343+#, qt-format
344+msgid "For file: %1"
345+msgstr ""
346+
347+#: ../FileActionDialog.qml:35
348+msgid "Open"
349+msgstr ""
350+
351+#: ../FileDetailsPopover.qml:37
352+msgid "Readable"
353+msgstr ""
354+
355+#: ../FileDetailsPopover.qml:40
356+msgid "Writable"
357+msgstr ""
358+
359+#: ../FileDetailsPopover.qml:43
360+msgid "Executable"
361+msgstr ""
362+
363+#: ../FileDetailsPopover.qml:91
364+msgid "Path:"
365+msgstr ""
366+
367+#: ../FileDetailsPopover.qml:102
368+msgid "Contents:"
369+msgstr ""
370+
371+#: ../FileDetailsPopover.qml:103
372+msgid "Size:"
373+msgstr ""
374+
375+#: ../FileDetailsPopover.qml:112
376+msgid "Accessed:"
377+msgstr ""
378+
379+#: ../FileDetailsPopover.qml:121
380+msgid "Modified:"
381+msgstr ""
382+
383+#: ../FileDetailsPopover.qml:130
384+msgid "Permissions:"
385+msgstr ""
386+
387+#: ../FileOperationProgressDialog.qml:27
388+msgid "Operation in progress"
389+msgstr ""
390+
391+#: ../FolderListPage.qml:101
392+msgid "~/Desktop"
393+msgstr ""
394+
395+#: ../FolderListPage.qml:103
396+msgid "~/Documents"
397+msgstr ""
398+
399+#: ../FolderListPage.qml:105
400+msgid "~/Downloads"
401+msgstr ""
402+
403+#: ../FolderListPage.qml:107
404+msgid "~/Music"
405+msgstr ""
406+
407+#: ../FolderListPage.qml:109
408+msgid "~/Pictures"
409+msgstr ""
410+
411+#: ../FolderListPage.qml:111
412+msgid "~/Public"
413+msgstr ""
414+
415+#: ../FolderListPage.qml:113
416+msgid "~/Programs"
417+msgstr ""
418+
419+#: ../FolderListPage.qml:115
420+msgid "~/Templates"
421+msgstr ""
422+
423+#: ../FolderListPage.qml:117
424+msgid "~/Videos"
425+msgstr ""
426+
427+#: ../FolderListPage.qml:134
428+msgid "Home"
429+msgstr ""
430+
431+#: ../FolderListPage.qml:136
432+msgid "File System"
433+msgstr ""
434+
435+#: ../FolderListPage.qml:182
436+#, qt-format
437+msgid "%1 file"
438+msgid_plural "%1 files"
439+msgstr[0] ""
440+msgstr[1] ""
441+
442+#: ../FolderListPage.qml:212
443+msgid "Create New Folder"
444+msgstr ""
445+
446+#: ../FolderListPage.qml:232
447+msgid "Paste"
448+msgstr ""
449+
450+#: ../FolderListPage.qml:233
451+#, qt-format
452+msgid "Paste %1 file"
453+msgid_plural "Paste %1 files"
454+msgstr[0] ""
455+msgstr[1] ""
456+
457+#: ../FolderListPage.qml:238
458+msgid "Paste files"
459+msgstr ""
460+
461+#: ../FolderListPage.qml:250
462+msgid "Open in Terminal"
463+msgstr ""
464+
465+#: ../FolderListPage.qml:262 ../FolderListView.qml:152
466+msgid "Properties"
467+msgstr ""
468+
469+#: ../FolderListPage.qml:297
470+msgid "Create folder"
471+msgstr ""
472+
473+#: ../FolderListPage.qml:298
474+msgid "Enter name for new folder"
475+msgstr ""
476+
477+#: ../FolderListPage.qml:314
478+msgid "Create file"
479+msgstr ""
480+
481+#: ../FolderListPage.qml:315
482+msgid "Enter name for new file"
483+msgstr ""
484+
485+#: ../FolderListPage.qml:350
486+msgid "Actions"
487+msgstr ""
488+
489+#: ../FolderListPage.qml:360
490+msgid "View"
491+msgstr ""
492+
493+#: ../FolderListPage.qml:375
494+msgid "Go To"
495+msgstr ""
496+
497+#: ../FolderListPage.qml:388 ../PlacesSidebar.qml:73
498+msgid "Places"
499+msgstr ""
500+
501+#: ../FolderListPage.qml:448
502+msgid "No files"
503+msgstr ""
504+
505+#: ../FolderListPage.qml:469
506+msgid "File operation error"
507+msgstr ""
508+
509+#. TRANSLATORS: this refers to the header shown for a folder
510+#. %1 is the folder path and %2 the number of files it contains
511+#: ../FolderListView.qml:35
512+#, qt-format
513+msgid "%1 (%2 file)"
514+msgid_plural "%1 (%2 files)"
515+msgstr[0] ""
516+msgstr[1] ""
517+
518+#: ../FolderListView.qml:45 ../FolderListView.qml:126
519+msgid "Delete"
520+msgstr ""
521+
522+#: ../FolderListView.qml:46
523+#, qt-format
524+msgid "Are you sure you want to permanently delete '%1'?"
525+msgstr ""
526+
527+#: ../FolderListView.qml:69 ../FolderListView.qml:139
528+msgid "Rename"
529+msgstr ""
530+
531+#: ../FolderListView.qml:70
532+msgid "Enter a new name"
533+msgstr ""
534+
535+#: ../FolderListView.qml:79
536+msgid "Could not rename"
537+msgstr ""
538+
539+#: ../FolderListView.qml:80
540+msgid "Insufficient permissions or name already exists?"
541+msgstr ""
542+
543+#: ../FolderListView.qml:103
544+msgid "Cut"
545+msgstr ""
546+
547+#: ../FolderListView.qml:114
548+msgid "Copy"
549+msgstr ""
550+
551+#: ../FolderListView.qml:177
552+msgid "Folder not accessible"
553+msgstr ""
554+
555+#: ../FolderListView.qml:178
556+msgid "Can not access "
557+msgstr ""
558+
559+#: ../GoToDialog.qml:25
560+msgid "Go To Location"
561+msgstr ""
562+
563+#: ../GoToDialog.qml:27
564+msgid "Enter a location to go to:"
565+msgstr ""
566+
567+#: ../GoToDialog.qml:38 ../PlacesPopover.qml:83
568+msgid "Location..."
569+msgstr ""
570+
571+#: ../GoToDialog.qml:47 ../PlacesPopover.qml:97
572+msgid "Go"
573+msgstr ""
574+
575+#: ../SettingsPage.qml:32
576+msgid "Settings"
577+msgstr ""
578+
579+#: ../SettingsPage.qml:38
580+msgid "Show Advanced Features"
581+msgstr ""
582+
583+#: ../ViewPopover.qml:39
584+msgid "Show Hidden Files"
585+msgstr ""
586+
587+#: ../ViewPopover.qml:59
588+msgid "Sort By"
589+msgstr ""
590+
591+#: ../ViewPopover.qml:70
592+msgid "Name"
593+msgstr ""
594+
595+#: ../ViewPopover.qml:71
596+msgid "Date"
597+msgstr ""
598+
599+#: ../ViewPopover.qml:81
600+msgid "Sort Order"
601+msgstr ""
602+
603+#: ../ViewPopover.qml:92 ../ViewPopover.qml:97
604+msgid "Ascending"
605+msgstr ""
606+
607+#: ../ViewPopover.qml:93
608+msgid "Descending"
609+msgstr ""
610+
611+#: ../ViewPopover.qml:105
612+msgid "Filter"
613+msgstr ""
614+
615+#: ../.build/filemanager-app.desktop.js:1
616+msgid "File Manager"
617+msgstr ""
618
619=== modified file 'po/po.pro'
620--- po/po.pro 2013-02-12 16:18:48 +0000
621+++ po/po.pro 2013-09-27 05:10:56 +0000
622@@ -1,48 +1,56 @@
623+## This .pro file is used to create a Makefile with the necessary rules
624+## to create an initial translations template and to update it whenever
625+## there are new translatable strings in the project that are ready to be
626+## exposed to translators
627+##
628+## See the ../README.translations file for more information
629+
630 TEMPLATE = subdirs
631
632 PROJECTNAME = $$system(basename ../*.qmlproject)
633 PROJECTNAME = $$replace(PROJECTNAME,.qmlproject,)
634
635+DESKTOPFILE = ../$${PROJECTNAME}.desktop
636+
637 SOURCECODE = ../*.qml
638
639+BUILDDIR = ../.build
640+DESKTOPFILETEMP = $${BUILDDIR}/$${PROJECTNAME}.desktop.js
641+
642 message("")
643 message(" Project Name: $$PROJECTNAME ")
644 message(" Source Code: $$SOURCECODE ")
645 message("")
646-message(" run 'make pot' to generate the pot file from source code. ")
647-message(" run 'make translate' to create a new translation (po) based on pot. ")
648-message(" run 'make mo' to generate the mo files from po files. ")
649-message(" run 'qmake; make install' to install the mo files. ")
650+message(" Run 'make pot' to generate the pot file from source code. ")
651 message("")
652
653-## generate pot file 'make pot'
654+## Generate pot file 'make pot'
655 potfile.target = pot
656-potfile.commands = xgettext -o $${PROJECTNAME}.pot --package-name $${PROJECTNAME} --qt --c++ --add-comments=TRANSLATORS --keyword=tr $${SOURCECODE}
657+potfile.commands = xgettext \
658+ -o $${PROJECTNAME}.pot \
659+ --copyright=\"Canonical Ltd. \" \
660+ --package-name $${PROJECTNAME} \
661+ --qt --c++ --add-comments=TRANSLATORS \
662+ --keyword=tr --keyword=tr:1,2 \
663+ $${SOURCECODE} $${DESKTOPFILETEMP}
664+potfile.depends = desktopfile
665 QMAKE_EXTRA_TARGETS += potfile
666
667-## poedit target for new translations 'make translate'
668-poedit.target = translate
669-poedit.commands = cp messages.pot new_language.po; poedit new_language.po
670-QMAKE_EXTRA_TARGETS += poedit
671-
672-## generate mo files 'make mo'
673-mofiles.target = mo
674-mofiles.commands = msgfmt *.po
675-QMAKE_EXTRA_TARGETS += mofiles
676-
677-## Installation steps for mo files. 'make install'
678-MO_FILES = $$system(ls *.mo)
679-
680-install_mo_commands =
681-for(mo_file, MO_FILES) {
682- mo_name = $$replace(mo_file,.mo,)
683- mo_targetpath = $(INSTALL_ROOT)/usr/share/locale/$${mo_name}/LC_MESSAGES
684- mo_target = $${mo_targetpath}/$${PROJECTNAME}.mo
685- !isEmpty(install_mo_commands): install_mo_commands += &&
686- install_mo_commands += test -d $$mo_targetpath || mkdir -p $$mo_targetpath
687- install_mo_commands += && cp $$mo_file $$mo_target
688-}
689-
690-install.commands = $$install_mo_commands
691-QMAKE_EXTRA_TARGETS += install
692+## Do not use this rule directly. It's a dependency rule to
693+## generate an intermediate .js file to extract translatable
694+## strings from the .desktop file
695+desktopfile.target = desktopfile
696+desktopfile.commands = awk \'BEGIN { FS=\"=\" }; /Name/ {print \"var s = i18n.tr(\42\" \$$2 \"\42);\"}\' $${DESKTOPFILE} > $${DESKTOPFILETEMP}
697+desktopfile.depends = makebuilddir
698+QMAKE_EXTRA_TARGETS += desktopfile
699+
700+## Dependency rule to create the temporary build dir
701+makebuilddir.target = makebuilddir
702+makebuilddir.commands = mkdir -p $${BUILDDIR}
703+QMAKE_EXTRA_TARGETS += makebuilddir
704+
705+## Rule to clean the products of the build
706+clean.target = clean
707+clean.commands = rm -Rf $${BUILDDIR}
708+QMAKE_EXTRA_TARGETS += clean
709
710
711=== renamed directory 'tests/autopilot/ubuntu_filemanager_app' => 'tests/autopilot/filemanager_app'
712=== modified file 'tests/autopilot/filemanager_app/tests/__init__.py'
713--- tests/autopilot/ubuntu_filemanager_app/tests/__init__.py 2013-07-26 17:12:14 +0000
714+++ tests/autopilot/filemanager_app/tests/__init__.py 2013-09-27 05:10:56 +0000
715@@ -14,7 +14,7 @@
716 from autopilot.testcase import AutopilotTestCase
717
718 from ubuntuuitoolkit import emulators as toolkit_emulators
719-from ubuntu_filemanager_app import emulators
720+from filemanager_app import emulators
721
722
723 class FileManagerTestCase(AutopilotTestCase):
724@@ -28,7 +28,7 @@
725 else:
726 scenarios = [('with touch', dict(input_device_class=Touch))]
727
728- local_location = "../../ubuntu-filemanager-app.qml"
729+ local_location = "../../filemanager-app.qml"
730
731 def setUp(self):
732 self.pointing_device = Pointer(self.input_device_class.create())
733@@ -48,9 +48,9 @@
734 def launch_test_installed(self):
735 self.app = self.launch_test_application(
736 "qmlscene",
737- "/usr/share/ubuntu-filemanager-app/ubuntu-filemanager-app.qml",
738+ "/usr/share/filemanager-app/filemanager-app.qml",
739 "--desktop_file_hint="
740- "/usr/share/applications/ubuntu-filemanager-app.desktop",
741+ "/usr/share/applications/filemanager-app.desktop",
742 app_type='qt',
743 emulator_base=toolkit_emulators.UbuntuUIToolkitEmulatorBase)
744
745
746=== modified file 'tests/autopilot/filemanager_app/tests/test_filemanager.py'
747--- tests/autopilot/ubuntu_filemanager_app/tests/test_filemanager.py 2013-09-09 21:34:54 +0000
748+++ tests/autopilot/filemanager_app/tests/test_filemanager.py 2013-09-27 05:10:56 +0000
749@@ -30,7 +30,7 @@
750 from autopilot.matchers import Eventually
751 from testtools.matchers import Equals, NotEquals, Not, Is
752
753-from ubuntu_filemanager_app.tests import FileManagerTestCase
754+from filemanager_app.tests import FileManagerTestCase
755
756
757 class TestFolderListPage(FileManagerTestCase):

Subscribers

People subscribed via source and target branches