From f7e7a923aca8be643f9ae6f7252f9fb27b3d2c3b Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Sat, 3 Dec 2011 11:05:10 -0600 Subject: Second part of prior commit --- tde-i18n-pt/docs/tdesdk/Makefile.am | 4 + tde-i18n-pt/docs/tdesdk/Makefile.in | 587 +++ tde-i18n-pt/docs/tdesdk/cervisia/Makefile.am | 4 + tde-i18n-pt/docs/tdesdk/cervisia/Makefile.in | 635 +++ tde-i18n-pt/docs/tdesdk/cervisia/index.cache.bz2 | Bin 0 -> 29260 bytes tde-i18n-pt/docs/tdesdk/cervisia/index.docbook | 4100 ++++++++++++++++++++ tde-i18n-pt/docs/tdesdk/kapptemplate/Makefile.am | 4 + tde-i18n-pt/docs/tdesdk/kapptemplate/Makefile.in | 613 +++ .../tdesdk/kapptemplate/man-kapptemplate.1.docbook | 233 ++ tde-i18n-pt/docs/tdesdk/kbabel/Makefile.am | 4 + tde-i18n-pt/docs/tdesdk/kbabel/Makefile.in | 635 +++ tde-i18n-pt/docs/tdesdk/kbabel/catman.docbook | 248 ++ .../docs/tdesdk/kbabel/dictionaries.docbook | 649 ++++ tde-i18n-pt/docs/tdesdk/kbabel/faq.docbook | 88 + tde-i18n-pt/docs/tdesdk/kbabel/glossary.docbook | 270 ++ tde-i18n-pt/docs/tdesdk/kbabel/index.cache.bz2 | Bin 0 -> 33819 bytes tde-i18n-pt/docs/tdesdk/kbabel/index.docbook | 193 + tde-i18n-pt/docs/tdesdk/kbabel/kbabeldict.docbook | 103 + .../tdesdk/kbabel/man-catalogmanager.1.docbook | 113 + tde-i18n-pt/docs/tdesdk/kbabel/menu.docbook | 2571 ++++++++++++ tde-i18n-pt/docs/tdesdk/kbabel/preferences.docbook | 1953 ++++++++++ tde-i18n-pt/docs/tdesdk/kbabel/using.docbook | 1038 +++++ tde-i18n-pt/docs/tdesdk/kbugbuster/Makefile.am | 4 + tde-i18n-pt/docs/tdesdk/kbugbuster/Makefile.in | 635 +++ tde-i18n-pt/docs/tdesdk/kbugbuster/index.cache.bz2 | Bin 0 -> 2367 bytes tde-i18n-pt/docs/tdesdk/kbugbuster/index.docbook | 108 + tde-i18n-pt/docs/tdesdk/kcachegrind/Makefile.am | 4 + tde-i18n-pt/docs/tdesdk/kcachegrind/Makefile.in | 635 +++ .../docs/tdesdk/kcachegrind/index.cache.bz2 | Bin 0 -> 16451 bytes tde-i18n-pt/docs/tdesdk/kcachegrind/index.docbook | 1036 +++++ tde-i18n-pt/docs/tdesdk/kompare/Makefile.am | 4 + tde-i18n-pt/docs/tdesdk/kompare/Makefile.in | 635 +++ tde-i18n-pt/docs/tdesdk/kompare/index.cache.bz2 | Bin 0 -> 2370 bytes tde-i18n-pt/docs/tdesdk/kompare/index.docbook | 108 + tde-i18n-pt/docs/tdesdk/scripts/Makefile.am | 4 + tde-i18n-pt/docs/tdesdk/scripts/Makefile.in | 613 +++ .../docs/tdesdk/scripts/man-adddebug.1.docbook | 125 + .../docs/tdesdk/scripts/man-cheatmake.1.docbook | 193 + .../tdesdk/scripts/man-create_cvsignore.1.docbook | 79 + .../tdesdk/scripts/man-create_makefile.1.docbook | 168 + .../tdesdk/scripts/man-create_makefiles.1.docbook | 147 + .../docs/tdesdk/scripts/man-cvscheck.1.docbook | 202 + .../tdesdk/scripts/man-cvslastchange.1.docbook | 79 + .../docs/tdesdk/scripts/man-cvslastlog.1.docbook | 67 + .../tdesdk/scripts/man-cvsrevertlast.1.docbook | 74 + .../docs/tdesdk/scripts/man-cxxmetric.1.docbook | 66 + .../docs/tdesdk/scripts/man-demangle.1.docbook | 105 + .../tdesdk/scripts/man-extend_dmalloc.1.docbook | 97 + .../docs/tdesdk/scripts/man-extractrc.1.docbook | 74 + .../docs/tdesdk/scripts/man-fixincludes.1.docbook | 166 + .../docs/tdesdk/scripts/man-po2xml.1.docbook | 100 + .../tdesdk/scripts/man-pruneemptydirs.1.docbook | 110 + .../docs/tdesdk/scripts/man-qtdoc.1.docbook | 138 + .../docs/tdesdk/scripts/man-reportview.1.docbook | 140 + .../docs/tdesdk/scripts/man-split2po.1.docbook | 108 + .../docs/tdesdk/scripts/man-swappo.1.docbook | 98 + .../docs/tdesdk/scripts/man-transxx.1.docbook | 96 + .../docs/tdesdk/scripts/man-xml2pot.1.docbook | 103 + .../docs/tdesdk/scripts/man-zonetab2pot.1.docbook | 102 + .../docs/tdesdk/scripts/tdesvn-build/Makefile.am | 4 + .../docs/tdesdk/scripts/tdesvn-build/Makefile.in | 635 +++ .../tdesdk/scripts/tdesvn-build/index.cache.bz2 | Bin 0 -> 15882 bytes .../docs/tdesdk/scripts/tdesvn-build/index.docbook | 1725 ++++++++ tde-i18n-pt/docs/tdesdk/umbrello/Makefile.am | 4 + tde-i18n-pt/docs/tdesdk/umbrello/Makefile.in | 635 +++ tde-i18n-pt/docs/tdesdk/umbrello/authors.docbook | 46 + .../umbrello/code_import_and_generation.docbook | 163 + tde-i18n-pt/docs/tdesdk/umbrello/credits.docbook | 11 + tde-i18n-pt/docs/tdesdk/umbrello/index.cache.bz2 | Bin 0 -> 19302 bytes tde-i18n-pt/docs/tdesdk/umbrello/index.docbook | 85 + .../docs/tdesdk/umbrello/introduction.docbook | 57 + .../docs/tdesdk/umbrello/other_features.docbook | 76 + .../docs/tdesdk/umbrello/uml_basics.docbook | 782 ++++ .../tdesdk/umbrello/working_with_umbrello.docbook | 405 ++ 74 files changed, 25096 insertions(+) create mode 100644 tde-i18n-pt/docs/tdesdk/Makefile.am create mode 100644 tde-i18n-pt/docs/tdesdk/Makefile.in create mode 100644 tde-i18n-pt/docs/tdesdk/cervisia/Makefile.am create mode 100644 tde-i18n-pt/docs/tdesdk/cervisia/Makefile.in create mode 100644 tde-i18n-pt/docs/tdesdk/cervisia/index.cache.bz2 create mode 100644 tde-i18n-pt/docs/tdesdk/cervisia/index.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/kapptemplate/Makefile.am create mode 100644 tde-i18n-pt/docs/tdesdk/kapptemplate/Makefile.in create mode 100644 tde-i18n-pt/docs/tdesdk/kapptemplate/man-kapptemplate.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/kbabel/Makefile.am create mode 100644 tde-i18n-pt/docs/tdesdk/kbabel/Makefile.in create mode 100644 tde-i18n-pt/docs/tdesdk/kbabel/catman.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/kbabel/dictionaries.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/kbabel/faq.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/kbabel/glossary.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/kbabel/index.cache.bz2 create mode 100644 tde-i18n-pt/docs/tdesdk/kbabel/index.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/kbabel/kbabeldict.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/kbabel/man-catalogmanager.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/kbabel/menu.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/kbabel/preferences.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/kbabel/using.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/kbugbuster/Makefile.am create mode 100644 tde-i18n-pt/docs/tdesdk/kbugbuster/Makefile.in create mode 100644 tde-i18n-pt/docs/tdesdk/kbugbuster/index.cache.bz2 create mode 100644 tde-i18n-pt/docs/tdesdk/kbugbuster/index.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/kcachegrind/Makefile.am create mode 100644 tde-i18n-pt/docs/tdesdk/kcachegrind/Makefile.in create mode 100644 tde-i18n-pt/docs/tdesdk/kcachegrind/index.cache.bz2 create mode 100644 tde-i18n-pt/docs/tdesdk/kcachegrind/index.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/kompare/Makefile.am create mode 100644 tde-i18n-pt/docs/tdesdk/kompare/Makefile.in create mode 100644 tde-i18n-pt/docs/tdesdk/kompare/index.cache.bz2 create mode 100644 tde-i18n-pt/docs/tdesdk/kompare/index.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/Makefile.am create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/Makefile.in create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-adddebug.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-cheatmake.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-create_cvsignore.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-create_makefile.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-create_makefiles.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-cvscheck.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-cvslastchange.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-cvslastlog.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-cvsrevertlast.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-cxxmetric.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-demangle.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-extend_dmalloc.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-extractrc.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-fixincludes.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-po2xml.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-pruneemptydirs.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-qtdoc.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-reportview.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-split2po.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-swappo.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-transxx.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-xml2pot.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/man-zonetab2pot.1.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/Makefile.am create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/Makefile.in create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/index.cache.bz2 create mode 100644 tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/index.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/umbrello/Makefile.am create mode 100644 tde-i18n-pt/docs/tdesdk/umbrello/Makefile.in create mode 100644 tde-i18n-pt/docs/tdesdk/umbrello/authors.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/umbrello/code_import_and_generation.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/umbrello/credits.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/umbrello/index.cache.bz2 create mode 100644 tde-i18n-pt/docs/tdesdk/umbrello/index.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/umbrello/introduction.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/umbrello/other_features.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/umbrello/uml_basics.docbook create mode 100644 tde-i18n-pt/docs/tdesdk/umbrello/working_with_umbrello.docbook (limited to 'tde-i18n-pt/docs/tdesdk') diff --git a/tde-i18n-pt/docs/tdesdk/Makefile.am b/tde-i18n-pt/docs/tdesdk/Makefile.am new file mode 100644 index 00000000000..6869837a64a --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/Makefile.am @@ -0,0 +1,4 @@ +KDE_LANG = pt +SUBDIRS = $(AUTODIRS) +KDE_DOCS = AUTO +KDE_MANS = AUTO diff --git a/tde-i18n-pt/docs/tdesdk/Makefile.in b/tde-i18n-pt/docs/tdesdk/Makefile.in new file mode 100644 index 00000000000..cef604d6c51 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/Makefile.in @@ -0,0 +1,587 @@ +# Makefile.in generated by automake 1.10.1 from Makefile.am. +# KDE tags expanded automatically by am_edit - $Revision: 483858 $ +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +subdir = docs/tdesdk +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.in +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +SOURCES = +DIST_SOURCES = +#>- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ +#>- html-recursive info-recursive install-data-recursive \ +#>- install-dvi-recursive install-exec-recursive \ +#>- install-html-recursive install-info-recursive \ +#>- install-pdf-recursive install-ps-recursive install-recursive \ +#>- installcheck-recursive installdirs-recursive pdf-recursive \ +#>- ps-recursive uninstall-recursive +#>+ 7 +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive nmcheck-recursive bcheck-recursive +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) +#>- DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +#>+ 1 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +ARTSCCONFIG = @ARTSCCONFIG@ +AUTOCONF = @AUTOCONF@ +AUTODIRS = @AUTODIRS@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CONF_FILES = @CONF_FILES@ +CYGPATH_W = @CYGPATH_W@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOPIDLNG = @DCOPIDLNG@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DEFS = @DEFS@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +GMSGFMT = @GMSGFMT@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +KCFG_DEPENDENCIES = @KCFG_DEPENDENCIES@ +KCONFIG_COMPILER = @KCONFIG_COMPILER@ +KDECONFIG = @KDECONFIG@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_RPATH = @KDE_RPATH@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MAKEKDEWIDGETS = @MAKEKDEWIDGETS@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XMLLINT = @XMLLINT@ +X_RPATH = @X_RPATH@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +am__leading_dot = @am__leading_dot@ +am__tar = @am__tar@ +am__untar = @am__untar@ +#>- bindir = @bindir@ +#>+ 2 +DEPDIR = .deps +bindir = @bindir@ +build_alias = @build_alias@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host_alias = @host_alias@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_kcfgdir = @kde_kcfgdir@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_styledir = @kde_styledir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +kde_widgetdir = @kde_widgetdir@ +tdeinitdir = @tdeinitdir@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +xdg_appsdir = @xdg_appsdir@ +xdg_directorydir = @xdg_directorydir@ +xdg_menudir = @xdg_menudir@ +KDE_LANG = pt +#>- SUBDIRS = $(AUTODIRS) +#>+ 1 +SUBDIRS =. umbrello kbabel scripts kompare kbugbuster cervisia kapptemplate kcachegrind +KDE_DOCS = AUTO +KDE_MANS = AUTO +#>- all: all-recursive +#>+ 1 +all: docs-am all-recursive + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +#>- @for dep in $?; do \ +#>- case '$(am__configure_deps)' in \ +#>- *$$dep*) \ +#>- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ +#>- && exit 0; \ +#>- exit 1;; \ +#>- esac; \ +#>- done; \ +#>- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/Makefile'; \ +#>- cd $(top_srcdir) && \ +#>- $(AUTOMAKE) --gnu docs/tdesdk/Makefile +#>+ 12 + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/Makefile.in +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +$(RECURSIVE_CLEAN_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done + list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + distdir=`$(am__cd) $(distdir) && pwd`; \ + top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$top_distdir" \ + distdir="$$distdir/$$subdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +uninstall: uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +#>- clean-am: clean-generic mostlyclean-am +#>+ 1 +clean-am: clean-bcheck clean-generic mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +info: info-recursive + +info-am: + +install-data-am: + +install-dvi: install-dvi-recursive + +install-exec-am: + +install-html: install-html-recursive + +install-info: install-info-recursive + +install-man: + +install-pdf: install-pdf-recursive + +install-ps: install-ps-recursive + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ + install-strip + +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic ctags \ + ctags-recursive distclean distclean-generic distclean-tags \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ + tags-recursive uninstall uninstall-am + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: + +#>+ 2 +KDE_DIST=Makefile.in Makefile.am + +#>+ 2 +docs-am: + +#>+ 15 +force-reedit: + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/Makefile.in + + +#>+ 21 +clean-bcheck: + rm -f *.bchecktest.cc *.bchecktest.cc.class a.out + +bcheck: bcheck-recursive + +bcheck-am: + @for i in ; do \ + if test $(srcdir)/$$i -nt $$i.bchecktest.cc; then \ + echo "int main() {return 0;}" > $$i.bchecktest.cc ; \ + echo "#include \"$$i\"" >> $$i.bchecktest.cc ; \ + echo "$$i"; \ + if ! $(CXX) $(DEFS) -I. -I$(srcdir) -I$(top_builddir) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) --dump-class-hierarchy -c $$i.bchecktest.cc; then \ + rm -f $$i.bchecktest.cc; exit 1; \ + fi ; \ + echo "" >> $$i.bchecktest.cc.class; \ + perl $(top_srcdir)/admin/bcheck.pl $$i.bchecktest.cc.class || { rm -f $$i.bchecktest.cc; exit 1; }; \ + rm -f a.out; \ + fi ; \ + done + + +#>+ 3 +final: + $(MAKE) all-am + +#>+ 3 +final-install: + $(MAKE) install-am + +#>+ 3 +no-final: + $(MAKE) all-am + +#>+ 3 +no-final-install: + $(MAKE) install-am + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo + +#>+ 3 +nmcheck: +nmcheck-am: nmcheck diff --git a/tde-i18n-pt/docs/tdesdk/cervisia/Makefile.am b/tde-i18n-pt/docs/tdesdk/cervisia/Makefile.am new file mode 100644 index 00000000000..6869837a64a --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/cervisia/Makefile.am @@ -0,0 +1,4 @@ +KDE_LANG = pt +SUBDIRS = $(AUTODIRS) +KDE_DOCS = AUTO +KDE_MANS = AUTO diff --git a/tde-i18n-pt/docs/tdesdk/cervisia/Makefile.in b/tde-i18n-pt/docs/tdesdk/cervisia/Makefile.in new file mode 100644 index 00000000000..d915aff972f --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/cervisia/Makefile.in @@ -0,0 +1,635 @@ +# Makefile.in generated by automake 1.10.1 from Makefile.am. +# KDE tags expanded automatically by am_edit - $Revision: 483858 $ +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +subdir = docs/tdesdk/cervisia +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.in +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +SOURCES = +DIST_SOURCES = +#>- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ +#>- html-recursive info-recursive install-data-recursive \ +#>- install-dvi-recursive install-exec-recursive \ +#>- install-html-recursive install-info-recursive \ +#>- install-pdf-recursive install-ps-recursive install-recursive \ +#>- installcheck-recursive installdirs-recursive pdf-recursive \ +#>- ps-recursive uninstall-recursive +#>+ 7 +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive nmcheck-recursive bcheck-recursive +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) +#>- DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +#>+ 1 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +ARTSCCONFIG = @ARTSCCONFIG@ +AUTOCONF = @AUTOCONF@ +AUTODIRS = @AUTODIRS@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CONF_FILES = @CONF_FILES@ +CYGPATH_W = @CYGPATH_W@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOPIDLNG = @DCOPIDLNG@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DEFS = @DEFS@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +GMSGFMT = @GMSGFMT@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +KCFG_DEPENDENCIES = @KCFG_DEPENDENCIES@ +KCONFIG_COMPILER = @KCONFIG_COMPILER@ +KDECONFIG = @KDECONFIG@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_RPATH = @KDE_RPATH@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MAKEKDEWIDGETS = @MAKEKDEWIDGETS@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XMLLINT = @XMLLINT@ +X_RPATH = @X_RPATH@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +am__leading_dot = @am__leading_dot@ +am__tar = @am__tar@ +am__untar = @am__untar@ +#>- bindir = @bindir@ +#>+ 2 +DEPDIR = .deps +bindir = @bindir@ +build_alias = @build_alias@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host_alias = @host_alias@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_kcfgdir = @kde_kcfgdir@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_styledir = @kde_styledir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +kde_widgetdir = @kde_widgetdir@ +tdeinitdir = @tdeinitdir@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +xdg_appsdir = @xdg_appsdir@ +xdg_directorydir = @xdg_directorydir@ +xdg_menudir = @xdg_menudir@ +KDE_LANG = pt +#>- SUBDIRS = $(AUTODIRS) +#>+ 1 +SUBDIRS =. +KDE_DOCS = AUTO +KDE_MANS = AUTO +#>- all: all-recursive +#>+ 1 +all: docs-am all-recursive + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +#>- @for dep in $?; do \ +#>- case '$(am__configure_deps)' in \ +#>- *$$dep*) \ +#>- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ +#>- && exit 0; \ +#>- exit 1;; \ +#>- esac; \ +#>- done; \ +#>- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/cervisia/Makefile'; \ +#>- cd $(top_srcdir) && \ +#>- $(AUTOMAKE) --gnu docs/tdesdk/cervisia/Makefile +#>+ 12 + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/cervisia/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/cervisia/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/cervisia/Makefile.in +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +$(RECURSIVE_CLEAN_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +#>- distdir: $(DISTFILES) +#>+ 1 +distdir: distdir-nls $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done + list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + distdir=`$(am__cd) $(distdir) && pwd`; \ + top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$top_distdir" \ + distdir="$$distdir/$$subdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +#>- uninstall: uninstall-recursive +#>+ 1 +uninstall: uninstall-docs uninstall-nls uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +#>- clean-am: clean-generic mostlyclean-am +#>+ 1 +clean-am: clean-docs clean-bcheck clean-generic mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +info: info-recursive + +info-am: + +#>- install-data-am: +#>+ 1 +install-data-am: install-docs install-nls + +install-dvi: install-dvi-recursive + +install-exec-am: + +install-html: install-html-recursive + +install-info: install-info-recursive + +install-man: + +install-pdf: install-pdf-recursive + +install-ps: install-ps-recursive + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ + install-strip + +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic ctags \ + ctags-recursive distclean distclean-generic distclean-tags \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ + tags-recursive uninstall uninstall-am + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: + +#>+ 2 +KDE_DIST=index.docbook index.cache.bz2 Makefile.in Makefile.am + +#>+ 24 +index.cache.bz2: $(srcdir)/index.docbook $(KDE_XSL_STYLESHEET) index.docbook + @if test -n "$(MEINPROC)"; then echo $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; fi + +docs-am: index.cache.bz2 + +install-docs: docs-am install-nls + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/cervisia + @if test -f index.cache.bz2; then \ + echo $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/cervisia/; \ + $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/cervisia/; \ + elif test -f $(srcdir)/index.cache.bz2; then \ + echo $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/cervisia/; \ + $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/cervisia/; \ + fi + -rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/cervisia/common + $(LN_S) $(kde_libs_htmldir)/$(KDE_LANG)/common $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/cervisia/common + +uninstall-docs: + -rm -rf $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/cervisia + +clean-docs: + -rm -f index.cache.bz2 + + +#>+ 13 +install-nls: + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/cervisia + @for base in index.docbook ; do \ + echo $(INSTALL_DATA) $$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/cervisia/$$base ;\ + $(INSTALL_DATA) $(srcdir)/$$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/cervisia/$$base ;\ + done + +uninstall-nls: + for base in index.docbook ; do \ + rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/cervisia/$$base ;\ + done + + +#>+ 5 +distdir-nls: + for file in index.docbook ; do \ + cp $(srcdir)/$$file $(distdir); \ + done + +#>+ 15 +force-reedit: + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/cervisia/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/cervisia/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/cervisia/Makefile.in + + +#>+ 21 +clean-bcheck: + rm -f *.bchecktest.cc *.bchecktest.cc.class a.out + +bcheck: bcheck-recursive + +bcheck-am: + @for i in ; do \ + if test $(srcdir)/$$i -nt $$i.bchecktest.cc; then \ + echo "int main() {return 0;}" > $$i.bchecktest.cc ; \ + echo "#include \"$$i\"" >> $$i.bchecktest.cc ; \ + echo "$$i"; \ + if ! $(CXX) $(DEFS) -I. -I$(srcdir) -I$(top_builddir) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) --dump-class-hierarchy -c $$i.bchecktest.cc; then \ + rm -f $$i.bchecktest.cc; exit 1; \ + fi ; \ + echo "" >> $$i.bchecktest.cc.class; \ + perl $(top_srcdir)/admin/bcheck.pl $$i.bchecktest.cc.class || { rm -f $$i.bchecktest.cc; exit 1; }; \ + rm -f a.out; \ + fi ; \ + done + + +#>+ 3 +final: + $(MAKE) all-am + +#>+ 3 +final-install: + $(MAKE) install-am + +#>+ 3 +no-final: + $(MAKE) all-am + +#>+ 3 +no-final-install: + $(MAKE) install-am + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo + +#>+ 3 +nmcheck: +nmcheck-am: nmcheck diff --git a/tde-i18n-pt/docs/tdesdk/cervisia/index.cache.bz2 b/tde-i18n-pt/docs/tdesdk/cervisia/index.cache.bz2 new file mode 100644 index 00000000000..99d521ddc08 Binary files /dev/null and b/tde-i18n-pt/docs/tdesdk/cervisia/index.cache.bz2 differ diff --git a/tde-i18n-pt/docs/tdesdk/cervisia/index.docbook b/tde-i18n-pt/docs/tdesdk/cervisia/index.docbook new file mode 100644 index 00000000000..198c2502bac --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/cervisia/index.docbook @@ -0,0 +1,4100 @@ + + + + ssh"> + rsh"> + + + CVS"> +]> + + + + +Manual do &cervisia; + +BerndGehrmann
bernd@mail.berlios.de
+
+CarlosWoelz
carloswoelz@imap-mail.com
+
+ + +PedroMorais
morais@kde.org
Tradução
+ +
+ + +1999 +2000 +2001 +2002 +Bernd Gehrmann + + + +2004 +Carlos Woelz + + +&FDLNotice; + +2004-06-06 +2.01.90 + + +O &cervisia; oferece uma vista gráfica sobre o &CVS;. + + + +KDE +tdesdk +Cervisia +CVS +controlo de versões +controlo de revisões (versões) + + +
+ + +Introdução + +O &cervisia; é uma interface para o sistema de controlo de versões amigável. O objectivo é suportar o &CVS; e outros sistemas de controlo de versões numa interface unificada, incluindo os visualizadores de resolução de conflitos, de diferenças e do histórico, o estado dos ficheiros da área de trabalho e o suporte para a maioria das funções de controlo de versões. Você poderá obter o &cervisia; se compilar o módulo 'tdesdk' ou instalar o pacote 'tdesdk' fornecido pela sua distribuição. De momento, só é suportado o &CVS;, mas espera-se que outros sistemas de controlo de versões possam ser integrados no futuro. + +Um sistema de controlo de versões é uma ferramenta para registar, gerir e distribuir diferentes versões dos ficheiros. O &CVS; é um sistema de controlo de versões. Ele permite-lhe partilhar as suas modificações facilmente, dado que cada um dos participantes poderá trabalhar na sua cópia local ao mesmo tempo, sem ter medo de sobrepor as modificações de cada um. Ela permite a recuperação das versões anteriores (o que é útil para analisar os erros), a criação de ramificações (para o desenvolvimento paralelo ou para várias versões lançadas do código), entre outras coisas. + +O repositório principal contém normalmente um projecto colaborativo (comercial ou não), mas você poderá tirar partido das funcionalidades de controlo de versões que o &CVS; oferece, mesmo para um projecto desenvolvimento por si. É fácil configurar um repositório local e você irá ganhar a possibilidade de registar as alterações que provocaram os erros, reverter as alterações, evitar a perda acidental de informação, &etc;. + +O repositório contém os ficheiros do projecto, e cada um dos colaboradores mantém a sua cópia local, chamada cópia de trabalho ou espaço de trabalho; uma pessoa poderá adicionar as suas modificações ao repositório principal (um processo chamado de "committing" ou "envio") e / ou actualizar a sua própria cópia para reflectir as alterações recentes feitas por outros colaboradores. + + + + +Começar + + +Aceder ao Repositório + +Nesta secção, iremos mostrar como usar a funcionalidade do sistema do controlo de versões com o &cervisia;, basicamente para obter os módulos do repositório e para trabalhar com eles. Para o fazer, você precisa de ter acesso ao repositório como cliente, o que significa que alguém (provavelmente o administrador do repositório do &CVS;) lhe deu uma conta no servidor. Em alternativa, você poderá criar facilmente um repositório local para o seu próprio projecto. + +Se planeia desenvolver um projecto complexo, é uma boa ideia usar as funcionalidades do &CVS;, mesmo que seja o único programador. Você poderá fazer todas as alterações na área local e usar o &cervisia; (ou qualquer outra ferramenta do &CVS;) para se actualizar e enviar as suas alterações. Desta forma, você conseguirá registar as alterações que provocaram erros, repor alterações, evitar perdas de informação acidentais, &etc;. Ao usar o &cervisia;, é simples criar um repositório local. + + +Criar um Repositório Local + +Abra a janela Criar um Novo Repositório (cvs init), escolhendo a opção Repositório Criar.... + +Carregue no botão ... para seleccionar a pasta onde deseja criar o repositório ou indique a sua localização no campo de texto. Por exemplo, se quiser colocar o repositório na pasta /home/utilizador e dar-lhe o nome raiz_cvs, deverá então escrever /home/utilizador/raiz_cvs no campo de texto ou seleccionar a pasta /home/utilizador com o extractor de ficheiros, adicionando então raiz_cvs. + +Confirme, carregando no botão OK. O &cervisia; irá criar e inicializar a nova pasta do repositório. + +Agora, você poderá importar o seu trabalho actual para o repositório ou simplesmente criar uma pasta no repositório, para iniciar um novo módulo do zero. + + + + + + +O &cervisia; oferece uma interface integrada para gerir todas as suas localizações do repositório, a janela para Configurar o Acesso aos Repositórios. Para a mostrar, seleccione a opção Repositório Repositórios.... + +
+Uma imagem da janela Configurar o Acesso aos Repositórios do &cervisia; + + +Uma imagem da janela Configurar o Acesso aos Repositórios do &cervisia; + +
+ +Existem vários métodos para aceder a um repositório de CVS. Poderá ser através da autenticação por senha (:pserver:), por uma linha de comandos segura (using :ext:), um repositório local (:local:), &etc;. O formato para a localização do repositório é (os itens opcionais aparecem entre parêntesis rectos): + + +[:método:][[utilizador][:senha]@]servidor[:[porto]]/localização/do/repositório + + +Nem todos esses itens (o utilizador, senha, máquina ou porto) são sempre necessários para aceder ao repositório. A informação necessária depende do método de acesso usado, o qual pode ser classificado da seguinte forma: + + + + +Local + + +O método de acesso local é o método por omissão usado pelo &CVS;. Como tal, é opcional adicionar o método :local: à localização do repositório: você poderá indicar simplesmente a localização da pasta que contém o repositório de &CVS; e é acessível a partir do seu computador, como por exemplo, /local/do/repositorio, ou para dar um exemplo da vida-real, /home/cvs. + +Poderá estar fisicamente num disco que seja montado por NFS, mas este é um detalhe irrelevante. Se você criou um repositório local, a localização será simplesmente o nome absoluto da directoria do mesmo. + + + + +rsh + + +A localização do repositório parece-se com algo do género :ext:utilizador@nome.da.maquina.com:/local/do/repositorio. + +Este método necessita que você tenha uma conta de utilizador na máquina servidora (neste caso, na nome.da.maquina.com e use uma linha de comandos remota para comunicar. Por omissão, o &CVS; usa o ↱ para este fim, contudo o ↱ há muito que é considerado inseguro, e está a ser substituído em larga escala pelo &ssh;. + +Se você precisar de usar o &ssh;, você precisa de alterar a variável de ambiente $CVS_RSH para &ssh;, ao usar o cliente do cvs. O &cervisia; suporta isto com facilidade. + + + +Repare que o &cervisia; não pode responder aos possíveis pedidos de senhas da máquina servidora. Você precisa de se certificar que alguma linha de comandos remota funciona sem necessitar que você introduza a senha. Com o ↱ simples, isto poderá ser conseguido, por exemplo, se criar um ficheiro .rhosts na sua área pessoal com uma lista das máquinas de confiança (veja a página de manual do ↱). + +Com o &ssh;, isso poderá ser conseguido se você copiar a sua chave pública identity.pub, localizada na pasta $HOME/.ssh/ para o servidor. Neste caso, a chave não poderá estar cifrada com nenhuma senha (veja a página de manual do &ssh;e a FAQ do &CVS;/SSH no SourceForge). Se você não tiver a certeza acerca destes problemas, pergunte ao seu administrador de sistemas. + + + + + +pserver + + +O nome do repositório parece-se com algo do género :pserver:utilizador@nome.da.maquina.com:/local/do/repositorio + +Este método acede ao servidor através de um protocolo com uma autenticação relativamente fraca (o pserver significa 'password authentication' - autenticação por senha). Antes de poder usar um desses servidores, você precisa de um utilizador e uma senha cedidos pelo administrador de sistemas do &CVS;. Lembre-se que o seu utilizador na autenticação de &CVS; não corresponde necessariamente ao utilizador do sistema. Antes de poder aceder ao servidor de &CVS;, você terá de se autenticar. + +Os projectos 'open source' oferecem tipicamente o acesso anónimo do CVS ao seu código. Isto significa que você poderá obter facilmente a última versão do código, modificar e criar ficheiros de diferenças ('patches') em relação ao repositório, sem que seja necessária uma conta de CVS. Como regra geral, o CVS anónimo usa a autenticação por senhas (:pserver:), e é um repositório apenas para leitura, o que o impede de enviar as suas alterações directamente para o repositório. + + + + + +Em sabendo o método de acesso e a localização do repositório, você poderá adicioná-lo à lista de repositórios do &cervisia;: + + +Adicionar um Novo Repositório + +Abra a janela para Configurar o Acesso aos Repositórios, escolhendo a opção Repositório Repositórios.... + +Carregue no botão Adicionar... para abrir a janela Adicionar um Repositório. + +Indique a localização do repositório no campo Repositório:. O &cervisia; irá desactivar automaticamente as áreas da janela que não sejam relevantes para o método de acesso que você tenha introduzido. + +Se você for usar o método 'ext' para aceder ao repositório, indique a linha de comandos remota que irá usar (⪚, a '&ssh;') no campo Usar a 'shell' remota. + +Carregue em OK. Você irá ver o repositório que introduziu presente na lista de repositórios. + +Se o método de acesso ao repositório que introduziu foi a autenticação por senha (pserver), você terá de se autenticar antes de se ligar ao servidor. Carregue no repositório na lista para o seleccionar e carregue no botão Ligar.... Indique a sua senha na janela que aparece. +Se você introduziu com sucesso a sua senha, a coluna de Estado do repositório 'pserver' irá mudar de Não ligado para Ligado. + +Carregue em OK para aplicar as suas modificações ou adicione outra localização à lista. O &cervisia; irá guardar tantas localizações quantas desejar. + + + +
+ + + +Importar um Módulo Para o Repositório + +Nesta secção, iremos discutir como é que se coloca um novo projecto no repositório do &CVS;. Se você apenas quiser trabalhar num projecto existente que já se encontre num repositório, poderá ignorar esta secção. + +Existem duas formas de colocar um projecto no &CVS;: + + + +Importe os ficheiros e pastas para um novo módulo, usando a janela de importação do &cervisia;. Os módulos são as pastas de topo na árvore de pastas do repositório do &CVS; e são usadas para separar e organizar os vários projectos de 'software' dentro do repositório. + +Crie um módulo vazio e adicione os ficheiros e pastas novos manualmente. Você irá ter mais controlo, mas irá ocupar provavelmente um pouco mais de tempo. + + + + +Tenha em mente que o &CVS; foi desenhado inicialmente para lidar com ficheiros de texto. Muitas das funcionalidades, como a junção de versões, a criação de diferenças de forma legível, etc... só são efectuadas em ficheiros de texto. Isto não significa que não possa usar o CVS para manter os ficheiros binários, significa apenas que você terá de indicar explicitamente ao CVS se é um ficheiro de texto ou binário. Se declarar o tipo errado de ficheiro, você poderá ter problemas com as funcionalidades do &CVS; para esses ficheiros, ficando eles corrompidos. + + + +A importação de um projecto (como um módulo novo) tem algumas vantagens: você irá importar todos os ficheiros e pastas recursivamente, sendo o módulo criado automaticamente para si. Isto torna a importação de grandes projectos existentes para o repositório mais simples. Contudo, existem algumas desvantagens: você não pode usar a janela de importação do &cervisia; para adicionar ficheiros aos módulos existentes, assim como também não pode importar os ficheiros como texto ou binários. Você poderá dar a volta a esta limitação se criar uma pasta com ficheiros de apenas um dos tipos ou indicando ainda os padrões dos ficheiros que deverão ser ignorados durante o processo de importação. + +Por exemplo, suponha que o seu projecto só contém ficheiros de texto e algumas imagens PNG (ficheiros binários). Você poderá dizer ao &CVS; para ignorar todos os ficheiros com o padrão *.png enquanto importa os outros ficheiros como texto, ou poderá ainda mover as imagens para uma pasta separada, importando depois os ficheiros restantes (como ficheiros de texto). De qualquer das formas, você terá de obter o módulo novo importado para uma nova cópia loca, copiar os ficheiros e pastas que faltam para lá, adicionar e enviar os mesmos para o repositório para terminar o processo de importação. + +Como alternativa, você poderá adicionar os ficheiros e pastas manualmente, criando um módulo vazio para eles. Para adicionar um módulo vazio a um repositório, basta criar uma pasta nova na pasta de base do repositório do &CVS;. O nome dessa pasta nova será o nome do módulo. Extraia (faça 'checkout') do novo módulo vazio. Depois copie os ficheiros e pastas para a área de trabalho, adicione-os e envie-os para o repositório do &CVS;. + + +
+Uma imagem da janela de importação do &cervisia; + + +Uma imagem da janela de importação do &cervisia; + +
+ +No você poderá ver a janela que o ajuda a importar um projecto como um módulo. Para aceder à janela de importação do &cervisia;, escolha o item do menu Repositório Importar.... + + + + +Repositório: +Indique ou seleccione na lista o nome do repositório do &CVS;, também conhecido por $CVSROOT. Você precisa de ter acesso de escrita ao mesmo, e o repositório precisa de estar devidamente inicializado. Se o repositório ainda não existir, inicialize-o com a opção do menu Repositório Criar.... +A lista em baixo apresenta os repositórios que você introduziu anteriormente com a janela Configurar o Acesso aos Repositórios. Se o repositório for remoto, certifique-se que a autenticação resulta; veja em para obter mais informações. + + + +Módulo: +O nome do módulo sob o qual será guardado o projecto. Depois da importação, o projecto poderá ser obtido, usando este nome. Veja em para mais informações. Este é também o nome da pasta correspondente no repositório. + + + +Pasta de Trabalho: +Esta é a pasta de topo do seu projecto que deseja importar. A importação tem início nesta pasta e vai percorrendo para baixo, recursivamente. + + + +Marca do distribuidor: +A marca do vendedor ou distribuidor é usada historicamente para registar o código de terceiros. Basta usar o seu nome de utilizador, se não tiver uma ideia melhor. Não interessa assim tanto o que você introduzir aqui. + + + +Marca de lançamento: +Esta marca ou 'tag' é também usada historicamente para importar versões diferentes do 'software' de terceiros. Se você não estiver a fazer isto, indique algo do género inicio ou um texto XPTO_1_0 em que o XPTO é o nome do seu projecto e o 1.0 é o número da versão que foi importada. + + + +Ignorar os ficheiros: +Se você preencher este campo, é passada uma opção adicional ao comando cvs import. Este item é interpretado como sendo uma lista de padrões de ficheiros separados por espaços, correspondendo aos padrões de ficheiros a ignorar. De um modo geral, uma forma mais limpa e menos sujeita a erros de controlar quais os ficheiros que vão para o repositório é criar uma pasta apenas com os ficheiros que deseja importar e começar a partir daí. Contudo, este item poderá ser útil se o projecto conter ficheiros que são ignorados por omissão pelo &CVS;, p.ex. os ficheiros com o nome core. Nesse caso, basta indicar o carácter ! neste campo. Isto sobrepõe-se ao esquema de ficheiros ignorados do &CVS;; veja isso em . + + + +Comentário: +Use este campo para registar os comentários que você possa ter sobre a origem, a utilização, o desenvolvimento, &etc;, dos ficheiros que está a importar. + + + +Importar como binários +Se você assinalar esta opção, todos os ficheiros serão importados no modo binário, isto é, é passado um argumento ao comando cvs import. + + + +Usar a modificação dos ficheiros como hora de importação +Se usar esta opção, a hora de importação será a hora de modificação dos ficheiros em vez da hora de importação real. + + + + + +Depois de ter preenchido este formulário e confirmar com o OK, é usado o seguinte comando do &CVS;: + +cvs -d repositorio import -m "" modulo marca_vendedor marca_versao + +
+ + + +Obter um Módulo do Repositório +Agora que você definiu com sucesso a localização do seu repositório e importou os ficheiros iniciais para o repositório, é a altura de obter o módulo do repositório do &CVS; para criar a sua área de trabalho. + +Você deverá também saber, se necessário, o nome da ramificação ou marca que deseja usar. + +As ramificações de um módulo são versões paralelas deste. Um bom exemplo da vida real do uso desta funcionalidade é o lançamento de um projecto de 'software'. Depois de uma versão importante ter saído, existem erros no código que deverão ser corrigidos, mas as pessoas poderão também querer adicionar novas funcionalidades à aplicação. É bastante complicado fazer ambas as coisas ao mesmo tempo, porque as novas funcionalidades introduzem normalmente erros novos, tornando difícil lidar com os antigos. Para resolver este dilema, o &CVS; permite-lhe criar uma versão paralela, a qual será chamada a "ramificação de lançamento estável", onde só poderá adicionar correcções de erros, deixando o ramo principal (HEAD) aberto para a adição de novas funcionalidades. + +As marcas ou 'tags' são usadas para marcar uma versão de um projecto. O &CVS; assinala uma dada versão de cada ficheiro com essa marca para que, quando desejar obter ou actualizar para uma dada marca, você obtenha sempre as mesmas versões dos ficheiros. Como tal, em oposição às ramificações ('branches'), as marcas não são dinâmicas: você não poderá desenvolver sobre uma marca. As marcas são úteis para repor o projecto num estado anterior, reproduzir e analisar erros, marcar as versões de lançamento, as grandes alterações no código, &etc;. + +
+Uma imagem da janela de 'checkout' do &cervisia; + + +Uma imagem da janela de 'checkout' do &cervisia; + +
+ + + + +Repositório: +O nome do repositório do &CVS;, também conhecido por $CVSROOT. A lista em baixo apresenta os repositórios que você introduziu anteriormente com a janela Configurar o Acesso aos Repositórios. Se o repositório for remoto, certifique-se que a autenticação resulta; veja isso em . + + + +Módulo: +O nome do módulo a ser obtido. Se você está a trabalhar com um repositório existente, você poderá obter provavelmente este nome do administrador de sistemas ou, se for um repositório 'open source', você poderá obter os nomes dos módulos das páginas Web dos projectos. Se quiser criar um novo módulo do zero com um repositório local, basta criar uma pasta nova na pasta de raiz do repositório local. O nome da pasta será o mesmo que o nome do módulo vazio. +Em alternativa, se o repositório tiver um ficheiro $CVSROOT/modules, você poderá obter uma lista com os módulos disponíveis se carregar no botão Obter a lista. +Lembre-se que é possível obter apenas qualquer subpasta existente do módulo, sem obter todo o resto do módulo. Basta indicar também a localização da subpastas. Por exemplo, se só quiser obter a subpasta doc/cervisia do módulo 'tdesdk', indique tdesdk/doc/cervisia neste campo. + + + +Marca de ramificação: +O nome da ramificação ou marca que deseja obter. Se deixar este campo em branco, o &cervisia; irá obter a ramificação principal (a HEAD). + + + +Pasta de trabalho: +A pasta para onde será transferido o módulo. Tenha em atenção que a pasta de topo da cópia de trabalho é sempre criada como uma pasta com o nome do módulo, sob a pasta que é aqui indicada, a menos que tenha indicado um nome alternativo no campo Extrair como:. + + + +Extrair como: +Isto faz com que os ficheiros sejam extraídos para uma pasta alternativa, sob a pasta de trabalho, em vez de ir para uma pasta com o nome do módulo. + + + +Exportar apenas +Se você assinalar esta opção, os ficheiros serão exportados em vez de ser feito um 'checkout'. A exportação obtém uma cópia dos ficheiros do módulo sem as pastas administrativas do CVS. Por exemplo, a exportação poderá ser usada para preparar o código-fonte para um lançamento. + + + + +
+ + + +O Ecrã Principal, a Ver o Estado dos Ficheiros e a Actualizar +Quando você inicia o &cervisia; e abre uma cópia de trabalho ao escolher a opção Ficheiro Abrir Área Local... , você poderá ver duas áreas principais na janela principal do &cervisia;: a de cima é uma árvore que representa a hierarquia da área de trabalho actual e a da baixo é usada para mostrar os comandos do &CVS; que o &cervisia; emite para efectuar as suas tarefas, assim como o resultado gerado por esses comandos. + +Por omissão, o &cervisia; não mostra os ficheiros contidos nas subpastas, pelo que terá de carregar nas pastas que deseja ver. Para mostrar todos os ficheiros da área local, seleccione a opção Ver Expandir a Árvore de Ficheiros . Para fechar de novo todas as pastas da sua área de trabalho, seleccione Ver Recolher a Árvore de Ficheiros . + +De acordo com a sua configuração nos ficheiros .cvsignore, os ficheiros que você normalmente não quer incluir no repositório - como p.ex. os ficheiros-objecto - não são mostrados. Por cada ficheiro, você poderá ver o seu estado correspondente. Na configuração por omissão, este é "Desconhecido" porque o &cervisia; atrasa a obtenção de informação até que você escolha invocar o Actualizar ou o Estado do menu Ficheiro. Com esta aproximação, você terá uma quantidade mínima de funcionalidade disponível, mesmo que não tenha uma ligação permanente ao servidor do &CVS;. + +
+Uma imagem da janela principal do &cervisia; + + +Uma imagem da janela principal do &cervisia; + +
+ +Os comandos do menu Ficheiro só actuam normalmente nos ficheiros que você tiver marcado. Você também poderá marcar pastas. Agora escolha Estado no menu Ficheiro, carregue em F5 ou com o botão direito do rato nos ficheiros seleccionados e escolha a opção Estado do menu de contexto. O &cervisia; irá enviar um comando + + +cvs update -n nome_ficheiros + + +para obter a informação de estado para os ficheiros marcados. Tenha em atenção que o &cervisia; funciona recursivamente nas subpastas só se você tiver a opção corresponde no menu Configuração seleccionada. De acordo com o estado respectivo do ficheiro, você passa a ver agora um item na coluna Estado: + + + + +Modificado Localmente +Isto significa que você modificou o ficheiro, em comparação com a versão no repositório. + + + + +Adicionado Localmente +Isto significa que o ficheiro não existe no repositório ainda, mas existe na sua pasta local e já o preparou para ser adicionado. A inserção efectiva só ocorre no repositório após um envio de confirmação ('commit'). + + + +Removido Localmente +Isto significa que você já preparou o ficheiro para ser removido, mas ainda existe no repositório. A remoção efectiva só ocorre depois do envio da confirmação ('commit'). + + + +Necessita de Actualização +Isto é mostrado se já existir uma versão mais recente do ficheiro no repositório, p.ex. se alguém já fez alguma alteração ao ficheiro. Normalmente, você necessitará de actualizar este ficheiro para que fique com uma versão actualizada na sua pasta. + + + +Necessita de 'Patch' +Este é praticamente o mesmo que o anterior; a diferença existe apenas no facto de ser necessária apenas uma ligeira actualização, em vez da reposição por completo da nova versão; deste modo, o servidor &CVS; envia só as diferenças face ao ficheiro, em vez de ser o ficheiro todo. + + + +Necessita de Junção +Indica que é necessário fazer uma junção da versão deste ficheiro na sua pasta local com a versão que se encontra no repositório. Isto tipicamente acontece se você efectuou modificações ao ficheiro enquanto que alguém também enviou as suas alterações. Se você optar por actualizar, as modificações no repositório são reunidas no seu ficheiro. No caso de gerar algum conflito (isto é, se alguém efectuou modificações nas mesmas linhas que você), o novo estado passa a "Conflito". + + + +Actualizado +Indica que o ficheiro é idêntico à versão no repositório. + + + +Conflito +É mostrado se este ficheiro ainda está com marcações de conflito nele. Talvez você tenha actualizado anteriormente o ficheiro e não tenha resolvido os conflitos. + + + +Não Está no CVS +Significa que o ficheiro não se encontra registado no repositório do &CVS;. Se você quiser que ele esteja disponível para os outros, deverá adicioná-lo ao repositório. Caso contrário, você poderá pensar em adicioná-lo ao seu ficheiro .cvsignore. + + + + +Agora que você teve uma ideia geral do estado actual do CVS, você poderá querer fazer uma actualização. Marque alguns ficheiros (ou o topo da árvore de pastas, o que significa que marca todos os ficheiros nesta pasta). Agora escolha Actualizar no menu Ficheiro ou carregue com o botão direito na opção Estado do menu de contexto. (Obviamente, você poderá ter escolhido isto no início da sessão). Para alguns dos ficheiros, o estado poder-se-á alterar agora. Tipicamente, os ficheiros que ficaram com "Necessita de 'Patch'" ou "Necessita de Actualização" ficaram actualizados. Por isso, os itens novos seguintes são possíveis na coluna do estado: + + + + +Actualizado +Mostrado se o ficheiro foi actualizado a partir do repositório. + + + +Com 'Patch' +Indica que o servidor do &CVS; enviou uma actualização para este ficheiro e a mesma foi aplicada com sucesso. Se não for aplicada com sucesso, devido a um conflito entre as suas modificações e as que alguém aplicou no repositório, o estado passa agora a Conflito. + + + + +Você poderá ter reparado que, de acordo com o estado do ficheiro, a sua linha tem agora uma cor diferente. As cores são escolhidas de modo a reflectir a prioridade do estado. Por exemplo, um ficheiro com um conflito é marcado a vermelho para lhe mostrar que você tem de resolver um conflito antes de poder continuar a trabalhar no ficheiro. Se a sua pasta contiver uma quantidade grande ficheiros, você poderá perder essa ideia geral. Para obter uma informação mais concisa sobre os ficheiros que não num estado fora do normal, basta carregar no cabeçalho da coluna Estado. A lista dos ficheiros passa então a estar ordenada por prioridade, como tal você terá toda a informação importante no topo da lista. Para voltar à ordenação alfabética, carregue no cabeçalho da coluna Nome do ficheiro. + +
+ +
+ + + +Lidar com Ficheiros + +Toda a funcionalidade usada frequentemente pelo &CVS; está disponível directamente na janela principal do &cervisia;. Os comandos actuam normalmente em vários ficheiros de uma vez, nomeadamente em todos que estão seleccionados no momento. Se a selecção incluir pastas, a sua interpretação dependerá da configuração efectuada nas opções do menu Configuração. Por exemplo, se a opção Configuração'Commit's e remoções recursivos estiver assinalada e se você escolher a opção FicheiroEnviar... com uma pasta seleccionada, então todos os ficheiros da árvore que se situem sob essa pasta serão enviados. Caso contrário, só os ficheiros normais da pasta em si é que serão afectados. + +
+Uma imagem do menu de contexto do &cervisia; + + + +
+ +As acções mais usadas estão também disponíveis se carregar com o botão direito do rato nos ficheiros da árvore, através do menu de contexto. O mostra o menu de contexto da janela principal do &cervisia;. + +Você poderá simplesmente editar um ficheiro se fizer duplo-click nele ou se o seleccionar e carregar em Return. Isto inicia a aplicação por omissão que lida com esse tipo de ficheiro (a aplicação por omissão para cada tipo de ficheiro é uma configuração a nível do &kde;). Se a aplicação por omissão não for a que deseja usar, poderá carregar com o &RMB; no ficheiro e escolher o sub-menu Editar Com e seleccionar uma das outras aplicações que lidam com esse tipo de ficheiro. + + +Adicionar Ficheiros + +A adição de ficheiros a um projecto necessita de dois passos: Primeiro, os ficheiros deverão estar registados no &CVS;, ou por outras palavras, adicionados ao repositório. Isto é necessário mas não suficiente. Para poder colocar de facto os ficheiros no repositório, você terá de os enviar. Este procedimento tem uma vantagem importante: Você poderá enviar os ficheiros (fazer um commit dos mesmos) em conjunto com outras partes do projecto. Ao fazê-lo, uma pessoa poderá ver facilmente (por exemplo, nos e-mails dos envios) que todas estas alterações fazem parte de um todo. + +Para esse fim, marque todos os ficheiros a serem adicionados na janela principal do &cervisia;. Depois, escolha a opção FicheiroAdicionar ao Repositório..., ou carregue com o botão direito do rato nos ficheiros marcados e escolha Adicionar ao Repositório.... A janela do CVS Add irá aparecer, listando os ficheiros que você marcou e pedindo a confirmação. Carregue depois em OK. + +O &cervisia; emite então um comando + + +cvs add nomes de ficheiros + + +Se a operação for bem sucedida, a coluna do estado deverá passar a dizer "Adicionado ao repositório" para os ficheiros adicionados. + +O &CVS; não está desenhado para oferecer um controlo de versões significativo para os ficheiros binários. Por exemplo, a junção de ficheiros binários normalmente não faz sentido. Para além disso, por omissão, o &CVS; efectua a expansão de palavras-chave (⪚ no texto $Revision: 1.6 $), quando as alterações de um ficheiro são confirmadas através de um 'commit'. Nos ficheiros binários, essas alterações poderão corromper o ficheiro e torná-lo completamente inútil. + +Para poder desactivar este comportamento, você deverá fazer o 'commit' dos ficheiros binários (ou de outros ficheiros, como os PostScript), escolhendo a opção FicheiroAdicionar Binário.... A janela do CVS Add irá aparecer, listando os ficheiros que marcou e pedindo a confirmação. Carregue então em OK. + +O &cervisia; emite então um comando + + +cvs add -kb nomes de ficheiros + + + + + + +Remover Ficheiros + +Tal como a adição de ficheiros, a remoção dos mesmos é feita em dois passos: Primeiro, os ficheiros têm de ficar registados como removidos, escolhendo a opção FicheiroRemover do repositório ou carregando com o botão direito do rato nos ficheiros seleccionados e escolhendo a opção Remover do Repositório... do menu de contexto. A janela de Remoção do CVS irá aparecer, indicando os ficheiros que seleccionou e pedindo-lhe uma confirmação. Carregue em OK, para que o &cervisia; emita o comando + +cvs remove -f nomes de ficheiros + + +Depois de isto, esta modificação prévia terá de ser confirmada, possivelmente em conjunto com outras modificações ao projecto. + +O comando acima só funciona se o ficheiro estiver actualizado. Caso contrário, você irá obter uma mensagem de erro. Este comportamento é importante: Se você tiver modificado o ficheiro em comparação com a versão no repositório, ou se alguém fez alguma modificação, você terá de ver primeiro se você deseja mesmo eliminar essas alterações. + + + + + +Adicionar e Remover Pastas + +As pastas são tratadas fundamentalmente de forma diferente dos ficheiros normais pelo &CVS;. Elas não estão sob o controlo de versões, i.e. você não pode dizer que pastas existiam no projecto numa dada altura. Para além disso, as pastas nunca podem ser removidas explicitamente (excepto se as remover directamente no repositório). + +Como substituto, o &CVS; segue a convenção de que uma pasta "não existe" numa dada versão de um projecto se estiver vazia. Essa convenção poderá ser reforçada se usar a opção no cvs update e no cvs checkout. Esta opção poderá ser definida no menu ConfiguraçãoLimpar as Pastas Vazias ao Actualizar. + +Pode-se adicionar uma pasta ao repositório com a opção do menu FicheiroAdicionar ao Repositório.... ou carregando com o &RMB; na pasta desejada e escolhendo Adicionar ao Repositório... no menu de contexto. Repare que, em comparação à adição de ficheiros, a adição das pastas não necessita de uma confirmação ('commit'). + + + +cvs add nome_directoria + + + + + + +Enviar os Ficheiros + +Quando você efectuar um dado conjunto de alterações à sua cópia de trabalho e quiser que os outros programadores tenham acesso a elas, você poderá enviá-las e 'confirmá-las', fazendo o commit. Com esse commit, você coloca as suas versões dos ficheiros modificados como versões novas no repositório. Uma actualização subsequente por outro programador irá trazer as suas modificações para a cópia de trabalho dele. + +Para enviar um conjunto de ficheiros, seleccione-os na janela principal do &cervisia; e escolha a opção FicheiroEnviar... ou seleccione-os com o botão direito do rato e escolhendo a opção Enviar... do menu de contexto. + +
+Uma imagem da janela de envio ('commit') do &cervisia; + + + +
+ +Você irá obter uma janela que lhe mostra uma lista dos ficheiros seleccionados e uma mensagem de registo para as suas alterações em baixo. O &cervisia; ajuda-o de várias formas a arranjar uma mensagem de registo significativa: Primeiro, na lista de ficheiros, você poderá fazer duplo-click num ficheiro ou carregar em Return para poder ver as alterações que você fez ao ficheiro. Segundo, dá-lhe uma lista das mensagens de registo que você usou anteriormente numa lista. Terceiro, esta janela está integrada com o editor do ChangeLog do &cervisia;. Quando tiver terminado esta janela, o comando + + +cvs commit -m mensagem nomes dos ficheiros + + +é utilizado. + + +Um erro comum que você poderá encontrar ao enviar as actualizações é o Up-to-date check failed (a verificação da actualização falhou). Isto significa que alguém fez alterações no repositório sem que você tenha actualizado a sua área de trabalho. Ou, mais tecnicamente, a sua versão da BASE não é a mais recente na sua ramificação respectiva. Nesse caso, o &CVS; recusa-se a reunir as suas modificações no repositório. A solução passa por actualizar, resolver os conflitos e envar de novo. Claro, se você estiver a trabalhar num projecto de 'software', é normalmente uma boa técnica verificar se o programa ainda continua a funcionar depois de você ter feito a alteração - em resumo, poderá acontecer que hajam interacções erradas entre as suas modificações e as que foram efectuadas pelas outras pessoas, o que poderá dar origem a erros no código. + + +Outro erro normal resulta na mensagem de erro Sticky tag 'X' for file 'X' is not a branch (A marca fixa 'X' do ficheiro não é uma ramificação). Isto acontece quando você tenta fazer 'commit' de um ficheiro que você extraiu anteriormente para uma dada versão fixa ou uma marca ('tag') fixa com o comando + +%cvs update -r X + +(que é ⪚ usada pelo item do menu AvançadoActualizar para 'Tag'/Data...). Nesse caso, a marca do ficheiro fica fixa, i.e, as actualizações posteriores não lhe trazem a versão mais recente da ramificação ('branch'). Se você quiser enviar versões posteriores para essa ramificação, você terá de actualizar para o nome da marca antes de poder fazer novos 'commits'. + + +Com o &cervisia;, é bastante simples manter um ficheiro de ChangeLog que esteja em conformidade com o formato definido pelas sugestões de codificação da GNU. Para o usar, escolha a opção FicheiroInserir Registo do ChangeLog.... Se existir um ficheiro com o nome ChangeLog na pasta de topo da sua área local, este ficheiro será carregado e você terá a hipótese de o editar. Para tal, no topo do ficheiro, é introduzido um item com a data actual e o nome do seu utilizador (o qual poderá ser configurado tal como é descrito em ). Quando você fechar esta janela ao carregar em OK, a próxima janela de envio das alterações que você abrir terá a mensagem de registo igual à mensagem que você introduziu no registo de alterações. + +
+ + + +Resolver Conflitos + +Os conflitos poderão ocorrer sempre que você fizer alterações a um ficheiro que foi também modificado por outro utilizador. O conflito é detectado pelo &CVS; logo que você actualizar o ficheiro modificado. O &CVS; irá então tentar reunir as modificações enviadas pelo outro programador para a sua cópia de trabalho. A reunião irá falhar se tanto a sua modificação como a dele foram em partes comuns do ficheiro, onde então o servidor do &CVS; irá enviar uma mensagem de erro. + +Na janela principal do &cervisia;, os ficheiros com conflitos são indicados com "Conflito" na coluna do estado e com uma cor vermelha. A sua tarefa é agora resolver esses conflitos antes de enviar os ficheiros. O &CVS; recusar-se-á a enviar quaisquer ficheiros com conflitos, até que estes tenham sido alterados. Na janela principal, você poderá resolver obviamente os conflitos da forma tradicional: basta fazer duplo-click no ficheiro em questão e editá-lo com o seu editor favorito. + +O &CVS; marca as alterações em conflito, colocando marcas no meio dos ficheiros com o seguinte formato: + +<<<<<<< +Alterações na sua cópia local +======= +Alterações no repositório +>>>>>>> número_de_versão + + +Você deverá substituir este bloco por inteiro com a nova versão reunida. Claro, você tem uma grande liberdade ao resolver um conjunto de conflitos: você poderá decidir, por cada conflito, qual das versões alternativas é que ficará no fim. Você poderá também decidir que ambas as versões estão erradas e então decide escrever uma rotina inteira ou o ficheiro por completo. + +Felizmente, o &cervisia; oferece uma interface mais simpática para lidar com estes conflitos. Isto não significa que nunca terá de editar manualmente os ficheiros, mas pelo menos pode eliminar a necessidade de o fazer para as resoluções de conflitos simples. Para usar a janela de Resolução do CVs do &cervisia;, escolha FicheiroResolver... ou carregue com o botão direito do rato no ficheiro marcado e seleccione Resolver... no menu de contexto. + +
+Uma imagem da janela de resolução do &cervisia; + + +Uma imagem da janela de resolução do &cervisia; + +
+ +No cimo da janela, você vê A sua versão (A) do ficheiro do lado esquerdo e a Outra versão (B) do lado direito. As diferenças entre eles estão marcadas a vermelho. Por baixo destas duas versões, você poderá ver a Versão reunida. Esta reflecte a secção que será gravada assim que você carregar no botão Gravar. + +Você poderá mudar entre as diferentes secções se carregar em << ou em >>. Na parte ao meio e em baixo da janela, você poderá ver a secção que está marcada de momento. Por exemplo, a 2 de 8 significa que você está na segunda secção diferente de um total de 8. + +Você poderá então decidir, secção a secção, qual a versão que deseja ter no ficheiro reunido. Se carregar em A, você irá colocar a versão que editou. Se carregar em B, você irá colocar a versão do repositório. Se carregar em A+B, ambas as versões serão adicionadas, em que a sua versão virá primeiro. A B+A irá conter o mesmo resultado, mas a ordem será diferente: primeiro a versão do repositório e depois a sua. + +Se não estiver satisfeito com nenhuma destas versões, carregue em Editar para abrir um editor de texto simples, onde você poderá editar a secção. Quando tiver terminado, carregue em OK para voltar à janela de Resolução do CVS para continuar a resolver os conflitos. Irá ver a secção que editou na Versão reunida, com as suas modificações. + +Para gravar as suas modificações, sobrepondo a cópia de trabalho local, carregue em Gravar. Lembre-se que isto irá gravar as opções, não só na secção que está a ver de momento, mas em todas as secções do ficheiro. Se quiser gravar noutro ficheiro, carregue em Gravar Como.... Carregue em Fechar para sair da janela. Se fechar a janela sem gravar, as alterações que tiver feito serão perdidas. + +
+ +
+ + + +Obter Informações Acerca de Ficheiros e Criar 'Patches' + + +Ver as Diferenças Entre Versões + +Existem vários locais no &cervisia; onde você poderá pedir uma janela que mostre as diferenças entre versões de um ficheiro: + + + +Na janela principal, você poderá escolher a opção VerDiferenças do Repositório (BASE).... Esta opção baseia-se no comando cvs diff e mostra-lhe as diferenças entre a versão na sua área de trabalho e a versão com que actualizou da última vez (também conhecida por BASE). Esta é particularmente útil antes de você enviar as alterações do seu ficheiro, para que consiga arranjar uma mensagem de registo apropriada. + +Você poderá ver as diferenças entre a versão na sua área de trabalho e a versão no ramo principal de desenvolvimento (também chamado de HEAD) se escolher Ver Diferenças do Repositório (HEAD).... + +Você poderá ver as diferenças entre as duas últimas versões do ficheiro seleccionado se escolher VerÚltima Alteração.... + +Você poderá aceder às Diferenças do Repositório (BASE)..., Diferenças do Repositório (HEAD)... e Últimas Alterações... no menu de contexto da janela principal, se carregar com o botão direito do rato no ficheiro que deseja analisar. + +Na janela que é apresentada quando você faz o 'commit' de um conjunto de ficheiros, você poderá pedir uma janela com as diferenças ao seleccionar o nome de um ficheiro na lista, quer fazendo duplo-click nele quer carregando em Return. Isto é muito semelhante a usar o VerDiferenças do Repositório (BASE)... com o respectivo ficheiro na janela principal. + +Na janela de Ver o Histórico, você poderá marcar duas versões de um ficheiro e pedir uma janela que mostre as diferenças entre elas (veja a secção ). + + + +Como você poderia estar à espera, o &cervisia; não coloca directamente o resultado do comando diff no seu terminal, mas mostra-lhe uma vista gráfica como aparece em . + +
+Uma imagem da janela de diferenças do &cervisia; + + +Uma imagem da janela de diferenças do &cervisia; + +
+ +O texto na janela é uma variante melhorada do texto que é dado pelo comando 'diff' com a opção . Você poderá ver as versões com diferenças em duas janelas, com as linhas organizadas de forma a que você consiga fazer uma comparação lado-a-lado. Isto significa que, onde o texto foi adicionado ou removido, a janela respectiva mostra linhas em branco com o marcador +++++ do lado esquerdo. Nos outros lados, você poderá ver o número actual de cada linha na coluna da esquerda. + +Na segunda coluna da janela da direita, você poderá ver o tipo de alteração que foi feito. Os tipos possíveis são Adicionar, Remover e Modificar. As linhas respectivas são marcadas a azul, a verde e a vermelho. No meio da janela, existe uma imagem comprimida das marcações de cores. Desta forma, você poderá ter uma ideia geral das alterações todas no ficheiro. Você também poderá usar a posição das regiões coloridas da imagem comprimida como uma orientação, quando você mexe as barras de posicionamento. + +Normalmente, as barras de posicionamento da janela esquerda e da direita estão sincronizadas, i.e., se você posicionar do lado esquerdo, o lado direito é deslocado da mesma forma. Você poderá activar isto se desligar a opção Sincronizar as barras de posicionamento. + +Para mais informações sobre como personalizar a janela de diferenças, veja . + +
+ + +Criar 'Patches' + +Em algumas ocasiões, você poderá querer oferecer as suas modificações para serem revistas, antes de as enviar, ou então poderá não ter acesso de escrita no repositório (pelo que não poderá enviar directamente as alterações). O &CVS; oferece alguns formatos-padrão para partilhar as modificações na sua cópia local, para que as pessoas possam rever as suas alterações, testá-las na sua cópia local e aplicá-las no repositório do &CVS;. Um ficheiro que contenha essas diferenças é chamado de patch e é gerado pelo comando cvs diff, da mesma forma que as diferenças no . A partilha de 'patches' em vez de conjuntos de ficheiros requer menor largura da banda e as alterações são mais simples de lidar, dado que você poderá enviar apenas um ficheiro que contém todas as diferenças de vários ficheiros de código. + +O &cervisia; dá-lhe o acesso a esta funcionalidade ao escolher a opção AvançadoCriar um 'Patch' do Repositório. + +A acção Criar um 'Patch' do Repositório extrai um ficheiro com todas as modificações em todos os ficheiros da sua cópia local, em relação ao repositório de BASE. Como tal, a selecção dos ficheiros na janela principal não irá afectar o ficheiro que será gerado. + +Outra possibilidade é seleccionar um ficheiro da janela principal e escolher a opção Ver o Registo... do menu Ver ou carregar com o botão direito do rato no ficheiro seleccionado e escolher Ver o Registo... do menu de contexto, para abrir a janela de navegação do histórico. Agora, seleccione a versão com a qual deseja criar um 'patch', sendo esta a versão "A" e carregue no botão Criar 'Patch'.... Isto irá gerar um ficheiro com as diferenças entre o ficheiro seleccionado na sua área local e a versão seleccionada como versão "A". + +Antes de gerar o ficheiro do 'patch', o &cervisia; mostra uma janela que lhe permite configurar o formato do resultado. + +
+Uma imagem da janela de 'patches' do &cervisia; + + +Uma imagem da janela de 'patches' do &cervisia; + +
+ + + + +Formato de Saída +Existem três formatos do resultado disponíveis: +Normal: um formato que poderá ser usado para que o editor 'ed' crie automaticamente outra cópia do ficheiro antigo para gerar o novo. No formato do resultado normal, os caracteres < e > marcam as alterações e não existe nenhuma informação de contexto. +Unificado: o formato mais usado para trocar 'patches'. O formato unificado usa linhas de contexto para além dos números de linha para registar as diferenças. Isto torna o processo de aplicação de 'patches' mais robusto. Este formato mostra as diferenças de uma forma compacta e legível, com um cabeçalho para cada ficheiro envolvido, assim como algumas secções separadas (blocos) com cada diferença. As linhas de contexto disponíveis para cada diferença tornam a leitura das modificações mais simples. No formato unificado, os caracteres + e - marcam as alterações. +Contexto, o qual apresenta a mesma informação do formato unificado, mas de uma forma menos compacta. No formato de resultado com contexto, o carácter ! marca as alterações. + + + +Número de linhas de contexto: +Defina aqui o número de linhas de contexto para os formatos unificado e de contexto. Esta opção não está disponível para o formato de resultado normal, dado que neste formato não é registada nenhuma informação de contexto. Quanto mais informação de contexto, mais fácil será ler o resultado em bruto, e mais precisa se torna a aplicação do 'patch', mas aumenta o tamanho do mesmo. É recomendado usar pelo menos duas linhas de contexto para uma operação correcta de aplicação do 'patch'. + + + +Opções para Ignorar +Assinale aqui as alterações que não deverão ser consideradas como diferenças ao gerar o 'patch'. + + + + + +Depois de definir o formato do resultado, o &cervisia; gera o 'patch' e mostra a janela para Gravar Como. Indique nesta janela o nome do ficheiro e a localização do 'patch'. + + +
+ + +Ver uma Versão Anotada de um Ficheiro + +Com o comando cvs annotate, o &CVS; oferece a possibilidade de ver - para cada linha de um ficheiro - quem modificou uma dada linha mais recentemente. Esta vista poderá ser útil para descobrir quem introduziu uma dada alteração no comportamento de um ficheiro ou quem deverá ser contactado no caso de uma dada alteração ou erro no código. + +O &cervisia; dá-lhe acesso a esta funcionalidade, mas enriquece a informação de uma forma interactiva. Você obtém uma vista anotada se seleccionar VerAnotar.... Outra possibilidade é carregar no botão Anotar da janela de Ver o Histórico. Em , você poderá ver uma imagem da janela. + +
+Uma imagem da janela de anotações do &cervisia; + + +Uma imagem da janela de anotações do &cervisia; + +
+ +Na janela de anotações, você poderá ver numa janela a última versão do ficheiro seleccionado (ou a versão "A", no caso de ter lançado a janela de anotações a partir da janela de Ver o Histórico). Nas colunas antes do texto, você poderá ver alguma informação relacionada com a última alteração em cada linha. Na primeira coluna, é mostrado o número da versão. Na segunda coluna, você o nome do autor dessa versão. Finalmente, na terceira coluna, você verá o conteúdo real dessa linha. + +Por consequência, quando uma linha parecer estranha para si ou se você assumir que existe nela um erro, você poderá ver imediatamente que foi o responsável por essa linha. Todavia não vê só isso, mas também poderá descobrir porque é que essa linha foi alterada. Para isso, passe o cursor do rato por cima do número de versão respectivo. Nesse caso, aparecerá uma dica que lhe mostra a mensagem de registo e a data da alteração. + +
+ + + +Navegar nos Registos do &CVS; + +Quando você marcar um ficheiro na janela principal e escolher a opção Ver o Registo... do menu Ver ou carregar com o botão direito do rato no ficheiro marcado e escolher Ver o Registo... do menu de contexto, a janela do Registo de CVS é apresentada (se marcar mais do que um, nada irá acontecer, dado que o &cervisia; só consegue gerar e processar o registo para um ficheiro de cada vez). Esta janela oferece alguma funcionalidade para além de mostrar o histórico do ficheiro. Ao usá-lo como um navegador de versões, você poderá: + + + +Ver a versão, o autor, a data, a ramificação, a mensagem da alteração e as marcas para cada versão do ficheiro seleccionado. + +Ver uma representação gráfica em árvore que mostra as ramificação e as marcações do ficheiro seleccionado. + +Ver qualquer versão do ficheiro marcado (com a aplicação por omissão). + +Ver uma versão anotada de uma versão qualquer do ficheiro seleccionado + +Ver as diferenças entre qualquer par de versões do ficheiro seleccionado, incluindo os pares com a versão actual na área local. + +Criar 'patches' que contenham as diferenças entre qualquer par de versões do ficheiro seleccionado, incluindo os pares com a cópia de trabalho da sua área local. + + + +
+Uma imagem da janela do &cervisia; de navegação no histórico + + +Uma imagem da janela do &cervisia; de navegação no histórico + +
+ +Você poderá optar por ver o histórico devolvido pelo comando cvs log (no Resultado do CVS) como uma Árvore ou como uma Lista. O que você preferir é, obviamente, uma questão de gosto e depende da informação em que você está interessado. A árvore é uma representação intuitiva do que foi feito nas várias ramificações ('branches') e por que autores. Como dicas, você poderá ver as mensagens de registo correspondentes. A lista é, por natureza, linear e como tal não dá uma ideia imediata das ramificações. Por outro lado, concentra-se em informações mais relevantes com menos espaço de ecrã, nomeadamente a hora de cada alteração do ficheiro e a primeira parte da mensagem de registo. A informação do resultado do CVS é completa, mas extensa e algumas vezes difícil de ler. Para aliviar estes problemas, você tem a possibilidade de procurar texto no resultado do CVS, carregando no botão Procurar.... + +Para obter mais informações acerca de uma dada versão, você poderá carregar nela tanto na lista como na árvore. Os campos no meio da janela serão então preenchidos com a informação completa fornecida pelo cvs log. Você poderá marcar duas versões, chamadas de "A" e "B", que são relevantes se você tirar partido das funcionalidades posteriores disponibilizadas através dos botões. A versão "A" poderá ser escolhida com o botão esquerdo do rato, enquanto que a "B" será com o botão do meio. Na lista, você poderá também navegar com as teclas dos cursores. Para poder marcar as versões "A" e "B", use as combinações de teclas CtrlA e CtrlB, respectivamente. Se usar a janela do Resultado do CVS, você poderá carregar em Seleccionar a versão A ou Seleccionar a versão B para marcar as versões correctas. + +Se carregar no botão Anotar, você irá obter uma janela que mostra o texto do ficheiro pertencente à versão marcada como "A". Cada linha é precedida da informação sobre quem editou desta última vez, bem como em que versão isso aconteceu. Você poderá obter mais informações sobre a visualização das versões anotadas em . + +Se você carregar no botão Diff, será invocada uma chamada cvs diff para que você obtenha uma janela na qual todas as modificações entre as duas versões marcadas são mostradas. Se você marcar a versão "A", mas não a versão "B", o &cervisia; irá gerar as modificações entre a versão do ficheiro marcada como a versão "A" e a cópia de trabalho do ficheiro. Isto permite-lhe ver as diferenças entre a sua versão do ficheiro e qualquer versão disponível no &CVS;. Para tornar mais simples a visualização das alterações, são usadas cores diferentes para marcar as linhas que foram adicionadas, removidas ou simplesmente alteradas. Você poderá obter mais informações sobre como ver as diferenças em . + +Se você carregar no botão Criar 'Patch'..., você irá obter uma janela na qual poderá definir as opções de formato para gerar um ficheiro que contenha todas as modificações entre as duas versões seleccionadas que estão à vista. Se você marcar a versão "A", mas não a versão "B", o &cervisia; irá gerar as modificações entre a versão do ficheiro marcada como "A" e a cópia local do ficheiro. Isto permite-lhe gerar um 'patch' ou ficheiro de diferenças entre a sua versão do ficheiro e qualquer versão disponível no &CVS;. Depois de configurar o formato do 'patch' na janela e de carregar em OK, será executado um comando cvs diff para gerar o ficheiro de diferenças. Uma janela para Gravar Como irá então aparecer. Indique nela o nome do ficheiro e a sua localização, para que o &cervisia; grave o ficheiro com o 'patch' gerado. Você poderá obter mais informações sobre como criar 'patches' e as opções do formato do 'patch' em . + +Se você carregar no botão Ver, o &cervisia; irá obter a versão assinalada como "A" e mostrá-la com a aplicação por omissão para o seu tipo de ficheiro. + +Carregue no botão Fechar para sair da janela e voltar à janela principal. + + +Para gerar o registo que serve de base à janela do Registo do CVS, o &cervisia; emite o seguinte comando: + + + +cvs log nome_ficheiro + + +
+ + +Navegar no Histórico + +Se o repositório usado tem o registo activo, o &cervisia; poder-lhe-á apresentar um histórico de certos eventos, como os 'checkout's, os 'commit's, os 'rtag's, os 'update's e os 'release's. Escolha o Histórico do menu Ver, para que o &cervisia; envie o comando + + +cvs history -e -a + + +Isto irá obter o ficheiro de registo completo do servidor, isto é, uma lista dos eventos para todos os utilizadores e para todos os módulos. Isto poderá ser uma quantidade enorme de dados. + +Agora você poderá ver a lista de eventos, ordenada pela data. Na segunda coluna é mostrado o tipo do evento: + + + +Checkout - O utilizador que é mostrado na coluna 'Autor' extraiu para ele um módulo + +Tag - Um utilizador usou o comando cvs rtag. Tenha em atenção que a utilização do cvs tag (tal como é feito pelo Avançado'Tag'/'Branch'... command) não é registada na base de dados do histórico. Isto tem razões históricas (veja a FAQ do &CVS;). + +Release - Um utilizador deixou um módulo. De facto, este comando é usado raramente e não é de muito valor. + +Update, Deleted - Um utilizador efectuou uma actualização num ficheiro que foi removido no repositório. Como consequência, o ficheiro foi removido na cópia de trabalho dele. + +Update, Copied - Um utilizador fez uma actualização num ficheiro. Foi copiada uma versão nova para a pasta de trabalho. + +Update, Merged - Um utilizador fez uma actualização de um ficheiro. As modificações na versão do ficheiro no repositório foram reunidas com a versão de trabalho dele. + +Update, Conflict - Um utilizador fez uma actualização a um ficheiro e foi detectado um conflito com as modificações dele. + +Commit, Modified - Um utilizador enviou as alterações feitas por ele. + +Commit, Added - Um utilizador adicionou um ficheiro e enviou-o. + +Commit, Removed - Um utilizador removeu um ficheiro e confirmou essa remoção. + + + +
+Uma imagem da janela de histórico do &cervisia; + + +Uma imagem da janela de histórico do &cervisia; + +
+ +Você poderá ordenar a lista por outro critério, se simplesmente carregar no respectivo cabeçalho da coluna. Para poder ordenar os itens de histórico nos quais está interessado, existem várias opções de filtragem activadas através de opções: + + +Mostrar os eventos de 'commit' - mostra as modificações confirmadas pelos utilizadores +Mostrar os eventos de 'checkout' - mostra as obtenções completas dos módulos +Mostrar os eventos de 'tag' - mostrar a criação de marcas ('tags') e ramificações ('branches') +Mostrar outros eventos - mostra os eventos que não estão incluídos acima +Só o utilizador - mostra apenas os eventos que foram causados por um dado utilizador +Só os ficheiros correspondentes a - filtra os nomes dos ficheiros por uma dada expressão regular +Só as pastas correspondentes a - filtra os nomes das pastas de acordo com uma dada expressão regular + + +Os caracteres especiais reconhecidos pela correspondência de expressões regulares são: + + + +O x* corresponde a qualquer número de ocorrências dos carácter x. + +O x+ corresponde a uma ou mais ocorrências do carácter x. + +O x? corresponde a zero ou uma ocorrências do carácter x. + +O ^ corresponde ao início do texto. + +O $ corresponde ao fim do texto. + +O [a-cx-z] corresponde a um conjunto de caracteres, ⪚ aqui é o conjunto que consiste em a,b,c,x,y,z. + + + +
+ + +
+ + +Utilização Avançada + + +Actualizar para uma Marca, Ramificação ou Data + +As ramificações de um módulo são versões paralelas deste. Um bom exemplo da vida real do uso desta funcionalidade é o lançamento de um projecto de 'software'. Depois de uma versão importante ter saído, existem erros no código que deverão ser corrigidos, mas as pessoas poderão também querer adicionar novas funcionalidades à aplicação. É bastante complicado fazer ambas as coisas ao mesmo tempo, porque as novas funcionalidades introduzem normalmente erros novos, tornando difícil lidar com os antigos. Para resolver este dilema, o &CVS; permite-lhe criar uma versão paralela, a qual será chamada a "ramificação de lançamento estável", onde só poderá adicionar correcções de erros, deixando o ramo principal (HEAD) aberto para a adição de novas funcionalidades. + +As marcas ou 'tags' são usadas para marcar uma versão de um projecto. O &CVS; assinala uma dada versão de cada ficheiro com essa marca para que, quando desejar obter ou actualizar para uma dada marca, você obtenha sempre as mesmas versões dos ficheiros. Como tal, em oposição às ramificações ('branches'), as marcas não são dinâmicas: você não poderá desenvolver sobre uma marca. As marcas são úteis para marcar as versões de lançamento, as grandes alterações no código, &etc; + +Quando você estiver a desenvolver ou a seguir o desenvolvimento de um projecto de 'software', não precisa necessariamente de trabalhar com o ramo principal durante o tempo todo. Depois de um lançamento, você poderá querer continuar com a ramificação publicada durante algum tempo, para apreciar a sua estabilidade relativa, corrigir erros, traduzir o código, &etc; Para fazer tudo isso, você precisa de se actualizar para a ramificação lançada. Todos os seus ficheiros ficarão actualizados de acordo com a última versão dos ficheiros nessa ramificação. Depois da actualização, todas as suas novas alterações serão também enviadas para essa nova ramificação. + +Também, se pretender seguir um erro que foi atribuído a uma versão marcada anteriormente, o &CVS; oferece-lhe a possibilidade de obter o 'software' tal e qual foi lançado, actualizando para essa marca. Para além disso, se você quiser obter uma versão anterior do seu projecto, você poderá actualizar a sua cópia local para uma dada data. Isto poderá ser útil se foi introduzido um erro no projecto entre duas versões e se você tem uma opinião sobre quando foi. Quando você actualizar para uma determinada data ou marca, as versões dos seus ficheiros serão as mesmas que as versões nessa data específica ou as versões com essa marca. + +Antes de se actualizar para uma determinada ramificação ou marca, certifique-se que enviou todas as suas alterações para a ramificação em que está a trabalhar. Se não estiver ainda pronto para enviar as suas alterações, mas se não as quiser perder, não se actualize para a nova ramificação, dado que poderá perder as suas alterações. Em alternativa, você poderá fazer uma nova extracção ou 'checkout', para trabalhar em paralelo com ambas as versões. + +
+Uma imagem da janela do &cervisia; de actualização para uma 'tag' + + +Uma imagem da janela do &cervisia; de actualização para uma 'tag' + +
+ + + +Actualizar para uma ramificação ('branch') +Seleccione esta opção para actualizar para uma dada ramificação. Indique o nome da mesma no campo de texto (ou carregue no botão Obter Lista para obter uma lista com todas as ramificações do servidor do &CVS;, seleccionando a que deseja na lista). + + + +Actualizar para uma marca ('tag') +Seleccione esta opção para actualizar para uma dada marca. Indique o nome da mesma no campo de texto (ou carregue no botão Obter Lista para obter uma lista com todas as marcas do servidor do &CVS;, seleccionando a que deseja na lista). + + + +Actualizar para uma data +Seleccione esta opção para actualizar para uma determinada data. No campo em baixo, você poderá indicar uma grande variedade de formatos. Um formato possível é o aaaa-mm-dd em que o aaaa é o ano, o mm é o mês (numérico) e o dd é o dia. Algumas alternativas poderão ser algumas frases em inglês como yesterday (ontem) ou 2 weeks ago (há 2 semanas atrás). + + + + +Ambas as opções acima indicadas tornam uma marca ou data 'fixas', &ie; você não poderá efectuar mais modificações nesses ficheiros (a menos que a marca seja de uma ramificação). Para obter voltar ao ramo principal, também conhecido como a ramificação com o nome HEAD, use o item do menu AvançadoActualizar para o HEAD. + +O comando enviado para actualizar para uma ramificação ou marca é: cvs update -r marca + + +O comando executado para actualizar para uma data é: cvs update -D data + + +O comando usado para actualizar para o ramo principal (HEAD) é: cvs update + + +
+ + + +Criação de Marcas ('Tags') e Ramificações ('Branches') + +Aqui discute-se apenas os aspectos técnicos da utilização das 'tags' e dos 'branches'. Se você é apenas um utilizador, e não o administrador do repositório, você não será confrontado com o problemas, provavelmente. Se você for, por outro lado, o seu próprio administrador, você deverá ler primeiro acerca dos problemas não-técnicos que acompanham a gestão de ramificações, para poder ter uma ideia de quão moroso e sujeito a erros poderá ser a gestão de ramificações diferentes de um projecto. O apêndice inclui algumas referências sobre este tópico. + +A criação de marcas simples ('tags') é algo que você faz normalmente quando é lançada uma versão, por isso você poderá voltar em qualquer altura ao estado do projecto nesse momento. As marcas têm normalmente um nome que consiste no nome do projecto e no número de versão. Por exemplo, o &cervisia; 1.0 está disponível com a marca CERVISIA_1_0. O &cervisia; reforça as regras restritas do &CVS; sobre o que constitui um nome de marca válido. Deverá começar por uma letra e só poderá conter letras, números, hífenes e sublinhados. + +Normalmente, você irá marcar o projecto inteiro (ainda que, claro, o &CVS; permita marcar apenas um sub-conjunto). Para esse fim, marque a pasta do nível de top na janela e escolha Avançado'Tag'/'Branch'. Agora, indique o nome da marca, carregue em Return e é tudo. + +Criar uma ramificação não é mais complicado do que isso. Na janela da marca, assinale a opção Criar uma ramificação com esta 'tag'. Você poderá também remover uma marca ('tag') existente: Escolha a opção AvançadoRemover 'Tag' na janela principal. + +Outro aspecto das ramificações é a junção das modificações de uma ramificação para a ramificação actual. Se você for fazer isso, escolha a opção AvançadoReunir.... A janela que aparece dá-lhe então duas opções: + +Você pode reunir todas as modificações feitas numa ramificação para a ramificação actual. Nesse caso, assinale a opção Reunir a partir da ramificação e indique o nome da ramificação a partir da qual deseja fazer a junção. O &cervisia; irá então executar o comando + + +cvs update ramificacao + + +A outra possibilidade será juntar apenas as modificações feitas entre duas marcas de uma ramificação. Isto normalmente acontece quando você reúne a partir da mesma ramificação para o ramo principal várias vezes. Nesse caso, assinale a opção Reunir as modificações e indique (pela ordem correcta) as duas marcas relevantes. Isto irá dar origem a um comando + + +cvs update ramificacao1 ramificacao2 + + + + + + +Utilizar Vigias ('Watches') + +Uma vigia é o nome convencional para a funcionalidade do &CVS; que permite notificar os utilizadores do repositório, sempre que um ficheiro for alterado ou que algum utilizador começou a editar um ficheiro. A utilização das vigias obriga a que o ficheiro $CVSROOT/CVSROOT/notify tenha sido configurado convenientemente. Isto não será aqui discutido; se você precisar de mais informações sobre a configuração do ponto de vista do administrador, veja um dos livros que é indicado no apêndice. + +O suporte principal de vigias no &cervisia; são seis itens do menu. + +Para poder adicionar uma vigia a um ou vários ficheiros, use a opção AvançadoAdicionar Vigia.... Na janela que você irá obter, poderá optar por ser notificado para qualquer um dos tipos de eventos que o &CVS; suporta. Por exemplo, se você só quiser ser notificado sempre que um ficheiro é actualizado por outra pessoa, assinale as opções e 'Commits'. Se você quiser ser notificado por qualquer evento relacionado com os ficheiros marcados, assinale a opção Todos. A linha de comandos usada quando você aceitar a janela será + + +cvs watch add -a commit nomes dos ficheiros + + +ou com uma opção semelhante, dependendo dos eventos que você opte por vigiar. + +Se você não estiver mais interessado em alguns ficheiros, você poderá remover as suas vigias dos mesmos. Para isso, use o comando AvançadoRemover Vigia.... Na janela que obtém aqui, são oferecidas as mesmas opções que aparecem no formulário que você preencheu ao adicionar a vigia. Quando confirmar esta janela, o &cervisia; envia o comando + + +cvs watch remove nomes dos ficheiros + + +provavelmente com uma opção para os eventos escolhidos. + +Finalmente, você poderá obter uma lista das pessoas que estão a vigiar um conjunto de ficheiros. Escolha a opção AvançadoMostrar Vigilantes. Se usar este item do menu irá resultar num comando + + +cvs watchers nomes dos ficheiros + + +No cenário de utilização normal do &CVS;, cada programador trabalha em separado na sua versão pessoal extraída. Quando ele quiser modificar algum ficheiro, ele poderá apenas abri-lo no seu editor e começar a trabalhar no mesmo. Mais ninguém saberá do seu trabalho até que o ficheiro seja enviado. + +Para alguns grupos de utilizadores, este não é o modelo preferido de cooperação. Eles quererão ser notificados sempre que alguém está a trabalhar num ficheiro no preciso momento em que ele começa. Isto poderá ser obtido com mais alguns comandos do &CVS;. Antes de você começar a editar um ficheiro, seleccione-o na janela principal do &cervisia; e escolha a opção AvançadoEditar Ficheiros. Isto irá executar o comando + + +cvs edit nomes dos ficheiros + + +Isto irá enviar uma notificação para toda a gente que definiu uma vigia de edit (edição) para este ficheiro. Irá também registá-lo como um editor do ficheiro. Você poderá obter uma lista de todos os editores de um dado ficheiro se usar o comando AvançadoMostrar os Editores. Isto é equivalente a introduzir a linha de comandos + + +cvs editors nomes dos ficheiros + + +Uma sessão de edição é terminada automaticamente quando você enviar as alterações aos ficheiros (fizer o seu 'commit'). Nessa altura, é enviada uma notificação de unedit (fim de edição) para as pessoas que registaram uma vigia respectiva no ficheiro. Claro, você poderá não querer enviar as alterações dos ficheiros, mas sim interromper a sessão de edição e voltar à versão anterior do ficheiro. Isso é feito ao usar a opção AvançadoTerminar edição dos ficheiros. Tenha em atenção que, se usar este item do menu, todo o seu trabalho efectuado desde que você usou a opção AvançadoEditar Ficheiros será perdido. Mais precisamente, o &cervisia; irá usar a linha de comandos + + +echo y | cvs unedit nomes dos ficheiros + + +Até agora, só foi discutido o caso em que as edições e fins de edições são usados voluntariamente pelos programadores. Para além disso, o &CVS; suporta um modelo que obriga à utilização desses comandos. O comando responsável por mudar para esse modelo é o cvs watch on, o qual não será muito mais detalhado, porque é usado, na maior parte dos casos, pelo administrador do repositório. Contudo, a parte importante do ponto de vista do programador é que, quando o projecto obrigar às edições, as cópias de trabalho são extraídas apenas com permissões de leitura. Isso significa que você não poderá editar um ficheiro por omissão (a menos que use truques do tipo do chmod). Só quando você usar a opção AvançadoEditar Ficheiros, é que o ficheiro poderá ser alterado. Ele será tornado de novo acessível apenas para leitura quando você enviar as alterações ao ficheiro ou quando usar a opção AvançadoTerminar edição dos ficheiros. + +A interface do editor do &cervisia; ajuda-o com os projectos que obrigam às vigias também de uma forma diferente. Se você acabou de iniciar um editor com um ficheiro apenas para leitura, após ter feito duplo-click no mesmo ou usando a opção FicheiroEditar, você não será capaz de gravar as suas modificações posteriores. Isto tem obviamente uma razão para tal: Sempre que quiser alterar um ficheiro, você deverá executar o cvs edit antes, para que toda a gente que está a vigiar o ficheiro obtenha uma notificação de que você vai começar a trabalhar nele. + +Nesse caso, é aconselhável activar a opção ConfiguraçãoFazer 'cvs edit' automaticamente quando necessário. Agora, sempre que você editar um ficheiro ao fazer duplo-click nele, o &cervisia; irá executar um cvs edit antes do editor ser efectivamente executado. A partir daí, você poderá editar o seu ficheiro como de costume. Quando terminar o seu trabalho, envie as alterações dos seus ficheiros, para que os ficheiros enviados voltem a ficar apenas acessíveis para leitura. + + + + + +Bloqueio + +O modelo de desenvolvimento seguido normalmente quando o &CVS; é usado é chamado de 'checkouts' sem reserva. Cada programador tem a sua própria área de trabalho onde ele poderá alterar os seus ficheiros a seu gosto. Se as funcionalidades de vigia forem usadas - como o cvs edit - , os vários programadores poderão trabalhar de forma sincronizada nos ficheiros. As alterações feitas por um dado programador serão reunidas na área de trabalho local logo que seja efectuada uma actualização. + +Outros sistemas de controlo de versões - como o RCS e o SourceSafe usam um modelo diferente. Sempre que um editor quiser editar um ficheiro, ele terá de o bloquear. Só um utilizador é que poderá bloquear um dado ficheiro de cada vez. Quando ele terminar a edição, o bloqueio é retirado. Por um lado, com este modelo, os conflitos nunca poderão acontecer. Por outro lado, dois programadores não poderão trabalhar no mesmo ficheiro ao mesmo tempo, mesmo quando as suas alterações não os afectam um ao outro. Isto poderá tornar-se uma restrição ou impedimento. Não serão aqui discutidos os benefícios organizacionais de ambas as aproximações. Contudo, ainda que o &CVS; tenha algum suporte para bloquear ficheiros, não é a forma preferida de lidar com o &CVS;. Você não deverá usar estas funcionalidades, a menos que tenha a certeza que o seu gestor de projecto as permite. + +Com o &cervisia;, poderá bloquear os ficheiros da seguinte maneira. Seleccione os ficheiros desejados na janela principal; de seguida escolha AvançadoBloquear. Isto irá correr o comando + + +cvs admin -l nomes dos ficheiros + + +O efeito inverso é obtido se usar o comando AvançadoDesbloquear. Isto executa o comando + + +cvs admin -u nomes dos ficheiros + + + + +
+ + + +Personalizar o &cervisia; + +O &cervisia; poderá ser personalizado de várias formas para se adequar às suas necessidades e preferências. Algumas das opções que você possa querer modificar regularmente estão directamente disponíveis no menu de Configuração. As outras estão reunidas numa janela comum que está disponível através da opção OpçãoConfiguração.... + + + +Geral + + + + +Utilizador para o editor do ChangeLog: +Quando você utilizar o item do menu FicheiroInserir Registo do ChangeLog..., será adicionado um novo item ao ficheiro ChangeLog com a data actual e o seu nome de utilizador. Normalmente, é considerado um bom estilo indicar o seu nome completo e o seu endereço de e-mail em cada um dos itens do ChangeLog. O &cervisia; adiciona automaticamente o seu nome completo e o endereço de e-mail aqui. + + + +Localização do executável 'cvs', ou 'cvs': +Aqui você poderá indicar o nome (ou a localização) do cliente da linha de comandos do cvs. Por omissão, o executável que é encontrado na sua $PATH é o usado pelo &cervisia;. + + + + + + + +Visualizador de Diferenças + + + + +Número de linhas de contexto na janela do 'diff': +Para a janela de diferenças, o &cervisia; usa a opção do diff. Isto permite que o diff mostre apenas um número limitado de linhas para cada região de diferenças (as linhas de contexto). Aqui você poderá indicar o argumento do . + + + +Opções adicionais do 'cvs diff': +Aqui você poderá adicionar argumentos extra para o diff. Um exemplo conhecido é o , que faz com que o diff ignore as alterações na quantidade de espaços em branco. + + + +Tabulação na janela do 'diff': +Na janela de diferenças, os caracteres das tabulações que existem no seu ficheiro ou no resultado do comando diff são expandidos para um número fixo de espaços. Por omissão, cada tabulação é substituída por oito espaços, mas você poderá indicar aqui um número diferente. + + + +Interface externa do 'diff': +Quando você usar qualquer uma das funcionalidades que mostram a janela das diferenças, como a VerDiferenças do Repositório..., o &cervisia; invoca a sua interface interna do 'diff'. Se preferir uma diferente como a do Kompare, do TkDiff ou do xxdiff, indique o nome e a localização do ficheiro aqui. + + + + + + + +Estado + + + + +Ao abrir uma área local a partir de um repositório remoto, inicie um comando Ficheiro->Estado automaticamente +Quando você assinalar esta opção, o comando FicheiroEstado é iniciado automaticamente quando abrir um espaço de trabalho remoto. Este comando poderá levar algum tempo e irá necessitar também de uma ligação ao servidor (o que se torna inútil para uma utilização desligada da rede). + + + +Ao abrir uma área local a partir de um repositório local, inicie um comando Ficheiro->Estado automaticamente +Quando assinalar esta opção, o comando FicheiroEstado é iniciado sempre que aceder a uma área de trabalho local. + + + + + + + +Avançado + + + + +Tempo-limite para o aparecimento de uma janela de progresso (ms): +Praticamente todos os comandos do &CVS; tiveram início numa área local que pertence a um repositório remoto, o qual necessita de uma ligação ao servidor do &CVS;. Isto é afectado pelas demoras da ligação à rede ou por uma carga elevada no servidor. Por esta razão, para os comandos como o VerDiferenças do Repositório..., o &cervisia; abre uma janela que indica que o comando está ainda a correr e que lhe possibilitará interrompê-lo. Mais ainda, esta janela é usada para lhe mostrar as mensagens de erro do &CVS;. Dado que esta janela se poderá tornar incómoda ao fim de algum tempo, é mostrada apenas ao fim de algum tempo-limite, o qual equivale a 4 segundos, por omissão. Aqui você poderá alterar este valor. + + + +Nível de compressão por omissão: +O cliente do cvs comprime os ficheiros e gera as diferenças quando são transferidos na rede. Com a opção da linha de comandos , o nível de compressão poderá ser definido. Você poderá configurar o &cervisia; para usar esta opção se definir o nível aqui. O valor aqui indicado é usado como predefinição; para além disso, existe uma configuração por repositório disponível em RepositórioRepositórios.... + + + +Usar um processo novo do 'ssh-agent' ou usar outro em execução +Assinale esta opção se você usar os repositórios 'ext' (rsh), a linha de comandos &ssh; para comunicar com o repositório e o ssh-agent para gerir as suas chaves. + + + + + + + + +Aparência e Comportamento + + + + +Tipo de letra da janela do protocolo... +Carregue neste botão para abrir a janela para Definir o Tipo de Letra que será usado na janela do protocolo (esta é a janela que mostra o resultado do comando cvs). + + + +Tipo de letra da janela de anotações... +Carregue neste botão para abrir a janela para Configurar o Tipo de Letra, de modo a definir o tipo de letra usado na janela de anotações. + + + +Tipo de letra da janela do diff... +Carregue neste botão para abrir a janela para Configurar o Tipo de Letra, de modo a definir o tipo de letra usado na janela das diferenças. + + + +Cores +Carregue nos botões coloridos para abrir a janela para Seleccionar a Cor, de modo a definir a cor usada para os Conflitos, as Alterações Locais ou as Alterações Remotas na janela principal ou as Diferenças por alteração, as Diferenças por inserção ou as Diferenças por remoção na janela de visualização de diferenças do &cervisia;. + + + +Dividir a janela principal horizontalmente +A janela principal do &cervisia; normalmente está dividida verticalmente numa janela com a árvore de ficheiros e noutra com o resultado do &CVS;; em alternativa, você poderá organizá-las na horizontal. + + + + + + + + + +Apêndice + + +Ficheiros Ignorados + +Na sua árvore de ficheiros principal, o &cervisia; não mostra todos os ficheiros que existem de facto. Isto é análogo ao cvs propriamente dito, e evita a confusão causada pelos itens desinteressantes como os ficheiros-objecto. O &cervisia; tenta imitar o comportamento do cvs o mais possível, ele obtém as listas de ficheiros ignorados nos seguintes locais: + + + +Uma lista estática de itens que incluem coisas do tipo *.o ou core. Para mais detalhes, veja a documentação do &CVS;. +O ficheiro $HOME/.cvsignore. + +A variável de ambiente $CVSIGNORE. +O ficheiro .cvsignore na pasta respectiva. + + + +O cvsm em si, adiciona também os itens que se encontram em $CVSROOT/CVSROOT/cvsignore, mas isso é um ficheiro do servidor, e o &cervisia; deverá ser capaz de se iniciar desligado. Se você estiver a trabalhar num grupo que prefira usar a uma lista dos ficheiros a ignorar no servidor, é provavelmente uma boa ideia dar uma vista de olhos aos padrões que são aí indicados e colocá-los no ficheiro .cvsignore da sua pasta pessoal. + + + + + +Mais Informações e Suporte + + + +O &CVS; vem com um conjunto completo de documentação no formato de páginas de informação, conhecido como "O Cederqvist". Se for instalado correctamente, você poderá navegar nele, escrevendo info:/cvs na barra de localização do kdehelp, khelpcenter, respectivamente. Em alternativa, você poderá apenas escolher a opção AjudaInformação do CVS no &cervisia;. Uma versão 'online' em HTML do Cederqvist está disponível na Web. + +Dado que este livro é mantido em conjunto com o &CVS;, é normalmente a referência mais actualizada; todavia, recomenda-se a consideração de outra documentação para aprender a usar o &CVS;, em particular o seguinte. + +O Karl Fogel escreveu o livro excelente Open Source Development with CVS (Programação Open-Source com o CVS). Mais de metade deste livro fala sobre o processo de desenvolvimento de 'software' de código aberto. A outra parte é uma documentação técnica sobre o &CVS;. Felizmente, a parte técnica do livro foi tornada livre para distribuição sob a GPL, de modo a que você possa obter uma versão em HTML da mesma. Uma lista com a errata está disponível na página Web acima mencionada. + +As questões do &CVS; são discutidas numa lista de correio dedicada. + +Existe um grupo da USENET chamado comp.software.config-mgmt, que é dedicado à gestão de configurações no geral. O &CVS; é apenas um tópico marginal nesse grupo, mas poderá também ser interessante para discutir os méritos de vários sistemas de controlo de versões, em comparação com o &CVS;. + +Por último, mas não em último, existe ainda uma lista de correio do &cervisia; com pouco tráfego. + + + + + + + +Referência de Comandos + + + + +O Menu Ficheiro + + + + +FicheiroAbrir Área Local... +Abre uma área de trabalho pessoal na janela principal. Veja a secção . + + + +FicheiroÁreas Locais Recentes +Abre uma das áreas locais que você usou recentemente. + + + +FicheiroInserir Registo do ChangeLog... +Abre o editor do ChangeLog, preparado de tal forma que você possa adicionar um novo item com a data actual. Veja a secção . + + + +&Ctrl;U FicheiroActualizar +Invoca o 'cvs update' nos ficheiros seleccionados e altera o estado e os números da versão, de acordo com essa actualização. Veja a secção . + + + +F5 FicheiroEstado +Invoca o 'cvs -n update' nos ficheiros seleccionados e altera o estado e os números de versão de acordo com essa actualização. Veja a secção . + + + +FicheiroEditar +Abre o ficheiro seleccionado no editor predefinido pelo KDE para o tipo de ficheiro seleccionado. + + + +FicheiroResolver... +Abre a uma janela para o ficheiro seleccionado que lhe permite resolver os conflitos da junção de versões nela. Veja a secção . + + + +# FicheiroEnviar... +Permite-lhe enviar as suas alterações (fazer um 'commit') dos ficheiros seleccionados. Veja a secção . + + + ++ FicheiroAdicionar ao Repositório... +Permite-lhe adicionar os ficheiros seleccionados ao repositório. Veja a secção . + + + +FicheiroAdicionar Binário... +Permite-lhe adicionar os ficheiros seleccionados ao repositório como sendo ficheiros binários (cvs add). Veja a secção . + + + +- FicheiroRemover do Repositório... +Permite-lhe remover os ficheiros seleccionados do repositório. Veja a secção . + + + + + +FicheiroReverter +Elimina as alterações locais que você tenha feito aos ficheiros seleccionados e repõe os ficheiros tal como estão na última versão no repositório (a opção do cvs update). + + + +&Ctrl;Q FicheiroSair +Sai do &cervisia;. + + + + + + + + + +O Menu Ver + + + + +Escape VerParar +Pára todos os sub-processos em execução. + + + +&Ctrl;L VerVer o Registo... +Mostra o navegador do histórico das versões dos ficheiros seleccionados. Veja em . + + + +&Ctrl;A VerAnotar... +Mostra uma janela anotada com o ficheiro seleccionado, isto é, uma vista onde você poderá ver para cada linha quem foi o última autor a alterá-la. Veja a secção . + + + +&Ctrl;D VerDiferenças do Repositório (BASE)... +Mostra as diferenças entre o ficheiro seleccionado na área de trabalho e a versão que actualizou por último (a BASE). Veja a secção . + + + +&Ctrl;H VerDiferenças do Repositório (HEAD)... +Mostra as diferenças entre o ficheiro seleccionado na área de trabalho e a versão que actualizou por último (a HEAD). Veja a secção . + + + + +VerÚltima Modificação... +Mostra as diferenças entre a versão do ficheiro seleccionado que você actualizou da última vez (a BASE) e a versão anterior. Veja a secção . + + + +VerHistórico... +Mostra o histórico de &CVS; tal como indicado no servidor. Veja a secção . + + + + + +VerEsconder Todos os Ficheiros +Determina se somente as pastas serão mostradas na árvore principal. Veja em . + + + +VerEsconder os Ficheiros Não-Modificados +Determina se os ficheiros desconhecidos e actualizados ficam escondidos na árvore principal. Veja em . + + + +VerEsconder os Ficheiros Removidos +Determina se os ficheiros removidos ficam escondidos na árvore principal. Veja em . + + + +VerEsconder os Ficheiros Fora do CVS +Determina se os ficheiros que não estejam no CVS ficam escondidos na árvore principal. Veja em . + + + +VerEsconder as Pastas Vazias +Determina se os itens invisíveis ficam escondidos na árvore principal. Veja em . + + + +VerExpandir a Árvore de Ficheiros +Abre todos os ramos da árvore de ficheiros para que possa ver todos os ficheiros e pastas. Veja a secção . + + + +VerRecolher a Árvore de Ficheiros +Fecha todos os ramos da árvore de ficheiros. Veja a secção . + + + + + + + + + +O Menu Avançado + + + + +Avançado'Tag'/'Branch'... +Cria um nome simbólico ('tag') ou uma ramificação ('branch') para os ficheiros seleccionados. Veja a secção . + + + +AvançadoRemover a 'Tag'... +Remove uma marca indicada dos ficheiros seleccionados. Veja a secção . + + + +AvançadoActualizar para 'Tag'/Data... +Remete a versão dos ficheiros seleccionados para uma dada marca ou data, tornando essas versões fixas, ou seja, impossibilitando novos 'commits' sobre essas versões. Veja a secção . + + + +AvançadoActualizar para o HEAD... +Remete a versão dos ficheiros seleccionados para a versão respectiva no HEAD (no ramo principal). Veja a secção . + + + +AvançadoReunir... +Junta o conteúdo de uma dada ramificação ou as modificações entre duas marcas nos ficheiros seleccionados. Veja a secção . + + + +AvançadoAdicionar Vigia... +Adiciona uma vigia para um conjunto de eventos nos ficheiros seleccionados. Veja a secção . + + +AvançadoRemover Vigia... +Desactiva a vigia de um conjunto de eventos nos ficheiros seleccionados. Veja a secção . + + + +AvançadoMostrar os Vigilantes +Mostra os utilizadores que vigiam os ficheiros seleccionados. Veja a secção . + + + +AvançadoEditar Ficheiros +Executa o comando cvs edit nos ficheiros seleccionados. Veja a secção . + + + +AvançadoTerminar Edição dos Ficheiros +Executa cvs unedit nos ficheiros seleccionados. Veja a secção . + + + +AvançadoMostrar os Editores +Executa cvs editors nos ficheiros seleccionados. Veja a secção . + + + +AvançadoBloquear +Bloqueia os ficheiros seleccionados. Veja a secção . + + + +AvançadoDesbloquear +Desbloqueia os ficheiros seleccionados. Veja a secção . + + + +AvançadoCriar um 'Patch' do Repositório... +Cria uma 'patch' (um ficheiro com as diferenças) a partir das alterações da sua área pessoal. Veja a secção . + + + + + + + + + +O Menu Repositório + + + + +RepositórioCriar... +Abre uma janela que lhe permite criar um novo repositório local. Veja a secção . + + + +RepositórioExtrair... +Abre uma janela que lhe permite fazer a extracção ('checkout') de um módulo do repositório. Veja a secção . + + + +RepositórioImportar... +Abre uma janela que lhe permite importar um pacote para o repositório. Veja a secção . + + + +RepositórioRepositórios... +Configura a lista dos repositórios que utiliza normalmente e como lhes aceder. Veja a secção . + + + + + + + + +O Menu Configuração + + + + +ConfiguraçãoMostrar a Barra de Ferramentas +Determina se a barra de ferramentas é ou não mostrada. + + + +ConfiguraçãoCriar as Pastas ao Actualizar +Determina se as actualizações criam pastas na área de trabalho onde ainda não existiam antes (correspondendo à opção do cvs update). + + + +ConfiguraçãoLimpar as Pastas Vazias ao Actualizar +Indica se as actualizações deverão remover as pastas vazias da área de trabalho (correspondendo à opção do cvs update). + + + +ConfiguraçãoActualizar Recursivamente +Indica se as actualizações são recursivas (correspondendo à opção do cvs update). + + + +Configuração'Commits' e Remoções Recursivos +Indica se os envios de alterações ('commits') e as remoções de itens são recursivos (correspondendo à opção do cvs add e do cvs remove, respectivamente). + + + +ConfiguraçãoFazer 'cvs edit' Automaticamente Se Necessário +Indica se o cvs edit é executado automaticamente quando você quiser editar um ficheiro. + + + +ConfiguraçãoConfigurar os Atalhos... +Abre uma janela para configurar as combinações de teclas (atalhos). + + + +ConfiguraçãoConfigurar as Barras de Ferramentas... +Abre uma janela onde poderá configurar as barras de ferramentas do &cervisia;. + + + +ConfiguraçãoConfigurar o Cervisia... +Abre uma janela onde poderá personalizar o &cervisia;. + + + + + + + + +O Menu Ajuda + + + + +F1 AjudaManual +Invoca o sistema de ajuda do KDE com a documentação do &cervisia;. (este documento). + + + +AjudaComunicar um Erro... +Abre a janela de comunicação de erros. + + + +Ajuda Acerca do &cervisia; +Isto irá mostrar a versão e a informação do autor. + + + +AjudaAcerca do KDE +Isto mostra a versão do KDE, bem como outras informações básicas. + + + +AjudaManual do CVS +Abre as páginas de informação do &CVS; no sistema de ajuda do KDE. + + + + + + + + + + + + +Créditos e Licenças +&underFDL; &underGPL; +
diff --git a/tde-i18n-pt/docs/tdesdk/kapptemplate/Makefile.am b/tde-i18n-pt/docs/tdesdk/kapptemplate/Makefile.am new file mode 100644 index 00000000000..6869837a64a --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kapptemplate/Makefile.am @@ -0,0 +1,4 @@ +KDE_LANG = pt +SUBDIRS = $(AUTODIRS) +KDE_DOCS = AUTO +KDE_MANS = AUTO diff --git a/tde-i18n-pt/docs/tdesdk/kapptemplate/Makefile.in b/tde-i18n-pt/docs/tdesdk/kapptemplate/Makefile.in new file mode 100644 index 00000000000..9428f4ef2ee --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kapptemplate/Makefile.in @@ -0,0 +1,613 @@ +# Makefile.in generated by automake 1.10.1 from Makefile.am. +# KDE tags expanded automatically by am_edit - $Revision: 483858 $ +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +subdir = docs/tdesdk/kapptemplate +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.in +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +SOURCES = +DIST_SOURCES = +#>- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ +#>- html-recursive info-recursive install-data-recursive \ +#>- install-dvi-recursive install-exec-recursive \ +#>- install-html-recursive install-info-recursive \ +#>- install-pdf-recursive install-ps-recursive install-recursive \ +#>- installcheck-recursive installdirs-recursive pdf-recursive \ +#>- ps-recursive uninstall-recursive +#>+ 7 +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive nmcheck-recursive bcheck-recursive +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) +#>- DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +#>+ 1 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +ARTSCCONFIG = @ARTSCCONFIG@ +AUTOCONF = @AUTOCONF@ +AUTODIRS = @AUTODIRS@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CONF_FILES = @CONF_FILES@ +CYGPATH_W = @CYGPATH_W@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOPIDLNG = @DCOPIDLNG@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DEFS = @DEFS@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +GMSGFMT = @GMSGFMT@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +KCFG_DEPENDENCIES = @KCFG_DEPENDENCIES@ +KCONFIG_COMPILER = @KCONFIG_COMPILER@ +KDECONFIG = @KDECONFIG@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_RPATH = @KDE_RPATH@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MAKEKDEWIDGETS = @MAKEKDEWIDGETS@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XMLLINT = @XMLLINT@ +X_RPATH = @X_RPATH@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +am__leading_dot = @am__leading_dot@ +am__tar = @am__tar@ +am__untar = @am__untar@ +#>- bindir = @bindir@ +#>+ 2 +DEPDIR = .deps +bindir = @bindir@ +build_alias = @build_alias@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host_alias = @host_alias@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_kcfgdir = @kde_kcfgdir@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_styledir = @kde_styledir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +kde_widgetdir = @kde_widgetdir@ +tdeinitdir = @tdeinitdir@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +xdg_appsdir = @xdg_appsdir@ +xdg_directorydir = @xdg_directorydir@ +xdg_menudir = @xdg_menudir@ +KDE_LANG = pt +#>- SUBDIRS = $(AUTODIRS) +#>+ 1 +SUBDIRS =. +KDE_DOCS = AUTO +KDE_MANS = AUTO +#>- all: all-recursive +#>+ 1 +all: docs-am all-recursive + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +#>- @for dep in $?; do \ +#>- case '$(am__configure_deps)' in \ +#>- *$$dep*) \ +#>- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ +#>- && exit 0; \ +#>- exit 1;; \ +#>- esac; \ +#>- done; \ +#>- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/kapptemplate/Makefile'; \ +#>- cd $(top_srcdir) && \ +#>- $(AUTOMAKE) --gnu docs/tdesdk/kapptemplate/Makefile +#>+ 12 + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/kapptemplate/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/kapptemplate/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/kapptemplate/Makefile.in +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +$(RECURSIVE_CLEAN_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +#>- distdir: $(DISTFILES) +#>+ 1 +distdir: distdir-nls $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done + list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + distdir=`$(am__cd) $(distdir) && pwd`; \ + top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$top_distdir" \ + distdir="$$distdir/$$subdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +#>- uninstall: uninstall-recursive +#>+ 1 +uninstall: uninstall-nls uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +#>- clean-am: clean-generic mostlyclean-am +#>+ 1 +clean-am: clean-bcheck clean-generic mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +info: info-recursive + +info-am: + +#>- install-data-am: +#>+ 1 +install-data-am: install-nls + +install-dvi: install-dvi-recursive + +install-exec-am: + +install-html: install-html-recursive + +install-info: install-info-recursive + +install-man: + +install-pdf: install-pdf-recursive + +install-ps: install-ps-recursive + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ + install-strip + +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic ctags \ + ctags-recursive distclean distclean-generic distclean-tags \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ + tags-recursive uninstall uninstall-am + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: + +#>+ 2 +KDE_DIST=man-kapptemplate.1.docbook Makefile.in Makefile.am + +#>+ 2 +docs-am: man-kapptemplate.1.docbook + +#>+ 13 +install-nls: + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kapptemplate + @for base in man-kapptemplate.1.docbook ; do \ + echo $(INSTALL_DATA) $$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kapptemplate/$$base ;\ + $(INSTALL_DATA) $(srcdir)/$$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kapptemplate/$$base ;\ + done + +uninstall-nls: + for base in man-kapptemplate.1.docbook ; do \ + rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kapptemplate/$$base ;\ + done + + +#>+ 5 +distdir-nls: + for file in man-kapptemplate.1.docbook ; do \ + cp $(srcdir)/$$file $(distdir); \ + done + +#>+ 15 +force-reedit: + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/kapptemplate/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/kapptemplate/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/kapptemplate/Makefile.in + + +#>+ 21 +clean-bcheck: + rm -f *.bchecktest.cc *.bchecktest.cc.class a.out + +bcheck: bcheck-recursive + +bcheck-am: + @for i in ; do \ + if test $(srcdir)/$$i -nt $$i.bchecktest.cc; then \ + echo "int main() {return 0;}" > $$i.bchecktest.cc ; \ + echo "#include \"$$i\"" >> $$i.bchecktest.cc ; \ + echo "$$i"; \ + if ! $(CXX) $(DEFS) -I. -I$(srcdir) -I$(top_builddir) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) --dump-class-hierarchy -c $$i.bchecktest.cc; then \ + rm -f $$i.bchecktest.cc; exit 1; \ + fi ; \ + echo "" >> $$i.bchecktest.cc.class; \ + perl $(top_srcdir)/admin/bcheck.pl $$i.bchecktest.cc.class || { rm -f $$i.bchecktest.cc; exit 1; }; \ + rm -f a.out; \ + fi ; \ + done + + +#>+ 3 +final: + $(MAKE) all-am + +#>+ 3 +final-install: + $(MAKE) install-am + +#>+ 3 +no-final: + $(MAKE) all-am + +#>+ 3 +no-final-install: + $(MAKE) install-am + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo + +#>+ 3 +nmcheck: +nmcheck-am: nmcheck diff --git a/tde-i18n-pt/docs/tdesdk/kapptemplate/man-kapptemplate.1.docbook b/tde-i18n-pt/docs/tdesdk/kapptemplate/man-kapptemplate.1.docbook new file mode 100644 index 00000000000..ead63919630 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kapptemplate/man-kapptemplate.1.docbook @@ -0,0 +1,233 @@ + + +]> + + + +BenBurton +12 de Abril de 2003 + + + +kapptemplate +1 + + + +kapptemplate +Cria a infra-estrutura para desenvolver uma aplicação para o KDE + + + +kapptemplate + + + +Descrição + +O kapptemplate é um programa para a consola que irá criar a infra-estrutura necessária para desenvolver várias aplicações do &kde;. Ele toma conta do código do autoconf/automake, assim como a oferta de um esqueleto e de um exemplo de como ficará o código, tipicamente. + +Este utilitário faz parte do Kit de Desenvolvimento de Software (SDK) do &kde;. + + + + +Opções + + +Opções Gerais + + +Mostra um resumo completo das opções. + + + +Não executa o make Makefile.cvs + + + + +Usa os valores predefinidos em vez de os perguntar. + + + + +Tipos de Infra-Estruturas + + +Cria uma aplicação completa do KDE. + + + +Cria uma aplicação KPart completa. + + + +Cria a infra-estrutura para um 'plugin' do KPart. + + + +Converte o código existente para uma infra-estrutura do KDE baseada no automake/autoconf. + + + + + + + +Ficheiros + + + +~/.kapptemplate +Guarda os valores predefinidos + + + + + + +Veja Também + +$PREFIX/share/doc/kapptemplate + + + + +Autores + +O kapptemplate foi criado por &Kurt.Granroth; &Kurt.Granroth.mail; +Esta página de manual foi preparada por BenBurtonbab@debian.org + + + diff --git a/tde-i18n-pt/docs/tdesdk/kbabel/Makefile.am b/tde-i18n-pt/docs/tdesdk/kbabel/Makefile.am new file mode 100644 index 00000000000..6869837a64a --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kbabel/Makefile.am @@ -0,0 +1,4 @@ +KDE_LANG = pt +SUBDIRS = $(AUTODIRS) +KDE_DOCS = AUTO +KDE_MANS = AUTO diff --git a/tde-i18n-pt/docs/tdesdk/kbabel/Makefile.in b/tde-i18n-pt/docs/tdesdk/kbabel/Makefile.in new file mode 100644 index 00000000000..cee036ec9c9 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kbabel/Makefile.in @@ -0,0 +1,635 @@ +# Makefile.in generated by automake 1.10.1 from Makefile.am. +# KDE tags expanded automatically by am_edit - $Revision: 483858 $ +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +subdir = docs/tdesdk/kbabel +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.in +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +SOURCES = +DIST_SOURCES = +#>- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ +#>- html-recursive info-recursive install-data-recursive \ +#>- install-dvi-recursive install-exec-recursive \ +#>- install-html-recursive install-info-recursive \ +#>- install-pdf-recursive install-ps-recursive install-recursive \ +#>- installcheck-recursive installdirs-recursive pdf-recursive \ +#>- ps-recursive uninstall-recursive +#>+ 7 +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive nmcheck-recursive bcheck-recursive +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) +#>- DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +#>+ 1 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +ARTSCCONFIG = @ARTSCCONFIG@ +AUTOCONF = @AUTOCONF@ +AUTODIRS = @AUTODIRS@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CONF_FILES = @CONF_FILES@ +CYGPATH_W = @CYGPATH_W@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOPIDLNG = @DCOPIDLNG@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DEFS = @DEFS@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +GMSGFMT = @GMSGFMT@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +KCFG_DEPENDENCIES = @KCFG_DEPENDENCIES@ +KCONFIG_COMPILER = @KCONFIG_COMPILER@ +KDECONFIG = @KDECONFIG@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_RPATH = @KDE_RPATH@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MAKEKDEWIDGETS = @MAKEKDEWIDGETS@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XMLLINT = @XMLLINT@ +X_RPATH = @X_RPATH@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +am__leading_dot = @am__leading_dot@ +am__tar = @am__tar@ +am__untar = @am__untar@ +#>- bindir = @bindir@ +#>+ 2 +DEPDIR = .deps +bindir = @bindir@ +build_alias = @build_alias@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host_alias = @host_alias@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_kcfgdir = @kde_kcfgdir@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_styledir = @kde_styledir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +kde_widgetdir = @kde_widgetdir@ +tdeinitdir = @tdeinitdir@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +xdg_appsdir = @xdg_appsdir@ +xdg_directorydir = @xdg_directorydir@ +xdg_menudir = @xdg_menudir@ +KDE_LANG = pt +#>- SUBDIRS = $(AUTODIRS) +#>+ 1 +SUBDIRS =. +KDE_DOCS = AUTO +KDE_MANS = AUTO +#>- all: all-recursive +#>+ 1 +all: docs-am all-recursive + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +#>- @for dep in $?; do \ +#>- case '$(am__configure_deps)' in \ +#>- *$$dep*) \ +#>- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ +#>- && exit 0; \ +#>- exit 1;; \ +#>- esac; \ +#>- done; \ +#>- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/kbabel/Makefile'; \ +#>- cd $(top_srcdir) && \ +#>- $(AUTOMAKE) --gnu docs/tdesdk/kbabel/Makefile +#>+ 12 + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/kbabel/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/kbabel/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/kbabel/Makefile.in +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +$(RECURSIVE_CLEAN_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +#>- distdir: $(DISTFILES) +#>+ 1 +distdir: distdir-nls $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done + list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + distdir=`$(am__cd) $(distdir) && pwd`; \ + top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$top_distdir" \ + distdir="$$distdir/$$subdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +#>- uninstall: uninstall-recursive +#>+ 1 +uninstall: uninstall-docs uninstall-nls uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +#>- clean-am: clean-generic mostlyclean-am +#>+ 1 +clean-am: clean-docs clean-bcheck clean-generic mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +info: info-recursive + +info-am: + +#>- install-data-am: +#>+ 1 +install-data-am: install-docs install-nls + +install-dvi: install-dvi-recursive + +install-exec-am: + +install-html: install-html-recursive + +install-info: install-info-recursive + +install-man: + +install-pdf: install-pdf-recursive + +install-ps: install-ps-recursive + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ + install-strip + +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic ctags \ + ctags-recursive distclean distclean-generic distclean-tags \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ + tags-recursive uninstall uninstall-am + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: + +#>+ 2 +KDE_DIST=index.docbook glossary.docbook dictionaries.docbook preferences.docbook faq.docbook kbabeldict.docbook index.cache.bz2 using.docbook Makefile.in menu.docbook man-catalogmanager.1.docbook catman.docbook Makefile.am + +#>+ 24 +index.cache.bz2: $(srcdir)/index.docbook $(KDE_XSL_STYLESHEET) glossary.docbook preferences.docbook index.docbook using.docbook man-catalogmanager.1.docbook menu.docbook dictionaries.docbook kbabeldict.docbook faq.docbook catman.docbook + @if test -n "$(MEINPROC)"; then echo $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; fi + +docs-am: index.cache.bz2 + +install-docs: docs-am install-nls + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbabel + @if test -f index.cache.bz2; then \ + echo $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbabel/; \ + $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbabel/; \ + elif test -f $(srcdir)/index.cache.bz2; then \ + echo $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbabel/; \ + $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbabel/; \ + fi + -rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbabel/common + $(LN_S) $(kde_libs_htmldir)/$(KDE_LANG)/common $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbabel/common + +uninstall-docs: + -rm -rf $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbabel + +clean-docs: + -rm -f index.cache.bz2 + + +#>+ 13 +install-nls: + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbabel + @for base in glossary.docbook preferences.docbook index.docbook using.docbook man-catalogmanager.1.docbook menu.docbook dictionaries.docbook kbabeldict.docbook faq.docbook catman.docbook ; do \ + echo $(INSTALL_DATA) $$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbabel/$$base ;\ + $(INSTALL_DATA) $(srcdir)/$$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbabel/$$base ;\ + done + +uninstall-nls: + for base in glossary.docbook preferences.docbook index.docbook using.docbook man-catalogmanager.1.docbook menu.docbook dictionaries.docbook kbabeldict.docbook faq.docbook catman.docbook ; do \ + rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbabel/$$base ;\ + done + + +#>+ 5 +distdir-nls: + for file in glossary.docbook preferences.docbook index.docbook using.docbook man-catalogmanager.1.docbook menu.docbook dictionaries.docbook kbabeldict.docbook faq.docbook catman.docbook ; do \ + cp $(srcdir)/$$file $(distdir); \ + done + +#>+ 15 +force-reedit: + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/kbabel/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/kbabel/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/kbabel/Makefile.in + + +#>+ 21 +clean-bcheck: + rm -f *.bchecktest.cc *.bchecktest.cc.class a.out + +bcheck: bcheck-recursive + +bcheck-am: + @for i in ; do \ + if test $(srcdir)/$$i -nt $$i.bchecktest.cc; then \ + echo "int main() {return 0;}" > $$i.bchecktest.cc ; \ + echo "#include \"$$i\"" >> $$i.bchecktest.cc ; \ + echo "$$i"; \ + if ! $(CXX) $(DEFS) -I. -I$(srcdir) -I$(top_builddir) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) --dump-class-hierarchy -c $$i.bchecktest.cc; then \ + rm -f $$i.bchecktest.cc; exit 1; \ + fi ; \ + echo "" >> $$i.bchecktest.cc.class; \ + perl $(top_srcdir)/admin/bcheck.pl $$i.bchecktest.cc.class || { rm -f $$i.bchecktest.cc; exit 1; }; \ + rm -f a.out; \ + fi ; \ + done + + +#>+ 3 +final: + $(MAKE) all-am + +#>+ 3 +final-install: + $(MAKE) install-am + +#>+ 3 +no-final: + $(MAKE) all-am + +#>+ 3 +no-final-install: + $(MAKE) install-am + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo + +#>+ 3 +nmcheck: +nmcheck-am: nmcheck diff --git a/tde-i18n-pt/docs/tdesdk/kbabel/catman.docbook b/tde-i18n-pt/docs/tdesdk/kbabel/catman.docbook new file mode 100644 index 00000000000..e2fd38b8612 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kbabel/catman.docbook @@ -0,0 +1,248 @@ + + + + + + + + + + + + + + + +PedroMorais
morais@kde.org
Tradução
+
+ +Utilizar o &catalogmanager; + + + +Ecrã do &catalogmanager; + + + + +Ecrã do &catalogmanager; + + +O Gestor do Catálogo junta duas pastas numa árvore e mostra todos os ficheiros PO e POT nessas pastas. Assim, pode ver facilmente se um novo modelo foi adicionado ou um antigo removido. São mostradas algumas informações junto a cada ficheiro: o número total de entradas, o número de entradas aproximadas, o número de estradas não traduzidas, a data da última revisão e o último tradutor do ficheiro. + +O Gestor de Catálogos do KBabel pretende ser usado em projectos estruturados, como o KDE, em que os ficheiros POT e PO partilham o mesmo nome, exceptuando as extensões. Contudo, este não é o caso dos projectos da &GNU; e de muitos outros projectos estruturados como os da &GNU;. Tipicamente, nesses projectos, o ficheiro PO tem o nome do código da língua e, como tal, é muito diferente do nome dos ficheiros POT. Também esses projectos têm um ficheiro POT que partilha a mesma pasta que todos os seus ficheiros PO traduzidos. Infelizmente, todas estas razões servem para explicar que o Gestor de Catálogos não é adequado para esses projectos. (Veja o erro #76495 do KDE.) + +Para ser mais fácil para si de procurar os ficheiros que necessitam de ser actualizados ou se deixou de estar a par do estado de cada ficheiro, este é mostrado com um ícone: + + + + + + + + + Todas as mensagens neste ficheiro estão traduzidas. + + + + + + + + Algumas das mensagens neste ficheiro estão aproximadas ou não traduzidas + + + + + + + + O ficheiro não existe na pasta de ficheiros PO. + + + + + + + + O ficheiro contém erros de sintaxe. + + + + + + + + A informação acerca deste ficheiro está a ser actualizada de momento. Quando a actualização terminar, irá obter um dos ícones indicados acima para reflectir o seu estado. + + + +Se o ícone estiver marcado com este ícone , como o , quer dizer que o ficheiro ou pasta não existe na pasta dos ficheiros POT. + +Você poderá marcar ou retirar a marcação de um ficheiro se seleccionar a opção Trocar a Marcação no menu de contexto de um ficheiro. + +Se você quiser comutar ou remover todas as marcações de uma pasta, carregue com o botão direito do rato na pasta e seleccione Trocar a Marcação ou Remover as Marcações. As marcações são gravadas automaticamente ao sair do &kbabel;. + +Para abrir um ficheiro, tanto poderá fazer duplo-click no mesmo, seleccionar a opção Abrir no menu de contexto ou carregar em Return ou em &Ctrl;O . + +Você poderá configurar o &catalogmanager; em Projecto Configurar.... Veja a secção Configuração do Projecto para mais detalhes. + + +Características do &catalogmanager; +Para além da funcionalidade principal para abrir os ficheiros no &kbabel;, o &catalogmanager; suporta muitas outras funcionalidades para gerir uma árvore de ficheiros PO. + + +Procurar e substituir em vários ficheiros +Uma das funcionalidades mais pedidas para o &kbabel; foi a possibilidade de procurar e substituir em vários ficheiros de uma vez. O &catalogmanager; suporta esta funcionalidade, tendo ainda uma grande integração com o &kbabel; + + + +Estatísticas +O &catalogmanager; pode-lhe mostrar um conjunto de estatísticas sobre um único ficheiro ou sobre as pastas inteiras. As estatísticas contêm o número de ficheiros, quantos ficheiros têm os seus modelos e quantos modelos estão em falta. Também conta o número de mensagens nos ficheiros e mostra as estatísticas para os conjuntos de ficheiros, para determinar se as suas mensagens estão traduzidas, aproximadamente traduzidas ou por traduzir. + + + +Verificar a sintaxe +Isto permite-lhe verificar a sintaxe de vários ficheiros PO com o msgfmt. Se houver algum ficheiro que falhe nessa verificação, não poderá ser usado para gerar um ficheiro MO para as distribuições binárias. Esses ficheiros incorrectos irão normalmente dar origem a compilações mal-sucedidas dos pacotes a que o ficheiro PO pertence. + + + +Comandos definidos pelo utilizador +Dado que o &catalogmanager; não pode oferecer nenhuma funcionalidade que você queira usar, você pode extendê-lo se definir os seus próprios comandos. + +Existem dois conjuntos de comandos; um para as pastas e outro para os ficheiros isolados. Você poderá configurá-los na janela de configuração e aceder a eles, se carregar com o &RMB; num item da lista de ficheiros. + + + +
+ diff --git a/tde-i18n-pt/docs/tdesdk/kbabel/dictionaries.docbook b/tde-i18n-pt/docs/tdesdk/kbabel/dictionaries.docbook new file mode 100644 index 00000000000..cb6699c3dc1 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kbabel/dictionaries.docbook @@ -0,0 +1,649 @@ + + + + + + + + + + + + + + + +PedroMorais
morais@kde.org
Tradução
+
+ +Dicionários + +O &kbabel; tem 3 modos que podem ser usados para procurar os textos das mensagens PO traduzidas: + + + + Procurar uma tradução, usando uma bases de dados de traduções + + + Tradução lata + + + &kbabeldict; + + + + + +Base de dados de traduções + + +A base de dados de traduções permite-lhe gravar as traduções numa base de dados baseada na Berkeley Database IV, &ie; está gravada num ficheiro binário no seu disco. A base de dados garante uma procura rápida num grande conjunto de traduções. + +Este modo é o melhor integrado com o &kbabel;. Para além de procurar e de fazer uma tradução lata também suporta as seguintes funcionalidades: + + + +Cada tradução nova feita no editor do &kbabel; poderá ser automaticamente guardada na base de dados. + + +Esta base de dados poderá ser usada para fazer um diff do msgid. + + + +Claro, quanto mais traduções estiverem guardadas na base de dados, mais produtivo você poderá ser. Para preencher a base de dados, você poderá usar a página Base de Dados na janela de configuração poderá activar a adição automática de todas as mensagens traduzidas na mesma página. + + +Configuração +Você poderá configurar este modo de pesquisa e como deverá ser usado se seleccionar a opção Configuração Configurar o Dicionário Base de Dados de Traduções no menu do &kbabel;. +A página Genérico contém opções gerais para procurar na base de dados. + + + Procurar em toda a base de dados (lento) + + Não usar as chaves boas, mas sim procurar em toda a base de dados. Isto é lento, mas irá devolver resultados mais precisos. + + + + Procurar na lista de "boas chaves" (aconselhado) + + Use a estratégia das boas chaves. Esta opção dar-lhe-á o melhor compromisso entre velocidade e uma correspondência exacta. + + + + Devolver a lista de "boas chaves" (rápido) + + Devolver apenas as chaves boas; não tentar eliminar mais nenhuns textos. Este é o método mais rápido possível, mas poderá dar origem a um grande número de correspondências inexactas. + + + + Distinguir maiúsculas + + Faz uma distinção da capitalização das letras ao procurar o texto. + + + + Normalizar os espaços em branco + + Retira os espaços em branco desnecessários nos textos, de modo a que a procura ignore as pequenas diferenças de espaços em branco, ⪚ o número de espaços no texto. + + + + Remover os comentários de contexto + + Não incluir os comentários de contexto na procura. Você irá querer activar isto à mesma. + + + + Carácter a ignorar + + Aqui você poderá indicar os caracteres que deverão ser ignorados ao efectuar as procuras. O exemplo típico seria a marcação de aceleradores, &ie;, o & para os textos do &kde;. + + + +A página Procura contém uma especificação mais exacta para procurar o texto. Você poderá definir como procurar e também permite usar outra forma especial de procura chamada Substituição de palavras. Ao substituir uma ou mais palavras, o texto aproximado poderá também ser obtido. Por exemplo, assumindo que você iria procurar o texto O meu nome é Zé. + + + Igual + + O texto da base de dados irá corresponder se for o mesmo que o texto procurado. No nosso exemplo, poderá ser igual a O meu nome é &Zé (se o & estiver configurado como carácter a ignorar no campo Caracteres a ignorar na página Genérico). + + + + A pesquisa está contida + + O texto da base de dados fará correspondência se o texto procurado estiver contido no mesmo. No nosso exemplo, poderia ser O meu nome é Zé, sabia?. + + + + A pesquisa contém + + O texto da base de dados fará correspondência se o texto procurado o contiver. No nosso exemplo, poderia ser . Você poderá usar isto para enumerar as possibilidades a serem encontradas. + + + + Expressão Regular + + Vê o texto pesquisado como uma expressão regular. Isto é usado principalmente pelo &kbabeldict;. Você não deverá estar, à partida, à espera de expressões regulares nos ficheiros PO. + + + + Usar a substituição de uma palavra + + Se o texto da pesquisa contiver menos palavras do que as indicadas em baixo, também tentará substituir uma das palavras na pesquisa. No nosso exemplo, irá encontrar também a mensagem O seu nome é Zé. + + + + Número máximo de palavras na pesquisa + + O número máximo de palavras numa pesquisa necessários para activar a substituição de uma palavra. + + + + Caracteres locais para as expressões regulares + + Caracteres a ser considerados parte das expressões regulares. + + + + +A substituição de duas palavras ainda não está implementada. + + + + +Preencher a base de dados +A página Base de Dados permite definir onde é que a base de dados está armazenada no disco (Pasta da base de dados) e se deverá ser usada para o armazenamento automático das traduções novas (Adicionar automaticamente o item à base de dados). Nesse caso, você deverá indicar o autor da nova tradução no Autor do registo adicionado automaticamente. +O resto da página permite-lhe preencher a base de dados a partir dos ficheiros PO já existentes. Use um dos botões do meio da janela. O progresso da leitura do ficheiro será mostrado nas barras por baixo dos botões. O botão Textos repetidos deverá ser usado no caso especial em que um texto traduzido é repetido muitas vezes, por isso você não irá querer guardar demasiadas ocorrências. Aqui você poderá limitar os textos armazenados. + +Preencher a base de dados + + + + +Preencher a base de dados a partir de ficheiros PO existentes + + + + +Definir as boas chaves +Na página Boas Chaves, encontram-se os limites que definem como preencher a lista das boas chaves. O Número mínimo de palavras da pesquisa na chave (%) indica exactamente isso. O texto terá de conter somente esta percentagem das palavras para usar como boa chave. O oposto poderá ser indicado através da opção Número mínimo das palavras da chave também na pesquisa (%). O comprimento das palavras pode ser definido na opção Tamanho máximo. +O texto pesquisado normalmente contém um conjunto de palavras genéricas, ⪚ artigos. Você poderá eliminar as palavras com base na frequência. Você poderá eliminá-las com a opção Descartar as palavras mais frequentes que ou vê-las como sempre presentes se ver a opção as palavras frequentes são consideradas em todas as chaves. Desta forma, as palavras frequentes serão quase invisíveis para as pesquisas. + + + + + +Ficheiro PO auxiliar + +Este modo de procura baseia-se na correspondência da mesma mensagem original em inglês (a 'msgid') traduzida noutra língua num ficheiro PO auxiliar. É bastante comum nas línguas românicas existirem palavras semelhantes, como acontece também com as línguas anglo-saxónicas e eslavas. + +Por exemplo, imagine-se que eu desejaria traduzir a palavra on, a partir do ficheiro tdelibs.po, para Romeno, mas não faço a menor ideia. Dando uma vista de olhos na versão em Francês, vejo a palavra actif, enquanto que em Espanhol vejo activado. Daí, conclui-se que a melhor forma em romeno será active (Claro, no Inglês, em vez de on, a palavra poderia ter sido active ou activated). O &kbabel; automatiza esta tarefa. De momento, você só poderá definir um ficheiro auxiliar onde procurar. + + +Configuração +Você poderá configurar este modo de procurar se seleccionar Configuração Configurar o Dicionário Auxiliar PO no menu do &kbabel;. + +Na janela Configurar o Auxiliar PO do Dicionário, você poderá seleccionar a localização do ficheiro PO auxiliar. Para automatizar a mudança de ficheiro PO, sempre que você muda o ficheiro em edição, existem muitas variáveis delimitadas pelo carácter @ que são substituídas pelos valores apropriados: + + + + @PACKAGE@ + O nome da aplicação ou do pacote que está a ser traduzido de momento. Por exemplo, poderá expandir-se para 'kbabel', 'tdelibs', 'konqueror' e assim por diante. + + + @LANG@ + O código da língua. Por exemplo, poderá expandir para: pt, de, ro, fr, &etc;. + + + @DIRn@ + em que o n é um inteiro positivo. Isto expande-se para a n-ésima pasta contada no nome do ficheiro (da direita para a esquerda). + + + +O campo de edição mostra a localização actual do ficheiro PO auxiliar. Embora seja melhor usar as variáveis fornecidas numa localização, é possível escolher uma localização absoluta e real para um ficheiro PO existente. Vamos ver um exemplo. + +Sou Português, tenho algum conhecimento de Francês, e trabalho na tradução do &kde;. + + +O primeiro passo é obter uma versão muito recente do kde-l10n-fr.tar.bz2 do servidor de &FTP; do &kde; ou usar o sistema do CVS para colocar no meu disco rígido uma árvore de traduções em Francês. Irei fazer isto para /home/ze/cvs-cvs.kde.org/kde-l10n/fr. + +A minha pasta de ficheiros PO está em /home/ze/cvs-cvs.kde.org/kde-l10n/pt. Não se esqueça de escolher o Auxiliar PO como dicionário por omissão e assinale a opção Iniciar a pesquisa automaticamente na página Pesquisa da janela de Preferências do &kbabel;. + + + + + + +Compêndio PO + +Um compêndio é um ficheiro que contém uma colecção com todas as mensagens de tradução (pares de msgid e msgstr) num projecto, ⪚ no &kde;. Tipicamente, o compêndio para uma dada língua é criado ao concatenar todos os ficheiros PO do projecto para a língua. O compêndio poder conter mensagens traduzidas, não-traduzidas ou aproximadas. As mensagens não traduzidas são ignoradas por este módulo. + +Semelhante ao Auxiliar PO, este modo de pesquisa baseia-se na correspondência da mesma mensagem original (msgid) de um compêndio. De momento, só pode definir um ficheiro de compêndio onde procurar. + +Este modo é muito útil se você não estiver a usar a base de dados de traduções e se quiser obter uma tradução consistente com outras traduções. Já agora, os ficheiros de compêndio são muito mais fáceis de partilhar com os outros tradutores, e mesmo com outros projectos de traduções, dado que poderão ser gerados para eles à mesma. + + +Configuração + +Você poderá configurar este modo de pesquisa ao seleccionar Configuração Configurar o Dicionário Compêndio PO no menu do &kbabel;. + +Na janela Configurar o Compêndio PO do Dicionário, você poderá indicar a localização de um ficheiro de compêndio. Para automatizar a mudança de ficheiros de compêndio quando você mudar a língua da tradução, existe uma variável delimitada por um @ que é substituída por um valor apropriado: + + + + @LANG@ + O código da língua. Por exemplo, poderá expandir para: pt, de, ro, fr, &etc;. + + + +No campo de edição é mostrada a localização actual do ficheiro PO do compêndio. Embora você tivesse usado melhora as variáveis fornecidas na localização, é possível indicar uma localização real e absoluta para o ficheiro PO a usar como compêndio. + + +Um compêndio muito actualizado para as traduções do &kde; em, ⪚, Português, poderá ser obtido em pt.messages.bz2 a partir do servidor de &FTP; do &kde;. + +Você poderá definir como procurar no compêndio, usando as opções adicionais à localização. Estas estão divididas em dois grupos: opções de correspondência de texto, onde você poderá indicar como é que o texto é comparado e se deve ignorar as mensagens aproximadas, e opções de correspondência de mensagens, que definem se a tradução do compêndio deverá ser um excerto da mensagem de procura ou vice-versa. + + + + Distinguir maiúsculas + + Se a correspondência da mensagem no compêndio deverá fazer distinção entre as letras minúsculas e as maiúsculas. + + + + Ignorar as mensagens aproximadas + + Se as mensagens aproximadas do compêndio deverão ser ignoradas na procura. O compêndio poderá conter mensagens aproximadas, desde que seja criado tipicamente através da concatenação dos ficheiros PO do projecto e que poderão conter mensagens aproximadas. As mensagens não traduzidas são sempre ignoradas (Você não pode procurar a tradução em mensagens não traduzidas, certo?) + + + + Só palavras completas + + Se o texto correspondente deverá começar e terminar nos limites das palavras. + + + + Um texto corresponde se é igual ao texto da procura + + Um texto no compêndio faz correspondência com o texto a procurar só se for exactamente igual (obviamente, usando as opções acima). + + + + Um texto corresponde se for semelhante ao texto da procura + + Um texto do compêndio corresponde ao texto da procura só se for semelhante. Ambos os textos são comparados através de pequenos blocos de letras (trigramas) e se pelo menos metade desses blocos for igual. + + + + Um texto corresponde se contiver o texto da procura + + Um texto do compêndio corresponde ao texto da procura se contiver o texto da procura propriamente dito. + + + + Um texto corresponde se estiver contido no texto da procura + + Um texto do compêndio corresponde ao texto da procura se estiver contido no texto da procura propriamente dito. + + + + Um texto corresponde se contiver uma palavra do texto da procura + + Os textos são divididos em palavras e um texto do compêndio corresponderá ao texto da procura só se contiver alguma palavra do texto da procura. + + + + + +
+ + diff --git a/tde-i18n-pt/docs/tdesdk/kbabel/faq.docbook b/tde-i18n-pt/docs/tdesdk/kbabel/faq.docbook new file mode 100644 index 00000000000..05732fbb178 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kbabel/faq.docbook @@ -0,0 +1,88 @@ + + + + + + + + + + + + + + +PedroMorais
morais@kde.org
Tradução
+
+ +Perguntas e Respostas + + + + + Porque é que o &kbabel; mostra pontos de interrogação em vez dos caracteres específicos da língua ao carregar um ficheiro PO? + + + O texto contém caracteres que não podem ser mostrados com o tipo de letra do seu sistema. Se tiver a certeza que o texto não contém esses caracteres, o ficheiro poderá ter sido corrompido de alguma forma. Nesse caso, marque um desses pontos de interrogação e carregue em &Ctrl;F para procurar todos os caracteres corrompidos e substitua-os. Não procure por pontos de interrogação verdadeiros, porque esses caracteres só são mostrados como pontos de interrogação, mas internamente são caracteres diferentes. Caso contrário, você poderá querer instalar um tipo de letra Unicode, o qual contém todos os caracteres necessários. + + + + +Como é que posso traduzir o &kde;? + + +Poderá obter informações sobre como traduzir o KDE no KDE Translation HOWTO. + + + +
+ \ No newline at end of file diff --git a/tde-i18n-pt/docs/tdesdk/kbabel/glossary.docbook b/tde-i18n-pt/docs/tdesdk/kbabel/glossary.docbook new file mode 100644 index 00000000000..546b470ce58 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kbabel/glossary.docbook @@ -0,0 +1,270 @@ + + + + + + + + + + + + + + +PedroMorais
morais@kde.org
Tradução
+
+ +Glossário + +A + + Ficheiro auxiliar + + é um tópico específico do &kbabel;. É uma opção onde o utilizador pode configurar um ficheiro PO onde poderá procurar nas mensagens originais. Por exemplo, se você for um membro da equipa Portuguesa e se tiver algum conhecimento de Espanhol ou de Italiano, você poderá pegar e configurar um ficheiro PO em Espanhol associado ao ficheiro que está a ser traduzido. + + + + +C + + Ficheiro de compêndio + + é uma colecção com todas as traduções de uma língua. Este enorme ficheiro PO é composto pelas mensagens únicas dos ficheiros PO de todas as aplicações. Ele poderá ser usado para preencher todas as mensagens já traduzidas num ficheiro PO ainda por traduzir ou parcialmente traduzido. O &kbabel; usa esse ficheiro no motor de busca do Compêndio PO. + + + + +F + + Aproximado + + Esta é uma opção gerada, normalmente, pelo msgmerge. Ela mostra que o texto de um msgstr poderá não ser uma tradução correcta. O tradutor precisa de ver e fazer as modificações ao texto, se for necessário, e remover a marcação de fuzzy (aproximado) do comentário da mensagem. + + + + +I + Internacionalização i18n + é a operação pela qual uma aplicação pode tirar partido e se torna capaz de suportar várias línguas. A palavra equivalente em inglês (internationalization) tem 20 caracteres, como tal, para reduzir esta palavra, as pessoas começaram a escrever apenas o primeiro e o último carácter, e colocando entre eles o número de caracteres intermédios (18), formando a abreviatura conhecida i18n. + + + + + +L + Localização l10n + é a operação pela qual uma aplicação já traduzida é capaz de processar os dados introduzidos e apresentados com a forma definida por um conjunto de hábitos culturais e linguísticos. A palavra equivalente em inglês (localization) tem 12 caracteres, como tal, para reduzir esta palavra, as pessoas começaram a escrever apenas o primeiro e o último carácter, e colocando entre eles o número de caracteres intermédios (12), formando a abreviatura conhecida l10n. + + + + + +M + ficheiro MO MO + O MO significa Machine Object (Objecto da Máquina). Um ficheiro MO contém dados binários adequados para serem lidos pelos computadores. O conteúdo de um ficheiro MO é organizado como uma base de dados para minimizar o tempo de procura para as mensagens traduzidas. Os ficheiros MO são obtidos a partir da compilação dos ficheiros PO, usando o msgfmt. + + + ID da Mensagem msgid + O msgid é a palavra-chave que introduz o texto original no ficheiro PO. É seguido de um texto do estilo do C que poderá ocupar uma ou mais linhas. + + + + Mensagem Traduzida msgstr + O msgstr é a palavra-chave que introduz o texto traduzido no ficheiro PO. É seguido de um texto com formato semelhante ao usado no C que poderá ocupar uma ou mais linhas. + + + + + +P + Ficheiro PO PO + O PO significa Portable Object (Objecto Portável). Os ficheiros PO contêm conjuntos de mensagens que associam cada texto passível de tradução com a sua tradução numa dada língua. Um único ficheiro PO relaciona-se apenas com uma língua. Um ficheiro PO deriva de um ficheiro POT e é editado tanto à mão como usando o &kbabel;. + + + Ficheiro POT POT + O POT significa Portable Object Template (Modelo de Objecto Portável). Um ficheiro POT é criado ao extrair todas as mensagens passíveis de tradução dos ficheiros de código das aplicações um ficheiro POT não contêm traduções em nenhuma língua em particular — é usado pelos tradutores como um modelo. + + + + +
+ diff --git a/tde-i18n-pt/docs/tdesdk/kbabel/index.cache.bz2 b/tde-i18n-pt/docs/tdesdk/kbabel/index.cache.bz2 new file mode 100644 index 00000000000..637032242eb Binary files /dev/null and b/tde-i18n-pt/docs/tdesdk/kbabel/index.cache.bz2 differ diff --git a/tde-i18n-pt/docs/tdesdk/kbabel/index.docbook b/tde-i18n-pt/docs/tdesdk/kbabel/index.docbook new file mode 100644 index 00000000000..950c9ab5468 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kbabel/index.docbook @@ -0,0 +1,193 @@ + + + + + + + + + + + + + +]> + + + + +O Manual do &kbabel; + + +&Stanislav.Visnovsky; &Stanislav.Visnovsky.mail; +&Matthias.Kiefer; +Nicolas Goutte goutte@kde.org +JoséPires
jncp@netcabo.pt
Tradução
+
+ + +2005-12-29 +3.5.1.03 + + +O &kbabel; é um pacote com um editor de ficheiros PO avançado e simples de usar e, que contém o editor de ficheiros &kbabel;, um &catalogmanager; multi-funções e o dicionário para os tradutores &kbabeldict;. Ele suportam muitas funcionalidades avançadas e permite-lhe personalizar várias opções. + + + +KDE +KBabel +gestor de catálogos +tdesdk +gettext +tradução +i18n +internacionalização +l10n +localização + + +
+ + +Introdução + +No seu estado actual, esta documentação do KBabel está parcialmente desactualizada. A documentação básica foi designada para o KDE 3.2, enquanto as correcções dizem respeito ao KBabel 1.11.1 do KDE 3.5.1. + +O &kbabel; é um pacote com um editor de ficheiros PO (catálogos de mensagens do 'gettext' da &GNU;) avançado e simples de usar para editar e gerir esses ficheiros. Isto inclui funcionalidades completas de navegação, de edição extensa, funções de pesquisa, verificação da sintaxe e funções de estatísticas. O &catalogmanager; é uma janela de um gestor de ficheiros que o ajuda a ter uma ideia geral dos seus ficheiros PO. O &kbabeldict; permite-lhe traduzir qualquer texto usando as capacidades do &kbabel; para as traduções automatizadas. O pacote do &kbabel; ajudá-lo-á a traduzir rapidamente e a manter também as traduções consistentes. + +Com o projecto do &kde; a crescer continuamente, o número de mensagens dos ficheiros PO ascendia a cerca de 47 000 na altura em que este documento foi escrito (com ainda mais 20 000 mensagens usadas para traduzir a documentação das aplicações). Existe uma necessidade de se manter organizado e consistente em todas as traduções. + + + +&using; +&catman; +&kbabeldictchapter; +&dictionaries; +&preferences; +&menu; +&kbabelfaq; + + + +Créditos e Licença + +&kbabel; +Programa Copyright © 1999-2000 &Matthias.Kiefer; &Matthias.Kiefer.mail; +Contribuições: +&Thomas.Diehl; &Thomas.Diehl.mail; + +&Stephan.Kulow; &Stephan.Kulow.mail; + + + + +Documentação Copyright © 2000 &Claudiu.Costin; &Claudiu.Costin.mail; e &Matthias.Kiefer; &Matthias.Kiefer.mail; + +Actualização para o &kde; 3.0 Copyright © 2002 &Stanislav.Visnovsky; &Stanislav.Visnovsky.mail; + +Actualização para o &kde; 3.5.1 Copyright © 2005 Nicolas Goutte goutte@kde.org + +Tradução de José Nuno Pires jncp@netcabo.pt +&underFDL; &underGPL; + +&glossary; + + +Lista de Correio do KBabel + +Existe uma lista de correio para o KBabel chamada 'kbabel'. É uma lista mista para os programadores e para os utilizadores do KBabel. + +Poder-se-á inscrever nela na interface do Mailman. + +A lista de correio tem um arquivo público. + + + +&documentation.index; +
+ + diff --git a/tde-i18n-pt/docs/tdesdk/kbabel/kbabeldict.docbook b/tde-i18n-pt/docs/tdesdk/kbabel/kbabeldict.docbook new file mode 100644 index 00000000000..a0418cfafcf --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kbabel/kbabeldict.docbook @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + +PedroMorais
morais@kde.org
Tradução
+
+ +Usar o &kbabeldict; + +O &kbabeldict; é uma interface simples para os módulos de traduções do &kbabel;. Ele permite-lhe procurar pelas traduções. + +Uma imagem do &kbabeldict; + + + + +Uma imagem do &kbabeldict; + + +A imagem acima não contém as alterações para o módulo seleccionado. Você podê-las-á mostrar usando a opção Mostrar a Configuração. A janela de configuração do módulo seleccionado será mostrada do lado direito da janela. A janela do &kbabeldict; irá ficar então semelhante a isso: + +Uma imagem do &kbabeldict; + + + + +Imagem do &kbabeldict; com a configuração apresentada + + +A utilização é muito simples. Você selecciona um módulo na lista Procurar no módulo. Aí, você poderá indicar a frase a procurar e carregue em Iniciar a Pesquisa. Todas as mensagens encontradas são mostradas na lista em baixo, a qual é a mesma que uma ferramenta da janela principal do &kbabel;. A procura poderá ser interrompida se carregar em Parar. No caso de você querer procurar no texto traduzido, e não na mensagem original, você deverá usar o Procurar nas traduções. +Os botões no fundo da janela podem ser usados para fechar o &kbabeldict;, mostrar/esconder as opções do módulo ou mostrar uma janela com a ficha técnica do &kbabeldict; e dos próprios módulos. + +Para uma descrição dos módulos-padrão e das suas opções veja os . + +
+ \ No newline at end of file diff --git a/tde-i18n-pt/docs/tdesdk/kbabel/man-catalogmanager.1.docbook b/tde-i18n-pt/docs/tdesdk/kbabel/man-catalogmanager.1.docbook new file mode 100644 index 00000000000..b3d520d63fb --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kbabel/man-catalogmanager.1.docbook @@ -0,0 +1,113 @@ + + +]> + + + +2003-03-07 + + + +gestor de catálogos +1 + + + +gestor de catálogos +Um gestor de catálogos avançado para o &kbabel; + + + +catalogmanager ficheiro-configuração + + + +Descrição + +O CatalogManager faz parte de um conjunto de programas para editar os ficheiros de mensagens do 'gettext' (ficheiros PO). Este pacote está desenhado para o ajudar a traduzir rápida e de forma consistente. + +Este pacote contém o &kbabel;, o CatalogManager e o &kbabeldict;. O &kbabel; é um editor de ficheiros avançado e fácil de usar, com capacidades de navegação e edição avançadas, verificação da sintaxe e estatísticas. O CatalogManager (este programa) é um gestor de catálogos multi-funções que lhe permite manter um registos de vários ficheiros PO ao mesmo tempo. O &kbabeldict; é um dicionário para os tradutores. +Este utilitário faz parte do Kit de Desenvolvimento de Software (SDK) do &kde;. + + + + +Opções + + + + ficheiro-configuração + +Carrega a configuração a partir do ficheiro indicado. + + + + + + + +Veja Também + +kbabel(1) kbabeldict(1) + +Está disponível mais alguma documentação do utilizador mais detalhada em help:/kbabel (tanto poderá indicar este URL no &konqueror;, como executar o khelpcenter help:/kbabel). + + + + diff --git a/tde-i18n-pt/docs/tdesdk/kbabel/menu.docbook b/tde-i18n-pt/docs/tdesdk/kbabel/menu.docbook new file mode 100644 index 00000000000..3ccedbbf55c --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kbabel/menu.docbook @@ -0,0 +1,2571 @@ + + + + + + + + + + + + + + + +JoséPires
jncp@netcabo.pt
Tradução
+
+ +Referência de Comandos + + +O menu do &kbabel; + + +O Menu Ficheiro + + + + &Ctrl;O Ficheiro Abrir + + + + Abre um ficheiro PO. Se o ficheiro actual estiver modificado, você será avisado para o gravar primeiro. + + + + + + Ficheiro Abrir um Recente + + + + Abre um ficheiro PO editado recentemente, a partir do menu de documentos recentes + + + + + + &Ctrl;S Ficheiro Gravar + + + + Grava o ficheiro PO actual. Se não tiver sido modificado, não é efectuada nenhuma acção. + + + + + + Ficheiro Gravar Como + + + + Grava o ficheiro PO com um nome novo + + + + + + Ficheiro Gravar Especial + + + + Mostra a janela para Gravar a Configuração e grava depois o ficheiro PO actual com outro nome + + + + + + Ficheiro Reverter + + + + Carrega a última versão gravada do ficheiro PO actual + + + + + + Ficheiro Enviar por E-mail + + + + Pede um nome para o pacote no qual gravar o ficheiro PO actual, abrindo depois uma janela de um compositor de e-mail com o pacote em anexo + + + + + + Ficheiro Nova Janela + + + Abre uma nova janela com o ficheiro actual aberto. É muito útil se você tiver de traduzir ficheiros grandes e quiser dar uma vista de olhos a alguns textos anteriores. + + + + + Ficheiro Nova Janela + + + + Abre numa nova janela vazia + + + + + + &Ctrl;Q Ficheiro Sair + + + + Sai do editor &kbabel; + + + + + + + +O Menu Editar + + + + &Ctrl;Z Editar Desfazer + + + + Anula a última acção de edição na campo de tradução + + + + + + &Ctrl;&Shift;Z Editar Refazer + + + + Volta a repetir a última acção anulada de edição na campo de tradução + + + + + + &Ctrl;X Editar Cortar + + + + Corta o texto seleccionado e manda-o para a área de transferência + + + + + + &Ctrl;C Editar Copiar + + + + Copia o texto seleccionado para a área de transferência + + + + + + &Ctrl;V Editar Colar + + + + Cola o conteúdo da área de transferência na posição actual no campo de texto da tradução. + + + + + + Editar Seleccionar Tudo + + + + Selecciona todo o texto da campo de edição da tradução + + + + + + &Ctrl;F Editar Procurar... + + + + Abre a janela de Procura para encontrar algum texto num conjunto de ficheiros PO + + + + + + F3 Editar Procurar Seguinte + + + + Procura a próxima ocorrência do texto da acção de pesquisa anterior + + + + + + &Ctrl;R Editar Substituir... + + + + Abre a janela de Substituição para procurar e substituir sequências de texto no ficheiro PO actual + + + + + + &Ctrl;Delete Editar Limpar + + + + Limpa a tradução do 'msgid' actual + + + + + + &Ctrl;Espaço Editar Copiar 'Msgid' para 'Msgstr' + + + + O texto original em inglês é copiado para o campo de texto da tradução. Isto é útil quando você precisa de fazer ou poucas ou nenhumas alterações ao texto original (o 'msgid'). + + + + + + &Ctrl;Espaço Editar Copiar o Resultado da Procura para a 'Msgstr' + + + + O texto encontrado após a procura de traduções é copiado para o campo de texto do 'msgstr'. Isto é muito útil se você não quiser trabalhar na tradução da mesma mensagem vezes sem conta. + + + + + + &Ctrl;U Editar Comutar o Estado de Aproximado + + + Comuta o estado de aproximado para o item actual. Poderá ser útil para colocar a mensagem como aproximada, ⪚ para marcar a tradução para uma futura revisão. + + + + + &Ctrl;&Alt;N Editar Inserir a Próxima Marca + + + + Introduz a marca seguinte que foi encontrada na tradução, se o texto original em inglês contiver marcas de formatação + + + + + + &Ctrl;&Alt;N Editar Inserir uma Marca + + + + Este sub-menu contém todas as marcas de formatação que foram encontradas no texto original em inglês. Ao seleccionar uma delas, você podê-la-á inserir na posição actual do texto traduzido. + + + + + + Editar Editar o Cabeçalho... + + + Edita o cabeçalho do ficheiro PO. De facto, existem várias linhas de cabeçalho, as quais contêm a data da última tradução, o nome e o e-mail do tradutor, a língua e a codificação do texto traduzido, &etc;. + + + + + + + +O Menu Ir + + + + Page Up Ir Anterior + + + + Muda para o item anterior no ficheiro PO. + + + + + + Page Down Ir Próximo + + + + Muda para o item seguinte no ficheiro PO. + + + + + + Ir Ir para... + + + + Abre uma janela que permite saltar para o número do item indicado, dentro do ficheiro PO. + + + + + + Ir Primeiro item + + + + Muda para o primeiro item no ficheiro PO. + + + + + + Ir Último Item + + + + Muda para o último item no ficheiro PO. + + + + + + &Ctrl;&Shift;Page Up Ir Aproximado ou não traduzido anterior + + + + Vai para o item anterior que esteja marcado como não-traduzido ou aproximado. + + + + + + &Ctrl;&Shift;Page Down Ir Aproximado ou não traduzido seguinte + + + + Vai para o item seguinte mais próximo que esteja por traduzir ou marcado como aproximado. + + + + + + &Ctrl;PgUp Ir Aproximado anterior + + + + Vai para o item anterior que esteja marcado como aproximado. + + + + + + &Ctrl;PgDn Ir Aproximado seguinte + + + + Vai para o item seguinte mais próximo que esteja marcado como aproximado. + + + + + + &Alt;Page Up Ir Não-traduzido anterior + + + + Salta para o item anterior ao actual que esteja por traduzir. + + + + + + &Alt;Page Down Ir Não-traduzido seguinte + + + + Vai para o item seguinte mais próximo que esteja por traduzir. + + + + + + &Shift;Page Up Ir Erro anterior + + + + Vai para o item anterior que tenha erros. Isso é provável que aconteça quando você se esquece das aspas ou quando o texto original termina com um "Enter" (\n) e a mensagem traduzida não (e vice-versa). + + + + + + &Shift;Page Down Ir Próximo erro + + + + Vai para o item seguinte mais próximo com erros. + + + + + + &Alt;Esquerda Ir Recuar + + + Vai para o último item visitado no ficheiro PO. + + + + + &Alt;Direita Ir Avançar + + + Vai para o item anterior visitado no ficheiro PO. + + + + + + + +O Menu Dicionários +Tenha em atenção que este menu é dinâmico. Ele depende dos 'plugins' de dicionários instalados. Por omissão, existem três. + + + + + Dicionários Texto da Procura Motor de Busca da Base de Dados do KDE + + + Inicia a procura da tradução para a mensagem original em inglês que está seleccionada no momento, usando o Motor de Busca da Base de Dados do &kde;. + + + + + Dicionários Procurar o Texto Auxiliar PO + + + Inicia a procura da tradução para a mensagem original em inglês que está seleccionada no momento no ficheiro PO definido pelo utilizador. + + + + + Dicionários Procurar o Texto Compêndio PO + + + + Inicia a procura da tradução para a mensagem original em inglês no ficheiro de compêndio (criado através da reunião de todas as mensagens traduzidas para uma dada língua). + + + + + + Dicionários Procurar o Texto Seleccionado Motor de Busca da Base de Dados do KDE + + + Inicia a procura no texto seleccionado usando o Motor de Busca da Base de Dados do &kde;. + + + + + Dicionários Procurar o Texto Seleccionado Auxiliar PO + + + + Inicia a procura no texto seleccionado, usando o ficheiro definido pelo utilizador. + + + + + + Dicionários Procurar o Texto Seleccionado Compêndio PO + + + + Inicia a procura no texto seleccionado, usando o ficheiro de compêndio com todas as mensagens traduzidas da língua. + + + + + + Dicionários Editar o Dicionário + + + Permite-lhe editar o conteúdo do dicionário actual. É útil se você encontrar erros no dicionário e não quiser ser incomodado com os erros ao procurar e ao substituir as sequências de texto. (Ainda não está implementado) + + + + + + + + +O Menu Ferramentas + + + + Ferramentas Ortografia Verificação ortográfica... + + + Faz aparecer a janela de configuração da verificação ortográfica. Depois de seleccionar as opções desejadas, carregue em OK, para que apareça a janela de verificação ortográfica. + + + + + Ferramentas Ortografia Verificar Tudo... + + + Inicie a verificação ortográfica de todas as palavras para o ficheiro PO aberto. + + + + + Ferramentas Ortografia Verificar a Partir da Posição do Cursor... + + + + Verifica o texto desde a posição actual do cursor. + + + + + + Ferramentas Ortografia Verificar o Actual... + + + Faz a verificação ortográfica apenas do item actual do ficheiro PO. + + + + + Ficheiro Abrir um Recente + + + + Verifica a ortografia apenas do texto seleccionado no campo do MsgStr. + + + + + + &Ctrl;T Ferramentas Validação Verificar a Sintaxe + + + Verifica a sintaxe do ficheiro PO actual. Os erros poderão resultar da junção de versões do CVS ou dos erros dos utilizadores, quando o processo de tradução é feito à mão. + + + + + &Ctrl;D Ferramentas Validação Verificar os Argumentos + + + + Quando esta opção é seleccionada, os textos no formato do C que existem na mensagem original e na tradução são verificados para garantir que a quantidade de sequências de formatação e a sua ordem são consistentes. + + + + + + &Ctrl;H Ferramentas Validação Verificar os Aceleradores + + + Quando esta opção é seleccionada, o &kbabel; verifica se a quantidade de caracteres aceleradores é idêntica, tanto na mensagem original como na traduzida. Tenha em atenção que o carácter de aceleração é o & no &kde; (mas não em todas as ferramentas de programação). Veja a secção de Diversos em baixo, para saber como alterar um acelerador de teclado. + + + + + &Ctrl;K Ferramentas Validação Procurar por Informação de Contexto Traduzida + + + Algumas mensagens originais são marcadas com informações de contexto, de modo a que fiquem únicas, mesmo que representem a mesma palavra. Isto acontece porque muitas das palavras simples, como a Save (Gravar), são traduzidas em várias línguas. A informação de contexto é marcada com um _:. Muitos dos tradutores menos experientes traduzem a informação de contexto e preenchem os seus ficheiros PO com lixo. Assinale esta opção para se certificar que será avisado acerca destes erros num ficheiro. + + + + + Ferramentas Validação Verificar as Formas Plurais (só no KDE) + + + Verifica se o ficheiro PO contém a quantidade certa de traduções para cada mensagem de forma plural específica do &kde;. + + + + + &Ctrl;J Ferramentas Validação Verificar as Equações + + + + Verifica se o lado esquerdo do texto traduzido é o mesmo que o lado esquerdo da mensagem original. Os lados são delimitados pelo sinal de igual (=). + + + + + + F5 Ferramentas 'Diff' Mostrar o 'Diff' + + + + Mostra as diferenças encontradas para a mensagem original traduzida. + + + + + + F6 Ferramentas Diff Mostrar o Texto Original + + + + Esconde as marcas de diferenças e mostra apenas o 'msgid'. + + + + + + Ferramentas 'Diff' Abrir Ficheiro para 'Diff' + + + + Abre o ficheiro que será usado para procurar as diferenças. + + + + + + Ferramentas 'Diff' Modo do 'Diff' + + + + Comuta o modo de diferenças. + + + + + + Ferramentas Tradução Lata... + + + + Invoca a janela da tradução lata para as traduções automáticas. + + + + + + Ferramentas Gestor do Catálogo... + + + Abre o &catalogmanager;. Leia a secção do &catalogmanager; para mais detalhes. + + + + + + +O Menu Configuração + + + + Configuração Mostrar a Barra de Ferramentas + + + + Quando estiver assinalada a opção, a barra de ferramentas normal é mostrada. + + + + + + Configuração Mostrar a Barra de Estado + + + + Quando estiver assinalada a opção, a barra de estado em baixo é mostrada. + + + + + + Configuração Mostrar a Barra de Navegação + + + + Quando estiver assinalada a opção, a barra de navegação fica visível. + + + + + + Configuração Mostrar os Comentários + + + + Quando está assinalada a opção, a parte superior direita da janela principal, que contém os comentários do item actual, ficará visível. + + + + + + Configuração Mostrar as Ferramentas + + + + Quando está assinalada a opção, a parte inferior direita da janela principal, que contém os resultados da procura nos dicionários, ficará visível. + + + + + + Configuração Configurar os Atalhos... + + + + Abre a janela de configuração para as combinações de teclas associadas às acções. Isto permite-lhe definir os atalhos predefinidos para se adequar às suas necessidades. + + + + + + Configuração Configurar as Barras de Ferramentas... + + + + A janela de configuração da barra de ferramentas normal abrir-se-á. Você poderá escolher quais as acções que vão para as barras de ferramentas e quais é que você irá personalizar. + + + + + + Configuração Configurar o Kbabel... + + + Todas as opções específicas do &kbabel; vão parar aqui. Por favor leia a secção de Configuração Global do &kbabel; para saber sobre os tópicos mais específicos. + + + + + Configuração Configurar o Dicionário Motor de Busca da Base de Dados do KDE + + + Abre uma janela para configurar o Motor de Busca da Base de Dados do &kde;. + + + + + Configuração Configurar o Dicionário Auxiliar PO + + + Abre a janela onde se poderá configurar o ficheiro PO auxiliar. + + + + + Configuração Configurar o Dicionário Compêndio PO + + + Abre uma janela onde poderá configurar o ficheiro do compêndio PO. + + + + + + +O Menu Ajuda + + + + + F1 Ajuda Conteúdo + + + Abre o manual do &kbabel;. Isso é o que você está a ler neste momento. + + + + + &Shift;F1 Ajuda O Que É Isto? + + + + O cursor muda para uma seta com um ponto de interrogação e você poderá carregar com ele nos vários elementos da janela principal. Abrir-se-á uma janela de ajuda rápida. + + + + + + Ajuda Informação do Gettext + + + Abre a página de manual do 'gettext' no Centro de Ajuda do &kde;. Este pacote de ferramentas ajuda no processo de tratamento dos ficheiros POT e PO. + + + + + Ajuda Comunicar um Erro... + + + Isto irá abrir uma janela de comunicação de erros normal do &kde;. É útil se você descobrir algum comportamento anormal do &kbabel;. O programador do &kbabel; gostará de receber qualquer comentário, pedido ou relato de erros. + + + + + Ajuda Acerca do KBabel... + + + Abre uma janela de mensagem que lhe indica a versão do &kbabel;, o nome do programador e o endereço de e-mail. + + + + + Ajuda Acerca do KDE... + + + Abre uma janela de mensagens que o informa acerca do projecto do &kde;, das informações de contacto e como você poderá comunicar os erros e os pedidos. + + + + + Ajuda Acerca do Dicionário Motor de Busca da Base de Dados do KDE + + + Mostra uma janela de mensagem com informações acerca das pessoas que criaram o Motor de Busca da Base de Dados do &kde;. + + + + + Ajuda Acerca do Dicionário Auxiliar PO + + + + Mostra uma janela de mensagem com informações acerca das pessoas que fizeram a pesquisa num ficheiro auxiliar. + + + + + + Ajuda Acerca do Dicionário Compêndio PO + + + + Mostra uma janela de mensagem com informações acerca das pessoas que fizeram a pesquisa num ficheiro de compêndio. + + + + + + + + +As barras de ferramentas do &kbabel; + + +Barra de Ferramentas Normal + + + + + + + + Abrir + + Carrega o ficheiro PO no &kbabel; para o editar. + + + + + + + + + Gravar + + Grava o ficheiro PO actual se tiver sido modificado. + + + + + + + + + Desfazer + + Anula a última operação. + + + + + + + + + Refazer + + Repete a última operação anulada. + + + + + + + + + Cortar + + Corta o texto seleccionado e muda-o para a área de transferência. + + + + + + + + + Copiar + + Copia o texto seleccionado para a área de transferência. + + + + + + + + + Colar + + Cola o texto da área de transferência na posição actual do cursor. + + + + + + + + + Procurar + + Procura o texto indicado no ficheiro PO actual. + + + + + + + + + Anterior + + Muda para o item anterior no ficheiro PO. + + + + + + + + + Seguinte + + Muda para o próximo item no ficheiro PO. + + + + + + + + + Copiar o msgid para o msgstr + + Copia o texto original para o campo de texto da tradução. + + + + + + + + + Procurar nas Traduções + + Uma lista para procurar o texto seleccionado usando: o Motor de Busca da Base de Dados do &kde;, o ficheiro PO auxiliar, o ficheiro do compêndio PO e outros 'plugins' de dicionários que estejam disponíveis. + + + + + + + + + Parar + + Pára a pesquisa actual em curso. + + + + + + + + + Gestor de Catálogos + + Abre a janela do Gestor de Catálogos. + + + + + + +Barra de Navegação + + + + + + + + Anterior + + Muda para o item anterior no ficheiro PO. + + + + + + + + + Seguinte + + Muda para o próximo item no ficheiro PO. + + + + + + + + + Primeiro Item + + Muda para o primeiro item no ficheiro PO. + + + + + + + + + Último Item + + Muda para o último item no ficheiro PO. + + + + + + + + + Aproximado ou não-traduzido anterior + + Muda para o item aproximado ou não-traduzido anterior no ficheiro PO. + + + + + + + + + Aproximado ou não-traduzido seguinte + + Muda para o próximo item aproximado ou não-traduzido no ficheiro PO. + + + + + + + + + Aproximado anterior + + Muda para o item aproximado ou não-traduzido anterior no ficheiro PO. + + + + + + + + + Aproximado seguinte + + Muda para o próximo item aproximado no ficheiro PO. + + + + + + + + + Não-traduzido anterior + + Muda para o item por traduzir anterior no ficheiro PO. + + + + + + + + + Não-traduzido seguinte + + Muda para o próximo item por traduzir no ficheiro PO. + + + + + + + + + Erro anterior + + Muda para o erro anterior no ficheiro PO. + + + + + + + + + Erro seguinte + + Muda para o próximo erro no ficheiro PO. + + + + + + + + + Recuar + + Muda para o último item visitado no ficheiro PO. + + + + + + + + + Avançar + + Muda para o próximo item visitado no ficheiro PO. + + + + + + +Barra de Estado + + + Actual + + A mensagem actual no ficheiro PO editado. + + + + Total + + O número total de mensagens no ficheiro PO. + + + + Aproximado + + O número de mensagens marcadas como aproximadas. Elas deverão ser revistas e traduzidas, se for necessário. + + + + Não Traduzidas + + Número de mensagens de não-traduzidas. + + + + Estado do editor + + INS - inserção, e SOB - sobreposição. O mesmo significado que é usado em todos os editores de texto normais. + + + + Estado do ficheiro PO + + RO - ficheiro apenas para leitura, RW - acesso de leitura-escrita ao ficheiro. Quando o ficheiro está apenas para leitura, você não poderá modificar os itens no editor. + + + + Barra de evolução + + Normalmente, esta barra está escondida. Só é mostrada quando a gravação é efectuada ou se você procura por mensagens no ficheiro PO, no compêndio ou noutros ficheiros. + + + + + + + + +O menu do &catalogmanager; + + +O Menu Ficheiro + + + + &Ctrl;Q Ficheiro Sair + + + + Sai do &catalogmanager; + + + + + + + +O Menu Editar + + + + &Ctrl;F Editar Procurar nos Ficheiros... + + + + Abre a janela de Procura para encontrar algum texto num conjunto de ficheiros PO. + + + + + + &Ctrl;R Editar Substituir nos Ficheiros... + + + + Abre a janela de Substituição para procurar e substituir as sequências de texto num conjunto de ficheiros PO. + + + + + + Escape Editar Parar a Procura + + + + Pára a operação de procura/substituição em curso no momento. + + + + + + &Ctrl;M Editar Trocar a Marcação + + + + Comuta a marcação para o ficheiro seleccionado. + + + + + + Editar Remover a Marcação + + + + Retira a marcação do ficheiro ou da pasta actual. + + + + + + Editar Trocar Todas as Marcações + + + + Comuta as marcações para o ficheiro ou pasta seleccionado (recursivamente). + + + + + + Editar Remover Todas as Marcações + + + + Retira as marcações para o ficheiro ou pasta seleccionado (recursivamente). + + + + + + + +O Menu Ferramentas + + + + &Ctrl;S Ferramentas Estatísticas + + + + Mostra as estatísticas sobre o número de mensagens traduzidas/não-traduzidas/aproximadas no ficheiro ou sub-árvore seleccionado. + + + + + + &Ctrl;Y Ferramentas Verificar a Sintaxe + + + + Verifica a sintaxe para o ficheiro ou sub-árvore seleccionado com o 'msgfmt'. + + + + + + + +O Menu Configuração + + + + Configuração Mostrar a Barra de Ferramentas + + + + Quando estiver assinalada a opção, a barra de ferramentas normal é mostrada. + + + + + + Configuração Mostrar a Barra de Estado + + + + Quando estiver assinalada a opção, a barra de estado em baixo é mostrada. + + + + + + Configuração Configurar os Atalhos... + + + + Abre a janela de configuração para as combinações de teclas associadas às acções. Isto permite-lhe definir os atalhos predefinidos para se adequar às suas necessidades. + + + + + + Configuração Configurar as Barras de Ferramentas... + + + + A janela de configuração da barra de ferramentas normal abrir-se-á. Você poderá escolher quais as acções que vão para as barras de ferramentas e quais é que você irá personalizar. + + + + + + + +O Menu Ajuda +&help.menu.documentation; + +
+ + diff --git a/tde-i18n-pt/docs/tdesdk/kbabel/preferences.docbook b/tde-i18n-pt/docs/tdesdk/kbabel/preferences.docbook new file mode 100644 index 00000000000..de8507eb0f8 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kbabel/preferences.docbook @@ -0,0 +1,1953 @@ + + + + + + + + + + + + + + + +JoséPires
jncp@netcabo.pt
Tradução
+
+ +Preferências + + + +Configuração global e do projecto + +Desde o KBabel 1.10 (KDE 3.4), o KBabel passou a ter o conceito de projectos e, como tal, a configuração foi dividida em duas categorias: a configuração global e a configuração do projecto (também chamada de configuração do projecto). + +O 'gettext' da &GNU; usa um termo chamado "projecto", que não tem nada a ver com os projectos do KBabel. O 'gettext' da &GNU; entende como projecto uma aplicação relacionada com o ficheiro PO. No caso do KBabel, um projecto é bastante maior. Poderá significar um conjunto de aplicações, como o &kde;. + +O KBabel tem sempre um projecto actual, mesmo que seja o projecto por omissão. O KBabel não tem nenhum modo sem projecto. Um projecto funciona sempre para o editor e o gestor de catálogos do KBabel. + + + +Limitações conhecidas da implementação actual + +Infelizmente, a implementação actual dos projecto tem alguns problemas conhecidos. + +Um exemplo existe, na configuração global, na medida em que não há uma configuração para o utilizador por omissão, a sua língua por omissão e outros dados importantes do utilizador a nível global. Isso significa que esses dados terão de ser introduzidos de novo, sempre que é criado um novo projecto. + +Outro problema é o assistente de projectos novos. Não pede informações suficientes, especialmente no que diz respeito ao endereço de e-mail da equipa. Como tal, recomenda-se que verifique a configuração do projecto após ter executado o assistente. + +De momento, não pode copiar os projectos dentro do KBabel, como tal não poderá partilhar de forma simples a configuração correcta. Contudo, tem toda a liberdade para copiar o projecto fora do KBabel e carregar o projecto copiado para o KBabel. + + + + +Usar o KBabel em projectos não-&kde; + +Embora a configuração por omissão do &kbabel; esteja orientada para ser usada no &kde;, o &kbabel; podem ser usadas para traduzir os ficheiros PO de outros projectos. Contudo, terá de ajustar a configuração de acordo com as necessidades do seu projecto. Isto é especialmente verdadeiro para os projectos da &GNU; e compatíveis com a &GNU;, que necessitam de opções bastante diferentes das do &kde;. + +Um problema é que o &kbabel; é relativamente agressivo ao gravar os ficheiros PO e substitui a configuração dos ficheiros PO por configurações dos projectos, se não for dito nada em contrário. Isto poderá ser altamente estranho para alguém que não esteja habituado ao &kde;. Contudo, o &kde; tem 900+ ficheiros POT para traduzir, somente para as mensagens da GUI. Como tal, para uma tarefa desse tipo, é desejável alguma automatização. O tempo levado para configurar um projecto é bastante menor em comparação com o tempo que se ganha posteriormente. Obviamente, com não-utilizador do &kde;, poderá ter menos sorte. Terá de fazer mais configurações, dado que as predefinições não são completamente adequadas e não irá ganhar muito se fizer muitas traduções, dado que os projectos da &GNU; só têm tipicamente um ficheiro POT para traduzir. + + + + + + +Configuração global do &kbabel; + +Para mostrar a janela de Preferências escolha a opção Configuração Configurar o KBabel... do menu do &kbabel;. Ele usa uma janela de configuração estruturada que torna muito fácil encontrar uma opção sem ter de fazer uma pesquisa intensiva por ela. + + +Editar +A categoria das preferências do editor está dividida em 4 sub-janelas: a Geral, a Aparência, a Ortografia e a Tipos de Letra. Todas estas opções configuram como é que o editor se comporta e fica a nível visual. + + +Geral + + +Janela Geral de Edição + + + + +Janela Geral de Edição + + + +Esta secção contém um conjunto de opções de cruzes. + +A primeira opção na parte superior indica se o estado de aproximado é limpo automaticamente logo que um carácter seja introduzido no editor do MsgStr. Quando esta opção estiver desactivada, você terá de escolher manualmente o EditarComutar o Estado de Aproximado ou usar o atalho de teclado &Ctrl;U. Repare que isto significa que o texto , fuzzy será removido do comentário do item. + +A próxima opção permite-lhe activar a edição inteligente, onde o editor insere automaticamente os caracteres especiais escapados correctamente, ⪚ o \t depois de carregar em Tab e permite o tratamento especial do Enter. + +As opções inferiores são muito úteis não a assistir a correcção da tradução, mas se o texto traduzido é uma substituição adequada do original. Por exemplo, muitas das mensagens representam itens do menu com aceleradores de teclado e textos formatados à C cuja estrutura precisa de permanecer intacta quando for traduzida. + + + + Verificar os Argumentos + + Quando esta opção é seleccionada, os textos no formato do C que existem na mensagem original e na tradução são verificados para garantir que a quantidade de sequências de formatação e a sua ordem são consistentes. + + + + Verificar Acelerador + +Quando esta opção é seleccionada, o &kbabel; verifica se a quantidade de caracteres aceleradores é idêntica, tanto na mensagem original como na traduzida. Tenha em atenção que o carácter de aceleração é o & no &kde; (mas não em todas as ferramentas de programação). Veja a secção de Diversos em baixo, para saber como alterar um acelerador de teclado. + + + + Verificar Equação + + Esta é uma funcionalidade do desenvolvimento do projecto do KDE. Os ficheiros .desktop são ficheiros de texto simples que guardar vários parâmetros no formato chave=valor. Algumas destas chaves podem ser traduzidas. A única restrição é que o lado esquerdo da igualdade terá de permanecer inalterado. A verificação das equações permite-lhe detectar vários erros detectados pelo algoritmo de aproximação do msgmerge. Tenha em atenção que existem situações onde esta função gera erros falsos nalguns ficheiros PO. + + + + Procurar por Informação de Contexto Traduzida + +Algumas mensagens originais são marcadas com informações de contexto, de modo a que fiquem únicas, mesmo que representem a mesma palavra. Isto acontece porque muitas das palavras simples, como a Save (Gravar), são traduzidas em várias línguas. A informação de contexto é marcada com um _:. Muitos dos tradutores menos experientes traduzem a informação de contexto e preenchem os seus ficheiros PO com lixo. Assinale esta opção para se certificar que será avisado acerca destes erros num ficheiro. + + + + Verificar Formas Plurais + + Se você estiver a traduzir o projecto do &kde;, ele usa uma forma especial de indicar as formas plurais das mensagens. Esta verificação conta automaticamente o número de formas no msgstr e compara-o com o número indicado na página de Identidade. Um número incorrecto de formas plurais poderá resultar no estoiro de uma aplicação. + + + + Apitar em caso de erro + + A sua campainha do sistema irá apitar se você mudar para itens com erros como os descritos em cima. + + + + Mudar a cor do texto em caso de erro + + Este é outro tipo de aviso acerca dos erros na mensagem actual. É uma boa solução para os que não oiçam bem ou não gostem do barulho da campainha. Veja também a página da Aparência para saber como mudar a cor do texto em caso de erros. + + + + + + + +Aparência + + +Janela de Aparência da Edição + + + + +Janela de Aparência da Edição + + + +Estas opções permitem-lhe configurar a aparência do editor de mensagens. Na parte superior existem 4 opções: + + + + Realce de sintaxe + Ao definir esta opção, irá activar o realce da sintaxe para os caracteres especiais, os aceleradores e o fundo do texto no visualizador do 'msgid' e no editor do 'msgstr'. Se você não tiver um ecrã monocromático ou se tiver algum problema de vista, você deverá activar esta opção. + + + Fundo do item seleccionado + O fundo ficará realçado apenas para os caracteres existentes no 'msgid' e no 'msgstr'; isto inclui os espaços. Isto é útil se você não quiser ver as aspas envolventes (ver em baixo) do item do PO, e quiser ser à mesma capaz de observar os espaços iniciais e finais numa linha de texto. + + + Marcar os espaços com pontos + Quando você achar que precisa de contar os espaços e o realce do fundo não é ao seu gosto, então você poderá assinalar esta opção para ter um ponto no meio dos espaços em branco. Tenha em atenção que este é um ponto no centro do carácter e não um ponto final. + + + Mostrar as aspas envolventes + Se você achar que a visualização dos caracteres terminais na linha de texto do 'msgstr' ou do 'msgid' é melhor para si, então assinale esta opção para ver as aspas envolventes para cada linha de texto. + Se você estiver habituado a editar ficheiros PO com editores de texto normais, você poder-se-á sentir mais seguro se puder ver as aspas iniciais e finais nas linhas dos itens do ficheiro PO. + + + +Para os vários itens do texto editado existem diversas escolhas de cores para tornar a edição simples. As cores poderão ser alteradas se carregar nos botões de selecção de cores. Nas janelas de 'escolha uma cor' você poderá escolher de entre as cores-padrão, das cores personalizadas ou simplesmente poderá extrair uma cor de qualquer parte do seu ecrã. + + + + Cor de fundo + Isto configura a cor de fundo para os caracteres na área do MsgID e no editor do MsgStr. Para alterar a cor de fundo geral dos campos de texto, você precisa de usar o &kcontrolcenter;. + + + Cor dos caracteres entre aspas + Aqui você poderá ajustar a cor dos caracteres especiais como as aspas (\") ou a mudança de linha (\n). + + + Cor dos erros de sintaxe + Esta é a cor para o item de texto inteiro se forem detectados erros quando você gravar o ficheiro PO. Os erros são despoletados se você não terminar de forma idêntica o msgid e o msgstr ou se os caracteres forem 'escapados' incorrectamente. + + + Cor dos caracteres no formato C + Isto define a cor para uma sequência de caracteres como nas funções da linguagem C printf ou scanf. De um modo geral, estas começam com um sinal de percentagem (%) e são seguidos de um carácter. + + + Cor dos atalhos do teclado + Os atalhos de teclado começam com um E comercial (&) no &kde;, mas se você estiver a traduzir outros projectos, poderá existir um carácter diferente a marcar a tecla do acelerador. Veja a secção de Diversos em baixo, para saber como alterar um acelerador de teclado. + + + +O estado do item em edição actualmente é marcado com três LEDs. Por razões de conveniência, você poderá escolher onde colocar estes LEDs—quer na barra de estado quer na secção do editor (entre o item do 'msgid' e do 'msgstr'). Se tiver dificuldades a ver algumas das cores ou se quiser ser capaz de registar as mudanças de estado dos LEDs com facilidade, sem ter de mexer os seus olhos, você poderá seleccionar a cor preferida com o botão de selecção das cores. + + + + + + +Procurar + + +Janela de Procura + + + + +Janela de Procura + + + +A secção de procura permite-lhe personalizar as várias opções para poder procurar nos textos traduzidos anteriormente. + +As opções gerais são comuns para todos os tipos de pesquisa. Se você assinalar a opção Começar procura automaticamente, então a pesquisa é iniciada automaticamente quando você mudar para outro item do editor. Neste momento, existem três opções que você poderá escolher, mas dado que o &kbabel; pode usar 'plugins' de dicionários, os dicionários disponíveis dependem dos que estão instalados. Se usar a opção Configuração Configurar o Dicionário ..., você poderá configurar os 'plugins' de procura. + +Os 'plugins' dos dicionários que são instalados por omissão são: + + + +Motor de Busca da Base de Dados do &kde; + +Este novo método está ainda num estado inicial de desenvolvimento e serve de base ao &kbabeldict; que acompanha o &kbabel;. Veja a documentação do &kbabeldict; para saber mais informações sobre como configurar o motor de busca. + + + +Compêndio PO +O compêndio é um ficheiro PO normal, que deverá conter uma lista com as traduções normais da sua equipa de traduções. Se você não tiver nenhum, você também poderá usar um ficheiro que contenha todas as traduções da sua equipa (⪚, o ficheiro $lang.messages do Projecto do &kde;, o qual poderá ser obtido em i18n.kde.org). + + + +Auxiliar PO +O ficheiro auxiliar devê-lo-á ajudar a encontrar o contexto de uma tradução ao procurar pela mesma mensagem num catálogo de mensagens do mesmo pacote, mas que esteja traduzido para outra língua. Desta forma, você poderá perceber como é que esta mensagem está traduzida noutra língua. + + + +Você também poderá iniciar a pesquisa manualmente se seleccionar um item do menu que aparece quando carrega em DicionáriosProcurar o Texto Compêndio PO ou se mantiver o botão de procura carregado durante algum tempo. + + + + +Diferenças + + +Janela de Diferenças + + + + +Janela de Diferenças + + + +A secção Diferenças mantém as opções para poder mostrar as diferenças nos 'msgid's. + +Todas as diferenças poderão ser mostradas por duas partes, os caracteres adicionados e os removidos do texto. Para ambos, você poderá indicar o método de apresentação e a cor que será usada. O Realçado significa que a cor de fundo dos caracteres correspondentes será mostrada na cor seleccionada, enquanto que o Sublinhado(para os caracteres adicionados) ou o Traçado (para os caracteres removidos), irá marcar as partes alteradas através de linhas coloridas. +O modo do 'diff' precisa de encontrar o msgid original com o qual deverá fazer a comparação. Para este fim, o &kbabel; poderá usar a base de dados de traduções se você a tiver activado com a opção Usar as mensagens da Base de Dados de Traduções. Uma segunda possibilidade é usar uma árvore com os ficheiros PO originais e indicando a raiz da árvore na Pasta de base dos ficheiros do 'diff'. + + + +Tipos de Letra + + +Janela de Tipos de Letra + + + + +Janela de Tipos de Letra + + + +Esta é uma janela de selecção de tipos de letra normal do &kde; com um pequeno extra. Você poderá optar por ver apenas os tipos de letra monoespaçados se assinalar a opção Mostrar apenas os tipos de letra monoespaçados. Isto é altamente recomendado para uma tradução simples. A janela dos tipos de letra permite-lhe definir a família do tipo de letra, o seu estilo, tamanho e a sua codificação. O campo em baixo mostra uma antevisão do tipo de letra actualmente escolhido para conveniência do utilizador. + + + + + +Assistente de Novo Projecto + + +Página 1 + + +Página 1 do Assistente de Projectos + + + + +Página 1 do Assistente de Projectos + + + +A primeira página do assistente pede-lhe os dados básicos do projecto. + + + +Nome do projecto +Indique aqui o nome do projecto, como será apresentado no menu do &kbabel;. + + +Nome do ficheiro de configuração +Seleccione aqui um ficheiro para guardar a configuração do seu projecto. + + +Língua +Seleccione ou indique aqui o nome da língua usada por este projecto. + + +Tipo de projecto +Seleccione aqui o tipo do seu projecto. + + + + + + +Página 2 + + +Página 2 do Assistente de Projectos + + + + +Página 2 do Assistente de Projectos + + + +A segunda página do assistente pergunta a configuração relacionada com o Gestor de Catálogos. + + + +Pasta de base dos ficheiros PO +Seleccione a pasta de base onde se encontram os seus ficheiros PO. + + +Pasta de base para os ficheiros POT +Seleccione a pasta de base onde se encontram os seus ficheiros POT. + + + +Indique as pastas que contêm todos os seus ficheiros PO e os respectivos POT. Os ficheiros e as pastas dentro dessas pasta serão então reunidos num árvore da janela do &catalogmanager;. + + + + + +Verificar a Configuração do Projecto + +Como foi escrito anteriormente neste capítulo, infelizmente, o assistente é muito simples e, como tal, não pede algumas das informações importantes. + +Agora que terminou o seu projecto novo, deverá verificar a configuração principal em Projecto Configurar.... Em especial, seleccione a pasta de Identidade e corrija o endereço de e-mail da equipa na Lista de correio da língua. (A que é criada por omissão no assistente só é útil se fizer parte de um projecto da &GNU;.) + +Se a configuração do projecto não for para o KDE, recomenda-se que verifique a página Gravar e verifique as suas opções. + + + + + + +Opções do Projecto + +Para mostrar a janela de Preferências escolha a opção Projecto Configurar... do menu do &kbabel;. Ele usa uma janela de configuração estruturada que torna muito fácil encontrar uma opção sem ter de fazer uma pesquisa intensiva por ela. + +O lado esquerdo da janela de preferências mostra as categorias dos itens personalizáveis e o lado direito mostra a página correspondente para a categoria seleccionada. O &kbabel; mantém as alterações se você mudar de categorias, por isso, quando você estiver satisfeito, poderá então carregar no botão OK. Em qualquer altura, você poderá usar a ajuda rápida—basta carregar no ponto de interrogação na barra de título e, depois de o cursor ter mudado para uma seta com um ponto de interrogação, carregue num botão, num texto ou noutro item de configuração para saber mais sobre ele. + +As páginas de configuração do &kbabel; (o editor) e do &catalogmanager; estão na lista. + + +Identidade + +Esta configuração diz respeito ao &kbabel;. + +Esta secção permite-khe definir os campos normais para cada ficheiro PO traduzido. Estas são o nome, o endereço de e-mail, o nome completo da língua, o endereço de e-mail da sua equipa de traduções. Existe também um campo de fuso-horário que lhe permite registar a sua hora da última modificação para os ficheiros PO. Você podê-la-á indicar como uma sequência de texto do tipo EEST ou um deslocamento face ao GMT do tipo +0000 (&ie; para Portugal). Esta informação é usada ao actualizar os cabeçalhos dos ficheiros. Você poderá encontrar as opções que controlam os campos do cabeçalho que deverão ser actualizados na secção Gravar da janela de Preferências. + +As sequências de caracteres para os fusos-horários não são normalizadas. Por isso, você não deverá usar o texto aqui para a especificação da hora da gravação na página Gravar. Você deverá usar o %z nesse caso. + + + +Número de formas singular/plural + +Use isto para indicar o número de formas plurais da sua língua. Por exemplo, é igual a 2 para o Português (uma para o singular e outra para o plural). + +Esta funcionalidade só está implementada neste momento para o formato das formas plurais usado no &kde;. Não funciona com as formas plurais do 'gettext' da &GNU;. + + + + + + + +Gravar + +Esta configuração diz respeito ao &kbabel;. + +POR FAZER Isto parece documentar apenas a página "Geral", mas não as do "Cabeçalho" e "Copyright" + +Esta secção permite-lhe editar as opções da gravação dos ficheiros PO. O primeiro grupo de opções controla o comportamento geral das acções efectuadas na gravação de um ficheiro PO. + + + + Actualizar o cabeçalho ao gravar + Active este botão para actualizar a informação do cabeçalho do ficheiro sempre que este for gravado. O cabeçalho mantém normalmente informações sobre a data e a hora em que o ficheiro foi actualizado pela última vez, o seu último tradutor, etc. Você poderá escolher a informação que desejar actualizar nos Campos a actualizar. Os campos que não existirem são adicionados ao cabeçalho. Se desejar adicionar mais campos ao cabeçalho, poderá editá-lo manualmente escolhendo EditarEditar Cabeçalho na janela de edição. + + + Verificar a sintaxe do ficheiro ao gravar + Assinale esta opção para verificar automaticamente a sintaxe do ficheiro ao gravar, utilizando msgfmt --statistics. Só receberá uma mensagem se ocorrer um erro. Deve manter esta validação activa a não ser que saiba o que está a fazer. + + + +Se você não quiser mexer em alguns dos campos do cabeçalho do ficheiro PO, ou se quiser obrigar à actualização de alguns campos específicos, existem cinco opções que controlam isso: a data da revisão, a língua do ficheiro PO, a codificação do texto, o nome do último tradutor e a codificação. Se um dos campos não existir, será adicionado ao cabeçalho. Se você quiser adicionar outras informações ao cabeçalho, você terá de o editar manualmente, escolhendo para tal a opção EditarEditar o Cabeçalho na janela do editor. Desactive a opção Actualizar o cabeçalho ao gravar em cima, se não quiser que o cabeçalho seja actualizado. + +Para a data e hora do campo do cabeçalho PO-Revision-Date (Data de Revisão do PO), você poderá escolher um dos formatos: Predefinido, Local, Personalizado. + +Você deverá manter a configuração Predefinida. As outras duas opções fazem com que o ficheiro PO gerado não seja mais um ficheiro PO normal do 'gettext' da &GNU;, como tal isto deverá ser evitado. + + + O Por omissão é o formato usando normalmente nos ficheiros PO. + P Local é o formato específico do seu país. + O Personalizado permite-lhe definir o seu próprio formato, onde você poderá pôr as seguintes sequências de formatação do género do C: + Ano + + + + FormatoSignificadoIntervalo + + + + + %yano00 a 99 + + + %Yano0001 a 9999 + + + +
+ + Mês + + + + FormatoSignificadoIntervalo + + + + + %mmês do ano01 a 12 + + + %fmês do ano1 a 12 + + + %b,%habreviatura do mêsJan a Dez + + + +
+ + Dia + + + + FormatoSignificadoIntervalo + + + + + %jdia do ano001 a 366 + + + %ddia do mês01 a 31 + + + %edia do mês1 a 31 + + + %aabreviatura do dia da semanaDom a Sáb + + + +
+ + Hora + + + + FormatoSignificadoIntervalo + + + + + %Hhora00 a 23 + + + %khora0 a 23 + + + %ihora1 a 12 + + + %Ihora01 a 12 + + + %pAM ou PM + + + +
+ + Minuto, Segundo, Fuso Horário + + + + FormatoSignificadoIntervalo + + + + + %Mminuto00 a 59 + + + %Ssegundo00 a 59 + + + %Zfuso horário(dado na configuração da identidade) + + + %zfuso horário(deslocamento numérico, tal como está indicado na configuração do sistema) + + + +
+
+
+ +A opção para seleccionar o formato de datas para o ficheiro PO considera-se desactualizada e, provavelmente, será removida numa versão futura do KBabel. + +O grupo inferior cobre as opções do ficheiro PO ao gravar. Se você estiver a trabalhar no projecto do &kde;, você precisa de saber que pelo menos o ficheiro desktop.po precisa de estar codificado em UTF-8. A lista permite-lhe seleccionar a codificação das mensagens. Pelo menos, terá de constar a configuração referente à sua língua e o UTF-8. Se, por alguma razão, você não quiser mudar acidentalmente a codificação do ficheiro PO, active a opção Manter a codificação do ficheiro. + +Por razões de intercâmbio de informação, o 'gettext' da &GNU; limita as codificações permitidas para um ficheiro PO. O &kbabel; não sabe desta restrição, como tal a codificação correspondente ao seu local poderá não ser adequada. (O UTF-8 é sempre suportado pelo 'gettext' da &GNU;.) + +
+ + +Verificação Ortográfica + +Esta configuração diz respeito ao &kbabel;. + +Aqui você poderá definir as suas preferências da verificação ortográfica. Estas são do seu interesse se você tiver um ficheiro de dicionário para a língua da sua tradução. Em baixo, encontram-se os itens que merecem ser vistos para poder ser configurados: + + + + Criar combinações raiz/afixo que não estão no dicionário + Para as novas palavras adicionadas ao dicionário pessoal, o motor de verificação ortográfica irá criar as combinações raiz/afixo para corresponder a mais do que uma palavra (variações). + + + Considerar as palavras coladas como erros + Se esta opção estiver activada, as palavras coladas serão tratadas como erros. Contudo, essas palavras são muito comuns na língua alemã, a qual tem um grande quantidade de palavras compostas, por isso deverá ser deixada desligada se for esse o caso. + + + Dicionário + Na lista respectiva, você poderá escolher qual o dicionário a usar. Tenha em atenção que você precisa de instalar um dicionário apropriado para a sua língua. Verifique a sua instalação do 'ispell' ou do 'aspell' para descobrir se tem um. + + + Codificação + +Aqui você poderá escolher a codificação do seu texto. Esta opção é passada ao verificador ortográfico, e será usada como a codificação do seu dicionário de palavras. Veja a documentação do kspell para mais detalhes. +A codificação aqui seleccionada não está associada às codificações dos ficheiros PO. Dependendo do verificador ortográfico (especialmente no caso do ispell), poderá não ter grandes escolhas para a codificação. (Por exemplo, algumas línguas da Europa Ocidental só poderão funcionar com o ispell, ao usar o ISO-8859-1.) + + + + + Cliente + O programa de infra-estrutura a usar para a verificação ortográfica. De momento só são suportados o ispell (International Ispell) ou o aspell'. + + + Lembrar as palavras ignoradas + Mantém um registo das palavras ignoradas pelo utilizador ao verificar ortograficamente os ficheiros PO. É muito conveniente que ignore as abreviaturas ou as combinações de letras estranhas que você encontra nas interfaces gráficas. + + + Ficheiro onde guardar as palavras ignoradas + Aqui você poderá indicar a localização do ficheiro com as palavras ignoradas. Carregue no ícone da pasta à direita do campo de texto. O valor por omissão é o $HOME/.kde/share/apps/kbabel/spellignores, em que a $HOME é a sua pasta pessoal. + + + + + +Referência de origem + +Esta configuração diz respeito ao &kbabel;. + + +Configuração do Projecto, referência da origem + + + + +Configuração do Projecto, referência da origem + + + +Esta janela serve para configurar a forma como o KBabel deverá construir a localização completa para cada referência de origem, referência essa que está descrita no comentário de cada item de um ficheiro PO. + + +Elementos da janela + +No campo de texto Pasta de base do código-fonte, poderá definir uma pasta de base onde se encontra o código-fonte do seu projecto. Isto define o valor da variável @CODEROOT@, o que está descrito em baixo. + +No grupo de Padrões de Localização, poderá definir padrões ou regras para construir as localizações, com a ajuda de algumas variáveis: a @CODEROOT@, a @PACKAGEDIR@, a @PACKAGE@, a @COMMENTPATH@, a @POFILEDIR@, que estão descritas em baixo. + +A variável @PODIRFILE@ foi introduzida no &kbabel; versão 1.11.1 (para o &kde; 3.5.1). + +Com o botão Adicionar, poderá acrescentar a linha do campo de texto à lista de padrões usados. Com o botão Remover, poderá retirar o padrão seleccionado da lista. Com os botões Subir e Descer, poderá alterar a prioridade dos padrões de localizações. + + + + +As variáveis + + +@CODEROOT@: A pasta de base do código-fonte. +@PACKAGEDIR@: A pasta do pacote (i.e., do ficheiro PO). +@PACKAGE@: O nome do pacote (i.e. nome do ficheiro PO sem extensão). +@POFILEDIR@: A pasta do ficheiro PO. +@COMMENTPATH@: O local relativo, dado como referência de origem no comentário de um item do ficheiro PO. + + +As variáveis @PACKAGEDIR@ e @POFILEDIR@ têm um significado semelhante, mas nem sempre o mesmo resultado. A variável @POFILEDIR@ terá sempre a pasta do ficheiro PO, enquanto o @PACKAGEDIR@ poderá não ter. Se o ficheiro PO foi carregado com a ajuda do &catalogmanager;, o @PACKAGEDIR@ terá só a parte da pasta, com base na pasta de base do PO, definida para o &catalogmanager; (veja abaixo). + +As variáveis @CODEROOT@ e @POFILEDIR@ só poderão ser usados no início de um padrão para ser úteis. A variável @COMMENTPATH@ só poderá ser usada no fim de um padrão, e é praticamente obrigatória. As variáveis @PACKAGEDIR@ e @POFILEDIR@ não deverão ser usadas no mesmo padrão. As variáveis @CODEROOT@ e @POFILEDIR@ também não deverão ser usados no mesmo padrão. + + + + +Os padrões de localizações por omissão + +Desde o &kbabel; 1.11.1 (do &kde; 3.5.1), passaram a existir cinco padrões de localizações por omissão: + + +@PACKAGEDIR@/@PACKAGE@/@COMMENTPATH@ +@CODEROOT@/@PACKAGEDIR@/@PACKAGE@/@COMMENTPATH@ +@CODEROOT@/@PACKAGE@/@COMMENTPATH@ +@POFILEDIR@/@COMMENTPATH@ +@POFILEDIR@/../@COMMENTPATH@ + + +Os projectos do &kde; necessitam tipicamente do terceiro padrão. O último padrão é tipo dos projectos da &GNU;, onde as referências de origem são relacionadas com o pai da pasta em que se encontra o ficheiro PO. + + + + +Criar Novos Padrões de Localização + +Na maioria dos casos, os padrões de localização por omissão deverão ser suficientes, quer o projecto seja para o KDE (assumindo que tenha definido a pasta de base correcta) quer se for um da &GNU; (ou com uma estrutura de projecto da &GNU;). + +No caso do &kde;, alguns ficheiros PO não contêm informações suficientes (incluindo o local e o nome do ficheiro) do &kbabel; para encontrar o ficheiro de origem correcto que é suposto referenciar. Para corrigir isso, irá necessitar de padrões de localizações precisos para esses ficheiros, o que é praticamente impossível de definir, pela quantidade destes ficheiros no &kde;. Mas se lidar frequentemente com um desses ficheiros, poderá valer a pena definir um padrão de localizações explicitamente para suportar esse ficheiro PO. + +Para criar os seus próprios padrões de localizações, poderá usar as variáveis definidas acima, se bem que, à parte do @COMMENTPATH@, não existem mais variáveis obrigatórias. Para ser mais exacto, o @COMMENTPATH@ também não é obrigatório, mas se não o usar, provavelmente não irá obter resultados.) + +Um exemplo de padrões de localizações poderá ocorrer quando desejar mostrar a referência de origem do ficheiro do &kde; 'desktop_tdebase.po'. No caso de necessitar de um padrão de localizações do tipo: @CODEROOT@/@PACKAGEDIR@/tdebase/@COMMENTPATH@ (em comparação com um dos padrões de localização predefinidos, a sequência @PACKAGE@ foi substituída por 'tdebase'). + +No caso de alguns problemas realmente complexos poderá, obviamente, definir uma localização absoluta sem quaisquer variáveis, para além da @COMMENTPATH@, como por exemplo: '/home/ze/codigo-kde/tdebase/@COMMENTPATH@', assumindo que a '/home/ze/codigo-kde/tdebase' é o local onde o módulo de código 'tdebase' se encontra. + + + + + + +Diversos + +Esta configuração diz respeito ao &kbabel;. + +A secção Diversos contém as opções do &kbabel; que não se encaixam em mais nenhum lado. + + + + Marcador dos atalhos do teclado + Aqui você poderá seleccionar o seu próprio carácter para servir de indicador dos aceleradores de teclado na interface. Por omissão, é o & (E comercial), mas noutros ambientes poderá ser diferente. Por exemplo, nas traduções do Gnome/GTK, o marcador de aceleradores de teclado é o carácter de sublinhado _. + + + Expressão regular para a informação de contexto + Para os utilizadores inexperientes, a "expressão regular" poderá soar estranha. Contudo, você só é aconselhado a alterar o valor por omissão se souber o que está a fazer. Algumas plataformas de programação gráfica definem os seus próprios métodos de descrição da informação de contexto. Consulte um programador experiente, se você traduzir ficheiros PO que não sejam do projecto do &kde;. Por razões de completude, o autor irá "traduzir" o que a expressão regular por omissão significa: "o texto corresponde se começar por _:, for seguido por um ou mais caracteres e terminar com um fim-de-linha". + + + + + + + +Pastas do projecto + +Esta configuração diz respeito ao &catalogmanager;. + +Aqui estão dois campos de texto com botões de pastas. Indique as pastas que contêm todos os seus ficheiros PO e os respectivos POT. Os ficheiros e as pastas dentro dessas pastas serão então reunidos num árvore da janela do Gestor de Catálogo. + +Em baixo você poderá activar ou desactivar se: + + + + Abrir os ficheiros numa nova janela + Se isto estiver activado, todos os ficheiros que forem abertos no Gestor de Catálogos serão abertos numa nova janela. + + + Terminar os processos ao sair + Se activar isto, o &kbabel; tentará terminar os processos que ainda não tiverem saído quando o programa terminar, mandando-lhes um sinal 'kill'. Não é garantido que os processos morram, de facto. + + + + Criar um índice para o conteúdo do ficheiro + Se você assinalar esta opção, o &kbabel; irá criar um índice para cada ficheiro na árvore. Este índice é então usado nas operações de procura e substituição. Existe um grande compromisso de velocidade. Se você activar a criação do índice, a actualização da informação do ficheiro será muito mais lenta. Por outro lado, acelera a operação de procura e substituição consideravelmente. + + + + + + +Comandos de Pastas + +Esta configuração diz respeito ao &catalogmanager;. + + +Configuração do Projecto, comandos de pastas + + + + +Configuração do Projecto, comandos de pastas + + + +Aqui você poderá inserir os comandos que deseja executar nas pastas do Gestor de Catálogos. Os comandos serão então mostrados no sub-menu Comandos do menu de contexto do Gestor de Catálogos. Insira no campo Legenda do Comando o nome do comando. O nome poderá ser escolhido à vontade e só é usado para ser apresentado no menu. No campo Comando, introduza o comando que você deseja executar quando seleccionar o item de menu correspondente. Carregue depois no botão Adicionar para adicionar o comando aos já disponíveis. Para editar um comando, seleccione-o, carregue em Editar e depois em Adicionar, depois de ter terminado. Para remover um comando, seleccione-o na lista e carregue no botão Remover. Se você quiser uma ordem diferente no sub-menu de contexto, você poderá usar os botões para subir e descer. O comando é executado recorrendo à sua linha de comandos por omissão, por isso você poderá executar vários comandos de uma vez, separando-os por um ponto-e-vírgula (;), e poderá definir variáveis de ambiente, se necessitar. Os comandos são executados na pasta (ficheiro PO) que seleccionou no Gestor de Catálogos. As sequências seguintes serão substituídas num comando: + + + @PACKAGE@: O nome da pasta sem a sua localização + @PODIR@: O nome da pasta dos PO com a localização + @POTDIR@: O nome da pasta de modelos com a localização + + +P.ex.: Se você quiser executar o make e depois o make install você poderia inserir no campo Nome Make install e no campo Comando make; make install. Se você então seleccionar a opção Comandos Make install do menu de contexto de uma pasta, então os comandos acima indicados serão executados nesta pasta. + + + +Comandos de Ficheiros + +Esta configuração diz respeito ao &catalogmanager;. + + +Configuração do Projecto, comandos de ficheiros + + + + +Configuração do Projecto, comandos de ficheiros + + + +Aqui você poderá introduzir os comandos que deseja executar nos ficheiros do Gestor de Catálogo. Os comandos são então apresentados no sub-menu Comandos do menu de contexto do Gestor de Catálogos. + +Insira no campo Legenda do Comando o nome do comando. O nome poderá ser escolhido à vontade e só é usado para ser apresentado no menu. No campo Comando, introduza o comando que você deseja executar quando seleccionar o item de menu correspondente. Carregue depois no botão Adicionar para adicionar o comando aos já disponíveis. Para editar um comando, seleccione-o, carregue em Editar e depois em Adicionar, depois de ter terminado. Para remover um comando, seleccione-o na lista e carregue no botão Remover. Se você quiser uma ordem diferente no sub-menu de contexto, você poderá usar os botões para subir e descer. O comando é executado através da sua linha de comandos predefinida, por isso você poderá executar vários comandos de uma vez, separando-os por um ponto-e-vírgula (;), assim como poderá definir variáveis de ambiente, se necessário. Os comandos serão executados na pasta (ficheiro PO) em que o ficheiro que você seleccionou no Gestor de Catálogos se encontra. As sequências seguintes serão substituídas num comando: + + + @PACKAGE@: O nome do ficheiro sem a sua localização e extensão + @POFILE@: O nome do ficheiro PO com a localização e a extensão + @POTFILE@: O nome do ficheiro de modelo correspondente com a localização e a extensão + @PODIR@: O nome da pasta em que o ficheiro PO se encontra, com a sua localização + @POTDIR@: O nome da pasta em que o ficheiro do modelo se encontra, com a sua localização + +Por exemplo, se você quiser juntar o ficheiro do modelo com o seu ficheiro PO, você poderá inserir no campo Nome Juntar e no campo Comando msgmerge @POFILE@ @POTFILE@ > @PACKAGE@.new && mv @PACKAGE@.new "@PACKAGE@.po. Se então seleccionar a opção ComandosJuntar no menu de contexto de um ficheiro, o ficheiro PO será reunido com o seu ficheiro de modelo. + + + +Gestor de Catálogos + +Esta configuração diz respeito ao &catalogmanager;. + + +Configuração do Projecto, &catalogmanager; + + + + +Configuração do Projecto, &catalogmanager; + + + +As opções activam ou desactivam a coluna correspondente à área do &catalogmanager;. + + + + +Diferenças + +Esta configuração diz respeito ao &catalogmanager;. + + +Configuração do Projecto, diferenças + + + + +Configuração do Projecto, diferenças + + + +A FAZER + + + +
+
+ diff --git a/tde-i18n-pt/docs/tdesdk/kbabel/using.docbook b/tde-i18n-pt/docs/tdesdk/kbabel/using.docbook new file mode 100644 index 00000000000..a07084df3d3 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kbabel/using.docbook @@ -0,0 +1,1038 @@ + + + + + + + + + + + + + + +PedroMorais
morais@kde.org
Tradução
+
+ + +Usar o &kbabel; + + +Introdução + +Normalmente, as mensagens e a documentação do programa são escritas em inglês. Usando uma plataforma composta por um conjunto de ferramentas e bibliotecas, é possível ter as suas aplicações favoritas a falar a sua língua não-inglesa nativa. Este processo de adaptar uma aplicação a uma língua específica é conhecido por 'localização'. O processo de localização inclui a tradução das interfaces e da documentação do programa para as várias línguas que o utilizador necessita e, em alguns países e regiões, adaptar os métodos de entrada e saída de dados para convenções especiais. O &kbabel; é uma ferramenta que o ajudará no processo de internacionalização para fazer com que a interface de uma aplicação fale várias línguas. + +Todos os programas com capacidades de internacionalização tornam disponíveis para tradução um ou mais ficheiros de catálogo de mensagens. A extensão destes ficheiros é a .pot. O POT é uma abreviatura de Portable Object Template (Modelo de Objecto Portável). + +Cada tradutor retira uma cópia de um desses modelos POT e começa a preencher as mensagens em branco: cada mensagem é traduzida na língua desejada. O ficheiro que contém o texto traduzido é referido como sendo um ficheiro PO (Portable Object - Objecto Portável). + +Logo que todas as mensagens tenham sido traduzidas, o ficheiro PO é compilado para um formato binário, conhecido como um ficheiro MO (Machine Object - Objecto da Máquina). Estes ficheiros, que serão gravados com uma extensão .mo (ou uma extensão .gmo), para mostrar que foram processados pelo 'gettext' da &GNU;), actuam como uma base de dados para minimizar o tempo ocupado pelas aplicações para procurar cada mensagem traduzida. + +Isto leva a uma pergunta: é necessário saber o que existe dentro de um ficheiro PO, mesmo tendo o &kbabel;? A resposta é, sem dúvida, sim. Existem situações em que o catálogo de mensagens pode ficar corrompido e tenha de ser corrigido manualmente. A maioria destes problemas são os odiosos conflitos do CVS ou SVN que ocorrem quando um processo de tradução é coordenado por um sistema concorrente de controlo de versões, como o CVS ou o Subversion (SVN). O &kbabel; não o poderá ajudar muito, se um destes problemas se levantar, de modo que um editor de texto e algum conhecimento acerca dos ficheiros PO serão necessários. Vamos ver como é que se cria um ficheiro PO. + +Os ficheiros PO consistem em vários pares de mensagens — um msgid e um msgstr. O 'msgid' é o texto em inglês e o 'msgstr' é o texto traduzido na língua apropriada. O texto que acompanha cada um dos 'msgid' e 'msgstr' está retido entre aspas semelhantes às da linguagem C. Segue-se um exemplo, retirado de um ficheiro PO do &noatun;, é o msgid "Open a Playlist" + + + +As linhas em branco e as que começam por # são ignoradas. As linhas que começam por # representam comentários e são formas úteis de fornecer uma nota que detalhe o ficheiro em que esta mensagem será usada e, no caso dos criadores das aplicações, para fornecer comentários adicionais para ajudar na tradução. O &kbabel; mostra estas linhas de comentários para cada mensagem. + +Em muitos dos casos, o primeiro par 'msgid'-'msgstr' dos ficheiros PO é um item falso (que actua como cabeçalho do ficheiro PO) que contém várias informações acerca do ficheiro PO traduzido, como o nome da aplicação, a data da tradução, o nome do tradutor e assim por diante. + +Uma funcionalidade útil de internacionalização é chamada de formas plurais. O Inglês (e o Português) só usam o singular e uma única forma plural de nomes, ⪚ 1 ficheiro e 10 ficheiros. Isto leva a que muitos programadores pensem que o mundo é assim simples e que poderão usar mensagens do tipo Do you want to delete %1 file(s)?, onde o %1 representa um conjunto de ficheiros a remover. Isto é completamente errado. Na tradução para Eslovaco (por exemplo), você precisa de 3 formas diferentes da mensagem. Este número é diferente para as diferentes línguas e mesmo quando é o mesmo, ⪚ o Checo usa também 3 formas, só que a regra que decide a forma a usar é que poderá ser muito diferente. As formas plurais nos ficheiros PO estão aqui para ajudar. + +Os programadores do &kde; escolheram uma implementação diferente para as formas plurais, em relação ao gettext da &GNU; e, por isso, introduziram o seu próprio formato e o tratamento das mesmas mensagens. + + + + +Editor + +Aqui está uma imagem do &kbabel;. + + +Imagem do &kbabel; + + + + +Imagem do &kbabel; + + + +Por questões de conveniência, o &kbabel; tem barras de ferramentas para acelerar várias operações e, para os utilizadores ocupados, existem muitos atalhos de teclado. A janela principal divide-se em quatro partes. + +O campo de edição em cima e à esquerda é só para leitura e contém o campo 'msgid' actual do ficheiro PO aberto e o seu texto em inglês. + +O campo de edição em baixo e à esquerda contém o campo 'msgstr' relacionado com o 'msgid' apresentado e aqui você poderá editar o texto traduzido. + +A parte em cima e à direita é um painel de comentários onde você poderá ver os comentários que foram adicionados para o item em edição no momento. + +Pode ser usado: + + +para descobrir como é que a mensagem actual é tratada pela aplicação (formatada à C ou simples) +em alguns casos, para ler os comentários úteis adicionados pelos programadores da aplicação para ajudar os tradutores no seu trabalho — por exemplo, poderão existir sugestões técnicas (usadas com grande aplicação no projecto LyX) +quando precisa de saber em que ficheiro existe uma dada mensagem, porque precisa de comunicar um erro ortográfico no texto original em inglês. + + +A janela do editor (em baixo e à direita) é a parte mais sofisticada da janela principal do &kbabel;. O seu tamanho poderá ser ajustado usando a linha divisória entre ele e o painel do comentário (o painel em cima e à direita). A janela do editor tem dois painéis separados em páginas — uma que contém a informação da procura e a outra com a informação de contexto. A página da informação de contexto contém uma área móvel que mostra os 4 itens anteriores e seguintes associados ao item actual — essencialmente, é uma pequena 'fotografia' do ficheiro PO. Durante a tradução, é bastante comum os textos das mensagens estarem relacionados com as mensagens anteriores e subsequentes, de modo a que o painel de contexto seja útil para procurar nas mensagens adjacentes para ter uma ideia de como a mensagem actual poderá ser melhor traduzida. A tradução das interfaces das janelas é um bom exemplo, ou os itens gráficos e a sua mensagem de "o que é isto?". + + +Mais Funcionalidades do &kbabel; + +Cada item do 'msgid' poderá estar num de três estados: + + + + não-traduzido + + não existe nenhum texto traduzido associado de momento ao 'msgstr' + + + + 'fuzzy' (aproximado) + + o msgmerge tentou fazer a correspondência de um determinado texto, procurando nos restantes itens do ficheiro PO. Isto não funciona perfeitamente e você precisa de editar o ficheiro traduzido para se adequar ao texto actual em inglês. + + + + traduzido + + o 'msgid' é a forma completamente traduzida do 'msgstr' + + + + +O estado do item actual é indicado através de dois LEDs. Dependendo da sua configuração, estes tanto poderão estar na barra de estado como no campo de edição do texto traduzido. Ambos têm uma cor personalizada (para reflectir os seus gostos ou requisitos visuais). Por favor leia a secção das Preferências para ver como poderá ajustar essas opções. + + + + + + +Tradução Avançada + +Agora você tem uma ideia sobre como traduzir um ficheiro PO. Nesta secção, tentar-se-á seguir a forma normal de traduzir um novo ficheiro PO usando as funcionalidades avançadas do &kbabel;. Assumir-se-á que você já abriu um ficheiro POT de modelo e o gravou como um ficheiro PO. + + +Navegação no ficheiro PO +O &kbabel; permite-lhe navegar facilmente pelo ficheiro, de acordo com o estado da sua tradução. O estado de não-traduzido/aproximado já foi introduzido. Uma mensagem poderá ser marcada como errada em resultado de uma verificação ou pela validação feita pelo msgfmt. E, claro, o &kbabel; suporta a navegação no histórico das mensagens visitadas com o Avançar/Recuar, como no &konqueror;. +Todos os comandos de navegação estão no menu Ir. + + + + + +Page Up +Mover para a mensagem anterior + + +Page Down +Ir para a próxima mensagem + + +&Ctrl;Page Up +Vai para a mensagem aproximada anterior + + +&Ctrl;Page Down +Vai para a próxima mensagem aproximada + + +&Alt;Page Up +Vai para a mensagem não-traduzida anterior + + +&Alt;Page Down +Vai para a próxima mensagem não-traduzida + + +&Shift;Page Up +Vai para a mensagem de erro anterior + + +&Shift;Page Down +Vai para a mensagem de erro seguinte + + +&Ctrl;&Shift;Page Up +Vai para a mensagem aproximada ou não-traduzida anterior + + +&Ctrl;&Shift;Page Down +Vai para a mensagem aproximada ou não-traduzida seguinte + + + + + + + +Edição inteligente +A edição inteligente significa que o editor o irá ajudar a editar facilmente a tradução, enquanto tem em conta as potencialidades do formato PO. Irá escapar correctamente, à medida das necessidades. +Também suporta mais do que um modo para introduzir o fim-de-linha. Isto é bastante útil por causa da forma como o 'gettext' lida com os fim das linhas. Ele simplesmente ignora-as. (você poderá imaginar que todo o texto do msgstr é uma única linha). Se você quiser introduzir um fim-de-linha real, você terá de introduzir um \n. Mas a maioria dos tradutores não se lembra que uma nova linha no msgstr não adiciona nenhum espaço entre as linhas. Isto poderá ser resolvido facilmente se adicionar um espaço no fim de cada linha. Mas você poder-se-á esquecer facilmente disso, por isso a edição inteligente fará isso automaticamente por si. +A tabela em baixo resume as funcionalidades de edição inteligente. + + + + + +Tab +Introduz um \t + + +" +Introduz um \" + + +Enter +Se o último carácter antes do cursor não for um espaço, introduz um espaço. De seguida, inicia uma nova linha. + +&Ctrl;Enter +Inicia uma nova linha sem qualquer lógica adicional + + +&Shift;Enter +Introduz um \n e começa uma nova linha + + + + + +Se você quiser ver onde é que estão os espaços, você poderá activar o Realçar o fundo e/ou Marcar os espaços com pontos na janela de configuração, na página Editar Aparência. + + + + +Tradução automática +Como primeiro passo no início de uma nova tradução, o &kbabel; oferece uma função para preencher automaticamente as traduções das mensagens das traduções anteriores. Escolha a opção FerramentasTradução Lata para que o &kbabel; lhe apresente a seguinte janela: + + +Janela de tradução lata + + + + + + + +Na janela, você deverá indicar o que deverá ser traduzido e escolher as referências das traduções anteriores. +No cimo da área O que traduzir existem três opções (Itens não-traduzidos, Itens aproximados, Itens traduzidos) para indicar o tipo de mensagens que deseja traduzir. Os itens não-traduzidos e os aproximados são escolhas naturais para a tradução automática, mas você poderá também alterar as mensagens já traduzidas. +A correspondência exacta para os msgids será sempre usada na tradução lata. Contudo, você poderá adicionar mais estratégias, &ie; Permitir as traduções aproximadas (lento) e Permitir traduções de palavras únicas. Ambas as estratégias adicionais precisam de ser suportadas pelo código usado (ver em baixo). Não existe nenhuma especificação sobre o que é que a tradução aproximada significa, mas o intuito é bastante óbvio. A Tradução de palavras únicas adequa-se apenas em algumas das línguas. O &kbabel; irá tentar traduzir cada palavra do msgid em separado e tentará então colocar as palavras (ou frases) traduzidas, pela mesma ordem, no msgstr . +Como referência para a tradução lata, qualquer módulo de dicionário disponível poderá ser usado. Existe uma lista de módulos Não usar e Usar. Os módulos são usado pela ordem da lista Usar. É pedido ao primeiro módulo uma tradução. Se não for encontrada, o próximo módulo da lista é notificado, e assim por diante. Você poderá usar os botões com as setas para mover os módulos entre as listas. Não se esqueça de alterar a ordem de acordo com as suas necessidades com os botões Subir e Descer. +Normalmente o &kbabel; irá marcar todas as mensagens traduzidas de forma lata como sendo 'fuzzy' (aproximadas), porque assume que todas as traduções automáticas deverão ser revistas pelo tradutor. Parte de você, ter 100% de certeza que a tradução automática será correcta, ou rever todas as traduções à mesma. A opção Marcar os itens alterados como aproximados permite-lhe desactivar esta marcação automática, mas você irá precisar de confirmar isso. +Se você tiver configurado todas as opções de acordo com as suas necessidades, carregue em Iniciar para traduzir automaticamente as mensagens. Você poderá seguir a barra de progresso e, se for caso, existe sempre o botão para Parar. + + + +Validar a sua tradução +Toda a gente comete erros. Como tal, o &kbabel; suporta um conjunto de verificações para os problemas típicos das traduções. Estas validações (não incluem verificações sintácticas) poderão ser efectuadas, basicamente, de duas formas. +As verificações poderão ser feitas a cada alteração do texto traduzido. Estas são denominadas por verificações automáticas e poderão ser activadas na janela de configuração do &kbabel;. A verificação automática da sintaxe é permitida a cada gravação do ficheiro. +As verificações automáticas poderão tornar o &kbabel; mais lento. Se você tiver um computador lento, você poderá desligar as verificações automáticas e usar apenas a segunda hipótese. Você poderá invocar qualquer tipo de verificação em Ferramentas Validação. Aí, a verificação é feita para todas as mensagens do ficheiro e as mensagens inválidas serão marcadas como erros. + + + Verificar a Sintaxe + + Isto invoca o msgfmt para verificar a validade do ficheiro PO, como é permitido pelo pacote do 'gettext' da &GNU;. Isto irá mostrar o resultado do comando e marcar os msgstrs errados. + + + + Verificar os Argumentos + + As traduções incorrectas poderão fazer estoirar a aplicação. As partes mais perigosas das traduções são os argumentos, ⪚ para as funções do tipo 'printf'. Esta verificação compara o número e os tipos dos argumentos no msgid e no msgstr. Estes terão de ser iguais. + + + + Verificar os Aceleradores + + O texto da interface gráfica normalmente contém aceleradores, &ie; as letras que poderão ser usadas para aceder rapidamente aos elementos da interface com o teclado. Estes são assinalados com um carácter especial, ⪚ o & no &kde;. O requisito típico da tradução é que o texto traduzido também terá de conter o acelerados. Esta verificação irá confirmar isso para si. O carácter do acelerador poderá ser indicado em Preferências, na página Diversos. + + + + Procurar por Informação de Contexto Traduzida + + Você só irá provavelmente necessitar disto para a tradução do &kde;. Alguns dos textos são bastante comuns e eles precisam de ser traduzidos de forma diferente quando os contextos são diferentes. No &kde;, o contexto é descrito no início do msgid a seguir à sequência especial :_. Porém, se alguns tradutores não estiverem a par desta convenção e tentarão traduzir a informação de contexto também. Esta validação irá tentar encontrar essas mensagens. Se a verificação encontrar alguma informação de contexto traduzida, você deverá tentar removê-la. + + + + Verificar Formas Plurais + + Se o msgid for especificado como uma forma plural, a tradução terá de conter o número correcto de traduções, separadas por \n. O número correcto depende da língua da tradução e é indicado na página Identidade da janela de Preferências. Isto só está implementado para o &kde; de momento. + + + + Verificar as Equações + + As equações são um formato especial do msgid que é usado tipicamente nos ficheiros .desktop. Atendendo a que as suas traduções irão ser reunidas nestes ficheiros, o msgstr precisa também de usar este formato especial. Isto significa que a tradução deverá ter início (até à primeira ocorrência do = com o mesmo texto que a mensagem original, ⪚ Name=. + + + + + + +Verificar ortograficamente a tradução +Como sempre, é muito importante verificar ortograficamente a sua tradução antes de usar o seu resultado. Desta forma, você sempre poderá encontrar erros tipográficos ou outros problemas na sua tradução. O &kbabel; usa a biblioteca-padrão do &kde; para fazer a verificação ortográfica e as suas opções normais poderão ser encontradas na janela de configuração do &kbabel;. A verificação ortográfica em si poderá ser acedida em FerramentasVerificação Ortográfica . Você poderá usar um conjunto de modos na verificação ortográfica: + + + Verificação ortográfica... + + Esta é uma invocação genérica de uma janela, onde você poderá escolher o modo da verificação ortográfica e definir o modo por omissão, o qual será invocado com a combinação de teclas &Ctrl;I . + + + + Verificar Tudo... + + Verifica todas as mensagens deste ficheiro. + + + + Verificar A Partir da Posição do Cursor... + + Inicia a verificação ortográfica na posição da mensagem actual e vai avançando até ao fim do ficheiro. + + + + Verificar o Actual... + + Verifica ortograficamente apenas a mensagem actual. + + + + Verificar o Texto Seleccionado... + + Se existir algum texto seleccionado no editor da msgstr, esta opção ficará disponível e irá verificar ortograficamente apenas este texto. + + + + + + +Traduzir &XML;, <acronym +>HTML</acronym +>, ... +As linguagens de formatação são usadas cada vez mais no GUI. O projecto do &kde; também usa os ficheiros PO para traduzir os ficheiros de documentação de DocBook (que é também uma linguagem de formatação). O &kbabel; contém algumas funcionalidades para suportar esta tecnologia. + +Aqui, iremos descrever apenas as funções relacionadas com as marcas ('tags') usadas na formatação em si. O outro problema introduzido pelas linguagens de formatação é a tradução dos textos mais compridos. Este item é tratado pela funcionalidade de diff (diferenças), que é descrito na secção seguinte. + +A versão actual do &kbabel; é capaz de encontrar quais as marcas que são usadas no msgid e possibilita facilmente o acesso às mesmas, recorrendo às acções seguintes em Editar: + + + + + Inserir a Marca Seguinte + + + + Isto introduz a próxima marca encontrada no 'msgid' na tradução. O &kbabel; irá procurar a marca a ser introduzida, contando o número de marcas desde o início da tradução. + + + + + + Editar Inserir uma 'Tag' + + + + Este sub-menu contém todas as diferentes marcas de formatação encontradas no texto original em inglês. Se seleccionar uma marca, você poderá introduzi-la na posição actual do cursor no texto traduzido. + + + + + + + +Mostrar a diferença +Como foi explicado anteriormente, as aplicações actuais, tentando ser amigáveis, contêm um conjunto de textos descritivos grandes, incluindo a sua formatação. Se um programador alterar uma parte do texto, o sistema do 'gettext' da &GNU; irá, na melhor das hipóteses manter a tradução anterior e marcá-la como aproximada. (No pior dos casos, você irá perder a tradução por completo, dependendo do tamanho das alterações do texto). Isto funciona bem, se um msgid for curto, porque aí poderá encontrar as alterações rapidamente. Agora se o texto for grande o suficiente, você debater-se-á à procura do que foi alterado (por exemplo, poderá ser a mudança apenas de um artigo pela equipa de correcção ortográfica). +Para o ajudar, o &kbabel; poderá pedir para ver o msgid original e mostrar a diferença. As alterações são mostradas graficamente no editor do Texto Original. A forma exacta poderá ser definida na janela de configuração do &kbabel;. O Ferramentas 'Diff' Mostrar as Diferenças irá mostrar as diferenças que foram encontradas. Para ver o texto actual, sem estar misturado com o texto original, use a opção Ferramentas 'Diff' Mostrar o Texto Original . +Você poderá activar ou desactivar a pesquisa automática das diferenças se escolher a opção Ferramentas 'Diff' Modo do 'Diff' . Quando o modo do 'diff' está activo, a procura das diferenças começa quando você for para outra mensagem. +Como sempre, você poderá usar as origens diferentes para procurar a versão anterior do texto, estando todas elas definidas na janela de configuração do &kbabel;: + + + Base de Dados de Traduções + + Você poderá usar a Base de Dados de Traduções para procurar as diferenças. Recomendamos fortemente que active o armazenamento automático das mensagens traduzidas na Base de Dados de Traduções na janela de configuração da Base de Dados de Traduções . Este modo poderá ser activado pela opção Usar as mensagens da Base de Dados de Traduções . + + + + Árvore dos ficheiros antigos + + Isto só será usado se a procura na Base de Dados de Traduções estiver desactivada. Ao definir a Pasta de base dos ficheiros 'diff' você poderá escolher no &kbabel;, qual o ficheiro a usar nas diferenças. Ele usa a localização relativa do ficheiro aberto e usa essa localização relativa na pasta aqui indicada. Se existir um ficheiro correspondente, este será usado. Para poder utilizar este modo, você deverá fazer uma cópia dos ficheiros antigos antes de cada actualização. + + + + Ficheiro escolhido manualmente + + Se a possibilidade anterior não resultar, você poderá sempre definir manualmente o ficheiro com as diferenças ao escolher a opção Ferramentas'Diff' Abrir Ficheiro para 'Diff'. + + + + +A pesquisa das diferenças nem sempre é correcta, porque o ficheiro PO não contém nenhuma referência à mensagem original. + + + + + + +Formas plurais +Dado que as formas plurais são um assunto bastante complicado, é dedicada uma secção especial ao suporte das mesmas no &kbabel;. + +Esta secção lida com as formas plurais do &kde; (para ser mais preciso, para o &kde; versão 3). Desde o &kbabel; versão 1.11 (KDE 3.5) em diante, o &kbabel; também é capaz de ler, editar e gravar as formas plurais do 'gettext' da &GNU;. + +Cada língua em que o &kde; está traduzido precisa de ter um número correcto de formas plurais. Isto é feito ao traduzir um item no tdelibs.po. O número é definido ao seleccionar o nome de uma língua, o qual usa o mesmo número e regras para procurar a forma plural correcta. A lista actualizada dos valores possíveis poderá ser encontrada no código-fonte do 'tdelibs', no ficheiro tdecore/klocale.cpp. + +O 'gettext' da &GNU; permite definir o número e tipo de formas plurais, através de uma fórmula, e definir esta fórmula de forma independente para cada ficheiro PO. O &kde; só pode definir o número e tipo de formas plurais uma vez no 'tdelibs'. + +As formas plurais do &kde; são demarcadas com o comentário _n:, o qual contém o argumento %n. Este argumento é então usado na mensagem em si e controla qual a forma plural da sua língua que deverá ser usada, dependendo das regras da sua língua. +A tradução de uma mensagem de uma forma plural terá de ter um formato especial. Deverá conter o número correcto de traduções (uma por cada forma plural), separadas por um fim-de-linha \n, sem a sequência _n: (e o espaço). Por exemplo, o _n: Selected1 file\nSelected %n files, traduzido para Português, ficaria: +%n ficheiro seleccionado\n +%n ficheiros seleccionados + +Para verificar se a sua tradução contém o número correcto de formas plurais, use a opção Ferramentas Validação Verificar as Formas Plurais (só no KDE) . + +
+ + diff --git a/tde-i18n-pt/docs/tdesdk/kbugbuster/Makefile.am b/tde-i18n-pt/docs/tdesdk/kbugbuster/Makefile.am new file mode 100644 index 00000000000..6869837a64a --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kbugbuster/Makefile.am @@ -0,0 +1,4 @@ +KDE_LANG = pt +SUBDIRS = $(AUTODIRS) +KDE_DOCS = AUTO +KDE_MANS = AUTO diff --git a/tde-i18n-pt/docs/tdesdk/kbugbuster/Makefile.in b/tde-i18n-pt/docs/tdesdk/kbugbuster/Makefile.in new file mode 100644 index 00000000000..d2bd8659e9e --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kbugbuster/Makefile.in @@ -0,0 +1,635 @@ +# Makefile.in generated by automake 1.10.1 from Makefile.am. +# KDE tags expanded automatically by am_edit - $Revision: 483858 $ +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +subdir = docs/tdesdk/kbugbuster +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.in +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +SOURCES = +DIST_SOURCES = +#>- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ +#>- html-recursive info-recursive install-data-recursive \ +#>- install-dvi-recursive install-exec-recursive \ +#>- install-html-recursive install-info-recursive \ +#>- install-pdf-recursive install-ps-recursive install-recursive \ +#>- installcheck-recursive installdirs-recursive pdf-recursive \ +#>- ps-recursive uninstall-recursive +#>+ 7 +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive nmcheck-recursive bcheck-recursive +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) +#>- DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +#>+ 1 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +ARTSCCONFIG = @ARTSCCONFIG@ +AUTOCONF = @AUTOCONF@ +AUTODIRS = @AUTODIRS@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CONF_FILES = @CONF_FILES@ +CYGPATH_W = @CYGPATH_W@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOPIDLNG = @DCOPIDLNG@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DEFS = @DEFS@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +GMSGFMT = @GMSGFMT@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +KCFG_DEPENDENCIES = @KCFG_DEPENDENCIES@ +KCONFIG_COMPILER = @KCONFIG_COMPILER@ +KDECONFIG = @KDECONFIG@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_RPATH = @KDE_RPATH@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MAKEKDEWIDGETS = @MAKEKDEWIDGETS@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XMLLINT = @XMLLINT@ +X_RPATH = @X_RPATH@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +am__leading_dot = @am__leading_dot@ +am__tar = @am__tar@ +am__untar = @am__untar@ +#>- bindir = @bindir@ +#>+ 2 +DEPDIR = .deps +bindir = @bindir@ +build_alias = @build_alias@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host_alias = @host_alias@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_kcfgdir = @kde_kcfgdir@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_styledir = @kde_styledir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +kde_widgetdir = @kde_widgetdir@ +tdeinitdir = @tdeinitdir@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +xdg_appsdir = @xdg_appsdir@ +xdg_directorydir = @xdg_directorydir@ +xdg_menudir = @xdg_menudir@ +KDE_LANG = pt +#>- SUBDIRS = $(AUTODIRS) +#>+ 1 +SUBDIRS =. +KDE_DOCS = AUTO +KDE_MANS = AUTO +#>- all: all-recursive +#>+ 1 +all: docs-am all-recursive + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +#>- @for dep in $?; do \ +#>- case '$(am__configure_deps)' in \ +#>- *$$dep*) \ +#>- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ +#>- && exit 0; \ +#>- exit 1;; \ +#>- esac; \ +#>- done; \ +#>- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/kbugbuster/Makefile'; \ +#>- cd $(top_srcdir) && \ +#>- $(AUTOMAKE) --gnu docs/tdesdk/kbugbuster/Makefile +#>+ 12 + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/kbugbuster/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/kbugbuster/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/kbugbuster/Makefile.in +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +$(RECURSIVE_CLEAN_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +#>- distdir: $(DISTFILES) +#>+ 1 +distdir: distdir-nls $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done + list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + distdir=`$(am__cd) $(distdir) && pwd`; \ + top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$top_distdir" \ + distdir="$$distdir/$$subdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +#>- uninstall: uninstall-recursive +#>+ 1 +uninstall: uninstall-docs uninstall-nls uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +#>- clean-am: clean-generic mostlyclean-am +#>+ 1 +clean-am: clean-docs clean-bcheck clean-generic mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +info: info-recursive + +info-am: + +#>- install-data-am: +#>+ 1 +install-data-am: install-docs install-nls + +install-dvi: install-dvi-recursive + +install-exec-am: + +install-html: install-html-recursive + +install-info: install-info-recursive + +install-man: + +install-pdf: install-pdf-recursive + +install-ps: install-ps-recursive + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ + install-strip + +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic ctags \ + ctags-recursive distclean distclean-generic distclean-tags \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ + tags-recursive uninstall uninstall-am + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: + +#>+ 2 +KDE_DIST=index.docbook index.cache.bz2 Makefile.in Makefile.am + +#>+ 24 +index.cache.bz2: $(srcdir)/index.docbook $(KDE_XSL_STYLESHEET) index.docbook + @if test -n "$(MEINPROC)"; then echo $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; fi + +docs-am: index.cache.bz2 + +install-docs: docs-am install-nls + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbugbuster + @if test -f index.cache.bz2; then \ + echo $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbugbuster/; \ + $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbugbuster/; \ + elif test -f $(srcdir)/index.cache.bz2; then \ + echo $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbugbuster/; \ + $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbugbuster/; \ + fi + -rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbugbuster/common + $(LN_S) $(kde_libs_htmldir)/$(KDE_LANG)/common $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbugbuster/common + +uninstall-docs: + -rm -rf $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbugbuster + +clean-docs: + -rm -f index.cache.bz2 + + +#>+ 13 +install-nls: + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbugbuster + @for base in index.docbook ; do \ + echo $(INSTALL_DATA) $$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbugbuster/$$base ;\ + $(INSTALL_DATA) $(srcdir)/$$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbugbuster/$$base ;\ + done + +uninstall-nls: + for base in index.docbook ; do \ + rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kbugbuster/$$base ;\ + done + + +#>+ 5 +distdir-nls: + for file in index.docbook ; do \ + cp $(srcdir)/$$file $(distdir); \ + done + +#>+ 15 +force-reedit: + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/kbugbuster/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/kbugbuster/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/kbugbuster/Makefile.in + + +#>+ 21 +clean-bcheck: + rm -f *.bchecktest.cc *.bchecktest.cc.class a.out + +bcheck: bcheck-recursive + +bcheck-am: + @for i in ; do \ + if test $(srcdir)/$$i -nt $$i.bchecktest.cc; then \ + echo "int main() {return 0;}" > $$i.bchecktest.cc ; \ + echo "#include \"$$i\"" >> $$i.bchecktest.cc ; \ + echo "$$i"; \ + if ! $(CXX) $(DEFS) -I. -I$(srcdir) -I$(top_builddir) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) --dump-class-hierarchy -c $$i.bchecktest.cc; then \ + rm -f $$i.bchecktest.cc; exit 1; \ + fi ; \ + echo "" >> $$i.bchecktest.cc.class; \ + perl $(top_srcdir)/admin/bcheck.pl $$i.bchecktest.cc.class || { rm -f $$i.bchecktest.cc; exit 1; }; \ + rm -f a.out; \ + fi ; \ + done + + +#>+ 3 +final: + $(MAKE) all-am + +#>+ 3 +final-install: + $(MAKE) install-am + +#>+ 3 +no-final: + $(MAKE) all-am + +#>+ 3 +no-final-install: + $(MAKE) install-am + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo + +#>+ 3 +nmcheck: +nmcheck-am: nmcheck diff --git a/tde-i18n-pt/docs/tdesdk/kbugbuster/index.cache.bz2 b/tde-i18n-pt/docs/tdesdk/kbugbuster/index.cache.bz2 new file mode 100644 index 00000000000..04961918a20 Binary files /dev/null and b/tde-i18n-pt/docs/tdesdk/kbugbuster/index.cache.bz2 differ diff --git a/tde-i18n-pt/docs/tdesdk/kbugbuster/index.docbook b/tde-i18n-pt/docs/tdesdk/kbugbuster/index.docbook new file mode 100644 index 00000000000..53d3f20c3fa --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kbugbuster/index.docbook @@ -0,0 +1,108 @@ + + + + + +]> + + + + +O Manual do &kbugbuster; + + +
+
+
+PedroMorais
morais@kde.org
Tradução
+
+ +&FDLNotice; + + + +2002-03-31 +0.00.00 + + + + +O &kbugbuster; faz parte do pacote tdesdk. + + + + +KDE +kbugbuster + + +
+ + Introdução A documentação do &kappname; não estava terminada quando o &kde; foi instalado neste computador. Se necessitar de ajuda, procure na Página Web do &kde; actualizações a este documento ou para envie as suas dúvidas para a Lista de Utilizadores do &kde;. A Equipa do &kde; &underFDL; + +&documentation.index; +
+ + diff --git a/tde-i18n-pt/docs/tdesdk/kcachegrind/Makefile.am b/tde-i18n-pt/docs/tdesdk/kcachegrind/Makefile.am new file mode 100644 index 00000000000..6869837a64a --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kcachegrind/Makefile.am @@ -0,0 +1,4 @@ +KDE_LANG = pt +SUBDIRS = $(AUTODIRS) +KDE_DOCS = AUTO +KDE_MANS = AUTO diff --git a/tde-i18n-pt/docs/tdesdk/kcachegrind/Makefile.in b/tde-i18n-pt/docs/tdesdk/kcachegrind/Makefile.in new file mode 100644 index 00000000000..72bc778c086 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kcachegrind/Makefile.in @@ -0,0 +1,635 @@ +# Makefile.in generated by automake 1.10.1 from Makefile.am. +# KDE tags expanded automatically by am_edit - $Revision: 483858 $ +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +subdir = docs/tdesdk/kcachegrind +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.in +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +SOURCES = +DIST_SOURCES = +#>- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ +#>- html-recursive info-recursive install-data-recursive \ +#>- install-dvi-recursive install-exec-recursive \ +#>- install-html-recursive install-info-recursive \ +#>- install-pdf-recursive install-ps-recursive install-recursive \ +#>- installcheck-recursive installdirs-recursive pdf-recursive \ +#>- ps-recursive uninstall-recursive +#>+ 7 +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive nmcheck-recursive bcheck-recursive +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) +#>- DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +#>+ 1 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +ARTSCCONFIG = @ARTSCCONFIG@ +AUTOCONF = @AUTOCONF@ +AUTODIRS = @AUTODIRS@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CONF_FILES = @CONF_FILES@ +CYGPATH_W = @CYGPATH_W@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOPIDLNG = @DCOPIDLNG@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DEFS = @DEFS@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +GMSGFMT = @GMSGFMT@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +KCFG_DEPENDENCIES = @KCFG_DEPENDENCIES@ +KCONFIG_COMPILER = @KCONFIG_COMPILER@ +KDECONFIG = @KDECONFIG@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_RPATH = @KDE_RPATH@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MAKEKDEWIDGETS = @MAKEKDEWIDGETS@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XMLLINT = @XMLLINT@ +X_RPATH = @X_RPATH@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +am__leading_dot = @am__leading_dot@ +am__tar = @am__tar@ +am__untar = @am__untar@ +#>- bindir = @bindir@ +#>+ 2 +DEPDIR = .deps +bindir = @bindir@ +build_alias = @build_alias@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host_alias = @host_alias@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_kcfgdir = @kde_kcfgdir@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_styledir = @kde_styledir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +kde_widgetdir = @kde_widgetdir@ +tdeinitdir = @tdeinitdir@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +xdg_appsdir = @xdg_appsdir@ +xdg_directorydir = @xdg_directorydir@ +xdg_menudir = @xdg_menudir@ +KDE_LANG = pt +#>- SUBDIRS = $(AUTODIRS) +#>+ 1 +SUBDIRS =. +KDE_DOCS = AUTO +KDE_MANS = AUTO +#>- all: all-recursive +#>+ 1 +all: docs-am all-recursive + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +#>- @for dep in $?; do \ +#>- case '$(am__configure_deps)' in \ +#>- *$$dep*) \ +#>- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ +#>- && exit 0; \ +#>- exit 1;; \ +#>- esac; \ +#>- done; \ +#>- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/kcachegrind/Makefile'; \ +#>- cd $(top_srcdir) && \ +#>- $(AUTOMAKE) --gnu docs/tdesdk/kcachegrind/Makefile +#>+ 12 + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/kcachegrind/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/kcachegrind/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/kcachegrind/Makefile.in +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +$(RECURSIVE_CLEAN_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +#>- distdir: $(DISTFILES) +#>+ 1 +distdir: distdir-nls $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done + list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + distdir=`$(am__cd) $(distdir) && pwd`; \ + top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$top_distdir" \ + distdir="$$distdir/$$subdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +#>- uninstall: uninstall-recursive +#>+ 1 +uninstall: uninstall-docs uninstall-nls uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +#>- clean-am: clean-generic mostlyclean-am +#>+ 1 +clean-am: clean-docs clean-bcheck clean-generic mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +info: info-recursive + +info-am: + +#>- install-data-am: +#>+ 1 +install-data-am: install-docs install-nls + +install-dvi: install-dvi-recursive + +install-exec-am: + +install-html: install-html-recursive + +install-info: install-info-recursive + +install-man: + +install-pdf: install-pdf-recursive + +install-ps: install-ps-recursive + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ + install-strip + +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic ctags \ + ctags-recursive distclean distclean-generic distclean-tags \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ + tags-recursive uninstall uninstall-am + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: + +#>+ 2 +KDE_DIST=index.docbook index.cache.bz2 Makefile.in Makefile.am + +#>+ 24 +index.cache.bz2: $(srcdir)/index.docbook $(KDE_XSL_STYLESHEET) index.docbook + @if test -n "$(MEINPROC)"; then echo $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; fi + +docs-am: index.cache.bz2 + +install-docs: docs-am install-nls + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kcachegrind + @if test -f index.cache.bz2; then \ + echo $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kcachegrind/; \ + $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kcachegrind/; \ + elif test -f $(srcdir)/index.cache.bz2; then \ + echo $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kcachegrind/; \ + $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kcachegrind/; \ + fi + -rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kcachegrind/common + $(LN_S) $(kde_libs_htmldir)/$(KDE_LANG)/common $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kcachegrind/common + +uninstall-docs: + -rm -rf $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kcachegrind + +clean-docs: + -rm -f index.cache.bz2 + + +#>+ 13 +install-nls: + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kcachegrind + @for base in index.docbook ; do \ + echo $(INSTALL_DATA) $$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kcachegrind/$$base ;\ + $(INSTALL_DATA) $(srcdir)/$$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kcachegrind/$$base ;\ + done + +uninstall-nls: + for base in index.docbook ; do \ + rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kcachegrind/$$base ;\ + done + + +#>+ 5 +distdir-nls: + for file in index.docbook ; do \ + cp $(srcdir)/$$file $(distdir); \ + done + +#>+ 15 +force-reedit: + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/kcachegrind/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/kcachegrind/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/kcachegrind/Makefile.in + + +#>+ 21 +clean-bcheck: + rm -f *.bchecktest.cc *.bchecktest.cc.class a.out + +bcheck: bcheck-recursive + +bcheck-am: + @for i in ; do \ + if test $(srcdir)/$$i -nt $$i.bchecktest.cc; then \ + echo "int main() {return 0;}" > $$i.bchecktest.cc ; \ + echo "#include \"$$i\"" >> $$i.bchecktest.cc ; \ + echo "$$i"; \ + if ! $(CXX) $(DEFS) -I. -I$(srcdir) -I$(top_builddir) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) --dump-class-hierarchy -c $$i.bchecktest.cc; then \ + rm -f $$i.bchecktest.cc; exit 1; \ + fi ; \ + echo "" >> $$i.bchecktest.cc.class; \ + perl $(top_srcdir)/admin/bcheck.pl $$i.bchecktest.cc.class || { rm -f $$i.bchecktest.cc; exit 1; }; \ + rm -f a.out; \ + fi ; \ + done + + +#>+ 3 +final: + $(MAKE) all-am + +#>+ 3 +final-install: + $(MAKE) install-am + +#>+ 3 +no-final: + $(MAKE) all-am + +#>+ 3 +no-final-install: + $(MAKE) install-am + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo + +#>+ 3 +nmcheck: +nmcheck-am: nmcheck diff --git a/tde-i18n-pt/docs/tdesdk/kcachegrind/index.cache.bz2 b/tde-i18n-pt/docs/tdesdk/kcachegrind/index.cache.bz2 new file mode 100644 index 00000000000..f1582b02160 Binary files /dev/null and b/tde-i18n-pt/docs/tdesdk/kcachegrind/index.cache.bz2 differ diff --git a/tde-i18n-pt/docs/tdesdk/kcachegrind/index.docbook b/tde-i18n-pt/docs/tdesdk/kcachegrind/index.docbook new file mode 100644 index 00000000000..d406dd618bb --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kcachegrind/index.docbook @@ -0,0 +1,1036 @@ + +KCachegrind'> + Cachegrind"> + Calltree"> + Callgrind"> + Valgrind"> + OProfile"> + + + + +]> + + + + + + +O Manual do &kcachegrind; + + +Josef Weidendorfer
Josef.Weidendorfer@gmx.de
+
+
+ +JoséPires
jncp@netcabo.pt
Tradução
+ +
+ + +2002-2004 +Josef Weidendorfer + +&FDLNotice; + +2004-07-27 +0.4.6 + + +O &kcachegrind; é uma ferramenta de visualização de dados de análise ('profiling') criado para o ambiente de trabalho do &kde;. + + + +KDE +tdesdk +Cachegrind +Callgrind +Valgrind +Análise + + +
+ + + +Introdução + +O &kappname; é um navegador para os dados produzidos pelas ferramentas de análise ('profiling'). Este capítulo explica para que é que serve a análise, como é que é feita e dá alguns exemplos das ferramentas de análise disponíveis. + + +Análise + +Quando você desenvolve um programa, normalmente uma das últimas tarefas envolve as optimizações de performance. Dado que não faz sentido optimizar funções que são raramente utilizadas, convém você saber em que parte do seu programa a maioria do tempo é dispendido. + +Para o código sequencial, a recolha de dados estatísticos das características de execução dos programas, como os valores dos tempos dispendidos nas funções e linhas de código é normalmente o suficiente. Isto é chamado normalmente de Análise ou 'Profiling'. O programa é executado sob o controlo de uma ferramenta de análise que fornece o resumo de uma execução no fim. Em contraste, para o código paralelo, os problemas de performance são normalmente causados quando um processador fica à espera dos dados do outro. Dado que este tempo de espera normalmente é atribuído de forma simples, aqui será melhor gerar traceamentos dos eventos com tempos marcados. O KCachegrind não consegue visualizar este tipo de dados. + +Depois de analisar os dados produzidos, deverá ser fácil ver os pontos fortes e os críticos em termos de performance do código: por exemplo, podem ser tiradas conclusões sobre a quantidade de chamadas e as regiões de código que poderão ser optimizadas. No fim, o sucesso da optimização deverá ser verificado com uma nova análise. + + + +Métodos de Análise + +Uma medida exacta do tempo que passou ou dos eventos que ocorrem durante a execução de uma determinada região de código (⪚ uma função) necessita da introdução de algum código de medida adicional, antes e depois da região indicada. Este código lê o tempo ou uma contagem de eventos global, calculando as diferenças. Assim, o código original terá de ser alterado antes da execução. Isto é chamado de instrumentação. Esta poderá ser criada pelo próprio programador, pelo compilador ou pelo sistema de execução. Dado que as regiões interessantes estão normalmente encadeadas, a sobrecarga da instrumentação influencia sempre a medida em si. Como tal, a instrumentação deverá ser feita de forma selectiva e os resultados terão de ser interpretados com cuidado. Obviamente, isto torna a análise de performance por medida exacta um processo bastante complexo. + +É possível uma medida exacta devido aos contadores por 'hardware' (que incluem os contadores que incrementam a cada impulso de relógio) que vêm nos processadores modernos, os quais são incrementados sempre que ocorre um evento. Dado que se pretende atribuir os eventos a regiões de código, sem os contadores, teria de se lidar com todos os eventos, incrementando um contador para a região de código em si. Fazer isso por 'software', obviamente, não é possível. Mas, assumindo que a distribuição de eventos pelo código-fonte é semelhante a procurar apenas por cada n-ésimo evento em vez de todos os eventos, foi criado um método de medida que é ajustado de acordo com a sobrecarga. É chamado de Amostragem. A Amostragem ao Longo do Tempo (TBS) usa um temporizador para ver regularmente o contador do programa para criar um histograma sobre o código do mesmo. A Amostragem Baseada em Eventos (EBS) tira partido dos contadores por 'hardware' dos processadores modernos e usa um modo em que é chamada uma rotina de tratamento de interrupções no caso de se atingir o valor mínimo de um contador, gerando um histograma, da distribuição do evento correspondente. Na rotina de tratamento, o contador do evento é sempre reinicializado para o 'n' do método de amostragem. A vantagem da amostragem é que o código não tem de ser alterado, mas é à mesma um compromisso: a hipótese anterior será mais correcta se o 'n' for baixo, mas quanto mais baixo for o 'n', maior será a sobrecarga da rotina de tratamento da interrupção. + +Outro método de medida é a simulação das coisas que ocorrem no sistema do computador enquanto executa um dado código, &ie; uma simulação orientada pela execução. Obviamente, a simulação deriva sempre de um modelo de 'hardware' mais ou menos preciso. Para os modelos muito detalhados que se aproximam da realidade, o tempo de simulação poderá alto, de forma inaceitável para ser posto em prática. A vantagem é que o código de simulação/medida arbitrariamente complexo poderá ser introduzido num dado código sem perturbar os resultados. Se fizer isto directamente antes da execução (chamado de instrumentação durante a execução), usando o binário original, é bastante confortável para o utilizador. O método torna-se inútil quando se simula apenas partes de uma máquina com um modelo simples. Para além disso, os resultados produzidos pelos modelos simples são normalmente muito mais fáceis de compreender: o problema frequente com o 'hardware' real é que os resultados incluem efeitos sobrepostos de diferentes partes do sistema. + + + +Ferramentas de Análise + +A ferramenta de análise mais conhecida é o gprof do GCC: Você precisa de compilar o seu programa com a opção ; se correr o programa, irá gerar um ficheiro gmon.out, o qual poderá ser transformado num formato legível com o gprof. A desvantagem é o passo de compilação necessário para um dado executável, o qual terá de ser compilado estaticamente. O método aqui usado é a instrumentação gerada pelo compilador, que consiste na medida dos arcos de chamadas entre funções, bem como contadores para as chamadas respectivas, em conjunto com o TBS, o qual lhe dá um histograma com a distribuição do tempo pelo código. Usando ambos os dados, é possível calcular de forma heurística o tempo inclusivo das funções, &ie; o tempo dispendido numa função, em conjunto com todas as funções chamadas a partir dela. + +Para uma medida exacta dos eventos que ocorrem, existem algumas bibliotecas com funções capazes de ler os contadores de performance do 'hardware'. As mais conhecidas são a actualização PerfCtr para o Linux, e as bibliotecas independentes da arquitectura PAPI e PCL. De qualquer forma, uma medida exacta necessita de instrumentação no código, como é dito acima. Qualquer uma delas usa as próprias bibliotecas ou usa os sistemas de instrumentação automáticos como o ADAPTOR (para a instrumentação do código em FORTRAN) ou o DynaProf (injecção de código com o DynInst). + +O &oprofile; é uma ferramenta de análise ao nível do sistema para Linux que usa a amostragem. + +Em vários aspectos, uma forma confortável de fazer uma Análise é com o Cachegrind ou o Callgrind, os quais são simuladores que usam a plataforma de instrumentação &valgrind; durante a execução. Dado que não existe necessidade de aceder aos contadores do 'hardware' (o que é normalmente difícil com as instalações de Linux de hoje em dia) e os binários a serem analisados podem ser deixados sem modificações, é uma boa forma alternativa para as outras ferramentas de análise. A desvantagem da lentidão da simulação poderá ser reduzida se fizer a simulação apenas nas partes interessantes do programa e, talvez, só apenas em algumas iterações de um ciclo. Sem a instrumentação de medida/simulação, a utilização do Valgrind só terá um atraso numa gama de 3-5. Para além disso, quando apenas o grafo de chamadas e as contagens de chamadas forem de interesse, o simulador da 'cache' poderá ser desligado. + +A simulação da 'cache' é o primeiro passo na aproximação dos tempos reais; como nos sistemas modernos, a execução é bastante sensível à exploração das 'caches' que são pequenos e rápidos tampões de dados que aceleram os acessos repetidos às mesmas células da memória principal. O &cachegrind; faz a simulação da 'cache', interceptando os acessos a memória. Os dados produzidos incluem o número de acessos à memória para dados e instruções, as falhas da 'cache' de 1º/2º nível e relaciona esses dados com as linhas de código e as funções do programa. Combinando estes valores e usando as latências de falhas típicas, é possível indicar uma estimativa do tempo dispendido. + +O Callgrind é uma extensão do &cachegrind; que constrói o grafo de chamadas de um programa na altura, &ie; como as funções se chamam umas às outras e quantos eventos acontecem enquanto uma função é executada. Para além disso, os dados da análise a serem recolhidos podem ser separados por tarefas ('threads') e por contextos de chamadas. Pode fornecer dados de análise ao nível da instrução para permitir a anotação do código descodificado. + + + +Visualização + +As ferramentas de análise produzem tipicamente uma grande quantidade de dados. A vontade de navegar facilmente para baixo e para cima no grafo de chamadas, em conjunto com uma alteração rápida do modo de ordenação das funções e a apresentação dos diferentes tipos de eventos, serve de motivo para criar uma aplicação gráfica que desempenhe esta tarefa. + +O &kappname; é uma visualização para os dados de análise que preenche estes requisitos. Apesar de ser programada em primeiro lugar a partir da navegação dos dados do &cachegrind; com a &calltree; em mente, existem conversores disponíveis para apresentar os dados de análise produzidos pelas outras ferramentas. No apêndice, é dada uma descrição do formato do ficheiro do Cachegrind/Callgrind. + +Para além de uma lista de funções ordenadas de acordo com as métricas de custo exclusivas ou inclusivas e, opcionalmente, agrupadas por ficheiros de código, bibliotecas partilhadas ou classes de C++, o &kappname; contém diversas vistas para uma dada função, nomeadamente +um grafo de chamadas que mostra uma secção do grafo de chamadas em torno da função seleccionada, + +uma árvore que permite visualizar a relação de chamadas encadeadas, em conjunto com as métricas de custo inclusivas para uma detecção visual rápida das funções problemáticas, + +janelas do código-fonte e de anotação do código convertido para Assembly, permitindo ver os detalhes do custo relacionados com as linhas de código e as instruções de baixo-nível. + + + + + + + + +Usar o &kcachegrind; + + +Gerar Dados a Visualizar + +Primeiro, uma pessoa deseja gerar os dados de performance, medindo aspectos das características de execução de uma aplicação, usando uma ferramenta de análise. O &kcachegrind; em si não inclui nenhuma ferramenta de análise, mas é bom a ser usado em conjunto com o &callgrind; e, usando um conversor, também poderá ser usado para visualizar os dados produzidos com o &oprofile;. Apesar de o âmbito deste manual não ser a documentação da análise com estas ferramentas, a secção seguinte fornece vários tutoriais introdutórios para o ajudar a começar. + + +&callgrind; + +O &callgrind; está disponível em http://kcachegrind.sf.net. Convém referir que se chamava anteriormente &calltree;, mas esse nome era enganador. + +O uso mais comum é anteceder a linha de comandos para iniciar a sua aplicação com o callgrind, como por exemplo
callgrind programa argumentos
Quando o programa terminar, será gerado um ficheiro callgrind.out.pid e que poderá ser carregado no &kcachegrind;.
+ +Uma utilização mais avançada será descarregar os dados de análise, sempre que uma dada função da sua aplicação é chamada. Por exemplo, com o konqueror, para ver os dados de análise de modo a gerar apenas uma página Web, você poderia optar por gerar os dados sempre que carregasse no item Ver/Recarregar. Isto corresponde a uma chamada ao KonqMainWindow::slotReload. Use o
callgrind --dump-before=KonqMainWindow::slotReload konqueror
Isto irá produzir vários ficheiros de dados de análise com um número sequencial no fim do nome do ficheiro. Um ficheiro sem esse número no fim (terminando apenas no PID do processo) será também produzido. Se carregar este ficheiro no &kcachegrind;, todos os outros serão também carregados e poderão ser vistos na Introdução das Partes e na lista das Partes.
+ +
+ + +&oprofile; + +O &oprofile; está disponível em http://oprofile.sf.net. Siga as instruções de instalação na página Web. Mas, antes disso, verifique se a sua distribuição não o oferece já como um pacote (como a SuSE). + +A análise ao nível do sistema só é permitida para o utilizador 'root', dado que todas as acções do sistema poderão ser observadas. Como tal, terão de ser feitas as seguintes acções como 'root'. Primeiro, configure o processo de análise, usando a GUI oprof_start ou a ferramenta da linha de comandos or the command line tool opcontrol. A configuração normal seria o modo de temporização (TBS, ver a introdução). Para iniciar a medida, execute o opcontrol -s. Depois execute a aplicação em que está interessado e, a seguir, invoque um opcontrol -d. Isto irá apresentar os resultados das medidas nos ficheiros sob a pasta /var/lib/oprofile/samples/. Para ser capaz de visualizar os dados no &kcachegrind;, execute numa pasta vazia:
opreport -gdf | op2callgrind
Isto irá produzir uma quantidade de ficheiros, um por cada programa que estava a correr no sistema. Cada um deles poderá ser corrido no &kcachegrind; por si só.
+ +
+
+ + +Conceitos Básicos da Interface de Utilizador + +Ao iniciar o &kcachegrind; com um ficheiro de dados de análise como argumento, ou depois de carregar um com a opção Ficheiro/Abrir, você irá ver uma barra lateral que contém a lista de funções à esquerda e a parte principal à direita, que consiste numa área com visualizações dos dados de uma função seleccionada. Esta área de visualização pode ser configurada de forma arbitrária para mostrar várias visualizações de uma vez. + +Da primeira vez, esta área ficará dividida numa parte inferior e noutra superior, cada uma com visualizações diferentes seleccionadas através de páginas. Para mover as áreas de visualização, use o menu de contexto das páginas e ajuste os separadores entre elas. Para mudar rapidamente de disposições de visualização, use a opção Ver/Disposições/Duplicar, altere a disposição e mude para a próxima com a opção Ver/Disposição/Próxima (ou com atalhos de teclado mais convenientes). + +Uma coisa importante para a visualização é o tipo de evento activo: para o &callgrind;, este é ⪚ os 'Cache Misses' (Falhas na Cache) ou o Cycle Estimation (Estimativa da 'Cache') para o &oprofile;, este é o "Temporizador" no caso mais simples. Você poderá alterar o tipo de evento com uma lista na barra de ferramentas ou na janela do Tipo de Evento. Uma primeira vista de olhos nas características de execução deverá ser apresentada quando você seleccionar a função main na lista da esquerda, e veja a visualização do grafo de chamadas. Aí, poderá ver as chamadas em curso no seu programa. Lembre-se que o grafo de chamadas só mostra as funções com uma grande quantidade de eventos. Se fizer duplo-click numa função do grafo, ela irá mudar para mostrar as funções chamadas pela seleccionada. + +Para explorar mais a interface, para além deste manual, dê uma vista de olhos na secção de documentação na página Web http://kcachegrind.sf.net. Para além disso, cada elemento gráfico do &kcachegrind; tem ajudas O Que é Isto?. + + +
+ + + +Conceitos Básicos + +Este capítulo explica alguns conceitos do &kcachegrind; e introduz os termos usados na interface. + + +O Modelo dos Dados de Análise + + +Entidades de Custo + +Os valores de custos dos tipos de eventos (como as Falhas de L2) são atribuídos às entidades de custo, as quais são itens relacionados com o código-fonte ou com as estruturas de dados de um dado programa. As entidades de custo podem ser não só posições no código ou nos dados, mas também tuplos de posição. Por exemplo, uma chamada tem uma origem e um destino, ou um endereço de dados poderá ter um tipo de dados e uma posição no código em que a sua alocação ocorreu. + +As entidades de custo conhecidas pelo KCachegrind estão indicadas a seguir. Posições Simples: Instrução. Uma instrução de Assembly num endereço indicado. Linha de Código de uma Função. Todas as instruções que o compilador (através da informação de depuração) mapeia numa dada linha de código, identificada pelo nome do ficheiro de código e pelo número de linha, e que são executadas sob o contexto de uma dada função. A última é necessária, porque uma linha de código de uma função incorporada ('inline') poderá aparecer no contexto de várias funções. As instruções sem qualquer mapeamento numa linha de código são representadas pela linha 0 do ficheiro "???". Função. Todas as linhas de código de uma dada função compõem a função em si. Uma função é identificada pelo seu nome e pela sua localização no ficheiro-objecto binário, se estiver disponível. A última é necessária porque os objectos binários de um único programa poderão conter funções com o mesmo nome (estas poderão ser acedidas, ⪚, com o 'dlopen'/'dlsym'; o editor de ligações durante a execução resolve as funções numa dada ordem de objectos binários). Se uma ferramenta de análise não conseguir detectar o nome do símbolo de uma função, ⪚ porque a informação de depuração não está disponível, tanto é usado o endereço da primeira instrução executada, ou então o "???". Objecto Binário. Todas as funções cujo código esteja dentro do intervalo de um dado objecto binário, seja ele o executável principal ou uma biblioteca dinâmica. Ficheiro de Código. Todas as funções cuja primeira instrução esteja mapeada numa linha do ficheiro de código indicado. Classe. Os nomes dos símbolos das funções estão tipicamente ordenados de forma hierárquica em espaços de nomes, ⪚ os 'namespaces' de C++, ou as classes das linguagens orientadas por objectos. Como tal, uma classe poderá conter funções da classe ou outras classes embebidas nela. Parte de Análise. Alguma secção no tempo de uma execução da análise, com um dado ID de tarefa, ID de processo e uma linha de comandos executada. Tal como é visto na lista, um conjunto de entidades de custo define normalmente outra entidade de custo. Como tal, existe uma hierarquia de inclusão das entidade de custo que deverá ser óbvia a partir da descrição acima. + +Tuplos de posições: Uma chamada de uma instrução para uma função-alvo. Uma chamada de uma linha de código para uma função-alvo. Uma chamada de uma função de origem para uma função de destino. Um salto (in)condicional de uma instrução de origem para uma de destino. Um salto (in)condicional de uma linha de origem para uma de destino. Os saltos entre funções não são permitidos, dado que isto não faz sentido num grafo de chamadas. Como tal, as sequências como o tratamento de excepções e os 'long jumps' do C terão de ser traduzidos em saltos na pilha de chamadas, de acordo com as necessidades. + + + + + + +Tipos de Evento + +Podem ser indicados vários tipos de eventos arbitrários nos dados de análise, atribuindo-lhes um nome. O seu custo, relacionado com uma entidade de custo, é um inteiro de 64 bits. +Os tipos de eventos cujos tipos são indicados num ficheiro de dados de análise são chamados de eventos reais. Para além disso, uma pessoa poderá indicar fórmulas para os tipos de eventos, calculadas a partir dos eventos reais, chamadas de eventos inerentes. + + + + + +Estado da Visualização + +O estado da visualização de uma janela do KCachegrind inclui: o tipo primário e secundário dos eventos seleccionados para mostrar, o agrupamento de funções (usado na lista da Análise da Função e no colorir da entidade), as partes da análise cujos custos serão incluídos na visualização, uma entidade de custo activa (⪚ uma função seleccionada a partir da barra de análise da função), uma entidade de custo seleccionada. Este estado influencia as visualizações. +As visualizações são sempre apresentadas apenas para a entidade de custo activa de momento. Quando uma dada visualização não é apropriada para uma entidade de custo, fica desactivada (p.ex., ao seleccionar um objecto ELF na lista de grupos através de um duplo-click, a anotação de código para um objecto ELF não faz sentido). +Por exemplo, para uma função activa, a lista de chamados mostra todas as funções chamadas a partir da função activa. Um utilizador poderá seleccionar uma dessas funções sem a tornar activa. Se o grafo de chamadas é mostrado ao lado, irá seleccionar automaticamente a mesma função. + + + + +Partes da Interface + + +Barras Laterais +As barras laterais são janelas laterais que poderão ser colocadas em qualquer extremo de uma janela do KCachegrind. Elas contêm sempre uma lista das entidades de custo, ordenadas de uma determinada forma. +Análise da Função. A Análise da Função é uma lista de funções que mostram o custo inclusivo e o exclusivo, o número de chamadas, o nome e a posição das funções. +Introdução às Partes +Pilha de Chamadas + + + + + +Área de Visualização +A área de visualização, tipicamente do lado direito da janela principal do KCachegrind, é composta por uma (a predefinida) ou mais páginas, quer alinhadas na horizontal quer na vertical. Cada página contém diferentes áreas de visualização com apenas uma entidade de custo de cada vez. O nome desta entidade é indicado no cimo da página. Se existirem várias páginas, só uma é que estará activa. O nome da entidade da página activa é mostrado a negrito e determina a entidade de custo activa da janela do KCachegrind. + + + +Áreas de uma Página +Cada página poderá conter até quatro áreas de visualização, nomeadamente a de Topo, Direita, Esquerda e Fundo. Cada área poderá conter várias vistas empilhadas. A área visível é seleccionada por uma barra de páginas. As barras de páginas na área da direita e de topo estão em cima, enquanto que as barras de páginas da esquerda e de baixo estão no fundo. Você poderá indicar que tipo de visualização deverá ir para determinada área com o menu de contexto das páginas. + + + +Visualização Sincronizada da Entidade Seleccionada numa Página +Para além de uma entidade activa, cada página tem uma entidade seleccionada. Como a maioria dos tipos de visualização mostram várias entidades com a activa centrada, você muda o item seleccionado se navegar dentro de uma visualização (carregando com o rato ou usando o teclado). Tipicamente, os itens seleccionados são mostrados de forma realçada. Se alterar a entidade seleccionada numa das visualizações de uma página, todas as outras visualizações da página irão ficar realçadas de igual forma na nova entidade seleccionada. + + + +Sincronização entre Páginas +Se existirem várias páginas, uma mudança de selecção numa das páginas leva a uma mudança da activação na próxima página (à direita/em baixo). Este tipo de associação ⪚ deverá permitir uma navegação rápida nos grafos de chamadas. + + + +Disposições +A disposição de todas as páginas de uma janela poderá ser gravada (veja o item do menu Ver/Disposição). Depois de duplicar a disposição actual (Ctrl+Mais ou o menu) e alterar alguns tamanhos ou mudar uma área de visualização de posição para outra área de uma página, você poderá mudar rapidamente entre a disposição antiga e a nova com as combinações Ctrl+Esquerda/Direita. O conjunto de disposições será guardado entre sessões do KCachegrind do mesmo comando analisado. Você poderá tornar o conjunto de disposições o predefinido para as novas sessões do KCachegrind ou reponha o conjunto de disposições por omissão. + + + + +Barras Laterais + + +Análise Simples +A análise simples contém uma lista de grupos e outra lista de funções. A lista de grupos contém todos os grupos em que o custo é dispendido, dependendo do tipo de grupo escolhido. A lista de grupos fica escondida quando o agrupamento está desligado. +A lista de funções contém as funções do grupo seleccionado (ou todas as funções se o agrupamento estiver desligado), ordenadas por uma dada coluna, ⪚ os custos da própria ou os custos inclusos dispendidos até então. Existe um número máximo de funções apresentado na lista que é configurável na opção Configuração/Configurar o KCachegrind. + + + +Introdução às Partes +Na execução de uma análise, poderão ser produzidos vários ficheiros de dados de análise que poderão ser carregados em conjunto no KCachegrind. A barra de Introdução das Partes mostra estes ficheiros, ordenados na horizontal de acordo com a hora de criação; os tamanhos dos rectângulo são proporcionais ao custo dispendido nas partes. Você poderá seleccionar uma ou várias partes para restringir os custos apresentados nas outras zonas do KCachegrind apenas para estas partes. +As partes são, por sua vez, sub-divididas: existem um modo de partição e um modo repartido por custo inclusivo: +Partição: O utilizador vê a repartição em grupos para uma parte de dados de análise, de acordo com o tipo de grupo seleccionado. Por exemplos, se forem seleccionados os grupos de objectos ELF, você irá ver rectângulos coloridos para cada objecto ELF usado (biblioteca dinâmica ou executável), dimensionado de acordo com o custo nele dispendido. +Repartição do Custo Inclusivo: É mostrado um rectângulo com o custo inclusivo da função activa de momento na parte. Este, por sua vez, vai sendo repartido para mostrar os custos inclusos das funções chamadas por ela. + + + + + +Pilha de Chamadas +Esta é uma pilha de chamadas 'mais prováveis' puramente fictícia. É criada a partir da função activa de momento e adiciona as funções chamadoras/chamadas com o maior custo no seu topo e no seu fundo. +As colunas 'Custo' e 'Chamadas' mostram o custo usado para todas as chamadas da função na linha acima. + + + + +Visualizações + + +Tipos de Evento +Esta lista mostra os tipos de custos disponíveis e o custo correspondente à própria e o inclusivo para a função activa de momento, para esse tipo de evento. +Se escolher um tipo de evento na lista, você poderá alterar o tipo de custos apresentados em todo o KCachegrind, de modo a ser o tipo seleccionado. + + + +Listas de Chamadas +Estas listas mostram as chamadas de/para a função activa de momento. Entende-se por 'todas' as funções chamadoras/chamadas as que poderão ser acedidas no sentido da chamadora/chamada, mesmo que existam outras funções pelo meio. +A lista de chamadas inclui: +Chamadores Directos +Chamados Directos +Todos os Chamadores +Todos os Chamados + + + + + +Mapas +Uma visualização em árvore do tipo de evento primário, para cima ou para baixo, na hierarquia de chamadas. Cada rectângulo colorido representa uma função; o seu tamanho tenta ser proporcional ao custo dispendido na função activa enquanto está a correr (contudo, existem restrições de desenho). +Para o Mapa dos Chamadores, o gráfico mostra a hierarquia encadeada de todas as funções que chamam a função activa de momento; no caso do Mapa dos Chamados, mostra a hierarquia respectiva, mas para as funções chamadas pela função activa. +As opções de aparência poderão ser acedidas no menu de contexto. Para obter proporções de tamanho exactas, escolha a opção 'Esconder os contornos incorrectos'. Dado que este modo poderá ocupar bastante tempo, o utilizador poderá desejar limitar o nível máximo de encadeamento do desenho antes. O 'Melhor' determina a direcção da repartição dos filhos, a partir das proporções do pai. O 'Sempre o Melhor' decide sobre o espaço restante de cada elemento do mesmo nível. O 'Ignorar as Proporções' ocupa o espaço para o nome da função, antes de desenhar os filhos. Lembre-se que as proporções podem ficar totalmente erradas. +A navegação com o teclado está disponível com as teclas de cursores esquerda/direita para navegar nos elementos do mesmo nível, enquanto que os cursores cima/baixo sobem/descem um nível de encadeamento. O 'Return' activa o item actual. + + + +Grafo de Chamadas +Esta janela mostra o grafo de chamadas em torno da função activa. O custo apresentado é apenas o custo dispendido enquanto a função estava de facto a correr; &ie;, o custo mostrado para o main() - se for visível - deverá ser o mesmo que o custo da função activa, dado que faz parte do custo inclusivo do main() dispendido enquanto a função activa estava em execução. +Para os ciclos, as setas de chamadas a azul indicam que esta é uma chamada artificial adicionada para desenhar correctamente o que, de facto, nunca ocorreu. +Se o grafo for maior que a área de desenho, é mostrada uma vista geral num dos lados. Existem opções de visualização semelhantes às da Árvore de Chamadas; a função seleccionada está realçada. + + + +Anotações +As listas anotadas de código/Assembly mostram as instruções de código (ou descodificadas para Assembly) da função activa de momento, em conjunto com o custo (da própria) dispendido ao executar o código de uma linha de código ou instrução. Se ocorreu uma chamada, as linhas com os detalhes da chamada são introduzidas no código: o custo (inclusivo) dispendido dentro da chamada, o número de chamadas que ocorreu e o destino da chamada. +Seleccione uma linha de informação da chamada para activar o destino da chamada. + + + + + + + +Referência de Comandos + + +A janela principal do &kcachegrind; + + + +O Menu <guimenu +>Ficheiro</guimenu +> + + + + + &Ctrl;N Ficheiro Novo + Abre uma janela de topo em branco para onde poderá carregar os dados de análise. Esta acção não é realmente necessária, dado que o Ficheiro/Abrir dar-lhe-á uma nova janela de topo, quando a actual já estiver a mostrar alguns dados. + + + + &Ctrl;O Ficheiro Abrir + Abre a Janela de Abertura de Ficheiros para escolher o ficheiro de dados de análise a ser carregado. Se existirem já alguns dados visíveis na janela de topo actual, esta opção irá abrir uma nova janela. Se quiser abrir dados adicionais de análise na janela actual, use o Ficheiro/Adicionar. +O nome dos ficheiros de dados de análise normalmente termina em ..-, onde o .. e o .. são opcionais e usados para vários ficheiros de dados de análise que pertençam uma execução de uma aplicação. Se ler um ficheiro que termine apenas em ., os ficheiros de dados eventualmente existentes para esta execução, mas sem terminações adicionais, são também carregados. +Exemplo: Se existirem os ficheiros de dados de análise 'cachegrind.out.123' e 'cachegrind.out.123.1', ao carregar o primeiro, o segundo será também carregado automaticamente. + + + +Ficheiro Adicionar + Adiciona um ficheiro de dados de análise à janela actual. Com isto, você poderá obrigar vários ficheiros de dados a serem carregados para a mesma janela de topo, mesmo que não sejam da mesma execução, tal como está definido através da convenção de nomes dos ficheiros de dados de análise. Por exemplo, poderá ser usado para uma comparação 'lado-a-lado'. + + + +Ficheiro Recarregar + Volta a carregar os dados de análise. Isto é mais interessante, depois de outro ficheiro de dados de análise ter sido gerado para uma execução de uma aplicação já carregada. + + + + &Ctrl;Q Ficheiro Sair +Sai do &kappname; + + + + + + + +O Menu <guimenu +>Ver</guimenu +> + + + + +Ver Tipo Primário de Evento +(Por fazer) + + + +Ver Tipo Secundário de Evento +(Por fazer) + + + +Ver Grupos +(Por fazer) + + + +Ver Disposição +(Por fazer) + + + +Ver Separar +(Por fazer) + + + + + + + + + + + + +Perguntas e Respostas +&reporting.bugs; &updating.documentation; + + + + +Para que é que serve o &kcachegrind;? Não faço a mínima ideia. + + +O &kcachegrind; é útil numa fase posterior do desenvolvimento do 'software' que é a análise ('profiling'). Se você não programar aplicações, não precisa do &kcachegrind;. + + + + + +Qual é a diferença entre o 'Incl.' e o 'Próprio' ? + + +Estes são atributos de custos para as funções, no que respeita a um dado tipo de evento. Dado que as funções se podem chamar umas às outras, faz sentido distinguir o custo da função em si ('Custo da Própria') e o custo que inclui todas as funções chamadas ('Custo Inclusivo'). O 'Próprio' é referido também como custo 'Exclusivo'. +Por isso, ⪚ para o main(), você irá ter sempre um custo inclusivo de quase 100%, enquanto que o custo da própria função é infinitesimal face ao real trabalho desempenhado nas outras funções. + + + + + +A barra de ferramentas/menu do meu KCachegrind está tão estranha. Isto é normal? + + +Obviamente, o KCachegrind está mal instalado no seu sistema. Recomenda-se que o compile com o prefixo de instalação igual à sua directoria de base do sistema KDE, como por exemplo o comando configure --prefix=/opt/kde3; make install. Se escolher outra directoria, como a $HOME/kde, você deverá apontar a variável de ambiente KDEDIR para esta directoria antes de executar o KCachegrind. + + + + + +Se fizer duplo-click numa função qualquer do Grafo de Chamadas, ela mostra para a função 'main' o mesmo custo que para a função seleccionada. Não é suposto ser constante e igual a 100% ? + + +Você activou uma função sob a main() com um custo menor que o da main(). Para qualquer função, só é apresentada essa parte do custo completo da função, sendo ela dispendida enquanto a função activa está em execução, &ie; o custo mostrado para qualquer função nunca pode ser maior que o custo da função activada. + + + + + + + + +Glossário + +Segue-se uma lista misturada de termos. +Análise ('Profiling'): O processo de reunião de informação estatística sobre as características das execuções dos programas. +Rastreabilidade: O processo de supervisionar a execução de um programa e registar os eventos que ocorrem, ordenados por data e hora, num ficheiro de resultado, o ficheiro de Traceamento. +Traceamento: Uma sequência de eventos ao longo do tempo que ocorreu durante a supervisão da execução de um programa. O seu tamanho é tipicamente linear com o tempo de execução do programa. +Ficheiro de Dados de Análise: Um ficheiro que contém os dados medidos numa experiência de análise (ou parte dela) ou produzidos depois da análise de um traceamento. O seu tamanho é tipicamente linear com o tamanho do código do programa. +Parte de Dados de Análise (referido incorrectamente também como: Parte de Traceamento): A informação propriamente dita de um ficheiro de dados de análise. +Experiência de Análise: Uma execução de um programa supervisionada por uma ferramenta de análise, gerando possivelmente vários ficheiros de dados das partes e/ou tarefas dessa execução. +Projecto de Análise: Uma configuração para as experiências de análise usada para um programa que tenha de ser analisado, talvez para várias versões. As comparações dos dados de análise só fará tipicamente sentido entre dados de análise produzidos num único projecto de análise. +Entidade de Custo: Um item abstracto relacionado com o código-fonte, para o qual poderão ser atribuídas as contagens de eventos. As dimensões das entidades de custo são a localização no código (⪚, linha de código, função), a localização dos dados (⪚ tipo dos dados acedidos, o objecto de dados), a localização da execução (⪚, a tarefa ou processo) e os tuplos das posições acima indicadas (⪚, as chamadas, o acesso aos objectos pela instrução, os dados obtidos a partir da 'cache'). +Tipo de Evento: O tipo de evento do qual os custos poderão ser atribuídos a uma entidade de custo. Existem os tipos de eventos reais e os inerentes. +Tipo de Evento Real: Um tipo de evento que poderá ser medido por uma ferramenta. Necessita da existência de um sensor para o tipo de evento indicado. +Tipo de Evento Inerente: Um tipo de evento virtual que só aparece na visualização e que é definido por uma fórmula calculada a partir dos tipos de eventos reais. +Custos dos Eventos: A soma dos eventos de um determinado tipo que ocorrem enquanto a execução está relacionada com uma dada entidade de custo. O custo em si é atribuído à entidade. + + + + + + + +Créditos e Licença + +&kappname; +Obrigado ao Julian Seward pelo seu excelente &valgrind;, e ao Nicholas Nethercote pela adição do &cachegrind;. Sem estes programas, nem a actualização da árvore de chamadas, nem o &valgrind;, nem mesmo o KCachegrind existiriam. Algumas das ideias para esta interface foram dadas por eles, também. +E muito obrigado a todos os relatórios de erros e sugestões dos vários utilizadores. +&underFDL; + + +Instalação + + +Como obter o &kcachegrind; + +O &kcachegrind; faz parte do pacote &package; do &kde;. Para as versões intermédias menos suportadas, o &callgrind; e a documentação futura, veja na página pessoal http://kcachegrind.sf.net para obter mais instruções de instalação e compilação. + + + +Requisitos + +Para poder usar com sucesso o &kcachegrind;, você precisa do &kde; 3.x. Para gerar os registos das análises, o &cachegrind; ou o &calltree;/&callgrind; é recomendado. + + + +Compilação e Instalação +&install.compile.documentation; + + +Configuração + +Todas as opções de configuração se encontram na janela de configuração ou nos menu de contexto dos gráficos. + + + + + +&documentation.index; +
+ + + + + + + + + + + + + + diff --git a/tde-i18n-pt/docs/tdesdk/kompare/Makefile.am b/tde-i18n-pt/docs/tdesdk/kompare/Makefile.am new file mode 100644 index 00000000000..6869837a64a --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kompare/Makefile.am @@ -0,0 +1,4 @@ +KDE_LANG = pt +SUBDIRS = $(AUTODIRS) +KDE_DOCS = AUTO +KDE_MANS = AUTO diff --git a/tde-i18n-pt/docs/tdesdk/kompare/Makefile.in b/tde-i18n-pt/docs/tdesdk/kompare/Makefile.in new file mode 100644 index 00000000000..61981904780 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kompare/Makefile.in @@ -0,0 +1,635 @@ +# Makefile.in generated by automake 1.10.1 from Makefile.am. +# KDE tags expanded automatically by am_edit - $Revision: 483858 $ +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +subdir = docs/tdesdk/kompare +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.in +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +SOURCES = +DIST_SOURCES = +#>- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ +#>- html-recursive info-recursive install-data-recursive \ +#>- install-dvi-recursive install-exec-recursive \ +#>- install-html-recursive install-info-recursive \ +#>- install-pdf-recursive install-ps-recursive install-recursive \ +#>- installcheck-recursive installdirs-recursive pdf-recursive \ +#>- ps-recursive uninstall-recursive +#>+ 7 +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive nmcheck-recursive bcheck-recursive +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) +#>- DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +#>+ 1 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +ARTSCCONFIG = @ARTSCCONFIG@ +AUTOCONF = @AUTOCONF@ +AUTODIRS = @AUTODIRS@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CONF_FILES = @CONF_FILES@ +CYGPATH_W = @CYGPATH_W@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOPIDLNG = @DCOPIDLNG@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DEFS = @DEFS@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +GMSGFMT = @GMSGFMT@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +KCFG_DEPENDENCIES = @KCFG_DEPENDENCIES@ +KCONFIG_COMPILER = @KCONFIG_COMPILER@ +KDECONFIG = @KDECONFIG@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_RPATH = @KDE_RPATH@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MAKEKDEWIDGETS = @MAKEKDEWIDGETS@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XMLLINT = @XMLLINT@ +X_RPATH = @X_RPATH@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +am__leading_dot = @am__leading_dot@ +am__tar = @am__tar@ +am__untar = @am__untar@ +#>- bindir = @bindir@ +#>+ 2 +DEPDIR = .deps +bindir = @bindir@ +build_alias = @build_alias@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host_alias = @host_alias@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_kcfgdir = @kde_kcfgdir@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_styledir = @kde_styledir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +kde_widgetdir = @kde_widgetdir@ +tdeinitdir = @tdeinitdir@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +xdg_appsdir = @xdg_appsdir@ +xdg_directorydir = @xdg_directorydir@ +xdg_menudir = @xdg_menudir@ +KDE_LANG = pt +#>- SUBDIRS = $(AUTODIRS) +#>+ 1 +SUBDIRS =. +KDE_DOCS = AUTO +KDE_MANS = AUTO +#>- all: all-recursive +#>+ 1 +all: docs-am all-recursive + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +#>- @for dep in $?; do \ +#>- case '$(am__configure_deps)' in \ +#>- *$$dep*) \ +#>- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ +#>- && exit 0; \ +#>- exit 1;; \ +#>- esac; \ +#>- done; \ +#>- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/kompare/Makefile'; \ +#>- cd $(top_srcdir) && \ +#>- $(AUTOMAKE) --gnu docs/tdesdk/kompare/Makefile +#>+ 12 + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/kompare/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/kompare/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/kompare/Makefile.in +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +$(RECURSIVE_CLEAN_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +#>- distdir: $(DISTFILES) +#>+ 1 +distdir: distdir-nls $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done + list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + distdir=`$(am__cd) $(distdir) && pwd`; \ + top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$top_distdir" \ + distdir="$$distdir/$$subdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +#>- uninstall: uninstall-recursive +#>+ 1 +uninstall: uninstall-docs uninstall-nls uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +#>- clean-am: clean-generic mostlyclean-am +#>+ 1 +clean-am: clean-docs clean-bcheck clean-generic mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +info: info-recursive + +info-am: + +#>- install-data-am: +#>+ 1 +install-data-am: install-docs install-nls + +install-dvi: install-dvi-recursive + +install-exec-am: + +install-html: install-html-recursive + +install-info: install-info-recursive + +install-man: + +install-pdf: install-pdf-recursive + +install-ps: install-ps-recursive + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ + install-strip + +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic ctags \ + ctags-recursive distclean distclean-generic distclean-tags \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ + tags-recursive uninstall uninstall-am + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: + +#>+ 2 +KDE_DIST=index.docbook index.cache.bz2 Makefile.in Makefile.am + +#>+ 24 +index.cache.bz2: $(srcdir)/index.docbook $(KDE_XSL_STYLESHEET) index.docbook + @if test -n "$(MEINPROC)"; then echo $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; fi + +docs-am: index.cache.bz2 + +install-docs: docs-am install-nls + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kompare + @if test -f index.cache.bz2; then \ + echo $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kompare/; \ + $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kompare/; \ + elif test -f $(srcdir)/index.cache.bz2; then \ + echo $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kompare/; \ + $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kompare/; \ + fi + -rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kompare/common + $(LN_S) $(kde_libs_htmldir)/$(KDE_LANG)/common $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kompare/common + +uninstall-docs: + -rm -rf $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kompare + +clean-docs: + -rm -f index.cache.bz2 + + +#>+ 13 +install-nls: + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kompare + @for base in index.docbook ; do \ + echo $(INSTALL_DATA) $$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kompare/$$base ;\ + $(INSTALL_DATA) $(srcdir)/$$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kompare/$$base ;\ + done + +uninstall-nls: + for base in index.docbook ; do \ + rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kompare/$$base ;\ + done + + +#>+ 5 +distdir-nls: + for file in index.docbook ; do \ + cp $(srcdir)/$$file $(distdir); \ + done + +#>+ 15 +force-reedit: + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/kompare/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/kompare/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/kompare/Makefile.in + + +#>+ 21 +clean-bcheck: + rm -f *.bchecktest.cc *.bchecktest.cc.class a.out + +bcheck: bcheck-recursive + +bcheck-am: + @for i in ; do \ + if test $(srcdir)/$$i -nt $$i.bchecktest.cc; then \ + echo "int main() {return 0;}" > $$i.bchecktest.cc ; \ + echo "#include \"$$i\"" >> $$i.bchecktest.cc ; \ + echo "$$i"; \ + if ! $(CXX) $(DEFS) -I. -I$(srcdir) -I$(top_builddir) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) --dump-class-hierarchy -c $$i.bchecktest.cc; then \ + rm -f $$i.bchecktest.cc; exit 1; \ + fi ; \ + echo "" >> $$i.bchecktest.cc.class; \ + perl $(top_srcdir)/admin/bcheck.pl $$i.bchecktest.cc.class || { rm -f $$i.bchecktest.cc; exit 1; }; \ + rm -f a.out; \ + fi ; \ + done + + +#>+ 3 +final: + $(MAKE) all-am + +#>+ 3 +final-install: + $(MAKE) install-am + +#>+ 3 +no-final: + $(MAKE) all-am + +#>+ 3 +no-final-install: + $(MAKE) install-am + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo + +#>+ 3 +nmcheck: +nmcheck-am: nmcheck diff --git a/tde-i18n-pt/docs/tdesdk/kompare/index.cache.bz2 b/tde-i18n-pt/docs/tdesdk/kompare/index.cache.bz2 new file mode 100644 index 00000000000..229271c8413 Binary files /dev/null and b/tde-i18n-pt/docs/tdesdk/kompare/index.cache.bz2 differ diff --git a/tde-i18n-pt/docs/tdesdk/kompare/index.docbook b/tde-i18n-pt/docs/tdesdk/kompare/index.docbook new file mode 100644 index 00000000000..eb8f6f3a572 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/kompare/index.docbook @@ -0,0 +1,108 @@ + + + + + +]> + + + + +O Manual do &kompare; + + +
+
+
+PedroMorais
morais@kde.org
Tradução
+
+ +&FDLNotice; + + + +2002-12-16 +0.00.00 + + + + +&kompare; é um programa para ver as diferenças entre ficheiros. + + + + +KDE +Kompare + + +
+ + Introdução A documentação do &kappname; não estava terminada quando o &kde; foi instalado neste computador. Se necessitar de ajuda, procure na Página Web do &kde; actualizações a este documento ou para envie as suas dúvidas para a Lista de Utilizadores do &kde;. A Equipa do &kde; &underFDL; + +&documentation.index; +
+ + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/Makefile.am b/tde-i18n-pt/docs/tdesdk/scripts/Makefile.am new file mode 100644 index 00000000000..6869837a64a --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/Makefile.am @@ -0,0 +1,4 @@ +KDE_LANG = pt +SUBDIRS = $(AUTODIRS) +KDE_DOCS = AUTO +KDE_MANS = AUTO diff --git a/tde-i18n-pt/docs/tdesdk/scripts/Makefile.in b/tde-i18n-pt/docs/tdesdk/scripts/Makefile.in new file mode 100644 index 00000000000..699c8a3f39e --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/Makefile.in @@ -0,0 +1,613 @@ +# Makefile.in generated by automake 1.10.1 from Makefile.am. +# KDE tags expanded automatically by am_edit - $Revision: 483858 $ +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +subdir = docs/tdesdk/scripts +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.in +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +SOURCES = +DIST_SOURCES = +#>- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ +#>- html-recursive info-recursive install-data-recursive \ +#>- install-dvi-recursive install-exec-recursive \ +#>- install-html-recursive install-info-recursive \ +#>- install-pdf-recursive install-ps-recursive install-recursive \ +#>- installcheck-recursive installdirs-recursive pdf-recursive \ +#>- ps-recursive uninstall-recursive +#>+ 7 +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive nmcheck-recursive bcheck-recursive +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) +#>- DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +#>+ 1 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +ARTSCCONFIG = @ARTSCCONFIG@ +AUTOCONF = @AUTOCONF@ +AUTODIRS = @AUTODIRS@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CONF_FILES = @CONF_FILES@ +CYGPATH_W = @CYGPATH_W@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOPIDLNG = @DCOPIDLNG@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DEFS = @DEFS@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +GMSGFMT = @GMSGFMT@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +KCFG_DEPENDENCIES = @KCFG_DEPENDENCIES@ +KCONFIG_COMPILER = @KCONFIG_COMPILER@ +KDECONFIG = @KDECONFIG@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_RPATH = @KDE_RPATH@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MAKEKDEWIDGETS = @MAKEKDEWIDGETS@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XMLLINT = @XMLLINT@ +X_RPATH = @X_RPATH@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +am__leading_dot = @am__leading_dot@ +am__tar = @am__tar@ +am__untar = @am__untar@ +#>- bindir = @bindir@ +#>+ 2 +DEPDIR = .deps +bindir = @bindir@ +build_alias = @build_alias@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host_alias = @host_alias@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_kcfgdir = @kde_kcfgdir@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_styledir = @kde_styledir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +kde_widgetdir = @kde_widgetdir@ +tdeinitdir = @tdeinitdir@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +xdg_appsdir = @xdg_appsdir@ +xdg_directorydir = @xdg_directorydir@ +xdg_menudir = @xdg_menudir@ +KDE_LANG = pt +#>- SUBDIRS = $(AUTODIRS) +#>+ 1 +SUBDIRS =. tdesvn-build +KDE_DOCS = AUTO +KDE_MANS = AUTO +#>- all: all-recursive +#>+ 1 +all: docs-am all-recursive + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +#>- @for dep in $?; do \ +#>- case '$(am__configure_deps)' in \ +#>- *$$dep*) \ +#>- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ +#>- && exit 0; \ +#>- exit 1;; \ +#>- esac; \ +#>- done; \ +#>- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/scripts/Makefile'; \ +#>- cd $(top_srcdir) && \ +#>- $(AUTOMAKE) --gnu docs/tdesdk/scripts/Makefile +#>+ 12 + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/scripts/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/scripts/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/scripts/Makefile.in +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +$(RECURSIVE_CLEAN_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +#>- distdir: $(DISTFILES) +#>+ 1 +distdir: distdir-nls $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done + list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + distdir=`$(am__cd) $(distdir) && pwd`; \ + top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$top_distdir" \ + distdir="$$distdir/$$subdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +#>- uninstall: uninstall-recursive +#>+ 1 +uninstall: uninstall-nls uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +#>- clean-am: clean-generic mostlyclean-am +#>+ 1 +clean-am: clean-bcheck clean-generic mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +info: info-recursive + +info-am: + +#>- install-data-am: +#>+ 1 +install-data-am: install-nls + +install-dvi: install-dvi-recursive + +install-exec-am: + +install-html: install-html-recursive + +install-info: install-info-recursive + +install-man: + +install-pdf: install-pdf-recursive + +install-ps: install-ps-recursive + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ + install-strip + +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic ctags \ + ctags-recursive distclean distclean-generic distclean-tags \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ + tags-recursive uninstall uninstall-am + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: + +#>+ 2 +KDE_DIST=man-pruneemptydirs.1.docbook man-fixincludes.1.docbook man-cheatmake.1.docbook man-adddebug.1.docbook man-create_makefile.1.docbook man-cvslastchange.1.docbook man-cvsrevertlast.1.docbook man-swappo.1.docbook man-create_cvsignore.1.docbook man-split2po.1.docbook man-qtdoc.1.docbook man-demangle.1.docbook man-extractrc.1.docbook man-xml2pot.1.docbook man-zonetab2pot.1.docbook man-po2xml.1.docbook man-reportview.1.docbook man-cvscheck.1.docbook man-cxxmetric.1.docbook man-transxx.1.docbook Makefile.in man-create_makefiles.1.docbook man-extend_dmalloc.1.docbook man-cvslastlog.1.docbook Makefile.am + +#>+ 2 +docs-am: man-demangle.1.docbook man-cvscheck.1.docbook man-transxx.1.docbook man-pruneemptydirs.1.docbook man-cheatmake.1.docbook man-split2po.1.docbook man-cvslastlog.1.docbook man-po2xml.1.docbook man-cxxmetric.1.docbook man-zonetab2pot.1.docbook man-create_makefiles.1.docbook man-qtdoc.1.docbook man-create_makefile.1.docbook man-cvslastchange.1.docbook man-extractrc.1.docbook man-create_cvsignore.1.docbook man-adddebug.1.docbook man-fixincludes.1.docbook man-reportview.1.docbook man-swappo.1.docbook man-extend_dmalloc.1.docbook man-cvsrevertlast.1.docbook man-xml2pot.1.docbook + +#>+ 13 +install-nls: + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/scripts + @for base in man-demangle.1.docbook man-cvscheck.1.docbook man-transxx.1.docbook man-pruneemptydirs.1.docbook man-cheatmake.1.docbook man-split2po.1.docbook man-cvslastlog.1.docbook man-po2xml.1.docbook man-cxxmetric.1.docbook man-zonetab2pot.1.docbook man-create_makefiles.1.docbook man-qtdoc.1.docbook man-create_makefile.1.docbook man-cvslastchange.1.docbook man-extractrc.1.docbook man-create_cvsignore.1.docbook man-adddebug.1.docbook man-fixincludes.1.docbook man-reportview.1.docbook man-swappo.1.docbook man-extend_dmalloc.1.docbook man-cvsrevertlast.1.docbook man-xml2pot.1.docbook ; do \ + echo $(INSTALL_DATA) $$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/scripts/$$base ;\ + $(INSTALL_DATA) $(srcdir)/$$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/scripts/$$base ;\ + done + +uninstall-nls: + for base in man-demangle.1.docbook man-cvscheck.1.docbook man-transxx.1.docbook man-pruneemptydirs.1.docbook man-cheatmake.1.docbook man-split2po.1.docbook man-cvslastlog.1.docbook man-po2xml.1.docbook man-cxxmetric.1.docbook man-zonetab2pot.1.docbook man-create_makefiles.1.docbook man-qtdoc.1.docbook man-create_makefile.1.docbook man-cvslastchange.1.docbook man-extractrc.1.docbook man-create_cvsignore.1.docbook man-adddebug.1.docbook man-fixincludes.1.docbook man-reportview.1.docbook man-swappo.1.docbook man-extend_dmalloc.1.docbook man-cvsrevertlast.1.docbook man-xml2pot.1.docbook ; do \ + rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/scripts/$$base ;\ + done + + +#>+ 5 +distdir-nls: + for file in man-demangle.1.docbook man-cvscheck.1.docbook man-transxx.1.docbook man-pruneemptydirs.1.docbook man-cheatmake.1.docbook man-split2po.1.docbook man-cvslastlog.1.docbook man-po2xml.1.docbook man-cxxmetric.1.docbook man-zonetab2pot.1.docbook man-create_makefiles.1.docbook man-qtdoc.1.docbook man-create_makefile.1.docbook man-cvslastchange.1.docbook man-extractrc.1.docbook man-create_cvsignore.1.docbook man-adddebug.1.docbook man-fixincludes.1.docbook man-reportview.1.docbook man-swappo.1.docbook man-extend_dmalloc.1.docbook man-cvsrevertlast.1.docbook man-xml2pot.1.docbook ; do \ + cp $(srcdir)/$$file $(distdir); \ + done + +#>+ 15 +force-reedit: + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/scripts/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/scripts/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/scripts/Makefile.in + + +#>+ 21 +clean-bcheck: + rm -f *.bchecktest.cc *.bchecktest.cc.class a.out + +bcheck: bcheck-recursive + +bcheck-am: + @for i in ; do \ + if test $(srcdir)/$$i -nt $$i.bchecktest.cc; then \ + echo "int main() {return 0;}" > $$i.bchecktest.cc ; \ + echo "#include \"$$i\"" >> $$i.bchecktest.cc ; \ + echo "$$i"; \ + if ! $(CXX) $(DEFS) -I. -I$(srcdir) -I$(top_builddir) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) --dump-class-hierarchy -c $$i.bchecktest.cc; then \ + rm -f $$i.bchecktest.cc; exit 1; \ + fi ; \ + echo "" >> $$i.bchecktest.cc.class; \ + perl $(top_srcdir)/admin/bcheck.pl $$i.bchecktest.cc.class || { rm -f $$i.bchecktest.cc; exit 1; }; \ + rm -f a.out; \ + fi ; \ + done + + +#>+ 3 +final: + $(MAKE) all-am + +#>+ 3 +final-install: + $(MAKE) install-am + +#>+ 3 +no-final: + $(MAKE) all-am + +#>+ 3 +no-final-install: + $(MAKE) install-am + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo + +#>+ 3 +nmcheck: +nmcheck-am: nmcheck diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-adddebug.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-adddebug.1.docbook new file mode 100644 index 00000000000..abe53a5726a --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-adddebug.1.docbook @@ -0,0 +1,125 @@ + + +]> + + + +BenBurton bab@debian.org +7 de Março de 2003 + + + +addebug +1 + + + +addebug +Modifica as Makefile(s) para adicionar informações de depuração + + + +adddebug + + + +Descrição + +O adddebug modifica as Makefiles na pasta actual (e, opcionalmente, nas suas subpastas) para adicionar informações de depuração (). Irá também remover as optimizações (). + +Este utilitário faz parte do Kit de Desenvolvimento de Software (SDK) do &kde;. + + + + +Opções + + + + +Mantém as optimizações (não remove as opções que são removidas por omissão). + + + + + +Procura recursivamente em todas as subpastas da pasta actual e actua em todas as Makefiles encontradas. + + + + +compila sem o NDEBUG e o NO_DEBUG definidos (faz com que as chamadas kdDebug funcionem) + + + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-cheatmake.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-cheatmake.1.docbook new file mode 100644 index 00000000000..237cf9fe4d2 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-cheatmake.1.docbook @@ -0,0 +1,193 @@ + + +]> + + + +8 de Março de 2003 + + + +cheatmake +1 + + + +cheatmake +engana o make de forma a que este não reconstrua certos ficheiros + + + +cheatmake ficheiro ficheiro + + + +Descrição + +O cheatmake é usado para poupar tempo na recompilação. Consegue enganar o 'make' ao saltar os ficheiros que não tenham mudado de forma significativa. Isto pode ser usado, quando você muda um comentário num ficheiro mas mais nada de código em si. + +Este utilitário faz parte do Kit de Desenvolvimento de Software (SDK) do &kde;. + + + + +Opções + + + + ficheiro +Esconde o facto de que o ficheiro foi modificado colocando a sua data no passado. Utilize com cuidado! + + + + +Lista que ficheiros make actualmente precisa de reconstruir + + + ficheiro +Explica porque tem tem reconstruir o ficheiro + + + + + +Ambiente + +Uma das variáveis seguintes (mas não ambas) deverão ser alteradas, se a pasta de código for diferente da pasta de compilação. Se a pasta de compilação for apenas uma subpasta da pasta de código, deverá ser usada a variável mais simples OBJ_SUBDIR. + + + +OBJ_SUBJDIR +Indica que a pasta de compilação está na subpasta da pasta de código. Por exemplo, se a pasta de código for a tdesdk e a pasta de compilação for a tdesdk/obj-i386-linux, então o OBJ_SUBDIR deverá ser igual a obj-i386-linux. + + +OBJ_REPLACEMENT +Uma expressão de sed que é usada para transformar a pasta de origem na pasta de compilação. Por exemplo, se a pasta de código for a tdesdk/obj-i386-linux, então a OBJ_REPLACEMENT deverá ser igual a s#tdesdk#tdesdk-obj#. + + + + + + + +Veja Também + +make(1) + + + + +Autores + +O cheatmake foi criado por &David.Faure; &David.Faure.mail;. Esta página do manual foi preparada pelo BenBurton bab@debian.org para o sistema GNU/&Linux; da Debian (embora possa ser usado por outros). + + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-create_cvsignore.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-create_cvsignore.1.docbook new file mode 100644 index 00000000000..25a69d35141 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-create_cvsignore.1.docbook @@ -0,0 +1,79 @@ + + + + +]> + + + +BenBurton bab@debian.org +8 de Março de 2003 + + + +create_cvsignore +1 + + + +create_cvsignore +Cria um .cvsignore preliminar na pasta actual + + + + +createcvsignore + + + + +Descrição + +O create_cvsignore é usado para criar um ficheiro .cvsignore preliminar na pasta actual. Ele faz isto com base em certos conteúdos que ele encontra no Makefile.am + +Não serão removidas quaisquer linhas dos .cvsignore existentes. Se não existir já um ficheiro .cvsignore, este será adicionado ao repositório do CVS. + +Lembre-se que necessita de ter um Makefile.am na pasta actual para esta ferramenta funcionar. + +Este utilitário faz parte do Kit de Desenvolvimento de Software (SDK) do &kde;. + + + + \ No newline at end of file diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-create_makefile.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-create_makefile.1.docbook new file mode 100644 index 00000000000..0bdf4a5e4fb --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-create_makefile.1.docbook @@ -0,0 +1,168 @@ + + + + +]> + + + +8 de Março de 2003 + + + +create_makefile +1 + + + +create_makefile +Cria um Makefile.in e um Makefile de um Makefile.am + + + +create_makefile localização_relativa/Makefile localização_relativa + + + +Descrição + +O create_makefile cria os ficheiros Makefile.in e Makefile numa subpasta que contenha o Makefile.am. Este programa poupa tempo em comparação com uma execução nova do 'configure' + +Repare que tem de indicar o local dos ficheiros Makefile Makefile.am desejados (ainda que o /Makefile final possa ser omitido). + +Este programa poderá ser executado na pasta de topo (a que contém o configure ou a partir de uma das suas subpastas. + +Se a pasta de código for diferente da pasta de compilação (veja as variáveis de ambiente em baixo), assume-se que o Makefile.am e o Makefile.in estão sob a pasta de código e que o Makefile se encontra sob a pasta de compilação. + +Este utilitário faz parte do Kit de Desenvolvimento de Software (SDK) do &kde;. + + + + +Ambiente + +Uma das variáveis seguintes (mas não ambas) deverão ser alteradas, se a pasta de código for diferente da pasta de compilação. Se a pasta de compilação for apenas uma subpasta da pasta de código, deverá ser usada a variável mais simples OBJ_SUBDIR. + + + +OBJ_SUBJDIR +Indica que a pasta de compilação está na subpasta da pasta de código. Por exemplo, se a pasta de código for a tdesdk e a pasta de compilação for a tdesdk/obj-i386-linux, então o OBJ_SUBDIR deverá ser igual a obj-i386-linux. + + +OBJ_REPLACEMENT +Uma expressão de sed que é usada para transformar a pasta de origem na pasta de compilação. Por exemplo, se a pasta de código for a tdesdk/obj-i386-linux, então a OBJ_REPLACEMENT deverá ser igual a s#tdesdk#tdesdk-obj#. + + + + + + + +Veja Também + +create_makefiles(1) + + +Autores + +O 'create_makefile' foi criado por &David.Faure; &David.Faure.mail; e por outras pessoas. Esta página foi preparada por BenBurton bab@debian.org para o sistema GNU/Linux da Debian (mas poderá ser usado por outros). + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-create_makefiles.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-create_makefiles.1.docbook new file mode 100644 index 00000000000..bb02de463f4 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-create_makefiles.1.docbook @@ -0,0 +1,147 @@ + +create_makefiles"> + +]> + + + +8 de Março de 2003 + + + +&create_makefiles; +1 + + + +&create_makefiles; +Volta a criar todas as Makefiles sob uma dada pasta + + + +&create_makefiles; dir + + + +Descrição + +O &create_makefiles; volta a criar todos os ficheiros Makefiles em pasta e todas as suas subpastas (de forma recursiva) a partir dos modelos correspondentes em Makefile.am. + +Este programa deverá ser executado na pasta de topo (a que contém o 'configure'). Este programa poupa tempo, em comparação com uma nova execução completa do 'configure'. + +Se a pasta de código for diferente da pasta de compilação (veja as variáveis de ambiente em baixo), assumir-se-á que cada ficheiro Makefile.am e Makefile.in pertence abaixo da pasta de código e que cada Makefile pertence abaixo da pasta de compilação. + +Este utilitário faz parte do Kit de Desenvolvimento de Software (SDK) do &kde;. + + + + +Ambiente +Uma das variáveis seguintes (mas não ambas) deverão ser alteradas, se a pasta de código for diferente da pasta de compilação. Se a pasta de compilação for apenas uma subpasta da pasta de código, deverá ser usada a variável mais simples OBJ_SUBDIR. + + + +OBJ_SUBJDIR +Indica que a pasta de compilação está na subpasta da pasta de código. Por exemplo, se a pasta de código for a tdesdk e a pasta de compilação for a tdesdk/obj-i386-linux, então o OBJ_SUBDIR deverá ser igual a obj-i386-linux. + + +OBJ_REPLACEMENT +Uma expressão de sed que é usada para transformar a pasta de origem na pasta de compilação. Por exemplo, se a pasta de código for a tdesdk/obj-i386-linux, então a OBJ_REPLACEMENT deverá ser igual a s#tdesdk#tdesdk-obj#. + + + + + + +Veja Também + +create_makefile(1) make(2) + + + + +Autores + +&create_makefiles; foi escrito por &David.Faure; &David.Faure.mail;. + +Esta página de manual foi preparada por BenBurton bab@debian.org para o sistema GNU/Linux da Debian (mas poderá ser usado por outros). + + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-cvscheck.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-cvscheck.1.docbook new file mode 100644 index 00000000000..6eb30d694a2 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-cvscheck.1.docbook @@ -0,0 +1,202 @@ + +cvscheck"> +CVS"> + +]> + + + +8 de Março de 2003 + + + +&cvscheck; +1 + + + +&cvscheck; +Relatório de estado, sem ligação ao servidor, para ficheiros num módulo de &CVS;. + + + +&cvscheck; dir + + + +Descrição + +O &cvscheck; imprime informações sobre o estado da sua versão local ('checkout') do &CVS; sem comunicar com o servidor. Isto significa que é extremamente rápido e não precisa de uma ligação de rede. + +A pasta indicada e as suas subpastas serão processados de forma recursiva. Se não indicada qualquer pasta, será usada a pasta actual e as suas subpastas. + +Todos os ficheiros com um estado interessante serão impressos com um carácter de estado à frente do seu nome. Os caracteres de estado são os seguintes. + + + +? foobar.c + +O ficheiro não é conhecido pelo &CVS; + + + +M foobar.c + +O ficheiro foi realmente modificado localmente + + + +m foobar.c + +O ficheiro pode ter modificações locais. Deve fazer diff com o servidor para verificar. + + + +C foobar.c + +O ficheiro tem um conflito com o &CVS; e por isso não pode ser enviado. + + + +U foobar.c + +O ficheiro está no &CVS; mas não está na sua cópia local. + + + +T foobar.c +O ficheiro tem uma marca &CVS; fixa anormal. + + +A foobar.c + +Você fez cvs a teste ficheiro, mas ainda não o enviou. + + + +R foobar.c + +Você fez cvs a teste ficheiro, mas ainda não o enviou. + + + + +Este utilitário faz parte do Kit de Desenvolvimento de Software (SDK) do &kde;. + + + + +Veja Também + +cvs(1) + + + + +Autores + +cvscheck foi escrito por &Dirk.Mueller; &Dirk.Mueller.mail; e Sirtaj.Singh.Kang; &Sirtaj.Singh.Kang.mail; + +Esta página de manual foi preparada por Ben Burton bab@debian.org para o sistema Debian GNU/Linux (mas pode ser utilizada por outros). + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-cvslastchange.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-cvslastchange.1.docbook new file mode 100644 index 00000000000..90293cf6176 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-cvslastchange.1.docbook @@ -0,0 +1,79 @@ + +cvslastchange"> +CVS"> + +]> + + + +BenBurton bab@debian.org +8 de Março de 2003 + + + +&cvslastchange; +1 + + + +&cvslastchange; +Mostra a última alteração enviada ('committed') para o &CVS; de um ficheiro + + + +&cvslastchange; ficheiro + + + +Descrição + +O &cvslastchange; mostra a última alteração de um ficheiro enviada ('committed') para o &CVS;. Ele usa o cvs diff e o cvs log para o fazer. + +O &cvslastchange; funciona em qualquer ramificação do &CVS;, não só no HEAD. + +Este utilitário faz parte do Kit de Desenvolvimento de Software (SDK) do &kde;. + + + + +Veja Também + +cvslastlog(1) cvsrevertlast(1) cvs(1) + + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-cvslastlog.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-cvslastlog.1.docbook new file mode 100644 index 00000000000..c2dddfbe91a --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-cvslastlog.1.docbook @@ -0,0 +1,67 @@ + + +]> + + + +BenBurton +6 de Abril de 2003 + + + +cvslastlog +1 + + + +cvslastlog +Imprime o item de registo sobre o último envio ('commit') de um ficheiro. + + + +cvslastlog + + + +Descrição + +O cvslastlog mostra o registo associado ao último envio ('commit') do CVS para o ficheiro indicado. Depende da versão do ficheiro local, não da que se encontra no servidor. + +Este utilitário faz parte do Kit de Desenvolvimento de Software (SDK) do &kde;. + + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-cvsrevertlast.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-cvsrevertlast.1.docbook new file mode 100644 index 00000000000..88bea453876 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-cvsrevertlast.1.docbook @@ -0,0 +1,74 @@ + + +]> + + + +BenBurton +xx de xx de xxxx + + + +cvsrevertlast +1 + + + +cvsrevertlast +Reverte os ficheiros no CVS para a versão anterior + + + +cvsrevertlast + + + +Descrição + +O 'cvsrevertlast' é usado para reverter todos os ficheiros, na linha de comandos, para a versão anterior no CVS. Os ficheiros não serão enviados ('committed'). + +Este utilitário faz parte do Kit de Desenvolvimento de Software do KDE. + + + + +Veja Também + +cvsblame(1) + + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-cxxmetric.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-cxxmetric.1.docbook new file mode 100644 index 00000000000..dc77cf365c3 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-cxxmetric.1.docbook @@ -0,0 +1,66 @@ + + +]> + + + +BenBurton bab@debian.org +7 de Abril de 2003 + + + +cxxmetric +1 + + + +cxxmetric +Algumas métricas simples de código para C e C++ + + + +cxxmetric + + + +Descrição + +O 'cxxmetric' conta as linhas de código, comentários e espaços em branco, calculando ainda várias outras estatísticas para cada ficheiro de código. Os ficheiros de código deverão estar em C ou C++. + +Este utilitário faz parte do Kit de Desenvolvimento de Software do KDE. + + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-demangle.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-demangle.1.docbook new file mode 100644 index 00000000000..db50dbba133 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-demangle.1.docbook @@ -0,0 +1,105 @@ + + +]> + + + +BenBurton bab@debian.org +7 de Abril de 2003 + + + +demangle +1 + + + +demangle +Descodifica nomes de símbolos C++ + + + + +demangle + + + + +Descrição + +demangle lê uma lista de símbolos codificados C++ do 'standard input' e converte esses nome para um formato legível no 'standard output'. + +Este utilitário faz parte do Kit de Desenvolvimento de Software (SDK) do &kde;. + + + + +Exemplo + +Crie um ficheiro chamado nomes com os seguintes nomes de símbolos codificados: + +_ZNK6Object10metaObjectEv +_ZN8QPtrListI5ArrowE5clearEv +_ZTC4Kolf0_11KMainWindow + +Este nomes podem ser descodificado da seguinte forma: + +exemplo$ demangle < nomes +Object::metaObject() const +QPtrList<Arrow>::clear() +construction vtable for KMainWindow-in-Kolf + + + + +Veja Também + +kminspector(1) kmtrace(1) match(1) + + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-extend_dmalloc.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-extend_dmalloc.1.docbook new file mode 100644 index 00000000000..56f959467e8 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-extend_dmalloc.1.docbook @@ -0,0 +1,97 @@ + + +]> + + + +BenBurton bab@debian.org +7 de Abril de 2003 + + + +extend_dmalloc +1 + + + +extend_dmalloc +Analisa os endereços de retorno de ficheiros de registo dmalloc. + + + +extend_dmalloc + + + +Descrição + +O extend_dmalloc irá executar o gdb(1) para obter informações sobre os endereços devolvidos num ficheiro de registo do dmalloc(1). Especificamente, ele irá examinar as linhas ra= e tentará obter os números de linha correspondentes + +O argumento deverá ser o executável que gerou o registo registo-dmalloc. + +Este utilitário faz parte do Kit de Desenvolvimento de Software (SDK) do &kde;. + + + + + +Notas +Poderá querer direccionar o resultado do extend_dmalloc para um ficheiro, caso contrário o gdb parece ficar à espera de algum retorno, como se estivesse no fim de uma página. + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-extractrc.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-extractrc.1.docbook new file mode 100644 index 00000000000..072c0f251fd --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-extractrc.1.docbook @@ -0,0 +1,74 @@ + + +]> + + + +BenBurton bab@debian.org +7 de Abril de 2003 + + + +extractrc +1 + + + +extractrc +Extrai mensagens de ficheiro UI e GUI-RC + + + +extractrc + + + +Descrição + +O extractrc obtém todas as marcas de texto e de outras mensagens nos ficheiros indicados e escreve as mensagens correspondentes do i18n() no 'standard output', para que o 'xgettext' as consiga processar. + +Conhece ficheiros (&Qt;/&kde;) designer UI e ficheiros &XML; GUI-RC. + +Este utilitário faz parte do Kit de Desenvolvimento de Software do KDE. + + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-fixincludes.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-fixincludes.1.docbook new file mode 100644 index 00000000000..8c90e9d93ba --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-fixincludes.1.docbook @@ -0,0 +1,166 @@ + + +]> + + + +BenBurton bab@debian.org +7 de Abril de 2003 + + + +fixincludes +1 + + + +fixincludes +Reduz o número de #includes em ficheiro de código do &kde; + + + +fixincludes + + + +Descrição + +O fixincludes tenta reduzir o número de inclusões (#include) nos ficheiros de código em C++. Muito do processamento deste é específico do código do &kde; e, como tal, poderá não funcionar tão bem com o código das aplicações não-&kde;. + +Os seguintes problemas são identificados pelo fixincludes: + + + +A inclusão de ficheiros que já não sejam suportados, mas que ainda existam por compatibilidade com versões mais antigas do Qt/KDE; + + +Incluir o mesmo ficheiro várias vezes. + + + +Existe também um modo experimental que tenta remover cada um dos #include's de cada vez (com algumas excepções) para ver se o código compila à mesma. Lembre-se que este modo experimental irá modificar o código original. + +Por omissão, o código não será modificado; os problemas identificados simplesmente serão apresentados no 'standard output'. + +A lista de ficheiros de C++ a examinar deverá ser indicada na linha de comandos. Se não forem indicados ficheiros, todo o código em C++ dentro e/ou abaixo da pasta actual será examinado (com a excepção das pastas cujo Makefile.am contenha ou ) + +Este utilitário faz parte do Kit de Desenvolvimento de Software do KDE. + + + + +Opções + + + + +Modo descritivo. Será mostrada alguma informação adicional de depuração no 'standard output'. + + + +O modo experimental, tal como foi descrito, em detalhe. Lembre-se que esta opção implica a . + + + +Assim como escreve as mensagens no 'standard output', efectua de facto as modificações ao código original, de modo a corrigir os problemas encontrados. + + + + + + +Autores +O fixincludes foi criado por Dirk Mueller mueller@kde.org. + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-po2xml.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-po2xml.1.docbook new file mode 100644 index 00000000000..c93e6891107 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-po2xml.1.docbook @@ -0,0 +1,100 @@ + + +]> + + + +BenBurton bab@debian.org +8 de Abril de 2003 + + + +po2xml +1 + + + +po2xml +Traduz para um ficheiro de DocBook em XML, usando um ficheiro PO + + + +po2xml + + + +Descrição + +O po2xml é uma ferramenta da linha de comandos que traduz o ficheiro de DocBook em XML XML-original, usando o ficheiro de mensagens do 'gettext' PO-traduzido. O ficheiro de XML traduzido daí resultante é enviado para o 'standard output'. + +Este utilitário faz parte do Kit de Desenvolvimento de Software do KDE. + + + + +Veja Também + +split2po(1), swappo(1), transxx(1), xml2pot(1) + + + + +Autores +As ferramentas PO-XML foram escritas por &Stephan.Kulow; &Stephan.Kulow.mail; +Esta página de manual foi preparada por BenBurtonbab@debian.org + + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-pruneemptydirs.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-pruneemptydirs.1.docbook new file mode 100644 index 00000000000..96f1ef313db --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-pruneemptydirs.1.docbook @@ -0,0 +1,110 @@ + + +]> + + + +BenBurtonbab@debian.org +8 de Abril de 2003 + + + +pruneemptydirs +1 + + + +pruneemptydirs +Detecta pastas inúteis de código numa árvore de CVS + + + +pruneemptydirs + + + +Descrição + +O pruneemptydirs é usado para limpar uma árvore de CVS local. Ele detecta as pastas que contenham restos de coisas antigas que tenham sido removidas do CVS. Essas pastas inúteis normalmente comprometem a compilação. Será examinada a pasta actual, bem como todas as subpastas desta. + +Lembre-se que esta ferramenta não remove nada; simplesmente imprime o que fazer, como uma série de comandos de remoção. Você poderá copiar e colar este comandos ou usá-los com o comando 'eval' num programa. + +Esta ferramenta funciona melhor se a pasta de código não for a mesma que a pasta de compilação, dado que não irá imprimir as pastas que contenham executáveis antigos. + +Este utilitário faz parte do Kit de Desenvolvimento de Software do KDE. + + + + +Opções + + + + +Efectua de facto as remoções, em vez de as imprimir apenas. Use esta opção com cuidado. + + + + + + +Autores + +pruneemptydirs foi escrito por &David.Faure; &David.Faure.mail; +Esta página de manual foi preparada por BenBurtonbab@debian.org + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-qtdoc.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-qtdoc.1.docbook new file mode 100644 index 00000000000..c5737bb8414 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-qtdoc.1.docbook @@ -0,0 +1,138 @@ + + +]> + + + +BenBurtonbab@debian.org +8 de Abril de 2003 + + + +qtdoc +1 + + + +qtdoc +Abre uma página de ajuda do &Qt; no &konqueror; + + + +qtdoc + + + +Descrição + +O qtdoc abre uma página de ajuda &Qt; no &konqueror;. Se o nome-classe for indicado, ele abre a página de ajuda para esta classe. Caso contrário, é aberta a página de ajuda principal do &Qt;. O nome-classe não faz distinção entre maiúsculas e minúsculas. + +Este utilitário faz parte do Kit de Desenvolvimento de Software (SDK) do &kde; + + + + +Ambiente + + + +QTDIR +A pasta sob a qual o &Qt; está instalado. A página principal de ajuda do &Qt; supõe-se existir dentro da $QTDIR/doc/html/. + + + + + + +Exemplos + +Para mostrar alguma ajuda sobre a classe QString: +qtdoc + + + +Veja Também + +kdedoc(1), assistant(1) + + + + + +Autores + +Esta página de manual foi preparada por BenBurtonbab@debian.org + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-reportview.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-reportview.1.docbook new file mode 100644 index 00000000000..829b2d2e595 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-reportview.1.docbook @@ -0,0 +1,140 @@ + +IanReinhartGeiser"> +geiseri@kde.org"> +kweather"> +NadeemHasan"> +nhasan@kde.org"> + +]> + + + +BenBurtonbab@debian.org +7 de Abril de 2003 + + + +reportview +1 + + + +reportview +pede ao KWeatherService que mostre um boletim meteorológico + + + +reportview; + + + +Descrição + +reportview não deve ser utilizado directamente. + +O reportview é um pequeno programa que pede ao KWeatherService um relatório meteorológico. As informações incluem a temperatura, a velocidade do evento e a pressão do ar. + +O KWeatherService é um serviço de DCOP que é usado tanto pelo 'reportview' como pela 'applet' do painel do &kweather; para oferecer dados meteorológicos. Não existe a necessidade de iniciar o KWeatherService em separado; o 'reportview' irá iniciar o próprio serviço, se necessário. + + + + + +Veja Também + +kweather(1) + +Está disponível mais alguma informação detalhada para o utilizador em help:/kweather (tanto poderá indicar este URL no &konqueror;, como executar o khelpcenter help:/kweather). + + + + +Autores + +&kweather; foi escrito por &Ian.Reinhart.Geiser; &Ian.Reinhart.Geiser.mail; e &Nadeem.Hasan; &Nadeem.Hasan.mail; +Esta página de manual foi preparada por BenBurtonbab@debian.org + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-split2po.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-split2po.1.docbook new file mode 100644 index 00000000000..5fea8c11614 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-split2po.1.docbook @@ -0,0 +1,108 @@ + + +]> + + + +BenBurtonbab@debian.org +7 de Abril de 2003 + + + +split2po +1 + + + +split2po +Cria um ficheiro po a partir de dois ficheiros DocBook XML + + + +split2po + + + +Descrição + +O split2po é uma ferramenta da linha de comandos que recebe os dois ficheiros DocBook em XML e produz um ficheiro de mensagens do gettext (ficheiro PO), que representa as alterações entre estes. O ficheiro PO resultante é enviado para o 'standard output'. + +O XML-traduzido deverá ser o resultado da tradução do XML-original para outra língua. Esta é a tradução que o ficheiro PO resultante irá representar. + +Este utilitário faz parte do Kit de Desenvolvimento de Software do KDE. + + + + +Veja Também + +po2xml(1), swappo(1), transxx(1), xml2pot(1) + + + + +Autores + +As ferramentas de PO para XML foram criadas por &Stephan.Kulow; &Stephan.Kulow.mail; +Esta página de manual foi preparada por BenBurtonbab@debian.org + + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-swappo.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-swappo.1.docbook new file mode 100644 index 00000000000..f5066e69803 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-swappo.1.docbook @@ -0,0 +1,98 @@ + + +]> + + + +BenBurtonbab@debian.org +7 de Abril de 2003 + + + +swappo +1 + + + +swappo +troca os campos msgid e msgstr num ficheiro PO + + + +swappo + + + +Descrição + +O swappo lê o ficheiro PO indicado e troca os campos 'msgid' e 'msgstr' para todas as mensagens. O resultado é um novo ficheiro PO que é traduzido na direcção inversa. Por exemplo, se o ficheiro PO traduz de Inglês para Francês, o novo ficheiro PO irá traduzir de Francês para Inglês. + +O novo ficheiro PO será escrito no 'standard output'. O ficheiro PO antigo será deixado tal como está. + +Este utilitário faz parte do Kit de Desenvolvimento de Software (SDK) do &kde; + + + + +Veja Também + +po2xml(1), split2po(1), transxx(1), xml2pot(1) + + + + +Autores +As ferramentas PO-XML foram escritas por &Stephan.Kulow; &Stephan.Kulow.mail; +Esta página de manual foi preparada por BenBurtonbab@debian.org + + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-transxx.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-transxx.1.docbook new file mode 100644 index 00000000000..b647007ae2b --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-transxx.1.docbook @@ -0,0 +1,96 @@ + + +]> + + + +BenBurtonbab@debian.org +7 de Abril de 2003 + + + +transxx +1 + + + +transxx +Cria um pseudo ficheiro PO traduzido de um ficheiro de modelo PO + + + +transxx + + + +Descrição + +O transxx é uma ferramenta da linha de comandos que produz um ficheiro PO básico a partir de um ficheiro-modelo PO. Alguma da formatação e estrutura dos textos do 'msgid' será copiada para o texto do 'msgstr', só que o texto será traduzido como xx. + +O ficheiro PO pseudo traduzido é enviado para o 'standard output'. + +A execução do seu programa com a língua xx mostrar-lhe-á rapidamente todos os textos visíveis para o utilizador que não estejam a ser traduzidos de momento. + +Este utilitário faz parte do Kit de Desenvolvimento de Software do KDE. + + + + +Autores + +As ferramentas PO-XML foram escritas por &Stephan.Kulow; &Stephan.Kulow.mail; +Esta página de manual foi preparada por BenBurtonbab@debian.org + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-xml2pot.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-xml2pot.1.docbook new file mode 100644 index 00000000000..762346e76ff --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-xml2pot.1.docbook @@ -0,0 +1,103 @@ + + +]> + + + +BenBurtonbab@debian.org +7 de Abril de 2003 + + + +xml2pot +1 + + + +xml2pot +Cria um ficheiro de modelo PO a partir de um ficheiro XML do DocBook. + + + +xml2pot + + + +Descrição + +O xml2pot é uma ferramenta da linha de comandos que produz um ficheiro de modelo de mensagens do 'gettext' a partir do ficheiro XML de DocBook original XML-original. O ficheiro de modelo é enviado para o 'standard output'. + +O ficheiro de modelo resultante poderá ser usado para criar ficheiros de mensagens do 'gettext' (ficheiros PO) para uma variedade de línguas. Estes poderão então ser usados com o po2xml(1) para traduzir o ficheiro XML original para estas outras línguas. + + +Este utilitário faz parte do Kit de Desenvolvimento de Software do KDE. + + + + +Veja Também + +po2xml(1), split2po(1), swappo(1), transxx(1) + + + + +Autores + +As ferramentas de PO para XML foram criadas por &Stephan.Kulow; &Stephan.Kulow.mail; +Esta página de manual foi preparada por BenBurtonbab@debian.org + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/man-zonetab2pot.1.docbook b/tde-i18n-pt/docs/tdesdk/scripts/man-zonetab2pot.1.docbook new file mode 100644 index 00000000000..c0004bfbd3f --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/man-zonetab2pot.1.docbook @@ -0,0 +1,102 @@ + + +]> + + + +BenBurton +7 de Abril de 2003 + + + +zonetab2pot.py +1 + + + +zonetab2pot.py +Converte uma lista de fusos-horários para um modelo de um ficheiro PO. + + + +zonetab2pot.py + + + +Descrição + +O zonetab2pot.py lê a lista de fusos-horários na linha de comandos e converte-a para um ficheiro modelo de mensagens do 'gettext' (ficheiro PO), contendo os nomes dos fusos-horários individualmente. + +A lista de fusos-horários indicada deverá estar no mesmo formato que a tabela de zonas do sistema. Se não for indicada qualquer lista na linha de comandos, é usado o ficheiro /usr/share/zoneinfo/zone.tab. + +O novo modelo de ficheiro PO será gravado no 'standard output'. + +Este utilitário faz parte do Kit de Desenvolvimento de Software do KDE. + + + + +Autores + +O zonetab2pot.py foi criado por LukasTinkllukas@kde.org +Esta página de manual foi preparada por BenBurtonbab@debian.org + + + diff --git a/tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/Makefile.am b/tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/Makefile.am new file mode 100644 index 00000000000..70bf689f3a2 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/Makefile.am @@ -0,0 +1,4 @@ +KDE_LANG = pt +SUBDIRS = $(AUTODIRS) +KDE_DOCS = tdesvn-build +KDE_MANS = AUTO diff --git a/tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/Makefile.in b/tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/Makefile.in new file mode 100644 index 00000000000..b8474a7e642 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/Makefile.in @@ -0,0 +1,635 @@ +# Makefile.in generated by automake 1.10.1 from Makefile.am. +# KDE tags expanded automatically by am_edit - $Revision: 483858 $ +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +subdir = docs/tdesdk/scripts/tdesvn-build +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.in +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +SOURCES = +DIST_SOURCES = +#>- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ +#>- html-recursive info-recursive install-data-recursive \ +#>- install-dvi-recursive install-exec-recursive \ +#>- install-html-recursive install-info-recursive \ +#>- install-pdf-recursive install-ps-recursive install-recursive \ +#>- installcheck-recursive installdirs-recursive pdf-recursive \ +#>- ps-recursive uninstall-recursive +#>+ 7 +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive nmcheck-recursive bcheck-recursive +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) +#>- DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +#>+ 1 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +ARTSCCONFIG = @ARTSCCONFIG@ +AUTOCONF = @AUTOCONF@ +AUTODIRS = @AUTODIRS@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CONF_FILES = @CONF_FILES@ +CYGPATH_W = @CYGPATH_W@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOPIDLNG = @DCOPIDLNG@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DEFS = @DEFS@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +GMSGFMT = @GMSGFMT@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +KCFG_DEPENDENCIES = @KCFG_DEPENDENCIES@ +KCONFIG_COMPILER = @KCONFIG_COMPILER@ +KDECONFIG = @KDECONFIG@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_RPATH = @KDE_RPATH@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MAKEKDEWIDGETS = @MAKEKDEWIDGETS@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XMLLINT = @XMLLINT@ +X_RPATH = @X_RPATH@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +am__leading_dot = @am__leading_dot@ +am__tar = @am__tar@ +am__untar = @am__untar@ +#>- bindir = @bindir@ +#>+ 2 +DEPDIR = .deps +bindir = @bindir@ +build_alias = @build_alias@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host_alias = @host_alias@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_kcfgdir = @kde_kcfgdir@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_styledir = @kde_styledir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +kde_widgetdir = @kde_widgetdir@ +tdeinitdir = @tdeinitdir@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +xdg_appsdir = @xdg_appsdir@ +xdg_directorydir = @xdg_directorydir@ +xdg_menudir = @xdg_menudir@ +KDE_LANG = pt +#>- SUBDIRS = $(AUTODIRS) +#>+ 1 +SUBDIRS =. +KDE_DOCS = tdesvn-build +KDE_MANS = AUTO +#>- all: all-recursive +#>+ 1 +all: docs-am all-recursive + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +#>- @for dep in $?; do \ +#>- case '$(am__configure_deps)' in \ +#>- *$$dep*) \ +#>- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ +#>- && exit 0; \ +#>- exit 1;; \ +#>- esac; \ +#>- done; \ +#>- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/scripts/tdesvn-build/Makefile'; \ +#>- cd $(top_srcdir) && \ +#>- $(AUTOMAKE) --gnu docs/tdesdk/scripts/tdesvn-build/Makefile +#>+ 12 + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/scripts/tdesvn-build/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/scripts/tdesvn-build/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/scripts/tdesvn-build/Makefile.in +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +$(RECURSIVE_CLEAN_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +#>- distdir: $(DISTFILES) +#>+ 1 +distdir: distdir-nls $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done + list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + distdir=`$(am__cd) $(distdir) && pwd`; \ + top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$top_distdir" \ + distdir="$$distdir/$$subdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +#>- uninstall: uninstall-recursive +#>+ 1 +uninstall: uninstall-docs uninstall-nls uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +#>- clean-am: clean-generic mostlyclean-am +#>+ 1 +clean-am: clean-docs clean-bcheck clean-generic mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +info: info-recursive + +info-am: + +#>- install-data-am: +#>+ 1 +install-data-am: install-docs install-nls + +install-dvi: install-dvi-recursive + +install-exec-am: + +install-html: install-html-recursive + +install-info: install-info-recursive + +install-man: + +install-pdf: install-pdf-recursive + +install-ps: install-ps-recursive + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ + install-strip + +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic ctags \ + ctags-recursive distclean distclean-generic distclean-tags \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ + tags-recursive uninstall uninstall-am + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: + +#>+ 2 +KDE_DIST=index.docbook index.cache.bz2 Makefile.in Makefile.am + +#>+ 24 +index.cache.bz2: $(srcdir)/index.docbook $(KDE_XSL_STYLESHEET) index.docbook + @if test -n "$(MEINPROC)"; then echo $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; fi + +docs-am: index.cache.bz2 + +install-docs: docs-am install-nls + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/tdesvn-build + @if test -f index.cache.bz2; then \ + echo $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/tdesvn-build/; \ + $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/tdesvn-build/; \ + elif test -f $(srcdir)/index.cache.bz2; then \ + echo $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/tdesvn-build/; \ + $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/tdesvn-build/; \ + fi + -rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/tdesvn-build/common + $(LN_S) $(kde_libs_htmldir)/$(KDE_LANG)/common $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/tdesvn-build/common + +uninstall-docs: + -rm -rf $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/tdesvn-build + +clean-docs: + -rm -f index.cache.bz2 + + +#>+ 13 +install-nls: + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/tdesvn-build + @for base in index.docbook ; do \ + echo $(INSTALL_DATA) $$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/tdesvn-build/$$base ;\ + $(INSTALL_DATA) $(srcdir)/$$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/tdesvn-build/$$base ;\ + done + +uninstall-nls: + for base in index.docbook ; do \ + rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/tdesvn-build/$$base ;\ + done + + +#>+ 5 +distdir-nls: + for file in index.docbook ; do \ + cp $(srcdir)/$$file $(distdir); \ + done + +#>+ 15 +force-reedit: + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/scripts/tdesvn-build/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/scripts/tdesvn-build/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/scripts/tdesvn-build/Makefile.in + + +#>+ 21 +clean-bcheck: + rm -f *.bchecktest.cc *.bchecktest.cc.class a.out + +bcheck: bcheck-recursive + +bcheck-am: + @for i in ; do \ + if test $(srcdir)/$$i -nt $$i.bchecktest.cc; then \ + echo "int main() {return 0;}" > $$i.bchecktest.cc ; \ + echo "#include \"$$i\"" >> $$i.bchecktest.cc ; \ + echo "$$i"; \ + if ! $(CXX) $(DEFS) -I. -I$(srcdir) -I$(top_builddir) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) --dump-class-hierarchy -c $$i.bchecktest.cc; then \ + rm -f $$i.bchecktest.cc; exit 1; \ + fi ; \ + echo "" >> $$i.bchecktest.cc.class; \ + perl $(top_srcdir)/admin/bcheck.pl $$i.bchecktest.cc.class || { rm -f $$i.bchecktest.cc; exit 1; }; \ + rm -f a.out; \ + fi ; \ + done + + +#>+ 3 +final: + $(MAKE) all-am + +#>+ 3 +final-install: + $(MAKE) install-am + +#>+ 3 +no-final: + $(MAKE) all-am + +#>+ 3 +no-final-install: + $(MAKE) install-am + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo + +#>+ 3 +nmcheck: +nmcheck-am: nmcheck diff --git a/tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/index.cache.bz2 b/tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/index.cache.bz2 new file mode 100644 index 00000000000..e271579de44 Binary files /dev/null and b/tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/index.cache.bz2 differ diff --git a/tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/index.docbook b/tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/index.docbook new file mode 100644 index 00000000000..1c245676940 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/scripts/tdesvn-build/index.docbook @@ -0,0 +1,1725 @@ + + + + + + Subversion"> + tdesvn-build"> +]> + + + + +Manual do 'Script' &tdesvn-build; + + +MichaelPyne
michael.pyne@kdemail.net
+
+CarlosWoelz
carloswoelz@imap-mail.com
+
+ + +JoséPires
jncp@netcabo.pt
Tradução
+ +
+ + +2005 +Michael Pyne + + + +2005 +Carlos Woelz + + + +&FDLNotice; + +2005-06-18 +0.98 + + +O &tdesvn-build; é um programa em Perl que compila e instala o &kde; directamente a partir do código existente no repositório de &svn; do &kde;. + + + +KDE +tdesdk +SVN +Subversion +Desenvolvimento KDE + + +
+ + + +Introdução + +O &tdesvn-build; é um programa em Perl que ajuda os utilizadores a instalar o &kde; a partir do &svn;. Poderá também querer considerar o programa 'kde-build' que vem incluído no módulo 'tdesdk' do &kde;. + +Aqui será documentado a sintaxe opções do ficheiro de configuração do &tdesvn-build;, as suas opções da linha de comandos, as funcionalidades e uma introdução a todos os passos necessários para compilar o &kde; a partir do código, incluindo os passos que deverá efectuar ao usar as outras ferramentas ou, por outras palavras, os passos que não são efectuados automaticamente pelo programa &tdesvn-build;. + + + + +Começar + +Neste capítulo, será apresentada a forma de utilização do &tdesvn-build; para obter os módulos do repositório do &kde; e os compilar. Será dada também uma explicação básica da estrutura de &svn; do &kde; e os passos que terá de efectuar antes de executar o programa. + +Todos os tópicos presentes neste capítulo são cobertos com ainda mais detalhe na secção Guia de Compilação do Código do &kde; Passo-a-Passo, na Página Web da Equipa de Qualidade do &kde;. Se estiver a compilar o KDE pela primeira vez, é uma boa ideia lê-lo ou consultá-lo como fonte de referência. Irá encontrar informações detalhada sobre as ferramentas de empacotamento e os requisitos, os problemas de compilação comuns e as estratégias e informações sobre a execução da instalação do seu novo &kde;. + + +Preparar o Sistema para Compilar o &kde; + +Recomenda-se que transfira e compile o &kde; com uma conta de utilizador. Se já tiver os pacotes do &kde; instalados, a melhor opção será criar um utilizador diferente (dedicado) para compilar e executar o novo &kde;. A vantagem de compilar o &kde; com um utilizador dedicado é que não poderá corromper o sistema de base e terá sempre uma forma de trabalhar confortavelmente quando as coisas correrem mal. + +Mais tarde, poderá fazer uma instalação como 'root' se o desejar. Este documento não cobre uma instalação como 'root'. Se estiver a efectuar uma instalação a nível do sistema, provavelmente já deverá saber o que está a fazer. + +Antes de usar o programa &tdesvn-build; (ou qualquer outra estratégia de compilação), deverá instalar as ferramentas de desenvolvimento e bibliotecas necessárias para o &kde;. Necessita da biblioteca Qt, versão 3.3.0 ou posterior, do Automake 1.8, Autoconf 2.5X (melhor se +>=2.57, dado que foi detectado um erro com as versões anteriores), o cliente do 'subversion' (svn), o compilador 'gcc' com o suporte de C++, a libxml2, o openssl, a libbz2 entre outras coisas (para uma lista completa, visite os Requisitos de Compilação do KDE). Poderá obter normalmente estas ferramentas para o seu sistema, a partir da sua distribuição ou fornecedor. + +Alguns destes pacotes estão divididos em bibliotecas, programas ou utilitários e pacotes de desenvolvimento. Irá necessitar, pelo menos do programa ou biblioteca e do seu pacote de desenvolvimento. Se tiver dúvidas, instale tudo. As bibliotecas que necessita irão variar de acordo com os módulos que pretende compilar, dado que cada módulo tem os seus próprio requisitos. O Guia de Compilação do Código do &kde; Passo-a-Passo tem mais detalhes sobre as ferramentas e técnicas específicas usadas para instalar e encontrar o 'software' necessário. + +Poderá já ter uma versão do programa &tdesvn-build; instalada no seu sistema. O &tdesvn-build; obriga a que você crie um ficheiro de configuração chamado .tdesvn-buildrc. Este ficheiro deverá ser instalado na pasta pessoal (~/), e contém todos os dados de configuração necessários para o programa correr, como as opções de configuração, compilação, a localização do código, o destino da instalação (prefixo), os módulos que serão compilados, &etc;. Os dados de configuração por omissão são oferecidos pelo ficheiro tdesvn-buildrc-sample. Poderá encontrar mais informações sobre a sintaxe do ficheiro de configuração em e . + +Uma boa forma de obter a última versão é escolher a página 'tdesdk/scripts' da página Web do websvn.kde.org. Irá ver uma lista dos ficheiros disponíveis na pasta 'tdesdk/scripts' do repositório de &svn; do &kde;. Carregue na ligação do &tdesvn-build; e transfira a última versão do programa. Faça o mesmo para o ficheiro tdesvn-buildrc-sample. Torne o programa executável e verifique se está na sua PATH. + + + + +Definir os Dados de Configuração + +Para usar o programa, deverá ter um ficheiro na sua pasta pessoal chamado .tdesvn-buildrc, que define as opções gerais e os módulos que deseja transferir e compilar. + +Use o ficheiro tdesvn-buildrc-sample como modelo, defina as opções globais e os módulos que deseja compilar. + +Seleccione o servidor de onde deseja obter o &svn;, definindo a opção global 'svn-server'. O valor por omissão é o servidor &svn; anónimo, o svn://anonsvn.kde.org/, mas está à vontade para alterá-lo se tiver uma conta de &svn; do &kde; ou, se existir, uma réplica perto de si. + +Preste bastante atenção às variáveis globais 'kdedir' e 'qtdir', dado que a primeira define onde o seu &kde; irá ser instalado (por omissão em ~/kde), e o segundo diz onde (e se) a sua biblioteca Qt irá ser compilada e instalada, (por omissão em ~/tdesvn/build/qt-copy). Terá de saber mais tarde a localização da 'kdedir' e da 'qtdir', para configurar as variáveis de ambiente que são necessárias para executar a sua instalação nova. Verifique se os módulos indicados são, de facto, os módulos que pretende compilar. As opções por omissão do ficheiro tdesvn-buildrc-sample deverão ser suficientes para obter uma instalação relativamente completa do &kde;. Grave o resultado como .tdesvn-buildrc na sua pasta pessoal. + +Se desejar afinar o seu ficheiro .tdesvn-buildrc, consulte o para obter informação mais detalhada sobre todas as opções de configuração. + + + + +Usar o 'script' &tdesvn-build; + +Agora está pronto para executar o programa. A partir de uma janela de termina, autentique-se com o utilizador que usa para compilar o &kde; e execute o programa: %su utilizador +%tdesvn-build + + + +Agora, o programa deverá começar a ir obter o código-fonte e a compilá-lo. É pouco provável que corra tudo bem da primeira vez que compilar o &kde;. Não desespere! Verifique os ficheiros de registo para ver se faltam algumas ferramentas ou pacotes de desenvolvimento (a localização dos ficheiros de registo é definida pela variável 'log-dir' no ficheiro de configuração). Algumas vezes, a ramificação de desenvolvimento principal fica muito instável e difícil de compilar, principalmente quando está próximo um congelamento do desenvolvimento. Tenha paciência. Poderá descobrir mais exemplos comuns das coisas que poderão correr mal e as suas soluções, assim como dicas e estratégias gerais para compilar o &kde; no Guia de Compilação do Código do &kde; Passo-a-Passo. + + + + +Configurar o Ambiente para Executar o seu &kde; Novo + +Assumindo que está a usar um utilizador dedicado para compilar o &kde; e já tem uma versão do &kde; instalada, a execução do seu &kde; novo poderá ter os seus truques, dado que o &kde; novo terá de ter precedência sobre o antigo. Mude as variáveis de ambiente para garantir que isso acontece. + +Abra ou crie o ficheiro .bash_profile na sua pasta pessoal com o seu editor favorito e adicione o seguinte ao fim do ficheiro: +KDEDIR=(local do kdedir) +KDEDIRS=$KDEDIR +PATH=$KDEDIR/bin:$QTDIR/bin:$PATH +LD_LIBRARY_PATH=$KDEDIR/lib:$LD_LIBRARY_PATH +export KDEDIRS PATH LD_LIBRARY_PATH + Se estiver a compilar o módulo 'qt-copy', adicione em alternativa: QTDIR=(local do qtdir) +KDEDIR=(local do kdedir) +KDEDIRS=$KDEDIR +PATH=$KDEDIR/bin:$QTDIR/bin:$PATH +MANPATH=$QTDIR/doc/man:$MANPATH +LD_LIBRARY_PATH=$KDEDIR/lib:$QTDIR/lib:$LD_LIBRARY_PATH +export QTDIR KDEDIRS PATH MANPATH LD_LIBRARY_PATH + + + +Se não estiver a usar um utilizador dedicado, defina um novo $KDEHOME para o seu novo ambiente no seu ficheiro .bash_profile: export KDEHOME="${HOME}/.kde-svn" + +# Criar a pasta se necessário +[ ! -e ~/.kde-svn ] && mkdir ~/.kde-svn + + + + +Se, mais tarde, o seu menu estiver vazio ou completamente cheio de aplicações da sua distribuição, poderá ter de definir o as suas variáveis de ambiente do 'xdg' no seu .bash_profile: XDG_CONFIG_DIRS="/etc/xdg" +XDG_DATA_DIRS="${KDEDIR}/share:/usr/share" +export XDG_CONFIG_DIRS XDG_DATA_DIRS + + + + + +Agora que terminou o que tinha para fazer, certifique-se que será usado o starttde correcto: + +Abra o ficheiro de texto .xinitrc (ou o .xsession, dependendo da distribuição) da pasta pessoal, ou crie-o se necessário. Adicione a linha: exec ${KDEDIR}/bin/starttde + + + +Agora inicie o seu &kde; novo: nos sistemas BSD e Linux, com o suporte para terminais virtuais, os atalhos Ctrl+Alt+F1...F12 são usados para mudar para a Consola Virtual 1 a 12. Isto permite-lhe executar mais que um ambiente gráfico ao mesmo tmpo. Os primeiros seis são terminais de texto e os seis seguintes são gráficos. + +Quando você arranca, é-lhe apresentado o gestor gráfico, em alternativa. Poderá usar o novo ambiente do KDE, mesmo que não apareça como opção. Carregue em Ctrl + Alt + F2, para que lhe apareça um terminal de texto. Autentique-se com o utilizador dedicado e escreva: + +startx -- :1 + + + +Poderá executar o KDE a partir do código e o KDE antigo ao mesmo tempo! Autentique-se com o seu utilizador normal e inicie o ambiente do KDE estável. Carregue em Ctrl + Alt + F2 (ou F1, F3, etc..), para que lhe apareça um terminal de texto. Ligue-se com o utilizador dedicado e escreva "startx -- :1". Poderá voltar ao utilizador normal, carregando em Ctrl + Alt + F6 (Ou F7, F8, etc... Experimente! Um deles é o correcto.) Para voltar ao KDE a partir do código, carregue em Ctrl + Alt + F7 (ou F6, F8,etc..). Agora poderá mudar entre as suas versões do KDE e teste a nova, sabendo que poderá voltar rapidamente à segurança do ambiente estável do KDE. + + + + + + + + +Funcionalidades do Programa + +As funcionalidades do &tdesvn-build; incluem: + + + + +Obtém ou actualiza automaticamente os módulos do &svn;, à medida das necessidades. + +Agenda o processo de compilação dos módulos. + +Tenta automaticamente compilar de novo os módulos que foram compilados com o 'make' incremental, que está sujeito a erros ao fim de algumas modificações. + +Poderá retomar uma execução anterior ou iniciar o processo de compilação de um determinado módulo. + +Vem incorporado com um conjunto seguro de opções predefinidas, apropriadas para compilar uma instalação mono-utilizador de base do &kde; a partir do repositório de &svn; anónimo. + +Vem com suporte para o Unsermake. + +Expansão do til (~) para as suas opções de configuração. Por exemplo, poderá indicar: qtdir ~/tdesvn/build/qt-copy + + +Pastas configuráveis para compilação, para o código-fonte e para registos. + +Configura automaticamente um sistema de compilação com uma pasta de compilação diferente da pasta de código, para manter impecável a pasta de código. A única excepção é o qt-copy, que não está desenhado para ser compilado dessa forma (a menos que queira testar o truque do Qt com uma pasta de compilação separada). + +Poderá indicar as opções globais a aplicar a todos os módulos a obter, assim como poderá indicar opções para se aplicar aos módulos individuais. + +Dado que as ferramentas 'auto*' normalmente perdem a sincronização com as modificações na árvore de código, poderá forçar uma nova compilação de um módulo, se criar um ficheiro chamado '.refresh-me' na pasta de compilação do módulo em questão ou executando o &tdesvn-build; com a opção . + +Poderá indicar vários valores de ambiente a usar durante a compilação, incluindo o KDEDIR, o QTDIR, o DO_NOT_COMPILE e o CXXFLAGS. + +Registo dos comandos. Os ficheiros de registo são datados e numerados, para que tenha sempre um relatório de execução de um programa. Do mesmo modo, é criada uma ligação simbólica 'latest' para apontar sempre para o item de registo mais recente na pasta respectiva. + +Se estiver a usar uma compilação de utilizador do &kde;, em vez de uma instalação do sistema (para a qual necessita de ser o 'root' para instalar), poderá usar o programa para o instalar por si. Não foi ainda validado o código e este faz uma utilização ampla da chamada system(), como tal, não é recomendado executá-lo como 'root' nesta altura. + +Poderá usar o make-install-prefix para anteceder o comando 'make install' com um comando separado, o que poderá ser útil para o 'sudo'. + +Poderá usar a opção apidox para compilar e instalar automaticamente a documentação da API para alguns módulos. + +Poderá obter apenas uma parte de um módulo do &kde; no &svn;. Por exemplo, poderá obter apenas a biblioteca taglib do tdesupport ou apenas o K3B do extragear/multimedia. O programa irá obter automaticamente o kde-common, se for necessário para fazer a compilação funcionar. + +Poderá fingir efectuar as operações. Se passar a opção ou na linha de comandos, o programa dar-lhe-á uma descrição mais extensiva dos comandos que estará prestes a executar, sem os executar de facto. + +Suporte para obter ramificações ('branches') específicas dos módulos do &svn;. Este trabalho ainda necessita de ser terminado, mas já poderá seleccionar a ramificação que pretende compilar com a opção de configuração 'module-base-path'. + + + +As coisas que o &tdesvn-build; NÃO faz: + + + +Descobrir a réplica do &svn; do &kde; mais rápida. Não existe sequer uma lista a acompanhar o programa nesta altura, ainda que o servidor por omissão deva funcionar perfeitamente. + +Lavar-lhe os dentes. Isso deverá partir de si à mesma. + +O programa, provavelmente, não está livre de erros. Desculpe por isso. + + + + + + +O Formato do '.tdesvn-buildrc' + +Para usar o programa, deverá ter um ficheiro na sua pasta pessoal .tdesvn-buildrc, que descreve os módulos que deseja obter e compilar. + + + +Ele começa com as opções globais, indicadas da seguinte forma: + +global +nome-opção valor-opção +[...] +end global + + +Segue-se então uma ou mais secções dos módulos, organizadas da seguinte forma: + +module nome-módulo +nome-opção valor-opção +[...] +end module + + +O nome-módulo deverá ser um módulo do repositório de &svn; do &kde; (por exemplo, o 'tdelibs' ou o 'tdebase'). Algumas das opções sobrepõem-se às globais, algumas adicionam-se às opções globais e algumas opções globais simplesmente não podem ser sobrepostas. + +Segue-se uma lista ordenada alfabeticamente das opções que poderá usar. Carregue na opção para descobrir mais sobre ela. Se alguma não estiver documentada, envie por favor um e-mail aos autores, usando o endereço que poderá encontrar acima. + + +apidox, para compilar a Documentação da API +apply-qt-patches, para melhorar o 'qt-copy' +binpath, para definir a variável PATH. +branch, para obter uma dada ramificação, em vez da '/trunk'. +build-dir, para definir a pasta onde será feita a compilação. +checkout-only, para transferir apenas as partes de um módulo. +colorful-output para colorir o resultado do programa. +configure-flags para definir as opções com que um módulo poderá ser configurado. +cxxflags para definir a variável CXXFLAGS. +dest-dir para mudar a pasta de instalação de um módulo. +disable-agent-check, para impedir que o 'tdesvn-build' verifique o estado do 'ssh-agent'. +do-not-compile, para marcar as pastas que não serão compiladas. +inst-apps, para só compilar e instalar algumas pastas. +install-after-build, para evitar a instalação após o processo de compilação. +kdedir, para indicar a pasta onde o KDE será instalado. +libpath, para configurar a variável LD_LIBRARY_PATH. +make-install-prefix, para executar um programa auxiliar (como o 'sudo') durante o 'make install'. +make-options, para passar opções ao programa 'make'. +manual-build, para evitar que o módulo seja compilado automaticamente. +manual-update, para evitar que seja feito, seja o que for, ao módulo de forma automática. +module-base-path, para mudar o local onde transferir o módulo (útil para as ramificações - 'branches' -, e marcas - 'tags'). +niceness, para mudar a prioridade do CPU. +no-rebuild-on-fail, para evitar executar o 'make' de novo se falhar. +qtdir, para definir a localização do Qt. +set-env, para configurar uma variável de ambiente. +source-dir, para mudar o local onde colocar o código transferido. +stop-on-failure, para fazem com que o 'tdesvn-build' pare o mais cedo possível, após encontrar um problema. +svn-server, para mudar o servidor de onde é transferido o código. +use-qt-builddir-hack, para dar ao Qt uma pasta de compilação diferente da do seu código, como acontece no KDE. +use-unsermake, para usar o sistema de compilação avançado, o 'unsermake'. + + + +Aqui está uma tabela com as opções globais, bem como alguns comentários sobre elas. As opções que se sobreporem às globais irão também sobrepor-se a uma configuração da linha de comandos. + + +Tabela de Opções + + + + +Nome da Opção +Comportamento do Módulo -> Global +Notas + + + + + + +apidox +Sobrepõe-se à global +Configure esta opção como true, para que o &tdesvn-build; compile e instale automaticamente a documentação da API do módulo, após o processo de compilação/instalação normal. Isto só funciona para os módulos em que o make apidox faz alguma coisa, e que incluem o 'tdelibs', 'tdebase' e o 'koffice', entre outros. + + + +apply-qt-patches +Sobrepõe-se à global +Esta opção só é útil para o 'qt-copy'. Se for um valor diferente de zero, então o programa 'apply-patches' do 'qt-copy' será executado antes da compilação, para aplicar as alterações não oficiais no 'qt-copy'. Dado que estas alterações são normalmente a razão para usar o 'qt-copy', em vez de um Qt oficial, não deverá haver qualquer problema em activá-las. Por omissão, está activada a aplicação destas modificações. + + + +binpath +Não poderá ser sobreposta +Active esta opção para modificar a variável de ambiente PATH durante a compilação. Não poderá sobrepor esta opção numa opção do módulo. O valor por omissão é o /bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin. Esta variável de ambiente deverá incluir os locais, separados por dois-pontos das suas ferramentas de desenvolvimento. Os locais $KDEDIR/bin e $QTDIR/bin são adicionados automaticamente. Poderá usar o til (~) para os locais que adicionar com esta opção. + + + + +branch +Sobrepõe-se à global +Altere esta opção para obter uma ramificação do KDE, em vez do valor por omissão "trunk", onde o desenvolvimento do KDE está em curso. Por exemplo, para obter a ramificação do KDE 3.4, deverá configurar esta opção como "3.4". +Lembre-se que alguns módulos usam um nome de ramificação diferente. Em concreto, o módulo obrigatório 'arts' não segue os números de versões do KDE. O 'arts' que acompanhava o KDE 3.4 era o 1.4. +Se o 'tdesvn-build' não conseguir obter adequadamente uma ramificação com esta opção, poderá ter de indicar manualmente o URL de onde transferir, com a opção override-url. + + + + +build-dir +Sobrepõe-se à global +Use esta opção para mudar a pasta que contém o código compilado. Existem três formas diferentes de o usar: Relativa à pasta de código do &kde; no &svn; (ver a opção 'source-dir'). Esta é a opção predefinida e a forma como funcionou o programa até à versão v0.61. Este modo fica seleccionado se escrever o nome de uma pasta que não comece por um til (~) ou uma barra (/). O valor por omissão é build. Um local absoluto. Se indicar um local que comece por um /, então será usado esse local directamente. Por exemplo, o /tmp/kde-obj-dir/. Relativo à sua pasta pessoal. Se indicar uma pasta que comece com um '~', então o local será usado em relação à sua pasta pessoal, de forma semelhante à expansão do til da linha de comandos. Por exemplo, o ~/builddir irá configurar a pasta de compilação como /home/utilizador/builddir. Talvez de forma surpreendente, esta opção poderá alterada por módulo. + + + +checkout-only +Sobrepõe-se à global +Altere esta opção para obter o código do &svn; passo-a-passo. O valor desta opção deverá ser uma lista separada por espaços das pastas a transferir. Se não incluir a pasta 'admin', será incluída automaticamente (se necessário). Ao transferir passo-a-passo, a pasta 'admin' será obtida do 'kde-common', que é onde se encontra no servidor do &svn;. Ainda que esta opção se sobreponha à global, tenha em atenção que esta opção, como global, não faz sentido. + + + +configure-flags +Adiciona às opções globais (excepto no 'qt-copy') +Use esta opção para indicar quais as opções a passar ao './configure' quando criar o sistema de compilação do módulo. Quando isto é usado como uma opção global, é aplicada a todos os módulos onde este programa se compila. O 'qt-copy' usa um conjunto muito diferente de opções do 'configure' do resto do &kde;, como tal esta opção sobrepõe as opções globais, quando é aplicada ao 'qt-copy'. + + + +colorful-output +Não poderá ser sobreposta +Configure esta opção como 'false' para desactivar o resultado colorido do &tdesvn-build;. Por omissão é true. Lembre-se que o &tdesvn-build; não irá mostrar os códigos de cores em nada que não seja um terminal (como o 'xterm', o &konsole; ou a consola normal do Linux). + + + +cxxflags +Adiciona-se à opção global +Use esta opção para indicar as opções a passar ao ./configure como CXXFLAGS, ao criar o sistema de compilação do módulo. Esta opção é indicada aqui em vez do configure-flags, dado que esta opção irá também definir a variável de ambiente CXXFLAGS durante o processo de compilação. + + + +dest-dir +Sobrepõe-se à global +Use esta opção para mudar o nome que é dado a um módulo no disco. Por exemplo, se o seu módulo se chamava 'extragear/network', poderá mudar o nome do mesmo para 'extragear-network' com esta opção. + + + +disable-agent-check +Não poderá ser sobreposta +Normalmente, se estiver a usar o SSH para obter o código do Subversion (se, por exemplo, estiver a usar o protocolo 'svn+ssh'), o 'tdesvn-build' irá tentar certificar-se que, se estiver a usar o 'ssh-agent', ele está de facto a gerir algumas identidades do SSH. Isto é para tentar e evitar que o SSH pergunte a sua frase-senha para todos os módulos. Poderá desactivar esta opção se activar a opção 'disable-agent-check' como 'true'. + + + +do-not-compile +Sobrepõe-se à global +Use esta opção para definir a variável de ambiente DO_NOT_COMPILE antes de executar o programa 'configure'. De acordo com a FAQ de Desenvolvimento do &kde;, este deverá ser o caso de uma pasta de topo que não deseje compilar. As pastas deverão estar separadas por espaços. + +Lembre-se que o código dos programas será à mesma transferido. Poderá usar a instrução checkout-only para escolher as pastas que deseja obter. + + + + +email-address +Não poderá ser sobreposta + +Configure esta opção com o endereço de e-mail que o 'tdesvn-build' deverá enviar, no caso de alguma vez necessitar de enviar mensagens. Não terá de se preocupar com isto se não usar qualquer funcionalidade que envie e-mails. (Elas estão todas desactivadas por omissão). + +De momento, só o email-on-compile-error é que necessita desta opção. + + + + +email-on-compile-error +Não poderá ser sobreposta + +Poderá configurar esta opção com o endereço de e-mail para onde enviar um relatório, sempre que um módulo não conseguir ser compilado. O 'tdesvn-build' irá esperar até que todos os módulos terminem e irá recolher todos os resultados no relatório. Este só é enviado se um módulo se recusar a compilar. + +Por favor, veja a opção email-address para configurar o endereço de onde o 'tdesvn-build' irá enviar, dado que o valor por omissão não é normalmente o que pretende. + + + + +inst-apps +Sobrepõe-se à global +Esta é o oposto da opção do-not-compile. Serve para indicar que apenas as pastas de topo referidas serão compiladas. As pastas deverão estar separadas por espaços. + +As alterações não farão efeito até à próxima vez que o make Makefile.cvs seja executado, quer automaticamente pelo programa, quer manualmente pelas opções ou . + +Lembre-se que o código dos programas será à mesma transferido. Poderá usar a instrução checkout-only para escolher as pastas que deseja obter. + + + + +install-after-build +Sobrepõe-se à global +Esta opção é usada para instalar o pacote depois de este ser compilado com sucesso. Esta opção está activa por omissão. Se quiser desactivá-la, terá de configurar esta opção como 0 no ficheiro de configuração. Poderá também usar a opção da linha de comandos . + + + +kdedir +Não poderá ser sobreposta +Esta opção define a pasta em que o &kde; será instalado após a compilação. Por omissão, será em ~/kde. Se mudar isto para uma pasta que necessite do acesso do 'root', poderá ter de ler acerca da opção make-install-prefix também. + + + +libpath +Não poderá ser sobreposta +Configure esta opção para definir a variável de ambiente LD_LIBRARY_PATH, enquanto efectua a compilação. Não poderá sobrepor esta opção num módulo. O valor por omissão está em branco, mas os locais $KDEDIR/lib e $QTDIR/lib são adicionados automaticamente. Poderá usar o til (~) para os locais que adicionar com esta opção. + + + +log-dir +Sobrepõe-se à global +Use esta opção para mudar a pasta que irá conter os ficheiros de registo gerados pelo programa. Esta opção poderá ser definida por cada módulo, desde a versão 0.64 e posteriores. + + + +make-install-prefix +Sobrepõe-se à global +Configure esta variável com uma lista separada por espaços, que será interpretada como um comando e as suas opções, para anteceder o comando 'make install', que é usado para instalar os módulos. Isto é útil para instalar os pacotes com o 'sudo', por exemplo, mas tenha cuidado enquanto lida com os privilégios do 'root'. + + + +make-options +Sobrepõe-se à global +Configure esta variável para passar as opções da linha de comandos ao comando 'make'. Isto é útil para os programas, como o distcc. O distcc permite-lhe partilhar o seu trabalho de compilação por mais que um computador. Para a usar, deverá usar a opção do 'make'. Agora já pode. De acordo com a documentação, recomenda-se '2 * número_de_cpus_na_rede'. Existe 1 CPU no caso do autor, como tal seria no caso dele. + + + +manual-build +Sobrepõe-se à global +Configure o valor da opção como true para evitar que o processo de compilação tente compilar este módulo. Será à mesma mantido actualizado ao actualizar a partir do &svn;. Esta opção é exactamente equivalente à opção da linha de comandos . + + + +manual-update +Sobrepõe-se à global +Configure o valor da opção como true para evitar que o processo de compilação tente actualizar (e, por conseguinte, compilar ou instalar) este módulo. Se definir esta opção para um módulo, também poderá tê-la comentada. + + + +module-base-path +Sobrepõe-se à global +Configure esta opção para se sobrepor à pasta por omissão do &tdesvn-build; para o módulo em questão. Isto poderá ser usado, por exemplo, para usar ramificações ou marcas específicas de determinadas bibliotecas. O Visualizador de Código do &kde; é extremamente valioso para o ajudar a escolher o local correcto. +Lembre-se que o &tdesvn-build; constrói o local final de acordo com o seguinte modelo: $svn-server/home/kde/$module-base-path/$module-name. +O valor por omissão tanto pode ser o trunk como o trunk/KDE, dependendo do nome do módulo. + + + + +niceness +Não poderá ser sobreposta +Configure esta opção com um valor entre 20 e 0. Quanto mais alto o número, menor prioridade terá o &tdesvn-build; para si próprio. O valor por omissão é 10. + + + +no-rebuild-on-fail +Sobrepõe-se à global +Configure o valor desta opção como true para evitar sempre que o &tdesvn-build; tente compilar de novo este módulo, se falhar numa compilação incremental. Normalmente, o &tdesvn-build; irá tentar compilar de novo o módulo do zero, para contradizer o efeito de uma actualização do &svn; inválida que confunda o sistema de compilação. + + + +override-url +Sobrepõe-se à global +Se configurar esta opção, o 'tdesvn-build' irá usar o seu valor como o URL a passar ao Subversion, sem qualquer alteração. Deverá usar geralmente esta opção, se quiser obter uma versão específica, mas o 'tdesvn-build' não conseguir descobrir o que queria dizer ao usar a opção branch. + + + +qtdir +Não poderá ser sobreposta +Configure esta opção para definir a variável de ambiente QTDIR enquanto compila. Poderá sobrepor esta configuração numa opção de um módulo. Se não indicar esta opção, será por omissão a $(source-dir)/build/qt-copy, que irá usar o módulo 'qt-copy' que está incluído no repositório de código do &kde;. Poderá usar um til (~) que representa a sua pasta pessoal. + + + +remove-after-install +Sobrepõe-se à global +Se estiver com pouco espaço em disco, poderá querer usar esta opção para remover automaticamente a pasta de compilação (ou as pastas de compilação e de código, para instalações episódicas), após o módulo ter sido instalado com sucesso. +Os valores possíveis para esta opção são: +none - Não remove nada (Este é o valor por omissão). +builddir - Remove a pasta de compilação, mas não o código. +all - Remove tanto o código-fonte como a pasta de compilação. + + + +Lembre-se que a utilização desta opção poderá ter um grande impacto na utilização da sua largura de banda (se usar o 'all') e o tempo que dura a compilação do KDE, dado que o 'tdesvn-build' será incapaz de efectuar compilações incrementais. + + + + +set-env +Sobrepõe-se à global +Esta opção aceita um conjunto de valores separados por espaços, onde o primeiro valor é a variável de ambiente a definir e o resto dos valores é o que deseja atribuir à sua variável. Por exemplo, para configurar a variável RONALD como McDonald, iria pôr este comando na secção apropriada: +set-env RONALD McDonald +Esta opção é especial, na medida em que poderá ser repetida sem sobrepor a configuração anterior do 'set-env' na mesma secção do ficheiro de configuração. Desta forma, poderá definir mais que uma variável de ambiente por módulo (ou a nível global). + + + + +source-dir +Não poderá ser sobreposta +Esta opção é usada para definir a pasta do seu computador, onde será guardado o código-fonte do &svn; do &kde;. Se não indicar este valor, será usado o valor por omissão ~/tdesvn. Se indicar de facto este valor, use um local absoluto. + + + +svn-server +Não poderá ser sobreposta +Esta opção é usada para definir o servidor usado para obter o código do &svn;. Por omissão, é usado o repositório anónimo de &svn;, em svn://anonsvn.kde.org/ + + + +stop-on-failure +Sobrepõe-se à global +Configure o valor desta opção como true para fazer com que o programa pare a execução, após ocorrer um erro durante o processo de compilação ou instalação. Esta opção está desactivada por omissão. + + + +tag +Sobrepõe-se à global +Use esta opção para obter uma versão específica de um módulo. +NOTA: As hipóteses serão muito boas quando NÃO QUISER usar esta opção. As versões do KDE estão disponíveis em pacote comprimidos no servidor de FTP do KDE ou numa das suas réplicas. +Se estiver a usar o 'tdesvn-build' porque está com problemas a obter uma versão do KDE para compilar na sua distribuição, pense em usar a ferramenta de compilação Konstruct em alternativa, a qual funciona a partir dos pacotes de lançamento. + + + + +use-qt-builddir-hack +Sobrepõe-se à global +Ainda que esta opção se sobreponha à global, só fará sentido para o 'qt-copy'. Configure esta opção como true para activar o modo experimental de 'srcdir' != 'builddir'. Se estiver activada, o &tdesvn-build; irá copiar o módulo de código do 'qt-copy' para a pasta de compilação e efectuar as compilações a partir daí. Isto significa que a sua variável de ambiente QTDIR ficará igual a $(qt-copy-build-dir)/qt-copy/lib em alternativa. Deverá também mudar a sua opção qtdir em função disso. O 'make' incremental deverá à mesma funcionar neste modo, dado que as datas serão preservadas após a cópia. Se usar a opção apply-qt-patches, as actualizações serão aplicadas na pasta de compilação, não na pasta de código. Esta opção é igual a true, por omissão. + + + +use-unsermake +Sobrepõe-se à global +Configure esta opção como true para poder usar o programa experimentar 'unsermake' em vez do 'automake' ao correr o programa 'configure'. Isto poderá levar a algumas diminuições sérias na altura da compilação, principalmente no caso dos sistemas de compilação distribuídos. Esta opção é, por omissão, true (para a maioria dos módulos). + +Normalmente, se usar esta opção, o 'tdesvn-build' irá manter automaticamente o 'unsermake' actualizado. Isto poderá começar a ser incómodo, principalmente se estiver a gerir você mesmo o 'unsermake'. Se for este o caso, poderá configurar esta opção como self, pelo que o 'tdesvn-build' irá usar à mesma o 'unsermake', mas não fará nada de especial para o manter actualizado. + + + + + + +
+ +
+ + +Opções da Linha de Comandos e Variáveis de Ambiente + +Este programa não usa variáveis de ambiente. Se necessitar de definir variáveis de ambiente para o ambiente de compilação ou de instalação, veja a opção set-env. + +O programa aceita as seguintes opções da linha de comandos: + + + + + +mostra apenas uma ajuda simples deste programa. + + + + +mostra a versão do programa. + + + + +mostra as informações de contacto do autor. + + + + +activa o resultado do programa a cores. + + + + +desactiva o resultado do programa a cores. + + + + (ou ) +não faz NADA de facto, mas funciona como se fizesse. + + + + (ou ) +Não é tão descritivo com o resultado à saída. Com esta opção, só as mensagens básicas são apresentadas. + + + + +Só mostra as mensagens de avisos e erros. + + + + +Torna-se bastante descritivo com o que se passa e o que o 'tdesvn-build' está a fazer. + + + + +efectua apenas a actualização do código. + + + + +efectua apenas o processo de compilação. + + + + +não inclui os módulos passados no resto da linha de comandos no processo de actualização/compilação. + + + + +ignora o passo de contacto do servidor do &svn;. + + + + +salta o processo de compilação. + + + + +não instala automaticamente os pacotes, após a sua compilação. + + + + +activa o modo de depuração para o programa. De momento, isto significa que todo o resultado será enviado para o STDOUT, para além de ficar registado na pasta de registo como normal. Do mesmo modo, muitas das funções tornar-se-ão mais descritivas sobre o que estão fazer no modo de depuração. + + + + +não tenta compilar de novo os módulos que não conseguiram ser compilados do zero. O &tdesvn-build; nunca irá tentar fazer isto num módulo que já se tentou compilar do zero. + + + + +volta a criar o sistema de compilação e a compilar do zero. + + + + +executa o programa 'configure' de novo sem limpar a pasta de compilação. + + + + +executa o make Makefile.cvs de novo para criar o programa 'configure' e continua a compilação normalmente. Esta opção implica a . + + + + +que tenta continuar a compilação a partir do ponto em que o programa parou da última vez. O programa começa a compilar o módulo, após o último ter sido compilado da última vez em que o programa foi executado, quer tenha corrido bem ou não. Esta opção implica a . Não deverá indicar os nomes de outros módulos na linha de comandos. + + + + +que é semelhante à opção , excepto que indica qual o módulo de onde começa a compilação como parâmetro seguinte na linha de comandos. Esta opção implica a . Não deverá indicar os nomes dos outros módulos na linha de comandos. + + + + +que interpreta o próximo parâmetro da linha de comandos como o ficheiro de onde ler as opções de configuração. O valor por omissão deste parâmetro é '~/.tdesvn-buildrc'. + + + + +que lhe permite mudar a pasta onde o &kde; será instalado na linha de comandos. Esta opção implica a . + + + + +pára após a execução do make Makefile.cvs. O programa 'configure' irá necessitar à mesma de ser executado, coisa que o &tdesvn-build; irá fazer da próxima vez. Isto permite-lhe preparar todos os programas 'configure' de uma vez, para que possa ver o ./configure de cada módulo e editar as suas opções do 'configure' adequadamente. + + + +Se esta for a única opção da linha de comandos, irá tentar instalar todos os módulo incluídos em 'successfully-built', excepto o 'qt-copy', que não necessita de instalação. Se as opções da linha de comandos forem indicadas após o , então assumem-se que são módulos para instalar. + + + + +Poderá usar esta opção para sobrepor outra opção no seu ficheiro de configuração para todos os módulos. Por exemplo, para sobrepor a opção log-dir, deverá escrever: . + + + + +Poderá usar esta opção para sobrepor uma opção do seu ficheiro de configuração para um dado módulo. Por exemplo, para sobrepor a opção use-unsermake do 'tdemultimedia', iria escrever: . + + + + +Todas as outras opções da linha de comandos assumem-se como sendo módulos para actualizar e compilar. Por favor, não misture a compilação com a instalação. + + + + +Créditos e Licenças +&underFDL; + +
diff --git a/tde-i18n-pt/docs/tdesdk/umbrello/Makefile.am b/tde-i18n-pt/docs/tdesdk/umbrello/Makefile.am new file mode 100644 index 00000000000..6869837a64a --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/umbrello/Makefile.am @@ -0,0 +1,4 @@ +KDE_LANG = pt +SUBDIRS = $(AUTODIRS) +KDE_DOCS = AUTO +KDE_MANS = AUTO diff --git a/tde-i18n-pt/docs/tdesdk/umbrello/Makefile.in b/tde-i18n-pt/docs/tdesdk/umbrello/Makefile.in new file mode 100644 index 00000000000..1feb0bd0ed9 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/umbrello/Makefile.in @@ -0,0 +1,635 @@ +# Makefile.in generated by automake 1.10.1 from Makefile.am. +# KDE tags expanded automatically by am_edit - $Revision: 483858 $ +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +subdir = docs/tdesdk/umbrello +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.in +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +SOURCES = +DIST_SOURCES = +#>- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ +#>- html-recursive info-recursive install-data-recursive \ +#>- install-dvi-recursive install-exec-recursive \ +#>- install-html-recursive install-info-recursive \ +#>- install-pdf-recursive install-ps-recursive install-recursive \ +#>- installcheck-recursive installdirs-recursive pdf-recursive \ +#>- ps-recursive uninstall-recursive +#>+ 7 +RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive nmcheck-recursive bcheck-recursive +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) +#>- DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +#>+ 1 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +ARTSCCONFIG = @ARTSCCONFIG@ +AUTOCONF = @AUTOCONF@ +AUTODIRS = @AUTODIRS@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CONF_FILES = @CONF_FILES@ +CYGPATH_W = @CYGPATH_W@ +DCOPIDL = @DCOPIDL@ +DCOPIDL2CPP = @DCOPIDL2CPP@ +DCOPIDLNG = @DCOPIDLNG@ +DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@ +DEFS = @DEFS@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +GMSGFMT = @GMSGFMT@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +KCFG_DEPENDENCIES = @KCFG_DEPENDENCIES@ +KCONFIG_COMPILER = @KCONFIG_COMPILER@ +KDECONFIG = @KDECONFIG@ +KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@ +KDE_RPATH = @KDE_RPATH@ +KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MAKEKDEWIDGETS = @MAKEKDEWIDGETS@ +MCOPIDL = @MCOPIDL@ +MEINPROC = @MEINPROC@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TOPSUBDIRS = @TOPSUBDIRS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XMLLINT = @XMLLINT@ +X_RPATH = @X_RPATH@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +am__leading_dot = @am__leading_dot@ +am__tar = @am__tar@ +am__untar = @am__untar@ +#>- bindir = @bindir@ +#>+ 2 +DEPDIR = .deps +bindir = @bindir@ +build_alias = @build_alias@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host_alias = @host_alias@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +kde_appsdir = @kde_appsdir@ +kde_bindir = @kde_bindir@ +kde_confdir = @kde_confdir@ +kde_datadir = @kde_datadir@ +kde_htmldir = @kde_htmldir@ +kde_icondir = @kde_icondir@ +kde_kcfgdir = @kde_kcfgdir@ +kde_libs_htmldir = @kde_libs_htmldir@ +kde_libs_prefix = @kde_libs_prefix@ +kde_locale = @kde_locale@ +kde_mimedir = @kde_mimedir@ +kde_moduledir = @kde_moduledir@ +kde_servicesdir = @kde_servicesdir@ +kde_servicetypesdir = @kde_servicetypesdir@ +kde_sounddir = @kde_sounddir@ +kde_styledir = @kde_styledir@ +kde_templatesdir = @kde_templatesdir@ +kde_wallpaperdir = @kde_wallpaperdir@ +kde_widgetdir = @kde_widgetdir@ +tdeinitdir = @tdeinitdir@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +xdg_appsdir = @xdg_appsdir@ +xdg_directorydir = @xdg_directorydir@ +xdg_menudir = @xdg_menudir@ +KDE_LANG = pt +#>- SUBDIRS = $(AUTODIRS) +#>+ 1 +SUBDIRS =. +KDE_DOCS = AUTO +KDE_MANS = AUTO +#>- all: all-recursive +#>+ 1 +all: docs-am all-recursive + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +#>- @for dep in $?; do \ +#>- case '$(am__configure_deps)' in \ +#>- *$$dep*) \ +#>- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ +#>- && exit 0; \ +#>- exit 1;; \ +#>- esac; \ +#>- done; \ +#>- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/umbrello/Makefile'; \ +#>- cd $(top_srcdir) && \ +#>- $(AUTOMAKE) --gnu docs/tdesdk/umbrello/Makefile +#>+ 12 + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/umbrello/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/umbrello/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/umbrello/Makefile.in +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +$(RECURSIVE_CLEAN_TARGETS): + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done +ctags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi +ctags: CTAGS +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +#>- distdir: $(DISTFILES) +#>+ 1 +distdir: distdir-nls $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done + list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + distdir=`$(am__cd) $(distdir) && pwd`; \ + top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$top_distdir" \ + distdir="$$distdir/$$subdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +#>- uninstall: uninstall-recursive +#>+ 1 +uninstall: uninstall-docs uninstall-nls uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +#>- clean: clean-recursive +#>+ 1 +clean: kde-rpo-clean clean-recursive + +#>- clean-am: clean-generic mostlyclean-am +#>+ 1 +clean-am: clean-docs clean-bcheck clean-generic mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +info: info-recursive + +info-am: + +#>- install-data-am: +#>+ 1 +install-data-am: install-docs install-nls + +install-dvi: install-dvi-recursive + +install-exec-am: + +install-html: install-html-recursive + +install-info: install-info-recursive + +install-man: + +install-pdf: install-pdf-recursive + +install-ps: install-ps-recursive + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ + install-strip + +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic ctags \ + ctags-recursive distclean distclean-generic distclean-tags \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ + tags-recursive uninstall uninstall-am + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: + +#>+ 2 +KDE_DIST=uml_basics.docbook index.docbook credits.docbook code_import_and_generation.docbook index.cache.bz2 Makefile.in other_features.docbook introduction.docbook working_with_umbrello.docbook authors.docbook Makefile.am + +#>+ 24 +index.cache.bz2: $(srcdir)/index.docbook $(KDE_XSL_STYLESHEET) other_features.docbook code_import_and_generation.docbook index.docbook introduction.docbook credits.docbook working_with_umbrello.docbook uml_basics.docbook authors.docbook + @if test -n "$(MEINPROC)"; then echo $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; fi + +docs-am: index.cache.bz2 + +install-docs: docs-am install-nls + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello + @if test -f index.cache.bz2; then \ + echo $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/; \ + $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/; \ + elif test -f $(srcdir)/index.cache.bz2; then \ + echo $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/; \ + $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/; \ + fi + -rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/common + $(LN_S) $(kde_libs_htmldir)/$(KDE_LANG)/common $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/common + +uninstall-docs: + -rm -rf $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello + +clean-docs: + -rm -f index.cache.bz2 + + +#>+ 13 +install-nls: + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello + @for base in other_features.docbook code_import_and_generation.docbook index.docbook introduction.docbook credits.docbook working_with_umbrello.docbook uml_basics.docbook authors.docbook ; do \ + echo $(INSTALL_DATA) $$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/$$base ;\ + $(INSTALL_DATA) $(srcdir)/$$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/$$base ;\ + done + +uninstall-nls: + for base in other_features.docbook code_import_and_generation.docbook index.docbook introduction.docbook credits.docbook working_with_umbrello.docbook uml_basics.docbook authors.docbook ; do \ + rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/$$base ;\ + done + + +#>+ 5 +distdir-nls: + for file in other_features.docbook code_import_and_generation.docbook index.docbook introduction.docbook credits.docbook working_with_umbrello.docbook uml_basics.docbook authors.docbook ; do \ + cp $(srcdir)/$$file $(distdir); \ + done + +#>+ 15 +force-reedit: + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/umbrello/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdesdk/umbrello/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/umbrello/Makefile.in + + +#>+ 21 +clean-bcheck: + rm -f *.bchecktest.cc *.bchecktest.cc.class a.out + +bcheck: bcheck-recursive + +bcheck-am: + @for i in ; do \ + if test $(srcdir)/$$i -nt $$i.bchecktest.cc; then \ + echo "int main() {return 0;}" > $$i.bchecktest.cc ; \ + echo "#include \"$$i\"" >> $$i.bchecktest.cc ; \ + echo "$$i"; \ + if ! $(CXX) $(DEFS) -I. -I$(srcdir) -I$(top_builddir) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) --dump-class-hierarchy -c $$i.bchecktest.cc; then \ + rm -f $$i.bchecktest.cc; exit 1; \ + fi ; \ + echo "" >> $$i.bchecktest.cc.class; \ + perl $(top_srcdir)/admin/bcheck.pl $$i.bchecktest.cc.class || { rm -f $$i.bchecktest.cc; exit 1; }; \ + rm -f a.out; \ + fi ; \ + done + + +#>+ 3 +final: + $(MAKE) all-am + +#>+ 3 +final-install: + $(MAKE) install-am + +#>+ 3 +no-final: + $(MAKE) all-am + +#>+ 3 +no-final-install: + $(MAKE) install-am + +#>+ 3 +kde-rpo-clean: + -rm -f *.rpo + +#>+ 3 +nmcheck: +nmcheck-am: nmcheck diff --git a/tde-i18n-pt/docs/tdesdk/umbrello/authors.docbook b/tde-i18n-pt/docs/tdesdk/umbrello/authors.docbook new file mode 100644 index 00000000000..76989b21a60 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/umbrello/authors.docbook @@ -0,0 +1,46 @@ + +Autores e História +Este projecto foi iniciado pelo Paul Hensgen com dos seus projectos universitários. O nome original da aplicação era UML Modeller (Modelador UML). O Paul fez todo o desenvolvimento até ao fim de 2001 quando o programa chegou à versão 1.0. +A versão 1.0 já oferecia bastantes funcionalidades, mas depois de o projecto ter sido revisto na Universidade do Paul, outros programadores puderam-se juntar e começaram a dar contribuições valiosas para o UML Modeller, como a mudança de um formato de ficheiro binário para um ficheiro &XML;, o suporte para mais tipos de diagramas &UML;, a Geração de Código e a Importação de Código, só para referir alguns. +O Paul teve de ser retirar da equipa de desenvolvimento no Verão de 2002 mas, como 'Software' Livre e Aberto que é, o programa continua a melhorar e a evoluir e é mantido por um grupo de programadores de diferentes partes do mundo. Da mesma forma, em Setembro de 2002, o projecto mudou o seu nome de &UML; Modeller, para &umbrello;. Existem várias razões para a mudança de nomes, sendo a mais importante que apenas uml — tal como era conhecido normalmente — era um nome demasiado genérico e causava alguns problemas com algumas distribuições. A outra razão importante era que o Umbrello era um nome muito mais giro. +O desenvolvimento do &umbrello;, assim como as discussões sobre a estratégia para as versões futuras, é aberto e toma lugar na Internet. Se quiser contribuir para o projecto, por favor não hesite em contactar os programadores. Existem muitas formas pelas quais poderá ajudar o &umbrello;: + +Comunicar erros ou sugerir melhoramentos +Corrigir erros ou adicionar funcionalidades +Escrever boa documentação ou traduzi-la para outras línguas +E, claro... fazendo código connosco! + +Como vê, existem muitas formas pelas quais você poderá contribuir. Todas elas são muito importantes e toda a gente é bem-vinda para participar. +Os programadores do &umbrello; poderão ser contactados através de uml-devel@lists.sourceforge.net. + diff --git a/tde-i18n-pt/docs/tdesdk/umbrello/code_import_and_generation.docbook b/tde-i18n-pt/docs/tdesdk/umbrello/code_import_and_generation.docbook new file mode 100644 index 00000000000..e236bb04589 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/umbrello/code_import_and_generation.docbook @@ -0,0 +1,163 @@ + +Importação e Geração de Código +O &umbrello; é uma ferramenta de modelação de &UML; e, como tal, o seu objectivo principal é ajudá-lo na análise e desenho dos seus sistemas. Contudo, para fazer a transição entre o seu desenho e a sua implementação, o &umbrello; permite-lhe gerar código-fonte em várias linguagens de programação diferentes para o preparar a si. Também, se você quiser começar a usar o &UML; num projecto já iniciado de C++, o &umbrello; pode ajudá-lo a criar um modelo do seu sistema a partir do código-fonte, analisando-o e importando as classes que forem encontradas nele. + +Geração de Código +O &umbrello; pode gerar código para várias linguagens de programação, baseando-se no seu Modelo &UML; para o ajudar a iniciar a implementação do seu projecto. O código gerado consiste nas declarações das classes, com os seus métodos e atributos, de modo a que você possa preencher as lacunas, fornecendo a funcionalidade das operações das suas classes. +O &umbrello; 1.2 vem com o suporte de geração de código para ActionScript, Ada, C++, IDL de CORBA, &Java;, JavaScript, PHP, Perl, Python, SQL e XMLSchema. + +Gerar Código +Para poder gerar código com o &umbrello;, você precisa primeiro de criar ou carregar um modelo que contenha pelo menos uma classe. Quando estiver pronto para começar a escrever algum código, seleccione a opção Assistente de Geração de Código do menu Código que o irá guiar no processo de geração de código. +O primeiro passo é seleccionar as classes para as quais deseja gerar código-fonte. Por omissão, todas as classes do seu modelo estão seleccionadas e remover as que não quer gerar, passando-as para a lista do lado esquerdo. +O próximo passo do assistente permite-lhe modificar os parâmetros que o Gerador de Código usa ao criar o seu código. Estão disponíveis as seguintes opções: + + +Opções de Geração de Código + + + + + + Opções de Geração de Código no &umbrello; + + + Opções de Geração de Código no &umbrello; + + + + + +Opções de Geração + + + +Verbosidade do Código +A opção Escrever os comentários de documentação mesmo que vazios diz ao Gerador de Código para criar os comentários do tipo /** texto */ , mesmo que os blocos de comentários estejam vazios. Se você tiver adicionado documentação às suas classes, métodos ou atributos do seu modelo, o Gerador de Código irá escrever esses comentários como documentação do Doxygen, independentemente do que tenha indicado aqui, mas se você seleccionar esta opção, o &umbrello; irá escrever os blocos de comentários para todas as classes, métodos e atributos, mesmo que não exista nenhuma documentação no modelo, onde neste caso deverá documentar as suas classes mais tarde no próprio código-fonte. +A opção Escrever os comentários para as secções mesmo que estas estejam vazias faz com que o &umbrello; escreva os comentários no código-fonte para delimitar as várias secções de uma classe. Por exemplo, os métodos públicos ou os Atributos antes das secções correspondentes. Se você seleccionar esta opção, o &umbrello; irá escrever os comentários de todas as secções da classe, mesmo que a secção esteja vazia. Por exemplo, iria escrever um comentário a dizer métodos protegidos, mesmo que estes não existam na sua classe. + + +Pastas +Criar todos os ficheiros gerados na pasta. Aqui você deverá indicar a pasta onde quer que o &umbrello; coloque o código gerado. +A opção Incluir os ficheiros da pasta permite-lhe inserir um cabeçalho no início de cada ficheiro gerado. Os ficheiros de cabeçalho poderão conter alguma informação de direitos de cópia ou de licenças ou conterem variáveis que sejam avaliadas na altura da geração. Você poderá dar uma vista de olhos nos ficheiros de cabeçalho-modelos que vêm com o &umbrello; para ver como é que poderá usar essas variáveis para substituir o seu nome ou a data actual na altura da geração. + + +Política de Sobreposição + +Esta opção diz ao &umbrello; o que fazer se o ficheiro que ele desejar criar já existir na pasta de destino. O &umbrello; não pode modificar os ficheiros de código existentes, por isso você terá de optar entre sobrepor o ficheiro existe, ignorar a geração desse ficheiro em particular ou deixar que o &umbrello; escolha um nome de ficheiro diferente. Se você escolher a opção para usar um nome diferente, o &umbrello; irá adicionar um sufixo ao nome do ficheiro. + + +Linguagem +O &umbrello; irá gerar por omissão o código para a linguagem que você tenha indicado como Linguagem Activa mas, com o Assistente de Geração de Código, você tem a opção de alterar isto para outra linguagem. + + + +Assistente de Geração - Geração +O terceiro e último passo do assistente mostra o estado do processo de Geração de Código. Você só terá de carregar no botão Gerar para ficar com as classes criadas para si. +Tenha em atenção que as Opções que seleccionar durante o assistente de Geração de Código só são válidas para a geração actual. Da próxima vez que você executar o Assistente, você terá de seleccionar de novo todas as opções (a sua pasta de cabeçalhos, a política de sobreposição, e assim por diante). Você poderá configurar os valores por omissão usados pelo &umbrello; na secção de Geração de Código da configuração do &umbrello;, a qual está disponível em ConfiguraçãoConfigurar o &umbrello;... +Se você tiver configurado as suas opções de Geração de Código para os valores correctos e quiser gerar já algum código sem ter de percorrer o assistente, você poderá seleccionar a opção Gerar Todo o Código do menu Código. Isto irá gerar o código para todas as classes do seu modelo com as opções actuais (incluindo a Pasta do Resultado e a Política de Sobreposição, por isso use isto com cuidado). + + + + +Importação de Código +O &umbrello; pode importar o código-fonte dos seus projectos existentes para o ajudar a criar o modelo dos seus sistemas. O &umbrello; 1.2 suporta apenas o código-fonte em C++, mas poderá disponibilizar outras linguagens em futuras versões. +Para importar as classes para o seu modelo, seleccione o item Importar as Classes... do menu Código. Na janela de ficheiros, seleccione os que contêm as declarações de classes de C++ e carregue em OK. As classes serão importadas e você achá-las-á como fazendo parte do seu modelo na Árvore. Repare que o &umbrello; não irá criar nenhuma espécie de diagrama para mostrar as suas classes; elas serão apenas importadas para o seu modelo para que você as possa usar posteriormente em qualquer diagrama que desejar. + + +Importação de Código + + + + + + Menu para importar código-fonte no &umbrello; + + + Menu para importar código-fonte no &umbrello; + + + + + + diff --git a/tde-i18n-pt/docs/tdesdk/umbrello/credits.docbook b/tde-i18n-pt/docs/tdesdk/umbrello/credits.docbook new file mode 100644 index 00000000000..122f5f0c03d --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/umbrello/credits.docbook @@ -0,0 +1,11 @@ + +Copyright + +Copyright 2001, Paul Hensgen +Copyright 2002, 2003 Os Autores do &umbrello;. Veja http://uml.sf.net/developers.php para mais informações +&underFDL; &underGPL; diff --git a/tde-i18n-pt/docs/tdesdk/umbrello/index.cache.bz2 b/tde-i18n-pt/docs/tdesdk/umbrello/index.cache.bz2 new file mode 100644 index 00000000000..66d02be976b Binary files /dev/null and b/tde-i18n-pt/docs/tdesdk/umbrello/index.cache.bz2 differ diff --git a/tde-i18n-pt/docs/tdesdk/umbrello/index.docbook b/tde-i18n-pt/docs/tdesdk/umbrello/index.docbook new file mode 100644 index 00000000000..dcd08897553 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/umbrello/index.docbook @@ -0,0 +1,85 @@ + +Umbrello &UML; Modeller"> + + + UML"> + + + + + + + + + + +]> + + + +Manual do &umbrello; + + +Os Autores do &umbrello; + + + +2001 +Paul Hensgen + + +2002, 2003 +Os Autores do &umbrello; + + + +2003-10-15 +1.2 + + +O &umbrello; ajuda o processo de desenvolvimento de 'software' usando a norma da indústria que é a Unified Modelling Language (&UML;) para lhe permitir criar diagramas para desenhar e documentar os seus sistemas. + + + +KDE +UML +modelação +diagramas +desenvolvimento de software +desenvolvimento + + + + +&introduction-chapter; +¨-basics-chapter; +&working-with-umbrello-chapter; +&code-import-and-generation-chapter; +&other-features-chapter; +&authors-chapter; +&credits-chapter; + + diff --git a/tde-i18n-pt/docs/tdesdk/umbrello/introduction.docbook b/tde-i18n-pt/docs/tdesdk/umbrello/introduction.docbook new file mode 100644 index 00000000000..ca33c40ed26 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/umbrello/introduction.docbook @@ -0,0 +1,57 @@ + +Introdução + +O &umbrello; é uma ferramenta de diagramas de &UML; que o pode suportar no processo de desenvolvimento de 'software'. Especialmente durante o processo de análise e de desenho deste processo, o &umbrello; ajudá-lo-á a obter um produto de alta qualidade. O &UML; pode também ser usado para documentar os seus desenhos de 'software' e a ajudá-lo a si e aos seus colegas programadores. +Se tiver um bom modelo do 'software', será a melhor forma de comunicar com outros programadores a trabalhar no projecto e com os seus clientes. Um bom modelo é extremamente importante para os projecto de dimensão média e grande, mas também é bastante útil para os projectos pequenos. Mesmo que você esteja a trabalhar num projecto pequeno de uma pessoa só, irá beneficiar de um bom modelo porque terá uma boa ideia geral que o ajudará a codificar bem as coisas logo à primeira vez. +O &UML; é a linguagem de diagramas usada para descrever esses modelos. Você poderá representar as suas ideias em &UML;, usando vários tipos de diagramas. O &umbrello; 1.2 suporta os seguintes tipos: + +Diagrama de Classes +Diagrama de Sequência +Diagrama de Colaboração +Diagrama de Casos de Utilização +Diagrama de Estados +Diagrama de Actividades +Diagrama de Componentes +Diagrama de Entrada em Produção + +Para mais informações sobre o &UML; poderá consultar a página Web da OMG, http://www.omg.org, que foi quem criou a norma &UML;. +Esperemos que você goste do &umbrello; e que o ajude a criar 'software' de alta qualidade. O &umbrello; é 'Software' Livre e está disponível sem custos alguns, a única coisa que lhe pedimos é para comunicar todos os erros, problemas ou sugestões para os programadores do &umbrello; em uml-devel@lists.sourceforge.net ou http://bugs.kde.org. + diff --git a/tde-i18n-pt/docs/tdesdk/umbrello/other_features.docbook b/tde-i18n-pt/docs/tdesdk/umbrello/other_features.docbook new file mode 100644 index 00000000000..1db9399eb8c --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/umbrello/other_features.docbook @@ -0,0 +1,76 @@ + +Outras Características + +Outras Características do &umbrello; +Este capítulo irá explicar brevemente algumas outras funcionalidades que o &umbrello; lhe oferece. + +Copiar objectos como imagens PNG +À parte de lhe oferecer as operações normais de cópia, corte e colagem que estaria à espera para copiar os objectos entre os diferentes diagramas, o &umbrello; pode copiar os objectos como imagens PNG de modo a que as possa inserir noutro tipo de documento. Você não precisa de fazer nada de especial para usar esta funcionalidade, bastando para tal seleccionar um objecto de um diagrama (uma Classe, um Actor, &etc;) e copiá-lo (&Ctrl;C ou com o menu), e abra depois um documento do &kword; (ou outro programa onde possa colar imagens) e seleccionar Colar. Esta é uma grande funcionalidade para exportar partes do seu diagrama como imagens simples. + + +Exportar para uma Imagem +Você também poderá exportar um diagrama completo como uma imagem. A única coisa que terá de fazer é seleccionar o diagrama que deseja exportar, e seleccionar a opção Exportar como Imagem... no menu Diagrama. + + +Impressão +O &umbrello; permite-lhe imprimir individualmente os diagramas. Carregue no botão Imprimir na barra da aplicação ou seleccionando a opção Imprimir do menu Ficheiro, para que lhe apareça uma janela normal de impressão do &kde;, na qual você poderá imprimir os seus diagramas. + + +Pastas Lógicas +Para organizar melhor o seu modelo, especialmente no caso de projectos grandes, você poderá criar pastas lógicas na Árvore. Basta seleccionar a opção NovoPasta do menu de contexto das pastas por omissão da árvore para criar essas pastas. As pastas podem ser aninhadas e você poderá mover os objectos de uma para outra, se os arrastar do local de origem para os largar no destino. + + +Organizar o seu Modelo em Pastas + + + + + + Organizar um Modelo com Pastas Lógicas no &umbrello; + + + Organizar um Modelo com Pastas Lógicas no &umbrello; + + + + + + + diff --git a/tde-i18n-pt/docs/tdesdk/umbrello/uml_basics.docbook b/tde-i18n-pt/docs/tdesdk/umbrello/uml_basics.docbook new file mode 100644 index 00000000000..497274d0cce --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/umbrello/uml_basics.docbook @@ -0,0 +1,782 @@ + +Bases de &UML; + +Acerca do &UML; +Este capítulo dar-lhe-á uma ideia geral sobre as bases do &UML;. Tenha em mente que isto não é um tutorial compreensivo sobre o &UML; mas sim uma breve introdução ao mesmo, como tal poderá ser lido como um tutorial de &UML;. Se você quiser aprender mais sobre a Unified Modelling Language ou, na generalidade, sobre a análise e desenho de 'software', baseie-se num dos vários livros disponíveis sobre o tópico. Existem também vários tutoriais na Internet que você poderá usar como ponto de partida. + +A Unified Modelling Language (&UML;) é uma linguagem ou notação de diagramas para especificar, visualizar e documentar modelos de 'software' orientados por objectos. O &UML; não é um método de desenvolvimento, o que significa que não lhe diz o que fazer primeiro ou o que fazer a seguir ou como desenhar o seu sistema, mas ajuda-o a visualizar o seu desenho e a comunicar com os outros. O &UML; é controlado pelo Object Management Group (OMG) e é a norma da indústria para descrever graficamente o 'software'. +O &UML; está desenhado para o desenho de 'software' orientado por objectos e tem uma utilização limitada para outros paradigmas de programação. +O &UML; é composto por vários elementos do modelo que representam as diferentes partes de um sistema de 'software'. Os elementos de &UML; são usados para criar diagramas que representam uma dada parte ou um ponto de vista do sistema. São suportados os seguintes tipos de diagramas pelo &umbrello;: + + + +Os Diagramas de Casos de Uso mostram os actores (as pessoas ou os outros utilizadores do sistema), os casos de utilização (os cenários em que eles usam o sistema) e as suas relações + +Os Diagramas de Classes mostram as classes e as relações entre elas + +Os Diagramas de Sequência mostram os objectos e uma sequência de chamadas de métodos que eles fazem a outros objectos. + +Os Diagramas de Colaboração mostram os objectos e as suas relações, colocando alguma ênfase nos objectos que participam na troca de mensagens + + +Os Diagramas de Estados mostram os estados, as mudanças de estado e os eventos num objecto ou numa parte do sistema + +Os Diagramas de Actividades mostram as actividades e as mudanças de uma actividade para outra com os eventos a ocorrerem numa parte do sistema + +Os Diagramas de Componentes mostram os componentes de alto-nível de programação (como as KParts ou os Java Beans). + +Os Diagramas de Entradas em Produção mostram as instâncias dos componentes e as suas relações. + + + + + + +Elementos de &UML; + +Diagrama de Casos de Utilização +Os Diagramas de Casos de Uso descrevem as relações e as dependências entre um grupo de Casos de Uso e os Actores que participam no processo. +É importante reparar que os Diagramas de Casos de Uso não são adequados para representar o desenho e também não podem descrever os detalhes internos de um sistema. Os Diagramas de Casos de Uso pretendem facilitar a comunicação com os utilizadores futuros do sistema e com o cliente, e são especialmente úteis para determinar as funcionalidades necessárias que o sistema deverá ter. Os Diagramas de Casos de Uso indicam o que o sistema deverá fazer mas não devem — e não podem — especificar como isto deverá ser feito. + + +Um exemplo de diagrama de Casos de Utilização. + + + + + + &umbrello; a mostrar um diagrama de Casos de Utilização + + + &umbrello; a mostrar um diagrama de Casos de Utilização + + + + + +Caso de Utilização +Um Caso de Utilização descreve — do ponto de vista dos actores — um grupo de actividades de um sistema que produzem um resultado concreto e tangível. +Os Casos de Uso são descrições das interacções típicas entre os utilizadores de um sistema e o sistema propriamente dito. Eles representam a interface externa do sistema e especificam um dado tipo de requisitos sobre o que o sistema tem de fazer (lembre-se, só 'o quê', não 'como'). +Ao lidar com os Casos de Uso, é importante recordar algumas regras simples: + Cada Caso de Utilização está relacionado com pelo menos um actor + Cada Caso de Utilização tem um iniciador (ou seja, um actor) + Cada Caso de Uso conduz a um resultado relevante (um resultados com valor de negócio) + + + +Os Casos de Uso também poderão ter relações com outros Casos de Uso. Os três tipos de relações mais típicos entre Casos de Uso são: + +<<include>> (incluir) que indica que um Caso de Uso toma lugar dentro de outro Caso de Uso +<<extends>> (extende) que indica que, em certas situações ou numa dada altura (chamada de ponto de extensão), um Caso de Uso será extendido por outro. +Generalization (generalização) indica que um Caso de Uso herda as características do Super-Caso de Uso e poderá implementar novamente algumas delas ou adicionar novas de uma forma semelhante à da herança de classes. + + + + +Actor +Um actor é uma entidade externa (fora do sistema) que interage com o sistema ao participar (ou iniciar normalmente) um Caso de Uso. Os actores poderão ser pessoas reais (como, por exemplo, utilizadores do sistema), outros sistemas informáticos ou eventos exteriores. +Os actores não representam as pessoas físicas ou os sistemas, mas sim o seu papel. Isto significa que, quando uma pessoa interage com o sistema de formas diferentes (assumindo papéis diferentes), ele será representado por vários actores. Por exemplo, uma pessoa que dá suporte ao cliente por telefone e que recebe encomendas do cliente para colocar no sistema seria representado por um actor Técnico de Suporte e por um actor Representante de Vendas + + +Descrição de Caso de Utilização +As descrições dos Casos de Uso são narrativas textuais do Caso de Uso. Elas normalmente tomam a forma de uma nota ou de um documento que esteja associado de alguma forma ao Caso de Uso e explicam os processos ou actividades que tomam lugar no Caso de Uso. + + + + +Diagrama de Classes +Os Diagramas de Classes mostram as diferentes classes que compõem um sistema e como elas se relacionam umas com as outras. Os Diagramas de Classes são apontados normalmente como estáticos porque mostram as classes, em conjunto com os seus métodos e atributos, assim como as relações estáticas entre elas, quais as classes que conhecem outras classes ou que fazem parte de outra classe, mas não mostram as chamadas de métodos entre elas. + + +Um exemplo de um Diagrama de Classes + + + + + + O &umbrello; a mostrar um diagrama de Classes + + + O &umbrello; a mostrar um diagrama de Classes + + + + + +Classe +Uma classe define os atributos e os métodos para um conjunto de objectos. Todos os objectos desta classe (as instâncias da mesma) partilham o mesmo comportamento e têm o mesmo conjunto de atributos (cada objecto tem o seu próprio conjunto). O termo Tipo é usado em algumas ocasiões em vez de Classe, mas é importante mencionar que os dois conceitos não são iguais e que o Tipo é um termo mais genérico. +No &UML;, as Classes são representadas por rectângulos com o nome da classe, e poderão também mostrar os atributos e as operações da classe em outros dois compartimentos dentro do rectângulo. + + +Uma Classe em &UML; + + + + + + Representação visual de uma Classe em &UML; + + + Representação visual de uma Classe em &UML; + + + + + +Atributos +No &UML;, os Atributos são mostrados como tendo o seu nome, pelo menos, e poderão mostrar também o seu tipo, o seu valor inicial e outras propriedades. Os atributos também poderão ser mostrados com a sua visibilidade: + ++ Representa atributos públicos +# Representa atributos protegidos +- Representa atributos privados + + + +Operações +As operações (métodos) são também mostradas contendo pelo menos o seu nome e poderão também mostrar os seus parâmetros e tipos de valor devolvidos. As operações podem, assim como os Atributos, mostrar a sua visibilidade: ++ Corresponde a operações públicas +# Corresponde a operações protegidas +- Corresponde a operações privadas + + + + + +Modelos +As Classes poderão ter modelos, um valor que é usado para uma classe ou tipo não especificado. O tipo de modelo é definido quando uma classe é iniciada (&ie; um objecto é criado). Os modelos existem como 'template' no C++ actual e serão introduzidos no Java 1.5 onde serão chamados de 'Generics'. + + + + +Associações da Classe +Uma classe pode-se relacionar (ser associada) com outra qualquer de diferentes maneiras: + +Generalização +A herança é um dos conceitos fundamentais da programação orientada por objectos, nos quais uma classe ganha todos os atributos e operações da classe que herda, podendo sobrepor ou modificar algumas delas, assim como adicionar mais atributos ou operações próprias. +No &UML;, uma associação por Generalização entre duas classes representa o conceito de herança entre uma classe de base e uma classe derivada. No &UML;, as Generalizações são representadas com uma linha que liga as duas classes, em que existe uma seta do lado da classe de base. +Generalização + + + + + + Representação visual de uma generalização em &UML; + + + Representação visual de uma generalização em &UML; + + + + + + + +Associações +Uma associação representa uma relação entre classes e dá a semântica e a estrutura comum para vários tipos de ligações entre os objectos. +As associações são o mecanismo que permite aos objectos comunicarem uns com os outros. Descreve a ligação entre as diferentes classes (a ligação entre os objectos em si é chamada de ligação do objecto. +As associações podem ter um papel que indica o objectivo da associação e pode ser unidireccionais ou bidireccionais (indica se os dois objectos que participam na relação poderão enviar mensagens um para o outro, ou se só um deles é que conhece o outro). Cada extremo da associação também tem um valor de multiplicidade, que define quantos objectos desse lado da associação poder-se-ão relacionar com um objecto do outro lado. +No &UML;, as associações são representadas como linhas que ligam as classes que participam na relação e poderá também mostrar o papel e a multiplicidade de cada um dos participantes. A multiplicidade é mostrada como um intervalo [mín..máx] de valores não-negativos ou com um asterisco (*) no lado do máximo que representa o infinito. +Associação &UML; + + + + + + Uma representação visual de uma associação em &UML; + + + Uma representação visual de uma associação em &UML; + + + + + + + +Agregação +As agregações são um tipo especial de associações nas quais as duas classes participantes não têm um estado igual, mas têm uma relação do 'todo' para as partes. Uma agregação diz como é que a classe que têm o papel do 'todo' é composta (ou tem) as outras classes, que têm o papel das partes. Para as agregações, a classe que actua como o 'todo' tem sempre uma multiplicidade de um. +No &UML;, as agregações são representados por uma associação com um losango do lado do 'todo'. +Agregação + + + + + + Uma representação visual de uma relação de agregação no &UML; + + + Uma representação visual de uma relação de agregação no &UML; + + + + + + +Composição +As composições são associações que representam agregações muito fortes. Isto significa que as composições formam também relações do 'todo' para as partes, mas a relação é tão forte que as partes não podem existir por si só. Elas só existem dentro do todo e se o todo for destruído, as partes desaparecem também. +No &UML;, as Composições são representadas por um losango a cheio do lado do 'todo'. + +Composição + + + + + + Uma representação visual de uma relação de Composição no &UML; + + + + + + + +Outros Itens do Diagrama de Classes +Os diagramas de classe poderão conter outros itens para além das classes. + +Interfaces +As interfaces são classes abstractas, o que significa que as instâncias não podem ser criadas directamente a partir delas. Elas poderão contem operações, mas não podem conter atributos. As classes podem herdar das interfaces (através de uma relação de realização) e as instâncias poderão então ser compostas a partir dessas classes. + + + +Tipos de dados +Os tipos de dados são primitivas que vêm tipicamente incorporadas numa linguagem de programação. Os exemplos comuns incluem os inteiros e os booleanos. Eles não poderão ter relações com as classes, mas as classes poderão ter relações com eles. + + + +Enumerados +Os enumerados são uma lista simples de valores. Um exemplo típico são os enumerados para os dias da semana. Como os tipos de dados, os enumerados não poderão ter relações com as classes, mas as classes poderão ter relações com eles. + + + +Pacotes +Os pacotes representam um espaço de nomes numa linguagem de programa. Num diagrama, eles são usados para representar partes de um sistema que contém mais do que uma classe, podendo ser mesmo centenas de classes. + + + + + + + +Diagramas de Sequência + +Os Diagramas de Sequência mostram a troca de mensagens (&ie; as chamadas aos métodos) entre os vários objectos numa situação específica delimitada no tempo. Os objectos são instâncias das classes. Os Diagramas de Sequência colocam uma ênfase especial na ordem e nas alturas em que as mensagens são enviadas para os objectos. + +Nos Diagramas de Sequência, os objectos são representados através de linhas tracejadas verticais, com o nome do objecto no topo. O eixo do tempo também é vertical, e vai aumentando de cima para baixo, de modo a que as mensagens sejam enviadas de um objecto para outro, sob o formato de setas com o nome da operação e dos parâmetros. + + + +Diagrama de Sequência + + + + + + O &umbrello; a mostrar um Diagrama de Sequência + + + O &umbrello; a mostrar um Diagrama de Sequência + + + + +As mensagens tanto podem ser síncronas, o que acontece normalmente nas chamadas de mensagens quando o controlo é passado para o objecto que é invocado até que esse método termine a sua execução, ou poderão também ser assíncronas, onde o controlo é passado de volta directamente para o objecto que invoca o método. As mensagens síncronas têm uma caixa vertical do lado do objecto que é chamado para mostrar o fluxo de controlo do programa. + + + +Diagramas de Colaboração + +Os Diagramas de Colaboração mostram as interacções entre os objectos que participam numa dada situação. Esta é mais ou menos a mesma informação que é mostrada pelos Diagramas de Sequência, mas existe também uma ênfase posta sobre como as interacções ocorrem no tempo, enquanto que os Diagramas de Colaboração colocam as relações entre os seus objectos e a sua topologia em primeiro plano. + +Nos Diagramas de Colaboração, as mensagens enviadas de um objecto para o outro são representadas por setas que mostram o nome da mensagem, os parâmetros e a sequência da mensagem. Os Diagramas de Colaboração são particularmente adequados a mostrar um fluxo específico de um programa ou situação, e são uns dos melhores tipos de diagramas para demonstrar ou explicar rapidamente um processo na lógica do programa. + + +Colaboração + + + + + + O &umbrello; a mostrar um Diagrama de Colaboração + + + O &umbrello; a mostrar um Diagrama de Colaboração + + + + + + + +Diagramas de Estados +Os Diagramas de Estados mostram os diferentes estados de um objecto durante a sua vida, bem como os estímulos que fazem com que o objecto mude o seu estado. +Os Diagramas de Estados vêem os objectos como máquinas de estados ou autónomos finitos que poderão estar num estado pertencente a uma lista de estados finitos e que poderão mudar o seu estado através de um estímulo pertencente a um conjunto finito de estímulos. Por exemplo, um objecto do tipo ServidorRede poderá estar num dos seguintes estados durante a sua vida: + +Pronto +À espera +A trabalhar +Parado + +e os eventos que poderão fazer com que o Objecto mude de estado são + +O objecto é criado +O objecto atende a mensagem +Um cliente pede uma ligação pela rede +Um cliente termina um pedido +O pedido é executado e terminado +O objecto recebe a mensagem parar +etc + + + +Diagrama de Estado + + + + + + O &umbrello; a mostrar um Diagrama de Estado + + + O &umbrello; a mostrar um Diagrama de Estado + + + + + +Estado +Os estados são os blocos de construção dos Diagramas de Estado. Um estado pertence a exactamente uma classe e representa um resumo dos valores que os atributos de uma classe poderão obter. Um Estado no &UML; descreve o estado interno de um objecto de uma determinada classe +Tenha em atenção que nem todas as alterações de um atributo de um objecto deverão ser representadas por um estado, mas só mesmo aquelas alterações que poderão afectar significativamente o funcionamento do objecto +Existem dois tipos especiais de Estados: o Inicial e o Final. Eles são especiais na medida em que não existe nenhum evento que possa fazer um objecto voltar ao seu estado inicial, da mesma forma que não há nenhum evento que possa retirar um objecto do seu estado final, logo que o tenha atingido. + + + + + +Diagrama de Actividades +Os Diagramas de Actividades descrevem a sequência de actividades de um sistema, com a ajuda das Actividades propriamente ditas. Os Diagramas de Actividades são um tipo especial de Diagramas de Estados, que só (ou em grande parte) contêm Actividades. + + +Um exemplo de Diagrama de Actividades. + + + + + + O &umbrello; a mostrar um Diagrama de Actividade + + + O &umbrello; a mostrar um Diagrama de Actividade + + + + +Os Diagramas de Actividades são semelhantes aos fluxogramas procedimentais, com a diferença que todas as Actividades estão claramente associadas a objectos. + +Os Diagramas de Actividades estão sempre associados a uma Classe, uma Operação ou um Caso de Uso. + +Os Diagramas de Actividades suportam as Actividades sequências, assim como as paralelas. A execução paralela é representada através de ícones de 'Fork' (Bifurcação) ou 'Wait' (Espera) e, para as actividades que decorrem em paralelo, não é importante a ordem pela qual são desempenhadas (elas poderão ser executadas ao mesmo tempo ou uma a seguir à outra) + +Actividade +Uma Actividade é um passo único num processo. Uma Actividade é um estado no sistema com actividade interna e, pelo menos, uma transição de saída. As Actividades também poderão conter mais do que uma transição de saída se tiverem diferentes condições. +As Actividades poderão formar hierarquias, o que significa que uma Actividade poderá ser composta por várias Actividades de detalhe, onde nesse caso as transições de entrada e de saída deverão corresponder às transições de entrada e de saída do diagrama de detalhe. + + + + + +Elementos Auxiliares +Existem alguns elementos no &UML; que não têm nenhum valor semântico real para o modelo, mas que ajudam a clarificar partes do diagrama. Esses elementos são + +Linhas de texto +Notas de Texto e âncoras +Caixas + +As linhas de texto são úteis para adicionar algumas informações textuais breves para um diagrama. Correspondem a texto livre e não têm nenhum significado para o modelo em si. + +As notas são úteis para adicionar informações mais detalhada sobre um objecto ou uma dada situação. Têm a grande vantagem de poderem ser anexadas a Elementos de &UML; para mostrar que a nota pertence a um dado objecto ou situação. + +As caixas são rectângulos livres que poderão ser usados para agrupar os itens em conjunto para tornar os diagramas mais legíveis. Elas não têm significado lógico no modelo. + + + + + +Diagramas de Componentes +Os Diagramas de Componentes mostram os componentes do 'software' (sejam referentes a tecnologias de componentes como os KParts, os componentes do CORBA ou Java Beans, ou mesmo secções do sistema que sejam claramente distintas), bem como os artefactos de que são compostos, como os ficheiros de código-fonte, as bibliotecas de programação ou as tabelas de bases de dados relacionais. + +Os componentes poderão ter interfaces (&ie; classes abstractas com operações) quer permitem associar os componentes. + + + +Diagramas de Entrada em Produção + +Os Diagramas de Entrada em Produção mostram as instâncias em execução, bem como as suas associações. Eles incluem os Nós, que são recursos físicos, correspondendo tipicamente a um único computador. Mostram também as interfaces e os objectos (as instâncias das classes). + + + + + diff --git a/tde-i18n-pt/docs/tdesdk/umbrello/working_with_umbrello.docbook b/tde-i18n-pt/docs/tdesdk/umbrello/working_with_umbrello.docbook new file mode 100644 index 00000000000..e3c09d38da4 --- /dev/null +++ b/tde-i18n-pt/docs/tdesdk/umbrello/working_with_umbrello.docbook @@ -0,0 +1,405 @@ + +Trabalhar com o &umbrello; + + +Este capítulo introduzi-lo-á à interface de utilizador do &umbrello; e indicar-lhe-á o que precisa de saber para começar a modelar. Todas as acções no &umbrello; são acedidas através do menu e das barras de ferramentas, mas o &umbrello; também recorre com frequência aos menus de contexto do &RMB;. Você poderá carregar com o &RMB; em praticamente qualquer elemento da área de trabalho ou da árvore do &umbrello; para obter um menu com as funções mais úteis que poderão ser aplicadas ao elemento em particular com que está a lidar. Alguns dos utilizadores poderão achar um pouco confuso ao início porque estão mais habituados a trabalhar com o menu ou com as barra de ferramentas, mas logo que esteja habituado a carregar com o botão direito irá aumentar bastante a velocidade do seu trabalho. + + +Interface do Utilizador +A janela principal do &umbrello; está dividida em três áreas que o ajudarão a manter uma ideia geral do seu sistema inteiro e a aceder mais depressa aos diferente diagramas enquanto trabalha no seu modelo. +Estas áreas são chamadas: + +Vista em Árvore +Área de Trabalho +Janela de Documentação + + + +Interface de Utilizador do &umbrello; + + + + + + Interface de Utilizador do &umbrello; + + + Interface de Utilizador do &umbrello; + + + + + +Vista em Árvore +A Vista em Árvore, ou simplesmente Árvore, está localizada no lado esquerdo e na parte superior da janela, e mostra todos os diagramas, classes, actores e casos de utilização que compõem o seu modelo. A vista em árvore também lhe dá uma forma rápida de alternar entre os diferentes diagramas do seu modelo e de inserir elementos do seu modelo no diagrama actual. +Se você estiver a trabalhar num modelo com bastantes classes e diagramas, a Árvore poderá ajudá-lo a ter a noção das coisas, organizando os elementos do seu modelo em pastas. Você poderá criar pastas se seleccionar a opção apropriada no menu de contexto (se carregar com o &RMB; numa das pastas da árvore) e poderá organizar os seus elementos, movendo-os para a pasta apropriada (arrastando-os e largando-os) + + + +Janela de Documentação +A Janela de Documentação é a pequena janela que se localiza em baixo e à esquerda na janela do &umbrello;, e dá-lhe uma antevisão rápida da documentação para o item seleccionado no momento. A Janela de Documentação é relativamente pequena porque pretende dar-lhe apenas uma ideia rápida da documentação do elemento, mas ocupando o mínimo espaço no ecrã possível. Se você precisar de ver a documentação com mais detalhe, poderá sempre abrir as propriedades do item. + + +Área de Trabalho +A Área de Trabalho é a janela principal do &umbrello; e onde a acção real toma lugar. Você usa a Área de Trabalho para editar e ver os diagramas do seu modelo. A Área de Trabalho mostra o diagrama activo no momento. Actualmente só é possível mostrar um diagrama na Área de Trabalho em qualquer altura. + + + +Criar, Carregar e Gravar Modelos +A primeira coisa que você precisa para começar a fazer algo de útil com o &umbrello; é criar um modelo sobre o qual trabalhar. Quando você inicia o &umbrello; ele carregar sempre o último modelo usado ou cria um novo modelo em branco (dependendo das suas opções definidas na janela de configuração). Isto permitir-lhe-á começar a trabalhar logo num instante. + +Novo Modelo +Se a qualquer altura você precisar de criar um novo modelo, poderá fazê-lo seleccionando para tal o item Novo do menu Ficheiro, ou carregando no ícone Novo da barra de ferramentas da aplicação. Se você estiver a trabalhar num modelo que foi modificado, o &umbrello; perguntar-lhe-á se deverá gravar as suas alterações antes de carregar o novo modelo. + + +Gravar Modelo +Você poderá gravar o seu modelo em qualquer altura se seleccionar a opção Gravar do menu Ficheiro ou carregando no botão Gravar da barra de ferramentas da aplicação. Se precisar de gravar o seu modelo com outro nome, você poderá usar a opção Gravar Como do menu Ficheiro. +Para sua conveniência, o &umbrello; também lhe oferece a possibilidade de gravar automaticamente o seu trabalho com um período de tempo determinado. Você poderá configurar se deseja esta opção, assim como definir os intervalos de tempo na Configuração do &umbrello; + + +Carregar Modelo +Para carregar um modelo já existente, você poderá seleccionar a opção Abrir do menu Ficheiro ou ainda carregar no ícone Abrir da barra de ferramentas da aplicação. Os modelos usados mais recentemente estão disponíveis no sub-menu Abrir Recente do menu Ficheiro para acelerar o acesso aos seus modelos usados mais frequentemente. +O &umbrello; só poderá lidar com um modelo de cada vez, por isso se pedir ao programa para carregar um modelo para si, e se o seu modelo actual tiver sido modificado desde a última vez que o gravou, o &umbrello; irá perguntar se você deseja gravar as suas alterações para evitar que perca o trabalho. Você poderá iniciar duas ou mais instâncias do &umbrello; em qualquer altura, assim como também poderá copiar e colar entre instâncias. + + + +Editar Modelos +No &umbrello;, existem basicamente duas formas de editar os elementos do seu modelo. +Editar directamente os elementos do modelo na Árvore +Editar os elementos do modelo através de um diagrama + + +Ao usar o menu de contexto dos diferentes itens da Árvore você será capaz de adicionar, remover e modificar quase todos os elementos do seu modelo. Se carregar com o botão direito nas pastas da Árvore, você ficará com algumas opções para criar os diferentes tipos de diagramas assim como, dependendo se a pasta pertence a uma Vista de um Caso de Uso ou de uma Vista Lógica, a Actores, Casos de Utilização, Classes, etc. +Logo que você tenha adicionado elementos ao seu modelo, você poderá também editar um elemento se aceder à sua janela de propriedades, a qual poderá encontrar se seleccionar a opção Propriedades do menu de contexto que é mostrado quando se carrega com o botão direito nos itens da Árvore. +Você também poderá editar o seu modelo, criando ou modificando elementos através dos diagramas. Poderão ser obtidos mais detalhes sobre como fazê-lo nas secções seguintes. + + +Adicionar e Remover Diagramas +O seu modelo &UML; consiste num conjunto de elementos &UML; e de associações entre eles. Todavia, você não consegue ver o modelo directamente, como tal você usa os Diagramas para olhar para ele. + +Criar Diagramas +Para criar um novo diagrama no seu modelo, basta seleccionar o tipo de diagrama que precisa no sub-menu Novo do menu Diagrama e dar-lhe um nome. O diagrama será criado e tornado activo, e você vê-lo-á imediatamente na árvore. +Lembre-se que o &umbrello; tira bastante partido dos menus de contexto: você também poderá carregar com o &RMB; numa pasta da Árvore e seleccionar o tipo de diagrama apropriado no sub-menu Novo do menu de contexto. Lembre-se que você poderá criar Diagramas de Casos de Uso apenas na Vista de Casos de Uso, enquanto que os outros tipos de diagramas só poderão ser criados nas pastas das Vistas Lógicas. + + +Remover Diagramas +Se você necessitar de remover um diagrama do seu modelo deve torná-lo activo e seleccionar a opção Remover do menu Diagrama. Você também poderá conseguir isto se seleccionar Remover do menu de contexto dos diagramas na árvore +Dado que a remoção de um diagrama é algo sério que poderá dar origem à perda de algum trabalho se for feito por acidente, o &umbrello; perguntar-lhe-á se confirma a operação de remoção antes de remover efectivamente o diagrama. Assim que um diagrama tenha sido removido e o ficheiro tenha sido gravado não existe forma de anular essa acção. + + +Mudar o Nome a Diagramas +Se quiser mudar o nome de um diagrama existente, você-lo-á fazer facilmente se seleccionar a opção Mudar o Nome do seu menu do &RMB; da árvore. +Outra forma de mudar o nome de um diagrama é através da sua janela de propriedades, a qual poderá aceder se seleccionar Propriedades do seu menu de contexto ou se carregar duas vezes na árvore. + + + +Editar Diagramas +Ao trabalhar num diagrama, o &umbrello; irá tentar guiá-lo na aplicação de algumas regras simples como quais os elementos que são válidos nos diferentes tipos de diagramas, assim como as relações entre eles. Se você for um perito em &UML; poderá até nem dar por isso, mas isto poderá ajudar as pessoas menos experientes em &UML; a criar diagramas em conformidade com as normas. +Logo que você tenha criado os seus diagramas, é a altura de começar a editá-los. Aqui você deverá reparar na diferença (subtil, para os principiantes) entre a edição do seu diagrama e a edição do modelo. Como já deverá saber, os diagramas são vistas do seu modelo. Por exemplo, se você criar uma classe ao editar um Diagrama de Classes, você está de facto a alterar ambos, o seu diagrama e o seu modelo. Se você alterar a cor ou outras opções de visualização de uma classe no seu Diagrama de Classes, você só estará a editar o diagrama, mas nada se altera no seu modelo. + +Inserir Elementos +Uma das primeiras coisas que você irá fazer quando estiver a editar um diagrama novo é inserir elementos nele (Classes, Actores, Casos de Uso, &etc;). Existem basicamente duas formas de o fazer: + +Arrastar os elementos existentes no seu modelo a partir da árvore +Criando novos elementos no seu modelo e adicionando-os ao seu diagrama ao mesmo tempo, usando uma das ferramentas de edição da Barra de Trabalho + +Para inserir elementos que já existam no seu modelo, basta arrastá-los da árvore e largá-los onde os desejar no seu diagrama. Você poderá sempre mover os elementos do seu diagrama com a ferramenta de selecção. +A segunda forma de adicionar elementos ao seu diagrama é usando as ferramentas de edição da Barra de Trabalho (repare que isto também irá adicionar os elementos ao seu modelo). +A Barra de Trabalho localizava-se por omissão no canto direito da janela da aplicação, só que o &umbrello; 1.2 moveu-a para o topo da janela. Você pode acoplar a janela a outro extremo ou tê-la a flutuar onde preferir. As ferramentas disponíveis nesta barra de ferramentas (os botões que vê nela) mudam de acordo com o tipo de diagrama com que está a lidar no momento. O botão para a ferramenta seleccionada no momento está activo na barra de ferramentas. Você poderá mudar para a ferramenta de selecção se carregar na tecla &Esc;. +Quando você tiver seleccionado uma ferramenta de edição da Barra de Ferramentas de Trabalho (como, por exemplo, a ferramenta de inserção de classes), o cursor do rato muda para uma cruz, e você poderá inserir os elementos no seu modelo se carregar uma vez no seu diagrama. Repare que os elementos no &UML; precisam de ter um Nome Único. Por isso, se você tiver uma classe num diagrama cujo nome é ClasseA e se você quiser usar a ferramenta de inserção de classes para inserir uma classe noutro diagrama, você não poderá chamar a essa nova classe também ClasseA. Se estes dois nomes são supostamente para estar em dois elementos diferentes, você precisa de dar a eles um nome único. Se você estiver a tentar adicionar o mesmo elemento ao seu diagrama, então a ferramenta de inserção de classes não é a melhor ferramenta para isso. Você deverá arrastar e largar a classe a partir da árvore, em alternativa. + + +Apagar Elementos +Você poderá remover qualquer elemento se seleccionar a opção Remover do seu menu de contexto. +Mais uma vez, existe uma grande diferença entre remover um objecto de um diagrama e remover um objecto do seu modelo. Se você remover um objecto de um diagrama, só o estará a remover desse diagrama em particular: o elemento continuará a fazer parte do seu modelo e, se existirem outros diagramas que usem o mesmo elemento, os mesmos não sofrerão qualquer alteração. Se, por outro lado, você remover o elemento da Árvore, você está efectivamente a remover o elemento do seu modelo. Dado que o elemento já não existe mais no seu modelo, ele será removido automaticamente de todos os diagramas em que aparece. + + +Editar Elementos +Você poderá editar a maioria dos elementos de &UML; do seu modelo e dos diagramas se abrir a sua janela respectiva de Propriedades e se seleccionar as opções apropriadas. Para editar as propriedades de um objecto, seleccione as Propriedades no seu menu de contexto (com o &RMB;). Cada elemento tem uma janela que consiste em várias páginas onde você poderá configurar as opções correspondentes a esse elemento. Para alguns elementos, como os actores, você define poucas acções, mas para outros como as classes, você poderá editar os seus atributos e operações, seleccionar o que deseja mostrar no diagrama (a assinatura da operação ou apenas os seus nomes, &etc;) e até as cores que deseja usar para as linhas e para o preenchimento da representação da classe no diagrama. + +Para a maioria dos elementos de &UML; você também poderá abrir a janela de propriedades se carregar duas vezes nele ao usar a ferramenta de selecção (a seta). A excepção a isto são as Associações, onde nesse caso carregar duas vezes cria um ponto de âncora. Para as associações, você precisa de usar o menu de contexto do &RMB; para aceder à janela de propriedades. + +Repare que você também poderá seleccionar a opção de propriedades no menu de contexto dos elemento na árvore. Isto permite-lhe também editar as propriedades dos diagramas, como a definição da visibilidade da grelha ou não. + + +Editar Classes +Ainda que a edição das propriedades de todos os objectos já tenha sido falada na secção anterior, as classes merecem uma secção especial porque são um pouco mais complicadas e têm mais opções que a maioria dos outros elementos de &UML;. +Na janela de propriedades de uma classe você poderá configurar tudo, desde a cor que usa até às operações e atributos que tem. + +Configuração Geral das Classes +A página de Opções Gerais da janela de propriedades é auto-compreensível. Aqui você poderá alterar o nome da classe, a visibilidade, a documentação, &etc;. Esta página está sempre disponível. + + +Configuração dos Atributos das Classes +Na página de Opções dos Atributos você poderá adicionar, editar ou remover atributos (variáveis) da classe. Você poderá subir ou descer os atributos na lista se carregar nas setas ao lado. Esta página está sempre disponível. + + +Configuração das Operações das Classes +De forma semelhante à página das Opções dos Atributos, na página de Opções das Operações você poderá adicionar, editar ou remover operações da sua classe. Ao adicionar ou editar uma operação, você indica os dados básicos na janela de Propriedades da Operação. Se você quiser adicionar parâmetros à sua operação você precisa de carregar no botão Novo Parâmetro, o qual irá mostrar a janela de Propriedades do Parâmetro. Esta página está sempre disponível + + +Configuração do Modelo de Classe +Esta página permite-lhe adicionar modelos de classes, os quais são classes ou tipos de dados não especificados. No Java 1.5 chamar-se-ão 'Generics' (Genéricos). + + +Página de Associações da Classe +A página Associações da Classe mostra todas as associações desta classe no diagrama actual. Se carregar duas vezes numa associação irá mostrar as suas propriedades e, dependendo do tipo de associação, você poderá modificar alguns parâmetros, como por exemplo a multiplicidade ou o nome do papel. Se a associação não permitir que essas opções sejam modificadas, a janela de Propriedades da Associação fica apenas para leitura e só poderá modificar a documentação referente a esta associação. +Esta página só está disponível se você abrir as Propriedades da Classe dentro de um diagrama. Se você seleccionar as propriedades da classe no menu de contexto da árvore, esta página não estará disponível. + + +Página de Visualização de Classes +Na página de Opções de Visualização, você poderá configurar o que deve ser mostrado no diagrama. Uma classe poderá ser mostrada apenas como um rectângulo com o nome da classe nele (útil se você tiver várias classes no seu diagrama, ou se não estiver interessado de momento nos detalhes de cada classe) ou então completo, mostrando por exemplo os pacotes, estereótipos, atributos e operações com a assinatura e visibilidade completas +Dependendo da quantidade de informação que você deseja ver, você poderá seleccionar as opções correspondentes nesta página. As alterações que fizer aqui são apenas opções de apresentação para o diagrama. Isto significa que, se esconder as operações de uma classe, só fará com que elas não sejam apresentadas no diagrama, mas estas mantêm-se à mesma como parte do seu modelo. Esta opção só está disponível se você seleccionar as propriedades de uma classe dentro de um diagrama. Se você abrir as propriedades de uma classe a partir da árvore, esta página não aparece, porque essas opções de apresentação não farão sentido nesse caso + + +Página de Cor da Classe +Na página Cor do Elemento você poderá configurar as cores que deseja usar para as linhas e para o enchimento do elemento. Esta opção só faz sentido obviamente para as classes mostradas nos diagramas e não aparece se você abrir a janela de propriedades da classe na árvore. + + + + +Associações +As associações relacionam dois objectos &UML; um com o outro. Normalmente as associações são definidas entre duas classes, mas alguns tipos de associações poderão também existir entre casos de uso e actores. +Para criar uma associação, seleccione a ferramenta apropriada na Barra de Trabalho (uma Associação genérica, uma Generalização, uma Agregação, &etc;), e carregue no primeiro elemento que participa na associação, carregando depois no segundo item participante. Repare que deve carregar duas vezes, uma em cada objecto que participa na associação, e não efectuar um arrastamento de um objecto para outro. +Se tentar usar uma associação de um forma que não respeite a especificação do &UML;, o &umbrello; recusar-se-á a criar a associação e você irá obter uma mensagem de erro. Este seria o caso se, por exemplo, existisse uma Generalização da classe A para a classe B e você quisesse criar outra generalização da classe B para a classe A +Se carregar com o botão direito numa associação, irá aparecer um menu de contexto com as acções que poderá aplicar nela. Se precisar de apagar uma associação, basta seleccionar a opção Remover deste menu de contexto. Você também poderá seleccionar a opção Propriedades e, dependendo do tipo de associação, editar os atributos como os papéis e a multiplicidade. + +Pontos Âncora +As associações são desenhadas, por omissão, como uma linha a direito a ligar os dois objectos no diagrama. +Você poderá adicionar pontos de âncora se fizer carregar duas vezes em qualquer ponto da linha da associação. Isto irá introduzir um ponto de âncora (representado como um ponto azul, quando a linha da associação fica seleccionada) que você poderá mover para dar forma à associação +Se precisar de remover um ponto de âncora, carregue duas vezes nele para o remover +Repare que a única forma de editar as propriedades de uma associação é através do menu de contexto. Se você tentar carregar duas vezes nele como faz com outros objectos &UML;, isto irá apenas introduzir um ponto de âncora. + + + + +Notas, Texto e Caixas +As Notas, as Linhas de Texto e as Caixas são elementos que poderão estar presentes em qualquer tipo de diagrama e não têm nenhum valor semântico, mas são muito úteis para adicionar comentários ou explicações-extra que possam tornar o seu diagrama mais simples de entender. +Para adicionar uma Nota ou uma Linha de Texto, seleccione a ferramenta correspondente na Barra de Ferramentas de Trabalho e carregue no diagrama onde deseja colocar o seu comentário. Você poderá editar o texto se abrir o elemento com o seu menu de contexto ou, no caso das notas, se carregar duas vezes nelas. + +Âncoras +As âncoras são usadas para ligar uma nota de texto com outro elemento de &UML; em conjunto. Por exemplo, você usa normalmente uma nota de texto para explicar ou fazer algum comentário acerca de uma classe ou de uma associação em particular onde, nesse caso, você poderá usar a âncora para clarificar que a nota pertence a esse elemento em particular. +Para adicionar uma âncora entre uma nota e outro elemento de &UML;, use a ferramenta da âncora na barra de ferramentas de trabalho. Você precisa de carregar primeiro na nota e depois no elemento de &UML; a que deseja ligar a nota. + + + + + -- cgit v1.2.1