python / python/python-docs-zh-tw

Adopt `potodo` in Makefile

Open
#130 1 comment 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement good first issue
Dominant language
Python
Stars
282
Forks
226
PR merge metrics
No merged PRs in 30d

Description

I found a tool named potodo that provides same functionalities with part of our current Makefile commands but has better format. We can consider adopting this tool in our Makefile (or even storing the output as a file and updating it whenever a PR is merged).

  • Listing untranslated files

    • make todo
      > make todo           
      for file in *.po */*.po; do echo $(msgattrib --untranslated $file | grep ^msgid | sed 1d | wc -l ) $file; done | grep -v ^0 | sort -gr
      929 library/stdtypes.po
      790 library/os.po
      660 whatsnew/3.3.po
      633 library/curses.po
      577 c-api/typeobj.po
      555 whatsnew/3.7.po
      554 library/datetime.po
      539 whatsnew/3.5.po
      539 whatsnew/2.6.po
      518 whatsnew/3.2.po
      517 whatsnew/3.6.po
      ...
      
    • potodo
      > potodo
      # extending (3.17% done)
      
      - building.po                      0 /  23 (  0.0% translated)
      - embedding.po                     1 /  45 (  2.0% translated)
      - extending.po                     2 / 158 (  1.0% translated)
      - newtypes.po                      0 /  91 (  0.0% translated)
      - newtypes_tutorial.po             0 / 123 (  0.0% translated)
      - windows.po                       0 /  21 (  0.0% translated)
      
      
      # faq (10.27% done)
      
      - design.po                       13 / 141 (  9.0% translated), 2 fuzzy
      - extending.po                     0 /  60 (  0.0% translated)
      - general.po                      33 /  91 ( 36.0% translated)
      - gui.po                           2 /  17 ( 11.0% translated)
      - library.po                      11 / 142 (  7.0% translated)
      - programming.po                  13 / 372 (  3.0% translated)
      - windows.po                       3 /  47 (  6.0% translated)
      ...
      
  • Listing fuzzy entries

    • make fuzzy
      > make fuzzy
      for file in *.po */*.po; do echo $(msgattrib --only-fuzzy --no-obsolete "$file" | grep -c '#, fuzzy') $file; done | grep -v ^0 | sort -gr
      163 library/functions.po
      8 library/statistics.po
      5 c-api/function.po
      5 c-api/datetime.po
      4 library/unittest.po
      3 library/heapq.po
      ...
      
    • potodo --only-fuzzy
      > potodo -f
      # c-api (5.20% done)
      
      - datetime.po                      8 /  41 ( 19.0% translated), 5 fuzzy
      - dict.po                          5 /  30 ( 16.0% translated), 1 fuzzy
      - function.po                      4 /  18 ( 22.0% translated), 5 fuzzy
      - unicode.po                       5 / 334 (  1.0% translated), 1 fuzzy
      
      
      # distutils (0.00% done)
      
      - examples.po                      0 /  46 (  0.0% translated), 1 fuzzy
      
      
      # faq (9.22% done)
      
      - design.po                       13 / 141 (  9.0% translated), 2 fuzzy
      ...
      
  • Get overall progress

    • make progress
      > make progress
      4.4%
      
    • potodo | tail -n2 | head -n1 | cut -c 10- | sed 's/[%].*$/%/g'
      > potodo | tail -n2 | head -n1 | cut -c 10- |  sed 's/[%].*$/%/g'
      4.31%
      

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the repository's Makefile commands for todo, fuzzy, and progress, then compare their output with the documented potodo examples in this issue. Check how potodo would be invoked in the Makefile and whether its output should remain a command result or be stored as a file. Done means the selected translation-status commands provide the intended potodo-style results.

Written by the indexing model from the issue text.

Assessment

Domain
documentation, tooling
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.