Skip to content

Instantly share code, notes, and snippets.

@cookiengineer
Created November 7, 2016 10:54
Show Gist options
  • Save cookiengineer/f3014747567c0dc096f05bf30dc03022 to your computer and use it in GitHub Desktop.
Save cookiengineer/f3014747567c0dc096f05bf30dc03022 to your computer and use it in GitHub Desktop.
gnome-shell/refactor_po.js Helper script
#!/usr/bin/env node
/*
* XXX: This helper script is for usage with the GNOME Shell fork at
* https://github.com/cookiengineer/gnome-shell
*
* It will refactor "out" all PO translation sections that start with
* any of the filtered entries below.
*/
const _fs = require('fs');
const _ROOT = __dirname + '/po';
let filtered = [
'#: ../js/ui/calendar.js',
'#: ../js/ui/dateMenu.js',
'#: ../src/calendar-server/evolution-calendar.desktop.in',
];
let files = _fs.readdir(_ROOT, 'utf8', (err, files) => {
if (!err) {
files = files.filter(file => file.endsWith('.po'));
files.forEach(file => {
_fs.readFile(_ROOT + '/' + file, 'utf8', (err, buffer) => {
if (!err) {
let sections = buffer.toString('utf8').split('\n\n');
filtered.forEach(filter => {
sections = sections.filter(section => !section.startsWith(filter));
});
_fs.writeFileSync(_ROOT + '/' + file, sections.join('\n\n'), 'utf8');
}
});
});
}
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment