Dňa 13.10.2011 17:49, Sérgio Marques wrote / napísal(a):
Is there any chance of someone with skills make a bash script to remove
accelerators from translation (msgstr) files?
Hi, this seems to be easy:
In the topmost directory issue the following command:
sed -i.xx '/^msgstr/ s/\~//g' `find . -name \*po`
Explanation:
find . -name \*po finds all po files
`find . -name \*po` enters list of these files to the command
sed -i does inplace modification, backing up the original file to
name.po.xx
the command s/\~//g replaces all ~character by nothing
/^msgstr/ allows to do that only on lines, which start by msgstr
(you probably do no want to change the English lines and the lines which
specify ~ as the accelerator.)
Once done, you can check the differences by:
for i in `find . -name \*.po`; do diff $i.xx $i >$i.diff; done
for each po file, a file with differences is created with the following
records:
73c73 .... line number
< msgstr "Otvo~riť len na čítanie" .... input
---
msgstr "Otvoriť len na čítanie" ..... output
If you want to see the ~ characters, use the following before and after
deletion
grep \~ `find . -name \*.po`
While it is easy to get all po files from pootle, I do not know, if it
is possible to upload many files at once. Perhaps, git access is useful
to do this.
Be careful, always make backups and check the result
Enjoy
Milos