Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Sep 2, 2018. It is now read-only.

Commitc24aaa1

Browse files
committed
Add Makefile copied from python-docs-fr
1 parent3df3585 commitc24aaa1

File tree

1 file changed

+93
-0
lines changed

1 file changed

+93
-0
lines changed

‎Makefile

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
# Makefile for French Python Documentation
2+
#
3+
# Here is what you can do:
4+
#
5+
# - make # Automatically build an html local version
6+
# - make todo # To list remaining tasks
7+
# - make merge # To merge pot from upstream
8+
# - make fuzzy # To find fuzzy strings
9+
# - make progress # To compute current progression
10+
# - make upgrade_venv # To upgrade the venv that compiles the doc
11+
#
12+
# Modes are: autobuild-stable, autobuild-dev, and autobuild-html,
13+
# documented in gen/src/3.6/Doc/Makefile as we're only delegating the
14+
# real work to the Python Doc Makefile.
15+
16+
CPYTHON_CLONE := ../cpython/
17+
SPHINX_CONF :=$(CPYTHON_CLONE)/Doc/conf.py
18+
LANGUAGE := fr
19+
VENV := ~/.venvs/python-docs-i18n/
20+
PYTHON :=$(shell which python3)
21+
MODE := autobuild-dev-html
22+
BRANCH =$(shell git describe --contains --all HEAD)
23+
JOBS = 1
24+
25+
26+
.PHONY: all
27+
all:$(VENV)/bin/sphinx-build$(VENV)/bin/blurb$(SPHINX_CONF)
28+
mkdir -p$(CPYTHON_CLONE)/Doc/locales/$(LANGUAGE)/
29+
ln -nfs$(shell readlink -f .)$(CPYTHON_CLONE)/Doc/locales/$(LANGUAGE)/LC_MESSAGES
30+
.$(VENV)/bin/activate;$(MAKE) -C$(CPYTHON_CLONE)/Doc/ SPHINXOPTS='-j$(JOBS) -D locale_dirs=locales -D language=$(LANGUAGE) -D gettext_compact=0'$(MODE)
31+
32+
33+
$(SPHINX_CONF):
34+
git clone --depth 1 --no-single-branch https://github.com/python/cpython.git$(CPYTHON_CLONE)
35+
36+
37+
$(VENV)/bin/activate:
38+
mkdir -p$(VENV)
39+
$(PYTHON) -m venv$(VENV)
40+
41+
42+
$(VENV)/bin/sphinx-build:$(VENV)/bin/activate
43+
.$(VENV)/bin/activate; python3 -m pip install sphinx
44+
45+
46+
$(VENV)/bin/blurb:$(VENV)/bin/activate
47+
.$(VENV)/bin/activate; python3 -m pip install blurb
48+
49+
50+
.PHONY: upgrade_venv
51+
upgrade_venv:$(VENV)/bin/activate
52+
.$(VENV)/bin/activate; python3 -m pip install --upgrade sphinx blurb
53+
54+
55+
.PHONY: progress
56+
progress:
57+
@python3 -c'import sys; print("{:.1%}".format(int(sys.argv[1]) / int(sys.argv[2])))'\
58+
$(shell msgcat*.po*/*.po | msgattrib --translated | grep -c '^msgid')\
59+
$(shell msgcat*.po*/*.po | grep -c '^msgid')
60+
61+
62+
.PHONY: todo
63+
todo:
64+
forfilein*.po*/*.po;doecho$$(msgattrib --untranslated$$file| grep ^msgid| sed 1d| wc -l )$$file;done| grep -v ^0| sort -gr
65+
66+
67+
.PHONY: merge
68+
merge: upgrade_venv
69+
ifneq "$(shell cd$(CPYTHON_CLONE) 2>/dev/null && git describe --contains --all HEAD)" "$(BRANCH)"
70+
$(error "You're merging from a different branch")
71+
endif
72+
(cd $(CPYTHON_CLONE)/Doc; rm -f build/NEWS)
73+
(cd $(CPYTHON_CLONE); $(VENV)/bin/sphinx-build -Q -b gettext -D gettext_compact=0 Doc pot/)
74+
find $(CPYTHON_CLONE)/pot/ -name '*.pot' |\
75+
while read -r POT;\
76+
do\
77+
PO="./$$(echo "$$POT" | sed "s#$(CPYTHON_CLONE)/pot/##; s#\.pot\$$#.po#")";\
78+
mkdir -p "$$(dirname "$$PO")";\
79+
if [ -f "$$PO" ];\
80+
then\
81+
case "$$POT" in\
82+
*whatsnew*) msgmerge --backup=off --force-po --no-fuzzy-matching -U "$$PO" "$$POT" ;;\
83+
*) msgmerge --backup=off --force-po -U "$$PO" "$$POT" ;;\
84+
esac\
85+
else\
86+
msgcat -o "$$PO" "$$POT";\
87+
fi\
88+
done
89+
90+
91+
.PHONY: fuzzy
92+
fuzzy:
93+
forfilein*.po*/*.po;doecho$$(msgattrib --only-fuzzy --no-obsolete"$$file"| grep -c'#, fuzzy')$$file;done| grep -v ^0| sort -gr

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp