diff options
Diffstat (limited to 'tde-i18n-ru/docs/tdebase/kate')
-rw-r--r-- | tde-i18n-ru/docs/tdebase/kate/Makefile.am | 4 | ||||
-rw-r--r-- | tde-i18n-ru/docs/tdebase/kate/Makefile.in | 635 | ||||
-rw-r--r-- | tde-i18n-ru/docs/tdebase/kate/advanced.docbook | 2310 | ||||
-rw-r--r-- | tde-i18n-ru/docs/tdebase/kate/configuring.docbook | 2600 | ||||
-rw-r--r-- | tde-i18n-ru/docs/tdebase/kate/fundamentals.docbook | 1097 | ||||
-rw-r--r-- | tde-i18n-ru/docs/tdebase/kate/highlighting.docbook | 1404 | ||||
-rw-r--r-- | tde-i18n-ru/docs/tdebase/kate/index.cache.bz2 | bin | 0 -> 61398 bytes | |||
-rw-r--r-- | tde-i18n-ru/docs/tdebase/kate/index.docbook | 504 | ||||
-rw-r--r-- | tde-i18n-ru/docs/tdebase/kate/man-kate.1.docbook | 292 | ||||
-rw-r--r-- | tde-i18n-ru/docs/tdebase/kate/mdi.docbook | 356 | ||||
-rw-r--r-- | tde-i18n-ru/docs/tdebase/kate/menus.docbook | 2238 | ||||
-rw-r--r-- | tde-i18n-ru/docs/tdebase/kate/part.docbook | 984 | ||||
-rw-r--r-- | tde-i18n-ru/docs/tdebase/kate/plugins.docbook | 39 | ||||
-rw-r--r-- | tde-i18n-ru/docs/tdebase/kate/regular-expressions.docbook | 1208 |
14 files changed, 13671 insertions, 0 deletions
diff --git a/tde-i18n-ru/docs/tdebase/kate/Makefile.am b/tde-i18n-ru/docs/tdebase/kate/Makefile.am new file mode 100644 index 00000000000..a3fe9883de0 --- /dev/null +++ b/tde-i18n-ru/docs/tdebase/kate/Makefile.am @@ -0,0 +1,4 @@ +KDE_LANG = ru +SUBDIRS = $(AUTODIRS) +KDE_DOCS = kate +KDE_MANS = AUTO diff --git a/tde-i18n-ru/docs/tdebase/kate/Makefile.in b/tde-i18n-ru/docs/tdebase/kate/Makefile.in new file mode 100644 index 00000000000..f0ca79e9f27 --- /dev/null +++ b/tde-i18n-ru/docs/tdebase/kate/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/tdebase/kate +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 = ru +#>- SUBDIRS = $(AUTODIRS) +#>+ 1 +SUBDIRS =. +KDE_DOCS = kate +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/tdebase/kate/Makefile'; \ +#>- cd $(top_srcdir) && \ +#>- $(AUTOMAKE) --gnu docs/tdebase/kate/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/tdebase/kate/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdebase/kate/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdebase/kate/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=fundamentals.docbook configuring.docbook Makefile.in man-kate.1.docbook plugins.docbook index.docbook part.docbook highlighting.docbook menus.docbook advanced.docbook regular-expressions.docbook Makefile.am mdi.docbook index.cache.bz2 + +#>+ 24 +index.cache.bz2: $(srcdir)/index.docbook $(KDE_XSL_STYLESHEET) regular-expressions.docbook man-kate.1.docbook part.docbook mdi.docbook index.docbook menus.docbook advanced.docbook fundamentals.docbook configuring.docbook plugins.docbook highlighting.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)/kate + @if test -f index.cache.bz2; then \ + echo $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kate/; \ + $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kate/; \ + elif test -f $(srcdir)/index.cache.bz2; then \ + echo $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kate/; \ + $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kate/; \ + fi + -rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kate/common + $(LN_S) $(kde_libs_htmldir)/$(KDE_LANG)/common $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kate/common + +uninstall-docs: + -rm -rf $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kate + +clean-docs: + -rm -f index.cache.bz2 + + +#>+ 13 +install-nls: + $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kate + @for base in regular-expressions.docbook man-kate.1.docbook part.docbook mdi.docbook index.docbook menus.docbook advanced.docbook fundamentals.docbook configuring.docbook plugins.docbook highlighting.docbook ; do \ + echo $(INSTALL_DATA) $$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kate/$$base ;\ + $(INSTALL_DATA) $(srcdir)/$$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kate/$$base ;\ + done + +uninstall-nls: + for base in regular-expressions.docbook man-kate.1.docbook part.docbook mdi.docbook index.docbook menus.docbook advanced.docbook fundamentals.docbook configuring.docbook plugins.docbook highlighting.docbook ; do \ + rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/kate/$$base ;\ + done + + +#>+ 5 +distdir-nls: + for file in regular-expressions.docbook man-kate.1.docbook part.docbook mdi.docbook index.docbook menus.docbook advanced.docbook fundamentals.docbook configuring.docbook plugins.docbook highlighting.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/tdebase/kate/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu docs/tdebase/kate/Makefile + cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdebase/kate/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-ru/docs/tdebase/kate/advanced.docbook b/tde-i18n-ru/docs/tdebase/kate/advanced.docbook new file mode 100644 index 00000000000..f4ff404d4a0 --- /dev/null +++ b/tde-i18n-ru/docs/tdebase/kate/advanced.docbook @@ -0,0 +1,2310 @@ +<chapter id="advanced-editing-tools"> +<chapterinfo> +<authorgroup> +<author +>&Anders.Lund; &Anders.Lund.mail;</author> +<author +>&Dominik.Haumann; &Dominik.Haumann.mail;</author> +<othercredit role="translator" +><firstname +>Андрей</firstname +><surname +>Балагута</surname +><affiliation +><address +><email +>uj2@mail.ru</email +></address +></affiliation +><contrib +>Перевод на русский</contrib +></othercredit +> <othercredit role="translator" +><firstname +>Алексей</firstname +><surname +>Опарин</surname +><affiliation +><address +><email +>opaleksej@yandex.ru</email +></address +></affiliation +><contrib +>Перевод на русский</contrib +></othercredit +> +</authorgroup> +</chapterinfo> +<title +>Дополнительные возможности редактирования</title> + +<sect1 id="advanced-editing-tools-comment"> + +<title +>Комментирование</title> + +<para +>Команды "Комментировать" и "Раскомментировать", которые доступны из меню <guimenu +>Сервис</guimenu +>, позволяют добавить или убрать маркеры комментариев для выделенного блока текста (или для текущей строки, если текст не выделен), при условии, что комментарии поддерживаются форматом редактируемого текста.</para> + +<para +>Правила комментирования определяются синтаксисом; таким образом, если подсветка синтаксиса не включена, то команды "Закомментировать" и "Раскомментировать" будут недоступны. </para> + +<para +>Некоторые форматы поддерживают только однострочные маркеры комментариев, другие -- только многострочные, третьи -- и те, и другие. Если многострочные маркеры недоступны, то комментирование блока, в котором не до конца выделена последняя строка, будет невозможным.</para> + +<para +>Предпочтение отдаётся комментированию отдельных строк однострочными маркерами, если последние допустимы синтаксисом и если такое комментирование возможно -- это помогает избежать проблем со вложенными комментариями.</para> + +<para +>При удалении маркеров комментариев выделение снимается с раскомментированного текста. При удалении маркеров многострочного комментария пробелы снаружи маркеров игнорируются.</para> + +<para +><indexterm +><primary +>закомментировать</primary +></indexterm +> Чтобы закомментировать выделенный текст (или активную строку), выберите пункт меню<menuchoice +><guimenu +>Сервис</guimenu +><guimenuitem +>Закомментировать</guimenuitem +></menuchoice +> или нажмите соответствующее сочетание клавиш (по умолчанию <keycombo action="simul" +>&Ctrl;<keycap +>D</keycap +></keycombo +>).</para> + +<para +><indexterm +><primary +>раскомментировать</primary +></indexterm +> Чтобы удалить маркеры комментариев, выберите пункт меню <menuchoice +><guimenu +>Сервис</guimenu +><guimenuitem +>Раскомментировать</guimenuitem +> </menuchoice +> или нажмите соответствующее сочетание клавиш ( по умолчанию <keycombo action="simul" +>&Ctrl;&Shift;<keycap +>D</keycap +></keycombo +>).</para> + +</sect1> + +<sect1 id="advanced-editing-tools-commandline"> +<title +>Командная строка компонента редактора</title> + +<para +>Модуль Kate имеет встроенную командную строку, позволяющую производить различные действия, оставляя интерфейс минималистским. Она представляет из себя поле ввода внизу области редактора. Для получения к ней доступа, выберите пункт меню <menuchoice +><guimenu +>Вид</guimenu +><guimenuitem +>Переключиться в командную строку</guimenuitem +></menuchoice +> или нажмите <keycombo action="simul" +><keycap +>F7</keycap +></keycombo +> (по умолчанию). Команды, доступные из неё, описаны ниже, кроме того, модули могут предоставлять свои дополнительные команды.</para> + +<para +>Для выполнения команды введите её и нажмите Enter. На месте команды будет выведено сообщение об успешном её выполнении или об ошибке. Если вы вызвали командную строку клавишей <keycap +>F7</keycap +>, она будет автоматически скрыта по прошествии нескольких секунд. Для того чтобы убрать сообщение и ввести новую команду, нажмите <keycap +>F7</keycap +> ещё раз.</para> + +<para +>Вы всегда можете получить справку с помощью команды <command +>help</command +>. Для получение списка всех доступных команд, введите <command +>help list</command +>, для просмотра справки по определённой команде - <command +>help <replaceable +>команда</replaceable +></command +>.</para> + +<para +>Для навигации по истории команд, воспользуйтесь стрелками <keycap +>Вверх</keycap +> и <keycap +>Вниз</keycap +>. При отображении команды из истории, её аргументы будут выделены, так что заменить их на другие легко.</para> + +<sect2 id="advanced-editing-tools-commandline-commands"> +<title +>Стандартные команды</title> + +<sect3 id="advanced-editing-tools-commandline-commands-configure"> +<title +>Параметры редактора</title> + +<para +>Установленные таким способом параметры применяются только к текущему экземпляру редактора и не сохраняются. Удобно, если нужно установить параметры, отличные от стандартных (например, отступ). </para> + +<variablelist> +<title +>Типы аргументов</title> + +<varlistentry> +<term +>BOOLEAN</term> +<listitem +><para +>Используется для команд включения/выключения. Допустимые значения - <userinput +>on</userinput +>, <userinput +>off</userinput +>, <userinput +>true</userinput +>, <userinput +>false</userinput +>, <userinput +>1</userinput +> или <userinput +>0</userinput +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +>INTEGER</term> +<listitem +><para +>Целое число</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>STRING</term> +<listitem +><para +>Строка</para +></listitem> +</varlistentry> + +</variablelist> + +<variablelist> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-tab-width</command +><arg +>INTEGER width</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает расстояние между позициями табуляции</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-indent-width</command +><arg +>INTEGER width</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает ширину отступа. Только при создании отступов пробелами.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-word-wrap-column</command +><arg +>INTEGER width</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает максимальную длину строк в случае, если включён автоматический перенос.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-icon-border</command +><arg +>BOOLEAN enable</arg +> </cmdsynopsis +></term> +<listitem +><para +>Устанавливает видимость рамок пиктограмм.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-folding-markers</command +><arg +>BOOLEAN enable</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает видимость маркеров сворачивания блоков кода.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-line-numbers</command +><arg +>BOOLEAN enable</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает видимость нумерации строк.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-replace-tabs</command +><arg +>BOOLEAN enable</arg +></cmdsynopsis +></term> +<listitem +><para +>Заменять при вводе символы табуляции на пробелы. </para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-remove-trailing-space</command +><arg +>BOOLEAN enable</arg +></cmdsynopsis +></term> +<listitem +><para +>Удалять пробелы в конце строки при снятии с неё курсора.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-show-tabs</command +><arg +>BOOLEAN enable</arg +></cmdsynopsis +></term> +<listitem +><para +>Представлять символы табуляции пробельное пространство в конце строк маленькими точками.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-indent-spaces</command +><arg +>BOOLEAN enable</arg +></cmdsynopsis +></term> +<listitem +><para +>Вставлять заданное количество пробелов для каждого уровня отступа, вместо одного символа табуляции.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-mixed-indent</command +><arg +>BOOLEAN enable</arg +></cmdsynopsis +></term> +<listitem +><para +>Использовать для отступов как символы табуляции, так и пробелы. Это реализуется путём замены пробелов в количестве, кратном ширине символа табуляциями, на последние.</para> +<para +>Эта команда также включит расстановку отступов пробелами, и установит ширину отступов, если она не указана, в половину значения <option +>tab-width</option +> (для текущего документа на время выполнения).</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-word-wrap</command +><arg +>BOOLEAN enable</arg +></cmdsynopsis +></term> +<listitem +><para +>Динамический перенос слов</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-replace-tabs-save</command +><arg +>BOOLEAN enable </arg +></cmdsynopsis +></term> +<listitem +><para +>Заменять символы табуляции на пробелы при сохранении.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-remove-trailing-space-save</command +><arg +>BOOLEAN enable</arg +></cmdsynopsis +></term> +<listitem +><para +>Удалить пробелы в конце строк при сохранении.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-indent-mode</command +><arg +>name</arg +></cmdsynopsis +></term> +<listitem +><para +>Выбрать режим расстановки отступов. Параметр <userinput +>name</userinput +> может иметь следующие значения: 'cstyle', 'csands', 'xml', 'python', 'varindent' и 'none'. При других значениях используется 'none'.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>set-highlight</command +><arg +>highlight</arg +></cmdsynopsis +></term> +<listitem +><para +>Выбрать формат для подсветки, один из содержащихся в подменю<menuchoice +><guimenu +>Сервис</guimenu +><guisubmenu +>Подсветка синтаксиса</guisubmenu +></menuchoice +>. Доступно также автозавершение параметра.</para +></listitem> +</varlistentry> + +</variablelist> + +</sect3> + +<sect3 id="advanced-editing-tools-commandline-commands-edit"> +<title +>Команды редактирования</title> + +<para +>Команды, которые непосредственно изменяют текущий документ.</para> + +<variablelist> +<varlistentry> +<term +><cmdsynopsis +><command +>indent</command +></cmdsynopsis +></term> +<listitem +><para +>Подставляет отступы к выделенным строкам или к текущей.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>unindent</command +></cmdsynopsis +></term> +<listitem +><para +>Снимает отступы с выделенных строк или с текущей.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>cleanindent</command +></cmdsynopsis +></term> +<listitem +><para +>Очистить отступы в выделенных строках или в текущей в соответствии с параметрами расстановки отступов для текущего документа. </para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>comment</command +></cmdsynopsis +></term> +<listitem +><para +>Вставляет маркеры, отмечающие выделенные строки или текущую как комментарии, в соответствии с форматом текущего файла (определяется способом подсветки синтаксиса).</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>uncomment</command +></cmdsynopsis +></term> +<listitem +><para +>Удалить маркеры, отмечающие выделенные строки или текущую как комментарии, в соответствии с форматом текущего файла.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>kill-line</command +></cmdsynopsis +></term> +<listitem +><para +>Удаляет текущую строку.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>replace</command +><arg +>pattern</arg +><arg +>replacement</arg +></cmdsynopsis +></term> +<listitem +><para +>Заменить текст, совпадающий с <userinput +>pattern</userinput +> на <userinput +>replacement</userinput +>. Для включения пробелов в <userinput +>pattern</userinput +>, нужно заключить в двойные или одинарныекавычки и <userinput +>pattern</userinput +>, и <userinput +>replacement</userinput +>. Если аргументы не заключены в кавычки, первое слово будет принято за <userinput +>pattern</userinput +>, а остальное - за <userinput +>replacement</userinput +>. Если <userinput +>replacement</userinput +> не задать, все <userinput +>pattern</userinput +> будут удалены.</para> +<para +>Для настройки параметров поиска, нужно указать соответствующие флаги после двоеточия (<userinput +>replace:options pattern replacement</userinput +>). Возможные параметры: <variablelist> + +<varlistentry> +<term +><userinput +>b</userinput +></term> +<listitem +><para +>Искать в обратном направлении.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>c</userinput +></term> +<listitem +><para +>Искать от позиции курсора.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>e</userinput +></term> +<listitem +><para +>Искать только в выделенном тексте.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>r</userinput +></term> +<listitem +><para +>Аргумент <userinput +>pattern</userinput +> - регулярное выражение. Вы можете использовать <userinput +>\N</userinput +> в <userinput +>replacement</userinput +> для получения N-ной подстроки найденного текста.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>s</userinput +></term> +<listitem +><para +>С учётом регистра.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>p</userinput +></term> +<listitem +><para +>Подтверждать каждую замену.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>w</userinput +></term> +<listitem +><para +>Только целые слова.</para +></listitem> +</varlistentry> + +</variablelist> + +</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>date</command +><arg +>format</arg +></cmdsynopsis +></term> +<listitem +><para +>Вставить строку с датой/временем в указанном формате (задаётся параметром <userinput +>format</userinput +>), или в <quote +>yyyy-MM-dd hh:mm:ss</quote +>, если параметр упущен. Доступны следующие подстановки: <informaltable +> <tgroup cols="2" +> <tbody> +<row +><entry +><literal +>d</literal +></entry +><entry +>Номер дня в месяце без ведущего нуля (1-31).</entry +></row> +<row +><entry +><literal +>dd</literal +></entry +><entry +>Номер дня в месяце с ведущим нулём (01-31).</entry +></row> +<row +><entry +><literal +>ddd</literal +></entry +><entry +>Сокращённое название дня недели ('Пн'..''Вс, 'Mon'..'Sun').</entry +></row> +<row +><entry +><literal +>dddd</literal +></entry +><entry +>Полное названия дня недели ('Понедельник'..'Воскресенье', 'Monday'..'Sunday').</entry +></row> +<row +><entry +><literal +>M</literal +></entry +><entry +>Номер месяца без ведущего нуля (1-12).</entry +></row> +<row +><entry +><literal +>MM</literal +></entry +><entry +>Номер месяца с ведущим нулём (01-12).</entry +></row> +<row +><entry +><literal +>MMM</literal +></entry +><entry +>Сокращённое название месяца ('Янв'..'Дек', 'Jan'..'Dec').</entry +></row> +<row +><entry +><literal +>yy</literal +></entry +><entry +>Год двумя цифрами (00-99).</entry +></row> +<row +><entry +><literal +>yyyy</literal +></entry +><entry +>Год четырьмя цифрами (1752-8000).</entry +></row> +<row +><entry +><literal +>h</literal +></entry +><entry +>Час без ведущего нуля (0..23 или 1..12, в зависимости от настроек).</entry +></row> +<row +><entry +><literal +>hh</literal +></entry +><entry +>Час с ведущим нулём (00..23 or 01..12, в зависимости от настроек).</entry +></row> +<row +><entry +><literal +>m</literal +></entry +><entry +>Минуты без ведущего нуля (0..59).</entry +></row> +<row +><entry +><literal +>mm</literal +></entry +><entry +>Минуты с ведущим нулём (00..59).</entry +></row> +<row +><entry +><literal +>s</literal +></entry +><entry +>Секунды без ведущего нуля (0..59).</entry +></row> +<row +><entry +><literal +>ss</literal +></entry +><entry +>Секунды с ведущим нулём (00..59).</entry +></row> +<row +><entry +><literal +>z</literal +></entry +><entry +>Миллисекунды без ведущих нулей (0..999).</entry +></row> +<row +><entry +><literal +>zzz</literal +></entry +><entry +>Миллисекунды с ведущими нулями (000..999).</entry +></row> +<row +><entry +><literal +>AP</literal +></entry +><entry +>Использовать 12-часовый формат часов. AP будет заменено на "AM" или "PM".</entry +></row> +<row +><entry +><literal +>ap</literal +></entry +><entry +>Использовать 12-часовый формат часов. ap будет заменено на "am" или "pm".</entry +></row> + +</tbody> +</tgroup> +</informaltable> + +</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>char</command +><arg +>identifier</arg +></cmdsynopsis +></term> +<listitem> +<para +>Эта команда позволяет вставить символ по его числовому идентификатору в десятичной, восьмеричной или шестнадцатеричной системах счисления. Чтобы использовать её, откройте диалоговое окно "Команда правки" и наберите <userinput +>char: [number]</userinput +> в строке ввода, после чего нажмите кнопку <guibutton +>OK</guibutton +>.</para> + +<example> +<title +>Примеры использования команды <command +>char</command +></title> + +<para +>Введите: <userinput +>char:234</userinput +></para> +<para +>Получите: <computeroutput +>ê</computeroutput +></para> +<para +>Введите: <userinput +>char:0x1234</userinput +></para> +<para +>Получите: <computeroutput +>ሴ</computeroutput +></para> +</example> + +</listitem> +</varlistentry> + +<varlistentry> +<term> +<indexterm +><primary +>замена в стиле sed</primary> +<secondary +>поиск в стиле sed</secondary +></indexterm> +<command +>s///[ig]</command +> <command +>%s///[ig]</command +></term> + +<listitem> +<para +>"Типичный пользователь" при виде этих команд обязательно вздрогнет и начнёт искать на клавиатуре кнопку "Windows". В самом деле, кому придёт в голову искать текст подобным образом? Но вы же не "типичный", не так ли? Поэтому попробуем разобраться в этих двух sed-подобных командах. Первая выполняет поиск/замену в текущей строке, вторая -- во всём файле (<command +>%s///</command +>).</para> + +<para +>Вкратце, команды производят поиск текста, заданного <emphasis +>маской поиска</emphasis +> -- регулярным выражением (regexp) между первой и второй наклонной чертой, и, при нахождении, выполняет замену выражением, которое задано между второй и третьей чертой. Круглые скобки в маске поиска позволяют задать подстроки в найденном тексте, на которые можно потом ссылаться в выражении замены. Обратная ссылка -- это регулярное выражение, которое при совпадении заменяется на фактический текст и может быть использовано в шаблоне замены. Для этого, в нужном месте поставьте обратную черту, а за ней номер подстроки по порядку (<userinput +>\1</userinput +> -- для первой пары скобок, <userinput +>\2</userinput +> -- для второй, и т. д.).</para> + +<para +>Чтобы искать сами скобки <literal +>(</literal +> или <literal +>)</literal +>, нужно предварить их обратной чертой: <userinput +>\(\)</userinput +></para> + +<para +>Если в самом конце указать <userinput +>i</userinput +>, поиск будет проводиться с учётом регистра, а если <userinput +>g</userinput +> - будут заменены все вхождения текста, совпадающего с регулярным выражением, иначе - только первое.</para> + +<example> + +<title +>Замена текста в текущей строке</title> + +<para +>Будучи противником принципа "разделяй и властвуй", вы решили откомпилировать свою программу. Но компилятор начал на вас ругаться: класс <classname +>myClass</classname +>, упомянутый в строке 3902, не определён.</para> + +<para +>"Чёрт!", - думаете вы, -- "да это же мой класс <classname +>MyClass</classname +>". Вы добираетесь до строки 3902 и, вместо того, чтобы пытаться искать слово в этой длинной строке (а кто сейчас укладывает каждую строчку кода в 60 символов?), вы запускаете диалоговое окно "Команда правки", вводите <userinput +>s/myclass/MyClass/i</userinput +>, жмёте <guibutton +>OK</guibutton +>, сохраняете и компилируйте -- успешно и без ошибок.</para> + +</example> + +<example> +<title +>Замена текста во всём файле</title> + +<para +>Представьте себе, что у вас есть файл, в котором вы несколько раз упоминаете некоего человека по имени <quote +>госпожа Иванова</quote +>. Но вдруг вам сообщают, что эта самая госпожа Иванова вчера вышла замуж за господина с редкой фамилией <quote +>Петров</quote +>. Естественно, вам нужно заменить все упоминания о госпоже Ивановой на текст <quote +>госпожа Петрова</quote +>.</para> + +<para +>Вызовите командную строку и введите следующий текст: <userinput +>%s/госпожа Иванова/госпожа Петрова/</userinput +> -- и ваша работа сделана.</para> + +</example> + +<example> +<title +>Более сложный пример</title> + +<para +>Этот пример показывает, как пользоваться <emphasis +>обратными ссылками</emphasis +> и <emphasis +>классами символов</emphasis +> (если вы не знаете, что это такое, советуем ознакомиться с приведенными ниже разделами).</para> + +<para +>Допустим, у вас набрана такая строка: <programlisting +>void MyClass::DoStringOps( String &foo, String &bar String *p, int &a, int &b )</programlisting> +</para> +<para +>Теперь вы думаете, что это недостаточно "красивый" код, и решаете, что вам нужно использовать ключевое слово <constant +>const</constant +> с параметрами, передаваемыми по ссылке (теми, перед которыми стоит амперсанд). Вы также хотите удалить лишние пробелы.</para> + +<para +>Запустите диалоговое окно "Команда правки" и наберите: <userinput +>s/\s+(\w+)\s+(&)/ const \1 \2/g</userinput +>, и не забудьте нажать кнопку <guibutton +>OK</guibutton +> -- иначе ничего не выйдет. Символ <userinput +>g</userinput +> в конце команды указывает компилятору "пересчитывать" регулярное выражение обратной ссылки каждый раз, когда встречаются совпадения.</para> + +<para +>Вывод: <computeroutput +>void MyClass::DoStringOps( const String &foo, const String &bar String *p, const int &a, const int &b )</computeroutput +></para> + +<para +>Миссия завершена! Ну, и что же произошло? Мы искали некоторое количество пробелов (<literal +>\s+</literal +>), за которыми идут несколько латинских символов (<literal +>\w+</literal +>), следом за ними опять несколько пробелов (<literal +>\s+</literal +>), после которых стоит амперсанд, и по ходу дела сохраняли эти алфавитные символы и амперсанд для использования их в операции замены. После этого мы заменили совпадающие части строки следующей последовательностью: один пробел, за которым идёт спецификатор <quote +>const</quote +>, за ним ещё один пробел, после которого наши сохранённые символы (<literal +>\1</literal +>), ещё один пробел и сохранённый амперсанд (<literal +>\2</literal +>)</para> + +<para +>В одном случае латинские символы составили слово <quote +>String</quote +>, в другом -- слово <quote +>int</quote +>, т.е. символьный класс <literal +>\w</literal +> с последующим знаком <literal +>+</literal +> определяет символьный набор произвольной длины.</para> + +</example> + +</listitem> + +</varlistentry> + +</variablelist> + +</sect3> + +<sect3 id="advanced-editing-tools-commandline-commands-navigation"> +<title +>Команды навигации</title> + +<variablelist> + +<varlistentry> +<term +><cmdsynopsis +><command +>goto</command +><arg +>INT line</arg +></cmdsynopsis +></term> +<listitem +><para +>Перейти к указанной строке.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>find</command +><arg +>pattern</arg +></cmdsynopsis +></term> +<listitem +><para +>Перейти к первому образцу, заданному параметром <userinput +>pattern</userinput +>. Последующие вхождения образца можно найти посредством пункта меню <menuchoice +><guimenu +>Правка</guimenu +><guimenuitem +>Найти далее</guimenuitem +></menuchoice +> (клавиша по умолчанию - <keycap +>F3</keycap +>).</para> +<para +>Параметры команды поиска можно задавать добавлением двоеточия и "флагов" после её имени (<userinput +>find:options pattern</userinput +>). Флаги - набор из следующих букв: <variablelist> + +<varlistentry> +<term +><userinput +>b</userinput +></term> +<listitem +><para +>Искать в обратном направлении.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>c</userinput +></term> +<listitem +><para +>Искать от позиции курсора.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>e</userinput +></term> +<listitem +><para +>Искать только в выделенном тексте.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>r</userinput +></term> +<listitem +><para +>Аргумент <userinput +>pattern</userinput +> - регулярное выражение. Вы можете использовать <userinput +>\N</userinput +> в <userinput +>replacement</userinput +> для получения N-ной подстроки найденного текста.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>s</userinput +></term> +<listitem +><para +>С учётом регистра.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>w</userinput +></term> +<listitem +><para +>Только целые слова.</para +></listitem> +</varlistentry> + +</variablelist> + +</para> + +</listitem> + +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>ifind</command +><arg +>pattern</arg +></cmdsynopsis +></term> +<listitem +><para +>Поиск по мере набора. Поддерживается установка дополнительных флагов <variablelist> +<varlistentry> +<term +><userinput +>b</userinput +></term> +<listitem +><para +>Искать в обратном направлении.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>r</userinput +></term> +<listitem +><para +>Поиск по регулярному выражению.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>s</userinput +></term> +<listitem +><para +>С учётом регистра.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>c</userinput +></term> +<listitem +><para +>Искать от позиции курсора.</para +></listitem> +</varlistentry> + +</variablelist> +</para +></listitem> +</varlistentry> + +</variablelist> + +</sect3> + +</sect2> + +</sect1> + +<sect1 id="advanced-editing-tools-code-folding"> +<title +>Использование сворачивания кода</title> + +<para +>Сворачивание кода позволяет скрывать участки документа в редакторе, упрощая осмотр громоздких документов. В &kate; разделение на сворачиваемые участки определяется правилами подсветки синтаксиса, следовательно, доступно не для всех форматов файлов. В основном, сворачивание кода доступно в режиме написания исходного кода, XML-разметки и т.п. Большинство способов подсветки позволяют также самостоятельно определять скрываемые области, чаще всего используя ключевые слова <userinput +>BEGIN</userinput +> и <userinput +>END</userinput +>.</para> + +<para +>Для того чтобы включить/отключить функцию сворачивания, выберите пункт меню <menuchoice +><guimenu +>Вид</guimenu +><guimenuitem +>Показать маркеры сворачивания</guimenuitem +></menuchoice +>. На панели маркеров сворачивания с левой стороны документа появится графическое представление сворачиваемых участков. Знак "-" показывает, что участок развёрнут, знак "+" обозначает свёрнутый участок. Щелчок на знаке "+" приведёт к разворачиванию свёрнутого участка, и наоборот (с одновременным изменением графического представления).</para> + +<para +>Для управления состоянием сворачиваемых участков служат четыре команды, смотрите <link linkend="view-code-folding" +>справку по меню</link +>. </para> + +<para +>Если вы не хотите использовать функцию сворачивания, можно отключить параметр <guilabel +>Показать маркеры сворачивания (если доступны)</guilabel +> на <link linkend="config-dialog-editor-appearance" +>странице настройки внешнего вида редактора</link +></para> + +</sect1> + +<sect1 id="advanced-editing-tools-scripting"> + +<title +>Написание сценариев Javascript в компоненте редактора</title> + +<sect2 id="advanced-editing-tools-scripting-introduction"> + +<title +>Введение</title> + +<para +>Начиная с версии 2.5, компонент редактора &kate; поддерживает написание сценариев на языке ECMA, известном также как JavaScript.</para> + +<para +>Сценарии можно вызывать только из <link linkend="advanced-editing-tools-commandline" +>встроенной командной строки</link +>. При этом необходимо, чтобы сценарий и файл .desktop (если он существует) находились в той папке, в которой &kate; сможет их разыскать. Подходящая папка для этого - <filename +>katepart/scripts</filename +> в папках данных &kde;. Найти папки данных можно командой <command +>kde-config <option +>--path</option +> <parameter +>data</parameter +></command +>. Как правило, существуют системная и пользовательские папки данных. Естественно, сценарии в системных папках доступны всем пользователям системы, а в пользовательских - только их владельцам.</para> + +<note +><para +>Эта функциональность находится на экспериментальной стадии разработки, весьма вероятно его изменение в дальнейшем.</para> +<para +>Сценарии нельзя добавлять в меню или назначать им комбинации клавиш. Может быть, в дальнейшем мы сможем это исправить.</para> +<para +>Также невозможно использовать в сценариях аргументы. Потерпите, в светлом будущем это вполне может произойти ;)</para> +</note> + +</sect2> + +<sect2 id="advanced-editing-tools-scripting-reference"> + +<title +>Программный интерфейс (API) Kate JavaScript</title> + +<para +>Здесь приведен полный список функций и свойств, доступных для объектов <type +>document</type +> и <type +>view</type +>. Разумеется, доступны любые стандартные объекты языка, такие как <type +>Math</type +>, <type +>String</type +>, <type +>Regex</type +> и т.д.</para> + +<para +>Во время исполнения сценария, объектом <classname +>document</classname +> является текущий документ, а объектом <classname +>view</classname +> является текущий вид (панель).</para> + +<note +><para +>Конечно, в настоящее время типы аргументов в JavaScript не используются, они просто информируют, какие виды значений ожидаются функциями.</para +></note> + +<variablelist id="advanced-editing-tools-scripting-global"> +<title +>Глобальные функции</title> +<varlistentry> +<term +><function +>debug( <parameter +><replaceable +>string</replaceable +></parameter +>) [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>параметры</title> +<listitem +><para +><parameter +>string</parameter +> выводимая строка</para> +</listitem> +</itemizedlist> +<para +>Выводит строку на стандартный поток ошибок, используя функцию <function +>kDebug()</function +>. Для вывода используется выделенное пространство, в начало может быть добавлен префикс <computeroutput +>Kate (KJS Scripts):</computeroutput +> </para> +</listitem> +</varlistentry> +</variablelist> + +<variablelist id="advanced-editing-tools-scripting-document"> +<title +>Программный интерфейс (API) класса <classname +>document</classname +></title> + +<varlistentry> +<term +><function +>document.attribute( <parameter +><replaceable +>line</replaceable +> </parameter +>, <parameter +><replaceable +>column</replaceable +></parameter +> ); [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>uint line</parameter +> Строка, в которой находится атрибут.</para +></listitem> +<listitem +><para +><parameter +>uint column</parameter +> Столбец, в котором находится атрибут.</para +></listitem> +</itemizedlist> +<para +>Возвращает числовые значения позиции атрибута в документе [<parameter +>line</parameter +>,<parameter +>column</parameter +>]. Атрибут представляет собой вид или стиль текста, а также используется для определения подсветки синтаксиса в различных частях текста смешанных форматов вроде HTML или PHP.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.canBreakAt( <parameter +>Char c</parameter +>, <parameter +>uint attribute</parameter +> ); [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>c</parameter +> Знак для проверки</para +></listitem> +<listitem +><para +><parameter +>attribute</parameter +> Атрибут для позиции <parameter +>c</parameter +>.</para +></listitem> +</itemizedlist> +<para +> Возвращает допустимость разрыва строки на знаке c с атрибутом attribute. Результат зависит от того, какие атрибуты допускают разрыв строки без потери принадлежности подсветки.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.canComment( <parameter +>uint start_attribute</parameter +>, <parameter +>uint end_attribute</parameter +> ); [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>start_attribute</parameter +> Атрибут начала участка комментария.</para +></listitem> +<listitem +><para +><parameter +>end_attribute</parameter +> Атрибут конца участка комментария.</para +></listitem> +</itemizedlist> +<para +>Возвращает принадлежность start_attribute и end_attribute к одной и той же системе подсветки синтаксиса. Если это так - всё нормально. </para> +<example> +<title +>использование canComment</title> +<programlisting +>if ( document.canComment( document.attribute(1,0), document.attribute(5,0) ) ) { + // 1,0 и 5,0 принадлежат к одной системе подсветки синтаксиса +} +</programlisting> +</example> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.clear(); [функция]</function +></term> +<listitem +><para +>Очищает документ.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.commentStart( <parameter +>uint attribute</parameter +> ); [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>attribute</parameter +> Атрибут текста, для которого вводится строка commentStart.</para +></listitem> +</itemizedlist> +<para +>Возвращает строку, необходимую для начала многострочного комментария к тексту с атрибутом, или пустую строку, если в этом тексте не поддерживаются многострочные комментарии.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.commentMarker( <parameter +>uint attribute</parameter +> ); [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>attribute</parameter +> Атрибут текста, для которого вводится строка commentMarker</para +></listitem> +</itemizedlist> +<para +>Возвращает пометку остатка строки как комментария к тексту с атрибутом, либо пустую строку для текста, в котором не поддерживаются комментарии в той же строке.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.commentEnd( <parameter +>uint attribute</parameter +> ); [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>attribute</parameter +> Атрибут текста, для которого вводится строка commentEnd</para +></listitem> +</itemizedlist> +<para +>Возвращает строку, необходимую для окончания многострочного комментария к тексту с атрибутом, либо пустую строку для текста, в котором многострочные комментарии не поддерживаются.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.editBegin(); [функция]</function +></term> +<listitem> +<para +>Начало группы редактирования. Все действия включаются в одну группу отмены до вызова editEnd().</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.editEnd(); [функция]</function +></term> +<listitem> +<para +>Окончание группы редактирования.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.highlightMode; [свойство:только для чтения]</function +></term> +<listitem> +<para +>Название режима подсветки (JavaScript или C++). Если к документу не применяется режим подсветки, устанавливается значение None. Помните - необходимо использовать англоязычное название.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.indentMode; [свойство:только для чтения]</function +></term> +<listitem> +<para +>Название режима отступов документа, такое как <literal +>normal</literal +> или <literal +>cstyle</literal +>. Помните - если режим отступов не задан, устанавливается значение <literal +>none</literal +>. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.indentWidth; [свойство:только для чтения]</function +></term> +<listitem> +<para +>Устанавливает ширину отступа. Только при создании отступов пробелами.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.insertLine( <parameter +>uint line</parameter +>, <parameter +>string text</parameter +> ); [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>line</parameter +> номер строки в документе</para> +</listitem> +<listitem +><para +><parameter +>text</parameter +> вставляемый текст</para +></listitem> +</itemizedlist> +<para +>Вставляет новую строку с текстом <parameter +>text</parameter +> в строку под номером <parameter +>line</parameter +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.insertText( <parameter +>uint line</parameter +>, <parameter +>uint column</parameter +>, <parameter +>string text</parameter +> ); [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>line</parameter +> номер строки</para +></listitem> +<listitem +><para +><parameter +>column</parameter +> номер столбца</para +></listitem> +<listitem +><para +><parameter +>text</parameter +> вставляемый текст</para +></listitem> +</itemizedlist> +<para +>Вставляет текст <parameter +>text</parameter +> в строку номер <parameter +>line</parameter +>, столбец номер <parameter +>column</parameter +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>document.length(); [функция]</term> +<listitem> +<para +>Возвращает размер документа в байтах.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.lines(); [функция]</function +></term> +<listitem> +<para +>Возвращает число строк в документе.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>document.mixedIndent; [свойство:только для чтения]</term> +<listitem> +<para +>Логическая величина. Сообщает, применяется ли в документе смешанный тип отступов. Если это так - отступы осуществляются при помощи и пробелов, и позиций табуляции, сходно с редактором Emacs.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>document.removeLine( <parameter +>uint line</parameter +> ); [функция]</term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>line</parameter +> номер строки</para +></listitem> +</itemizedlist> +<para +>Удаляет строку документа номер line.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.removeText( <parameter +>uint startLine</parameter +>, <parameter +>uint startColumn</parameter +>, <parameter +>uint endLine</parameter +>, <parameter +>uint endColumn</parameter +> ); [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>startLine</parameter +> указывает начальную строку</para +></listitem> +<listitem +><para +><parameter +>startColumn</parameter +> указывает начальный столбец</para +></listitem> +<listitem +><para +><parameter +>endLine</parameter +> указывает конечную строку</para +></listitem> +<listitem +><para +><parameter +>endColumn</parameter +> указывает конечный столбец</para +></listitem> +</itemizedlist> +<para +>Удаляет участок текста, начиная от строки номер <parameter +>startLine</parameter +> и столбца номер <parameter +>startColumn</parameter +> до строки номер <parameter +>endLine</parameter +> и столбца номер <parameter +>endColumn</parameter +>. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.setText( <parameter +>string text</parameter +> ); [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>text</parameter +> текст документа</para +></listitem> +</itemizedlist> +<para +>Приводит всё содержимое документа к тексту с параметрами <parameter +>text</parameter +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.spaceIndent; [свойство:только для чтения]</function +></term> +<listitem> +<para +>Логическая величина. Сообщает, применяется ли к документу отступ пробелами. Если это так, то отступы в документе производятся на величину indentWidth между уровнями, иначе сдвиг происходит на одну позицию табуляции.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.textFull(); [функция]</function +></term> +<listitem> +<para +>Возвращает весь текст документа. Если в тексте есть переводы строк, то знак перевода строки отобразится как <constant +>\n</constant +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.textLine( uint line ); [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>line</parameter +> строка номер</para +></listitem> +</itemizedlist> +<para +>Возвращает текст строки номер <parameter +>line</parameter +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>document.textRange( <parameter +>uint startLine</parameter +>, <parameter +>uint startColumn</parameter +>, <parameter +>uint endLine</parameter +>, <parameter +>uint endColumn</parameter +> ); [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>startLine</parameter +> указывает начальную строку</para +></listitem> +<listitem +><para +><parameter +>startColumn</parameter +> указывает начальный столбец</para +></listitem> +<listitem +><para +><parameter +>endLine</parameter +> указывает конечную строку</para> +</listitem> +<listitem +><para +><parameter +>endColumn</parameter +> указывает конечный столбец</para +></listitem> +</itemizedlist> +<para +>Возвращает указанный участок текста. Если в пределах участка есть переводы строк, то знак перевода отобразится как <constant +>\n</constant +>.</para> +</listitem> +</varlistentry> + +</variablelist +><!--/ document API --> + +<variablelist id="advanced-editing-tools-scripting-view"> +<title +>Аппаратно-программный интерфейс (API) <classname +>view</classname +></title> + +<varlistentry> +<term +><function +>view.clearSelection(); [функция]</function +></term> +<listitem> +<para +>Снимает выделение со всего текста.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>view.cursorColumn(); [функция]</function +></term> +<listitem> +<para +>Возвращает столбец, в котором находится курсор (учитываются все знаки табуляции).</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>view.cursorColumnReal(); [функция]</function +></term> +<listitem> +<para +>Возвращает номер столбца, в котором реально находится курсор (знак табуляции считается за один символ).</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>view.cursorLine(); [функция]</function +></term> +<listitem> +<para +>Возвращает номер строки, в которой находится курсор.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>view.hasSelection(); [функция]</function +></term> +<listitem> +<para +>Если выделенный текст есть, возвращает <constant +>true</constant +>, иначе <constant +>false</constant +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>view.removeSelectedText(); [функция]</function +></term> +<listitem> +<para +>Если есть выделенный текст, он удаляется.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>view.selectAll(); [функция]</function +></term> +<listitem> +<para +>Выделяет весь текст.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>view.selection(); [функция]</function +></term> +<listitem> +<para +>Возвращает выделенный текст. Если в пределах выделенного текста есть переводы строк, они отображаются знаком <constant +>\n</constant +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>view.selectionEndColumn; [свойство:только для чтения]</function +></term> +<listitem> +<para +>Возвращает номер последней позиции выделяемого участка.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>view.selectionEndLine; [свойство:только для чтения]</function +></term> +<listitem> +<para +>Возвращает номер последней строки выделяемого участка.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>view.selectionStartColumn; [свойство:только для чтения]</function +></term> +<listitem> +<para +>Возвращает номер начальной позиции выделяемого участка.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>view.selectionStartLine; [свойство:только для чтения]</function +></term> +<listitem> +<para +>Возвращает номер начальной строки выделяемого участка.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>view.setCursorPosition( <parameter +>uint line</parameter +>, <parameter +>uint column</parameter +> ); [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>line</parameter +> Указывает строку для курсора.</para +></listitem> +<listitem +><para +><parameter +>column</parameter +> Указывает столбец для курсора.</para +></listitem> +</itemizedlist> +<para +>Устанавливает курсор ввода в позицию [<parameter +>line</parameter +>, <parameter +>col</parameter +>]. Установка курсора происходит визуально, символ табуляции считается за несколько символов, в зависимости от расположения текста, но не больше значения параметра <guilabel +>Ширина табуляции</guilabel +>. Отсчёт номеров строк и столбцов начинается от нуля.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>view.setCursorPositionReal( <parameter +>uint line</parameter +>, <parameter +>uint column</parameter +> ); [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>line</parameter +> Указывает строку для курсора.</para +></listitem> +<listitem +><para +><parameter +>column</parameter +> Указывает столбец для курсора.</para +></listitem> +</itemizedlist> +<para +>Устанавливает курсор в позицию [<parameter +>line</parameter +>, <parameter +>col</parameter +>]. При рассчёте позиции табуляция соответствует одному символу. Отсчёт строк и столбцов начинается от нуля.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><function +>view.setSelection( <parameter +>uint startLine</parameter +>, <parameter +>uint startColumn</parameter +>, <parameter +>uint endLine</parameter +>, <parameter +>uint endColumn</parameter +> ); [функция]</function +></term> +<listitem> +<itemizedlist> +<title +>Параметры</title> +<listitem +><para +><parameter +>startLine</parameter +> указывает начальную строку</para +></listitem> +<listitem +><para +><parameter +>startColumn</parameter +> указывает начальный столбец</para +></listitem> +<listitem +><para +><parameter +>endLine</parameter +> указывает конечную строку</para +></listitem> +<listitem +><para +><parameter +>endColumn</parameter +> указывает конечный столбец</para +></listitem> +</itemizedlist> +<para +>Устанавливает выделение от строки номер <parameter +>startLine</parameter +> и столбца номер <parameter +>startColumn</parameter +> до строки номер <parameter +>endLine</parameter +> и столбца номер <parameter +>endColumn</parameter +>.</para> +</listitem> +</varlistentry> + +</variablelist> + +<example id="advanced-editing-tools-scripting-example"> + +<title +>Пример сценария</title> +<para +>В качестве примера рассмотрим небольшой сценарий, переводящий выделенный текст в верхний регистр. Очевидно, сначала необходимо проверить, есть ли выделенный текст вообще. Если есть - возьмём этот текст, изменим регистр и заменим его новым текстом. Сценарий будет выглядеть примерно так:</para> + +<programlisting +>if ( view.hasSelection() ) +{ + column = view.selectionStartColumn; + line = view.selectionStartLine; + + selection = view.selection().toUpperCase(); + + document.editBegin(); + view.removeSelectedText(); + document.insertText( line, column, selection ); + document.editEnd(); +} +</programlisting> + +<para +>Для группировки действий так, чтобы их можно было отменить одним вызовом пункта меню <guimenuitem +>Отмена</guimenuitem +>, мы поместили строки <programlisting +>view.removeSelectedText()</programlisting +> и <programlisting +>document.insertText()</programlisting +> между <programlisting +>document.editBegin()</programlisting +> и <programlisting +>document.editEnd()</programlisting +>.</para> + +</example> + +<example id="advanced-editing-tools-desktop-example"> +<title +>Пример файла <filename +>.desktop</filename +></title> + +<para +>Вот пример простого .desktop-файла, соответствующего приведенному выше сценарию.</para> + +<programlisting +>[Desktop Entry] +Encoding=UTF-8 +Name=Kate Part JavaScript Uppercase +Comment=Script to uppercase the selection +X-Kate-Command=uppercase-selection +X-Kate-Help=<p>Usage: <code>uppercase-selection</code></p> +</programlisting> + +<para +>Мы видим, что здесь можно определить кодировку, ввести название, комментарий, указать путь к справке с помощью X-Kate-Help и название для командной строки через X-Kate-Command. Если файлы находятся в SVN-хранилище KDE, то пункты Name, Comment and X-Kate-Help автоматически переводятся на другие языки командами переводчиков KDE.</para> + +</example> + +<sect3> +<title +>Резюме</title> + +<para +>&kate; может разыскивать в определённых папках (см. <link linkend="advanced-editing-tools-scripting-introduction" +>выше</link +>) файлы <filename +>*.js</filename +>. Для каждого найденного файла будет проведен поиск соответствующего файла <filename +>.desktop</filename +>, например файлу uppercase.js соответствует файл uppercase.desktop. </para> +<para +>Если требуемый файл <filename +>.desktop</filename +> не найден, сценарий будет зарегистрирован в командной строке katepart с именем без расширения .js, для нашего примера это будет <literal +>uppercase</literal +>.Если такое формирование названия команды подходит, и вам не требуются какие-то дополнительные возможности, которые предоставляет файл <filename +>.desktop</filename +>, он может не понадобиться вам совсем. </para> +<para +>Если файл <filename +>.desktop</filename +> найден, то katepart считывает имя из пункта .desktop-файла X-Kate-Command, например X-Kate-Command=uppercase-selection.</para> + +</sect3> + +</sect2> + +</sect1> + +</chapter> diff --git a/tde-i18n-ru/docs/tdebase/kate/configuring.docbook b/tde-i18n-ru/docs/tdebase/kate/configuring.docbook new file mode 100644 index 00000000000..01362187209 --- /dev/null +++ b/tde-i18n-ru/docs/tdebase/kate/configuring.docbook @@ -0,0 +1,2600 @@ +<chapter id="configuring-kate"> +<chapterinfo> +<authorgroup> +<author +>&Anders.Lund; &Anders.Lund.mail;</author> +<othercredit role="translator" +><firstname +>Андрей</firstname +><surname +>Балагута</surname +><affiliation +><address +><email +>uj2@mail.ru</email +></address +></affiliation +><contrib +>Перевод на русский</contrib +></othercredit +><othercredit role="translator" +><firstname +>Алексей</firstname +><surname +>Опарин</surname +><affiliation +><address +><email +>opaleksej@yandex.ru</email +></address +></affiliation +><contrib +>Перевод на русский</contrib +></othercredit +> +</authorgroup> +</chapterinfo> +<title +>Настройка &kate;</title> + +<sect1 id="configuring-overview"> +<title +>Обзор</title> +<para> +<indexterm> +<primary +>конфигурация</primary> +<secondary +>настройка</secondary> +<tertiary +>параметры</tertiary +></indexterm> +<anchor id="find"/> <anchor id="find-again"/> <anchor id="replace"/> <anchor id="undo"/> <anchor id="redo"/> &kate; предоставляет несколько средств настройки. Наиболее важные из них: </para> + +<variablelist> +<varlistentry> +<term id="configure" +>Диалог настройки</term> +<listitem +><para +>Главный инструмент настройки приложения &kate;, редактора и дополнительных модулей.</para +></listitem> +</varlistentry> +<varlistentry> +<term id="settings" +>Меню <guimenu +>Настройка</guimenu +></term> +<listitem +><para +>Предоставляет доступ к часто изменяемым параметрам. Из этого меню можно открыть диалоги настройки.</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Меню <guimenu +>Вид</guimenu +></term> +<listitem +><para +>Позволяет разделить текущею окно, включить/отключить отображение панелей значков и номеров строк для редактируемого документа.</para +></listitem> +</varlistentry> +</variablelist> + +<para +>Поведение встроенного терминала определяется его настройкой в Центре управления KDE, и может быть изменено через контекстное меню или меню <guimenuitem +>Настройка</guimenuitem +>.</para> + +</sect1> + +<sect1 id="configuring-kate-configdialog"> +<title +>Основной диалог настройки</title> + +<mediaobject> +<imageobject> +<imagedata format="PNG" fileref="configdialog01.png"/> +</imageobject> +</mediaobject> + +<para +>В диалоге настройки слева отображаются разделы, организованные в древовидную структуру, а справа - страница настройки, соответствующая выбранному разделу.</para> + +<para +>Параметры настройки делятся на две основные группы <itemizedlist> +<listitem +><para +><link linkend="config-dialog" +>Настройка программы</link> +</para +></listitem> +<listitem +><para +><link linkend="config-dialog-editor" +>Настройка компонентов редактора</link +></para +></listitem> + +</itemizedlist> + +</para> + +</sect1> + +<sect1 id="config-dialog"> +<title +>Настройка программы &kate;</title> +<para +>Эта группа содержит страницы общей настройки программы &kate;</para> + +<sect2 id="config-dialog-general"> +<title +>Страница <quote +>Общие настройки</quote +></title> +<para +>Здесь можно настроить несколько основных параметров &kate;</para> + +<variablelist> + +<varlistentry> +<term +><anchor id="config-dialog-general-show-full-path"/> +<guilabel +>Показывать полный путь в заголовке окна</guilabel +></term> +<listitem +><para +>Если флажок установлен, в заголовке окна &kate; будет отображать не только имя файла, но и полный путь к нему.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="config-general-behavior"/> +<guilabel +>Поведение</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term> +<anchor id="config-dialog-general-sync-konsole"/> +<guibutton +>Синхронизировать терминал с активным документом</guibutton +></term> +<listitem +><para +>Если флажок установлен, встроенный терминал будет менять свой текущий каталог при каждой смене активного документа. Если сброшен, вам придётся перемещаться по дереву каталогов вручную. </para +></listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="config-dialog-general-warn-mod"/> +<guilabel +>Предупреждать об изменении файла другой программой</guilabel +></term> +<listitem +><para +>Если флажок установлен, &kate; уведомит вас об изменении файла другой программой, как только главное окно получит фокус ввода. Вы можете производить обновления, сохранять или отменять изменения сразу для группы файлов.</para> +<para +>Если флажок сброшен, то, при получении фокуса ввода файлом, изменённым другой программой, &kate; задаст вопрос о необходимых действиях.</para> +</listitem> +</varlistentry> + +</variablelist> +</listitem> +</varlistentry +><!-- /behavior group --> + +<varlistentry> +<term +><anchor id="config-general-meta-data"/> +<guilabel +>Мета-данные</guilabel +></term> +<listitem> + +<variablelist> +<varlistentry> +<term +><anchor id="config-general-keep-meta-information"/> +<guilabel +>Сохранять мета-данные прошлых сеансов</guilabel +></term> +<listitem +><para +>Если флажок установлен, &kate; сохранит мета-данные (закладки, настройку сеанса), даже когда вы закроете документ. Эти данные могут понадобиться, если документ вновь будет открыт в прежнем виде.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="config-general-delete-meta-information-after"/> +<guilabel +>Удалить настройки сеансов после</guilabel +></term> +<listitem +><para +>Устанавливает время, в течение которого будут храниться мета-данные файла. Долговременное хранение приводит к переполнению базы данных.</para +></listitem> +</varlistentry> + +</variablelist> + +</listitem> +</varlistentry +><!-- /meta data group --> + +</variablelist> +</sect2> + +<sect2 id="config-dialog-sessions"> +<title +>Страница <quote +>Сеансы</quote +></title> + +<para +>Раздел содержит параметры, связанные с <link linkend="fundamentals-using-sessions" +>использованием сеансов</link +>.</para> + +<variablelist> + +<varlistentry> +<term +><anchor id="config-dialog-sessions-elements"/> +<guilabel +>Элементы сеансов</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Восстанавливать настройку окна</guilabel +></term> +<listitem +><para +>Если флажок установлен, &kate; будет восстанавливать настройку окна в каждом новом сеансе.</para +></listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry +><!-- /elements of sessions --> + +<varlistentry> +<term +><anchor id="config-dialog-sessions-startup-behavior"/> +<guilabel +>Поведение при запуске приложения</guilabel +></term> +<listitem> +<para +>Определяет поведение &kate; при запуске. Эту настройку можно изменить параметрами <link linkend="command-line-options" +>командной строки</link +>.</para> +<variablelist> +<varlistentry> +<term +><guilabel +>Начинать новый сеанс</guilabel +></term> +<listitem +><para +>Если установить этот флажок, &kate; при каждом запуске будет начинать новый безымянный сеанс.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Загрузить последний сеанс</guilabel +></term> +<listitem +><para +>При запуске &kate; может открывать прошлый сеанс. Удобно, если вы не любите менять настройки.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Выбрать сеанс</guilabel +></term> +<listitem +><para +>&kate; может предлагать на выбор несколько недавних сеансов. Эта настройка действует по умолчанию. Удобно для любителей частой смены настроек.</para +></listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry +><!-- /startup behavior --> + +<varlistentry> +<term +><anchor id="config-dialog-sessions-exit-behavior"/> +<guilabel +>Поведение при выходе из приложения или переключении сеанса</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Не сохранять сеанс</guilabel +></term> +<listitem +><para +>Изменения данных сеанса (открывавшихся файлов и, если было включено, настройки окна) не сохранятся. Естественно, будет задан вопрос о сохранении изменённых файлов. Установите этот флажок - и при открытии нового сеанса ненужные файлы перестанут открываться.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Сохранить сеанс</guilabel +></term> +<listitem +><para +>&kate; сохранит данные любого сеанса, если он не безымянный. Если флажок установлен, ваш сеанс будет восстановлен в том самом виде, в котором вы его закрыли. Это поведение по умолчанию. </para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Спросить пользователя</guilabel +></term> +<listitem +><para +>Вопрос о сохранении сеанса будет задан при закрытии любого именованного сеанса.</para +></listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry +><!-- /exit/switch behavior --> + +</variablelist> + +</sect2> + +<sect2 id="config-dialog-fileselector"> +<title +>Страница <guilabel +>Панель выбора файла</guilabel +></title> + +<variablelist> +<varlistentry> +<term +><guilabel +>Панель инструментов</guilabel +></term> +<listitem +><para +>Выберите нужные вам кнопки для диалога выбора файла путём перемещения их в окно <guilabel +>Выбранные действия</guilabel +>. Расположение кнопок установите стрелками рядом с окном.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Автоматическая синхронизация</guilabel +></term> +<listitem +><para +>Диалог выбора файла может автоматически переходить к директории, содержащей текущий документ, при наступлении следующих событий:<itemizedlist +><listitem +><para +>При активизации документа</para +></listitem +><listitem +><para +>При показе панели выбора файлов</para +></listitem +></itemizedlist +> Даже если вы не пользуетесь этим свойством, синхронизацию можно выполнить вручную, нажав кнопку <guilabel +>Синхронизировать</guilabel +>. </para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Сохранять расположение</guilabel +></term> +<listitem +><para +>Установите размер журнала. Сохраняются только фактические адреса, копии удаляются.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Сохранять фильтры</guilabel +></term> +<listitem +><para +>Установите желаемое количество сохраняемых фильтров. Сохраняются только сами фильтры, копии удаляются.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Сеанс</guilabel +></term> +<listitem> +<para +>Определите, будет ли сохраняться расположение и фильтр для каждого сеанса.</para> +</listitem> +</varlistentry> + +</variablelist> + +</sect2> + +<sect2 id="config-dialog-documentlist"> +<title +>Страница <guilabel +>Список документов</guilabel +></title> + +<variablelist> +<varlistentry> +<term +><guilabel +>Подсветка фона</guilabel +></term> +<listitem +><para +>Позволяет вам включить визуализацию истории перехода по документам (через оттенки фона соответствующих пунктов списка), а также настроить используемые для этого цвета. Для подробностей, обратитесь к разделу <link linkend="kate-mdi-tools-file-list" +>Список документов</link +>.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Сортировать по</guilabel +></term> +<listitem +><para +>Порядок сортировки документов в списке. Эти же команды можно найти в контекстном меню списка документов.</para +></listitem> +</varlistentry> +</variablelist> + +</sect2> + +<sect2 id="config-dialog-plugins"> +<title +>Страница <guilabel +>Модули</guilabel +></title> + +<para +>На этой странице представлены установленные модули &kate;. Для каждого отображается название и краткое описание. Для подключения нужного модуля нужно установить соответствующий флажок. </para> + +<para +>Если модуль настраиваемый, параметры его настройки появятся в дочернем окне этой страницы.</para> + +</sect2> + + +<sect2 id="config-dialog-externaltools"> +<title +>Внешние инструменты</title> + +<para +>Меню <guimenu +>Сервис</guimenu +> содержит подменю <guisubmenu +>Внешние инструменты</guisubmenu +>. Эти инструменты вызывают внешние приложения для обработки данных соответствующего типа (интернет-адреса, директории, текста или выделения). На этой странице можно настраивать меню, редактировать, добавлять и удалять инструменты.</para> + +<para +>Внешний инструмент - это фактически команда оболочки с подстановкой данных текущего документа.</para> + +<variablelist> +<title +>Свойства внешних инструментов</title> +<varlistentry> +<term +>Название</term> +<listitem +><para +>Название пункта меню "Внешние инструменты".</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>Сценарий</term> +<listitem +><para +>Сценарий, который будет выполнен при выборе пункта меню. Доступны следующие подстановки: <variablelist> +<varlistentry> +<term +>%URL</term> +<listitem +><para +>Полный адрес текущего документа или, если новый документ ещё не был сохранён, пустая строка.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>%URLS</term> +<listitem +><para +>Список полных адресов всех открытых файлов (кроме несохранённых) через пробел.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>%directory</term> +<listitem +><para +>Папка текущего документа или пустая строка, если последний ещё не сохранён.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>%filename</term> +<listitem +><para +>Имя текущего файла без пути или пустая строка, если файл ещё не сохранён.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>%line</term> +<listitem +><para +>Номер строки текущего документа, в которую будет вставлен курсор.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>%column</term> +<listitem +><para +>Позиция курсора в текущей строке.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>%selection</term> +<listitem +><para +>Выделенный текст или пустая строка, если такового нет.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>%text</term> +<listitem +><para +>Весь текст документа. Учтите, его длина может превысить максимально допустимую командной строки. Пользуйтесь осторожно.</para +></listitem> +</varlistentry> + +</variablelist> + +</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>Исполняемый файл</term> +<listitem +><para +>Главный исполняемый файл - сценарий. Если его нет в папке, указанной в переменной окружения <envar +>PATH</envar +>, следует указать полный путь к нему.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>Mime-типы</term> +<listitem +><para +>Разделённый запятыми список mime-типов, для которых команда должна быть доступна. В настоящее время не используется.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>Сохранить</term> +<listitem +><para +>Дополнительно можно применить сохранение текущего или всех документов перед выполнением сценария. Удобно, если сценарий считывает файл с диска.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>Название команды</term> +<listitem +><para +>Вы сможете вызвать этот внешний инструмент из <link linkend="advanced-editing-tools-commandline" +>Командной строки редактора</link +> введя <command +>exttool-<replaceable +>команда_правки</replaceable +></command +> (т.е. название команды дополняет <quote +>exttool-</quote +>).</para +></listitem> +</varlistentry> + +</variablelist> + +</sect2> + +</sect1> + +<sect1 id="config-dialog-editor"> +<title +>Настройка компонентов редактора</title> +<para +>Группа содержит параметры, относящиеся к компонентам редактора. Большинство из них предустановлены, но могут быть изменены установками параметров <link linkend="config-dialog-editor-filetypes" +>Установки, специфичные для типов файлов</link +>, <link linkend="config-variables" +>Переменные документа</link +>. Параметры для текущего документа можно также изменить динамически с помощью команд правки (F7).</para> + + +<sect2 id="config-dialog-editor-appearance"> +<title +>Внешний вид</title> + +<variablelist> +<varlistentry> +<term +><guilabel +>Перенос строк</guilabel +></term> +<listitem> +<variablelist> +<varlistentry id="appearance-settings"> +<term +><guilabel +>Динамический перенос строк</guilabel +></term> +<listitem +><para +>При установленном флажке строки будут переноситься в пределах окна.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Маркёры динамического переноса строк</guilabel +></term> +<listitem +><para +>Определяет отображение маркёров динамического переноса строк. </para +></listitem +></varlistentry> +<varlistentry> +<term +><guilabel +>Отступ динамически перенесённых строк до уровня: </guilabel +></term> +<listitem +><para +>Устанавливает отступ динамически перенесённой строки от уровня предыдущей. Такой код удобнее читать.</para +><para +>Дополнительно можно установить предел отступов динамически перенесённых строк в процентах. Например, если установить этот параметр в 50%, экрана, то за этим пределом отступ применяться уже не будет.</para +></listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Сворачивание блоков кода</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Показывать маркёры сворачивания блоков (если поддерживается) </guilabel +></term> +<listitem +><para +>Если флажок установлен, то в текущем документе будут показаны маркёры сворачивания блоков кода (если сворачивание доступно).</para +></listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Границы</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Показывать панель значков </guilabel +></term> +<listitem +><para +>Если флажок установлен, то слева от текстового поля будут отображаться значки, например значки закладок.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Показывать номера строк </guilabel +></term> +<listitem +><para +>Если флажок установлен, то слева от текста будут отображаться номера строк.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Показывать отметки </guilabel +></term> +<listitem +><para +>Если флажок установлен, то на полосе прокрутки текущего документа будут отображаться отметки, например закладки.</para +></listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Меню управления закладками </guilabel +></term> +<listitem +><para> +<variablelist> +<varlistentry> +<term +><guilabel +>По позиции </guilabel +></term> +<listitem +><para +>Закладки будут упорядочены по номерам строк, на которые они установлены.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>По времени создания </guilabel +></term> +<listitem +><para +>Новая закладка будет добавлена в конец списка, независимо от её положения в документе.</para +></listitem> +</varlistentry> +</variablelist> +</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Отображать линии отступов </guilabel +></term> +<listitem +><para +>Если флажок установлен, в редакторе будут отображаться вертикальные линии для выравнивания отступов.</para +></listitem> +</varlistentry> +</variablelist> +</sect2> + +<sect2 id="config-dialog-editor-colors"> +<title +>Шрифты и цвета</title> + +<para +>В этой части диалога можно настроить цвета и шрифты для любой выбранной вами цветовой схемы. Можно создать новую схему или удалить существующую. Каждая схема содержит пакет настроек шрифтов и цветов для обычного и выделенного текстов. </para> + +<para +>&kate; использует предустановленные параметры. Для включения иной схемы необходимо выбрать её в выпадающем списке.</para> + +<sect3 id="config-dialog-editor-colors-colors"> +<title +>Цвета</title> + +<variablelist> +<varlistentry id="config-dialog-editor-colors-colors-text-background"> +<term +><guilabel +>Фон текстового поля</guilabel +></term> +<listitem> + +<variablelist> + +<varlistentry id="config-dialog-editor-colors-normal-text"> +<term +><guilabel +>Обычный текст</guilabel +></term> +<listitem +><para +>Это основной цвет текстового поля.</para +></listitem> +</varlistentry> + +<varlistentry id="config-dialog-editor-colors-selected-text"> +<term +><guilabel +>Выделенный текст</guilabel +></term> +<listitem +><para +>Фон выделенного текста. По умолчанию действует глобальная настройка &kde;. </para +></listitem> +</varlistentry> + +<varlistentry id="config-dialog-editor-colors-current-line"> +<term +><guilabel +>Текущая строка</guilabel +></term> +<listitem +><para +>Цвет текущей строки. Цветовое выделение поможет следить за фокусом ввода. </para +></listitem> +</varlistentry> + +<varlistentry id="config-dialog-editor-colors-marks"> +<term +><guilabel +>Закладка</guilabel +></term> +<listitem +><para +>В этом списке можно выбрать цвета для различных типов закладок. Этот цвет подмешивается к фону текущей строки, поэтому может не вполне соответствовать установленному. В эти же цвета окрашиваются отметки на полосе прокрутки.</para +></listitem> +</varlistentry> + +</variablelist> +</listitem> +</varlistentry> + +<varlistentry id="config-dialog-editor-colors-colors-other-elements"> +<term +><guilabel +>Другие элементы</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Фон левой границы</guilabel +></term> +<listitem +><para +>Определяет окраску всех панелей, находящихся слева от текстового поля (если они отображаются). </para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Номера строк</guilabel +></term> +<listitem +><para +>Этим цветом окрашиваются номера строк (если они отображаются).</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Цвет фигурных скобок</guilabel +></term> +<listitem +><para +>Этим цветом окрашиваются соответствующие друг другу фигурные скобки. </para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Маркёры переноса строк</guilabel +></term> +<listitem +><para +>Этим цветом окрашиваются маркёры слева от динамически перенесённых строк (если они выровнены вертикально) и маркёры статического переноса строк.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Маркёры позиций табуляции</guilabel +></term> +<listitem +><para +>Этим цветом окрашиваются пустые пространства текста, если их отображение включено. </para +></listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +</variablelist> +</sect3> + +<sect3 id="config-dialog-editor-colors-fonts"> +<title +>Шрифты</title> +<para +>Выбор шрифта для схемы. Доступен любой шрифт из вашей системы, можно настроить размер по умолчанию. Образец текста приводится в нижней части диалога, поэтому результат изменения виден сразу. </para> +</sect3> + +<sect3 id="config-dialog-editor-colors-normal-text-styles"> +<title +>Стили обычного текста</title> +<para +>Стили обычного текста наследуются из стилей выделенного, поэтому редактор может более вразумительно отображать текст. Например, текст комментария использует стили почти всех текстовых форматов, которые kate в состоянии обрабатывать.</para> +<para +>Во время настройки стиля есть возможность предварительно просмотреть её результаты. </para> +<para +>Для каждого стиля можно настроить обычные атрибуты, цвета фона и самого текста. Перенастроить фон можно через контекстное меню.</para> +</sect3> + +<sect3 id="config-dialog-editor-colors-highlighting-text-styles"> +<title +>Стили подсветки текста</title> +<para +>Здесь можно настроить стили текста для определённого правила подсветки. Имеются предустановленные настройки, но в выпадающем списке <guilabel +>Подсветка</guilabel +> можно установить другие параметры. </para> +<para +>Во время настройки стиля есть возможность предварительно просмотреть её результаты. </para> +<para +>Для каждого стиля можно настроить обычные атрибуты, цвета фона и самого текста. Перенастроить фон можно через контекстное меню. Есть возможность сравнить текущий стиль с предустановленным и устранить возможное несоответствие.</para> +<para +>Можно заметить, что многие стили подсветки содержат другие стили, представленные группами в списке. Например, большинство стилей используют стиль Alert, а многие форматы языков программирования используют стиль Doxygen. Цвета редактирования для этих групп применяются только во время работы с соответствующими форматами. </para> +</sect3> + +</sect2> + +<sect2 id="config-dialog-editor-cursor-selection"> +<title +>Курсор и выделение</title> + +<variablelist> + +<varlistentry> +<term +><guilabel +>Перемещение курсора</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Умная реакция на home</guilabel +></term> +<listitem> +<para +>Если флажок установлен, то нажатие клавиши Home вызовет перемещение курсора в начало строки.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Переносить курсор</guilabel +></term> +<listitem> +<para +>Если флажок установлен, то курсор ввода будет перемещаться клавишами <emphasis role="bold" +>Влево</emphasis +> и <emphasis role="bold" +>Вправо</emphasis +> на предыдущую/следующую строку в начало/конец строки, так же как в большинстве других редакторов.</para +><para +>Если флажок сброшен, то курсор невозможно переместить левее начала строки, но можно переместить правее конца строки, что удобно для программистов. Когда флажок установлен, перемещение курсора стрелочными клавишами за конец строки (вправо) вызовет его смещение на начало следующей строки. Перемещение курсора левее начала строки вызовет его переход на конец предыдущей строки. Если флажок сброшен, то передвижение курсора вправо за конец строки приведёт только к движению его в пределах данной строки, а передвижение левее начала строки вообще невозможно.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Клавиши Page Up/Page Down перемещают курсор</guilabel +></term> +<listitem> +<para +>Этот параметр определяет реакцию курсора на нажатие клавиш <keycap +>Page Up</keycap +> или <keycap +>Page Down</keycap +>. Если флажок сброшен, то первое нажатие клавиши вызовет появление новой страницы. Если флажок установлен, то первое нажатие клавиши вызовет сначала перемещение курсора в начало или конец видимого текста, и только потом откроется новая страница.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Автоцентровка курсора (строк):</guilabel +></term> +<listitem> +<para +>Количество строк, остающихся по возможности видимыми над и под курсором.</para> +</listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Режим выделения</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Обычный</guilabel +></term> +<listitem> +<para +>Выделенный фрагмент будет перезаписан вводимым текстом, выделение будет снято при перемещении курсора.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Не снимать выделение</guilabel +></term> +<listitem> +<para +>При перемещении курсора и вводе текста фрагмент остаётся выделенным.</para> +</listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +</variablelist> +</sect2> + +<sect2 id="config-dialog-editor-edit"> +<title +>Редактирование</title> +<variablelist> + +<varlistentry> +<term +><guilabel +>Табуляция</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Заполнять отступы пробелами</guilabel +></term> +<listitem> +<para +>Если флажок установлен, то при нажатии клавиши <keycap +>TAB</keycap +> будут введены пробелы в количестве, определённом параметром <option +>tab-width</option +>.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Показать символы табуляции</guilabel +></term> +<listitem> +<para +>Если установить этот флажок, &kate; будет отображать символы табуляции маленькими точками.</para> +<note +><para +>Это может вызвать также отображение в виде точек завершающих пробелов. В будущих версиях &kate; будет исправлено.</para +></note> +</listitem> +</varlistentry> +<varlistentry> +<term id="config-dialog-editor-tab-width" +>Ширина табуляции</term +> <listitem +><para +>Этим параметром определяется количество пробелов, заменяющих символ табуляции при включённом параметре <link linkend="config-dialog-editor-word-wrap" +><guilabel +>Заменять символы табуляции пробелами</guilabel +></link +>.</para +></listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +<varlistentry> +<term id="config-dialog-editor-word-wrap" +><guilabel +>Статичный перенос строк</guilabel +></term> +<listitem +><para +>Перенос строк - это свойство редактора автоматически начинать новую строку и переносить курсор на её начало. &kate; автоматически начинает новую строку при достижении величины, определённой параметром <link linkend="config-dialog-editor-wrap-words-at" +>Переносить после:</link +>.</para> +<variablelist> +<varlistentry> +<term +><guilabel +>Переносить строки</guilabel +></term> +<listitem> +<para +>Включает/выключает статичный перенос строк.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Отображать маркёры статичного переноса строк (если возможно)</guilabel +></term> +<listitem> +<para +>Если этот параметр включён, то на границе переноса строк будет отображаться вертикальная линия, как определено в меню <menuchoice +><guimenu +>Настройка</guimenu +> <guimenuitem +>Редактирование</guimenuitem +></menuchoice +> на вкладке Правка. Заметьте, что этот маркёр может отображаться, только если вы используете моноширинный шрифт.</para> +</listitem> +</varlistentry> +<varlistentry id="config-dialog-editor-wrap-words-at"> +<term +><guilabel +>Переносить после:</guilabel +></term> +<listitem> +<para +>Здесь устанавливается количество символов, после которого начинается новая строка при включённом параметре <link linkend="config-dialog-editor-word-wrap" +>Перенос строк</link +>.</para> +</listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Удалить завершающие пробелы</guilabel +></term> +<listitem +><para +>&kate; может автоматически удалять лишние завершающие пробелы.</para +></listitem +> </varlistentry> + +<varlistentry> +<term +><guilabel +>Автоскобки</guilabel +></term +> <listitem +><para +>Когда пользователь вводит левую скобку любого вида, &kate; автоматически подставляет аналогичную скобку справа от курсора.</para +></listitem> +</varlistentry> + +<varlistentry +> <term +>Число <link linkend="undo" +>шагов отмены</link +>:</term> +<listitem +><para +>Здесь устанавливается предельное число операций, которые &kate; будет сохранять в памяти. Чем больше это число, тем больше памяти будет занято откатами. Указав число 10, пользователь получит возможность кнопкой "Отменить действие" вернуться назад на десять своих последних шагов и выбрать из них наиболее удачный.</para +></listitem +> </varlistentry> + +<varlistentry +> <term +>Интеллектуальный поиск текста с:</term> +<listitem +><para +>Здесь определяется, где &kate; будет искать текст для поиска (этот текст будет автоматически помещён в диалог поиска текста): <itemizedlist +> <listitem +><para +><emphasis role="bold" +>Не искать нигде:</emphasis +>Поиск текста не производится.</para +></listitem +><listitem +><para +><emphasis role="bold" +>Только в выделении:</emphasis +> Используется текущее выделение (если возможно). </para +></listitem +><listitem +><para +><emphasis role="bold" +>В выделении, затем в текущем слове:</emphasis +> Используется, если возможно, текущее выделение, в противном случае текущее слово.</para +></listitem +><listitem +><para +><emphasis role="bold" +>Только в текущем слове:</emphasis +> Используется, если возможно, только то слово, в котором находится курсор.</para +></listitem +><listitem +><para +><emphasis role="bold" +>Текущее слово, затем выделение:</emphasis +> Используется, если возможно, текущее слово, в противном случае текущее выделение. </para +></listitem +></itemizedlist +>Учтите, что, если во всех вышеописанных режимах строка для поиска не указана или не может быть найдена, в диалоге поиска текста появится последняя введённая строка. </para +></listitem> +</varlistentry> +</variablelist> +</sect2> + +<sect2 id="config-dialog-editor-indent"> +<title +>Отступ</title> +<variablelist> +<varlistentry> +<term +><guilabel +>Автоматический отступ</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Правила отступа:</guilabel +></term> +<listitem> +<para +>Выбор используемого по умолчанию режима отступов. Настоятельно рекомендуется пользоваться значением <userinput +>Нет</userinput +> или <userinput +>Обычный</userinput +>, а для формирования других режимов использовать установки, специфичные для типов файлов, таких как файлов кода C/C++ или &XML;.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Автоматически добавлять комментарии Doxygen при наборе</guilabel +></term> +<listitem> +<para +>При наборе комментариев в стиле doxygen к ним автоматически добавляются "*". Этот параметр применяется только там, где возможно.</para> +</listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Отступ пробелами</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Отступы пробелами вместо символов табуляции</guilabel +></term> +<listitem> +<para +>Символы табуляции заменяются пробелами в количестве, указанном тут же, в поле <guilabel +>Количество пробелов:</guilabel +>.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Смешанный режим в стиле Emacs</guilabel +></term> +<listitem> +<para +>Применяется смешанный режим отступов табуляторами и пробелами.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Количество пробелов:</guilabel +></term> +<listitem> +<para +>Устанавливает количество пробелов, вводимых для замены символов табуляции, если этот флажок установлен.</para> +</listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Сохранять настройки отступов</guilabel +></term> +<listitem +><para +>Если этот флажок установлен, то редактор не будет убирать отступы в последующих строках выделения, когда в предыдущих отступы снимаются. Может быть полезно, если вам часто приходится снимать отступы с блоков кода. </para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Сохранять лишние пробелы</guilabel +></term> +<listitem +><para +>Отступы длиной более, чем заданное число пробелов, не будут сокращаться.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Использовать клавиши</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Отступы клавишей Tab</guilabel +></term> +<listitem> +<para +>Для отступов используется клавиша <keycombo action="simul" +><keycap +>tab</keycap +></keycombo +>.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Отступы клавишей Backspace</guilabel +></term> +<listitem> +<para +>Для отступов используется клавиша <keycombo action="simul" +><keycap +>backspace</keycap +></keycombo +>.</para> +</listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Отступы клавишей Tab, если ничего не указано</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Вставлять символы отступа</guilabel +></term> +<listitem> +<para +>Клавишей <keycombo action="simul" +><keycap +>Tab</keycap +></keycombo +> вставляются символы отступа.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Вставить символ табуляции</guilabel +></term> +<listitem> +<para +>Клавишей <keycombo action="simul" +><keycap +>Tab</keycap +></keycombo +> вставляются символы табуляции.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Сделать отступ на текущей строке</guilabel +></term> +<listitem> +<para +>Клавишей <keycombo action="simul" +><keycap +>Tab</keycap +></keycombo +> можно сделать отступ в текущей строке.</para> +</listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +</variablelist> +</sect2> + +<sect2 id="config-dialog-editor-open-save"> +<title +>Открытие/сохранение</title> + +<variablelist> + +<varlistentry> +<term +><guilabel +>Формат файла</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Кодировка:</guilabel +></term> +<listitem> +<para +>Устанавливает кодировку по умолчанию для сохраняемых файлов.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Конец строки:</guilabel +></term> +<listitem> +<para +>Выбор необходимого формата окончания строк для текущего файла. Выбрать можно между форматами &UNIX;, DOS/&Windows; или Macintosh.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Автоопределение формата конца строки</guilabel +></term> +<listitem> +<para +>Выбор этого параметра поредоставит редактору самостоятельно определять формат конца строки. Первое найденное окончание строки будет применено затем ко всему файлу.</para> +</listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Использование памяти</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Количество загружаемых блоков для каждого файла:</guilabel +></term> +<listitem> +<para +>Редактор будет загружать в память указанное количество блоков текста (каждый примерно из 2048 строк). Если размер файла больше указанного предела, то остальные блоки будут сброшены на диск, а затем в случае надобности загружены в память.</para> +<para +>Подобный сброс может вызывать задержки во время навигации по файлу. Большее количество блоков ускоряет работу за счёт увеличения количества используемой памяти. </para +><para +>Лучше выбрать максимально доступное количество блоков. Ограничения разумны только в случае нехватки памяти.</para> +</listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Автоматическая очистка при открытии/сохранении</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Удалить завершающие пробелы</guilabel +></term> +<listitem> +<para +>Лишние пробелы в конце строки при загрузке и сохранении будут автоматически удаляться.</para> +</listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Папка файла настройки</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Глубина поиска файла настройки:</guilabel +></term> +<listitem> +<para +>Редактор просмотрит заданное количество уровней иерархии папок в поисках файла настройки &kate; и загрузит из него строку настройки.</para> +</listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Создавать резервную копию при сохранении</guilabel +></term> +<listitem +><para +>Создание резервной копии при сохранении означает, что при записи на диск изменённого файла будет записана также резервная копия с именем <prefix><filename><suffix>', без внесённых изменений. Суффикс по умолчанию <emphasis role="bold" +>~</emphasis +>, а префикс по умолчанию пуст. </para> +<variablelist> +<varlistentry> +<term +><guilabel +>Локальные файлы</guilabel +></term> +<listitem> +<para +>Установите этот флажок, если хотите сохранять резервные копии локальных файлов.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Удалённые файлы</guilabel +></term> +<listitem> +<para +>Установите этот флажок, если хотите сохранять резервные копии удалённых файлов.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Префикс</guilabel +></term> +<listitem> +<para +>Введите префикс для вставки перед именами сохраняемых резервных файлов.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Суффикс</guilabel +></term> +<listitem> +<para +>Введите суффикс для вставки после имён сохраняемых резервных файлов.</para> +</listitem> +</varlistentry> + +</variablelist> +</listitem> +</varlistentry> + +</variablelist> +</sect2> + +<sect2 id="config-dialog-editor-highlighting"> +<title +>Подсветка</title> +<para +>Эта группа параметров используется для изменения стилей подсветки для каждого типа языков программирования. Любые изменения, сделанные в других вкладках этого диалога, влияют только на данный стиль подсветки.</para> + +<variablelist> +<varlistentry> +<term +><guilabel +>Подсветка:</guilabel +></term> +<listitem +><para +>Выбор языка для настройки.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Сведения</guilabel +></term> +<listitem> +<para +>Просмотр сведений о правилах подсветки синтаксиса выбранного языка: имя автора и лицензия. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Свойства</guilabel +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><guilabel +>Расширения файлов:</guilabel +></term> +<listitem +><para +>Список расширений файлов, используемых для определения необходимого режима подсветки.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Типы MIME:</guilabel +></term> +<listitem +><para +>Нажатие кнопки с символом мастера вызовет диалог выбора доступных mime-типов.</para +><para +>Текст в поле <emphasis role="bold" +>Расширения файлов</emphasis +> при изменении mime-типа будет изменяться соответственно.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Приоритет:</guilabel +></term> +<listitem +><para +>Устанавливает приоритет правила подсветки.</para +></listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guibutton +>Загрузить...</guibutton +></term> +<listitem> +<para +>Нажатием этой кнопки можно загрузить новое или обновить существующее правило подсветки синтаксиса с веб-сайта &kate;. </para> +</listitem> +</varlistentry> + +</variablelist> +</sect2> + +<sect2 id="config-dialog-editor-filetypes"> +<title +>Типы файлов</title> +<para +>Здесь вы можете указать параметры редактора для разных типов файлов. При открытии документа, его тип определяется по расширению или mime-типу. Если подходят несколько типов, будет использован тип с высшим приоритетом. </para> +<variablelist> +<varlistentry> +<term +><guilabel +>Тип файла:</guilabel +></term> +<listitem +><para +>Тип файла с наивысшим приоритетом указывается в выпадающем списке первым. Если есть другие подходящие типы, они тоже присутствуют в списке.</para> +<variablelist> +<varlistentry> +<term +><guilabel +>Создать</guilabel +></term> +<listitem +><para +>Эта кнопка используется для создания нового типа файлов. При нажатии все поля под ней становятся редактируемыми, и в них вводятся те свойства, которыми должен обладать ваш новый тип файлов.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Удалить</guilabel +></term> +<listitem +><para +>Для удаления существующего типа файлов, выберите его в выпадающем списке и нажмите кнопку "Удалить".</para +></listitem> +</varlistentry> +</variablelist> +</listitem +> </varlistentry> + +<varlistentry> +<term +><guilabel +>Свойства текущего типа файлов</guilabel +></term> +<listitem +><para +>Тип файла с наивысшим приоритетом указывается в выпадающем списке первым. Если есть другие подходящие типы, они тоже присутствуют в списке.</para> +<variablelist> +<varlistentry> +<term +><guilabel +>Название:</guilabel +></term> +<listitem +><para +>Название типа текущего файла должно соответствовать тексту соответствующего пункта меню <menuchoice +><guimenu +>Сервис</guimenu +><guimenuitem +>Типы файлов</guimenuitem +> </menuchoice +>.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Раздел:</guilabel +></term> +<listitem +><para +>Название раздела используется для организации типов файлов в меню <menuchoice +><guimenu +>Сервис</guimenu +><guimenuitem +>Типы файлов</guimenuitem +> </menuchoice +>.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Переменные:</guilabel +></term> +<listitem +><para +>Это поле позволяет настроить обработку выбранных типов файлов с использованием переменных &kate;. Можно настроить почти любой параметр (подсветку, отступы, кодировку и т.п.).</para +><para +>Список всех доступных переменных содержится в руководстве.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Расширения файлов:</guilabel +></term> +<listitem +><para +>Маски позволяют выбирать файлы по их расширению. Типичная маска состоит из звёздочки и расширения файла, например <filename +>*.txt; *.text</filename +>. Строка состоит из списка разделённых точкой с запятой масок.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Типы MIME:</guilabel +></term> +<listitem +><para +>Запускает мастер выбора mime-типов.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Приоритет:</guilabel +></term> +<listitem +><para +>Устанавливает приоритет типа файлов. Если при открытии файла к нему подходят несколько типов, будет использован тип с наивысшим приоритетом.</para +></listitem> +</varlistentry> +</variablelist> +</listitem +> </varlistentry> + +</variablelist> +</sect2> + +<sect2 id="config-dialog-editor-shortcuts"> +<title +>Комбинации клавиш</title> +<para +>Здесь можно изменить настройку горячих клавиш. Если хотите изменить настройки по умолчанию - выберите действие и нажмите кнопку <guilabel +>По выбору</guilabel +>.</para> +<para +>Строка поиска позволяет просмотреть сочетания клавиш, определённые для различных действий.</para> +</sect2> + +<sect2 id="config-dialog-editor-plugins"> +<title +>Модули</title> +<para +>На этой вкладке можно выбрать, какие модули вы хотели бы использовать. Выделив нужный модуль, с помощью появившейся кнопки можно <guibutton +>Настроить</guibutton +> его.</para> +</sect2> + +</sect1> + + + +<sect1 id="config-variables"> + +<title +>Настройка с помощью переменных документа</title> + +<para +>Переменные документа - аналог "modeline" в emacs и vi. Формат:<userinput +>kate: ИМЯ_ПЕРЕМЕННОЙ ЗНАЧЕНИЕ; [ ИМЯ_ПЕРЕМЕННОЙ ЗНАЧЕНИЕ; ... ]</userinput +>, такие строки, конечно, могут быть расположены в комментариях (если такое понятие присутствует в формате файла). Имена переменных должны быть неразрывны. Всё, что расположено до следующих точки с запятой, есть значение. Точка с запятой необходимы.</para> + +<para +>Пример строки с переменными, включающими расстановку отступов для файлов C++, java или javascript: <programlisting +>// kate: space-indent on; indent-width 4; mixedindent off; indent-mode cstyle;</programlisting> +</para> + +<note +><para +>Поиск таких строк производится только в первых и последних 10 строках файла.</para +></note> + +<para +>Кроме множества стандартных переменных katepart, таковые могут предоставляться модулями, в этом случае они должны быть описаны в документации к модулю.</para> + +<sect2 id="config-variables-howto"> +<title +>Как переменные обрабатываются в Kate</title> + +<para +>Чтение конфигурации происходит в следующем порядке:<itemizedlist +><listitem +><para +>Глобальная настройка.</para +></listitem +><listitem +><para +>Данные восстановленного сеанса.</para +></listitem +><listitem +><para +>Настройка "Типы файлов".</para +></listitem +><listitem +><para +>Переменные документа.</para +></listitem +><listitem +><para +>Изменённые во время работы параметры.</para +></listitem +></itemizedlist +> При сохранении документа, все переменные в нём пересматриваются и перекрывают изменения (сделанные в меню или командами правки), произведённые во время работы.</para> + +<para +>Переменные, не описанные ниже, хранятся в документе и могут использоваться другими объектами, такими как модули, для собственных целей. Например, переменная режима отступов использует для своей настройки переменные документа.</para> + +<para +>Приведённые ниже переменные доступны в версии &kate; 2.4. В следующих версиях, возможно, будут добавлены другие. Возможны 3 типа значений переменных: <itemizedlist> +<listitem +><para +>BOOL - on|off|true|false|1|0</para +></listitem> +<listitem +><para +>INTEGER - любое целое число</para +></listitem> +<listitem +><para +>STRING - всё остальное</para +></listitem> +</itemizedlist> +</para> + +<variablelist> +<title +>Доступные переменные</title> + +<varlistentry> +<term +><cmdsynopsis +><command +>auto-brackets</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает автоскобки.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>auto-center-lines</command +><arg +>INT</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает количество строк автоцентровки.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>auto-insert-doxygen</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает вставку лидирующей звёздочки в комментариях doxygen. Работает только с расстановщиком отступов cstyle. </para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>background-color</command +><arg +>STRING</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает фоновый цвет документа, например "#ff0000".</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>backspace-indents</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает ввод отступов клавишей backspace.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>block-selection</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает поблочное выделение.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>bracket-highlight-color</command +><arg +>STRING</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает цвет подсветки скобок, например "#ff0000" </para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>current-line-color</command +><arg +>STRING</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает цвет активной строки, например "#ff0000".</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>dynamic-word-wrap</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает динамический перенос строк.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>eol | end-of-line</command +><arg +>STRING</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает режим конца строк. Возможные значения - <quote +>unix</quote +>, <quote +>mac</quote +> и <quote +>dos</quote +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>encoding</command +><arg +>STRING</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает кодировку документа. Называть кодировку нужно точно, например <quote +>utf-8</quote +>.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>font-size</command +><arg +>INT</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает размер шрифта.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>font</command +><arg +>STRING</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает гарнитуру шрифта. Называть гарнитуру нужно точно, например <quote +>courier</quote +>.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>icon-bar-color</command +><arg +>STRING</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает цвет панели значков, например <literal +>#ff0000</literal +>.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>icon-border</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает отображение панели значков.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>folding-markers</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает отображение маркёров сворачивания блоков кода.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>indent-mode</command +><arg +>STRING</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает режим расстановки переносов. Возможные значения - <quote +>none</quote +>, <quote +>normal</quote +>, <quote +>cstyle</quote +>, <quote +>csands</quote +>, <quote +>python</quote +>, <quote +>xml</quote +>. Подробности см. в разделе <xref linkend="kate-part-autoindent"/>.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>indent-width</command +><arg +>INT</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает ширину отступов.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>keep-extra-spaces</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/отключает учёт лишних пробелов при расчёте ширины отступа.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>keep-indent-profile</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Если имеет значение true, то отступ не снимается с блока до тех пор, пока хоть одна строка сохраняет отступ.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>line-numbers</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает отображение номеров строк.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>mixed-indent</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает смешанные отступы в стиле Emacs.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>overwrite-mode</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает режим замены.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>persistent-selection</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает снятие выделения текста при переводе курсора.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>remove-trailing-space</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает динамическое удаление завершающих пробелов.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>replace-tabs-save</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает преобразование символов табуляции в пробелы при сохранении.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>replace-tabs</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает динамическое преобразование символов табуляции в пробелы.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>replace-trailing-space-save</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает удаление завершающих пробелов при сохранении.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>scheme</command +><arg +>STRING</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает цветовую схему. Строка должна содержать название одной из существующих в вашей системе цветовых схем.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>selection-color</command +><arg +>STRING</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает цвет выделенного текста, например "#ff0000".</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>show-tabs</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает отображение символов табуляции.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>smart-home</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает умную реакцию на Home.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>space-indent</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает заполнение отступов пробелами.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>tab-indents</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает выполнение отступов символами табуляции.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>tab-width</command +><arg +>INT</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает ширину табуляции.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>undo-steps</command +><arg +>INT</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает максимальное количество откатов.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>word-wrap-column</command +><arg +>INT</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает максимальную длину строк в случае, если включён автоматический перенос.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>word-wrap-marker-color</command +><arg +>STRING</arg +></cmdsynopsis +></term> +<listitem +><para +>Устанавливает цвет маркёров переноса, например "#ff0000".</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>word-wrap</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает жёсткий перенос слов.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><cmdsynopsis +><command +>wrap-cursor</command +><arg +>BOOL</arg +></cmdsynopsis +></term> +<listitem +><para +>Включает/выключает перенос курсора.</para +></listitem> +</varlistentry> + +</variablelist> + +</sect2> + +</sect1> + +</chapter> diff --git a/tde-i18n-ru/docs/tdebase/kate/fundamentals.docbook b/tde-i18n-ru/docs/tdebase/kate/fundamentals.docbook new file mode 100644 index 00000000000..35cd4cb8fe8 --- /dev/null +++ b/tde-i18n-ru/docs/tdebase/kate/fundamentals.docbook @@ -0,0 +1,1097 @@ +<chapter id="fundamentals"> +<chapterinfo> +<authorgroup> +<author +><personname +><firstname +></firstname +></personname +></author> +<othercredit role="translator" +><firstname +>Андрей</firstname +><surname +>Балагута</surname +><affiliation +><address +><email +>uj2@mail.ru</email +></address +></affiliation +><contrib +>Перевод на русский</contrib +></othercredit +><othercredit role="translator" +><firstname +>Николай</firstname +><surname +>Шафоростов</surname +><affiliation +><address +><email +>shafff@ukr.net</email +></address +></affiliation +><contrib +>Обновление перевода</contrib +></othercredit +> +</authorgroup> +</chapterinfo> +<title +>Основы</title> + +<para +>Если вы когда-либо использовали текстовый редактор, у вас не возникнет проблем с &kate;. В следующих двух разделах <link linkend="starting-kate" +>Запуск &kate;</link +> и <link linkend="working-with-kate" +>Работа в &kate;</link +> мы расскажем вам все, что нужно для того, чтобы начать продуктивно работать с редактором. </para> + +<sect1 id="starting-kate"> +<title +>Запуск &kate;</title> + +<para +>Запустить &kate; можно двумя способами: из <guimenu +>меню запуска</guimenu +> или из командной строки. </para> + +<sect2 id="starting-from-the-menu"> +<title +>Из меню запуска</title> +<para +>Откройте меню программ &kde;, щёлкнув левой кнопкой мыши на значке с большой буквой K, которая находится на панели внизу вашего экрана. В появившемся <guimenu +>меню запуска</guimenu +> выберите подменю <menuchoice +><guimenu +>Служебные</guimenu +><guimenu +>Редакторы</guimenu +></menuchoice +>. Появится список доступных редакторов. Выберите <guimenuitem +>&kate;</guimenuitem +>. </para> + +<para +>Если вы не изменяли параметры конфигурации &kate;, он загрузит вам последние редактируемые файлы. Читайте раздел <link linkend="configure" +>Настройка &kate;</link +>, чтобы узнать, как включить или выключить эту возможность. </para> + +</sect2> + +<sect2 id="starting-from-the-command-line"> +<title +>Из командной строки</title> + +<para +>Запустить &kate; можно набрав название программы в командной строке. Если вы укажете имя файла в качестве параметра, как это сделано в приведенном ниже примере, то редактор откроет или создаст этот файл. </para> + +<informalexample> +<screen +><prompt +>%</prompt +><userinput +><command +>kate</command +> <option +><replaceable +>myfile.txt</replaceable +></option +></userinput +> +</screen> +</informalexample> + +<para +>Если у вас есть доступ в Internet, то можно открывать (и сохранять) удалённые файлы, благодаря реализации "прозрачной" работы с сетью в &kde;. </para> + +<informalexample> +<screen +><prompt +>%</prompt +><userinput +><command +>kate</command +> <option +><replaceable +>ftp://ftp.kde.org/pub/kde/README_FIRST</replaceable +></option +></userinput +> +</screen> +</informalexample> + +<sect3 id="command-line-options"> +<title +>Параметры командной строки</title> +<para +>При запуске &kate; из командной строки можно указать следующие ключи:</para> + +<variablelist> +<varlistentry> +<term +><userinput +><command +>kate</command +> <option +>--help</option +></userinput +></term> +<listitem> +<para +>Вывести основные ключи командной строки. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +><command +>kate</command +> <option +>--help-qt</option +></userinput +></term> +<listitem> +<para +>Перечислить ключи, которые позволяют изменить способ взаимодействия &kate; и &Qt;. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +><command +>kate</command +> <option +>--help-kde</option +></userinput +></term> +<listitem> +<para +>Перечислить ключи, которые позволяют изменить способ взаимодействия &kate; и &kde;. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +><command +>kate</command +> <option +>-s</option +> <option +>--start</option +> <parameter +>сеанс</parameter +></userinput +></term> +<listitem> +<para +>Запустить kate и открыть сеанс <parameter +>сеанс</parameter +>. Если указанный сеанс не существует, он будет создан. Если &kate; с данным сеансом уже запущен, то переданные в командной строке файлы будут открыты в уже существующем окне программы. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +><command +>kate</command +> <option +>-u</option +> <option +>--use</option +> <parameter +>URL</parameter +></userinput +></term> +<listitem> +<para +>Открыть файл в уже запущенном экземпляре &kate;, если такой есть. Так как &kate; имеет многодокументный интерфейс, в одном окне возможно открытие нескольких файлов (а служебная панель "Документы" позволяет переключаться между ними). Если вы хотите чтобы такое поведение было по умолчанию, вы можете соответствующим образом изменить привязки типов файлов в &kde; и создать alias в вашем интерпретаторе. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +><command +>kate</command +> <option +>-p</option +> <option +>--pid</option +> <parameter +>PID</parameter +></userinput +></term> +<listitem> +<para +>Открыть файл в экземпляре с указанным PID (Process ID). Используется с ключом <option +>--use</option +>. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +><command +>kate</command +> <option +>--encoding</option +> <parameter +>кодировка</parameter +> <parameter +>URL</parameter +></userinput +></term> +<listitem +><para +>Кодировка файла. Вы можете, например, для файлов с расширением .cp1251 указать использовать кодировку Window$, а для .koi - KOI8-U. </para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +><command +>kate</command +> <option +>--line</option +> <parameter +>строка</parameter +> <parameter +>URL</parameter +></userinput +></term> +<listitem +><para +>Перейти к строке с указанным номером после открытия документа. </para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +><command +>kate</command +> <option +>--column</option +> <parameter +>позиция</parameter +> <parameter +>URL</parameter +></userinput +></term> +<listitem +><para +>Перейти в указанную позицию строки после открытия документа. </para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +><command +>kate</command +> <option +>--stdin</option +></userinput +></term> +<listitem +><para +>Получить текст из стандартного ввода. Аналогично указанию <option +>-</option +> в качестве имени файла.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +><command +>kate</command +> <option +>--tempfile</option +></userinput +></term> +<listitem +><para +>Поддерживается начиная с &kate; 2.5.1. Если она указана, переданные через командную строку файлы интерпретируются как временные и удаляются после закрытия, если только они не были изменены.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +><command +>kate</command +> <option +>--help-all</option +></userinput +></term> +<listitem> +<para +>Перечислить все ключи командной строки. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +><command +>kate</command +> <option +>--author</option +></userinput +></term> +<listitem> +<para +>Показать список авторов &kate; в окне терминала. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +><command +>kate</command +> <option +>-v</option +> <option +>--version</option +></userinput +></term> +<listitem> +<para +>Вывести версии &Qt;, &kde; и &kate;. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +><command +>kate</command +> <option +>--license</option +></userinput +></term> +<listitem> +<para +>Показать лицензию. </para> +</listitem> +</varlistentry> +</variablelist> +</sect3> +</sect2> + +<sect2 id="drag-and-drop"> +<title +>Посредством Drag and Drop</title> +<para +>&kate; использует протокол Drag and Drop &kde;. Файлы можно перетащить на &kate; с рабочего стола, из &konqueror; или с какого-нибудь удалённого сайта ftp, открытого в окне &konqueror;. </para> +</sect2> +</sect1> + +<sect1 id="working-with-kate"> +<title +>Работа в &kate;</title> +<para +>В разделе <link linkend="quick-start" +>Начало работы</link +> вы узнаете о четырёх опциях, которые позволят вам быстро настроить основные возможности &kate;. Раздел <link linkend="keystroke-commands" +>Комбинации клавиш</link +> содержит описание некоторых сочетаний клавиш для тех, кто не может или не желает работать с мышью. </para> + +<sect2 id="quick-start"> +<title +>Начало работы</title> + +<para +>В этом разделе описываются несколько подпунктов меню <guimenu +>Настройка</guimenu +>, которые помогут быстро настроить &kate; на ваш вкус. </para> + +<para +>Когда вы впервые запустите &kate; (если до сих пор ещё это не сделали) то увидите две области с белым фоном. Над ними будет находиться панель инструментов с наиболее часто используемыми командами. Ещё выше - строка меню. </para> + +<para +>Область слева - это боковая панель. В ней доступны список открытых файлов (вкладка "Документы") и проводник ("Проводник") в виде "служебных панелей". Переключаться между ними можно при помощи ярлыков, которые находятся вверху боковой панели. </para> + +<para +>Если &kate; запущен для открытия файла (например, из Konqueror), то в правой области вы увидите текст редактируемого файла, а в списке файлов, который находится на боковой панели -- его имя. С помощью селектора файлов можно просматривать файловую структуру и открывать файлы для редактирования. </para> + +<para +>Отобразить или скрыть служебные панели Проводник и Документы можно с помощью меню <menuchoice +><guimenu +>Окно</guimenu +><guimenu +>Служебные панели</guimenu +></menuchoice +>. Это меню даст вам первое впечатление о мощи и гибкости &kate;. В этом разделе мы обсудим четыре пункта этого меню: </para> + +<variablelist> + +<varlistentry> +<term> +<menuchoice> +<guimenuitem +>Показать/Скрыть документы</guimenuitem> +</menuchoice> +</term> +<listitem> +<para +>Показать/скрыть список файлов. Если окно боковой панели не открыто, &kate; откроет его как отдельное, не присоединенное окно. Для того чтобы присоединить окно, зацепите его за две тонкие параллельные линии над закладками, щелкнув по ним левой кнопкой мыши, и, не отпуская кнопку, перетащите окно на редактируемую область. Когда вы найдёте то положение, которое вам нужно, отпустите левую кнопку мыши. </para> + +<tip> +<para +>Если вы успешно зацепили окно, указатель мыши превратится в две перпендикулярные двунаправленные стрелки -- курсор перетаскивания. </para> +</tip> + +</listitem> +</varlistentry> +<varlistentry> +<term +><menuchoice +><guimenuitem +>Показать/Скрыть Проводник</guimenuitem +></menuchoice +></term> +<listitem> +<para +>Показать/скрыть селектор файлов. Этот пункт меню схож с предыдущим с одним различием: он управляет панелью проводника по файловой системе. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenuitem +>Показать/Скрыть Терминал</guimenuitem +></menuchoice +></term> +<listitem> +<para +>Показать/скрыть эмулятор терминала внизу главного окна &kate;. Эмулятор терминала предоставляет вам командную строку внутри приложения. </para> +</listitem> +</varlistentry> +</variablelist> +</sect2> + +<sect2 id="keystroke-commands"> +<title +>Комбинации клавиш</title> + +<para +>Почти все сочетания клавиш &kate; можно перенастроить через меню <link linkend="settings" +>Настройка</link +>. По умолчанию горячие клавиши в &kate; настроены следующим образом: </para> + +<informaltable> +<tgroup cols="2"> +<tbody> + +<row +><entry +><para +><keycap +>Insert</keycap +></para +></entry> +<entry +><para +>Переключить режим ввода текста с режима вставки в режим замены. В режиме вставки при вводе символа текст справа от курсора будет смещён правее на одну позицию, и символ будет вставлен в освободившееся пространство. В режиме замены при вводе символ, который стоит справа от курсора, будет заменён введенным.</para +></entry> +</row> +<row> +<entry +><para +><keycombo +><keycap +>Стрелка влево</keycap +></keycombo +></para +></entry> +<entry +><para +>Переместить курсор на один символ влево. </para +></entry> +</row> +<row> +<entry +><para +><keycombo +><keycap +>Стрелка вправо</keycap +></keycombo +></para +></entry> +<entry +><para +>Переместить курсор на один символ вправо. </para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +><keycap +>Стрелка вверх</keycap +></keycombo +></para +></entry> +<entry +><para +>Переместить курсор на одну строку вверх. </para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +><keycap +>Стрелка вниз</keycap +></keycombo +></para +></entry> +<entry +><para +>Переместить курсор на одну строку вниз. </para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +><keycap +>Page Up</keycap +></keycombo +></para +></entry> +<entry +><para +>Переместить курсор на одну страницу вверх. </para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +><keycap +>Page Down</keycap +></keycombo +></para +></entry> +<entry +><para +>Переместить курсор на одну страницу вниз. </para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +><keycap +>Backspace</keycap +></keycombo +></para +></entry> +<entry +><para +>Удалить один символ слева от курсора </para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +><keycap +>Home</keycap +></keycombo +></para +></entry> +<entry +><para +>Переместить курсор на начало файла. </para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +><keycap +>End</keycap +></keycombo +></para +></entry> +<entry +><para +>Переместить курсор на конец файла. </para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +><keycap +>Delete</keycap +></keycombo +></para +></entry> +<entry +><para +>Удалить один символ справа от курсора (или удалить весь выделенный текст).</para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +>&Shift;<keycap +>Стрелка влево</keycap +></keycombo +></para +></entry> +<entry +><para +>Выделить один символ текста слева от курсора. </para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +>&Shift;<keycap +>Стрелка вправо</keycap +></keycombo +></para +></entry> +<entry +><para +>Выделить один символ текста справа от курсора. </para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +><keycap +>F1</keycap +></keycombo +></para +></entry> +<entry +><para +>Справка.</para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +>&Shift;<keycap +>F1</keycap +></keycombo +></para +></entry> +<entry +><para +><link linkend="whats-this" +>Что это?</link +></para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +>&Ctrl;<keycap +>F</keycap +></keycombo +></para +></entry> +<entry +><para +><link linkend="find" +>Поиск.</link +></para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +><keycap +>F3</keycap +></keycombo +></para +></entry> +<entry +><para +><link linkend="find-again" +>Продолжить поиск.</link +></para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +>&Ctrl;<keycap +>B</keycap +></keycombo +></para +></entry> +<entry +><para +>Поставить закладку.</para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +>&Ctrl;<keycap +>C</keycap +></keycombo +></para +></entry> +<entry +><para +>Копировать выделенный текст в буфер обмена. </para +></entry> +</row> + +<row> +<entry +><para +><keycombo action="simul" +>&Ctrl;<keycap +>N</keycap +></keycombo +></para +></entry> +<entry +><para +><link linkend="new" +>Создать</link +> документ.</para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +>&Ctrl;<keycap +>P</keycap +></keycombo +></para +></entry> +<entry +><para +><link linkend="print" +>Печать.</link +> </para +></entry> +</row> +<row> + +<entry +><para +><keycombo action="simul" +>&Ctrl;<keycap +>Q</keycap +></keycombo +></para +></entry> +<entry +><para +>Выход -- закрыть редактор. </para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +>&Ctrl;<keycap +>R</keycap +></keycombo +></para +></entry> +<entry +><para +><link linkend="replace" +>Замена.</link +></para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +>&Ctrl;<keycap +>S</keycap +></keycombo +></para +></entry> +<entry +><para +>Сохранить текущий файл.</para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +>&Ctrl;<keycap +>V</keycap +></keycombo +></para +></entry> +<entry +><para +>Вставить текст из буфера обмена.</para +></entry> +</row> + +<row> +<entry +><para +><keycombo action="simul" +>&Ctrl;<keycap +>X</keycap +></keycombo +></para +></entry> +<entry +><para +>Скопировать выделенный текст в буфер обмена, после чего удалить его. </para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +>&Ctrl;<keycap +>Z</keycap +></keycombo +></para +></entry> +<entry +><para +><link linkend="undo" +>Отменить действие.</link +></para +></entry> +</row> +<row> +<entry +><para +><keycombo action="simul" +>&Ctrl;&Shift;<keycap +>Z</keycap +></keycombo +></para +></entry> +<entry +><para +><link linkend="redo" +>Повторить отмененное действие.</link +></para +></entry> +</row> +</tbody> +</tgroup> +</informaltable> +</sect2> + +</sect1> + +<sect1 id="fundamentals-using-sessions"> +<title +>Работа с сеансами</title> + +<para +>Сеанс - это список документов, которые открываются при его открытии, и информация о расположении элементов интерфейса. Вы можете создавать бесконечное множество именованных сеансов и использовать безымянные и анонимные сеансы для файлов, открываемых только один раз. Благодаря реализации концепции сеансов появилась возможность запуска нескольких экземпляров &kate; одновременно - с разными сеансами в каждом.</para> + +<para +>Поддержка сеансов присутствует в трёх областях: <itemizedlist> +<listitem +><para +><link linkend="command-line-options" +><emphasis +>Ключи командной строки</emphasis +></link +> - появилась возможность выбора сеанса, в котором следует открывать файлы.</para> +</listitem> +<listitem +><para +><link linkend="sessions-menu" +><emphasis +>Меню Сеанс</emphasis +></link +> - позволяет переключаться между сеансами.</para +></listitem> +<listitem +><para +><link linkend="config-dialog-sessions" +><emphasis +>Окно настройки</emphasis +></link +> - позволяет настроить параметры работы с сеансами.</para +></listitem> +</itemizedlist> + +</para> + +<para +>При создании нового сеанса используется конфигурация <guilabel +>Default Session</guilabel +>. Для того чтобы сохранить конфигурацию окна в этом станартном сеансе, включите сохранение конфигурации окна на странице параметров сеансов (в настроках kate), загрузите станартный сеанс, настройте параметры окна и сохраните сеанс снова.</para> + +<para +>При загрузке любого другого сеанса в заголовке окна &kate; выводится его имя, таким образом оно имеет формат "<replaceable +>имя-сенаса</replaceable +>: <replaceable +>имя-документа-или-&URL;</replaceable +> - &kate;"</para> + +<para +>Если при открытии файлов из командной строк указывается ключ <option +>--start <replaceable +>имя-сеанса</replaceable +></option +> или он выбирается в диалоге выбора сеансов, то перед собственно открытием указанных файлов загружаются файлы их выбранного сеанса. Kate может открывать файлы всегда в новом сеансе. Для этого отметьте выберите соответствующий флажок на странице параметров сеанса в настройках программы, или укажите ключ <option +>--start</option +> с пустым аргументом: <replaceable +>''</replaceable +>.</para> + +<para +>Начиная с &kate; 2.5.1 <acronym +>PID</acronym +> текущего экземпляра экспортируется в переменную окружения <envar +>KATE_PID</envar +>. Для открытия файлов из встроенного терминала используется текущий экземпляр программы, если явно не указано иного.</para> + +<sect2 id="old-behavior"> +<title +>Возврат к поведению, соответствующему старым версиям &kate;</title> + +<para +>Использование нескольких сеансов позволяет эффективно организовать работу в разных областях - ведь для каждой из них требуется разный набор файлов. Однако, если вы отказываетесь принимать всё новое, вернуть старое поведение &kate; можно следующим образом: <itemizedlist> +<listitem +><para +>Программа должна запускаться с ключом <option +>--use</option +> - добавьте его в команду запуска в привязках типов файлов, кроме того можно создать alias в вашем интерпретаторе.</para +></listitem> +<listitem +><para +>Включите загрузку последнего сеанса при запуске программы.</para> +</listitem> +<listitem +><para +>Включите сохранение списка файлов при закрытии сеанса. </para +></listitem> +<listitem +><para +>Загрузите сеанс по умолчанию</para +></listitem> +</itemizedlist> +</para> + +</sect2> + +</sect1> + +<sect1 id="fundamentals-getting-help"> + +<title +>Получение помощи</title> + +<sect2> + +<title +>Получение помощи из &kate;</title> +<variablelist> + +<varlistentry> +<term +>Данное руководство</term> + +<listitem> +<para +>В нем детально описаны все команды меню, параметры настройки, инструменты, диалоговые окна, модули. Также здесь описано основное окно &kate;, сам редактор и различные понятия и концепции, которые используются в приложении.</para> + +<para +>Чтобы открыть руководство, нажмите клавишу <keycap +>F1</keycap +> или выберите пункт меню <menuchoice +><guimenu +>Справка</guimenu +></menuchoice +> <guisubmenu +>Руководство &kate;</guisubmenu +>.</para +></listitem> + +</varlistentry> + +<varlistentry id="whats-this"> +<term +>Контекстная помощь ("Что это?")</term> +<listitem> +<para +>Контекстная помощь позволяет получить немедленную справку по какому-либо элементу графического окна, будь то кнопка или любая другая область окна.</para> + +<para +>Мы постарались обеспечить контекстной помощью все элементы, для которых это имеет смысл. Окно настройки &kate; полностью снабжено контекстной помощью, также как и многие другие диалоговые окна.</para> + +<para +>Чтобы вызвать контекстную помощь, нажмите сочетание клавиш <keycombo +>&Shift;<keycap +>F1</keycap +></keycombo +> или выберите пункт меню <menuchoice +><guimenu +>Справка</guimenu +><guimenuitem +>Что это?</guimenuitem +></menuchoice +>. Указатель мыши изменится на стрелку со знаком вопроса; теперь вам просто нужно щелкнуть левой кнопкой мыши на нужном элементе окна -- небольшое окно с контекстной помощью тут же появится на экране (если, конечно, такая помощь доступна).</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>Кнопки помощи в диалоговых окнах</term> +<listitem> +<para +>Некоторые диалоговые окна имеют кнопку <guibutton +>Справка</guibutton +>. Нажатие этой кнопки приведет к открытию соответствующего раздела документации в &khelpcenter;.</para> +</listitem> +</varlistentry> +</variablelist> + +</sect2> + +<sect2> +<title +>Получение помощи из внешних файлов</title> + +<para +>Пока &kate; не предоставляет возможности чтения документации, относящейся к редактируемому документу. В зависимости от типа редактируемого файла, вам может быть полезен <link linkend="kate-mdi-tools-konsole" +>встроенный терминал &konsole;</link +>, например, для просмотра руководств &UNIX; (man-страницы) или документации в формате info. Вы также можете использовать &konqueror;.</para> + +</sect2> + +</sect1> + +</chapter> diff --git a/tde-i18n-ru/docs/tdebase/kate/highlighting.docbook b/tde-i18n-ru/docs/tdebase/kate/highlighting.docbook new file mode 100644 index 00000000000..93baee3b076 --- /dev/null +++ b/tde-i18n-ru/docs/tdebase/kate/highlighting.docbook @@ -0,0 +1,1404 @@ +<appendix id="highlight"> +<appendixinfo> +<authorgroup> +<author +><personname +><firstname +></firstname +></personname +></author> +<othercredit role="translator" +><firstname +>Андрей</firstname +><surname +>Балагута</surname +><affiliation +><address +><email +>uj2@mail.ru</email +></address +></affiliation +><contrib +>Перевод на русский</contrib +></othercredit +><othercredit role="translator" +><firstname +>Алексей</firstname +><surname +>Опарин</surname +><affiliation +><address +><email +>opaleksej@yandex.ru</email +></address +></affiliation +><contrib +>Перевод на русский</contrib +></othercredit +> +</authorgroup> +</appendixinfo> +<title +>Подсветка синтаксиса</title> + +<sect1 id="highlight-overview"> + +<title +>Обзор</title> + +<para +>Синтаксическая подсветка позволяет отображать текст в редакторе разными цветами и стилями, таким образом отделяя одни синтаксические понятия от других. Например, в исходном тексте программы можно ключевые слова выделить полужирным шрифтом, а типы данных и комментарии отображать разными цветами, выделяя их из основного текста. Это улучшает читаемость документа и повышает продуктивность работы автора.</para> + +<mediaobject> +<imageobject +><imagedata format="PNG" fileref="highlighted.png"/></imageobject> +<textobject +><phrase +>Функция Perl, отображенная с использованием синтаксической подсветки.</phrase +></textobject> +<caption +><para +>Функция Perl, отображенная с использованием синтаксической подсветки.</para> +</caption> +</mediaobject> + +<mediaobject> +<imageobject +><imagedata format="PNG" fileref="unhighlighted.png"/></imageobject> +<textobject +><phrase +>Та же самая функция, но без подсветки.</phrase +></textobject> +<caption +><para +>Та же самая функция, но без подсветки.</para +></caption> +</mediaobject> + +<para +>Какой из примеров легче читать?</para> + +<para +>&kate; имеет гибкую, легко настраиваемую систему синтаксической подсветки, в стандартную поставку редактора входят правила подсветки синтаксиса для большого числа языков программирования, разметки и других текстовых форматов. Все определения хранятся в простых текстовых файлах в формате &XML;, поэтому вы можете свободно создавать собственные правила.</para> + +<para +>При открытии файла &kate; автоматически подбирает правила подсветки, основываясь на &MIME;-типе (который, в свою очередь, определяется расширением файла) или содержании файла, если расширения нет. Если &kate; неправильно определил тип файла, выберите нужный режим подсветки вручную в меню <menuchoice +><guimenu +>Документ</guimenu +><guisubmenu +>Режим подсветки</guisubmenu +></menuchoice +>.</para> + +<para +>Вы можете настроить стили и цвета доступных синтаксических определений на вкладке <link linkend="config-dialog-editor-appearance" +>Схемы</link +>диалога <link linkend="config-dialog" +>Настройка &kate;</link +> , а соответствующие им &MIME;-типы - на вкладке <link linkend="config-dialog-editor-highlighting" +>Подсветка</link +> .</para> + +<note> +<para +>Синтаксическая подсветка улучшает читаемость корректно оформленного текста, но не факт, что текст некорректен, если он неправильно отображается системой подсветки. Синтаксическая разметка текста - достаточно сложный процесс, сложность которого зависит от формата файла, поэтому авторы синтаксических определений считают удачей, если 98% текста отображается корректно, но не стоит забывать об оставшихся 2%.</para> +</note> + +<tip> +<para +>На сайте &kate; вы можете загрузить обновлённые или дополнительные правила синтаксической подсветки. Для этого нужно щёлкнуть на кнопке <guibutton +>Загрузить</guibutton +> на вкладке <link linkend="config-dialog-editor-highlighting" +>Подсветка</link +> диалога <link linkend="config-dialog" +>Настройка &kate;</link +>.</para> +</tip> + +</sect1> + +<sect1 id="katehighlight-system"> + +<title +>Система синтаксической подсветки &kate;</title> + +<para +>В этом разделе подробно рассматривается механизм синтаксической подсветки &kate;. Прочитав его, вы сможете изменять существующие или создавать свои синтаксические определения.</para> + +<sect2 id="katehighlight-howitworks"> + +<title +>Механизм работы</title> + +<para +>Когда вы открываете файл, первое, что делает &kate; - определяет, какое синтаксическое определение использовать для него. При чтении и наборе система подсветки анализирует текст в редакторе, используя правила, указанные в синтаксическом определении, и помечает границы контекстов и стилей.</para> + +<para +>При вводе система динамически анализирует текст, поэтому, если вы удалите символ, который был помечен как начало или конец контекста, стиль окружающего текста автоматически изменится.</para> + +<para +>Синтаксические определения &kate; хранятся в &XML;-файлах. Они содержат: <itemizedlist> +<listitem +><para +>Правила определения роли текста, организованного в контекстные блоки</para +></listitem> +<listitem +><para +>Списки ключевых слов</para +></listitem> +<listitem +><para +>Определения стилей</para +></listitem> +</itemizedlist> +</para> + +<para +>Система подсветки анализирует текст последовательно от начала до конца. Указатель анализатора перемещается от символа к символу, проверяя текст на соответствие правилам и помечая границы контекстов. Правила применяются к текущей строке в порядке их объявления, и при соответствии к ней применяется контекст, указанный в правиле. После этого указатель смещается на конец области соответствия и начинается новый цикл проверки правил, принадлежащих установленному контексту.</para> + +</sect2> + +<sect2 id="highlight-system-rules"> +<title +>Правила</title> + +<para +>Правила - это сердце системы подсветки. Правило может быть строкой, символом или <link linkend="regular-expressions" +>регулярным выражением</link +>, с которым сравнивается текст документа. Оно содержит информацию о стиле, который будет применен к тексту, если последний соответствует правилу. Оно может переключить текущий контекст системы на явно указанный или предыдущий контекст.</para> + +<para +>Правила организованы в контекстные группы. Контекстная группа используется для определения главных понятий в формате, например, строка, заключенная в двойные кавычки, или блок комментария в исходном тексте программы. Такая организация правил позволяет предотвратить проверку правил, неприменимых к текущему контексту (правил из других контекстов). Эта структура делает систему подсветки более гибкой, позволяя определять одинаковые правила в разных контекстах, что делает возможным одинаковые последовательности символов отображать разными стилями в зависимости от контекста, в котором они находятся. </para> + +<para +>Контексты могут образовываться динамически, чтобы сделать возможным использование правил, справедливых для данного момента.</para> + +</sect2> + +<sect2 id="highlight-context-styles-keywords"> +<title +>Стили контекстов и ключевые слова</title> + +<para +>В некоторых языках программирования целые и вещественные числа трактуются компилятором по-разному (компилятор - это программа, которая преобразует исходный текст программы в двоичный исполняемый файл). Синтаксис языка может определять символы, имеющие специальное значение, если они находятся в строке, заключенной в кавычки. В этих случаях есть смысл выделять их в тексте для более удобного чтения. Иногда бывает полезно выделять символы, не имеющие специального значения - это тоже под силу системе синтаксической подсветки &kate;.</para> + +<para +>Синтаксическое определение может содержать столько стилей, сколько нужно для данного формата.</para> + +<para +>Во многих форматах существуют списки слов, имеющих специальное значение. Например, в языках программирования такими словами будут являться управляющие операторы, названия типов данных и встроенные функции. Это концептуальные слова, поскольку они определяют саму суть синтаксиса. Система синтаксической подсветки &kate; использует списки подобных слов, чтобы подчеркнуть концептуальные элементы формата.</para> + +</sect2> + +<sect2 id="kate-highlight-system-default-styles"> +<title +>Стили по умолчанию</title> + +<para +>Если вы откроете файл исходного кода на C++, на &Java; или документ <acronym +>HTML</acronym +>, то увидите, что разные форматы отображаются в одних и тех же цветах. Дело в том, что &kate; содержит предустановленный набор стандартных стилей. Синтаксические определения по возможности используют этот набор.</para> + +<para +>Это позволяет подобным образом отображать похожие концепции в различных форматах. Например, комментарии есть почти во всех языках программирования, разметки и скриптах.</para> + +<tip> +<para +>Каждый стиль в синтаксическом определении основывается на одном из стандартных стилей. Поэтому, если вы часто используете какой-то формат с большим количеством стилей, следует проверить его конфигурацию на предмет их совпадения. Приведём небольшой пример. В &kate; определен всего один стандартный стиль для отображения строковых констант, но в языке программирования Perl существует два вида строк. Согласитесь, было бы гораздо лучше отображать их по разному - вы заходите в диалоговое окно настройки &kate; и изменяете соответствующие стили. Все <link linkend="kate-highlight-default-styles" +>доступные стандартные стили</link +> будут рассмотрены позже.</para> +</tip> + +</sect2> + +</sect1> + +<sect1 id="katehighlight-xml-format"> +<title +>&XML;-формат определения синтаксической подсветки</title> + +<sect2> +<title +>Обзор</title> + +<para +>В этом разделе вы познакомитесь с &XML;-форматом определения синтаксической подсветки. Вначале, на небольшом примере, будут кратко объяснены главные компоненты и их значение, затем мы более подробно остановимся на правилах подсветки.</para> + +<para +>Формальное определение (<acronym +>DTD</acronym +>) находится в файле <filename +>language.dtd</filename +>, в каталоге <filename +>$<envar +>KDEDIR</envar +>/share/apps/katepart/syntax</filename +>. </para> + +<variablelist> +<title +>Основные разделы файла определения синтаксической подсветки &kate;</title> + +<varlistentry> +<term +>В заголовке файла подсветки указаны версия XML и тип документа:</term> +<listitem> +<programlisting +><?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE language SYSTEM "language.dtd"> +</programlisting> +</listitem> +</varlistentry> + +<varlistentry> +<term +>Главная часть файла определений - элемент <userinput +>language</userinput +>. Доступные атрибуты:</term> + +<listitem> +<para +>Необходимые атрибуты:</para> +<para +><userinput +>name</userinput +> определяет название языка. Впоследствии оно появляется во всех меню и диалогах.</para> +<para +><userinput +>section</userinput +> указывает категорию.</para> +<para +><userinput +>extensions</userinput +> определяет расширения файлов, вроде "*.cpp;*.h"</para> + +<para +>Дополнительные атрибуты:</para> +<para +><userinput +>mimetype</userinput +> связывает файл с определенным типом &MIME;.</para> +<para +><userinput +>version</userinput +> указывает текущую версию файла определений.</para> +<para +><userinput +>kateversion</userinput +> указывает новейшую из поддерживаемых версий &kate;.</para> +<para +><userinput +>casesensitive</userinput +> определяет чувствительность ключевых слов к регистру.</para> +<para +><userinput +>priority</userinput +> определяет приоритет в случае использования разных правил подсветки. Действует правило с высшим приоритетом.</para> +<para +><userinput +>author</userinput +> содержит имя и email-адрес автора.</para> +<para +><userinput +>license</userinput +> содержит лицензию, обычно LGPL, Artistic, GPL и т.п.</para> +<para +><userinput +>hidden</userinput +> определяет, будет ли отображаться название в меню &kate;.</para> +<para +>Итак, следующая строка может быть примерно такой:</para> +<programlisting +><language name="C++" version="1.00" kateversion="2.4" section="Sources" extensions="*.cpp;*.h" /> +</programlisting> +</listitem> +</varlistentry> + + +<varlistentry> +<term +>Следующий элемент - <userinput +>highlighting</userinput +>, состоящий из необязательного <userinput +>list</userinput +> и обязательных - <userinput +>contexts</userinput +> и <userinput +>itemDatas</userinput +>.</term> +<listitem> +<para +>Элемент <userinput +>list</userinput +> содержит список ключевых слов. В нашем случае это <emphasis +>class</emphasis +> и <emphasis +>const</emphasis +>.Списков можете добавить, сколько хотите.</para> +<para +>Элемент <userinput +>contexts</userinput +> содержит все контексты. По умолчанию, подсветка начинается с первого контекста. В контексте <emphasis +>Normal Text</emphasis +> есть два правила, одно из которых проверяет наличие в тексте <emphasis +>слов</emphasis +>, соответствующих списку ключевых слов, другое определяет наличие кавычек и переключает контекст к <emphasis +>строковому</emphasis +> типу. Подробнее правила описаны в следующей главе.</para> +<para +>Элемент <userinput +>itemDatas</userinput +> содержит сведения о цветах и стилях, применяющихся в контекстах и правилах. В нашем примере <userinput +>itemData</userinput +> использует контексты <emphasis +>Normal Text</emphasis +>, <emphasis +>String</emphasis +> и <emphasis +>Keyword</emphasis +>. </para> +<programlisting +><highlighting> + <list name="somename"> + <item> class </item> + <item> const </item> + </list> + <contexts> + <context attribute="Normal Text" lineEndContext="#pop" name="Normal Text" > + <keyword attribute="Keyword" context="#stay" String="somename" /> + <DetectChar attribute="String" context="string" char="&quot;" /> + </context> + <context attribute="String" lineEndContext="#stay" name="string" > + <DetectChar attribute="String" context="#pop" char="&quot;" /> + </context> + </contexts> + <itemDatas> + <itemData name="Normal Text" defStyleNum="dsNormal" /> + <itemData name="Keyword" defStyleNum="dsKeyword" /> + <itemData name="String" defStyleNum="dsString" /> + </itemDatas> + </highlighting> +</programlisting> +</listitem> +</varlistentry> + +<varlistentry> +<term +> Последня часть файла определения синтаксической подсветки - необязательный раздел <userinput +>general</userinput +>. Здесь могут содержаться сведения о ключевых словах, сворачивании блоков кода, комментариях и отступах.</term> + +<listitem> +<para +>Раздел <userinput +>comment</userinput +> определяет, какой строкой вводится однострочный комментарий. Можно пользоваться также многострочными комментариями, используя <emphasis +>multiLine</emphasis +> с дополнительным атрибутом <emphasis +>end</emphasis +>. Это используется тогда, когда пользователь нажимает комбинацию клавиш, назначенную для действия <emphasis +>закомментировать/раскомментировать</emphasis +>.</para> +<para +>Секция <userinput +>keywords</userinput +> определяет чувствительность ключевых слов к регистру. Остальные атрибуты рассмотрим позднее.</para> +<programlisting +><general> + <comments> + <comment name="singleLine" start="#"/> + </comments> + <keywords casesensitive="1"/> + </general> +</language> +</programlisting> +</listitem> +</varlistentry> + +</variablelist> + + +</sect2> + +<sect2 id="kate-highlight-sections"> +<title +>Более подробно о разделах</title> +<para +>В этой части указаны все возможные атрибуты для контекстов, itemDatas, ключевых слов, комментариев, сворачивания кодов и отступов.</para> + +<variablelist> +<varlistentry> +<term +>Элемент <userinput +>context</userinput +> относится к группе <userinput +>contexts</userinput +>. Контекстом определяются некоторые особые правила (например, что происходит при достижении подсвеченной структурой конца строки). Доступные атрибуты:</term> + + +<listitem> +<para +><userinput +>name</userinput +> - название контекста. Правила используют это название для переключения на указанный контекст.</para> +<para +><userinput +>lineEndContext</userinput +> определяет, на какой контекст подсвеченная структура переключается при достижении конца строки. Это может быть название другого контекста, <userinput +>#stay</userinput +>, если контекст не меняется (т.е. не делать ничего) или <userinput +>#pop</userinput +> для выхода из контекста. Например, набор <userinput +>#pop#pop#pop</userinput +> приведет к троекратному выходу из контекста.</para> +<para +><userinput +>lineBeginContext</userinput +> определяет контекст при достижении начала строки. По умолчанию: #stay.</para> +<para +><userinput +>fallthrough</userinput +> определяет поведение в случае переключения подсвеченной структуры на контекст, указанный в fallthroughContext, если не найдено соответствующее правило. По умолчанию: <emphasis +>false</emphasis +>.</para> +<para +><userinput +>fallthroughContext</userinput +> указывает следующий контекст, если не найдено соответствующее правило.</para> +<para +>Если <userinput +>dynamic</userinput +> имеет значение <emphasis +>true</emphasis +>, то контекст запоминает строки/метки-заполнители, сохранённые в динамических правилах. Это необходимо, например, для текущих документов. По умолчанию: <emphasis +>false</emphasis +>.</para> +</listitem> +</varlistentry> + + +<varlistentry> +<term +>Элемент <userinput +>itemData</userinput +> принадлежит группе <userinput +>itemDatas</userinput +>. Он определяет стиль и цвет шрифта, их можно устанавливать самому в тех случаях, когда это необходимо. И все же, рекомендуется придерживаться стандартных стилей, чтобы помочь пользователю свободно ориентироваться в любом языке . Название атрибута (name) и defStyleNum обязательны, остальные нет. Доступные атрибуты:</term> + +<listitem> +<para +><userinput +>name</userinput +> даёт название itemData. Контексты и правила будут использовать это название при обращении к itemData в своих атрибутах <emphasis +>attribute</emphasis +>.</para> +<para +><userinput +>defStyleNum</userinput +> определяет стиль, используемый по умолчанию. Доступные стандартные стили будут детально описаны ниже.</para> +<para +><userinput +>color</userinput +> определяет цвет. Правильные форматы '#rrggbb' или '#rgb'.</para> +<para +><userinput +>selColor</userinput +> определяет цвет выделенного текста.</para> +<para +>Если <userinput +>italic</userinput +> имеет значение <emphasis +>true</emphasis +>, шрифт будет курсивным.</para> +<para +>Если <userinput +>bold</userinput +> имеет значение <emphasis +>true</emphasis +>, шрифт будет полужирным.</para> +<para +>Если <userinput +>underline</userinput +> имеет значение <emphasis +>true</emphasis +>, текст будет подчёркнут.</para> +<para +>Если <userinput +>strikeout</userinput +> имеет значение <emphasis +>true</emphasis +>, текст будет зачёркнут.</para> +</listitem> +</varlistentry> + + +<varlistentry> +<term +>Элемент <userinput +>keywords</userinput +> в группе <userinput +>general</userinput +> определяет свойства ключевых слов. Доступные атрибуты:</term> + +<listitem> +<para +><userinput +>casesensitive</userinput +> может быть <emphasis +>true</emphasis +> или <emphasis +>false</emphasis +>. Если <emphasis +>true</emphasis +>, все ключевые слова будут проверяться на соответствие с учетом регистра</para> +<para +><userinput +>weakDeliminator</userinput +> - это группа знаков, которые не могут разделять слова. Например, точка <userinput +>'.'</userinput +> - разделитель слов. Если ключевое слово в <userinput +>list</userinput +> содержит точку, оно будет использовано по назначению только, если точка будет определена как "нетвердый разделитель" (weak delimiter).</para> +<para +><userinput +>additionalDeliminator</userinput +> определяют дополнительные разделители.</para> +<para +><userinput +>wordWrapDeliminator</userinput +> определяют символы, после которых может происходить перевод строки.</para> +<para +>По умолчанию разделителями слов и строк являются символы <userinput +>.():!+,-<=>%&*/;?[]^{|}~\</userinput +>, пробел (<userinput +>' '</userinput +>) и табуляция (<userinput +>'\t'</userinput +>).</para> +</listitem> +</varlistentry> + + +<varlistentry> +<term +>Элемент <userinput +>comment</userinput +> в группе <userinput +>comments</userinput +> определяет свойства комментариев, которые используются в меню<menuchoice +><guimenu +>Сервис</guimenu +><guimenuitem +>Закомментировать</guimenuitem +></menuchoice +> и <menuchoice +><guimenu +>Сервис</guimenu +><guimenuitem +>Раскомментировать</guimenuitem +></menuchoice +>. Доступные атрибуты:</term> + +<listitem> +<para +><userinput +>name</userinput +> может быть <emphasis +>singleLine</emphasis +> или <emphasis +>multiLine</emphasis +>. Если выбрать <emphasis +>multiLine</emphasis +>, то потребуются атрибуты <emphasis +>end</emphasis +> и <emphasis +>region</emphasis +>.</para> +<para +><userinput +>start</userinput +> указывает строку начала комментария. В C++ это может быть "/*".</para> +<para +><userinput +>end</userinput +> указывает строку окончания комментария. В C++ это может быть "*/".</para> +<para +><userinput +>region</userinput +> должно быть названием сворачиваемого многострочного комментария. Допустим, если в ваших правилах указано <emphasis +>beginRegion="Comment"</emphasis +> ... <emphasis +>endRegion="Comment"</emphasis +>, вы должны использовать <emphasis +>region="Comment"</emphasis +>. В этом случае раскомментирование будет действовать, даже если не будет выделен весь текст многострочного комментария. Достаточно будет просто поместить курсор в его пределы.</para> +</listitem> +</varlistentry> + + +<varlistentry> +<term +>Элемент <userinput +>folding</userinput +> в группе <userinput +>general</userinput +> определяет свойства сворачивания кода. Доступные атрибуты:</term> + +<listitem> +<para +>Если <userinput +>indentationsensitive</userinput +> имеет значение <emphasis +>true</emphasis +>, то маркёры сворачивания кода будут располагаться с учетом отступов, как в языке сценариев Python. Чаще всего в этом нет необходимости, поэтому по умолчанию этот параметр определен как <emphasis +>false</emphasis +>.</para> +</listitem> +</varlistentry> + + +<varlistentry> +<term +>Элемент <userinput +>indentation</userinput +> в группе <userinput +>general</userinput +> определяет формат отступов, однако мы настоятельно рекомендуем не менять этот элемент, так как отступы обычно определяются типом файла или добавлением режимной строки в текстовый файл. Если вы всё-таки укажете способ отступа, он может оказаться навязанным пользователю, которому совсем не нужен. Доступные атрибуты:</term> + +<listitem> +<para +><userinput +>mode</userinput +> - название формата отступов. Доступные форматы: <emphasis +>normal, cstyle, csands, xml, python</emphasis +> и <emphasis +>varindent</emphasis +>.</para> +</listitem> +</varlistentry> + + +</variablelist> + + +</sect2> + +<sect2 id="kate-highlight-default-styles"> +<title +>Стандартные стили</title> +<para +>Стандартные стили уже были кратко <link linkend="kate-highlight-system-default-styles" +>описаны</link +>: Стандартные стили предопределяют настройки цветов и шрифтов.</para> +<variablelist> +<varlistentry> +<term +>Здесь приведен только список доступных стандартных стилей:</term> +<listitem> +<para +><userinput +>dsNormal</userinput +>, для нормального текста.</para> +<para +><userinput +>dsKeyword</userinput +>, для ключевых слов.</para> +<para +><userinput +>dsDataType</userinput +>, для типов данных.</para> +<para +><userinput +>dsDecVal</userinput +>, для десятичных значений.</para> +<para +><userinput +>dsBaseN</userinput +>, для значений с основанием, отличным от10.</para> +<para +><userinput +>dsFloat</userinput +>, для значений с плавающей точкой.</para> +<para +><userinput +>dsChar</userinput +>, для символов.</para> +<para +><userinput +>dsString</userinput +>, для строк.</para> +<para +><userinput +>dsComment</userinput +>, для комментариев.</para> +<para +><userinput +>dsOthers</userinput +>, для всего остального.</para> +<para +><userinput +>dsAlert</userinput +>, для вывода предупреждений.</para> +<para +><userinput +>dsFunction</userinput +>, для вызова функций.</para> +<para +><userinput +>dsRegionMarker</userinput +>, для маркёров участков.</para> +<para +><userinput +>dsError</userinput +>, для подсветки ошибок и неверного синтаксиса.</para> +</listitem> +</varlistentry> +</variablelist> + +</sect2> + +</sect1> + +<sect1 id="kate-highlight-rules-detailled"> +<title +>Синтаксические правила</title> + +<para +>В этом разделе описываются синтаксические правила.</para> + +<para +>При анализе строки каждое правило может <quote +>запросить</quote +> на проверку любое количество символов (даже ноль). Если правило подходит, к соответствующим символам применяется стиль или <emphasis +>атрибут</emphasis +>, определённый в правиле. Применяемое правило также может запросить переключение текущего контекста.</para> + +<para +>Правило выглядит примерно так:</para> + +<programlisting +><RuleName attribute="(identifier)" context="(identifier)" [rule specific attributes] /></programlisting> + +<para +>Параметр <emphasis +>attribute</emphasis +> указывает, какой стиль применить к символам, соответствующим правилу. Параметр <emphasis +>context</emphasis +> определяет контекст, который будет установлен в случае применения правила.</para> + +<para +>Параметр <emphasis +>context</emphasis +> может принимать следующие значения:</para> + +<itemizedlist> +<listitem> +<para +><emphasis +>Идентификатор</emphasis +>, т.е. название контекста.</para> +</listitem> +<listitem> +<para +><emphasis +>order</emphasis +> предписывает системе подсветки не менять текущий контекст (<userinput +>#stay</userinput +>) или вернуться к предыдущему контексту (<userinput +>#pop</userinput +>).</para> +<para +>Чтобы вернуться назад на несколько контекстов, повторите нужное количество раз ключевое слово #pop: <userinput +>#pop#pop#pop</userinput +></para> +</listitem> +</itemizedlist> + +<para +>Некоторые правила могут иметь <emphasis +>дочерние правила</emphasis +>, которые проверяются только в том случае, если текст соответствует родительскому правилу. Всей совпавшей строке будут присвоены атрибуты, определенные в родительском правиле. Вот пример правила с дочерними правилами:</para> + +<programlisting +><RuleName (attributes)> + <ChildRuleName (attributes) /> + ... +</RuleName> +</programlisting> + + +<para +>Параметры конкретных видов правил описаны в следующих разделах.</para> + + +<itemizedlist> +<title +>Общие атрибуты</title> +<para +>У любого правила есть следующие атрибуты, <userinput +>(common attributes)</userinput +>, доступные всегда. <emphasis +>attribute</emphasis +> и <emphasis +>context</emphasis +> обязательны, остальные - нет. </para> + +<listitem> +<para +><emphasis +>attribute</emphasis +>: Атрибут, описывающий определённые <emphasis +>itemData</emphasis +>.</para> +</listitem> +<listitem> +<para +><emphasis +>context</emphasis +>: Определяет контекст, на который происходит переключение в случае соответствия правилу.</para> +</listitem> +<listitem> +<para +><emphasis +>beginRegion</emphasis +>: Начало сворачиваемого блока кода. По умолчанию: не установлен (unset).</para> +</listitem> +<listitem> +<para +><emphasis +>endRegion</emphasis +>: Окончание сворачиваемого блока кода. По умолчанию: не установлен (unset).</para> +</listitem> +<listitem> +<para +>Если <emphasis +>lookAhead</emphasis +> имеет значение <emphasis +>true</emphasis +>, то система подсветки больше не будет обрабатывать соответствия. По умолчанию: <emphasis +>false</emphasis +>.</para> +</listitem> +<listitem> +<para +><emphasis +>firstNonSpace</emphasis +>: Соответствие, только если строка начинается не с пробела. По умолчанию: <emphasis +>false</emphasis +>.</para> +</listitem> +<listitem> +<para +><emphasis +>column</emphasis +>: Соответствие, только если соответствует номер столбца. По умолчанию: не установлено (unset).</para> +</listitem> +</itemizedlist> + +<itemizedlist> +<title +>Динамические правила</title> +<para +>У некоторых правил есть необязательный атрибут <userinput +>dynamic</userinput +>, имеющий логическое значение (по умолчанию <emphasis +>false</emphasis +>). Если dynamic установить <emphasis +>true</emphasis +>, то правило может использовать метки-заполнители, заменяющие текст, соответствующий правилу <emphasis +>регулярного выражения</emphasis +>, переключенного к текущему контексту по своим атрибутам <userinput +>string</userinput +> или <userinput +>char</userinput +>. В атрибуте <userinput +>string</userinput +> метка-заполнитель <replaceable +>%N</replaceable +> (где N - цифра) будет заменена номером <replaceable +>N</replaceable +> найденного регулярного выражения. В атрибуте <userinput +>char</userinput +> метка-заполнитель должна быть цифрой <replaceable +>N</replaceable +>, и будет заменена первым символом <replaceable +>N</replaceable +> найденного регулярного выражения. Чтобы правило могло использовать эти атрибуты, оно должно содержать параметр <emphasis +>(dynamic)</emphasis +>.</para> + +<listitem> +<para +><emphasis +>dynamic</emphasis +>: логический атрибут <emphasis +>(true|false)</emphasis +>.</para> +</listitem> +</itemizedlist> + +<sect2 id="highlighting-rules-in-detail"> +<title +>Более подробно о правилах</title> + +<variablelist> +<varlistentry> +<term +>DetectChar</term> +<listitem> +<para +>Проверка на совпадение с одним определенным символом. Используется, например, для определения завершающего символа строки, заключённой в кавычки.</para> +<programlisting +><DetectChar char="(character)" (common attributes) (dynamic) /></programlisting> +<para +>Параметр <userinput +>char</userinput +> определяет символ.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>Detect2Chars</term> +<listitem> +<para +>Проверка на совпадение с двумя символами в заданном порядке.</para> +<programlisting +><Detect2Chars char="(character)" char1="(character)" (common attributes) (dynamic) /></programlisting> +<para +>Параметр <userinput +>char</userinput +> определяет первый символ для проверки, <userinput +>char1</userinput +> - второй.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>AnyChar</term> +<listitem> +<para +>Проверка на совпадение с любым символом из заданного набора.</para> +<programlisting +><AnyChar String="(string)" (common attributes) /></programlisting> +<para +>Параметр <userinput +>String</userinput +> содержит набор допустимых символов.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>StringDetect</term> +<listitem> +<para +>Проверка на совпадение со строкой.</para> +<programlisting +><StringDetect String="(string)" [insensitive="true|false"] (common attributes) (dynamic) /></programlisting> +<para +>Параметр <userinput +>String</userinput +> должен содержать строку, которую нужно проверить на соответствие. Атрибут <userinput +>insensitive</userinput +> по умолчанию имеет значение <userinput +>false</userinput +>, он влияет на сравнение строк. Если этот параметр установлен <userinput +>true</userinput +>, функция сравнения не будет учитывать регистр символов.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>RegExpr</term> +<listitem> +<para +>Проверка на совпадение с регулярным выражением.</para> +<programlisting +><RegExpr String="(string)" [insensitive="true|false"] [minimal="true|false"] (common attributes) (dynamic) /></programlisting> +<para +>Параметр <userinput +>String</userinput +> определяет регулярное выражение.</para> +<para +><userinput +>insensitive</userinput +> имеет то же значение, что и в предыдущем правиле; по умолчанию установлен <userinput +>false</userinput +>.</para> +<para +>Параметр <userinput +>minimal</userinput +> по умолчанию имеет значение <userinput +>false</userinput +> и передаётся функции обработки регулярных выражений.</para> +<para +>Символ перевода каретки (<literal +>^</literal +>) в начале регулярного выражения говорит о том, что данное правило будет применяться только к тем цепочкам символов, которые начинаются с новой строки.</para> +<para +>Более подробно регулярные выражения рассматриваются в разделе <link linkend="regular-expressions" +><quote +>Регулярные выражения</quote +></link +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>keyword</term> +<listitem> +<para +>Проверка на ключевое слово из указанного списка.</para> +<programlisting +><keyword String="(list name)" (common attributes) /></programlisting> +<para +>В параметре <userinput +>String</userinput +> нужно указать название списка ключевых слов. Этот список должен существовать.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>Int</term> +<listitem> +<para +>Проверка на целое число.</para> +<para +><programlisting +><Int (common attributes) (dynamic) /></programlisting +></para> +<para +>Это правило не имеет своих параметров. Дочерние правила обычно используются для определения комбинаций символов <userinput +>L</userinput +> и <userinput +>U</userinput +> после числа, которые конкретизируют тип целой константы в коде программы. Вообще, все правила могут быть использованы в качестве дочерних, хотя <acronym +>DTD</acronym +> разрешает использовать в качестве дочернего только правило <userinput +>StringDetect</userinput +>.</para> +<para +>Пример проверки на целые числа, следующие за символом 'L'. <programlisting +><Int attribute="Decimal" context="#stay" > + <StringDetect attribute="Decimal" context="#stay" String="L" insensitive="true"/> +</Int> +</programlisting +></para> + +</listitem> +</varlistentry> + +<varlistentry> +<term +>Float</term> +<listitem> +<para +>Проверка на число с плавающей точкой.</para> +<para +><programlisting +><Float (common attributes) /></programlisting +></para> +<para +>У этого правила нет особых атрибутов. <userinput +>AnyChar</userinput +> можно использовать как дочернее, обычно оно используется для проверки комбинаций. Для примера смотрите правило <userinput +>Int</userinput +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>HlCOct</term> +<listitem> +<para +>Проверка на восьмеричное число (должно начинаться с нуля).</para> +<para +><programlisting +><HlCOct (common attributes) /></programlisting +></para> +<para +>У этого правила нет особых атрибутов.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>HlCHex</term> +<listitem> +<para +>Проверка на шестнадцатеричное число (должно начинаться с символов <quote +>0x</quote +>).</para> +<para +><programlisting +><HlCHex (common attributes) /></programlisting +></para> +<para +>У этого правила нет особых атрибутов.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>HlCStringChar</term> +<listitem> +<para +>Проверка на управляющий символ.</para> +<para +><programlisting +><HlCStringChar (common attributes) /></programlisting +></para> +<para +>У этого правила нет особых атрибутов.</para> + +<para +>Проверка на специальное представление символов, которое используется в языках программирования, например, <userinput +>\n</userinput +> (переход на новую строку) или <userinput +>\t</userinput +> (символ табуляции).</para> + +<para +>Следующие символы соответствуют правилу, если они вводятся после обратной черты (<literal +>\</literal +>): <userinput +>abefnrtv"'?\</userinput +>. Также будут соответствовать шестнадцатеричные и восьмеричные числа, предварённые обратной чертой (например, <userinput +>\xff</userinput +> и <userinput +>\033</userinput +>).</para> + +</listitem> +</varlistentry> + +<varlistentry> +<term +>HlCChar</term> +<listitem> +<para +>Проверка на символ C.</para> +<para +><programlisting +><HlCChar (common attributes) /></programlisting +></para> +<para +>У этого правила нет особых атрибутов.</para> + +<para +>Правило находит символы C, заключенные в одинарные кавычки (например, <userinput +>'c'</userinput +>). Внутри одинарных кавычек может быть как одиночный символ, так и управляющая последовательность, более подробно ознакомиться с которыми можно в описании правила HlCStringChar.</para> + +</listitem> +</varlistentry> + +<varlistentry> +<term +>RangeDetect</term> +<listitem> +<para +>Проверка на строку, имеющую заданные начальный и конечный символы.</para> +<programlisting +><RangeDetect char="(character)" char1="(character)" (common attributes) /></programlisting> +<para +><userinput +>char</userinput +> определяет символ, с которого начинается строка, а <userinput +>char1</userinput +> - которым она заканчивается.</para> +<para +>Это правило может быть использовано для поиска небольших строк, заключенных в кавычки, но, поскольку при проверке правила система подсветки работает с одной строкой, данное правило не сможет определить строку, разбитую символами перевода.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>LineContinue</term> +<listitem> +<para +>Проверка на символ перевода строки.</para> +<programlisting +><LineContinue (common attributes) /></programlisting> +<para +>У этого правила нет особых атрибутов.</para> +<para +>Это правило может быть удобно для переключения контекста в конце строки, если последним знаком будет обратная черта (<userinput +>'\'</userinput +>). Это необходимо, например, в языках C/C++ для продолжения макросов и строк.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>IncludeRules</term> +<listitem> +<para +>Включение правил из другого контекста или языка/файла.</para> +<programlisting +><IncludeRules context="contextlink" [includeAttrib="true|false"] /></programlisting> + +<para +>Атрибут <userinput +>context</userinput +> определяет контекст, из которого берётся правило.</para> +<para +>Если это простая строка, то включаются все правила из другого контекста, например: <programlisting +><IncludeRules context="anotherContext" /></programlisting +></para> + +<para +>Если строка начинается с <userinput +>##</userinput +>, то система подсветки найдёт описание для другого языка с указанным названием, например: <programlisting +><IncludeRules context="##C++" /></programlisting +></para> +<para +>Если <userinput +>includeAttrib</userinput +> выставить <emphasis +>true</emphasis +>, атрибут назначения должен быть таким же, как атрибут источника. Это необходимо, например, при вводе комментариев, если текст, соответствующий включаемому контексту, имеет иную подсветку, чем основной контекст. </para> +</listitem> +</varlistentry> + + +<varlistentry> +<term +>DetectSpaces</term> +<listitem> +<para +>Поиск пробелов.</para> +<programlisting +><DetectSpaces (common attributes) /></programlisting> + +<para +>У этого правила нет особых атрибутов.</para> +<para +>Используйте это правило, если вы уверены, что в тексте есть несколько пробелов подряд, например в начале строк с отступом. Это правило поможет пропустить все пробелы разом, вместо проверки каждого из них по нескольким параметрам.</para> +</listitem> +</varlistentry> + + +<varlistentry> +<term +>DetectIdentifier</term> +<listitem> +<para +>Поиск строк идентификаторов (таких как регулярные выражения: [a-zA-Z_][a-zA-Z0-9_]*).</para> +<programlisting +><DetectIdentifier (common attributes) /></programlisting> + +<para +>У этого правила нет особых атрибутов.</para> +<para +>Используйте это правило, чтобы пропустить все буквенные символы разом, вместо проверки каждого из них по нескольким параметрам.</para> +</listitem> +</varlistentry> + +</variablelist> +</sect2> + +<sect2> +<title +>Подсказки & Советы</title> + +<itemizedlist> +<para +>Усвоив принцип действия переключения контекста, вы без труда сможете написать своё определение подсветки. Подумайте о том, в какой ситуации какое правило следует применить. Регулярные выражения - мощное средство, но, по сравнению с другими правилами, очень медленное. Поэтому стоит воспользоваться следующими советами. </para> + +<listitem> +<para +>Проверяя на соответствие только пару символов, воспользуйтесь <userinput +>Detect2Chars</userinput +> вместо <userinput +>StringDetect</userinput +>. То же относится к <userinput +>DetectChar</userinput +>.</para> +</listitem> +<listitem> +<para +>Регулярные выражения несложны в использовании, но очень часто можно найти более быстрый способ. Допустим, вы ищете символ <userinput +>'#'</userinput +>, это первый символ строки. Решение с регулярным выражением будет выглядеть примерно так: <programlisting +><RegExpr attribute="Macro" context="macro" String="^\s*#" /></programlisting +>. Этой же цели можно достичь значительно быстрее: <programlisting +><DetectChar attribute="Macro" context="macro" char="#" firstNonSpace="true" /></programlisting +>. Для поиска регулярного выражения <userinput +>'^#'</userinput +> можно применить <userinput +>DetectChar</userinput +> с атрибутом <userinput +>column="0"</userinput +>. Отсчет для атрибута <userinput +>column</userinput +> идет посимвольно, поэтому знак табуляции для него - всего один символ. </para> +</listitem> +<listitem> +<para +>Можно переключать контексты без специальных символов. Допустим, вы хотите переключить контекст при достижении строки <userinput +>*/</userinput +>, но в новом контексте хотите продолжить обработку этой строки. Можно воспользоваться нижеследующим правилом, а атрибут <userinput +>lookAhead</userinput +> заставит систему подсветки сохранить найденную строку для нового контекста. <programlisting +><Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" lookAhead="true" /></programlisting> +</para> +</listitem> +<listitem> +<para +>Если известно, что в тексте много пробелов, воспользуйтесь <userinput +>DetectSpaces</userinput +>.</para> +</listitem> +<listitem> +<para +>Пользуйтесь <userinput +>DetectIdentifier</userinput +> вместо регулярного выражения <userinput +>'[a-zA-Z_]\w*'</userinput +>.</para> +</listitem> +<listitem> +<para +>Старайтесь использовать стандартные стили, это удобно для пользователя.</para> +</listitem> +<listitem> +<para +>Заглянув в другие XML-файлы, вы узнаете много нового о работе с правилами.</para> +</listitem> +<listitem> +<para +>Проверить правильность XML-файла можно командой <command +>xmllint --dtdvalid language.dtd mySyntax.xml</command +>.</para> +</listitem> +<listitem> +<para +>Если сложное регулярное выражение встречается часто, воспользуйтесь <emphasis +>ENTITIES</emphasis +>. Пример:</para> +<programlisting +><?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE language SYSTEM "language.dtd" +[ + <!ENTITY myref "[A-Za-z_:][\w.:_-]*"> +]> +</programlisting> +<para +>Теперь вместо регулярного выражения можно использовать <emphasis +>&myref;</emphasis +>.</para> +</listitem> +</itemizedlist> +</sect2> + +</sect1> + +</appendix> diff --git a/tde-i18n-ru/docs/tdebase/kate/index.cache.bz2 b/tde-i18n-ru/docs/tdebase/kate/index.cache.bz2 Binary files differnew file mode 100644 index 00000000000..469f943fd47 --- /dev/null +++ b/tde-i18n-ru/docs/tdebase/kate/index.cache.bz2 diff --git a/tde-i18n-ru/docs/tdebase/kate/index.docbook b/tde-i18n-ru/docs/tdebase/kate/index.docbook new file mode 100644 index 00000000000..4e9db8e5f3c --- /dev/null +++ b/tde-i18n-ru/docs/tdebase/kate/index.docbook @@ -0,0 +1,504 @@ +<?xml version="1.0" ?> +<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" +"dtd/kdex.dtd" [ + <!ENTITY kappname "&kate;"> + <!ENTITY package "tdebase"> + <!ENTITY configuring-chapter SYSTEM "configuring.docbook"> + <!ENTITY highlighting-appendix SYSTEM "highlighting.docbook"> + <!ENTITY advanced-chapter SYSTEM "advanced.docbook"> + <!ENTITY fundamentals-chapter SYSTEM "fundamentals.docbook"> + <!ENTITY mdi-chapter SYSTEM "mdi.docbook"> + <!ENTITY menu-chapter SYSTEM "menus.docbook"> + <!ENTITY part-chapter SYSTEM "part.docbook"> + <!ENTITY plugins-chapter SYSTEM "plugins.docbook"> + <!ENTITY regexp-appendix SYSTEM "regular-expressions.docbook"> + <!ENTITY % addindex "IGNORE"> + <!ENTITY % Russian "INCLUDE" +><!-- change language only here --> +]> + +<book lang="&language;"> +<title +>Руководство &kate;</title> + +<bookinfo> +<authorgroup> +<author +>&Anders.Lund; &Anders.Lund.mail;</author> +<author +>&Seth.Rothberg; &Seth.Rothberg.mail;</author> +<author +>&Dominik.Haumann; &Dominik.Haumann.mail;</author> +<othercredit role="translator" +><firstname +>Андрей</firstname +><surname +>Балагута</surname +> <affiliation +><address +><email +>uj2@mail.ru</email +></address +></affiliation +><contrib +>Перевод на русский</contrib +></othercredit +><othercredit role="translator" +><firstname +>Николай</firstname +><surname +>Шафоростов</surname +><affiliation +><address +><email +>shafff@ukr.net</email +></address +></affiliation +><contrib +>Редактирование перевода</contrib +></othercredit +><othercredit role="translator" +><firstname +>Алексей</firstname +><surname +>Опарин</surname +><affiliation +><address +><email +>opaleksej@yandex.ru</email +></address +></affiliation +><contrib +>Перевод на русский</contrib +></othercredit +> +</authorgroup> + +<copyright> +<year +>2000</year> +<year +>2001</year> +<holder +>&Seth.Rothberg;</holder> +</copyright> +<copyright> +<year +>2002</year +><year +>2003</year +><year +>2005</year> +<holder +>&Anders.Lund;</holder> +</copyright> +<copyright> +<year +>2005</year> +<holder +>&Dominik.Haumann;</holder> +</copyright> + +<legalnotice +>&FDLNotice;</legalnotice> + +<date +>2005-12-29</date> +<releaseinfo +>2.5.0</releaseinfo> + +<abstract> +<para +>&kate; — это текстовый редактор для программистов, для &kde; версии 2.2 и выше.</para> + +<para +>В данном руководстве описан редактор &kate; версии 2.5.0</para> +</abstract> + +<keywordset> +<keyword +>KDE</keyword> +<keyword +>tdebase</keyword> +<keyword +>Kate</keyword> +<keyword +>текст</keyword> +<keyword +>редактор</keyword> +<keyword +>программист</keyword> +<keyword +>программирование</keyword> +<keyword +>проекты</keyword> +<keyword +>MDI</keyword> +<keyword +>Многодокументный</keyword> +<keyword +>Документы</keyword> +<keyword +>интерфейс</keyword> +<keyword +>терминал</keyword> +<keyword +>консоль</keyword> +</keywordset> + +</bookinfo> + +<chapter id="introduction"> +<title +>Введение</title> + +<para +>Добро пожаловать в &kate; — мощный текстовый редактор для программистов, который работает в среде &kde; версии 2.2 и выше. Настраиваемая подсветка синтаксических конструкций для широкого диапазона языков программирования (начиная от C, C++ и <acronym +>HTML</acronym +> и заканчивая сценариями bash), возможность создавать и разрабатывать проекты, многодокументный интерфейс (<acronym +>MDI</acronym +>), встроенный эмулятор терминала — вот лишь небольшая часть возможностей &kate;. </para> + +<para +>&kate; — это больше, чем текстовый редактор для программистов. Многодокументный интерфейс позволит вам открыть и редактировать сразу несколько конфигурационных файлов &UNIX;. Этот документ был написан в &kate;. </para> + +<para> +<mediaobject> +<imageobject +><imagedata format="PNG" fileref="kate.png"/></imageobject> +<caption +><para +>Редактирование этого руководства...</para +></caption> +</mediaobject> +</para> + +</chapter> + +&fundamentals-chapter; + +&mdi-chapter; + +&part-chapter; + +&plugins-chapter; + +&advanced-chapter; + +&menu-chapter; + +&configuring-chapter; + +<chapter id="credits"> + +<title +>Благодарности и лицензия</title> + +<para +>Разработка © 2000-2005 Команда разработчиков &kate;. </para> + +<variablelist> +<title +>Команда &kate;:</title> +<varlistentry> +<term +>Кристоф Куллманн (&Christoph.Cullmann;) &Christoph.Cullmann.mail;</term> +<listitem +><para +>Координатор проекта и ключевой разработчик</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Андерс Лунд (&Anders.Lund;) &Anders.Lund.mail;</term> +<listitem +><para +>Ключевой разработчик, подсветка синтаксиса для языка Perl, документация</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Джозеф Веннингер (&Joseph.Wenninger;) &Joseph.Wenninger.mail;</term> +<listitem +><para +>Ключевой разработчик, подсветка синтаксиса</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Майкл Бартл (Michael Bartl) <email +>michael.bartl1@chello.at</email +></term> +<listitem +><para +>Ключевой разработчик</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Phlip <email +>phlip_cpp@my-deja.com</email +></term> +<listitem +><para +>Компилятор проекта</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Вальдо Бастиан (&Waldo.Bastian;) &Waldo.Bastian.mail;</term> +<listitem +><para +>Отличная система буферизации</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Мэтт Ньювэл (Matt Newell) <email +>newellm@proaxis.com</email +></term> +<listitem +><para +>Тестирование...</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Майкл Маккаллум (Michael McCallum) <email +>gholam@xtra.co.nz</email +> </term> +<listitem +><para +>Ключевой разработчик</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Джохен Вилхемли (Jochen Wilhemly) <email +>digisnap@cs.tu-berlin.de</email +></term> +<listitem +><para +>Автор KWrite</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Майкл Коч (&Michael.Koch;) &Michael.Koch.mail;</term> +<listitem +><para +>Перенос KWrite в KParts</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Кристиан Гебайер (Christian Gebauer) <email +>gebauer@bigfoot.com</email +></term> +<listitem +><para +>Точно не определено</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Саймон Хаусман (&Simon.Hausmann;) &Simon.Hausmann.mail;</term> +<listitem +><para +>Точно не определено</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Глен Паркер (Glen Parker) <email +>glenebob@nwlink.com</email +></term> +<listitem +><para +>Журнал действий KWrite, интеграция KSpell</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Скотт Мэнсон (Scott Manson) <email +>sdmanson@alltel.net</email +></term> +<listitem +><para +>Подсветка синтаксиса XML в KWrite</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Джон Файрбауг (&John.Firebaugh;) &John.Firebaugh.mail;</term> +<listitem +><para +>Заплатки и прочее</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Доминик Хаумани (&Dominik.Haumann;) &Dominik.Haumann.mail;</term> +<listitem +><para +>Разработчик, Мастер подсветки синтаксиса</para +></listitem> +</varlistentry> +</variablelist> + +<variablelist> +<title +>Много других людей внесли свой вклад:</title> +<varlistentry> +<term +>Матэо Мэрли (Matteo Merli) <email +>merlim@libero.it</email +></term> +<listitem +><para +>Подсветка для Spec-файлов RPM, Diff и прочее</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Роки Скалетта (Rocky Scaletta) <email +>rocky@purdue.edu</email +></term> +<listitem +><para +>Подсветка для VHDL</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Юрий Лебедев </term> +<listitem +><para +>Подсветка для SQL</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Крис Роз (Chris Ross)</term> +<listitem +><para +>Подсветка для Ferite</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Ник Роукс (Nick Roux)</term> +<listitem +><para +>Подсветка для ILERPG</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Джон Файрбауг (John Firebaugh)</term> +<listitem +><para +>Подсветка для Java и прочее</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Карстэн Найхаус (Carsten Niehaus)</term> +<listitem +><para +>Подсветка для LaTeX</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Пэр Вигрэн (Per Wigren)</term> +<listitem +><para +>Подсветка файлов сборки, а также для Python</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Джэн Фритц (Jan Fritz)</term> +<listitem +><para +>Подсветка для Python</para +></listitem> +</varlistentry> +<varlistentry> +<term +>Дэниэл Нэбер (&Daniel.Naber;)</term> +<listitem +><para +>Исправление ошибок, модуль XML</para +></listitem> +</varlistentry> +</variablelist> + +<para +>Документация © 2000-2001 Сэт Ротберг (&Seth.Rothberg;) &Seth.Rothberg.mail;</para> + +<para +>Документация © 2002-2005 Андерс Лунд (&Anders.Lund;) &Anders.Lund.mail;</para> + +<para +>Перевод на русский: Андрей Балагута <email +>uj2@mail.ru</email +></para +><para +>Редакция и обновление перевода: Николай Шафоростов <email +>shafff@ukr.net</email +></para +><para +>Обновление перевода: Алексей Опарин <email +>opaleksej@yandex.ru</email +></para +> +&underFDL; &underGPL; </chapter> + +&highlighting-appendix; + +®exp-appendix; + +<appendix id="installation"> +<title +>Установка</title> + +&install.intro.documentation; + +&install.compile.documentation; + +</appendix> + +&documentation.index; + +<!-- +Index Word List: +menu - context - syntax - markup - shortcuts - highlighting +embedded terminal - editing - search - replace - regexp -> Regular Expression +split window - selection - insert overwrite - selection - +configure/customize/preferences - insert/overwrite - non-printing characters +font - unicode - wordwrap/linewrap - project - bookmarks - docks - plugins +block selection / rectangles - view - indenting - editor - word processor +copy - paste - find - spelling - language (both kinds) - encoding - +pretty printing - formatting - line numbers - icon border - +folding - insert time - sed + +done +comment / uncomment +configure / settings / preferences + +--> + +</book> + +<!-- +Local Variables: +mode: sgml +sgml-namecase-general: t +sgml-namecase-entity: nil +sgml-general-insert-case: lower +sgml-minimize-attributes: nil +sgml-omittag: nil +End: +--> diff --git a/tde-i18n-ru/docs/tdebase/kate/man-kate.1.docbook b/tde-i18n-ru/docs/tdebase/kate/man-kate.1.docbook new file mode 100644 index 00000000000..65a3f45eece --- /dev/null +++ b/tde-i18n-ru/docs/tdebase/kate/man-kate.1.docbook @@ -0,0 +1,292 @@ +<?xml version="1.0" ?> +<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [ +<!ENTITY % Russian "INCLUDE"> +]> + +<refentry lang="&language;"> +<refentryinfo> +<title +>Руководство пользователя KDE</title> +<author +>&Lauri.Watts; &Lauri.Watts.mail;</author> +<date +>07 июня 2005</date +> <productname +>K Desktop Environment</productname +> </refentryinfo> + +<refmeta> +<refentrytitle +><command +>kate</command +></refentrytitle> +<manvolnum +>1</manvolnum> +</refmeta> + +<refnamediv> +<refname +><command +>kate</command +></refname> +<refpurpose +>Улучшенный текстовый редактор для &kde;</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<cmdsynopsis +><command +>kate</command +> <group choice="opt" +><option +>-s, --start</option +> <replaceable +> name</replaceable +> </group +> <group choice="opt" +><option +>-u, --use</option +></group +> <group choice="opt" +><option +>-p, --pid</option +><replaceable +> pid</replaceable +></group +> <group choice="opt" +><option +>-e, --encoding</option +> <replaceable +> name</replaceable +></group +> <group choice="opt" +><option +>-l, --line</option +> <replaceable +> line</replaceable +></group +> <group choice="opt" +><option +>-c, --column</option +> <replaceable +> column</replaceable +></group +> <group choice="opt" +><option +>-i, --stdin</option +></group +> <arg choice="opt" +>Специфические параметры KDE</arg +> <arg choice="opt" +>Специфические параметры Qt</arg +> </cmdsynopsis> +</refsynopsisdiv> + +<refsect1> +<title +>Описание</title> +<para +>&kate; — улучшенный текстовый редактор для &kde;. </para +> +<para +>&kate; также предоставляет компонент текстового редактора &kwrite; для других приложений.</para> +<para +>Лишь некоторые из множества возможностей &kate;: настраиваемая подсветка синтаксиса для различных языков, от C и C++ до <acronym +>HTML</acronym +> и скриптов оболочки bash, возможность создавать и сопровождать проекты, многодокументный интерфейс (<acronym +>MDI</acronym +>) и встроенный эмулятор терминала. </para> + +<para +>&kate; — это больше чем редактор для программистов. Возможность открывать несколько файлов за раз делает его идеальным для редактирования множества конфигурационных файлов &UNIX;. Этот документ был написан в &kate;. </para> + + +</refsect1> + +<refsect1> +<title +>Параметры</title> + +<variablelist> +<varlistentry> +<term +><option +>-s</option +>, <option +>--start</option +> <replaceable +>имя</replaceable +></term> + +<listitem +><para +>Запуск &kate; с указанным сеансом.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><option +>-u, --use</option +></term> +<listitem +><para +>Применить к запущенному экземпляру (если возможно)</para +></listitem> +</varlistentry> +<varlistentry> +<term +><option +>-p, --pid</option +> <replaceable +> pid</replaceable +></term> +<listitem +><para +>Использовать экземпляр с указанным идентификатором процесса <replaceable +>pid</replaceable +></para +></listitem> +</varlistentry> +<varlistentry> +<term +><option +>-e, --encoding</option +> <replaceable +>имя</replaceable +></term> +<listitem +><para +>Использовать указанную кодировку для открываемого файла</para +><para +>Используйте этот параметр, чтобы файл был открыт в кодировке utf-8.Команда <command +>iconv -l</command +> выводит список доступных кодировок.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><option +>-l, --line</option +> <replaceable +>строка</replaceable +></term> +<listitem +><para +>Перейти на указанную строку</para +></listitem> +</varlistentry> +<varlistentry> +<term +><option +>-c, --column</option +> <replaceable +>столбец</replaceable +></term> +<listitem +><para +>Перейти на указанный столбец</para +></listitem> +</varlistentry> +<varlistentry> +<term +><option +>-i, --stdin</option +></term> +<listitem +><para +>Читать со стандартного ввода</para +></listitem> +</varlistentry> +</variablelist> + +</refsect1> + +<refsect1> +<title +>См. также</title> + +<para +>kwrite(1)</para> + +<para +>Более подробная документация доступна по ссылке <ulink url="help:/kate" +>help:/kate</ulink +> (введите этот <acronym +>URL</acronym +> в &konqueror; или выполните команду <userinput +><command +>khelpcenter</command +> <parameter +>help:/kate</parameter +></userinput +>).</para> + +<para +>Дополнительная информация доступна на <ulink url="http://kate.kde.org/" +>веб-сайте &kate;</ulink +>.</para> +</refsect1> + +<refsect1> +<title +>Примеры</title> + +<para +>Открыть файл <filename +>source.cpp</filename +> в существующем окне &kate;, установив курсор в столбце 15 и строке 25:</para> +<screen +><userinput +><command +>kate</command +> <option +>-c 15</option +> <option +>-l +25</option +> <option +>-u</option +> <filename +>source.cpp</filename +></userinput +> </screen> + +<para +>Если у вас имеется подключение к Интернету, вы можете использовать преимущество сетевой прозрачности &kde;, открыв файл напрямую с сервера FTP. Если у вас нет права на запись на удалённый сервер, то файл будет открыт только для чтения и вам потребуется указать имя локального файла для сохранения сделанных изменений. Если же у вас имеется право на запись, то изменения будут сохранятся сразу по сети.</para> +<screen +><userinput +><command +>kate</command +> <option +><replaceable +>ftp://ftp.kde.org/pub/kde/README_FIRST</replaceable +></option +></userinput +></screen> + +<!-- FIXME: Some more useful examples would be cool, how about this snagged --> +<!-- from a mail of anders (slightly edited /line/l to remove the double --> +<!-- dashes: +> /some/file/path/file.name:lineno + +> it would rock if Kate could understand that and not only open up file.name, + +> but jump to lineno after the file is opened. + +How bad is it to have to convert that into +-l lineno /some/file/path/file.name + +sed s,([^:]*):(\d+),-l \2 \1, + +will do that, for example.--> + +</refsect1> + +<refsect1> +<title +>Авторы</title> +<para +>Сопровождение &kate; осуществляет &Christoph.Cullmann; &Christoph.Cullmann.mail;. Полный список авторов и распространителей доступен в полной версии руководства пользователя, упомянутого выше.</para> +</refsect1> + +</refentry> diff --git a/tde-i18n-ru/docs/tdebase/kate/mdi.docbook b/tde-i18n-ru/docs/tdebase/kate/mdi.docbook new file mode 100644 index 00000000000..27eac562a43 --- /dev/null +++ b/tde-i18n-ru/docs/tdebase/kate/mdi.docbook @@ -0,0 +1,356 @@ +<chapter id="kate-mdi"> +<chapterinfo> +<authorgroup> +<author +>&Anders.Lund; &Anders.Lund.mail;</author> +<othercredit role="translator" +><firstname +>Андрей</firstname +><surname +>Балагута</surname +><affiliation +><address +><email +>uj2@mail.ru</email +></address +></affiliation +><contrib +>Перевод на русский</contrib +></othercredit +> +</authorgroup> +</chapterinfo> +<title +>Работа с многодокументным интерфейсом &kate;</title> + +<sect1 id="kate-mdi-overview"> +<title +>Обзор</title> + +<para +>Окно, представление, документ, панель, редактор... Что означают эти понятия в терминологии &kate;? Эта глава даст ответы на все вопросы, связанные с окнами &kate;.</para> + +<sect2 id="kate-mdi-overview-mainwindow"> + +<title +>Главное окно</title> + +<para +><indexterm +><primary +>Главное окно</primary +></indexterm +> Главное окно &kate; -- это стандартное окно приложения &kde; с несколькими служебными панелями, открываемыми через боковые вкладки. Главное окно содержит строку меню с расположенными на ней подменю и панель инструментов, на которой находятся кнопки для часто используемых команд.</para> + +<para +>Самая главная часть окна -- это область редактирования; по умолчанию она содержит один компонент для редактирования текста, в котором вы будете работать с документами.</para> + +<para +>Окно инструментов может быть пристыковано к главному окну, после чего оно ведет себя как обычный элемент управления (посмотрите на панель инструментов -- и вы поймёте). Список окон инструментов, использующих возможности пристыковки: </para> + +<itemizedlist> +<listitem +><para +><link linkend="kate-mdi-tools-file-list" +>Список файлов</link +></para +></listitem> +<listitem +><para +><link linkend="kate-mdi-tools-file-selector" +>Файловая система</link +></para +></listitem> +<listitem +><para +><link linkend="kate-mdi-tools-konsole" +>Встроенный эмулятор терминала</link +></para +></listitem> +</itemizedlist> + +<para +>И, возможно, другие служебные панели, добавляемые модулями.</para> + +<para +>Размещение служебных панелей можно изменить. Для это щёлкните правой кнопкой на вкладке панели и выберите край экрана, в который следует её перенести.</para> + +<para +>Служебная панель может иметь <emphasis +>Постоянное размещение</emphasis +>. В этом случае при переходе к другой служебной панели последней будет выделено не всё пространство, а при её скрытии будет показана служебная панель, имеющая постоянное размещение.</para> + +</sect2> + + +</sect1> + +<sect1 id="kate-mdi-editor"> + +<title +>Область редактирования</title> + +<para +><indexterm +><primary +>Область редактирования</primary +></indexterm +> В &kate; можно редактировать несколько документов одновременно, разделив область редактирования на панели(наподобие тех, что используются в &konqueror; и <application +>emacs</application +>). Используя панели (фреймы), вы можете просматривать в области редактирования несколько документов (или несколько экземпляров одного документа). Например, если в начале файла у вас расположены важные определения, с которыми вы будете часто сверяться, то вы наверняка оцените эту возможность по достоинству. Ещё пример: если вы пишете программу, то удобно будет в одной панели открыть заголовочный файл, а в другом -- файл реализации.</para> + +<para +>Если один и тот же документ открыть в нескольких панелях редактора, то все изменения (редактирование и выделение текста), сделанные в одной панели, будут немедленно отражены во всех остальных. Операция поиска и перемещение курсора действуют только в активной панели.</para> + +<para +>В текущей версии &kate; нельзя открыть один и тот же документ несколько раз в том смысле, что редактироваться будет только один экземпляр, и изменения не будут отражаться во втором.</para> + +<para +>После разделения редактора на две панели они имеют одинаковую ширину и отображают текущий документ этого редактора. Новая панель будет снизу (в случае разделения по горизонтали) или справа (в случае разделения по вертикали). Активной становится новая панель -- об этом говорит маленький зелёный индикатор в строке состояния.</para> + +</sect1> + +<sect1 id="kate-mdi-tools-file-list"> +<title +>Список документов</title> + +<para +><indexterm +><primary +>Список файлов</primary +></indexterm +> Список файлов показывает все открытые документы в виде списка. Рядом с изменёнными файлами отображается небольшая пиктограмма в виде <guiicon +>дискеты</guiicon +>.</para> + +<para +>Если открыты два или более файлов с одинаковыми именами (расположенные в разных каталогах), после имени второго будет добавлено <quote +><2></quote +> и т.д. Во всплывающей подсказке документа отображается полное имя, включающее путь - это поможет вам не запутаться и выбрать нужный файл.</para +> <para +>Чтобы отобразить документ в активной панели, щёлкните в списке на имени документа.</para> + +<para +>Список файлов можно отсортировать посредством выбора команд из контекстного меню, это можно сделать по: <variablelist> + +<varlistentry> +<term +><guimenuitem +>Порядку открытия</guimenuitem +></term> +<listitem +><para +>По порядку открытия</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guimenuitem +>Имени документа</guimenuitem +></term> +<listitem +><para +>По имени документа.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guimenuitem +>URL</guimenuitem +></term> +<listitem +><para +>По их полному имени (с протоколом).</para +></listitem> +</varlistentry> + +</variablelist> + +</para> + +<para +>По умолчанию, история перехода по документам будет визуализироваться в списке файлов - самый последний документ документ будет иметь более тёмный фон. Это можно отключить на странице <link linkend="config-dialog-documentlist" +>Параметры списка документов</link +> окна настроек программы.</para> + +<para +>Стандартное положение списка в главном окне &kate; - слева.</para> +</sect1> + +<sect1 id="kate-mdi-tools-file-selector"> +<title +>Обзор файловой системы</title> + +<para +><indexterm +><primary +>Обзор файловой системы</primary +></indexterm +> Служебная панель Обзор файловой системы представляет собой окно просмотра каталогов, которое позволяет быстро открыть нужный файл в активном фрейме.</para> + +<para +>Служебная панель Обзор файловой системы состоит из следующих элементов, сверху вниз:</para> + +<variablelist> +<varlistentry> +<term +>Панель инструментов</term> +<listitem> +<para +>Содержит стандартные кнопки навигации:</para> +<variablelist> +<varlistentry> +<term +><guibutton +>Домашний каталог</guibutton +></term> +<listitem +><para +>Отобразить в окне содержание вашего домашнего каталога.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guibutton +>Вверх</guibutton +></term> +<listitem +><para +>Перейти в родительский каталог (по отношению к текущему), если это возможно.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guibutton +>Предыдущий каталог</guibutton +></term> +<listitem +><para +>Отобразить в окне предыдущий посещенный каталог. Если в истории обзора нет предыдущих посещенных каталогов, эта кнопка будет недоступна.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guibutton +>Следующий каталог</guibutton +></term> +<listitem +><para +>Перейти в следующий посещенный каталог. Это означает, что если вы в каталоге A нажали кнопку <guimenuitem +>Предыдущий каталог</guimenuitem +> и вернулись в каталог B, то, нажав на кнопку <guimenuitem +>Следующий каталог</guimenuitem +>, вы снова попадете в A. Если в истории обзора нет следующего посещенного каталога, эта кнопка будет недоступна.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guibutton +>Текущий каталог документов</guibutton +></term> +<listitem +><para +>Перейти в каталог активного документа. Эта кнопка будет запрещена, если активный документ - новый, несохранённый файл или каталог, в котором находится файл, не может быть выбран.</para +></listitem> +</varlistentry> +</variablelist> + +</listitem> +</varlistentry> + +<varlistentry> +<term +>Строка адреса &URL;</term> +<listitem> +<para +>Здесь можно ввести путь к каталогу для обзора. Строка адреса содержит список предыдущих введенных каталогов; чтобы выбрать один из них, используйте кнопку со стрелкой справа от строки.</para> +<tip +><para +>Строка адреса поддерживает возможность автозавершения текста, метод завершения можно выбрать из контекстного всплывающего меню, которое вызывается нажатием правой кнопки мыши на ней.</para +></tip> +</listitem> +</varlistentry> + +<varlistentry> +<term +>Окно обзора каталогов</term> +<listitem +><para +>Стандартное окно &kde; для обзора каталогов.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>Строка фильтрации</term> +<listitem> +<para +>Позволяет задать фильтр для файлов, отображаемых в окне обзора каталогов. Фильтр состоит из стандартных символов; можно ввести несколько масок, разделяя их пробелами. Например: <userinput +>*.cpp *.h *.moc</userinput +></para> +<para +>Чтобы отобразить все файлы, введите один символ звездочки: <userinput +>*</userinput +>.</para> +<para +>Строка фильтрации сохраняет последние десять введенных фильтров (необязательно, чтобы все они были введены в текущем сеансе работы), чтобы установить один из них, нажмите на кнопке со стрелкой справа от строки и выберите нужный из списка.</para> +</listitem> +</varlistentry> + +</variablelist> + +</sect1> + + +<sect1 id="kate-mdi-tools-konsole"> +<title +>Встроенный эмулятор терминала</title> + +<para +><indexterm +><primary +>Встроенный эмулятор терминала</primary +></indexterm +> Встроенный эмулятор терминала - тот же &konsole;. Чтобы показать его, выберите пункт меню <menuchoice +><guimenu +>Настройка</guimenu +><guimenuitem +>Показать эмулятор терминала</guimenuitem +></menuchoice +> или нажмите клавишу <keycombo action="simul" +><keycap +>F7</keycap +></keycombo +>. Сразу после отображения окно эмулятора терминала получает фокус ввода. Если включена опция <link linkend="config-dialog-general-sync-konsole" +>Синхронизировать &konsole; с активным документом</link +>, терминал будет сменять текущий каталог на каталог активного документа при его отображении и смене активного документа с одного на другой.</para> + +<para +>Стандартное положение в главном окне &kate; - внизу, под областью редактирования.</para> + +<para +>Вы можете настроить &konsole; через контекстное меню терминала; дополнительную информацию можно найти в руководстве &konsole;.</para> + +</sect1> + +<sect1 id="kate-mdi-tools-externaltools"> +<title +>Внешние инструменты</title> + +<para +>В меню <guimenu +>Сервис</guimenu +> находится подменю <guisubmenu +>Внешние инструменты</guisubmenu +>. Из него можно вызвать внешние программы, передав им какую-либо информацию о текущем документе, например его URL, выделенным текстом.</para> + +<para +>Внешние инструменты определяются пользователем на <link linkend="config-dialog-externaltools" +>соответствующей странице</link +> окна настройки программы. </para> + +</sect1> + +</chapter> diff --git a/tde-i18n-ru/docs/tdebase/kate/menus.docbook b/tde-i18n-ru/docs/tdebase/kate/menus.docbook new file mode 100644 index 00000000000..f08b537a3eb --- /dev/null +++ b/tde-i18n-ru/docs/tdebase/kate/menus.docbook @@ -0,0 +1,2238 @@ +<chapter id="menu-entries"> +<chapterinfo> +<authorgroup> +<author +><personname +><firstname +></firstname +></personname +></author> +<othercredit role="translator" +><firstname +>Андрей</firstname +><surname +>Балагута</surname +><affiliation +><address +><email +>uj2@mail.ru</email +></address +></affiliation +><contrib +>Перевод на русский</contrib +></othercredit +><othercredit role="translator" +><firstname +>Алексей</firstname +><surname +>Опарин</surname +><affiliation +><address +><email +>opaleksej@yandex.ru</email +></address +></affiliation +><contrib +>Перевод на русский</contrib +></othercredit +> +</authorgroup> +</chapterinfo> +<title +>Пункты меню</title> + +<sect1 id="file-menu"> +<title +>Меню <guimenu +>Файл</guimenu +></title> + +<variablelist> +<varlistentry> +<term> +<anchor id="new"/> +<menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>N</keycap +></keycombo +> </shortcut +> <guimenu +>Файл</guimenu +> <guimenuitem +>Создать</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>По этой команде <action +>создаётся новый документ</action +>. Он будет добавлен в перечень <guibutton +>Документы</guibutton +>, который находится слева на боковой панели, и будет назван <emphasis +>Безымянный</emphasis +>. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="open"/> +<menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>O</keycap +></keycombo +> </shortcut +> <guimenu +>Файл</guimenu +> <guimenuitem +>Открыть</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Открывает диалог выбора файла &kde;, позволяющийоткрыть один или несколько файлов. </para> + +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="open-recent"/> +<menuchoice +><guimenu +>Файл</guimenu +> <guimenuitem +>Открыть недавние</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Эта команда позволяет <action +>открыть файл</action +>, который вы недавно редактировали, выбрав его в подменю. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="open-with"/> +<menuchoice +><guimenu +>Файл</guimenu +> <guimenuitem +>Открыть в</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>В подменю выводится список приложений, связанных с mime-типом текущего файла.</para> +<para +>Команда <guimenuitem +>Открыть с помощью...</guimenuitem +> открывает диалог со списком доступных программ, позволяя вам <action +>выбрать другое приложение и открыть в нём текущий файл</action +>. Ваш файл будет оставаться открытым в &kate;. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="save"/> +<menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>S</keycap +></keycombo +> </shortcut +> <guimenu +>Файл</guimenu +> <guimenuitem +>Сохранить</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Эта команда <action +>сохраняет текущий файл</action +>. Пользуйтесь ею почаще. Если текущий документ <emphasis +>Безымянный</emphasis +>, то вместо команды <guimenuitem +>Сохранить</guimenuitem +> будет выполнена команда <guimenuitem +>Сохранить как</guimenuitem +>. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="save-as"/> +<menuchoice +><guimenu +>Файл</guimenu +> <guimenuitem +>Сохранить как...</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>С помощью этой команды вы можете <action +>назвать или переименовать файл</action +>. Она открывает диалог сохранения файла, который работает аналогично диалогу открытия. Вы можете перемещаться по файловой системе, быстро просматривать содержание файлов и фильтровать отображение файлов с помощью файловых масок. </para> + +<para +>Введите имя, которое вы хотите присвоить сохраняемому файлу, и нажмите <guibutton +>OK</guibutton +>. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="save-all"/> +<menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>L</keycap +></keycombo +> </shortcut +> <guimenu +>Файл</guimenu +> <guimenuitem +>Сохранить все</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Эта команда <action +>сохраняет все открытые файлы</action +>. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="reload"/> +<menuchoice +><shortcut +> <keycombo action="simul" +><keycap +>F5</keycap +></keycombo +> </shortcut +> <guimenu +>Файл</guimenu +> <guimenuitem +>Обновить</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +><action +>Обновляет текущий файл</action +>. Эта команда удобна, если файл, открытый в &kate; изменен другой программой. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="print"/> +<menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>P</keycap +></keycombo +> </shortcut +> <guimenu +>Файл</guimenu +> <guimenuitem +>Печать...</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +><action +>Вывод текущего файла на печать</action +>. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term id="export-as-html"> +<menuchoice +><guimenu +>Файл</guimenu +> <guimenuitem +>Экспортировать в HTML...</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Экспортирует текущий файл в формат HTML для просмотра в виде Интернет-страницы. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term id="mail"> +<menuchoice +><guimenu +>Файл</guimenu +> <guimenuitem +>Отправить по почте...</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Открывает почтовую программу и прикрепляет файл к письму. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="close"/> +<menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>W</keycap +></keycombo +> </shortcut +> <guimenu +>Файл</guimenu +> <guimenuitem +>Закрыть</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Эта команда <action +>закрывает текущий файл</action +>. Если файл был изменён со времени последнего сохранения - будет предложено сохранить его перед закрытием. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="close-all"/> +<menuchoice +><guimenu +>Файл</guimenu +> <guimenuitem +>Закрыть все</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Эта команда <action +>закрывает все файлы, которые были открыты</action +> в &kate;. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="quit"/> +<menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>Q</keycap +></keycombo +> </shortcut +> <guimenu +>Файл</guimenu +> <guimenuitem +>Выход</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Эта команда <action +>закрывает &kate;</action +> и все открытые файлы. Если вы изменили какие-либо из них с момента их последнего сохранения - будет предложено сохранить эти файлы. </para> +</listitem> +</varlistentry> +</variablelist> +</sect1> + +<sect1 id="edit-menu"> +<title +>Меню <guimenu +>Правка</guimenu +></title> +<para +>Меню <guimenu +>Правка</guimenu +> содержит набор команд для работы с текущим документом.</para> + +<variablelist> +<title +>Пункты меню</title> +<varlistentry> +<term> +<anchor id="edit-undo"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;<keycap +>Z</keycap +></keycombo +></shortcut +> <guimenu +>Правка</guimenu +> <guimenuitem +>Отменить действие</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Отменяет последнюю команду редактирования (ввод, копирование, вырезание и т.д.).</para> +<note +><para +>Если включён режим группировки отмены, эта команда может отменить несколько однотипных команд вроде ввода символов.</para +></note> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="edit-redo"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;&Shift;<keycap +>Z</keycap +></keycombo +></shortcut +> <guimenu +>Правка</guimenu +> <guimenuitem +>Повторить отмененное действие</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Отменяет последний откат.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="edit-cut"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;<keycap +>X</keycap +></keycombo +></shortcut +> <guimenu +>Правка</guimenu +> <guimenuitem +>Вырезать</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Удаляет выделенный текст (если есть) и помещает его копию в буфер обмена.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="edit-copy"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;<keycap +>C</keycap +></keycombo +></shortcut +> <guimenu +>Правка</guimenu +> <guimenuitem +>Копировать</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Копирует выделенный текст (если есть) в буфер обмена.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="edit-copy-as-html"/> +<menuchoice +><guimenu +>Правка</guimenu +> <guimenuitem +>Скопировать как HTML</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Копирует выделенный текст с подсветкой синтаксиса, установленной для HTML.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="edit-paste"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;<keycap +>V</keycap +></keycombo +></shortcut +> <guimenu +>Правка</guimenu +> <guimenuitem +>Вставить</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Копирует первую запись из буфера обмена в позицию курсора.</para> +<note +><para +>Если включён режим замены выделенного фрагмента, вставленный текст заменит выделенный фрагмент (если он есть).</para +></note> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="edit-select-all"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;<keycap +>A</keycap +></keycombo +></shortcut +> <guimenu +>Правка</guimenu +> <guimenuitem +>Выделить все</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Выделяется весь текст.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="edit-deselect"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;&Shift;<keycap +>A</keycap +></keycombo +></shortcut +> <guimenu +>Правка</guimenu +> <guimenuitem +>Отменить выделение</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Снимает выделение с текста (если есть).</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="edit-toggle-block-selection"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;<keycap +>Shift</keycap +> <keycap +>B</keycap +></keycombo +></shortcut +> <guimenu +>Правка</guimenu +> <guimenuitem +>Вертикальное выделение</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Переключает режим выделения. Если выбран режим выделения <quote +>BLOCK</quote +>, то можно делать вертикальное выделение, например, выделить столбцы с пятого по десятый в строках 9-15.</para> +<para +>Строка состояния показывает текущий режим выделения (<quote +>NORM</quote +> или <quote +>BLOCK</quote +>).</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="edit-find"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;<keycap +>F</keycap +></keycombo +></shortcut +> <guimenu +>Правка</guimenu +> <guimenuitem +>Найти...</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Открывает диалог поиска, который позволяет найти нужный текст в редактируемом документе.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="edit-find-next"/> +<menuchoice +><shortcut +><keycombo action="simul" +><keycap +>F3</keycap +></keycombo +></shortcut +> <guimenu +>Правка</guimenu +> <guimenuitem +>Продолжить поиск</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Переход к нижележащему совпадению с текущим шаблоном, начиная от позиции курсора.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="edit-find-previous"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Shift;<keycap +>F3</keycap +></keycombo +></shortcut +> <guimenu +>Правка</guimenu +> <guimenuitem +>Искать в обратном направлении</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Переход к вышележащему совпадению с текущим шаблоном, начиная от позиции курсора.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="edit-replace"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;<keycap +>R</keycap +></keycombo +></shortcut +> <guimenu +>Правка</guimenu +> <guimenuitem +>Заменить...</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Открывает диалог замены одной текстовой строки другой строкой.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="edit-go-to-line"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;<keycap +>G</keycap +></keycombo +></shortcut +> <guimenu +>Правка</guimenu +> <guimenuitem +>Перейти на строку...</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Открывает диалог перехода к нужной строке по её номеру.</para> +</listitem> +</varlistentry> + +</variablelist> + +</sect1> + +<sect1 id="document-menu"> +<title +>Меню <guimenu +>Документ</guimenu +></title> +<para +>В меню <guimenu +>Документ</guimenu +> для каждого открытого документа существует отдельный пункт, выбор которого приводит к переходу фокуса ввода на соответствующий файл. Если открыты несколько фреймов, то редактор для текущего документа будет отображен в активном.</para> +<para +>Кроме того, для перехода по открытым документам доступны пункты меню: <variablelist> +<title +>Пункты меню</title> + +<varlistentry> +<term> +<anchor id="document-back"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Alt;<keycap +>Влево</keycap +></keycombo +></shortcut +> <guimenu +>Документ</guimenu +> <guimenuitem +>Назад</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Загружает в редактор предыдущий документ очереди. Если открыты несколько фреймов, то документ будет загружен в активный.</para +> <para +>Порядок следования документов в очереди определяется порядком, в котором документы были открыты. Это противоречит логической предыстории редактирования (сравните с поведением браузера). Возможно, эта <quote +>непредсказуемость</quote +> будет исправлена в будущих версиях &kate;.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="document-forward"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Alt;<keycap +>Вправо</keycap +></keycombo +></shortcut +> <guimenu +>Документ</guimenu +> <guimenuitem +>Вперёд</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Загружает в редактор следующий документ очереди. Если открыты несколько фреймов, то документ будет загружен в активный.</para> +<para +>Порядок следования документов в очереди определяется порядком, в котором документы были открыты. Это противоречит логической предыстории редактирования (сравните с поведением браузера). Возможно, эта <quote +>непредсказуемость</quote +> будет исправлена в будущих версиях &kate;.</para> +</listitem> +</varlistentry> +</variablelist> +</para> +</sect1> + +<sect1 id="view-menu"> +<title +>Меню <guimenu +>Вид</guimenu +></title> + +<para +>Меню <guimenu +>Вид</guimenu +> позволяет управлять фреймами и настраивать параметры, относящиеся к текущему редактору.</para> + +<variablelist> +<title +>Пункты меню</title> + +<varlistentry> +<term +><menuchoice +><shortcut +><keycap +>F7</keycap +></shortcut +> <guimenu +>Вид</guimenu +><guimenuitem +>Переключиться в командную строку</guimenuitem +> </menuchoice +></term> +<listitem +><para +>С помощью этой команды можно перемещать фокус ввода из области редактирования на <link linkend="advanced-editing-tools-commandline" +>командную строку</link +> и обратно. </para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Вид</guimenu +><guisubmenu +>Схема</guisubmenu +> </menuchoice +></term> +<listitem +><para +>Это меню содержит доступные схемы. Здесь можно изменить схему для текущего документа, а для изменения предустановленной схемы воспользуйтесь <link linkend="config-dialog-editor-colors" +>диалогом настройки</link +></para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +><keycombo action="simul" +><keycap +>F10</keycap +> </keycombo +></shortcut +> <guimenu +>Вид</guimenu +><guimenuitem +>Динамический перенос строк</guimenuitem +></menuchoice> +</term> +<listitem +><para +>Включает/отключает динамический перенос строк текущего документа. При динамическом переносе текст в окне можно просматривать без горизонтальной перемотки, то есть строка, непрерывная на самом деле, для удобства делится на несколько.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Вид</guimenu +><guimenuitem +>Маркеры статического переноса строк</guimenuitem +></menuchoice +></term> +<listitem +><para +>Включает/отключает отображение вертикальных линий, указывающих позицию переноса строк, заданную в <link linkend="config-dialog-editor-wrap-words-at" +>диалоге настройки</link +>. Эта функция доступна только для моноширинных шрифтов.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="view-show-icon-border"/> +<menuchoice +><shortcut +><keycombo action="simul" +><keycap +>F6</keycap +></keycombo +></shortcut +> <guimenu +>Вид</guimenu +> <guimenuitem +>Показать/Скрыть панель значков</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Скрывает/отображает панель значков слева от окна редактирования.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="view-show-line-numbers"/> +<menuchoice +><shortcut +><keycombo action="simul" +><keycap +>F11</keycap +></keycombo +></shortcut +> <guimenu +>Вид</guimenu +> <guimenuitem +>Показать/Скрыть номера строк</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Скрывает/отображает панель с номерами строк слева от окна редактирования.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Вид</guimenu +><guimenuitem +>Показать отметки на полосе прокрутки</guimenuitem +></menuchoice +></term> +<listitem +><para +>Включает/отключает отображение закладок (или других отметок) на полосе вертикальной прокрутки. Если включено, то на полосе прокрутки отображаются тонкие линии, окрашенные в цвет отметки. Щёлкните на такой линии средней кнопкой мыши, и курсор переместитcя в отмеченную область. </para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +><keycombo action="simul" +><keycap +>F9</keycap +> </keycombo +></shortcut +> <guimenu +>Вид</guimenu +><guimenuitem +>Показать полосу сворачивания кода</guimenuitem +> </menuchoice +></term> +<listitem +><para +>Включает/отключает отображение панели маркеров сворачивания блоков кода слева от окна редактирования. Более подробно об этом написано в разделе <link linkend="advanced-editing-tools-code-folding" +>Сворачивание блоков кода</link +>.</para +></listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="view-code-folding"/> +<menuchoice> +<guimenuitem +>Сворачивание блоков кода</guimenuitem> +</menuchoice> +</term> + +<listitem> +<variablelist> +<varlistentry> +<term +><menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl; <keycap +>Shift</keycap +><keycap +>-</keycap +></keycombo +></shortcut +> <guimenuitem +>Свернуть верхний уровень</guimenuitem +></menuchoice> +</term> +<listitem +><para +>Сворачивает все блоки верхнего уровня в документе.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl; <keycap +>Shift</keycap +><keycap +>+</keycap +></keycombo +></shortcut +> <guimenuitem +>Развернуть верхний уровень</guimenuitem +></menuchoice> +</term> +<listitem +><para +>Разворачивает все блоки верхнего уровня в документе.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl; <keycap +>-</keycap +></keycombo +></shortcut +> <guimenuitem +>Свернуть локальный уровень</guimenuitem +></menuchoice> +</term> +<listitem +><para +>Сворачивает ближайший к курсору блок.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl; <keycap +>+</keycap +></keycombo +></shortcut +> <guimenuitem +>Развернуть локальный уровень</guimenuitem +></menuchoice> +</term> +<listitem +><para +>Разворачивает ближайший к курсору блок.</para +></listitem> +</varlistentry> +</variablelist> +</listitem> + +</varlistentry> + +</variablelist> + +</sect1> + +<sect1 id="bookmarks-menu"> +<title +>Меню <guimenu +>Закладки</guimenu +></title> + +<para +>Меню <guimenu +>Закладки</guimenu +> позволяет работать с закладками активного документа.</para> + +<para +>Ниже описанных здесь пунктов меню располагаются пункты самих закладок. Текст каждого такого пункта -- номер и несколько символов строки, на которую указывает эта закладка. Выбрав пункт меню закладки, вы попадете на начало помеченной строки. Редактор автоматически выполнит прокрутку текста, если эта строка будет не видна.</para> + +<variablelist> + +<title +>Пункты меню</title> + +<varlistentry> +<term> +<anchor id="bookmarks-toggle-bookmark"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;<keycap +>B</keycap +></keycombo +></shortcut +> <guimenu +>Закладки</guimenu +> <guimenuitem +>Поставить/Убрать закладку</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Устанавливает или удаляет закладку для текущей строки активного документа (если закладки не было, она устанавливается, иначе удаляется).</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="bookmarks-clear-bookmarks"/> +<menuchoice +><guimenu +>Закладки</guimenu +> <guimenuitem +>Убрать все закладки</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Удаляет все закладки из текущего документа.</para> +</listitem> +</varlistentry> + +<varlistentry id="bookmarks-previous"> +<term +><menuchoice +><shortcut +><keycombo action="simul" +>&Alt; <keycap +>Page Up</keycap +></keycombo +></shortcut +> <guimenu +>Закладки</guimenu +><guimenuitem +>Предыдущая</guimenuitem +></menuchoice> +</term> +<listitem +><para +>Переместит курсор на начало вышележащей строки с закладкой. Текст пункта включает номер и несколько первых символов строки. Этот пункт появляется, только если выше курсора есть строка с закладкой.</para +></listitem> +</varlistentry> + +<varlistentry id="bookmarks-next"> +<term +><menuchoice +><shortcut +><keycombo action="simul" +>&Alt; <keycap +>Page Down</keycap +></keycombo +></shortcut +> <guimenu +>Закладки</guimenu +><guimenuitem +>Следующая</guimenuitem +></menuchoice +></term> +<listitem +><para +>Переместит курсор на начало нижележащей строки с закладкой. Текст пункта включает номер и несколько первых символов строки. Этот пункт появляется, только если ниже курсора есть строка с закладкой.</para +></listitem> +</varlistentry> + +</variablelist> + +</sect1> + +<sect1 id="tools-menu"> + +<title +>Меню <guimenu +>Сервис</guimenu +></title> + +<variablelist> + +<varlistentry> +<term +><menuchoice +><guimenu +>Сервис</guimenu +><guimenuitem +>Перенаправить в консоль</guimenuitem +></menuchoice +></term> +<listitem +><para +>Перенесет выделенный текст во встроенный эмулятор терминала. Новая строка к тексту не добавляется.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Сервис</guimenu +><guisubmenu +>Внешние инструменты</guisubmenu +></menuchoice +></term> +<listitem +><para +>Это подменю содержит все настроенные вами <link linkend="kate-mdi-tools-externaltools" +>внешние инструменты</link +>.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-read-only"/><menuchoice +><guimenu +>Сервис</guimenu +> <guimenuitem +>Режим "Только для чтения"</guimenuitem +></menuchoice +></term> +<listitem> +<para +>Устанавливает статус "Только для чтения" для текущего документа, тем самым предохраняя его от любых возможных изменений.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-filetype"/><menuchoice +><guimenu +>Сервис</guimenu +> <guimenuitem +>Тип файла</guimenuitem +></menuchoice +></term> +<listitem> +<para +>Выбор типа файла для текущего документа. Перекрывает параметр <link linkend="config-dialog-editor-filetypes" +>тип файла</link +>, указанный в <menuchoice +> <guimenu +>Настройка</guimenu +> <guimenuitem +>Настроить редактор...</guimenuitem +></menuchoice +> на вкладке Типы файлов.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-highlighting"/><menuchoice +><guimenu +>Сервис</guimenu +> <guimenuitem +>Подсветка</guimenuitem +></menuchoice +></term> + <listitem> +<para +>Выбор нестандартной схемы подсветки для текущего документа. Перекрывает глобальный режим подсветки, указанный в <menuchoice +> <guimenu +>Настройка</guimenu +> <guimenuitem +>Настроить редактор...</guimenuitem +> </menuchoice +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-indentation"/><menuchoice +><guimenu +>Сервис</guimenu +> <guimenuitem +>Отступ</guimenuitem +></menuchoice +></term> +<listitem> +<para +>Выбор <link linkend="kate-part-autoindent" +>режима отступов</link +> для текущего документа. Перекрывает глобальный режим отступов, указанный в <menuchoice +> <guimenu +>Настройка</guimenu +> <guimenuitem +>Настроить редактор...</guimenuitem +> </menuchoice +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-encoding"/><menuchoice +><guimenu +>Сервис</guimenu +> <guimenuitem +>Кодировка</guimenuitem +></menuchoice +></term> +<listitem> +<para +>Выбор кодировки для текущего документа, отличной от указанной в <menuchoice +> <guimenu +>Настройка</guimenu +> <guimenuitem +>Настроить редактор...</guimenuitem +></menuchoice +> на вкладке <guilabel +>Открытие/Сохранение</guilabel +>. Если файл не изменён, то он будет открыт повторно в указанной кодировке, а если изменён - то будет выполнено преобразование текущего текста в указанную кодировку.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-end-of-line"/><menuchoice +><guimenu +>Сервис</guimenu +> <guimenuitem +>Конец строки</guimenuitem +></menuchoice +></term> +<listitem> +<para +>Выбор окончания строки для текущего документа. Перекрывает стандартную настройку в <menuchoice +> <guimenu +>Настройка</guimenu +> <guimenuitem +>Настроить редактор...</guimenuitem +> </menuchoice +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-spelling"/><menuchoice +><guimenu +>Сервис</guimenu +> <guimenuitem +>Проверка правописания...</guimenuitem +></menuchoice> +</term> + +<listitem +><para +><action +>Запускает проверку правописания -- программу, разработанную для помощи пользователям в поиске и исправлении ошибок правописания.</action +> Щелчок на этом пункте меню вызывает окно проверки орфографии, где вы можете контролировать процесс проверки. В этом диалоге есть три поля ввода, расположенные вертикально, с надписями, описывающими их назначение, слева. Предназначение этих полей ввода:</para> + +<variablelist> +<varlistentry> +<term +><guilabel +>Неизвестное слово:</guilabel +></term> +<listitem +><para +>Здесь программа проверки орфографии показывает рассматриваемое слово. Это происходит, когда программа не находит этого слова в своём словаре -- файле, содержащим список правильно написанных слов, с которыми сверяется каждое проверяемое слово.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Заменить на:</guilabel +></term> +<listitem +><para +>Если программа обнаруживает в своём словаре похожие слова, первое из них будет показано в этом поле. Вы можете принять предлагаемое слово, ввести свой вариант или выбрать другой вариант из списка ниже.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Предлагаемые слова:</guilabel +></term> +<listitem +><para +>Программа проверки орфографии может разместить здесь список возможных замен для проверяемого слова. При щелчке на любом из предлагаемых слов оно появляется в поле ввода <guilabel +>Заменить на:</guilabel +>, расположенном выше.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guilabel +>Язык:</guilabel +></term> +<listitem +><para +>Если у вас есть несколько словарей, то здесь вы можете выбрать, какой из них использовать.</para +></listitem> +</varlistentry> +</variablelist> + +<para +>В правой части диалога расположены 5 кнопок для управления проверкой правописания:</para> + +<variablelist> +<varlistentry> +<term +><guibutton +>Добавить в словарь</guibutton +></term> +<listitem +><para +>При нажатии этой кнопки <guilabel +>Ошибочное слово:</guilabel +> будет добавлено в словарь программы проверки орфографии, т.е. в дальнейшем это слово будет считаться написанным правильно.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guibutton +>Заменить</guibutton +></term> +<listitem +><para +>При нажатии на эту кнопку в документе происходит замена рассматриваемого слова словом из поля ввода <guilabel +>Заменить на:</guilabel +>.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guibutton +>Заменить все</guibutton +></term> +<listitem +><para +>При нажатии на эту кнопку будет исправлено не только <guilabel +>Ошибочное слово:</guilabel +>, но и все экземпляры этого слова в документе.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guibutton +>Игнорировать</guibutton +></term> +<listitem +><para +>При нажатии на эту кнопку проверка будет продолжена без изменения текущего слова.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><guibutton +>Игнорировать везде</guibutton +></term> +<listitem +><para +>При нажатии на эту кнопку программа проверки будет пропускать все экземпляры неизвестного слова в документе.</para +> <note +><para +>Игнорируемые слова не запоминаются программой, то есть при следующуй проверке правописания это будет отмечено вновь.</para +></note +></listitem> +</varlistentry> +</variablelist> + +<para +>Ещё три кнопки расположены внизу диалога проверки правописания:</para> + +<variablelist> +<varlistentry> +<term +><guibutton +>Справка</guibutton +></term> +<listitem +><para +>Вызывает справочную систему &kde; и открывает этот документ.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guibutton +>Готово</guibutton +></term> +<listitem +><para +>Останавливает процесс проверки правописания с сохранением внесенных изменений</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guibutton +>Отмена</guibutton +></term> +<listitem +><para +>Отменяет внесенные изсенения и завершает процесс проверки правописания.</para +></listitem> +</varlistentry> +</variablelist> +</listitem> +</varlistentry> +</variablelist> + +<variablelist> +<varlistentry> +<term +><anchor id="tools-spelling-from-cursor"/><menuchoice +><guimenu +>Сервис</guimenu +> <guimenuitem +>Проверка правописания (от курсора)...</guimenuitem +></menuchoice +></term> + <listitem> +<para +>Запускает проверку правописания, но начинается она от позиции курсора, а не от начала документа.</para> + </listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-spellcheck-selection"/><menuchoice +><guimenu +>Сервис</guimenu +> <guimenuitem +>Проверка правописания в выделенном фрагменте...</guimenuitem +></menuchoice +></term> + <listitem> +<para +>Проверяет правописание в выделенном фрагменте.</para> + </listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="indent"/><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>I</keycap +></keycombo +> </shortcut +> <guimenu +>Сервис</guimenu +><guimenuitem +>Вставить отступ</guimenuitem +></menuchoice +></term> +<listitem> +<para +>Увеличивает отступ параграфа на один шаг. Размер шага зависит от <link linkend="config-dialog-editor-indent" +>параметров расстановки отступов</link +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-unindent"/><menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;&Shift;<keycap +>I</keycap +></keycombo +></shortcut +> <guimenu +>Сервис</guimenu +> <guimenuitem +>Снять отступ</guimenuitem +></menuchoice +></term> + +<listitem> +<para +>Уменьшает отступ параграфа на один шаг. Размер шага зависит от <link linkend="config-dialog-editor-indent" +>параметров расстановки отступов</link +>.</para> + +</listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-cleanindent"/><menuchoice +><guimenu +>Сервис</guimenu +><guimenuitem +>Привести в порядок отступы</guimenuitem +></menuchoice +></term +> <listitem> +<para +>Приводит в порядок отступы в выделенном фрагменте или в текущей строке. Это обеспечивает соответствие режима отступов установленному вами правилу.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-align"/><menuchoice +><guimenu +>Сервис</guimenu +> <guimenuitem +>Выравнивание</guimenuitem +> </menuchoice +></term> +<listitem> +<para +>Выравнивает текущую строку или строки в выделенном фрагменте согласно правилам отступа для документа.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-comment"/><menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;<keycap +>D</keycap +></keycombo +></shortcut +> <guimenu +>Сервис</guimenu +> <guimenuitem +>Закомментировать</guimenuitem +> </menuchoice +></term> +<listitem +><para +>Добавляет знак комментария, отделенный от начала текста в строке пробелом.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-uncomment"/><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;&Shift;<keycap +>D</keycap +></keycombo +> </shortcut +> <guimenu +>Сервис</guimenu +> <guimenuitem +>Раскомментировать</guimenuitem +> </menuchoice +></term> +<listitem +><para +>Удаляет знак комментария и пробел, которым этот знак отделялся от начала текста в строке.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-uppercase"/><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>U</keycap +></keycombo +> </shortcut +> <guimenu +>Сервис</guimenu +> <guimenuitem +>ВЕРХНИЙ РЕГИСТР</guimenuitem +> </menuchoice +></term> +<listitem +><para +>Переводит выделенный текст или букву под курсором в верхний регистр.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-lowercase"/><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;&Shift;<keycap +>U</keycap +></keycombo +> </shortcut +> <guimenu +>Сервис</guimenu +> <guimenuitem +>нижний регистр</guimenuitem +> </menuchoice +></term> +<listitem +><para +>Переводит выделенный текст или букву под курсором в нижний регистр.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-capitalize"/><menuchoice +><shortcut +> <keycombo action="simul" +>&Alt;&Ctrl;<keycap +>U</keycap +></keycombo +> </shortcut +> <guimenu +>Сервис</guimenu +> <guimenuitem +>Как в предложениях</guimenuitem +> </menuchoice +></term> +<listitem +><para +>Переводит заглавные буквы выделенного текста в верхний регистр.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-join-lines"/><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>J</keycap +></keycombo +> </shortcut +> <guimenu +>Сервис</guimenu +> <guimenuitem +>Объединить строки</guimenuitem +> </menuchoice +></term> +<listitem +><para +>Объединяет выделенные строки (или текущую строку с нижележащей) в одну, разделяя их пробелом. Пробелы в начале и конце строк удаляются.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><anchor id="tools-word-wrap-document"/><menuchoice +><guimenu +>Сервис</guimenu +> <guimenuitem +>Перенос слов в документе</guimenuitem +> </menuchoice +></term> +<listitem +><para +>Включает статический перенос строк в документе, то есть если длина строки превышает величину, указанную на вкладке настройки редактора в поле "Переносить после" меню <menuchoice +> <guimenu +>Настройка</guimenu +><guimenuitem +>Настроить редактор...</guimenuitem +></menuchoice +>, будет вставлен символ новой строки.</para +></listitem> +</varlistentry> + +</variablelist> + + +</sect1> + +<sect1 id="sessions-menu"> +<title +>Меню <guimenu +>Сеансы</guimenu +></title> + +<para +>Это меню содержит пункты для использования сеансов и управления ими.</para> + +<variablelist> + +<varlistentry id="sessions-new"> +<term +><menuchoice +><guimenu +>Сеансы</guimenu +> <guimenuitem +>Создать</guimenuitem +></menuchoice +></term> +<listitem +><para +>Создает новый сеанс. Все текущие файлы будут закрыты.</para +></listitem> + +</varlistentry> + +<varlistentry id="sessions-open"> +<term +><menuchoice +><guimenu +>Сеансы</guimenu +><guimenuitem +>Открыть...</guimenuitem +> </menuchoice +></term> +<listitem +><para +>Открывает один из существующих сеансов, для выбора предоставляется диалог.</para +></listitem> +</varlistentry> + +<varlistentry id="sessions-quick-open"> +<term +><menuchoice +><guimenu +>Сеансы</guimenu +><guisubmenu +>Быстрое открытие</guisubmenu +> </menuchoice +></term> +<listitem +><para +>Это подменю позволяет быстро открыть существующий сеанс.</para> +</listitem> +</varlistentry> + +<varlistentry id="sessions-save"> +<term +><menuchoice +><guimenu +>Сеансы</guimenu +><guimenuitem +>Сохранить</guimenuitem +> </menuchoice +></term> +<listitem +><para +>Сохраняет текущий сеанс. Если сеанс безымянный, будет предложено назвать его.</para +></listitem> +</varlistentry> + +<varlistentry id="sessions-save-as"> +<term +><menuchoice +><guimenu +>Сеансы</guimenu +><guimenuitem +>Сохранить как...</guimenuitem +></menuchoice +></term> +<listitem +><para +>Сохраняет текущий сеанс под именем, которое будет предложено ввести.</para +></listitem> +</varlistentry> + +<varlistentry id="sessions-manage"> +<term +><menuchoice +><guimenu +>Сеансы</guimenu +><guimenuitem +>Управление...</guimenuitem +> </menuchoice +></term> +<listitem +><para +>Отображает диалог управления сеансами, где их можно переименовывать и удалять.</para +></listitem> +</varlistentry> + + +</variablelist> + +</sect1> + +<sect1 id="settings-menu"> + +<title +>Меню <guimenu +>Настройка</guimenu +></title> + +<para +>Меню <guimenu +>Настройка</guimenu +> позволяет настроить свойства главного окна, например, отображение панелей инструментов, а также предоставляет доступ к другим окнам настройки.</para> + +<variablelist> + +<varlistentry> +<term> +<anchor id="settings-toolbars"/> +<menuchoice +><guimenu +>Настройка</guimenu +> <guimenuitem +>Панели инструментов</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Это подменю представляет все доступные панели инструментов, каждый пункт включает/отключает соответствующую панель.</para> +</listitem> +</varlistentry> + +<varlistentry id="settings-fullscreen"> +<term +><menuchoice +><guimenu +>Настройка</guimenu +><guimenuitem +>Полноэкранный режим</guimenuitem +></menuchoice +></term> +<listitem +><para +>Включает/отключает полноэкранное отображение.</para> +<note +><para +>В будущих версиях &kate; эта команда переместится в меню Окно.</para +></note> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="settings-configure-shortcuts"/> +<menuchoice +><guimenu +>Настройка</guimenu +> <guimenuitem +>Комбинации клавиш...</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Отображает стандартный диалог &kde; Настройка комбинаций клавиш.</para> +</listitem> +</varlistentry> + + +<varlistentry> +<term> +<anchor id="settings-configure-toolbars"/> +<menuchoice +><guimenu +>Настройка</guimenu +> <guimenuitem +>Настроить панели инструментов...</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Отобразить стандартное окно &kde; Настроить панели инструментов</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="settings-configure-kate"/> +<menuchoice +><guimenu +>Настройка</guimenu +> <guimenuitem +>Настроить &kate;...</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Открыть диалоговое окно <link linkend="config-dialog" +>Настройки &kate;</link +></para> +</listitem> +</varlistentry> + +</variablelist> + +</sect1> + +<sect1 id="window-menu"> +<title +>Меню <guimenu +>Окно</guimenu +></title> + +<variablelist> +<varlistentry> +<term> +<anchor id="window-new"/> +<menuchoice +><guimenu +>Окно</guimenu +> <guimenuitem +>Новое окно</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +><action +>Открывает ещё одно окно &kate;</action +>. Новое окно будет точно таким же, как предыдущее. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="window-split-vertical"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;&Shift;<keycap +>L</keycap +></keycombo +></shortcut +> <guimenu +>Окно</guimenu +> <guimenuitem +>Разделить по вертикали</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Разделяет фрейм (который может быть главной областью редактирования) на два равных фрейма, причем новый будет располагаться слева от текущего. Новый фрейм становится активным, и в него загружается тот же документ.</para> +<para +>См. также <link linkend="kate-mdi" +>Работа с многодокументным интерфейсом &kate;</link +></para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="window-split-horizontal"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;&Shift;<keycap +>T</keycap +></keycombo +></shortcut +> <guimenu +>Окно</guimenu +> <guimenuitem +>Разделить по горизонтали</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Разделяет фрейм (который может быть главной областью редактирования) на два равных фрейма, причем новый будет располагаться в нижней половине. Новый фрейм становится активным, и в него загружается тот же документ.</para> +<para +>См. также <link linkend="kate-mdi" +>Работа с многодокументным интерфейсом &kate;</link +></para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="window-close-current"/> +<menuchoice +><shortcut +><keycombo action="simul" +>&Ctrl;&Shift;<keycap +>R</keycap +></keycombo +></shortcut +> <guimenu +>Окно</guimenu +> <guimenuitem +>Закрыть текущий вид</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Закрывает текущий фрейм. Если область редактирования не была разделена на фреймы, этот пункт будет недоступен.</para +> <para +>При закрытии фрейма документ, который был загружен в этот фрейм, не закрывается -- он все еще будет доступен из <link linkend="document-menu" +>меню <guimenu +>Документ</guimenu +></link +> и списка файлов.</para +> <para +>См. также <link linkend="kate-mdi" +>Работа с многодокументным интерфейсом &kate;</link +></para> +</listitem> +</varlistentry> + +<varlistentry id="window-next-view"> +<term +><menuchoice +><shortcut +><keycombo action="simul" +><keycap +>F8</keycap +> </keycombo +></shortcut +><guimenu +>Окно</guimenu +><guimenuitem +>Вперёд</guimenuitem +></menuchoice +></term> +<listitem +><para +>Если окно разделено, то передает фокус следующему фрейму.</para +></listitem> +</varlistentry> + +<varlistentry id="window-previous-view"> +<term +><menuchoice +><shortcut +><keycombo action="simul" +>&Shift;<keycap +>F8</keycap +> </keycombo +></shortcut +><guimenu +>Окно</guimenu +><guimenuitem +>Назад</guimenuitem +></menuchoice +></term> +<listitem +><para +>Если окно разделено, то передает фокус предыдущему фрейму.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Окно</guimenu +><guisubmenu +>Служебные панели</guisubmenu +> </menuchoice +></term> +<listitem> +<variablelist> +<varlistentry> +<term +><anchor id="window-toolviews-show-sidebars"/> +<menuchoice +><guimenu +>Окно</guimenu +><guisubmenu +>Служебные панели</guisubmenu +> <guimenuitem +>Показать/Скрыть Боковые панели</guimenuitem +></menuchoice +></term> +<listitem +><para +>Включает/выключает боковые панели. Команда не действует на панели с органами управления, боковые паели остаются видимыми, и, конечно, продолжают действовать горячие клавиши.</para +></listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="window-toolviews-show-filelist"/> +<menuchoice +><guimenu +>Окно</guimenu +><guisubmenu +>Служебные панели</guisubmenu +> <guimenuitem +>Показать/Скрыть Документы</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Включает/выключает отображение списка файлов &kate;.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="window-toolviews-show-fileselector"/> +<menuchoice +><guimenu +>Окно</guimenu +><guisubmenu +>Служебные панели</guisubmenu +> <guimenuitem +>Показать/Скрыть Проводник</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Включает/выключает отображение служебной панели Проводник.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="window-toolviews-greptool"/> +<menuchoice +><guimenu +>Окно</guimenu +><guisubmenu +>Служебные панели</guisubmenu +> <guimenuitem +>Показать/Скрыть Поиск в файлах</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Включает/выключает отображение инструмента <guilabel +>Поиск в файлах</guilabel +>. </para> +</listitem> +</varlistentry> + +<varlistentry> +<term> +<anchor id="window-toolviews-show-konsole"/> +<menuchoice +><guimenu +>Окно</guimenu +><guisubmenu +>Служебные панели</guisubmenu +> <guimenuitem +>Показать/Скрыть Терминал</guimenuitem +> </menuchoice> +</term> +<listitem> +<para +>Включает/выключает отображение встроенного эмулятора терминала.</para> +<para +>Терминал создается при первом включении этого пункта.</para> +<para +>При отображении эмулятор терминала получает фокус ввода, так что вы сразу можете вводить команды. Если включен параметр <link linkend="config-dialog-general-sync-konsole" +>Синхронизировать терминал с активным документом</link +>, который находится на странице <link linkend="config-dialog-general" +>Общая</link +> диалога <link linkend="config-dialog" +>настройки</link +>, то текущий каталог будет изменён на каталог текущего документа, если это локальный файл.</para> +</listitem> +</varlistentry> + +</variablelist> + +</listitem> +</varlistentry> + +</variablelist> + +</sect1> + +<sect1 id="help-menu"> + +<title +>Меню <guimenu +>Справка</guimenu +></title> + +<para +>Если вы установили пакет tdeaddons, то вместе со стандартными пунктами меню <guimenu +>Справка</guimenu +> у вас будут пункты меню <guimenuitem +>Справка по модулям</guimenuitem +>.</para> +&help.menu.documentation; </sect1> + +</chapter> diff --git a/tde-i18n-ru/docs/tdebase/kate/part.docbook b/tde-i18n-ru/docs/tdebase/kate/part.docbook new file mode 100644 index 00000000000..dd66eb93412 --- /dev/null +++ b/tde-i18n-ru/docs/tdebase/kate/part.docbook @@ -0,0 +1,984 @@ +<chapter id="kate-part"> +<chapterinfo> +<authorgroup> +<author +>&Anders.Lund; &Anders.Lund.mail;</author> +<othercredit role="translator" +><firstname +>Андрей</firstname +><surname +>Балагута</surname +><affiliation +><address +><email +>uj2@mail.ru</email +></address +></affiliation +><contrib +>Перевод на русский</contrib +></othercredit +> +</authorgroup> +</chapterinfo> +<title +>Редактирование текста в &kate;</title> + +<sect1 id="kate-part-overview"> + +<title +>Обзор</title> + +<para +>Редактор &kate; -- это область редактирования в главном окне &kate;. Этот же редактор используется в &kwrite;, а также в &konqueror; для отображения текстовых файлов, находящихся на вашем компьютере или в сети.</para> + +<para +>Редактор состоит из следующих частей:</para> + +<variablelist> + +<varlistentry> +<term +>Область редактирования</term> +<listitem +><para +>Здесь отображается текст вашего документа.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>Полосы прокрутки</term> +<listitem> +<para +>Полосы прокрутки показывают положение видимой части текста документа; они используются для перемещения по документу. При перемещении ползунка курсор вставки остается на месте.</para> +<para +>Полосы прокрутки отображаются только если размер текста документа выходит за пределы области редактирования; и наоборот, когда нет необходимости в прокручивании текста, полосы прокрутки не отображаются.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>Граница пиктограмм</term> +<listitem> +<para +>Граница пиктограмм -- это небольшая панель слева от области редактирования. На ней отображаются маленькие пиктограммы напротив помеченных строк.</para> +<para +>Вы можете установить или убрать <link linkend="kate-part-bookmarks" +>закладку</link +> на какой-либо строке, просто щёлкнув левой кнопкой мыши на границе пиктограмм напротив этой строки.</para> +<para +>Отображение границы пиктограмм переключается пунктом меню <menuchoice +><guimenu +>Вид</guimenu +> <guimenuitem +>Показать границы пиктограмм</guimenuitem +></menuchoice +></para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>Панель номеров строк</term> +<listitem> +<para +>Панель номеров строк показывает номера видимых строк документа.</para> +<para +>Отображение панели номеров строк переключается пунктом меню <menuchoice +><guimenu +>Вид</guimenu +> <guimenuitem +>Показать номера строк</guimenuitem +></menuchoice +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>Полоса сворачивания блоков</term> +<listitem> +<para +>Полоса сворачивания блоков позволяет сворачивать и разворачивать отдельные блоки кода. Группировка строк в блоки осуществляется на основе правил подсветки синтаксиса.</para> +</listitem> +</varlistentry> + +</variablelist> + +<itemizedlist> +<title +>Содержание этой главы:</title> +<listitem +><para +><link linkend="kate-part-navigation" +>Навигация по тексту</link +> </para +></listitem> +<listitem +><para +><link linkend="kate-part-selection" +>Работа с выделением</link +></para +></listitem> +<listitem +><para +><link linkend="kate-part-copy-and-paste" +>Копирование и вставка текста</link +></para +></listitem> +<listitem +><para +><link linkend="kate-part-find-replace" +>Поиск и замена текста</link +></para +></listitem> +<listitem +><para +><link linkend="kate-part-bookmarks" +>Использование закладок</link +></para +></listitem> +<listitem +><para +><link linkend="kate-part-auto-wrap" +>Автоматический перенос текста по словам</link +></para +></listitem> +<listitem +><para +><link linkend="kate-part-autoindent" +>Использование автоотступа</link +></para +></listitem> +</itemizedlist> + +</sect1> + +<sect1 id="kate-part-navigation"> +<title +>Навигация по тексту</title> + +<para +>Перемещение по тексту в &kate; производится аналогично большинству графических редакторов - клавишами со стралками и <keycap +>Page Up</keycap +>, <keycap +>Page Down</keycap +>, <keycap +>Home</keycap +>, <keycap +>End</keycap +>, а также их разными комбинациями с клавишами <keycap +>Ctrl</keycap +> и <keycap +>Shift</keycap +>. Клавиша <keycap +>Shift</keycap +> позволяет выделять текст, а <keycap +>Ctrl</keycap +> имеет разные значения для разных клавиш, с которыми она выступает в комбинации: <itemizedlist> +<listitem +><para +>Для клавиш <keycap +>Вверх</keycap +> и <keycap +>Вниз</keycap +>: прокрутка документа вместо перемещения курсора.</para +></listitem> +<listitem +><para +>Для клавиш <keycap +>Влево</keycap +> и <keycap +>Вправо</keycap +>: перемещение по словам, а не по символам.</para +></listitem> +<listitem +><para +>Для клавиш <keycap +>Page Up</keycap +> и <keycap +>Page Down</keycap +>: перемещение на край видимой области.</para> +</listitem> +<listitem +><para +>Для клавиш <keycap +>Home</keycap +> и <keycap +>End</keycap +>: перемещение в начало или конец документа, а не строки.</para +></listitem> +</itemizedlist> +</para> + +<para +>&kate; также предоставляет возможность перехода от открывающей скобки (в т.ч. фигурной и квадратной) к соответствующей закрывающей и наоборот: Поместите курсор перед открывающей или после закрывающей скобки (обе скобки должны выделиться жёлтым фоном) и нажмите <keycombo +><keycap +>Ctrl</keycap +><keycap +>6</keycap +></keycombo +>.</para> + +<para +>Кроме того для быстрого перехода в заданную позицию в документе, можно использовать <link linkend="kate-part-bookmarks" +>закладки</link +>.</para> + +</sect1> + +<sect1 id="kate-part-selection"> +<title +>Работа с выделением</title> + +<para +>Существует два основных способа выделения текста в &kate;: с помощью мыши и с помощью клавиатуры.</para> + +<para +>Чтобы выделить текст мышью, щёлкните левой кнопкой на начале текста, который хотите выделить, и, не отпуская кнопки, переместите курсор мыши на конец текста. Выделенная область текста меняется по мере перемещения указателя.</para> + +<para +>Двойной щелчок левой кнопкой мыши позволяет выделить слово.</para> + +<para +>Тройной щелчок выделяет всю строку.</para> + +<para +>Если при нажатии левой кнопки мыши была нажата клавиша &Shift;, текст будет выделен следующим образом:</para> + +<itemizedlist> +<listitem +><para +>Если ничего не было выделено, от позиции ввода (текстовый курсор) до позиции курсора мыши.</para +></listitem> +<listitem +><para +>Если был выделен текст, то от этого выделения и до позиции курсора мыши, включая само выделение.</para +></listitem> +</itemizedlist> + +<note> +<para +>При выделении текста мышью он автоматически копируется в буфер обмена. Его можно вставить в редактор или в другое приложение, щёлкнув средней кнопкой мыши в нужном месте. </para> +</note> + +<para +>Чтобы выделить текст при помощи клавиатуры, нажмите клавишу &Shift; и выделите нужный блок текста, используя клавиши навигации (клавиши со стрелками, <keycap +>Page Up</keycap +>, <keycap +>Page Down</keycap +>, <keycap +>Home</keycap +> и <keycap +>End</keycap +>, возможно, в комбинации с &Ctrl;)</para> + +<para +>Дополнительную информацию можно найти в разделе <link linkend="kate-part-navigation" +>Навигация по тексту</link +> в этой главе.</para> + +<para +>Чтобы <action +>скопировать</action +> выделенный фрагмент текста, выберите пункт меню <menuchoice +><guimenu +>Правка</guimenu +> <guimenuitem +>Копировать</guimenuitem +></menuchoice +> или нажмите соответствующий акселератор (по умолчанию <keycombo action="simul" +>&Ctrl;<keycap +>C</keycap +></keycombo +>).</para> + +<para +>Чтобы <action +>снять выделение</action +>, выберите пункт меню <menuchoice +><guimenu +>Правка</guimenu +> <guimenuitem +>Отменить выбор</guimenuitem +></menuchoice +> или нажмите соответствующую быструю клавишу (по умолчанию <keycombo action="simul" +>&Ctrl;&Shift;<keycap +>A</keycap +></keycombo +>), или просто щёлкните левой кнопкой мыши где-нибудь в редакторе.</para> + +<sect2 id="kate-part-selection-block"> +<title +>Вертикальное выделение</title> + +<para +>Когда режим вертикального выделения включен, вы можете выделить определённые столбцы символов в нескольких строках (проще говоря, выделить прямоугольный блок текста). Например, этот режим выделения может пригодиться, если у вас строки разделены табуляцией.</para> + +<para +>Режим вертикального выделения можно переключить, выбрав пункт меню <menuchoice +><guimenu +>Правка</guimenu +> <guimenuitem +>Вертикальное выделение</guimenuitem +></menuchoice +></para> + +</sect2> + +<sect2 id="kate-part-seleciton-overwrite"> + +<title +>Замена выделенного фрагмента</title> + +<para +>Если режим замены выделенного фрагмента включен, любой ввод или вставка текста приведёт к замене выделенного к этому моменту текста на новый текст. Если этот режим выключен, новый текст будет добавлен в позиции текстового курсора.</para> + +<para +>По умолчанию режим замены выделенного фрагмента включен.</para> + +<para +>Включить или выключить этот режим можно на <link linkend="config-dialog-editor-cursor-selection" +>странице "Выделение"</link +> в <link linkend="config-dialog" +>окне настройки</link +>.</para> + +</sect2> + +<sect2 id="kate-part-selection-persistent"> + +<title +>Постоянное выделение</title> + +<para +>Если включен режим постоянного выделения, ввод символов или перемещение текстового курсора не вызовет снятия выделения с ранее выделенного фрагмента. Это значит, что вы можете переместить курсор за пределы выделения и вводить текст.</para> + +<para +>По умолчанию режим постоянного выделения отключен.</para> + +<para +>Включить или выключить этот режим можно на <link linkend="config-dialog-editor-cursor-selection" +>странице "Выделение"</link +> в <link linkend="config-dialog" +>окне настройки</link +>.</para> + +<warning> +<para +>Если режимы постоянного выделения и замены выделенного фрагмента включены, ввод или вставка текста в позицию курсора, если последний находится в пределах выделенного фрагмента, вызовет его замену и снятие выделения.</para> +</warning> + +</sect2> + +</sect1> + +<sect1 id="kate-part-copy-and-paste"> + +<title +>Копирование и вставка текста</title> + +<para +>Чтобы скопировать текст, выделите его и выберите пункт меню <menuchoice +><guimenu +>Правка</guimenu +> <guimenuitem +>Копировать</guimenuitem +></menuchoice +>. Также при выделении текста мыши он автоматически копируется в буфер выделения X-сервера.</para> + +<para +>Для вставки текста, находящегося в буфере обмена, выберите пункт меню <menuchoice +> <guimenu +>Правка</guimenu +><guimenuitem +>Вставить</guimenuitem +></menuchoice +>.</para> + +<para +>Также вы можете вставить текст из буфера выделения (последний выделенный с помощью мыши текст) в редактор нажатием средней кнопки мыши в нужном месте.</para> + +<tip> +<para +>Если вы используете рабочий стол &kde;, вы можете выбрать ранее скопированный текст, используя программу &klipper;, чей значок находится в лотке &kicker;.</para> +</tip> + +</sect1> + +<sect1 id="kate-part-find-replace"> +<title +>Поиск и замена текста</title> + +<sect2 id="find-replace-dialog"> +<title +>Диалоговые окна <guilabel +>Поиск текста</guilabel +> и <guilabel +>Замена текста</guilabel +></title> + + +<para +>Диалоговые окна поиска и замены текста очень похожи, с той только разницей, что в диалоговом окне замены текста присутствует поле для ввода строки замены и еще несколько дополнительных параметров.</para> + +<para +>Следующие параметры являются общими:</para> + +<variablelist> + +<varlistentry> +<term +><guilabel +>Искать текст</guilabel +></term> +<listitem +><para +>Здесь нужно ввести строку поиска. Интерпретация строки зависит от параметров, описанных ниже.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Регулярное выражение</guilabel +></term> +<listitem> +<para +>Если эта опция включена, строка поиска считается регулярным выражением. Кнопка слева предназначена для графического редактирования выражения (кнопка будет доступна, если параметр включен).</para> +<para +>Подробнее о регулярных выражениях написано в <link linkend="regular-expressions" +>соответствующей главе</link +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>С учётом регистра</guilabel +></term> +<listitem> +<para +>Если параметр включен, поиск будет различать регистр букв.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Только слово целиком</guilabel +></term> +<listitem> +<para +>Если эта опция включена, сопоставление будет положительным только в том случае, если с обоих сторон найденной строки будут стоять разделители слов, т.е. не алфавитно-цифровые символы -- любой другой отображаемый символ или конец строки.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>От курсора</guilabel +></term> +<listitem> +<para +>Если эта опция включена, поиск начнётся с позиции текстового курсора, иначе -- с первой строки документа.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Искать назад</guilabel +></term> +<listitem> +<para +>Если эта опция включена, поиск будет искать первое совпадение, которое находится до стартовой точки (позиция курсора или начало документа, если включена опция <guilabel +>С начала документа</guilabel +>).</para> +</listitem> +</varlistentry> + +</variablelist> + +<para +>Диалоговое окно <guilabel +>Замена текста</guilabel +> содержит несколько дополнительных опций:</para> + +<variablelist> + +<varlistentry> +<term +><guilabel +>Заменить на:</guilabel +></term> +<listitem +><para +>Здесь нужно ввести заменяющую строку.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>В выделенном фрагменте</guilabel +></term> +<listitem> +<para +>Эта опция недоступна, если нет выделенного текста или включена опция <guilabel +>Подтверждать замену</guilabel +>. Она позволяет выполнить замену совпавших фрагментов только в выделенном фрагменте текста.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><guilabel +>Подтверждать замену</guilabel +></term> +<listitem +><para +>Если эта опция включена, то перед каждой заменой будет выдано небольшое диалоговое окно, которое предложит вам несколько вариантов возможных действий: <variablelist> + +<varlistentry> +<term +><guibutton +>Да</guibutton +></term> +<listitem +><para +>Заменить текущее совпадение (в редакторе оно отображается выделенным).</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guibutton +>Нет</guibutton +></term> +<listitem +><para +>Не заменять текущее совпадение и перейти к следующему совпадение (если оно есть).</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guibutton +>Все</guibutton +></term> +<listitem +><para +>Заменить все оставшиеся совпадения без выдачи предупреждающего окна.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><guibutton +>Закрыть</guibutton +></term> +<listitem +><para +>Пропустить текущее совпадение и завершить процесс поиска.</para +></listitem> +</varlistentry> + +</variablelist> + +</para +></listitem> +</varlistentry> + +</variablelist> + +<note> +<para +>В текущей версии &kate; не предусмотрено возможности задания т.н. минимальных регулярных выражений (т.е. тех, которые берут совпадение по минимуму). Это будет исправлено в будущих версиях.</para> +</note> + +</sect2> + +<sect2 id="finding-text"> +<title +>Поиск текста</title> + +<para +>Если вам нужно найти какой-то текст, откройте диалоговое окно <guilabel +>Поиск текста</guilabel +>, нажав сочетание клавиш <keycombo action="simul" +>&Ctrl;<keycap +>F</keycap +></keycombo +> или выбрав пункт меню <menuchoice +><guimenu +>Правка</guimenu +> <guimenuitem +>Найти...</guimenuitem +></menuchoice +>, введите строку для поиска, установите нужные <link linkend="find-replace-dialog" +>параметры</link +> и нажмите на <guibutton +>OK</guibutton +>. Если поиск начинался с позиции курсора и ничего не было найдено до конца документа (или начала -- при поиске в обратном направлении), вам будет предложено произвести поиск в оставшейся части документа. </para> + +<para +>При нахождении, совпадение выделяется в редакторе и диалоговое окно <guilabel +>Поиск текста</guilabel +> исчезает с экрана, но его настройки сохраняются, это делает поиск следующего совпадения очень простым:</para> + +<para +>Чтобы найти следующее совпадение в том же направлении поиска, выберите пункт меню <menuchoice +><guimenu +>Правка</guimenu +> <guimenuitem +>Продолжить поиск</guimenuitem +></menuchoice +> или нажмите клавишу <keycap +>F3</keycap +>.</para> + +<para +>Чтобы вернуться к предыдущему совпадению, выберите пункт меню <menuchoice +><guimenu +>Правка</guimenu +> <guimenuitem +>Продолжить поиск назад</guimenuitem +></menuchoice +> или нажмите сочетание клавиш <keycombo action="simul" +>&Shift;<keycap +>F3</keycap +></keycombo +>.</para> + +<para +>Если при поиске была достигнута граница документа (начало или конец), вам будет предложено начать поиск с другой границы документа. </para> + +</sect2> + +<sect2> +<title +>Замена текста</title> + +<para +>Если вам нужно заменить какой-то текст на другой, откройте диалоговое окно <guilabel +>Замена текста</guilabel +>, нажав сочетание клавиш <keycombo action="simul" +>&Ctrl;<keycap +>R</keycap +></keycombo +> или выбрав пункт меню <menuchoice +><guimenu +>Правка</guimenu +> <guimenuitem +>Заменить...</guimenuitem +></menuchoice +>, введите строку для поиска и, если нужно, заменяющую строку (если она будет пуста, каждое совпадение будет просто удалено), установите нужные <link linkend="find-replace-dialog" +>параметры</link +> и нажмите на <guibutton +>OK</guibutton +>.</para> + +<tip> +<para +>При использовании регулярных выражений в поиске и замене текста можно добавлять обратные ссылки, чтобы использовать текст документа, совпавший с подвыражением, заключенным в скобках (собственно, это подвыражение и есть обратная ссылка).</para> +<para +>Подробнее об этом читайте в разделе <xref linkend="regular-expressions"/>.</para> +</tip> + +<tip +><para +>В <link linkend="advanced-editing-tools-commandline" +>командной строке</link +> доступны команды <command +>find</command +>, <command +>replace</command +> и <command +>ifind</command +> (поиск по мере набора).</para> +</tip> + +</sect2> + +</sect1> + +<sect1 id="kate-part-bookmarks"> +<title +>Использование закладок</title> + +<para +>Закладки позволяют вам отметить некоторые строки, чтобы потом было легко их найти.</para> + +<para +>Вы можете установить или убрать закладку двумя способами:</para> + +<itemizedlist> +<listitem> +<para +>Переместите курсор ввода на нужную строку и выберите пункт меню <menuchoice +><guimenu +>Закладки</guimenu +><guimenuitem +>Переключить закладку</guimenuitem +></menuchoice +> (<keycombo action="simul" +>&Ctrl;<keycap +>B</keycap +></keycombo +>)</para> +</listitem> +<listitem> +<para +>Щёлкните напротив нужной строки на границе пиктограмм.</para> +</listitem> +</itemizedlist> + + +<para +>Закладки находятся в меню <guimenu +>Закладки</guimenu +>. Каждая из них представлена в виде отдельного пункта меню с надписью, состоящей из номера строки и первых нескольких символов этой строки. Чтобы переместить курсор ввода на строку, помеченную закладкой, откройте это меню и выберите нужную закладку.</para> + +<para +>Для быстрого переходе между закладкам воспользуйтесь меню <menuchoice +><guimenu +>Закладки</guimenu +><guimenuitem +>Следующая</guimenuitem +> </menuchoice +> (<keycombo action="simul" +><keycap +>Alt</keycap +> <keycap +>Page Down</keycap +></keycombo +>) или <menuchoice +> <guimenu +>Закладки</guimenu +><guimenuitem +>Предыдущая</guimenuitem +></menuchoice +> (<keycombo action="simul" +><keycap +>Alt</keycap +><keycap +>Page Up</keycap +> </keycombo +>).</para> + +</sect1> + +<sect1 id="kate-part-auto-wrap"> + +<title +>Автоматический перенос по словам</title> + +<para +>Эта возможность позволяет отформатировать текст таким образом, чтобы ни одна строка не выходила за пределы определенной максимальной длины строки; для этого длинная строка разбивается на две или более строк, причем она разбивается на границе ближайших двух слов.</para> + +<para +>Чтобы включить или выключить её, воспользуйтесь опцией <guibutton +>Перенос строк</guibutton +> на <link linkend="config-dialog-editor-edit" +>странице правки</link +> диалогового окна <link linkend="config-dialog" +>Настройки</link +>.</para> + +<para +>Чтобы установить максимальную длину строки (в символах), воспользуйтесь параметром <link linkend="config-dialog-editor-wrap-words-at" +><guibutton +>Переносить после</guibutton +></link +> на <link linkend="config-dialog-editor-edit" +>странице правки</link +> диалогового окна <link linkend="config-dialog" +>Настройки</link +>.</para> + +<para +>Если перенос строк включен, готовьтесь к следующим полтергейстам: <itemizedlist> +<listitem +><para +>При наборе редактор автоматически вставит разрыв строки при достижении максимальной длины строки.</para +></listitem> +<listitem +><para +>При загрузке документа редактор автоматически разобьёт длинные строки на несколько строк нормальной длины (если они содержат пробелы -- иначе перенос строк невозможен).</para +></listitem> +</itemizedlist> + +</para> + +<note +><para +>В текущей версии невозможно установить перенос строк только для определенных типов файлов, или хотя бы ограничить действие этого параметра на уровне документа. Это будет исправлено в будущих версиях &kate;.</para +></note> + +</sect1> + +<sect1 id="kate-part-autoindent"> +<title +>Использование автоотступа</title> + +<para +>Компонент редактора &kate; поддерживает множество различных режимов автоматической расстановки отступов для разных форматов. Выбрать один из них можно посредством <menuchoice +><guimenu +>Сервис</guimenu +><guisubmenu +>Вставить отступ</guisubmenu +></menuchoice +>. Модуль расстановки отступов также предоставляет пункт меню <menuchoice +><guimenu +>Сервис</guimenu +><guimenuitem +>Выравнивание</guimenuitem +></menuchoice +>, который пересчитывает отступ выделенного текста или текущей строки.</para> + +<para +>Во всех режимах отступа используются параметры текущего документа, связанные с расстановкой отступов.</para> + +<tip +><para +>Все такие параметры можно задать с помощью <link linkend="config-variables" +>переменных документа</link +> и <link linkend="config-dialog-editor-filetypes" +>типов файлов</link +>.</para +></tip> + +<variablelist> + +<title +>Доступные режимы расстановки отступов</title> + +<varlistentry> +<term +>Нет</term> +<listitem +><para +>Выключить расстановку отступов.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>Обычный</term> +<listitem +><para +>Расстановка отступов аналогично предыдущей непустой строке. Вы можете совмещать его с командами расстановки отступов меню <guimenu +>Сервис</guimenu +>. </para +></listitem> +</varlistentry> + +<varlistentry +><term +>Стиль C</term> +<listitem +><para +>Для исходных текстов на языках, подобных C -- C++, C#, java, javascript и т.д. Этот режим не будет работать со сценарными языками, такими как Perl или PHP.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>Стиль SS C</term> +<listitem +><para +>Альтернативный режим для C-подобных языков, с теми же ограничениями.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>Стиль Python</term> +<listitem +><para +>Специально для сценариев на языке Python. </para +></listitem> +</varlistentry> + +<varlistentry> +<term +>XML</term> +<listitem +><para +>Отступы для разметки XML. Это не работает для HTML, а только для XHTML, из-за неправильной работы со старым стилем тегов HTML (например <br>)</para +></listitem> +</varlistentry> + +<varlistentry> +<term +>Отступ по переменным</term> +<listitem> + +<note> +<para +>Экспериментальный и может изменить своё поведение или вообще исчезнуть в будущем.</para> +</note> + +<para +>Он отличается тем, что его параметры можно настроить переменными в самом документе (или в настройках типа файла). Распознаются следующие переменные: <variablelist> +<varlistentry> +<term +>var-indent-indent-after</term> +<listitem> +<para +>Регулярное выражение строки, после которой следует добавить один отступ. var-indent-indent: Регулярное выражение строки, в которой следует добавить один отступ.</para> +</listitem> +</varlistentry> + + +<varlistentry> +<term +>var-indent-unindent</term> +<listitem> +<para +>Регулярное выражение строки, в которой следует снять один отступ.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>var-indent-triggerchars</term> +<listitem> +<para +>Список символов, приводящих к автоматическому перерасчёту отступов при наборе</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +>var-indent-handle-couples</term> +<listitem> +<para +>Список скобок для обработки. Любая комбинация квадратных, фигурных и круглых скобок. Каждые из них обрабатываются так: если найдена одна открывающая скобка, добавляется один отступ, если закрывающая - снимается.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><literal +>var-indent-couple-attribute</literal +></term> +<listitem> +<para +>При поиске открывающих/закрывающих скобок, учитывать только символы с данным атрибутом. Это должно быть имя атрибута из файла определения синтаксиса, например "Symbol". Если не указано, используется 0 (обычно это 'Normal Text').</para> +</listitem> +</varlistentry> + +</variablelist> + +</para +></listitem> +</varlistentry> + +</variablelist> + +</sect1> + +</chapter> diff --git a/tde-i18n-ru/docs/tdebase/kate/plugins.docbook b/tde-i18n-ru/docs/tdebase/kate/plugins.docbook new file mode 100644 index 00000000000..97baee24423 --- /dev/null +++ b/tde-i18n-ru/docs/tdebase/kate/plugins.docbook @@ -0,0 +1,39 @@ +<chapter id="plugins"> + +<chapterinfo> +<authorgroup> +<author +>&Anders.Lund; &Anders.Lund.mail;</author> +<othercredit role="translator" +><firstname +>Андрей</firstname +><surname +>Балагута</surname +><affiliation +><address +><email +>uj2@mail.ru</email +></address +></affiliation +><contrib +>Перевод на русский</contrib +></othercredit +> +</authorgroup> +</chapterinfo> + +<title +>Работа с модулями</title> + +<para +>В Kate предусмотрены две формы модулей - модули собственно для &kate; и модули для компонента редактора. Последний используется другими приложожениями, такими как KDevelop, Quanta, KWrite.</para> + +<para +>Оба типа модулей настраиваются в <link linkend="configuring-kate-configdialog" +>окне параметров</link +>, в котором также можно настроить сами модули, если они это предусматривают</para> + +<para +>Многие модули помещены в пакет tdeaddons, другие модно найти поиском в Интернет. несколько модулей поставляются вместе с компонентом редактора -- модуль автозавершения, заклвдок, вставки файлов, тезауруса, проверки орфографии и поиска по мере набора.</para> + +</chapter> diff --git a/tde-i18n-ru/docs/tdebase/kate/regular-expressions.docbook b/tde-i18n-ru/docs/tdebase/kate/regular-expressions.docbook new file mode 100644 index 00000000000..cf75800799f --- /dev/null +++ b/tde-i18n-ru/docs/tdebase/kate/regular-expressions.docbook @@ -0,0 +1,1208 @@ +<appendix id="regular-expressions"> +<appendixinfo> +<authorgroup> +<author +>&Anders.Lund; &Anders.Lund.mail;</author> +<othercredit role="translator" +><firstname +>Андрей</firstname +><surname +>Балагута</surname +><affiliation +><address +><email +>uj2@mail.ru</email +></address +></affiliation +><contrib +>Перевод на русский</contrib +></othercredit +> +</authorgroup> +</appendixinfo> + +<title +>Регулярные выражения</title> + +<synopsis +>Это приложение содержит краткое, но, надеюсь, достаточно ясное введение в мир <emphasis +>регулярных выражений</emphasis +>. Здесь описаны регулярные выражения в той форме, в которой они используются в &kate;; к сожалению, они не совместимы с с регулярными выражениями perl и <command +>grep</command +>.</synopsis> + +<sect1> + +<title +>Введение</title> + +<para +><emphasis +>Регулярные выражения</emphasis +> - это средство, позволяющее описывать содержание строк в некотором формализованном виде, что даёт возможность приложениям определять принадлежность той или иной строки определённому формату. В дополнение ко всему некоторые приложения могут сохранять части совпавшей строки для их последующего использования.</para> + +<para +>Приведём небольшой пример. Допустим, вы хотите найти в тексте все абзацы, которые начинаются с фамилий <quote +>Петров</quote +> или <quote +>Иванов</quote +>, за которыми следует любая форма глагола <quote +>рассказывать</quote +> (для чистоты эксперимента возьмём всего две формы <quote +>рассказал</quote +> и <quote +>рассказывал</quote +>).</para> + +<para +>С помощью обычного поиска вам бы понадобилось сначала найти фамилию <quote +>Петров</quote +>, возможно, дополненную буквами <quote +>рассказ</quote +>, что-то вроде этого: <userinput +>Петров рассказ</userinput +>. При поиске совпадений пришлось бы пропускать все строки, которые стоят не в начале абзаца. После этого последовал бы повторный поиск для второй фамилии...</para> + +<para +>Регулярные выражения позволяют произвести такую операцию поиска за один раз, причём с гораздо большей точностью.</para> + +<para +>Регулярные выражения содержат правила, позволяющие точно выразить вид строки для поиска. Наш пример можно выразить словесно: <quote +>Строка, начинающаяся со слов <quote +>Петров</quote +> или <quote +>Иванов</quote +>, перед которыми могут стоять до четырёх пробелов или символов табуляции, после фамилии должен стоять пробел, за пробелом - <quote +>рассказ</quote +>, после чего может (необязательно!) стоять суффикс <quote +>ыв</quote +>, и, наконец, суффикс <quote +>ал</quote +></quote +>. Посмотрите, как это можно записать в форме регулярного выражения:</para +> <para +><userinput +>^[ \t]{0,4}(Петров|Иванов) рассказ(ыв)?ал</userinput +></para> + +<para +>Этот пример демонстрирует четыре основных понятия современных регулярных выражений:</para> + +<itemizedlist> +<listitem +><para +>Шаблоны</para +></listitem> +<listitem +><para +>Утверждения</para +></listitem> +<listitem +><para +>Квантификаторы</para +></listitem> +<listitem +><para +>Обратные ссылки</para +></listitem> +</itemizedlist> + +<para +>Значок <literal +>^</literal +>, с которого начинается выражение - это утверждение, которое подтверждает совпадение только в том случае, если совпавшая цепочка символов начинается с новой строки.</para> + +<para +><literal +>[ \t]</literal +> и <literal +>(Петров|Иванов) рассказ(ыв)?ал</literal +> - это шаблоны. Первый представляет собой <emphasis +>символьный класс</emphasis +>, который совпадает либо с пробелом, либо с символом табуляции. Второй содержит вложенный шаблон, совпадающий со словами <literal +>Петров</literal +> <emphasis +>или</emphasis +> <literal +>Иванов</literal +>, затем идёт проверка на точное совпадение со строкой <literal +> рассказ</literal +>, потом ещё один вложенный шаблон, который определяет вхождение символов <literal +>ыв</literal +>, и, в самом конце, проверка на точное совпадение с символами <literal +>ал</literal +></para> + +<para +>Строка <literal +>{0,4}</literal +> и символ вопроса после вложенного шаблона <literal +>(ыв)</literal +> - это квантификаторы. Первый можно трактовать следующим образом: <quote +>возможен повтор предыдущего символа от 0 до 4 раз</quote +>. Второй квантификатор действует аналогично, позволяя повторить стоящий перед ним вложенный шаблон 0 или 1 раз.</para> + +<para +>Все приложения, работающие с регулярными выражениями и поддерживающие <emphasis +>обратные ссылки</emphasis +>, при совпадении сохраняют всю строку и вложенные шаблоны в некоторой области памяти и предоставляют средства для получения этих значений. Поэтому мы можем получить всю совпавшую строку (при поиске в редакторе она обычно выделяется цветом) или, например, только фамилию.</para> + +<para +>Как вы могли убедиться на предыдущем примере, регулярные выражения - это очень эффективное средство поиска, позволяющее найти именно то, что вам нужно, без особых усилий.</para> + +<para +>В следующих разделах подробно рассмотрены шаблоны, символьные классы, утверждения, квантификаторы и обратные ссылки. В конце этой главы вы найдёте несколько полезных примеров.</para> + +</sect1> + +<sect1 id="regex-patterns"> + +<title +>Шаблоны</title> + +<para +>Шаблоны состоят из символов и символьных классов. Допускается вложенность, в этом случае вложенные шаблоны заключаются в круглые скобки.</para> + +<sect2> +<title +>Управляющие последовательности</title> + +<para +>И в шаблонах, и в символьных классах некоторые символы имеют специальное значение. Если вы хотите использовать эти символы при поиске именно как символы, нужно записать их определённым образом, чтобы анализатор регулярных выражений считал их обычными литералами.</para> + +<para +>Делается это очень просто, нужно всего лишь поставить перед таким символом обратную косую черту (<literal +>\</literal +>).</para> + + +<para +>Анализатор регулярных выражений игнорирует обратную черту перед символами, которые не имеют специального значения в контексте; например, если вы вместо обычного символа <quote +>j</quote +> напишете <userinput +>\j</userinput +>, анализатор его воспримет просто как <quote +>j</quote +>. Таким образом, если вы не уверены, имеет ли символ специальное значение, можете спокойно ставить перед ним обратную косую черту.</para> + +<para +>Для указания символа обратной косой черты (в качестве литерала), продублируйте его: <userinput +>\\</userinput +>.</para> + +</sect2> + +<sect2> +<title +>Символьные классы и сокращения</title> + +<para +><emphasis +>Символьный класс</emphasis +> - это выражение, которое позволяет проверить один символ на принадлежность определённому набору символов. Чтобы использовать его в регулярных выражениях, нужно в квадратных скобках записать все верные символы или сокращённые классы, описанные ниже.</para> + +<para +>Простые символьные классы содержат один или несколько символов, например, <userinput +>[abc]</userinput +> (проверка на любой из символов <quote +>a</quote +>, <quote +>b</quote +> или <quote +>c</quote +>) или <userinput +>[0123456789]</userinput +> (проверка на любую цифру).</para> + +<para +>Поскольку буквы и цифры упорядоченны логически, вы можете сокращать классы, используя диапазоны: <userinput +>[a-c]</userinput +> аналогично <userinput +>[abc]</userinput +>, <userinput +>[0-9]</userinput +> аналогично <userinput +>[0123456789]</userinput +>. Можно комбинировать диапазоны с обычным перечислением символов: <userinput +>[a-fynot1-38]</userinput +> (проверка на любой из символов <quote +>a</quote +>,<quote +>b</quote +>,<quote +>c</quote +>,<quote +>d</quote +>, <quote +>e</quote +>,<quote +>f</quote +>,<quote +>y</quote +>,<quote +>n</quote +>,<quote +>o</quote +>,<quote +>t</quote +>, <quote +>1</quote +>,<quote +>2</quote +>,<quote +>3</quote +> или <quote +>8</quote +>).</para> + +<para +>Чтобы проверить символ без учёта регистра в любом случае (регулярное выражение может учитывать или не учитывать регистр символов), нужно написать примерно следующее: <userinput +>[aAbB]</userinput +>.</para> + +<para +>Можно создать <quote +>исключающий</quote +> класс, который проверяет символ на <quote +>не вхождение</quote +> в заданный набор символов. Обычный символьный класс превращается в исключающий добавлением символа <quote +><literal +>^</literal +></quote +> перед набором символов: </para> + +<para +><userinput +>[^abc]</userinput +> - проверка на любой символ, <emphasis +>кроме</emphasis +> <quote +>a</quote +>, <quote +>b</quote +> и <quote +>c</quote +>.</para> + +<para +>В дополнение к обычным литералам можно использовать следующие сокращения: <variablelist> + +<varlistentry> +<term +><userinput +>\a</userinput +></term> +<listitem +><para +>Проверка на <acronym +>ASCII</acronym +>-символ звонка (BEL, 0x07).</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>\f</userinput +></term> +<listitem +><para +>Проверка на <acronym +>ASCII</acronym +>-символ перевода страницы (FF, 0x0C).</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>\n</userinput +></term> +<listitem +><para +>Проверка на символ перевода строки (LF, 0x0A, символ перехода на новую строку в Unix).</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>\r</userinput +></term> +<listitem +><para +>Проверка на символ возврата каретки (CR, 0x0D).</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>\t</userinput +></term> +<listitem +><para +>Проверка на символ горизонтальной табуляции (HT, 0x09)</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>\v</userinput +></term> +<listitem +><para +>Проверка на символ вертикальной табуляции (VT, 0x0B).</para +></listitem> +</varlistentry> +<varlistentry> +<term +><userinput +>\xhhhh</userinput +></term> + +<listitem +><para +>Проверка на символ в кодировке Unicode, соответствующий номеру hhhh (в пределах 0x0000-0xFFFF). \0ooo (первый символ - ноль) - проверка на символ в кодировке <acronym +>ASCII</acronym +>/Latin-1, соответствующий восьмеричному номеру ooo (в пределах 0-0377).</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>.</userinput +> (точка)</term> +<listitem +><para +>Проверка на любой символ (включая переход на новую строку).</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>\d</userinput +></term> +<listitem +><para +>Проверка на цифровой символ. Аналогично классу <literal +>[0-9]</literal +>.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>\D</userinput +></term> +<listitem +><para +>Проверка на любой символ, не являющийся цифровым. Аналогично <literal +>[^0-9]</literal +> или <literal +>[^\d]</literal +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>\s</userinput +></term> +<listitem +><para +>Проверка на пробельный символ. Фактически аналогично классу <literal +>[ \t\n\r]</literal +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>\S</userinput +></term> +<listitem +><para +>Проверка на любой символ, не являющийся пробельным. Фактически равнозначно <literal +>[^ \t\r\n]</literal +> и аналогично <literal +>[^\s]</literal +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>\w</userinput +></term> +<listitem +><para +>Проверка на любой алфавитно-цифровой символ (как вы поняли, сюда включаются все буквы и цифры). Подчёркивание (<literal +>_</literal +>) не входит в этот класс, в отличие от регулярных выражений perl. Это сокращение аналогично классу <literal +>[a-zA-Z0-9]</literal +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>\W</userinput +></term> +<listitem +><para +>Проверка на любой символ, не являющийся алфавитно-цифровым. Аналогично классу <literal +>[^a-zA-Z0-9]</literal +> или <literal +>[^\w]</literal +></para +></listitem> +</varlistentry> + + +</variablelist> + +</para> + +<para +>Аббревиатурные классы можно помещать в обычные классы; например, чтобы выполнить проверку на алфавитно-цифровой символ, точку или пробел, вы можете написать так: <userinput +>[\w \.]</userinput +></para +> + +<note +> <para +>В текущей версии не поддерживается нотация классов POSIX (<userinput +>[:<class name>:]</userinput +>).</para +> </note> + +<sect3> +<title +>Символы со специальным значением в символьных классах</title> + +<para +>Ниже перечислены символы, имеющие специальное значение в определениях символьных классов (<quote +>[]</quote +>). Для использования в качестве обычных литералов они должны быть предварены обратной косой чертой.</para> + +<variablelist> +<varlistentry> +<term +><userinput +>]</userinput +></term> +<listitem +><para +>Закрывает символьный класс. Этот символ должен быть предварён обратной косой чертой, кроме тех случаев, когда стоит непосредственно в начале класса или сразу после символа <userinput +>^</userinput +></para +></listitem> +</varlistentry> +<varlistentry> +<term +><userinput +>^</userinput +></term> +<listitem +><para +>Если стоит в начале, объявляет исключающий класс. Чтобы использовать как литерал в начале класса, нужно поставить обратную косую черту.</para +></listitem +> +</varlistentry> +<varlistentry> +<term +><userinput +>-</userinput +> (дефис)</term> +<listitem +><para +>Определяет логический диапазон. Чтобы использовать в качестве литерала, всегда нужно ставить обратную косую черту.</para +></listitem> +</varlistentry> +<varlistentry> +<term +><userinput +>\</userinput +> (обратная черта)</term> +<listitem +><para +>Спецсимвол (escape character). Чтобы использовать как литерал, продублируйте.</para +></listitem> +</varlistentry> + +</variablelist> + +</sect3> + +</sect2> + +<sect2> + +<title +>Альтернативы: проверка на <quote +>один из</quote +> нескольких шаблонов</title> + +<para +>Если вы хотите выполнить проверку на один (любой) шаблон из определённого набора, используйте альтернативы. Чтобы объявить альтернативу, нужно все шаблоны набора записать через канал (<literal +>|</literal +>).</para> + +<para +>Например, чтобы найти любое из имён <quote +>Вася</quote +> и <quote +>Петя</quote +>, нужно использовать такое выражение: <userinput +>Вася|Петя</userinput +>.</para> + +</sect2> + +<sect2> + +<title +>Вложенные шаблоны</title> + +<para +><emphasis +>Вложенными</emphasis +> называются шаблоны, заключённые в круглые скобки. Они используются в разных целях:</para> + +<sect3> + +<title +>Определение альтернатив</title> + +<para +>Используя вложенные шаблоны, вы можете группировать набор альтернатив внутри сложных шаблонов. Напомню, альтернативы разделяются символом перенаправления через канал (<quote +>|</quote +>).</para> + +<para +>Например, чтобы найти одно из слов <quote +>int</quote +>, <quote +>float</quote +> или <quote +>double</quote +>, вы можете использовать шаблон <userinput +>int|float|double</userinput +>. Если же вы хотите найти одно из этих слов, за которым идут пробелы, а за ними какие-то символы, то вы должны оформить альтернативу как вложенный шаблон: <userinput +>(int|float|double)\s+\w+</userinput +>.</para> + +</sect3> + +<sect3> + +<title +>Захват совпавшего текста (обратные ссылки)</title> + +<para +>Чтобы создать обратную ссылку, оформите как вложенный шаблон ту часть выражения, которую нужно запомнить.</para> + +<para +>Например, если вы хотите найти два одинаковых слова, разделённых запятой и, возможно, пробелами, можно использовать такое выражение: <userinput +>(\w+),\s*\1</userinput +>. Вложенный шаблон <literal +>\w+</literal +> ищет цепочку алфавитно-цифровых символов, а всё выражение ищет ту же цепочку, за которой следует запятая, далее могут идти пробелы, а за ними точно такая же цепочка (строка <literal +>\1</literal +> ссылается на <emphasis +>первый вложенный шаблон, заключённый в круглые скобки</emphasis +>).</para> + +<!-- <para +>See also <link linkend="backreferences" +>Back references</link +>.</para +> --> + +</sect3> + +<sect3 id="lookahead-assertions"> +<title +>Просматривающие утверждения</title> + +<para +>Просматривающее утверждение - это вложенный шаблон, который начинается с символов <literal +>?=</literal +> или <literal +>?!</literal +>.</para> + +<para +>Например, чтобы найти слово <quote +>Билл</quote +>, за которым может следовать что угодно, кроме слова <quote +> Гейтс</quote +>, нужно составить такое выражение: <userinput +>Билл(?! Гейтс)</userinput +> (оно совпадёт с <quote +>Билл Клинтон</quote +>, <quote +>Билли хороший мальчик</quote +>, но не с именем известного магната).</para> + +<para +>Вложенные шаблоны, использующиеся в качестве утверждений, не запоминаются.</para> + +<para +>Смотрите также раздел <link linkend="assertions" +><quote +>Утверждения</quote +></link +></para> + +</sect3> + +</sect2> + +<sect2 id="special-characters-in-patterns"> +<title +>Символы со специальным значением в шаблонах</title> + +<para +>Следующие символы имеют специальное значение в шаблонах, поэтому, чтобы использовать их в качестве обычных символов, нужно впереди ставить обратную черту: <variablelist> + +<varlistentry> +<term +><userinput +>\</userinput +> (обратная черта)</term> +<listitem +><para +>С него должны начинаться все спецсимволы.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>^</userinput +></term> +<listitem +><para +>Проверка на начало строки.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>$</userinput +></term> +<listitem +><para +>Проверка на конец строки.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>()</userinput +> (левая и правая круглые скобки)</term> +<listitem +><para +>Объявление вложенного шаблона.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>{}</userinput +> (левая и правая фигурные скобки)</term> +<listitem +><para +>Объявление числового квантификатора.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>[]</userinput +> (левая и правая квадратные скобки)</term> +<listitem +><para +>Объявление символьного класса.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>|</userinput +> (вертикальная черта)</term> +<listitem +><para +>Логическое ИЛИ. Используется для разделения альтернатив.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>+</userinput +> (плюс)</term> +<listitem +><para +>Квантификатор <quote +>один или более</quote +>.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>*</userinput +> (звёздочка)</term> +<listitem +><para +>Квантификатор <quote +>ноль или более</quote +>.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>?</userinput +> (знак вопроса)</term> +<listitem +><para +>Необязательный символ. Можно считать его квантификатором <quote +>ноль или один</quote +>.</para +></listitem> +</varlistentry> + +</variablelist> + +</para> + +</sect2> + +</sect1> + +<sect1 id="quantifiers"> +<title +>Квантификаторы</title> + +<para +><emphasis +>Квантификатор</emphasis +> выполняют проверку на определённое количество повторений символа, шаблона или символьного класса.</para> + +<para +>Квантификаторы записываются в фигурных скобках (<literal +>{</literal +> и <literal +>}</literal +>). Общий вид квантификатора: <literal +>{[минимальное-количество-совпадений][,[максимальное-количество-совпадений]]}</literal +> </para> + +<para +>Использование квантификаторов лучше пояснить на примерах: <variablelist> + +<varlistentry> +<term +><userinput +>{1}</userinput +></term> +<listitem +><para +>Ровно одно появление</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>{0,1}</userinput +></term> +<listitem +><para +>Ноль или одно появление</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>{,1}</userinput +></term> +<listitem +><para +>То же самое, но набирать меньше ;)</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>{5,10}</userinput +></term> +<listitem +><para +>Как минимум 5 повторений, максимум - 10.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>{5,}</userinput +></term> +<listitem +><para +>Как минимум 5 повторений (без верхней границы).</para +></listitem> +</varlistentry> + +</variablelist> + +</para> + +<para +>Также определены несколько сокращений: <variablelist> + +<varlistentry> +<term +><userinput +>*</userinput +> (звёздочка)</term> +<listitem +><para +>аналогично <literal +>{0,}</literal +>, найти любое количество повторений (вплоть до нуля повторений).</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>+</userinput +> (плюс)</term> +<listitem +><para +>аналогично <literal +>{1,}</literal +>, как минимум одно появление.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>?</userinput +> (знак вопроса)</term> +<listitem +><para +>аналогично <literal +>{0,1}</literal +>, ноль или одно появление.</para +></listitem> +</varlistentry> + +</variablelist> + +</para> + +<sect2> + +<title +>Максимально возможная подстрока</title> + +<para +>Используя квантификаторы без ограничений максимума, регулярное выражение захватывает строку по максимуму, такое поведение называется <emphasis +>жадным</emphasis +>.</para> + +<para +>Современные анализаторы позволяют определять как жадные, так и не жадные регулярные выражения. В основном, это проявляется в соответствующих элементах графического интерфейса, например, в диалоге поиска может быть опция <quote +>Минимальное совпадение</quote +>.</para> + +</sect2> + +<sect2> +<title +>Примеры использования</title> + +<para +>Здесь приведено несколько примеров использования квантификаторов.</para> + +<variablelist> + +<varlistentry> +<term +><userinput +>^\d{4,5}\s</userinput +></term> +<listitem +><para +>Совпадёт с <quote +>1234 вперёд</quote +> и <quote +>12345 стоп</quote +>, но не совпадёт ни с <quote +>567 восемь</quote +>, ни с <quote +>223459 много</quote +>.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>\s+</userinput +></term> +<listitem +><para +>Проверка на один или более пробельных символов.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>(ля){1,}</userinput +></term> +<listitem +><para +>Совпадёт с <quote +>ляляля</quote +> и с подстрокой <quote +>ля</quote +> в словах <quote +>кляча</quote +> и <quote +>земля</quote +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>/?></userinput +></term> +<listitem +><para +>Совпадёт с <quote +>/></quote +> в <quote +><closeditem/></quote +>, а также с <quote +>></quote +> в строке <quote +><openitem></quote +>.</para +></listitem> +</varlistentry> + +</variablelist> + +</sect2> + +</sect1> + +<sect1 id="assertions"> +<title +>Утверждения</title> + +<para +><emphasis +>Утверждения</emphasis +> накладывают дополнительные условия на проверку регулярного выражения.</para> + +<para +>Утверждение не проверяет символы, скорее, оно анализирует совпавшую строку перед тем как подтвердить совпадение. Например, утверждение <emphasis +>граница слова</emphasis +> не пытается найти символ-разделитель слов, наоборот, оно проверяет, что в данной позиции нет алфавитно-цифрового символа. Это означает, что утверждение будет верно даже в случае отсутствия символа-разделителя, например, в конце строки поиска.</para> + +<para +>Некоторые утверждения являются шаблонами, но они лишь проверяют, есть или нет в данном месте строки совпадение заданному шаблону, не включая его в конечный результат (т.е. в "совпавший текст").</para> + +<para +>Регулярные выражения, описанные в этом руководстве, поддерживают следующие утверждения: <variablelist> + +<varlistentry +> +<term +><userinput +>^</userinput +> (начало строки)</term +> +<listitem +><para +>Проверка на начало строки.</para +> <para +>Выражение <userinput +>^Пётр</userinput +> совпадёт с <quote +>Пётр</quote +> в строке <quote +>Пётр, здравствуйте!</quote +>, но не в строке <quote +>Здравствуйте, Пётр!</quote +>. </para +> </listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>$</userinput +> (конец строки)</term> +<listitem +><para +>Проверка на конец строки поиска.</para> + +<para +>Выражение <userinput +>ты\?$</userinput +> совпадёт с последним <quote +>ты</quote +> в строке <quote +>- Ты не сделаешь этого! - А ты?</quote +>, но не совпадёт ни с какой частью строки <quote +>Ты не сделал этого, так?</quote +>.</para> + +</listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>\b</userinput +> (граница слова)</term> +<listitem +><para +>Проверяет, есть ли в данном месте с одной стороны алфавитно-цифровой символ, а с другой - не алфавитно-цифровой (необязательно разделитель!).</para> +<para +>Это утверждение используется для поиска границ слов; например, можно использовать два таких утверждения, чтобы найти целое слово. Выражение <userinput +>\bиз\b</userinput +> совпадёт с отдельным словом <quote +>из</quote +> во фразе <quote +>Он выпал из этого окна, хорошо хоть, что тут низко</quote +>, но не совпадёт с <quote +>из</quote +> в слове <quote +>низко</quote +>.</para +></listitem> + +</varlistentry> + +<varlistentry> +<term +><userinput +>\B</userinput +> (нет границы слова)</term> +<listitem +><para +>Действие этого утверждения обратно утверждению <quote +>\b</quote +>.</para> +<para +>Это значит, что данное утверждение будет совпадать, например, в середине слова: выражение <userinput +>\Bце\B</userinput +> совпадёт с <quote +>це</quote +> в строке <quote +>сцена</quote +>, но не в <quote +>целое</quote +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>(?=ШАБЛОН)</userinput +> (подтверждающий просмотр)</term> +<listitem +><para +>Просматривающие утверждения действуют аналогично обычным шаблонам, с той лишь разницей, что текст, совпавший (или не совпавший, в зависимости от типа просмотра) с утверждением, не будет включен в результирующее совпадение. Подтверждающий просмотр проверяет текст на предмет совпадения с <emphasis +>ШАБЛОНОМ</emphasis +> утверждения.</para> +<para +>Выражение <userinput +>программ(?=\w)</userinput +> совпадёт с <quote +>программ</quote +> в слове <quote +>программист</quote +>, но не во фразе <quote +>Он написал много хороших программ!</quote +>.</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><userinput +>(?!ШАБЛОН)</userinput +> (отрицающий просмотр)</term> + +<listitem +><para +>Отрицающий просмотр проверяет текст на предмет несовпадения с <emphasis +>ШАБЛОНОМ</emphasis +>.</para> +<para +>Выражение <userinput +>const \w+\b(?!\s*&)</userinput +> совпадёт с <quote +>const char</quote +> в строке <quote +>const char* foo</quote +>, но не совпадёт с <quote +>const QString</quote +> в <quote +>const QString& bar</quote +>, поскольку <quote +>&</quote +> совпадает с шаблоном отрицающего просмотра.</para> +</listitem> +</varlistentry> + +</variablelist> + +</para> + +</sect1> + +<!-- TODO sect1 id="backreferences"> + +<title +>Back References</title> + +<para +></para> + +</sect1 --> + +</appendix> |