diff --git a/Tools/make_strings/GNUmakefile b/Tools/make_strings/GNUmakefile index 79bdbde09..353773d95 100644 --- a/Tools/make_strings/GNUmakefile +++ b/Tools/make_strings/GNUmakefile @@ -29,6 +29,8 @@ include ../../config.mak VERSION = 0.4.2 TOOL_NAME = make_strings +MAN1_PAGES = make_strings.1 + make_strings_OBJC_FILES = \ make_strings.m \ SourceEntry.m \ @@ -39,3 +41,5 @@ include GNUmakefile.preamble include $(GNUSTEP_MAKEFILES)/tool.make +include GNUmakefile.postamble + diff --git a/Tools/make_strings/GNUmakefile.postamble b/Tools/make_strings/GNUmakefile.postamble new file mode 100644 index 000000000..a5419943b --- /dev/null +++ b/Tools/make_strings/GNUmakefile.postamble @@ -0,0 +1,98 @@ +# -*-makefile-*- +# +# Makefile.postamble +# +# Copyright (C) 2005, Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either +# version 2 of the License, or (at your option) any later version. +# This program is distributed in the +# hope that it will be useful, but WITHOUT ANY WARRANTY; without even +# the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR +# PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. +# +# Project specific makefile rules +# +# Uncomment the targets you want. +# The double colons (::) are important, do not make them single colons +# otherwise the normal makefile rules will not be performed. +# + +# Things to do before compiling +# before-all:: + +# Things to do after compiling +# after-all:: + +# Things to do before installing +before-install:: + +# Things to do after installing +after-install:: + if [ ! -f $(GNUSTEP_DOC_MAN) ]; then \ + $(MKDIRS) $(GNUSTEP_DOC_MAN); \ + fi; \ + if [ ! -f $(GNUSTEP_DOC_MAN)/man1 ]; then \ + $(MKDIRS) $(GNUSTEP_DOC_MAN)/man1; \ + fi; \ + for file in $(MAN1_PAGES) __done; do \ + if [ $$file != __done ]; then \ + $(INSTALL_DATA) $$file $(GNUSTEP_DOC_MAN)/man1/$$file; \ + which gzip && rm -f $(GNUSTEP_DOC_MAN)/man1/$$file.gz \ + && gzip -9 $(GNUSTEP_DOC_MAN)/man1/$$file; \ + fi; \ + done; \ + +# Things to do before uninstalling +before-uninstall:: + for file in $(MAN1_PAGES); do \ + rm -f $(GNUSTEP_DOC_MAN)/man1/$$file.gz; \ + done; + -rmdir $(GNUSTEP_DOC_MAN)/man1; + -rmdir $(GNUSTEP_DOC_MAN); + +# Things to do after uninstalling +# after-uninstall:: + +# Things to do before cleaning +# before-clean:: + +# Things to do after cleaning +# after-clean:: + +# Things to do before distcleaning +# before-distclean:: + +# Things to do after distcleaning +# after-distclean:: + +# Things to do before checking +# before-check:: + +# Things to do after checking +# after-check:: + + +# +# If building with the Apple Foundation, we don't include the base 'Headers' +# directory in the includes path, but we need the additions headers so we +# link to them from the current directory. +# + +ifeq ($(FOUNDATION_LIB),apple) + +before-all:: + rm -f GNUstepBase + ln -s ../Headers/GNUstepBase GNUstepBase + +after-clean:: + rm -f GNUstepBase + +endif + diff --git a/Tools/make_strings/make_strings.1 b/Tools/make_strings/make_strings.1 new file mode 100644 index 000000000..d2a3409be --- /dev/null +++ b/Tools/make_strings/make_strings.1 @@ -0,0 +1,89 @@ +.TH make_strings 1 "August 16, 2009" "GNUstep" "GNUstep System Manual" + +.SH NAME +make_strings \- tool to build lists of localizable strings from Objective-C files + +.SH SYNOPSIS +.B make_strings +.RB [ --help ] +.RB [ --verbose ] +.RB [ --aggresive-import ] +.RB [ --aggressive-match ] +.RB [ --aggressive-remove ] +.RB [ -L +.IR languages ] +.I files.[hmc...] +.br + +.SH DESCRIPTION +.B make_strings +parses Objective-C files and builds lists of localizable strings. It +then creates new +.I .strings +files or merges the strings with existing +.I .strings +files. It's fairly intelligent when matching old and new strings, and +produces +.I .strings +files that are (supposed to be) easy for a translator to work with. +.PP +.B make_strings +accepts the following options: + +.SH OPTIONS +.TP +.B --help +Prints a short list of available options. +.TP +.B --verbose +Prints additional information while processing. +.TP +.BI -L " languages" +Specify which languages to process. Multuple +.B -L +options are accepted, or multiple +.I languages +defined in one +.B -L +flag. +.TP +.B --aggressive-import +Activates +.B --aggresive-match +and automatically removes "dummy" entries that are added by importing +.I .strings +files which were not created by +.B make_strings +program. This option is suitable when +.B make_strings +is run for the first time and there is an existing +.I .strings +file which contains a fairly accurate translation. +.TP +.B --aggressive-match +This option will make +.B make_strings +assume that matching keys should have matching translations. This can +save lots of work, but it increases the risk of erroneous translation. +.TP +.B --aggressive-remove +Removes obsolete strings/keys. + +.SH EXAMPLES +make_strings \-L "English Swedish Russian" *.[hm] + +.SH SEE ALSO +.BR GNUstep (7). + +.SH AUTHORS +.B make_strings +was written Alexander Malmberg . +.P +This manual page was added by Yavor Doganov . + +.SH COPYRIGHT +Copyright (C) 2009 Free Software Foundation, Inc. +.P +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved.