git-sh-i18n.sh: add no-op gettext() and eval_gettext() wrappers

Add a no-op wrapper library for Git's shell scripts. To split up the
gettext series I'm first submitting patches to gettextize the source
tree before I add any of the Makefile and Shell library changes needed
to actually use them.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Ævar Arnfjörð Bjarmason 2011-05-14 13:47:43 +00:00 коммит произвёл Junio C Hamano
Родитель ba67aaf2d0
Коммит e00cf070a4
4 изменённых файлов: 61 добавлений и 0 удалений

1
.gitignore поставляемый
Просмотреть файл

@ -130,6 +130,7 @@
/git-sh-i18n /git-sh-i18n
/git-sh-i18n--envsubst /git-sh-i18n--envsubst
/git-sh-setup /git-sh-setup
/git-sh-i18n
/git-shell /git-shell
/git-shortlog /git-shortlog
/git-show /git-show

Просмотреть файл

@ -0,0 +1,42 @@
git-sh-i18n(1)
==============
NAME
----
git-sh-i18n - Git's i18n setup code for shell scripts
SYNOPSIS
--------
'. "$(git --exec-path)/git-sh-i18n"'
DESCRIPTION
-----------
This is not a command the end user would want to run. Ever.
This documentation is meant for people who are studying the
Porcelain-ish scripts and/or are writing new ones.
The 'git sh-i18n scriptlet is designed to be sourced (using
`.`) by Git's porcelain programs implemented in shell
script. It provides wrappers for the GNU `gettext` and
`eval_gettext` functions accessible through the `gettext.sh`
script, and provides pass-through fallbacks on systems
without GNU gettext.
FUNCTIONS
---------
gettext::
Currently a dummy fall-through function implemented as a wrapper
around `printf(1)`. Will be replaced by a real gettext
implementation in a later version.
eval_gettext::
Currently a dummy fall-through function implemented as a wrapper
around `printf(1)` with variables expanded by the
linkgit:git-sh-i18n--envsubst[1] helper. Will be replaced by a
real gettext implementation in a later version.
GIT
---
Part of the linkgit:git[1] suite

Просмотреть файл

@ -381,6 +381,7 @@ SCRIPT_LIB += git-rebase--am
SCRIPT_LIB += git-rebase--interactive SCRIPT_LIB += git-rebase--interactive
SCRIPT_LIB += git-rebase--merge SCRIPT_LIB += git-rebase--merge
SCRIPT_LIB += git-sh-setup SCRIPT_LIB += git-sh-setup
SCRIPT_LIB += git-sh-i18n
SCRIPT_PERL += git-add--interactive.perl SCRIPT_PERL += git-add--interactive.perl
SCRIPT_PERL += git-difftool.perl SCRIPT_PERL += git-difftool.perl

17
git-sh-i18n.sh Normal file
Просмотреть файл

@ -0,0 +1,17 @@
#!/bin/sh
#
# Copyright (c) 2010 Ævar Arnfjörð Bjarmason
#
# This is a skeleton no-op implementation of gettext for Git. It'll be
# replaced by something that uses gettext.sh in a future patch series.
gettext () {
printf "%s" "$1"
}
eval_gettext () {
printf "%s" "$1" | (
export PATH $(git sh-i18n--envsubst --variables "$1");
git sh-i18n--envsubst "$1"
)
}