mirror of
				https://github.com/searxng/searxng.git
				synced 2025-10-28 09:12:36 -04:00 
			
		
		
		
	Functions implemented to run *Weblate* workflows should use prefix 'weblate.':
- babel.setup.translations.worktree --> weblate.translations.worktree
  Create git worktree ${TRANSLATIONS_WORKTREE} and checkout branch
  'translations' from Weblate's counterpart (weblate) of the SearXNG
   (origin)::
       remote weblate https://weblate.bubu1.eu/git/searxng/searxng/
- babel.weblate.to.translations     --> weblate.to.translations
  Update 'translations' branch of SearXNG (origin) with last additions from
  Weblate.
- babel.translations.to.master      --> weblate.translations.commit
  Update 'translations' branch of SearXNG (origin) with last additions from
  Weblate.  Copy the changes to the master branch, compile translations and
  create a commit in the local branch (master)
- babel.master.to.translations      --> weblate.push.translations
  Push *translation changes* from SearXNG (origin) to Weblate's
  counterpart (weblate).
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
		
	
			
		
			
				
	
	
		
			81 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			81 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
| .. _translation:
 | |
| 
 | |
| ===========
 | |
| Translation
 | |
| ===========
 | |
| 
 | |
| .. _weblate.bubu1.eu: https://weblate.bubu1.eu/projects/searxng/
 | |
| .. _Weblate: https://docs.weblate.org
 | |
| .. _translations branch: https://github.com/searxng/searxng/tree/translations
 | |
| .. _orphan branch: https://git-scm.com/docs/git-checkout#Documentation/git-checkout.txt---orphanltnewbranchgt
 | |
| .. _Weblate repository: https://weblate.bubu1.eu/projects/searxng/searxng/#repository
 | |
| .. _wlc: https://docs.weblate.org/en/latest/wlc.html
 | |
| 
 | |
| .. |translated| image:: https://weblate.bubu1.eu/widgets/searxng/-/searxng/svg-badge.svg
 | |
|    :target: https://weblate.bubu1.eu/projects/searxng/
 | |
| 
 | |
| .. sidebar:: |translated|
 | |
| 
 | |
|    - Weblate_
 | |
|    - SearXNG `translations branch`_
 | |
|    - SearXNG `Weblate repository`_
 | |
|    - Weblate Client: wlc_
 | |
|    - Babel Command-Line: `pybabel <http://babel.pocoo.org/en/latest/cmdline.html>`_
 | |
|    - `weblate workflow <https://docs.weblate.org/en/latest/workflows.html>`_
 | |
| 
 | |
| Translation takes place on weblate.bubu1.eu_.
 | |
| 
 | |
| Translations which has been added by translators on the weblate.bubu1.eu_ UI are
 | |
| committed to Weblate's counterpart of the SearXNG *origin* repository which is
 | |
| located at ``https://weblate.bubu1.eu/git/searxng/searxng``.
 | |
| 
 | |
| There is no need to clone this repository, :ref:`SearXNG Weblate workflow` take
 | |
| care of the synchronization with the *origin*.  To avoid merging commits from
 | |
| the counterpart directly on the ``master`` branch of *SearXNG origin*, a *pull
 | |
| request* (PR) is created by this workflow.
 | |
| 
 | |
| Weblate monitors the `translations branch`_, not the ``master`` branch.  This
 | |
| branch is an `orphan branch`_, decoupled from the master branch (we already know
 | |
| orphan branches from the ``gh-pages``).  The `translations branch`_ contains
 | |
| only the
 | |
| 
 | |
| - ``translation/messages.pot`` and the
 | |
| - ``translation/*/messages.po`` files, nothing else.
 | |
| 
 | |
| 
 | |
| .. _SearXNG Weblate workflow:
 | |
| 
 | |
| .. figure:: translation.svg
 | |
| 
 | |
|    SearXNG's PR workflow to be in sync with Weblate
 | |
| 
 | |
| Sync from *origin* to *weblate*: using ``make weblate.push.translations``
 | |
|   For each commit on the ``master`` branch of SearXNG *origin* the GitHub job
 | |
|   :origin:`babel / Update translations branch
 | |
|   <.github/workflows/integration.yml>` checks for updated translations.
 | |
| 
 | |
| Sync from *weblate* to *origin*: using ``make weblate.translations.commit``
 | |
|   Every Friday, the GitHub workflow :origin:`babel / create PR for additons from
 | |
|   weblate <.github/workflows/translations-update.yml>` creates a PR with the
 | |
|   updated translation files:
 | |
| 
 | |
|   - ``translation/messages.pot``,
 | |
|   - ``translation/*/messages.po`` and
 | |
|   - ``translation/*/messages.mo``
 | |
| 
 | |
| wlc
 | |
| ===
 | |
| 
 | |
| .. _wlc configuration: https://docs.weblate.org/en/latest/wlc.html#wlc-config
 | |
| .. _API key: https://weblate.bubu1.eu/accounts/profile/#api
 | |
| 
 | |
| All weblate integration is done by GitHub workflows, but if you want to use wlc_,
 | |
| copy this content into `wlc configuration`_ in your HOME ``~/.config/weblate``
 | |
| 
 | |
| .. code-block:: ini
 | |
| 
 | |
|   [keys]
 | |
|   https://weblate.bubu1.eu/api/ = APIKEY
 | |
| 
 | |
| Replace ``APIKEY`` by your `API key`_.
 |