Extract and compile translations with vue-gettext and vue-loader, i.e. for .vue files with \<template lang='pug'>\<\/template>
However, it requires own modifications to fit different requirements and is hard to share between projects. Furthermore, it's unable to extract strings from templates if you're using custom template language in vue files.
<template lang='pug'> h1.hero translate Please translate me </template>
So, I created this helper library to:
Since you're using custom template language, you should already have
vue-loader and the corresponding compiler, i.e.
pug in the project. By leveraging those, it will:
vue-gettext's Makefile will group all PO files' content into a single JSON file, which may not be ideal if you only want to load one language at a time (translated strings can be humongous in size).
So this helper will give you an option to split them into a JSON file per language.
brew install gettext && brew link --force gettext
npm install --save-dev vue-webpack-gettext
npm install --save-dev pug
node node_modules/vue-webpack-gettext/extract --output static/template.pot --src src
node node_modules/vue-webpack-gettext/compile --output static/locale --src static/translated --multiple