5da75fcb40
This patch adds a new template category named "Localization", to be used for templates created by our l10n team for each locale, so that languages which requires special layout or formatting (such as CJK or CTL) can have their own templates bundled by default. This patch aslo adds a (general purpose) Writer template for the Simplified Chinese language. Chinese language, by convention, need to format the document to have the first line of the paragraph be indented by 2 characters. The font size, line spacing, paragraph margin etc also need special treatment. If the Chinese users start writing using the current default Writer template, they need to adjust the style formatting every time to meet their needs. Although this template can be provided as an "extension" on the extension website, in practice very few people will go to the extension website and look for such templates. Such bundled templates can also be added by other l10n teams. The extras/README.md will be updated in a separate patch to include documentation on how to add such templates and have their template names translatable on weblate. This does not completely resolve the issue in tdf#86483, which requests to "Implement different default templates per locale". However, with this patch, we are a step closer to set a choosen template when the user switch to a certain UI. Change-Id: Ic295482354f343e981eb20908907bd6a945b7120 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/140802 Tested-by: Jenkins Reviewed-by: Laurent Balland <laurent.balland@mailo.fr>
107 lines
5.5 KiB
Makefile
107 lines
5.5 KiB
Makefile
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
|
|
#
|
|
# This file is part of the LibreOffice project.
|
|
#
|
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
#
|
|
|
|
$(eval $(call gb_CustomTarget_CustomTarget,extras/source/templates))
|
|
|
|
# # for OTT templates: mimetype, styles.xml, META-INF/manifest.xml and
|
|
# Thumbnails/thumbnail.png files are automatically added for each template
|
|
# # for OTG templates: mimetype, content.xml, styles.xml, META-INF/manifest.xml and
|
|
# Thumbnails/thumbnail.png files are automatically added for each template
|
|
# list of meta.xml files (one per template) + other files (content.xml, manifest.rdf, settings.xml, pictures...)
|
|
extras_TEMPLATES_XMLFILES := \
|
|
officorr/Modern_business_letter_sans_serif/meta.xml \
|
|
officorr/Modern_business_letter_serif/meta.xml \
|
|
offimisc/Businesscard-with-logo/meta.xml \
|
|
personal/CV/meta.xml \
|
|
personal/Resume1page/meta.xml \
|
|
styles/Default/meta.xml \
|
|
styles/Modern/meta.xml \
|
|
styles/Simple/meta.xml \
|
|
officorr/Modern_business_letter_sans_serif/content.xml \
|
|
officorr/Modern_business_letter_serif/content.xml \
|
|
offimisc/Businesscard-with-logo/content.xml \
|
|
personal/CV/content.xml \
|
|
personal/Resume1page/content.xml \
|
|
officorr/Modern_business_letter_sans_serif/manifest.rdf \
|
|
officorr/Modern_business_letter_serif/manifest.rdf \
|
|
offimisc/Businesscard-with-logo/manifest.rdf \
|
|
personal/CV/manifest.rdf \
|
|
personal/Resume1page/manifest.rdf \
|
|
offimisc/Businesscard-with-logo/settings.xml \
|
|
offimisc/Businesscard-with-logo/Pictures/10000201000001F4000000A0108F3F06.png \
|
|
draw/bpmn/meta.xml \
|
|
l10n/zh_CN_ott_normal/meta.xml \
|
|
l10n/zh_CN_ott_normal/content.xml \
|
|
|
|
# param: style-base (e.g. Modern)
|
|
extras_TEMPLATES_XMLFILES_RELATIVE = $(subst $(1)/,,$(filter $(1)/%,$(extras_TEMPLATES_XMLFILES)))
|
|
|
|
.SECONDEXPANSION:
|
|
# secondexpansion since the patterns not just cover a filename portion, but also include a
|
|
# directory portion with different number of elements
|
|
# copy regular files (mimetype, *.jpg, *.png, *.rdf, *.svg, *.svm, …)
|
|
$(call gb_CustomTarget_get_workdir,extras/source/templates)/% : $(SRCDIR)/extras/source/templates/% \
|
|
| $$(dir $(call gb_CustomTarget_get_workdir,extras/source/templates)/$$*).dir
|
|
$(call gb_Output_announce,templates/$*,$(true),CPY,1)
|
|
$(call gb_Trace_StartRange,templates/$*,CPY)
|
|
cp $< $@
|
|
$(call gb_Trace_EndRange,templates/$*,CPY)
|
|
|
|
# test and copy xml files
|
|
$(call gb_CustomTarget_get_workdir,extras/source/templates)/%.xml : $(SRCDIR)/extras/source/templates/%.xml \
|
|
| $(call gb_ExternalExecutable_get_dependencies,xsltproc) \
|
|
$$(dir $(call gb_CustomTarget_get_workdir,extras/source/templates)/$$*.xml).dir
|
|
$(call gb_Output_announce,templates/$*.xml,$(true),XSL,1)
|
|
$(call gb_Trace_StartRange,templates/$*.xml,XSL)
|
|
$(call gb_ExternalExecutable_get_command,xsltproc) --nonet -o $@ $(SRCDIR)/extras/util/compact.xsl $<
|
|
$(call gb_Trace_EndRange,templates/$*.xml,XSL)
|
|
|
|
# zip files to OTT
|
|
$(call gb_CustomTarget_get_workdir,extras/source/templates)/%.ott : \
|
|
$$(addprefix $(call gb_CustomTarget_get_workdir,extras/source/templates)/$$*/,\
|
|
mimetype $$(call extras_TEMPLATES_XMLFILES_RELATIVE,$$*) ) \
|
|
$$(addprefix $(call gb_CustomTarget_get_workdir,extras/source/templates)/$$*/,\
|
|
styles.xml $$(call extras_TEMPLATES_XMLFILES_RELATIVE,$$*) ) \
|
|
$$(addprefix $(call gb_CustomTarget_get_workdir,extras/source/templates)/$$*/,\
|
|
META-INF/manifest.xml $$(call extras_TEMPLATES_XMLFILES_RELATIVE,$$*) ) \
|
|
$$(addprefix $(call gb_CustomTarget_get_workdir,extras/source/templates)/$$*/,\
|
|
Thumbnails/thumbnail.png $$(call extras_TEMPLATES_XMLFILES_RELATIVE,$$*) )
|
|
$(call gb_Output_announce,templates/$*.ott,$(true),ZIP,2)
|
|
$(call gb_Trace_StartRange,templates/$*.ott,ZIP)
|
|
$(call gb_Helper_abbreviate_dirs,\
|
|
cd $(dir $<) && \
|
|
zip -q0X --filesync --must-match $@ mimetype && \
|
|
zip -qrX --must-match $@ styles.xml META-INF/manifest.xml Thumbnails/thumbnail.png && \
|
|
zip -qrX --must-match $@ $(call extras_TEMPLATES_XMLFILES_RELATIVE,$*) \
|
|
)
|
|
$(call gb_Trace_EndRange,templates/$*.ott,ZIP)
|
|
|
|
# zip files to OTG
|
|
$(call gb_CustomTarget_get_workdir,extras/source/templates)/%.otg : \
|
|
$$(addprefix $(call gb_CustomTarget_get_workdir,extras/source/templates)/$$*/,\
|
|
mimetype $$(call extras_TEMPLATES_XMLFILES_RELATIVE,$$*) ) \
|
|
$$(addprefix $(call gb_CustomTarget_get_workdir,extras/source/templates)/$$*/,\
|
|
content.xml $$(call extras_TEMPLATES_XMLFILES_RELATIVE,$$*) ) \
|
|
$$(addprefix $(call gb_CustomTarget_get_workdir,extras/source/templates)/$$*/,\
|
|
styles.xml $$(call extras_TEMPLATES_XMLFILES_RELATIVE,$$*) ) \
|
|
$$(addprefix $(call gb_CustomTarget_get_workdir,extras/source/templates)/$$*/,\
|
|
META-INF/manifest.xml $$(call extras_TEMPLATES_XMLFILES_RELATIVE,$$*) ) \
|
|
$$(addprefix $(call gb_CustomTarget_get_workdir,extras/source/templates)/$$*/,\
|
|
Thumbnails/thumbnail.png $$(call extras_TEMPLATES_XMLFILES_RELATIVE,$$*) )
|
|
$(call gb_Output_announce,templates/$*.otg,$(true),ZIP,2)
|
|
$(call gb_Trace_StartRange,templates/$*.otg,ZIP)
|
|
$(call gb_Helper_abbreviate_dirs,\
|
|
cd $(dir $<) && \
|
|
zip -q0X --filesync --must-match $@ mimetype && \
|
|
zip -qrX --must-match $@ content.xml styles.xml META-INF/manifest.xml Thumbnails/thumbnail.png && \
|
|
zip -qrX --must-match $@ $(call extras_TEMPLATES_XMLFILES_RELATIVE,$*) \
|
|
)
|
|
$(call gb_Trace_EndRange,templates/$*.otg,ZIP)
|
|
|
|
# vim: set noet sw=4 ts=4:
|