All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jonathan Nieder <jrnieder@gmail.com>
To: Nguyen Thai Ngoc Duy <pclouds@gmail.com>
Cc: "Junio C Hamano" <gitster@pobox.com>,
	git@vger.kernel.org, "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>,
	"Jiang Xin" <worldhello.net@gmail.com>
Subject: Re: [PATCH 03/65] i18n: archive: mark parseopt strings for translation
Date: Wed, 30 May 2012 01:24:24 -0500	[thread overview]
Message-ID: <20120530062424.GA19114@burratino> (raw)
In-Reply-To: <CACsJy8BvZSbsXyh3ct-M3rcWQf9Fw4VDX2VYVy+0Hv+53AQWnw@mail.gmail.com>

Nguyen Thai Ngoc Duy wrote:

>                             Or generate a poisoned .mo file, then make
> git use that.

Yes, I would like that very much.  I had vague ideas of using some
valid language code that doesn't correspond to a human language, but
an alternate GIT_TEXTDOMAINDIR might be simpler and work better.

> Another thing is GETTEXT_POISON poisons too much. printf(_("this is
> %s\n"), path); is turned to "# GETTEXT POISON #". There's no way for
> test scripts to verify the correct "path" output.

Somes like a good change. ;)

"this is %s\n" could be translated to "poison(%s)" or even "THIS IS
%s\n" to make it easy to recognize which string was poisoned.

When i18n plumbing was starting I thought this would be important and
made a mental note to implement a rot13 function that preserves printf
directives.  In the end I have wanted it much less often than I
thought I would.  In tests that check the effect of commands on a
repository, only checking the output of plumbing commands is just a
good idea anyway.  (But I can understand that preserving printf
directives would be useful for people wanting to test the UI.)

UI tests are tricky.  I can't imagine how a good test for translated
request-pull that doesn't pick a particular language could work, for
example.

Well, hopefully the above is amusing.  Sorry to ramble.

Thanks much again for this series --- the translated help makes it
much easier to imagine git to be a native speaker in a locale where
English is not the main language.

Jonathan

  reply	other threads:[~2012-05-30  6:24 UTC|newest]

Thread overview: 87+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-06 14:23 [PATCH 00/65] Mark parseopt strings for translation Nguyễn Thái Ngọc Duy
2012-05-06 14:23 ` [PATCH 01/65] i18n: parseopt: lookup help and argument translations when showing usage Nguyễn Thái Ngọc Duy
2012-05-06 14:23 ` [PATCH 02/65] i18n: apply: mark parseopt strings for translation Nguyễn Thái Ngọc Duy
2012-05-28 11:13   ` [PATCH 03/65] i18n: archive: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 04/65] i18n: add: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 05/65] i18n: bisect--helper: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 06/65] i18n: blame: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 07/65] i18n: branch: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 08/65] i18n: cat-file: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 09/65] i18n: check-attr: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 10/65] i18n: checkout-index: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 11/65] i18n: checkout: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 12/65] i18n: cherry: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 13/65] i18n: clean: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 14/65] i18n: clone: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 15/65] i18n: column: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 16/65] i18n: commit: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 17/65] i18n: config: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 18/65] i18n: count-objects: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 19/65] i18n: describe: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 20/65] i18n: fast-export: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 21/65] i18n: fetch: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 22/65] i18n: fmt-merge-msg: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 23/65] i18n: for-each-ref: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 24/65] i18n: format-patch: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 25/65] i18n: fsck: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 26/65] i18n: gc: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 27/65] i18n: grep: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 28/65] i18n: hash-object: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 29/65] i18n: help: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 30/65] i18n: init-db: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 31/65] i18n: log: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 32/65] i18n: ls-files: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 33/65] i18n: ls-tree: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 34/65] i18n: merge-base: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 35/65] i18n: merge-file: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 36/65] i18n: merge: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 37/65] i18n: mktree: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 38/65] i18n: mv: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 39/65] i18n: name-rev: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 40/65] i18n: notes: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 41/65] i18n: pack-objects: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 42/65] i18n: pack-refs: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 43/65] i18n: prune-packed: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 44/65] i18n: prune: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 45/65] i18n: push: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 46/65] i18n: read-tree: " Nguyễn Thái Ngọc Duy
2012-05-28 11:13     ` [PATCH 47/65] i18n: remote: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 48/65] i18n: replace: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 49/65] i18n: status: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 50/65] i18n: rerere: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 51/65] i18n: reset: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 52/65] i18n: rev-parse: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 53/65] i18n: revert, cherry-pick: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 54/65] i18n: rm: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 55/65] i18n: shortlog: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 56/65] i18n: show-branch: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 57/65] i18n: show-ref: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 58/65] i18n: symbolic-ref: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 59/65] i18n: tag: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 60/65] i18n: update-index: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 61/65] i18n: update-ref: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 62/65] i18n: update-server-info: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 63/65] i18n: verify-pack: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 64/65] i18n: verify-tag: " Nguyễn Thái Ngọc Duy
2012-05-28 11:14     ` [PATCH 65/65] i18n: write-tree: " Nguyễn Thái Ngọc Duy
2012-05-28 22:47     ` [PATCH 03/65] i18n: archive: " Jonathan Nieder
2012-05-29 11:30       ` Nguyen Thai Ngoc Duy
2012-05-29 12:14         ` Jonathan Nieder
2012-05-29 18:49           ` Junio C Hamano
2012-05-30  5:11             ` Nguyen Thai Ngoc Duy
2012-05-30  6:24               ` Jonathan Nieder [this message]
2012-05-30 12:25                 ` Nguyen Thai Ngoc Duy
2012-05-30 12:50                   ` Nguyen Thai Ngoc Duy
2012-05-29 20:31     ` Junio C Hamano
2012-05-29 20:37       ` Jonathan Nieder
2012-05-29 21:08         ` Junio C Hamano
2012-05-30  5:27         ` Nguyen Thai Ngoc Duy
2012-06-02 10:55         ` Nguyen Thai Ngoc Duy
2012-06-02 12:44           ` Jonathan Nieder
2012-06-07 12:31             ` Nguyen Thai Ngoc Duy
2012-06-07 12:41               ` Jonathan Nieder
2012-06-07 12:53                 ` Nguyen Thai Ngoc Duy
2012-06-07 19:50                   ` Jonathan Nieder
2012-06-07 18:03               ` Junio C Hamano
2012-05-08 18:40 ` [PATCH 00/65] Mark " Junio C Hamano
2012-05-18  4:25   ` Nguyen Thai Ngoc Duy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120530062424.GA19114@burratino \
    --to=jrnieder@gmail.com \
    --cc=avarab@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=pclouds@gmail.com \
    --cc=worldhello.net@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.