From c83a9350b6954e046bd382cdb78cb0dce5774c84 Mon Sep 17 00:00:00 2001 From: Israel- Date: Wed, 20 Dec 2017 14:15:21 -0600 Subject: [PATCH 1/9] Revert "Documentation fixes." This reverts commit 6303419cf81d6940a59660811ef28783745d5ab9. --- jwm.1.in | 5 +++-- xslt/jwm-2.4.xslt | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/jwm.1.in b/jwm.1.in index 6e90ce74..c7d159a3 100644 --- a/jwm.1.in +++ b/jwm.1.in @@ -1736,8 +1736,8 @@ It is possible to bind multiple key combinations to the same action. Mouse bindings are configured using \fBMouse\fP tags. The \fBcontext\fP attribute determines the context in which the binding applies, the \fBbutton\fP attribute species the mouse button, and -the (optional) \fBmask\fP attribute specifies the key mask that must be in -effect for the binding to match. Finally, the text of the \fBMouse\fP tag +the (optional) \fBmask\fP specifies the key mask that must be in effect +for the binding to match. Finally, the text of the \fBMouse\fP tag determines the action to perform (see \fBKEY BINDINGS\fP for a list of actions). The \fBbutton\fP is a mouse button number, starting at \fB1\fP (typically the left button). A positive value for the button @@ -1785,6 +1785,7 @@ Other bindings: .P Button 1 (typically the left button): .RS +Over the close button, clicking closes the window. Over a task bar, restores or minimizes the window. Over a pager, switches the active desktop. .RE diff --git a/xslt/jwm-2.4.xslt b/xslt/jwm-2.4.xslt index cb2d6e20..8d1d91a5 100644 --- a/xslt/jwm-2.4.xslt +++ b/xslt/jwm-2.4.xslt @@ -5,6 +5,7 @@ xsltproc jwm-2.4.xsl oldjwmrc > newjwmrc All relevant JWM configuration files will need to be updated. + Note: auto-hide trays are assumed to hide to the bottom of the screen. --> Date: Wed, 20 Dec 2017 14:21:44 -0600 Subject: [PATCH 2/9] began cmake conversion work. started a configure script to replace the old one, but haven't gotten too far --- .gitignore | 1 + CMakeLists.txt | 308 +++++++++++++++++++++++++++++++ cmake/configure | 233 +++++++++++++++++++++++ cmake/modules/FindCairo.cmake | 36 ++++ cmake/modules/FindFreeType.cmake | 46 +++++ cmake/modules/FindFribidi.cmake | 49 +++++ cmake/modules/FindRSVG.cmake | 6 + 7 files changed, 679 insertions(+) create mode 100644 CMakeLists.txt create mode 100755 cmake/configure create mode 100644 cmake/modules/FindCairo.cmake create mode 100644 cmake/modules/FindFreeType.cmake create mode 100644 cmake/modules/FindFribidi.cmake create mode 100644 cmake/modules/FindRSVG.cmake diff --git a/.gitignore b/.gitignore index 4459c33e..8143441c 100644 --- a/.gitignore +++ b/.gitignore @@ -19,3 +19,4 @@ po/stamp-* src/Makefile src/jwm doc +bin/ diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 00000000..08899d0c --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,308 @@ +cmake_minimum_required(VERSION 2.8) +project(jwm C) +set (PACKAGE_NAME "${PROJECT_NAME}") +set(DATE "") +string(TIMESTAMP DATE) +set(VERSION_MAJOR 2) +set(VERSION_MINOR 4) +set(VERSION_REV 0) +set(SYSCONF "${CMAKE_INSTALL_PREFIX}/etc/") +set(PACKAGE_BUGREPORT "joewing@joewing.net") +set(AUTHOR "Joe Wingbermuehle") +set(PACKAGE_URL "http://joewing.net/projects/jwm") +set(VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_REV}") +set(PACKAGE_VERSION "${VERSION}") +set(PACKAGE_STRING "Joe's Window Manager ${VERSION}") +set(PACKAGE_TARNAME "${PROJECT_NAME}") +set(LOCALE_DIR "/locale") +set(LOCALEDIR "${CMAKE_INSTALL_PREFIX}${LOCALE_DIR}") +set(ARCH_INDEP_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}") +## TODO... make configure script that does: mkdir bin && cd bin && cmake .. +set(USE_ICONS true) +## path for custom cmake modules +set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/modules/") + +## DON'T build in here!!!! OK?!?!?! +if ( ${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR} ) + message( FATAL_ERROR "In-source builds not allowed. Please make a new directory (called a build directory) and run CMake from there. You may need to remove CMakeCache.txt." ) +endif() + +## first line of our generated config.h file +set(SYSTEM_CONFIG "${SYSCONF}system.jwmrc") + +string(COMPARE EQUAL "${CMAKE_BUILD_TYPE}" "Debug" D_RES) +set(DEBUG "${D_RES}") +######## FIND STUFF #################### + +##### LIBRARIES ##### +## We need X11 +find_package(X11 REQUIRED) +string(COMPARE EQUAL "${X11_INCLUDE_DIR}" "" x11_result) +if( x11_result ) + message(FATAL_ERROR "X11 headers are not found") +endif() +set(ALL_LIBS "${X11_LIBRARIES}" "${X11_X11_LIB}") +set(JWM_INCLUDES "${X11_X11_INCLUDE_PATH}") +#libXpm +set(USE_XPM ${X11_Xpm_FOUND}) +if(X11_Xpm_FOUND) + ## ALL_LIBS is the variable to store all the libraries we find + set(ALL_LIBS "${ALL_LIBS}" "${X11_Xpm_LIB}") + ## JWM_INCLUDES is the variable to contain all the includes we find + set(JWM_INCLUDES "${JWM_INCLUDES}" "${X11_Xpm_INCLUDE_PATH}") +endif() + +#libXinerama +set(USE_XINERAMA ${X11_Xinerama_FOUND}) +if(X11_Xinerama_FOUND) + set(ALL_LIBS "${ALL_LIBS}" "${X11_Xinerama_LIB}") + set(JWM_INCLUDES "${JWM_INCLUDES}" "${X11_Xinerama_INCLUDE_PATH}") +endif() + +#libXft +find_package(FreeType QUIET) +if(FREETYPE_FOUND) + message("FREETYPE found") + set(ALL_LIBS "${ALL_LIBS}" "${X11_Xft_LIB}" "${FREETYPE_LIBRARIES}") + set(JWM_INCLUDES "${JWM_INCLUDES}" "${X11_Xft_INCLUDE_PATH}" "${FREETYPE_INCLUDE_DIRS}") +endif() +set(USE_XFT ${FREETYPE_FOUND}) + +#libXmu +set(USE_XMU ${X11_Xmu_FOUND}) +if(X11_Xmu_FOUND) + message("Found X11 Xmu") + set(ALL_LIBS "${ALL_LIBS}" "${X11_Xmu_LIB}") + set(JWM_INCLUDES "${JWM_INCLUDES}" "${X11_Xmu_INCLUDE_PATH}") +endif() + +#libXrender +set(USE_XRENDER ${X11_Xrender_FOUND}) +if(X11_Xrender_FOUND) + set(ALL_LIBS "${ALL_LIBS}" "${X11_Xrender_LIB}") + set(JWM_INCLUDES "${JWM_INCLUDES}" "${X11_Xrender_INCLUDE_PATH}") +endif() + +#libXext +if(X11_Xext_FOUND) + set(ALL_LIBS "${ALL_LIBS}" "${X11_Xext_LIB}") + #set(JWM_INCLUDES "${JWM_INCLUDES}" "${}") +endif() + +#libpng +find_package(PNG QUIET) +set(USE_PNG ${PNG_FOUND}) +if(PNG_FOUND) + set(ALL_LIBS "${ALL_LIBS}" "${PNG_LIBRARIES}") + set(JWM_INCLUDES "${JWM_INCLUDES}" "${PNG_INCLUDE_DIRS}") +endif() + +#libjpeg +find_package(JPEG QUIET) +set(USE_JPEG ${JPEG_FOUND}) +if(PNG_FOUND) + set(ALL_LIBS "${ALL_LIBS}" "${JPEG_LIBRARIES}") + set(JWM_INCLUDES "${JWM_INCLUDES}" "${JPEG_INCLUDE_DIRS}") +endif() +#fribidi +find_package(Fribidi QUIET) +set(USE_FRIBIDI ${FRIBIDI_FOUND}) +if(FRIBIDI_FOUND) + set(ALL_LIBS "${ALL_LIBS}" "${FRIBIDI_LIBRARIES}") + set(JWM_INCLUDES "${JWM_INCLUDES}" "${FRIBIDI_INCLUDE_DIR}") +endif() + +#Cairo +find_package(Cairo) +set(USE_CAIRO ${CAIRO_FOUND}) +if(CAIRO_FOUND) + set(ALL_LIBS "${ALL_LIBS}" "${CAIRO_LIBRARIES}") + set(JWM_INCLUDES "${JWM_INCLUDES}" "${CAIRO_INCLUDE_DIRS}") +endif() + +#librsvg2 +find_package(RSVG) +set(USE_RSVG ${RSVG_FOUND}) +if(RSVG_FOUND) + message("Found RSVG") + set(ALL_LIBS "${ALL_LIBS}" "${RSVG_LIBRARIES}") + set(JWM_INCLUDES "${JWM_INCLUDES}" "${RSVG_INCLUDE_DIRS}") +endif() + +#nanosvg +#find_package( QUIET) +#set(USE_ ${}) +#if(_FOUND) +# set(ALL_LIBS "${ALL_LIBS}" "${_LIBRARIES}") +# set(JWM_INCLUDES "${JWM_INCLUDES}" "${_INCLUDE_DIR}") +#endif() + +##### HEADERS ##### +include (CheckIncludeFiles) +function(CheckHeader string1) + string(TOUPPER ${string1} OUTVAR) + string(REPLACE . _ DEFINE_NAME ${OUTVAR}) + string(REPLACE / _ DEFINE_NAME ${DEFINE_NAME}) + string(REPLACE / _ DEFINE_NAME ${DEFINE_NAME}) + check_include_files("${string1}" "HAVE_${DEFINE_NAME}") +endfunction() + +find_path(ALLOCA alloca.c) +set(C_ALLOCA "${ALLOCA}") + +## check list of header files +set(HEADERS_TO_CHECK "alloca.h;ctype.h;iconv.h;inttypes.h;jpeglib.h;langinfo.h;libintl.h;locale.h;memory.h;signal.h;stdarg.h;stdint.h;stdio.h;stdlib.h;strings.h;string.h;sys/select.h;sys/stat.h;sys/time.h;sys/types.h;sys/wait.h;time.h;unistd.h;X11/cursorfont.h;X11/extensions/Xrender.h;X11/keysym.h;X11/Xatom.h;X11/Xlib.h;X11/xpm.h;X11/Xproto.h;X11/Xresource.h;X11/Xutil.h;") +message("Checking for header files") +foreach(loop_var ${HEADERS_TO_CHECK}) + CheckHeader("${loop_var}") +endforeach() + +##### FUNCTIONS ##### +include (CheckFunctionExists) +## FUNCTION CHECKER +function (CheckFunctions FunName) + string(TOUPPER ${FunName} OUTVAR) + check_function_exists(${FunName} "HAVE_${OUTVAR}") +endfunction() + +set(FUNCTIONS_TO_CHECK +"CFLocaleCopyCurrent;CFPreferencesCopyAppValue;alloca;dcgettext;gettext;iconv;putenv;setlocale;unsetenv") +message("Checking for functions") +foreach(loop_var ${FUNCTIONS_TO_CHECK}) + CheckFunctions("${loop_var}") +endforeach() + +###### LIBS ############ +#check_library_exists(X11 XOpenDisplay "" USE_X11) +check_library_exists(Xrender XRenderComposite "" USE_XRENDER) +check_library_exists(fribidi fribidi_charset_to_unicode "" USE_FRIBIDI) +check_library_exists(X11 XReadBitmapFileData "" USE_XBM) +check_library_exists(X11 Xutf8TextPropertyToTextList "" USE_XUTF8) +check_library_exists(Xext XShapeCombineRectangles "" USE_SHAPE) +check_library_exists(Xmu XmuDrawRoundedRectangle "" USE_XMU) +check_library_exists(Xft XftFontOpenName "" USE_XFT) +check_include_files(ft2build.h USE_XFT) +###### Symbols ############ +include(CheckSymbolExists) +check_symbol_exists(XpmAllocColor X11/xpm.h USE_XPM) +check_symbol_exists(alloca alloca.h HAVE_ALLOCA) +##### compiles or not? ############ +set(iconvsourcetest "") + +include (CheckCSourceCompiles) +check_c_source_compiles("${iconvsourcetest}" ICONV_CONST) +##TODO: doesn't work right +check_c_source_compiles("#define _XOPEN_SOURCE 600L +#include " _XOPEN_SOURCE_EXTENDED) +set(__EXTENSIONS__ "${_XOPEN_SOURCE_EXTENDED}") +if(_XOPEN_SOURCE_EXTENDED) + set(_XOPEN_SOURCE 600L) +endif() +##TODO: +#AC_ARG_ENABLE(confirm, +# AC_HELP_STRING([--disable-confirm], [disable confirm dialogs]) ) +#if test "$enable_confirm" = "no" ; then +# AC_DEFINE(DISABLE_CONFIRM, 1, [Define to disable confirm dialogs]) +#else +# enable_confirm="yes" +#fi + +## gettext +# https://cmake.org/cmake/help/v2.8.12/cmake.html#module:FindGettext +find_package(Gettext) +if(GETTEXT_FOUND) + file (GLOB PO_FILES po/"*.po") + message( "msgfmt: ${GETTEXT_MSGFMT_EXECUTABLE}") + message( "msgmerge: ${GETTEXT_MSGMERGE_EXECUTABLE}") + #GETTEXT_PROCESS_POT(po/jwm.pot) + GETTEXT_PROCESS_PO_FILES( PO_FILES ${PO_FILES}) + #GETTEXT_CREATE_TRANSLATIONS (outputFile [ALL] file1 ... fileN ) +endif() + +########### Source ##################### +include_directories( + "${JWM_INCLUDES}" + "${X11_INCLUDE_DIR}" + "${CMAKE_SOURCE_DIR}" + "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_BINARY_DIR}/src" +) + +# all the source files minus main.c +# for i in **.c; do [ "$i" != main.c ] && echo -e "\tsrc/$i"; done +set(JWM_SRCS + src/action.c + src/background.c + src/binding.c + src/border.c + src/button.c + src/client.c + src/clientlist.c + src/clock.c + src/color.c + src/command.c + src/confirm.c + src/cursor.c + src/debug.c + src/desktop.c + src/dock.c + src/error.c + src/event.c + src/font.c + src/grab.c + src/gradient.c + src/group.c + src/help.c + src/hint.c + src/icon.c + src/image.c + src/lex.c + src/match.c + src/menu.c + src/misc.c + src/move.c + src/outline.c + src/pager.c + src/parse.c + src/place.c + src/popup.c + src/render.c + src/resize.c + src/root.c + src/screen.c + src/settings.c + src/spacer.c + src/status.c + src/swallow.c + src/taskbar.c + src/timing.c + src/traybutton.c + src/tray.c + src/winmenu.c +) + +######### Build ############### +## add the library +#add_library(JWM STATIC ${JWM_SRCS}) +## make the executable +add_executable(${PROJECT_NAME} src/main.c ${JWM_SRCS}) +## link the libs to the executable +target_link_libraries(${PROJECT_NAME} "${ALL_LIBS}") + +## install jwm and libJWM +install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION bin) + +## install icons +file(GLOB ICONS "contrib/*.svg") +set(ICONS "${ICONS}" contrib/${PROJECT_NAME}.xbm) +install(FILES ${ICONS} DESTINATION "${ARCH_INDEP_INSTALL_DIR}share/pixmaps") + +##install man page +message("creating ${PROJECT_NAME}.1") +configure_file("${PROJECT_NAME}.1.in" "${PROJECT_NAME}.1") +install(FILES "${PROJECT_NAME}.1" DESTINATION "${ARCH_INDEP_INSTALL_DIR}/share/man/man1/") + +## configure header +configure_file("${CMAKE_SOURCE_DIR}/cmake/config.h.in" ../config.h) +message("Compiler: ${CMAKE_C_COMPILER}\nCompiler Flags: ${CMAKE_C_FLAGS_RELEASE}") +install(FILES example.jwmrc DESTINATION "${SYSCONF}" RENAME system.jwmrc) diff --git a/cmake/configure b/cmake/configure new file mode 100755 index 00000000..1dfc2907 --- /dev/null +++ b/cmake/configure @@ -0,0 +1,233 @@ +#!/bin/sh +## TODO command line options in parity with old system +getThing() +{ + ARG="$1" + DELIM="$2" + printf "%s\n" "$ARG" | sed "s/.*$DELIM//" +} +getEQ() +{ + getThing "$1" "=" +} + +checkYN() +{ + ARG=$(getEQ "${1}") + #TODO: + #ARG="${ARG,,}" + case $ARG in + "no"|"No"|"NO")return 1;; + esac + return 0 +} +enable_thing() +{ + ARG="${1}" + THING=$(printf "%s\n" "${ARG}" | sed "s/=.*//") + ##To UPPER + ENABLED=$(getEQ "${ARG}") + checkYN "$ENABLED" + case $? in + 0)RESULT="$THING";; ## Enabled + *)RESULT="";; + esac + printf "%s\n" "${RESULT}" +} +usage() +{ + echo "'configure' configures jwm 2.4.0 to adapt to many kinds of systems. + +Usage: ${0} [OPTION]... [VAR=VALUE]... + +To assign environment variables (e.g., CC, CFLAGS...), specify them as +VAR=VALUE. See below for descriptions of some of the useful variables. + +Defaults for the options are specified in brackets. + +Configuration: + -h, --help display this help and exit + -V, --version display version information and exit + -q, --quiet, --silent do not print 'checking ...' messages + --cache-file=FILE cache test results in FILE [disabled] + -C, --config-cache alias for '--cache-file=config.cache' + -n, --no-create do not create output files + --srcdir=DIR find the sources in DIR [configure dir or '..'] + +Installation directories: + --prefix=PREFIX install architecture-independent files in PREFIX + [/usr/local] + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX + [PREFIX] + +By default, 'make install' will install all the files in +'/usr/local/bin', '/usr/local/lib' etc. You can specify +an installation prefix other than '/usr/local' using '--prefix', +for instance '--prefix=$HOME'. + +For better control, use the options below. + +Fine tuning of the installation directories: + --bindir=DIR user executables [EPREFIX/bin] + --sbindir=DIR system admin executables [EPREFIX/sbin] + --libexecdir=DIR program executables [EPREFIX/libexec] + --sysconfdir=DIR read-only single-machine data [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] + --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] + --libdir=DIR object code libraries [EPREFIX/lib] + --includedir=DIR C header files [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc [/usr/include] + --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] + --datadir=DIR read-only architecture-independent data [DATAROOTDIR] + --infodir=DIR info documentation [DATAROOTDIR/info] + --localedir=DIR locale-dependent data [DATAROOTDIR/locale] + --mandir=DIR man documentation [DATAROOTDIR/man] + --docdir=DIR documentation root [DATAROOTDIR/doc/jwm] + --htmldir=DIR html documentation [DOCDIR] + --dvidir=DIR dvi documentation [DOCDIR] + --pdfdir=DIR pdf documentation [DOCDIR] + --psdir=DIR ps documentation [DOCDIR] + +X features: + --x-includes=DIR X include files are in DIR + --x-libraries=DIR X library files are in DIR + +System types: + --build=BUILD configure for building on BUILD [guessed] + --host=HOST cross-compile to build programs to run on HOST [BUILD] + +Optional Features: + --disable-option-checking ignore unrecognized --enable/--with options + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --disable-confirm disable confirm dialogs + --disable-icons disable icon support + --disable-png disable PNG images + --disable-cairo disable Cairo support + --disable-rsvg disable rsvg support + --disable-jpeg disable JPEG images + --disable-xft disable Xft + --disable-xrender disable XRender + --disable-fribidi disable bi-directional unicode support + --disable-xpm disable XPM images + --disable-xbm disable XBM images + --disable-shape disable use of the X shape extension + --disable-xmu disable Xmu support + --disable-xinerama disable Xinerama support + --disable-rpath do not hardcode runtime library paths + --disable-nls do not use Native Language Support + --enable-debug use this to debug JWM + +Optional Packages: + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --with-x use the X Window System + --with-gnu-ld assume the C compiler uses GNU ld [default=no] + --with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib + --without-libiconv-prefix don't search for libiconv in includedir and libdir + --with-libintl-prefix[=DIR] search for libintl in DIR/include and DIR/lib + --without-libintl-prefix don't search for libintl in includedir and libdir + +Some influential environment variables: + CC C compiler command + CFLAGS C compiler flags + LDFLAGS linker flags, e.g. -L if you have libraries in a + nonstandard directory + LIBS libraries to pass to the linker, e.g. -l + CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if + you have headers in a nonstandard directory + CPP C preprocessor + XMKMF Path to xmkmf, Makefile generator for X Window System + +Use these variables to override the choices made by 'configure' or to help +it to find libraries and programs with nonstandard names/locations. + +Report bugs to ." + + + exit +} +#ARGUMENTS=(${ARGUMENTS[@]} "-D:INT=1") +addArguments() +{ + ARG="$1" + TYPE="$2" + VALUE="$3" + ARGUMENTS="${ARGUMENTS[*]} -D$ARG:$TYPE=$VALUE" +} +addBool() +{ + [ "$2" -eq "" ] && 2="true" + addArguments "$1" BOOL "$2" +} +andInt() +{ + [ "$2" -eq "" ] && 2="1" + addArguments "$1" INT "$2" +} +addString() +{ + [ "$2" -eq "" ] && return + addArguments "$1" STRING "$2" +} +case $1 in + -h|--help|-\?)usage;; + --prefix=*)addString "ARCH_INDEP_INSTALL_DIR" "$(getEQ ${1})";; + --exec-prefix=*)addString "CMAKE_INSTALL_PREFIX" "$(getEQ ${1})";; + --bindir=*)BINDIR=$(getEQ "${1}");; + --sbindir=*)SBINDIR=$(getEQ "${1}");; + --libexecdir=*)LIBEXECDIR=$(getEQ "${1}");; + --sysconfdir=*)SYSCONFDIR=$(getEQ "${1}");; + --sharedstatedir=*)SHAREDSTATEDIR=$(getEQ "${1}");; + --localstatedir=*)LOCALSTATEDIR=$(getEQ "${1}");; + --runstatedir=*)RUNSTATEDIR=$(getEQ "${1}");; + --libdir=*)LIBDIR=$(getEQ "${1}");; + --includedir=*)INCLUDEDIR=$(getEQ "${1}");; + --oldincludedir=*)OLDINCLUDEDIR=$(getEQ "${1}");; + --datarootdir=*)DATAROOTDIR=$(getEQ "${1}");; + --datadir=*)DATADIR=$(getEQ "${1}");; + --infodir=*)INFODIR=$(getEQ "${1}");; + --localedir=*)LOCALEDIR=$(getEQ "${1}");; + --mandir=*)MANDIR=$(getEQ "${1}");; + --docdir=*)DOCDIR=$(getEQ "${1}");; + --htmldir=*)HTMLDIR=$(getEQ "${1}");; + --dvidir=*)DVIDIR=$(getEQ "${1}");; + --pdfdir=*)PDFDIR=$(getEQ "${1}");; + --psdir=*)PSDIR=$(getEQ "${1}");; + --x-includes=*)X_INCLUDES=$(getEQ "${1}");; + --x-libraries=*)X_LIBRARIES=$(getEQ "${1}");; + --build=*)BUILD=$(getEQ "${1}");; + --host=*)HOST=$(getEQ "${1}");; + --disable-confirm)ARGUMENTS=(${ARGUMENTS[@]} "-DDISABLE_CONFIRM:INT=1");; + --disable-icons);; + --disable-png);; + --disable-cairo);; + --disable-rsvg);; + --disable-jpeg);; + --disable-xft);; + --disable-xrender);; + --disable-fribidi);; + --disable-xpm);; + --disable-xbm);; + --disable-shape);; + --disable-xmu);; + --disable-xinerama);; + --disable-rpath);; + --disable-nls);; + --enable-debug);; + --enable-*|--disable-*)enable_thing "${1}";; + + --with-x)WITH_X="true";; + --with-gnu-ld)WITH_GNU_LD="true";; + --with-libiconv-prefix)WITH_LIBICONV_PREFIX="true";; + --without-libiconv-prefix)unset WITH_LIBICONV_PREFIX;; + --with-libintl-prefix=*)WITH_LIBINTL_PREFIX=$(getEQ "${1}");; + --without-libintl-prefix)unset WITH_LIBINTL_PREFIX;; + --with-*);; + --without-*);; +esac + +[ -d bin ] || mkdir bin +cd bin +cmake ${ARGUMENTS[@]} .. diff --git a/cmake/modules/FindCairo.cmake b/cmake/modules/FindCairo.cmake new file mode 100644 index 00000000..47c79a98 --- /dev/null +++ b/cmake/modules/FindCairo.cmake @@ -0,0 +1,36 @@ +include(FindPkgConfig OPTIONAL) + +if(PKG_CONFIG_FOUND) + pkg_check_modules(PC_CAIRO cairo QUIET) +endif() + +find_path(CAIRO_INCLUDE_DIR NAMES cairo/cairo.h + PATHS ${PC_CAIRO_INCLUDEDIR}) +find_library(CAIRO_LIBRARY NAMES cairo libcairo + PATHS ${PC_CAIRO_LIBDIR}) + +set(CAIRO_VERSION ${PC_CAIRO_VERSION}) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Cairo + REQUIRED_VARS CAIRO_LIBRARY CAIRO_INCLUDE_DIR + VERSION_VAR CAIRO_VERSION) + +if(CAIRO_FOUND) + set(CAIRO_LIBRARIES ${CAIRO_LIBRARY}) + set(CAIRO_INCLUDE_DIRS ${CAIRO_INCLUDE_DIR}) + if(PC_CAIRO_CFLAGS) + set(CAIRO_DEFINITIONS ${PC_CAIRO_CFLAGS}) + endif() + + if(NOT TARGET Cairo::Cairo) + add_library(Cairo::Cairo UNKNOWN IMPORTED) + set_target_properties(Cairo::Cairo PROPERTIES + IMPORTED_LOCATION "${CAIRO_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${CAIRO_INCLUDE_DIR}" + INTERFACE_COMPILE_OPTIONS "${CAIRO_DEFINITIONS}") + endif() +endif() + +mark_as_advanced(CAIRO_INCLUDE_DIR CAIRO_LIBRARY) + diff --git a/cmake/modules/FindFreeType.cmake b/cmake/modules/FindFreeType.cmake new file mode 100644 index 00000000..3f888db9 --- /dev/null +++ b/cmake/modules/FindFreeType.cmake @@ -0,0 +1,46 @@ +#.rst: +# FindFreetype +# ------------ +# Finds the FreeType library +# +# This will will define the following variables:: +# +# FREETYPE_FOUND - system has FreeType +# FREETYPE_INCLUDE_DIRS - the FreeType include directory +# FREETYPE_LIBRARIES - the FreeType libraries +# +# and the following imported targets:: +# +# FreeType::FreeType - The FreeType library + +if(PKG_CONFIG_FOUND) + pkg_check_modules(PC_FREETYPE freetype2 QUIET) +endif() + +find_path(FREETYPE_INCLUDE_DIR NAMES freetype/freetype.h freetype.h freetype2/freetype.h + PATHS ${PC_FREETYPE_INCLUDEDIR} + ${PC_FREETYPE_INCLUDE_DIRS}) +find_library(FREETYPE_LIBRARY NAMES freetype freetype246MT + PATHS ${PC_FREETYPE_LIBDIR}) + +set(FREETYPE_VERSION ${PC_FREETYPE_VERSION}) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(FreeType + REQUIRED_VARS FREETYPE_LIBRARY FREETYPE_INCLUDE_DIR + VERSION_VAR FREETYPE_VERSION) + +if(FREETYPE_FOUND) + set(FREETYPE_LIBRARIES ${FREETYPE_LIBRARY}) + set(FREETYPE_INCLUDE_DIRS ${FREETYPE_INCLUDE_DIR}) + + if(NOT TARGET FreeType::FreeType) + add_library(FreeType::FreeType UNKNOWN IMPORTED) + set_target_properties(FreeType::FreeType PROPERTIES + IMPORTED_LOCATION "${FREETYPE_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${FREETYPE_INCLUDE_DIR}") + endif() +endif() + +mark_as_advanced(FREETYPE_INCLUDE_DIR FREETYPE_LIBRARY) + diff --git a/cmake/modules/FindFribidi.cmake b/cmake/modules/FindFribidi.cmake new file mode 100644 index 00000000..1b357bad --- /dev/null +++ b/cmake/modules/FindFribidi.cmake @@ -0,0 +1,49 @@ +#.rst: +# FindFribidi +# ----------- +# Finds the GNU FriBidi library +# +# This will will define the following variables:: +# +# FRIBIDI_FOUND - system has FriBidi +# FRIBIDI_INCLUDE_DIRS - the FriBidi include directory +# FRIBIDI_LIBRARIES - the FriBidi libraries +# +# and the following imported targets:: +# +# FriBidi::FriBidi - The FriBidi library + +if(PKG_CONFIG_FOUND) + pkg_check_modules(PC_FRIBIDI fribidi QUIET) +endif() + +find_path(FRIBIDI_INCLUDE_DIR NAMES fribidi/fribidi.h + PATHS ${PC_FRIBIDI_INCLUDEDIR}) +find_library(FRIBIDI_LIBRARY NAMES fribidi libfribidi + PATHS ${PC_FRIBIDI_LIBDIR}) + +set(FRIBIDI_VERSION ${PC_FRIBIDI_VERSION}) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(FriBidi + REQUIRED_VARS FRIBIDI_LIBRARY FRIBIDI_INCLUDE_DIR + VERSION_VAR FRIBIDI_VERSION) + +if(FRIBIDI_FOUND) + set(FRIBIDI_LIBRARIES ${FRIBIDI_LIBRARY}) + set(FRIBIDI_INCLUDE_DIRS ${FRIBIDI_INCLUDE_DIR}) + if(PC_FRIBIDI_CFLAGS) + set(FRIBIDI_DEFINITIONS ${PC_FRIBIDI_CFLAGS}) + endif() + + if(NOT TARGET FriBidi::FriBidi) + add_library(FriBidi::FriBidi UNKNOWN IMPORTED) + set_target_properties(FriBidi::FriBidi PROPERTIES + IMPORTED_LOCATION "${FRIBIDI_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${FRIBIDI_INCLUDE_DIR}" + INTERFACE_COMPILE_OPTIONS "${FRIBIDI_DEFINITIONS}") + endif() +endif() + +mark_as_advanced(FRIBIDI_INCLUDE_DIR FRIBIDI_LIBRARY) + diff --git a/cmake/modules/FindRSVG.cmake b/cmake/modules/FindRSVG.cmake new file mode 100644 index 00000000..f48d7dc3 --- /dev/null +++ b/cmake/modules/FindRSVG.cmake @@ -0,0 +1,6 @@ +include(FindPkgConfig OPTIONAL) + +if(PKG_CONFIG_FOUND) + pkg_check_modules(RSVG librsvg-2.0) +endif() + From 12055f1e220dad19d42d54d7863bfe2b40b2a57d Mon Sep 17 00:00:00 2001 From: Israel- Date: Sat, 30 Dec 2017 18:48:05 -0600 Subject: [PATCH 3/9] update everything and re-add translations code --- CMakeLists.txt | 24 +++--- configure.ac | 2 +- jwm.1.in | 23 ++++-- po/CMakeLists.txt | 35 +++++++++ src/action.h | 14 ++-- src/binding.c | 57 +++++++++++--- src/binding.h | 10 +-- src/command.c | 96 +++++++++++++++++++++++ src/command.h | 7 ++ src/confirm.c | 2 +- src/event.c | 16 ++-- src/image.c | 188 +++++++++++++++++++++++++--------------------- src/image.h | 6 +- src/jwm.h | 1 + src/menu.c | 15 +++- src/menu.h | 2 + src/move.c | 4 +- src/parse.c | 149 ++++++++++++++++-------------------- src/parse.h | 3 +- src/resize.c | 5 +- src/root.c | 5 +- src/taskbar.c | 103 +++++++++++++++++-------- src/tray.c | 42 ++++++++--- src/tray.h | 13 +++- xslt/jwm-2.4.xslt | 1 - 25 files changed, 552 insertions(+), 271 deletions(-) create mode 100644 po/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index 08899d0c..5594589c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -139,12 +139,20 @@ endif() ##### HEADERS ##### include (CheckIncludeFiles) -function(CheckHeader string1) - string(TOUPPER ${string1} OUTVAR) +function(CheckHeader header_filename) + string(TOUPPER ${header_filename} OUTVAR) string(REPLACE . _ DEFINE_NAME ${OUTVAR}) string(REPLACE / _ DEFINE_NAME ${DEFINE_NAME}) string(REPLACE / _ DEFINE_NAME ${DEFINE_NAME}) - check_include_files("${string1}" "HAVE_${DEFINE_NAME}") + set(NORMAL_PLACES_TO_LOOK "/usr/include/;/usr/local/include/") + check_include_files("${header_filename}" "HAVE_${DEFINE_NAME}") + if( NOT HAVE_${DEFINE_NAME}) + message("Trying something else to find ${header_filename}") + find_file("CHECK_${DEFINE_NAME}" "${header_filename}") + if( CHECK_${DEFINE_NAME}) + set(HAVE_${DEFINE_NAME} true) + endif() + endif() endfunction() find_path(ALLOCA alloca.c) @@ -211,12 +219,10 @@ endif() # https://cmake.org/cmake/help/v2.8.12/cmake.html#module:FindGettext find_package(Gettext) if(GETTEXT_FOUND) - file (GLOB PO_FILES po/"*.po") + file (GLOB PO_FILES ${CMAKE_SOURCE_DIR}/po/*.po) message( "msgfmt: ${GETTEXT_MSGFMT_EXECUTABLE}") message( "msgmerge: ${GETTEXT_MSGMERGE_EXECUTABLE}") - #GETTEXT_PROCESS_POT(po/jwm.pot) - GETTEXT_PROCESS_PO_FILES( PO_FILES ${PO_FILES}) - #GETTEXT_CREATE_TRANSLATIONS (outputFile [ALL] file1 ... fileN ) + GETTEXT_CREATE_TRANSLATIONS(po/jwm.pot ALL ${PO_FILES}) endif() ########### Source ##################### @@ -295,11 +301,11 @@ install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION bin) ## install icons file(GLOB ICONS "contrib/*.svg") set(ICONS "${ICONS}" contrib/${PROJECT_NAME}.xbm) -install(FILES ${ICONS} DESTINATION "${ARCH_INDEP_INSTALL_DIR}share/pixmaps") +install(FILES ${ICONS} DESTINATION "${ARCH_INDEP_INSTALL_DIR}/share/pixmaps") ##install man page message("creating ${PROJECT_NAME}.1") -configure_file("${PROJECT_NAME}.1.in" "${PROJECT_NAME}.1") +configure_file("${CMAKE_SOURCE_DIR}/${PROJECT_NAME}.1.in" "${CMAKE_SOURCE_DIR}/${PROJECT_NAME}.1") install(FILES "${PROJECT_NAME}.1" DESTINATION "${ARCH_INDEP_INSTALL_DIR}/share/man/man1/") ## configure header diff --git a/configure.ac b/configure.ac index 60bc4656..5cfcface 100644 --- a/configure.ac +++ b/configure.ac @@ -229,7 +229,7 @@ if test "$enable_rsvg" != "no" ; then RSVG_LDFLAGS=`$PKGCONFIG --libs librsvg-2.0` enable_rsvg="yes" else - RSVG_LDFLAGS="-lrsvg-2.0" + RSVG_LDFLAGS="-lrsvg-2" AC_CHECK_LIB(rsvg-2, rsvg_handle_render_cairo, [ enable_rsvg="yes" ], [ enable_rsvg="no" diff --git a/jwm.1.in b/jwm.1.in index c7d159a3..020a5ad9 100644 --- a/jwm.1.in +++ b/jwm.1.in @@ -153,6 +153,8 @@ Dynamically include the contents of a file or executable into a submenu. The file must start with a "JWM" tag. The file is specified by the text of the tag. If the text starts with "exec:" then the output of a program is used. This tag supports the same attributes as \fBMenu\fP. +A \fBtimeout\fP attribute may be specified to set a timeout in milliseconds. +The default timeout is 5000 milliseconds (5 seconds). .RE .P .B Include @@ -160,6 +162,8 @@ is used. This tag supports the same attributes as \fBMenu\fP. Include the contents of a file into the menu structure. The file must start with a "JWM" tag. The file is specified by the text of the tag. If the text starts with "exec:" then the output of a program is used. +A \fBtimeout\fP attribute may be specified to set a timeout in milliseconds. +The default timeout is 5000 milliseconds (5 seconds). .RE .P .B Program @@ -471,7 +475,14 @@ This tag supports the following attributes: .RS Specifies the location to hide the tray when not activated. Default is "off" to disable hiding. -Possible values are "left", "right", "top", "bottom", "off", and "on". +Possible values are "left", "right", "top", "bottom", "off", "on" (JWM +picks the location), and "invisible" (trays must be activated by a key +binding). +.RE +.P +\fBdelay\fP \fIint\fP +.RS +The delay before hiding the tray in milliseconds. Default is 0 milliseconds. .RE .P \fBx\fP \fIint\fP @@ -1590,7 +1601,8 @@ Either the \fBkey\fP or \fBkeycode\fP attributes must be specified to determine which key will cause an action. The optional attribute, \fBmask\fP, specifies what key mask, if any, must be in effect for the binding to match. Finally, the text of the \fBKey\fP tag is the -action to perform. +action to perform. The last action to match is used if there are +duplicates. .P One or more of the following key masks may be specified for \fBmask\fP (see \fBxmodmap\fP(1)): @@ -1637,6 +1649,8 @@ Make a menu selection or confirm an action. Move to the next window in the task list. .IP \fBnextstacked\fP Move to the next window in the stacking order. +.IP \fBnone\fP +Remove the current binding. .IP \fBprev\fP Move to the previous window in the task list. .IP \fBprevstacked\fP @@ -1736,8 +1750,8 @@ It is possible to bind multiple key combinations to the same action. Mouse bindings are configured using \fBMouse\fP tags. The \fBcontext\fP attribute determines the context in which the binding applies, the \fBbutton\fP attribute species the mouse button, and -the (optional) \fBmask\fP specifies the key mask that must be in effect -for the binding to match. Finally, the text of the \fBMouse\fP tag +the (optional) \fBmask\fP attribute specifies the key mask that must be in +effect for the binding to match. Finally, the text of the \fBMouse\fP tag determines the action to perform (see \fBKEY BINDINGS\fP for a list of actions). The \fBbutton\fP is a mouse button number, starting at \fB1\fP (typically the left button). A positive value for the button @@ -1785,7 +1799,6 @@ Other bindings: .P Button 1 (typically the left button): .RS -Over the close button, clicking closes the window. Over a task bar, restores or minimizes the window. Over a pager, switches the active desktop. .RE diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt new file mode 100644 index 00000000..80198326 --- /dev/null +++ b/po/CMakeLists.txt @@ -0,0 +1,35 @@ +# Translation set name +find_package(Gettext) +if(GETTEXT_FOUND) + message( "msgfmt: ${GETTEXT_MSGFMT_EXECUTABLE}") + message( "msgmerge: ${GETTEXT_MSGMERGE_EXECUTABLE}") + set( POT_NAME "jwm" ) + set( POT_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${POT_NAME}.pot ) + set(MSGID_BUGS_ADDRESS "${PACKAGE_BUGREPORT}") + set(COPYRIGHT_HOLDER "Free Software Foundation, Inc.") + + set( XGETTEXT_CMD "xgettext" ) + set(XGETTEXT_OPTIONS --default-domain="${PROJECT_NAME}" --directory="${CMAKE_CURRENT_SOURCE_DIR}" --keyword=_ --keyword=N_ --add-comments=TRANSLATORS: --files-from="${CMAKE_CURRENT_SOURCE_DIR}/POTFILES.in" --copyright-holder="${COPYRIGHT_HOLDER}" --msgid-bugs-address="${MSGID_BUGS_ADDRESS}" ) + +## TODO: +## package prefix GNU +#GETTEXT_VERSION_STRING + +# make gettext options conform to version + if("${GETTEXT_VERSION_STRING}" GREATER 0.16.1) + message("Gettext version is ${GETTEXT_VERSION_STRING}") + set(XGETTEXT_OPTIONS "${XGETTEXT_OPTIONS}" --package-name="$${package_prefix}jwm" --package-version='${VERSION}') + endif() + + ADD_CUSTOM_COMMAND( OUTPUT ${POT_FILE} + COMMAND ${XGETTEXT_CMD} ${XGETTEXT_OPTIONS} --output=${POT_FILE} ${POT_FILE_DEPENDS} + WORKING_DIRECTORY "${JWM_SOURCE_DIR}" + COMMENT "Extract translatable messages to ${POT_FILE}" + ) + + ADD_CUSTOM_TARGET( potfile + COMMAND make translations + COMMAND ${XGETTEXT_CMD} ${XGETTEXT_OPTIONS} + ) +endif() + diff --git a/src/action.h b/src/action.h index 82226e6d..95bdd961 100644 --- a/src/action.h +++ b/src/action.h @@ -16,7 +16,10 @@ struct TrayComponentType; * Note that we use the high bits to store additional information * for some key types (for example the desktop number). */ -typedef unsigned short ActionType; +typedef struct { + unsigned char action; + unsigned char extra; +} ActionType; #define ACTION_NONE 0 #define ACTION_UP 1 #define ACTION_DOWN 2 @@ -60,10 +63,11 @@ typedef unsigned short ActionType; #define ACTION_MAXV 40 #define ACTION_MAXH 41 #define ACTION_RESTORE 42 -#define ACTION_RESIZE_N (1 << 8) -#define ACTION_RESIZE_S (1 << 9) -#define ACTION_RESIZE_E (1 << 10) -#define ACTION_RESIZE_W (1 << 11) +#define ACTION_INVALID 255 +#define ACTION_RESIZE_N 1 /* Extra value mask for resize north. */ +#define ACTION_RESIZE_S 2 /* Extra value mask for resize south. */ +#define ACTION_RESIZE_E 4 /* Extra value mask for resize east. */ +#define ACTION_RESIZE_W 8 /* Extra value mask for resize west. */ /** Add an action to a list of actions. * @param actions The action list to update. diff --git a/src/binding.c b/src/binding.c index b24482a6..dc23b640 100644 --- a/src/binding.c +++ b/src/binding.c @@ -48,7 +48,7 @@ static const unsigned MODIFIER_COUNT = ARRAY_LENGTH(MODIFIERS); typedef struct KeyNode { /* These are filled in when the configuration file is parsed */ - int key; + ActionType action; MouseContextType context; unsigned int state; KeySym symbol; @@ -113,7 +113,7 @@ void StartupBindings(void) } /* Grab the key if needed. */ - if(ShouldGrab(np->key)) { + if(ShouldGrab(np->action)) { /* Grab on the root. */ GrabKey(np, rootWindow); @@ -204,6 +204,7 @@ void GrabKey(KeyNode *np, Window win) ActionType GetKey(MouseContextType context, unsigned state, int code) { KeyNode *np; + ActionType result; /* Remove modifiers we don't care about from the state. */ state &= ~lockMask; @@ -214,11 +215,13 @@ ActionType GetKey(MouseContextType context, unsigned state, int code) /* Loop looking for a matching key binding. */ for(np = bindings[context]; np; np = np->next) { if(np->state == state && np->code == code) { - return np->key; + return np->action; } } - return ACTION_NONE; + result.action = ACTION_NONE; + result.extra = 0; + return result; } /** Run a command invoked from a key binding. */ @@ -265,7 +268,7 @@ void ShowKeyMenu(MouseContextType context, unsigned state, int code) /** Determine if a key should be grabbed on client windows. */ char ShouldGrab(ActionType action) { - switch(action & 0xFF) { + switch(action.action) { case ACTION_NEXT: case ACTION_NEXTSTACK: case ACTION_PREV: @@ -371,8 +374,29 @@ KeySym ParseKeyString(const char *str) return symbol; } +/** Remove a binding. */ +void RemoveDuplicates(KeyNode *bp) +{ + KeyNode **npp = &bindings[bp->context]; + while(*npp) { + KeyNode *np = *npp; + if( np != bp + && np->symbol == bp->symbol + && np->state == bp->state + && np->code == bp->code) { + *npp = np->next; + if(np->command) { + Release(np->command); + } + Release(np); + } else { + npp = &np->next; + } + } +} + /** Insert a key binding. */ -void InsertBinding(ActionType key, const char *modifiers, +void InsertBinding(ActionType action, const char *modifiers, const char *stroke, const char *code, const char *command) { @@ -404,11 +428,14 @@ void InsertBinding(ActionType key, const char *modifiers, np->next = bindings[MC_NONE]; bindings[MC_NONE] = np; - np->key = key | ((temp[offset] - '1' + 1) << 8); + np->context = MC_NONE; + np->action = action; + np->action.extra = temp[offset] - '1'; np->state = mask; np->symbol = sym; np->command = NULL; np->code = 0; + RemoveDuplicates(np); } @@ -427,11 +454,13 @@ void InsertBinding(ActionType key, const char *modifiers, np->next = bindings[MC_NONE]; bindings[MC_NONE] = np; - np->key = key; + np->context = MC_NONE; + np->action = action; np->state = mask; np->symbol = sym; np->command = CopyString(command); np->code = 0; + RemoveDuplicates(np); } else if(code && strlen(code) > 0) { @@ -439,11 +468,13 @@ void InsertBinding(ActionType key, const char *modifiers, np->next = bindings[MC_NONE]; bindings[MC_NONE] = np; - np->key = key; + np->context = MC_NONE; + np->action = action; np->state = mask; np->symbol = NoSymbol; np->command = CopyString(command); np->code = atoi(code); + RemoveDuplicates(np); } else { @@ -458,7 +489,7 @@ void InsertMouseBinding( int button, const char *mask, MouseContextType context, - ActionType key, + ActionType action, const char *command) { KeyNode *np = Allocate(sizeof(KeyNode)); @@ -466,10 +497,12 @@ void InsertMouseBinding( bindings[context] = np; np->command = CopyString(command); - np->key = key; + np->action = action; np->state = ParseModifierString(mask); + np->symbol = NoSymbol; np->code = button; np->context = context; + RemoveDuplicates(np); } /** Validate key bindings. */ @@ -480,7 +513,7 @@ void ValidateKeys(void) for(i = 0; i < MC_COUNT; i++) { for(kp = bindings[i]; kp; kp = kp->next) { - if((kp->key & 0xFF) == ACTION_ROOT && kp->command) { + if(kp->action.action == ACTION_ROOT && kp->command) { const int bindex = GetRootMenuIndexFromString(kp->command); if(JUNLIKELY(!IsRootMenuDefined(bindex))) { Warning(_("key binding: root menu \"%s\" not defined"), diff --git a/src/binding.h b/src/binding.h index 853c76b2..5f0269ba 100644 --- a/src/binding.h +++ b/src/binding.h @@ -31,28 +31,28 @@ ActionType GetKey(MouseContextType context, unsigned state, int code); unsigned int ParseModifierString(const char *str); /** Insert a key binding. - * @param key The key binding type. + * @param action The action. * @param modifiers The modifier mask. * @param stroke The key stroke (not needed if code given). * @param code The key code (not needed if stroke given). * @param command Extra parameter needed for some key binding types. */ -void InsertBinding(ActionType key, const char *modifiers, const char *stroke, - const char *code, const char *command); +void InsertBinding(ActionType action, const char *modifiers, + const char *stroke, const char *code, const char *command); /** Insert a mouse binding. * A mouse binding maps a mouse click in a certain context to an action. * @param button The mouse button. * @param mask The modifier mask. * @param context The mouse context. - * @param key The key binding. + * @param action The action binding. * @param command Extra parameter needed for some bindings. */ void InsertMouseBinding( int button, const char *mask, MouseContextType context, - ActionType key, + ActionType action, const char *command); /** Run a command caused by a key binding. */ diff --git a/src/command.c b/src/command.c index cd30376e..059d6433 100644 --- a/src/command.c +++ b/src/command.c @@ -12,6 +12,9 @@ #include "misc.h" #include "main.h" #include "error.h" +#include "timing.h" + +#include /** Structure to represent a list of commands. */ typedef struct CommandNode { @@ -141,3 +144,96 @@ void RunCommand(const char *command) } +/** Reads the output of an exernal program. */ +char *ReadFromProcess(const char *command, unsigned timeout_ms) +{ + const unsigned BLOCK_SIZE = 256; + pid_t pid; + int fds[2]; + + if(pipe(fds)) { + Warning(_("could not create pipe")); + return NULL; + } + if(fcntl(fds[0], F_SETFL, O_NONBLOCK) == -1) { + /* We don't return here since we can still process the output + * of the command, but the timeout won't work. */ + Warning(_("could not set O_NONBLOCK")); + } + + pid = fork(); + if(pid == 0) { + /* The child process. */ + close(ConnectionNumber(display)); + close(fds[0]); + dup2(fds[1], 1); /* stdout */ + setsid(); + execl("/bin/sh", "/bin/sh", "-c", command, NULL); + Warning(_("exec failed: (%s) %s"), SHELL_NAME, command); + exit(EXIT_SUCCESS); + } else if(pid > 0) { + char *buffer; + unsigned buffer_size, max_size; + TimeType start_time, current_time; + + max_size = BLOCK_SIZE; + buffer_size = 0; + buffer = Allocate(max_size); + + GetCurrentTime(&start_time); + for(;;) { + struct timeval tv; + unsigned long diff_ms; + fd_set fs; + int rc; + + /* Make sure we have room to read. */ + if(buffer_size + BLOCK_SIZE > max_size) { + max_size *= 2; + buffer = Reallocate(buffer, max_size); + } + + FD_ZERO(&fs); + FD_SET(fds[0], &fs); + + /* Determine the max time to sit in select. */ + GetCurrentTime(¤t_time); + diff_ms = GetTimeDifference(&start_time, ¤t_time); + diff_ms = timeout_ms > diff_ms ? (timeout_ms - diff_ms) : 0; + tv.tv_sec = diff_ms / 1000; + tv.tv_usec = (diff_ms % 1000) * 1000; + + /* Wait for data (or a timeout). */ + rc = select(fds[0] + 1, &fs, NULL, &fs, &tv); + if(rc == 0) { + /* Timeout */ + Warning(_("timeout: %s did not complete in %u milliseconds"), + command, timeout_ms); + kill(pid, SIGKILL); + waitpid(pid, NULL, 0); + break; + } + + rc = read(fds[0], &buffer[buffer_size], BLOCK_SIZE); + if(rc > 0) { + buffer_size += rc; + } else { + /* Process exited, check for any leftovers and return. */ + do { + if(buffer_size + BLOCK_SIZE > max_size) { + max_size *= 2; + buffer = Reallocate(buffer, max_size); + } + rc = read(fds[0], &buffer[buffer_size], BLOCK_SIZE); + buffer_size += (rc > 0) ? rc : 0; + } while(rc > 0); + break; + } + } + close(fds[1]); + buffer[buffer_size] = 0; + return buffer; + } + + return NULL; +} diff --git a/src/command.h b/src/command.h index 99b11e2f..53937b42 100644 --- a/src/command.h +++ b/src/command.h @@ -37,5 +37,12 @@ void AddRestartCommand(const char *command); */ void RunCommand(const char *command); +/** Read output from a process. + * @param command The command to run (run in sh). + * @param timeout_ms The timeout in milliseconds. + * @return The output (must be freed, NULL on timeout). + */ +char *ReadFromProcess(const char *command, unsigned timeout_ms); + #endif /* COMMAND_H */ diff --git a/src/confirm.c b/src/confirm.c index fae088d8..eb52ee6a 100644 --- a/src/confirm.c +++ b/src/confirm.c @@ -230,7 +230,7 @@ char HandleDialogKeyPress(const XKeyEvent *event) { if(dialog && event->window == dialog->node->window) { const ActionType key = GetKey(MC_NONE, event->state, event->keycode); - switch(key & 0xFF) { + switch(key.action) { case ACTION_ENTER: RunDialogAction(); DestroyConfirmDialog(); diff --git a/src/event.c b/src/event.c index 364ad7f0..dde845b0 100644 --- a/src/event.c +++ b/src/event.c @@ -479,12 +479,12 @@ void ProcessBinding(MouseContextType context, ClientNode *np, { const ActionType key = GetKey(context, state, code); const char keyAction = context == MC_NONE; - switch(key & 0xFF) { + switch(key.action) { case ACTION_EXEC: RunKeyCommand(context, state, code); break; case ACTION_DESKTOP: - ChangeDesktop((key >> 8) - 1); + ChangeDesktop(key.extra); break; case ACTION_RDESKTOP: RightDesktop(); @@ -555,7 +555,7 @@ void ProcessBinding(MouseContextType context, ClientNode *np, case ACTION_RESIZE: if(np) { /* Use provided context by default. */ - const ActionType corner = key & 0xFF00; + const unsigned char corner = key.extra; MouseContextType resizeContext = context; if(corner) { /* Custom corner specified. */ @@ -651,7 +651,7 @@ void ProcessBinding(MouseContextType context, ClientNode *np, break; case ACTION_SEND: if(np) { - const unsigned desktop = (key >> 8) - 1; + const unsigned desktop = key.extra; SetClientDesktop(np, desktop); ChangeDesktop(desktop); } @@ -702,9 +702,11 @@ void HandleKeyPress(const XKeyEvent *event) /** Handle a key release event. */ void HandleKeyRelease(const XKeyEvent *event) { - const ActionType key = GetKey(MC_NONE, event->state, event->keycode) & 0xFF; - if( key != ACTION_NEXTSTACK && key != ACTION_NEXT - && key != ACTION_PREV && key != ACTION_PREVSTACK) { + const ActionType key = GetKey(MC_NONE, event->state, event->keycode); + if( key.action != ACTION_NEXTSTACK + && key.action != ACTION_NEXT + && key.action != ACTION_PREV + && key.action != ACTION_PREVSTACK) { StopWindowWalk(); } } diff --git a/src/image.c b/src/image.c index 7d0575b0..e4df5224 100644 --- a/src/image.c +++ b/src/image.c @@ -34,23 +34,31 @@ #include "color.h" #include "misc.h" +typedef ImageNode *(*ImageLoader)(const char *fileName, + int rwidth, int rheight, + char preserveAspect); + #ifdef USE_CAIRO #ifdef USE_RSVG -static ImageNode *LoadSVGImage(const char *fileName, int width, int height, +static ImageNode *LoadSVGImage(const char *fileName, int rwidth, int rheight, char preserveAspect); #endif #endif #ifdef USE_JPEG -static ImageNode *LoadJPEGImage(const char *fileName, int width, int height); +static ImageNode *LoadJPEGImage(const char *fileName, int rwidth, int rheight, + char preserveAspect); #endif #ifdef USE_PNG -static ImageNode *LoadPNGImage(const char *fileName); +static ImageNode *LoadPNGImage(const char *fileName, int rwidth, int rheight, + char preserveAspect); #endif #ifdef USE_XPM -static ImageNode *LoadXPMImage(const char *fileName); +static ImageNode *LoadXPMImage(const char *fileName, int rwidth, int rheight, + char preserveAspect); #endif #ifdef USE_XBM -static ImageNode *LoadXBMImage(const char *fileName); +static ImageNode *LoadXBMImage(const char *fileName, int rwidth, int rheight, + char preserveAspect); #endif #ifdef USE_ICONS static ImageNode *CreateImageFromXImages(XImage *image, XImage *shape); @@ -63,82 +71,87 @@ static int FreeColors(Display *d, Colormap cmap, Pixel *pixels, int n, void *closure); #endif +/* File extension to image loader mapping. */ +static const struct { + const char *extension; + ImageLoader loader; +} IMAGE_LOADERS[] = { +#ifdef USE_PNG + {".png", LoadPNGImage }, +#endif +#ifdef USE_JPEG + {".jpg", LoadJPEGImage }, + {".jpeg", LoadJPEGImage }, +#endif +#ifdef USE_CAIRO +#ifdef USE_RSVG + {".svg", LoadSVGImage }, +#endif +#endif +#ifdef USE_XPM + {".xpm", LoadXPMImage }, +#endif +#ifdef USE_XBM + {".xbm", LoadXBMImage }, +#endif +}; +static const unsigned IMAGE_LOADER_COUNT = ARRAY_LENGTH(IMAGE_LOADERS); + /** Load an image from the specified file. */ -ImageNode *LoadImage(const char *fileName, int width, int height, +ImageNode *LoadImage(const char *fileName, int rwidth, int rheight, char preserveAspect) { - unsigned nameLength; + unsigned i; + unsigned name_length; ImageNode *result = NULL; + + /* Make sure we have a reasonable file name. */ if(!fileName) { return result; } - - nameLength = strlen(fileName); - if(JUNLIKELY(nameLength == 0)) { + name_length = strlen(fileName); + if(JUNLIKELY(name_length == 0)) { return result; } - /* Attempt to load the file as a PNG image. */ -#ifdef USE_PNG - if(nameLength >= 4 - && !StrCmpNoCase(&fileName[nameLength - 4], ".png")) { - result = LoadPNGImage(fileName); - if(result) { - return result; - } - } -#endif - - /* Attempt to load the file as a JPEG image. */ -#ifdef USE_JPEG - if( (nameLength >= 4 - && !StrCmpNoCase(&fileName[nameLength - 4], ".jpg")) - || (nameLength >= 5 - && !StrCmpNoCase(&fileName[nameLength - 5], ".jpeg"))) { - result = LoadJPEGImage(fileName, width, height); - if(result) { - return result; - } - } -#endif - - /* Attempt to load the file as an SVG image. */ -#ifdef USE_CAIRO -#ifdef USE_RSVG - if(nameLength >= 4 - && !StrCmpNoCase(&fileName[nameLength - 4], ".svg")) { - result = LoadSVGImage(fileName, width, height, preserveAspect); - if(result) { - return result; - } + /* Make sure the file exists. */ + if(access(fileName, R_OK) < 0) { + return result; } -#endif -#endif - /* Attempt to load the file as an XPM image. */ -#ifdef USE_XPM - if(nameLength >= 4 - && !StrCmpNoCase(&fileName[nameLength - 4], ".xpm")) { - result = LoadXPMImage(fileName); - if(result) { - return result; + /* First we attempt to use the extension to determine the type + * to avoid trying all loaders. */ + for(i = 0; i < IMAGE_LOADER_COUNT; i++) { + const char *ext = IMAGE_LOADERS[i].extension; + const unsigned ext_length = strlen(ext); + if(JLIKELY(name_length >= ext_length)) { + const unsigned offset = name_length - ext_length; + if(!StrCmpNoCase(&fileName[offset], ext)) { + const ImageLoader loader = IMAGE_LOADERS[i].loader; + result = (loader)(fileName, rwidth, rheight, preserveAspect); + if(JLIKELY(result)) { + return result; + } + break; + } } } -#endif - /* Attempt to load the file as an XBM image. */ -#ifdef USE_XBM - if(nameLength >= 4 - && !StrCmpNoCase(&fileName[nameLength - 4], ".xbm")) { - result = LoadXBMImage(fileName); + /* We were unable to load by extension, so try everything. */ + for(i = 0; i < IMAGE_LOADER_COUNT; i++) { + const ImageLoader loader = IMAGE_LOADERS[i].loader; + result = (loader)(fileName, rwidth, rheight, preserveAspect); if(result) { + /* We were able to load the image, so it must have either the + * wrong extension or an extension we don't recognize. */ + Warning(_("unrecognized extension for \"%s\", expected \"%s\""), + fileName, IMAGE_LOADERS[i].extension); return result; } } -#endif + /* No image could be loaded. */ return result; - } /** Load an image from a pixmap. */ @@ -177,7 +190,8 @@ ImageNode *LoadImageFromDrawable(Drawable pmap, Pixmap mask) * the issues surrounding longjmp and local variables. */ #ifdef USE_PNG -ImageNode *LoadPNGImage(const char *fileName) +ImageNode *LoadPNGImage(const char *fileName, int rwidth, int rheight, + char preserveAspect) { static ImageNode *result; @@ -313,7 +327,9 @@ static void JPEGErrorHandler(j_common_ptr cinfo) { longjmp(es->jbuffer, 1); } -ImageNode *LoadJPEGImage(const char *fileName, int width, int height) +ImageNode *LoadJPEGImage(const char *fileName, + int rwidth, int rheight, + char preserveAspect) { static ImageNode *result; static struct jpeg_decompress_struct cinfo; @@ -359,14 +375,14 @@ ImageNode *LoadJPEGImage(const char *fileName, int width, int height) * the smallest absolute change. */ jpeg_calc_output_dimensions(&cinfo); - if(width != 0 && height != 0) { + if(rwidth != 0 && rheight != 0) { /* Scale using n/8 with n in [1..8]. */ int ratio; - if(abs((int)cinfo.output_width - width) - < abs((int)cinfo.output_height - height)) { - ratio = (width << 4) / cinfo.output_width; + if(abs((int)cinfo.output_width - rwidth) + < abs((int)cinfo.output_height - rheight)) { + ratio = (rwidth << 4) / cinfo.output_width; } else { - ratio = (height << 4) / cinfo.output_height; + ratio = (rheight << 4) / cinfo.output_height; } cinfo.scale_num = Max(1, Min(8, (ratio >> 2))); cinfo.scale_denom = 8; @@ -416,7 +432,7 @@ ImageNode *LoadJPEGImage(const char *fileName, int width, int height) #ifdef USE_CAIRO #ifdef USE_RSVG -ImageNode *LoadSVGImage(const char *fileName, int width, int height, +ImageNode *LoadSVGImage(const char *fileName, int rwidth, int rheight, char preserveAspect) { @@ -451,33 +467,33 @@ ImageNode *LoadSVGImage(const char *fileName, int width, int height, } rsvg_handle_get_dimensions(rh, &dim); - if(width == 0 || height == 0) { - width = dim.width; - height = dim.height; + if(rwidth == 0 || rheight == 0) { + rwidth = dim.width; + rheight = dim.height; xscale = 1.0; yscale = 1.0; } else if(preserveAspect) { - if(abs(dim.width - width) < abs(dim.height - height)) { - xscale = (float)width / dim.width; - height = dim.height * xscale; + if(abs(dim.width - rwidth) < abs(dim.height - rheight)) { + xscale = (float)rwidth / dim.width; + rheight = dim.height * xscale; } else { - xscale = (float)height / dim.height; - width = dim.width * xscale; + xscale = (float)rheight / dim.height; + rwidth = dim.width * xscale; } yscale = xscale; } else { - xscale = (float)width / dim.width; - yscale = (float)height / dim.height; + xscale = (float)rwidth / dim.width; + yscale = (float)rheight / dim.height; } - result = CreateImage(width, height, 0); - memset(result->data, 0, width * height * 4); + result = CreateImage(rwidth, rheight, 0); + memset(result->data, 0, rwidth * rheight * 4); /* Create the target surface. */ - stride = cairo_format_stride_for_width(CAIRO_FORMAT_ARGB32, width); + stride = cairo_format_stride_for_width(CAIRO_FORMAT_ARGB32, rwidth); target = cairo_image_surface_create_for_data(result->data, CAIRO_FORMAT_ARGB32, - width, height, stride); + rwidth, rheight, stride); context = cairo_create(target); cairo_scale(context, xscale, yscale); cairo_paint_with_alpha(context, 0.0); @@ -486,7 +502,7 @@ ImageNode *LoadSVGImage(const char *fileName, int width, int height, cairo_surface_destroy(target); g_object_unref(rh); - for(i = 0; i < 4 * width * height; i += 4) { + for(i = 0; i < 4 * rwidth * rheight; i += 4) { const unsigned int temp = *(unsigned int*)&result->data[i]; const unsigned int alpha = (temp >> 24) & 0xFF; const unsigned int red = (temp >> 16) & 0xFF; @@ -508,7 +524,8 @@ ImageNode *LoadSVGImage(const char *fileName, int width, int height, /** Load an XPM image from the specified file. */ #ifdef USE_XPM -ImageNode *LoadXPMImage(const char *fileName) +ImageNode *LoadXPMImage(const char *fileName, int rwidth, int rheight, + char preserveAspect) { ImageNode *result = NULL; @@ -540,7 +557,8 @@ ImageNode *LoadXPMImage(const char *fileName) /** Load an XBM image from the specified file. */ #ifdef USE_XBM -ImageNode *LoadXBMImage(const char *fileName) +ImageNode *LoadXBMImage(const char *fileName, int rwidth, int rheight, + char preserveAspect) { ImageNode *result = NULL; unsigned char *data; diff --git a/src/image.h b/src/image.h index 4ef588c4..1bdd431a 100644 --- a/src/image.h +++ b/src/image.h @@ -26,12 +26,12 @@ typedef struct ImageNode { /** Load an image from a file. * @param fileName The file containing the image. - * @param width The preferred width. - * @param height The preferred height. + * @param rwidth The preferred width. + * @param rheight The preferred height. * @param preserveAspect Set to preserve image aspect when scaling. * @return A new image node (NULL if the image could not be loaded). */ -ImageNode *LoadImage(const char *fileName, int width, int height, +ImageNode *LoadImage(const char *fileName, int rwidth, int rheight, char preserveAspect); /** Load an image from a Drawable. diff --git a/src/jwm.h b/src/jwm.h index 67accbf1..3b90c194 100644 --- a/src/jwm.h +++ b/src/jwm.h @@ -124,6 +124,7 @@ #define MOVE_DELTA 3 /**< Pixels before trigging a move. */ #define RESTART_DELAY 1000 /**< Max timeout in ms before restarting. */ #define URGENCY_DELAY 500 /**< Flash timeout in ms for urgency. */ +#define DEFAULT_TIMEOUT_MS 5000 /**< Default pipe timeout. */ #define SHELL_NAME "/bin/sh" diff --git a/src/menu.c b/src/menu.c index 10f655de..f47714b9 100644 --- a/src/menu.c +++ b/src/menu.c @@ -70,6 +70,7 @@ Menu *CreateMenu() menu->items = NULL; menu->label = NULL; menu->dynamic = NULL; + menu->timeout_ms = DEFAULT_TIMEOUT_MS; return menu; } @@ -209,7 +210,7 @@ char ShowMenu(Menu *menu, RunMenuCommandType runner, return 0; } - RegisterCallback(100, MenuCallback, menu); + RegisterCallback(settings.popupDelay, MenuCallback, menu); ShowSubmenu(menu, NULL, runner, x, y, keyboard); UnregisterCallback(MenuCallback, menu); UnpatchMenu(menu); @@ -324,8 +325,12 @@ void PatchMenu(Menu *menu) break; case MA_DYNAMIC: if(!item->submenu) { - submenu = ParseDynamicMenu(item->action.str); - submenu->itemHeight = item->action.value; + submenu = ParseDynamicMenu( + item->action.timeout_ms, + item->action.str); + if(JLIKELY(submenu)) { + submenu->itemHeight = item->action.value; + } } break; default: @@ -672,6 +677,7 @@ MenuSelectionType UpdateMotion(Menu *menu, return MENU_NOSELECTION; } else if(event->type == KeyPress) { + ActionType action; if(menu->currentIndex >= 0 || !menu->parent) { tp = menu; @@ -680,7 +686,8 @@ MenuSelectionType UpdateMotion(Menu *menu, } y = -1; - switch(GetKey(MC_NONE, event->xkey.state, event->xkey.keycode) & 0xFF) { + action = GetKey(MC_NONE, event->xkey.state, event->xkey.keycode); + switch(action.action) { case ACTION_UP: y = GetPreviousMenuIndex(tp); break; diff --git a/src/menu.h b/src/menu.h index f0100fa8..59667c31 100644 --- a/src/menu.h +++ b/src/menu.h @@ -49,6 +49,7 @@ typedef struct MenuAction { /* Extra data for the action. */ char *str; unsigned value; + unsigned timeout_ms; MenuActionType type; /**< Type of action. */ @@ -84,6 +85,7 @@ typedef struct Menu { struct MenuItem *items; /**< Menu items. */ char *label; /**< Menu label (NULL for no label). */ char *dynamic; /**< Generating command of dynamic menu. */ + unsigned timeout_ms; /**< Timeout in milliseconds for dynamic menus. */ int itemHeight; /**< User-specified menu item height. */ /* These fields are handled by menu.c */ diff --git a/src/move.c b/src/move.c index b860ad1a..81689ffa 100644 --- a/src/move.c +++ b/src/move.c @@ -354,9 +354,11 @@ char MoveClientKeyboard(ClientNode *np) moved = 0; if(event.type == KeyPress) { + ActionType action; DiscardKeyEvents(&event, np->window); - switch(GetKey(MC_NONE, event.xkey.state, event.xkey.keycode) & 0xFF) { + action = GetKey(MC_NONE, event.xkey.state, event.xkey.keycode); + switch(action.action) { case ACTION_UP: if(np->y + height > 0) { np->y -= 10; diff --git a/src/parse.c b/src/parse.c index 8bc0e0f0..c3055c19 100644 --- a/src/parse.c +++ b/src/parse.c @@ -63,6 +63,7 @@ static const StringMappingType ACTION_MAP[] = { { "move", ACTION_MOVE }, { "next", ACTION_NEXT }, { "nextstacked", ACTION_NEXTSTACK }, + { "none", ACTION_NONE }, { "prev", ACTION_PREV }, { "prevstacked", ACTION_PREVSTACK }, { "rdesktop", ACTION_RDESKTOP }, @@ -152,6 +153,8 @@ static const char *WIDTH_ATTRIBUTE = "width"; static const char *HEIGHT_ATTRIBUTE = "height"; static const char *DYNAMIC_ATTRIBUTE = "dynamic"; static const char *SPACING_ATTRIBUTE = "spacing"; +static const char *TIMEOUT_ATTRIBUTE = "timeout"; +static const char *POPUP_ATTRIBUTE = "popup"; static const char *FALSE_VALUE = "false"; static const char *TRUE_VALUE = "true"; @@ -165,9 +168,8 @@ static const char * const CONFIG_FILES[] = { static const unsigned CONFIG_FILE_COUNT = ARRAY_LENGTH(CONFIG_FILES); static char ParseFile(const char *fileName, int depth); -static char *ReadFile(FILE *fd); static TokenNode *TokenizeFile(const char *fileName); -static TokenNode *TokenizePipe(const char *command); +static TokenNode *TokenizePipe(const char *command, unsigned timeout_ms); /* Misc. */ static void Parse(const TokenNode *start, int depth); @@ -185,6 +187,7 @@ static MenuItem *InsertMenuItem(MenuItem *last); static MenuItem *ParseMenuInclude(const TokenNode *tp, Menu *menu, MenuItem *last); static TokenNode *ParseMenuIncludeHelper(const TokenNode *tp, + unsigned timeout_ms, const char *command); /* Tray. */ @@ -240,6 +243,7 @@ static int ParseAttribute(const StringMappingType *mapping, int count, int def); static int ParseSigned(const TokenNode *tp, const char *str); static unsigned ParseUnsigned(const TokenNode *tp, const char *str); +static unsigned ParseTimeout(const TokenNode *tp); static unsigned int ParseOpacity(const TokenNode *tp, const char *str); static WinLayerType ParseLayer(const TokenNode *tp, const char *str); static StatusWindowType ParseStatusWindowType(const TokenNode *tp); @@ -544,9 +548,9 @@ void ParseRootMenu(const TokenNode *start) value = FindAttribute(start->attributes, DYNAMIC_ATTRIBUTE); menu->dynamic = CopyString(value); + menu->timeout_ms = ParseTimeout(start); SetRootMenu(onroot, menu); - } /** Insert a new menu item into a menu. */ @@ -589,6 +593,7 @@ MenuItem *ParseMenuItem(const TokenNode *start, Menu *menu, MenuItem *last) last->action.type = MA_DYNAMIC; last->action.str = CopyString(start->value); + last->action.timeout_ms = ParseTimeout(start); value = FindAttribute(start->attributes, HEIGHT_ATTRIBUTE); if(value) { @@ -803,12 +808,13 @@ MenuItem *ParseMenuItem(const TokenNode *start, Menu *menu, MenuItem *last) } /** Get tokens from a menu include (either dynamic or static). */ -TokenNode *ParseMenuIncludeHelper(const TokenNode *tp, const char *command) +TokenNode *ParseMenuIncludeHelper(const TokenNode *tp, + unsigned timeout_ms, + const char *command) { TokenNode *start; - if(!strncmp(command, "exec:", 5)) { - start = TokenizePipe(&command[5]); + start = TokenizePipe(&command[5], timeout_ms); } else { start = TokenizeFile(command); } @@ -827,7 +833,10 @@ TokenNode *ParseMenuIncludeHelper(const TokenNode *tp, const char *command) MenuItem *ParseMenuInclude(const TokenNode *tp, Menu *menu, MenuItem *last) { - TokenNode *start = ParseMenuIncludeHelper(tp, tp->value); + TokenNode *start; + const unsigned timeout_ms = ParseTimeout(tp); + + start = ParseMenuIncludeHelper(tp, timeout_ms, tp->value); if(JLIKELY(start)) { last = ParseMenuItem(start->subnodeHead, menu, last); ReleaseTokens(start); @@ -836,10 +845,10 @@ MenuItem *ParseMenuInclude(const TokenNode *tp, Menu *menu, } /** Parse a dynamic menu (called from menu code). */ -Menu *ParseDynamicMenu(const char *command) +Menu *ParseDynamicMenu(unsigned timeout_ms, const char *command) { Menu *menu = NULL; - TokenNode *start = ParseMenuIncludeHelper(NULL, command); + TokenNode *start = ParseMenuIncludeHelper(NULL, timeout_ms, command); if(JLIKELY(start)) { menu = ParseMenu(start); ReleaseTokens(start); @@ -850,23 +859,25 @@ Menu *ParseDynamicMenu(const char *command) /** Parse an action. */ ActionType ParseAction(const char *str, const char **command) { - ActionType action = ACTION_NONE; + ActionType action; + action.action = ACTION_INVALID; + action.extra = 0; *command = NULL; if(!strncmp(str, "exec:", 5)) { - action = ACTION_EXEC; + action.action = ACTION_EXEC; *command = str + 5; } else if(!strncmp(str, "root:", 5)) { - action = ACTION_ROOT; + action.action = ACTION_ROOT; *command = str + 5; } else if(!strncmp(str, "resize:", 7)) { int i; - action = ACTION_RESIZE; + action.action = ACTION_RESIZE; for(i = 7; str[i]; i++) { switch(str[i]) { - case 'n': action |= ACTION_RESIZE_N; break; - case 's': action |= ACTION_RESIZE_S; break; - case 'e': action |= ACTION_RESIZE_E; break; - case 'w': action |= ACTION_RESIZE_W; break; + case 'n': action.extra |= ACTION_RESIZE_N; break; + case 's': action.extra |= ACTION_RESIZE_S; break; + case 'e': action.extra |= ACTION_RESIZE_E; break; + case 'w': action.extra |= ACTION_RESIZE_W; break; default: break; } } @@ -874,7 +885,7 @@ ActionType ParseAction(const char *str, const char **command) /* Look up the option in the key map using binary search. */ const int x = FindValue(ACTION_MAP, ACTION_MAP_COUNT, str); if(x >= 0) { - action = (ActionType)x; + action.action = (unsigned char)x; } } return action; @@ -902,7 +913,7 @@ void ParseKey(const TokenNode *tp) /* Insert the binding if it's valid. */ k = ParseAction(action, &command); - if(JUNLIKELY(k == ACTION_NONE)) { + if(JUNLIKELY(k.action == ACTION_INVALID)) { ParseError(tp, _("invalid Key action: \"%s\""), action); } else { InsertBinding(k, mask, key, code, command); @@ -933,7 +944,7 @@ void ParseMouse(const TokenNode *tp) return; } key = ParseAction(action, &command); - if(JUNLIKELY(key == ACTION_NONE)) { + if(JUNLIKELY(key.action == ACTION_INVALID)) { ParseError(tp, _("invalid Mouse action: \"%s\""), action); return; } @@ -1046,13 +1057,16 @@ void ParseActiveWindowStyle(const TokenNode *tp) /** Parse an include. */ void ParseInclude(const TokenNode *tp, int depth) { + unsigned timeout_ms; + if(JUNLIKELY(!tp->value)) { ParseError(tp, _("no include file specified")); return; } + timeout_ms = ParseTimeout(tp); if(!strncmp(tp->value, "exec:", 5)) { - TokenNode *tokens = TokenizePipe(&tp->value[5]); + TokenNode *tokens = TokenizePipe(&tp->value[5], timeout_ms); if(JLIKELY(tokens)) { Parse(tokens, 0); ReleaseTokens(tokens); @@ -1237,15 +1251,17 @@ void ParseActive(const TokenNode *tp, ColorType fg, void ParseTray(const TokenNode *tp) { static const StringMappingType mapping[] = { - { "bottom", THIDE_BOTTOM }, - { "left", THIDE_LEFT }, - { "off", THIDE_OFF }, - { "on", THIDE_ON }, - { "right", THIDE_RIGHT }, - { "top", THIDE_TOP } + { "bottom", THIDE_BOTTOM }, + { "invisible", THIDE_INVISIBLE }, + { "left", THIDE_LEFT }, + { "off", THIDE_OFF }, + { "on", THIDE_ON }, + { "right", THIDE_RIGHT }, + { "top", THIDE_TOP } }; const TokenNode *np; const char *attr; + unsigned delay = 0; TrayType *tray; TrayAutoHideType autohide; @@ -1255,7 +1271,11 @@ void ParseTray(const TokenNode *tp) autohide = ParseAttribute(mapping, ARRAY_LENGTH(mapping), tp, "autohide", THIDE_OFF); - SetAutoHideTray(tray, autohide); + attr = FindAttribute(tp->attributes, "delay"); + if(attr) { + delay = ParseUnsigned(tp, attr); + } + SetAutoHideTray(tray, autohide, delay); attr = FindAttribute(tp->attributes, X_ATTRIBUTE); if(attr) { @@ -1455,7 +1475,7 @@ void ParseTrayButton(const TokenNode *tp, TrayType *tray) icon = FindAttribute(tp->attributes, ICON_ATTRIBUTE); label = FindAttribute(tp->attributes, LABEL_ATTRIBUTE); - popup = FindAttribute(tp->attributes, "popup"); + popup = FindAttribute(tp->attributes, POPUP_ATTRIBUTE); temp = FindAttribute(tp->attributes, WIDTH_ATTRIBUTE); if(temp) { @@ -1951,48 +1971,6 @@ int ParseAttribute(const StringMappingType *mapping, int count, } } -/** Read a file. */ -char *ReadFile(FILE *fd) -{ - const int BLOCK_SIZE = 1024; - - char *buffer; - int len, max; - - len = 0; - max = BLOCK_SIZE; - buffer = Allocate(max + 1); - - for(;;) { - const size_t count = fread(&buffer[len], 1, max - len, fd); - if(count == 0) { - if(feof(fd)) { - break; - } else if(errno == EAGAIN || errno == EWOULDBLOCK || errno == EINTR) { - continue; - } else { - Warning(_("could not read file: %s"), strerror(errno)); - break; - } - } - len += count; - if(len == max) { - max += BLOCK_SIZE; - if(JUNLIKELY(max < 0)) { - /* File is too big. */ - break; - } - buffer = Reallocate(buffer, max + 1); - if(JUNLIKELY(buffer == NULL)) { - FatalError(_("out of memory")); - } - } - } - buffer[len] = 0; - - return buffer; -} - /** Tokenize a file by memory mapping it. */ TokenNode *TokenizeFile(const char *fileName) { @@ -2026,24 +2004,17 @@ TokenNode *TokenizeFile(const char *fileName) } /** Tokenize the output of a command. */ -TokenNode *TokenizePipe(const char *command) +TokenNode *TokenizePipe(const char *command, unsigned timeout_ms) { TokenNode *tokens; - FILE *fp; char *path; char *buffer; path = CopyString(command); ExpandPath(&path); - fp = popen(path, "r"); + buffer = ReadFromProcess(path, timeout_ms); Release(path); - - buffer = NULL; - if(JLIKELY(fp)) { - buffer = ReadFile(fp); - pclose(fp); - } if(JUNLIKELY(!buffer)) { return NULL; } @@ -2071,7 +2042,7 @@ int ParseSigned(const TokenNode *tp, const char *str) } /** Parse an unsigned integer. */ -unsigned int ParseUnsigned(const TokenNode *tp, const char *str) +unsigned ParseUnsigned(const TokenNode *tp, const char *str) { long value; if(JUNLIKELY(!str)) { @@ -2083,12 +2054,24 @@ unsigned int ParseUnsigned(const TokenNode *tp, const char *str) ParseError(tp, _("invalid setting: %s"), str); return 0; } else { - return (unsigned int)value; + return (unsigned)value; + } +} + +/** Parse a timeout attribute. */ +unsigned ParseTimeout(const TokenNode *tp) +{ + unsigned timeout_ms = DEFAULT_TIMEOUT_MS; + char *temp = FindAttribute(tp->attributes, TIMEOUT_ATTRIBUTE); + if(temp) { + timeout_ms = ParseUnsigned(tp, temp); + timeout_ms = timeout_ms == 0 ? DEFAULT_TIMEOUT_MS : timeout_ms; } + return timeout_ms; } /** Parse opacity (a float between 0.0 and 1.0). */ -unsigned int ParseOpacity(const TokenNode *tp, const char *str) +unsigned ParseOpacity(const TokenNode *tp, const char *str) { float value; if(JUNLIKELY(!str)) { diff --git a/src/parse.h b/src/parse.h index 4c611255..92b2c6b3 100644 --- a/src/parse.h +++ b/src/parse.h @@ -18,10 +18,11 @@ struct Menu; void ParseConfig(const char *fileName); /** Parse a dynamic menu. + * @param timeout_ms The timeout in milliseconds. * @param command The command to generate the menu. * @return The menu. */ -struct Menu *ParseDynamicMenu(const char *command); +struct Menu *ParseDynamicMenu(unsigned timeout_ms, const char *command); #endif /* PARSE_H */ diff --git a/src/resize.c b/src/resize.c index c52e4e8d..fbc503c4 100644 --- a/src/resize.c +++ b/src/resize.c @@ -127,7 +127,6 @@ void ResizeClient(ClientNode *np, MouseContextType context, int oldw, oldh; int gwidth, gheight; int lastgwidth, lastgheight; - int delta; int north, south, east, west; Assert(np); @@ -318,9 +317,11 @@ void ResizeClientKeyboard(ClientNode *np, MouseContextType context) if(event.type == KeyPress) { int deltax = 0; int deltay = 0; + ActionType action; DiscardKeyEvents(&event, np->window); - switch(GetKey(MC_NONE, event.xkey.state, event.xkey.keycode) & 0xFF) { + action = GetKey(MC_NONE, event.xkey.state, event.xkey.keycode); + switch(action.action) { case ACTION_UP: deltay = Min(-np->yinc, -10); break; diff --git a/src/root.c b/src/root.c index d4221eb1..b381982e 100644 --- a/src/root.c +++ b/src/root.c @@ -136,7 +136,7 @@ void SetRootMenu(const char *indexes, Menu *m) unsigned y; char found = 0; for(y = 0; y < ROOT_MENU_COUNT; y++) { - if(x != y && rootMenu[y] == rootMenu[x]) { + if(index != y && rootMenu[y] == rootMenu[index]) { found = 1; break; } @@ -189,7 +189,8 @@ char ShowRootMenu(int index, int x, int y, char keyboard) return 1; } if(rootMenu[index]->dynamic) { - Menu *menu = ParseDynamicMenu(rootMenu[index]->dynamic); + Menu *menu = rootMenu[index]; + menu = ParseDynamicMenu(menu->timeout_ms, menu->dynamic); if(menu) { InitializeMenu(menu); ShowMenu(menu, RunRootCommand, x, y, keyboard); diff --git a/src/taskbar.c b/src/taskbar.c index 74e1a5ec..a8cc4393 100644 --- a/src/taskbar.c +++ b/src/taskbar.c @@ -77,6 +77,7 @@ static void ProcessTaskButtonEvent(TrayComponentType *cp, int x, int y, int mask); static void MinimizeGroup(const TaskEntry *tp); static void FocusGroup(const TaskEntry *tp); +static char IsGroupOnTop(const TaskEntry *entry); static void ProcessTaskMotionEvent(TrayComponentType *cp, int x, int y, int mask); static void SignalTaskbar(const TimeType *now, int x, int y, Window w, @@ -224,6 +225,35 @@ void ComputeItemSize(TaskBarType *tp) } } +/** Check if all clients in this grou are on the top of their layer. */ +char IsGroupOnTop(const TaskEntry *entry) +{ + ClientEntry *cp; + int layer; + + for(layer = FIRST_LAYER; layer <= LAST_LAYER; layer++) { + ClientNode *np; + char foundOther = 0; + for(np = nodes[layer]; np; np = np->next) { + char found = 0; + if(!IsClientOnCurrentDesktop(np)) { + continue; + } + for(cp = entry->clients; cp; cp = cp->next) { + if(np == cp->client) { + if(foundOther) { + return 0; + } + found = 1; + break; + } + } + foundOther = !found; + } + } + return 1; +} + /** Process a task list button event. */ void ProcessTaskButtonEvent(TrayComponentType *cp, int x, int y, int mask) { @@ -234,49 +264,54 @@ void ProcessTaskButtonEvent(TrayComponentType *cp, int x, int y, int mask) if(entry) { ClientEntry *cp; ClientNode *focused = NULL; - char onTop = 0; char hasActive = 0; + char allTop; switch(mask) { case Button1: /* Raise or minimize items in this group. */ - for(cp = entry->clients; cp; cp = cp->next) { - int layer; - char foundTop = 0; - if(cp->client->state.status & STAT_MINIMIZED) { - continue; - } else if(!ShouldFocus(cp->client, 0)) { - continue; - } - for(layer = LAST_LAYER; layer >= FIRST_LAYER; layer--) { - ClientNode *np; - for(np = nodes[layer]; np; np = np->next) { - if(np->state.status & STAT_MINIMIZED) { - continue; - } else if(!ShouldFocus(np, 0)) { - continue; - } - if(np == cp->client) { - const char isActive = (np->state.status & STAT_ACTIVE) - && IsClientOnCurrentDesktop(np); - onTop = onTop || !foundTop; - if(isActive) { - focused = np; + + allTop = IsGroupOnTop(entry); + if(allTop) { + for(cp = entry->clients; cp; cp = cp->next) { + int layer; + if(cp->client->state.status & STAT_MINIMIZED) { + continue; + } else if(!ShouldFocus(cp->client, 0)) { + continue; + } + for(layer = LAST_LAYER; layer >= FIRST_LAYER; layer--) { + ClientNode *np; + for(np = nodes[layer]; np; np = np->next) { + if(np->state.status & STAT_MINIMIZED) { + continue; + } else if(!ShouldFocus(np, 0)) { + continue; } - if(!(cp->client->state.status - & (STAT_CANFOCUS | STAT_TAKEFOCUS)) - || isActive) { - hasActive = 1; + if(np == cp->client) { + const char isActive = (np->state.status & STAT_ACTIVE) + && IsClientOnCurrentDesktop(np); + if(isActive) { + focused = np; + } + if(!(cp->client->state.status + & (STAT_CANFOCUS | STAT_TAKEFOCUS)) + || isActive) { + hasActive = 1; + } + } + if(hasActive) { + goto FoundActiveAndTop; } } - if(hasActive && onTop) { - goto FoundActiveAndTop; - } - foundTop = 1; } } } FoundActiveAndTop: - if(hasActive && onTop) { + if(hasActive && allTop) { + /* The client is already active. + * Here we switch desktops if the client is on another + * desktop too. Otherwise we minimize the client. + */ ClientNode *nextClient = NULL; int i; @@ -308,8 +343,12 @@ void ProcessTaskButtonEvent(TrayComponentType *cp, int x, int y, int mask) MinimizeGroup(entry); } } else { + /* The group was not currently on top, raise the group. */ FocusGroup(entry); if(focused) { + /* If the group already contained the active client, + * ensure that the same client remains active. + */ FocusClient(focused); } } diff --git a/src/tray.c b/src/tray.c index 2b8647d0..7bc9bc3e 100644 --- a/src/tray.c +++ b/src/tray.c @@ -16,7 +16,6 @@ #include "error.h" #include "taskbar.h" #include "menu.h" -#include "timing.h" #include "screen.h" #include "settings.h" #include "event.h" @@ -198,7 +197,9 @@ void DestroyTray(void) while(trays) { tp = trays->next; - UnregisterCallback(SignalTray, trays); + if(trays->autoHide != THIDE_OFF) { + UnregisterCallback(SignalTray, trays); + } while(trays->components) { cp = trays->components->next; Release(trays->components); @@ -230,7 +231,9 @@ TrayType *CreateTray(void) tp->valign = TALIGN_FIXED; tp->halign = TALIGN_FIXED; + GetCurrentTime(&tp->showTime); tp->autoHide = THIDE_OFF; + tp->autoHideDelay = 0; tp->hidden = 0; tp->window = None; @@ -241,8 +244,6 @@ TrayType *CreateTray(void) tp->next = trays; trays = tp; - RegisterCallback(100, SignalTray, tp); - return tp; } @@ -546,6 +547,7 @@ void ShowTray(TrayType *tp) if(tp->hidden) { tp->hidden = 0; + GetCurrentTime(&tp->showTime); JXMoveWindow(display, tp->window, tp->x, tp->y); JXQueryPointer(display, rootWindow, &win1, &win2, @@ -620,6 +622,11 @@ void HideTray(TrayType *tp) x = tp->x; y = sp->y + sp->height - 1; break; + case THIDE_INVISIBLE: + /* Off the top of the screen. */ + x = tp->x; + y = 0 - tp->height - 1; + break; default: Assert(0); return; @@ -666,11 +673,18 @@ char ProcessTrayEvent(const XEvent *event) void SignalTray(const TimeType *now, int x, int y, Window w, void *data) { TrayType *tp = (TrayType*)data; - if(tp->autoHide != THIDE_OFF && !tp->hidden && !menuShown) { - if(x < tp->x || x >= tp->x + tp->width - || y < tp->y || y >= tp->y + tp->height) { + Assert(tp->autoHide != THIDE_OFF); + if(tp->hidden || menuShown) { + return; + } + + if(x < tp->x || x >= tp->x + tp->width + || y < tp->y || y >= tp->y + tp->height) { + if(GetTimeDifference(now, &tp->showTime) >= tp->autoHideDelay) { HideTray(tp); } + } else { + tp->showTime = *now; } } @@ -1027,10 +1041,20 @@ unsigned int GetTrayCount(void) } /** Determine if a tray should autohide. */ -void SetAutoHideTray(TrayType *tp, TrayAutoHideType autohide) +void SetAutoHideTray(TrayType *tp, + TrayAutoHideType autohide, + unsigned timeout_ms) { - Assert(tp); + if(JUNLIKELY(tp->autoHide != THIDE_OFF)) { + UnregisterCallback(SignalTray, tp); + } + tp->autoHide = autohide; + tp->autoHideDelay = timeout_ms; + + if(autohide != THIDE_OFF) { + RegisterCallback(timeout_ms, SignalTray, tp); + } } /** Set the x-coordinate of a tray. */ diff --git a/src/tray.h b/src/tray.h index 93e919ee..a3f5b889 100644 --- a/src/tray.h +++ b/src/tray.h @@ -11,6 +11,7 @@ #define TRAY_H #include "hint.h" +#include "timing.h" /** Enumeration of tray layouts. */ typedef unsigned char LayoutType; @@ -34,6 +35,7 @@ typedef unsigned char TrayAutoHideType; #define THIDE_TOP 3 /**< Hide on the top. */ #define THIDE_BOTTOM 4 /**< Hide on the bottom. */ #define THIDE_ON 5 /**< Auto-select hide location. */ +#define THIDE_INVISIBLE 6 /**< Make the tray invisible when hidden. */ #define THIDE_RAISED 8 /**< Mask to indicate the tray is raised. */ /** Structure to hold common tray component data. @@ -140,7 +142,9 @@ typedef struct TrayType { TrayAlignmentType valign; /**< Vertical alignment. */ TrayAlignmentType halign; /**< Horizontal alignment. */ + TimeType showTime; TrayAutoHideType autoHide; + unsigned autoHideDelay; char hidden; /**< 1 if hidden (due to autohide), 0 otherwise. */ Window window; /**< The tray window. */ @@ -233,11 +237,14 @@ unsigned int GetTrayCount(void); */ char ProcessTrayEvent(const XEvent *event); -/** Set whether auto hide is enabled for a tray. +/** Set whether auto-hide is enabled for a tray. * @param tp The tray. - * @param autohide The auto hide setting. + * @param autohide The auto-hide setting. + * @param delay_ms The auto-hide timeout in milliseconds. */ -void SetAutoHideTray(TrayType *tp, TrayAutoHideType autohide); +void SetAutoHideTray(TrayType *tp, + TrayAutoHideType autohide, + unsigned delay_ms); /** Set the tray x-coordinate. * @param tp The tray. diff --git a/xslt/jwm-2.4.xslt b/xslt/jwm-2.4.xslt index 8d1d91a5..cb2d6e20 100644 --- a/xslt/jwm-2.4.xslt +++ b/xslt/jwm-2.4.xslt @@ -5,7 +5,6 @@ xsltproc jwm-2.4.xsl oldjwmrc > newjwmrc All relevant JWM configuration files will need to be updated. - Note: auto-hide trays are assumed to hide to the bottom of the screen. --> Date: Sat, 30 Dec 2017 19:53:00 -0600 Subject: [PATCH 4/9] made configure script work for more things, and added options into the CMakeLists correctly for usage via command-line (i.e. -DOPTION:TYPE=VALUE) --- CMakeLists.txt | 105 +++++++++++++++++++++++------------------------- cmake/configure | 64 ++++++++++++++++------------- 2 files changed, 86 insertions(+), 83 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 5594589c..28a67545 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,10 +18,9 @@ set(LOCALE_DIR "/locale") set(LOCALEDIR "${CMAKE_INSTALL_PREFIX}${LOCALE_DIR}") set(ARCH_INDEP_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}") ## TODO... make configure script that does: mkdir bin && cd bin && cmake .. -set(USE_ICONS true) +set(USE_ICONS true CACHE BOOL "Disable Icon supprot") ## path for custom cmake modules set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/modules/") - ## DON'T build in here!!!! OK?!?!?! if ( ${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR} ) message( FATAL_ERROR "In-source builds not allowed. Please make a new directory (called a build directory) and run CMake from there. You may need to remove CMakeCache.txt." ) @@ -44,8 +43,8 @@ endif() set(ALL_LIBS "${X11_LIBRARIES}" "${X11_X11_LIB}") set(JWM_INCLUDES "${X11_X11_INCLUDE_PATH}") #libXpm -set(USE_XPM ${X11_Xpm_FOUND}) -if(X11_Xpm_FOUND) +set(USE_XPM ${X11_Xpm_FOUND} CACHE BOOL "Use XPM") +if(USE_XPM) ## ALL_LIBS is the variable to store all the libraries we find set(ALL_LIBS "${ALL_LIBS}" "${X11_Xpm_LIB}") ## JWM_INCLUDES is the variable to contain all the includes we find @@ -53,32 +52,33 @@ if(X11_Xpm_FOUND) endif() #libXinerama -set(USE_XINERAMA ${X11_Xinerama_FOUND}) -if(X11_Xinerama_FOUND) +set(USE_XINERAMA ${X11_Xinerama_FOUND} CACHE BOOL "Use Xinerama") +if(USE_XINERAMA) set(ALL_LIBS "${ALL_LIBS}" "${X11_Xinerama_LIB}") set(JWM_INCLUDES "${JWM_INCLUDES}" "${X11_Xinerama_INCLUDE_PATH}") endif() #libXft find_package(FreeType QUIET) -if(FREETYPE_FOUND) +set(USE_XFT ${FREETYPE_FOUND} CACHE BOOL "Use XFT") +if(USE_XFT) message("FREETYPE found") set(ALL_LIBS "${ALL_LIBS}" "${X11_Xft_LIB}" "${FREETYPE_LIBRARIES}") set(JWM_INCLUDES "${JWM_INCLUDES}" "${X11_Xft_INCLUDE_PATH}" "${FREETYPE_INCLUDE_DIRS}") endif() -set(USE_XFT ${FREETYPE_FOUND}) + #libXmu -set(USE_XMU ${X11_Xmu_FOUND}) -if(X11_Xmu_FOUND) +set(USE_XMU ${X11_Xmu_FOUND} CACHE BOOL "Use XMU") +if(USE_XMU) message("Found X11 Xmu") set(ALL_LIBS "${ALL_LIBS}" "${X11_Xmu_LIB}") set(JWM_INCLUDES "${JWM_INCLUDES}" "${X11_Xmu_INCLUDE_PATH}") endif() #libXrender -set(USE_XRENDER ${X11_Xrender_FOUND}) -if(X11_Xrender_FOUND) +set(USE_XRENDER ${X11_Xrender_FOUND} CACHE BOOL "Use XRENDER") +if(USE_XRENDER) set(ALL_LIBS "${ALL_LIBS}" "${X11_Xrender_LIB}") set(JWM_INCLUDES "${JWM_INCLUDES}" "${X11_Xrender_INCLUDE_PATH}") endif() @@ -88,46 +88,47 @@ if(X11_Xext_FOUND) set(ALL_LIBS "${ALL_LIBS}" "${X11_Xext_LIB}") #set(JWM_INCLUDES "${JWM_INCLUDES}" "${}") endif() - -#libpng -find_package(PNG QUIET) -set(USE_PNG ${PNG_FOUND}) -if(PNG_FOUND) - set(ALL_LIBS "${ALL_LIBS}" "${PNG_LIBRARIES}") - set(JWM_INCLUDES "${JWM_INCLUDES}" "${PNG_INCLUDE_DIRS}") -endif() - -#libjpeg -find_package(JPEG QUIET) -set(USE_JPEG ${JPEG_FOUND}) -if(PNG_FOUND) - set(ALL_LIBS "${ALL_LIBS}" "${JPEG_LIBRARIES}") - set(JWM_INCLUDES "${JWM_INCLUDES}" "${JPEG_INCLUDE_DIRS}") -endif() #fribidi find_package(Fribidi QUIET) -set(USE_FRIBIDI ${FRIBIDI_FOUND}) -if(FRIBIDI_FOUND) +set(USE_FRIBIDI ${FRIBIDI_FOUND} CACHE BOOL "Use Fribidi") +if(USE_FRIBIDI) set(ALL_LIBS "${ALL_LIBS}" "${FRIBIDI_LIBRARIES}") set(JWM_INCLUDES "${JWM_INCLUDES}" "${FRIBIDI_INCLUDE_DIR}") endif() +if(USE_ICONS) + #libpng + find_package(PNG QUIET) + set(USE_PNG ${PNG_FOUND} CACHE BOOL "Use PNG") + if(USE_PNG) + set(ALL_LIBS "${ALL_LIBS}" "${PNG_LIBRARIES}") + set(JWM_INCLUDES "${JWM_INCLUDES}" "${PNG_INCLUDE_DIRS}") + endif() -#Cairo -find_package(Cairo) -set(USE_CAIRO ${CAIRO_FOUND}) -if(CAIRO_FOUND) - set(ALL_LIBS "${ALL_LIBS}" "${CAIRO_LIBRARIES}") - set(JWM_INCLUDES "${JWM_INCLUDES}" "${CAIRO_INCLUDE_DIRS}") -endif() + #libjpeg + find_package(JPEG QUIET) + set(USE_JPEG ${JPEG_FOUND} CACHE BOOL "Use JPG") + if(USE_JPEG) + set(ALL_LIBS "${ALL_LIBS}" "${JPEG_LIBRARIES}") + set(JWM_INCLUDES "${JWM_INCLUDES}" "${JPEG_INCLUDE_DIRS}") + endif() -#librsvg2 -find_package(RSVG) -set(USE_RSVG ${RSVG_FOUND}) -if(RSVG_FOUND) - message("Found RSVG") - set(ALL_LIBS "${ALL_LIBS}" "${RSVG_LIBRARIES}") - set(JWM_INCLUDES "${JWM_INCLUDES}" "${RSVG_INCLUDE_DIRS}") -endif() + #Cairo + find_package(Cairo) + set(USE_CAIRO ${CAIRO_FOUND} CACHE BOOL "Use Cairo") + if(USE_CAIRO) + set(ALL_LIBS "${ALL_LIBS}" "${CAIRO_LIBRARIES}") + set(JWM_INCLUDES "${JWM_INCLUDES}" "${CAIRO_INCLUDE_DIRS}") + endif() + + #librsvg2 + find_package(RSVG) + set(USE_RSVG ${RSVG_FOUND} CACHE BOOL "Use RSVG") + if(USE_RSVG) + message("Found RSVG") + set(ALL_LIBS "${ALL_LIBS}" "${RSVG_LIBRARIES}") + set(JWM_INCLUDES "${JWM_INCLUDES}" "${RSVG_INCLUDE_DIRS}") + endif() +endif() # USE_ICONS #nanosvg #find_package( QUIET) @@ -206,14 +207,6 @@ set(__EXTENSIONS__ "${_XOPEN_SOURCE_EXTENDED}") if(_XOPEN_SOURCE_EXTENDED) set(_XOPEN_SOURCE 600L) endif() -##TODO: -#AC_ARG_ENABLE(confirm, -# AC_HELP_STRING([--disable-confirm], [disable confirm dialogs]) ) -#if test "$enable_confirm" = "no" ; then -# AC_DEFINE(DISABLE_CONFIRM, 1, [Define to disable confirm dialogs]) -#else -# enable_confirm="yes" -#fi ## gettext # https://cmake.org/cmake/help/v2.8.12/cmake.html#module:FindGettext @@ -288,13 +281,14 @@ set(JWM_SRCS ) ######### Build ############### -## add the library +## add the library if we want a separate library #add_library(JWM STATIC ${JWM_SRCS}) ## make the executable add_executable(${PROJECT_NAME} src/main.c ${JWM_SRCS}) ## link the libs to the executable target_link_libraries(${PROJECT_NAME} "${ALL_LIBS}") + ## install jwm and libJWM install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION bin) @@ -306,7 +300,8 @@ install(FILES ${ICONS} DESTINATION "${ARCH_INDEP_INSTALL_DIR}/share/pixmaps") ##install man page message("creating ${PROJECT_NAME}.1") configure_file("${CMAKE_SOURCE_DIR}/${PROJECT_NAME}.1.in" "${CMAKE_SOURCE_DIR}/${PROJECT_NAME}.1") -install(FILES "${PROJECT_NAME}.1" DESTINATION "${ARCH_INDEP_INSTALL_DIR}/share/man/man1/") +set(MAN_DIR "${ARCH_INDEP_INSTALL_DIR}/share/man/man1/" CACHE STRING "Man page installation directory") +install(FILES "${PROJECT_NAME}.1" DESTINATION "${MAN_DIR}") ## configure header configure_file("${CMAKE_SOURCE_DIR}/cmake/config.h.in" ../config.h) diff --git a/cmake/configure b/cmake/configure index 1dfc2907..7934b9c0 100755 --- a/cmake/configure +++ b/cmake/configure @@ -158,7 +158,7 @@ addArguments() } addBool() { - [ "$2" -eq "" ] && 2="true" + [ "$2" -eq "" ] && 2="TRUE" addArguments "$1" BOOL "$2" } andInt() @@ -171,17 +171,19 @@ addString() [ "$2" -eq "" ] && return addArguments "$1" STRING "$2" } -case $1 in +while : +do + case $1 in -h|--help|-\?)usage;; --prefix=*)addString "ARCH_INDEP_INSTALL_DIR" "$(getEQ ${1})";; --exec-prefix=*)addString "CMAKE_INSTALL_PREFIX" "$(getEQ ${1})";; --bindir=*)BINDIR=$(getEQ "${1}");; - --sbindir=*)SBINDIR=$(getEQ "${1}");; - --libexecdir=*)LIBEXECDIR=$(getEQ "${1}");; - --sysconfdir=*)SYSCONFDIR=$(getEQ "${1}");; - --sharedstatedir=*)SHAREDSTATEDIR=$(getEQ "${1}");; - --localstatedir=*)LOCALSTATEDIR=$(getEQ "${1}");; - --runstatedir=*)RUNSTATEDIR=$(getEQ "${1}");; + --sbindir=*)SBINDIR=$(getEQ "${1}");; ## do we need this? + --libexecdir=*)LIBEXECDIR=$(getEQ "${1}");; ## do we need this? + --sysconfdir=*)addString "SYSCONF" "$(getEQ ${1})";; + --sharedstatedir=*)SHAREDSTATEDIR=$(getEQ "${1}");; ## do we need this? + --localstatedir=*)LOCALSTATEDIR=$(getEQ "${1}");; ## do we need this? + --runstatedir=*)RUNSTATEDIR=$(getEQ "${1}");; ## do we need this? --libdir=*)LIBDIR=$(getEQ "${1}");; --includedir=*)INCLUDEDIR=$(getEQ "${1}");; --oldincludedir=*)OLDINCLUDEDIR=$(getEQ "${1}");; @@ -189,30 +191,30 @@ case $1 in --datadir=*)DATADIR=$(getEQ "${1}");; --infodir=*)INFODIR=$(getEQ "${1}");; --localedir=*)LOCALEDIR=$(getEQ "${1}");; - --mandir=*)MANDIR=$(getEQ "${1}");; - --docdir=*)DOCDIR=$(getEQ "${1}");; + --mandir=*)addString "MAN_DIR" "$(getEQ ${1})";; + --docdir=*)DOCDIR=$(getEQ "${1}");; ## do we need this? --htmldir=*)HTMLDIR=$(getEQ "${1}");; --dvidir=*)DVIDIR=$(getEQ "${1}");; --pdfdir=*)PDFDIR=$(getEQ "${1}");; --psdir=*)PSDIR=$(getEQ "${1}");; - --x-includes=*)X_INCLUDES=$(getEQ "${1}");; - --x-libraries=*)X_LIBRARIES=$(getEQ "${1}");; + --x-includes=*)addString "X11_X11_INCLUDE_PATH" "$(getEQ ${1})";; + --x-libraries=*)addString "X11_LIBRARIES" "$(getEQ ${1})";; --build=*)BUILD=$(getEQ "${1}");; --host=*)HOST=$(getEQ "${1}");; - --disable-confirm)ARGUMENTS=(${ARGUMENTS[@]} "-DDISABLE_CONFIRM:INT=1");; - --disable-icons);; - --disable-png);; - --disable-cairo);; - --disable-rsvg);; - --disable-jpeg);; - --disable-xft);; - --disable-xrender);; - --disable-fribidi);; - --disable-xpm);; - --disable-xbm);; - --disable-shape);; - --disable-xmu);; - --disable-xinerama);; + --disable-confirm)andInt "DISABLE_CONFIRM" "1";; + --disable-icons)addBool "USE_ICONS" FALSE;; + --disable-png)addBool "USE_PNG" FALSE;; + --disable-cairo)addBool "USE_CAIRO" FALSE;; + --disable-rsvg)addBool "USE_RSVG" FALSE;; + --disable-jpeg)addBool "USE_JPEG" FALSE;; + --disable-xft)addBool "USE_XFT" FALSE;; + --disable-xrender)addBool "USE_XRENDER" FALSE;; + --disable-fribidi)addBool "USE_FRIBIDI" FALSE;; + --disable-xpm)addBool "USE_XPM" FALSE;; + --disable-xbm)addBool "USE_XBM" FALSE;; + --disable-shape)addBool "USE_SHAPE" FALSE;; ## where is this? what is it?? + --disable-xmu)addBool "USE_XMU" FALSE;; + --disable-xinerama)addBool "USE_XINERAMA" FALSE;; --disable-rpath);; --disable-nls);; --enable-debug);; @@ -226,8 +228,14 @@ case $1 in --without-libintl-prefix)unset WITH_LIBINTL_PREFIX;; --with-*);; --without-*);; -esac - + --) + shift + break + ;; + *)break;; + esac + shift +done [ -d bin ] || mkdir bin cd bin cmake ${ARGUMENTS[@]} .. From 34b10c084deded7e35983597d7f4323d4e334368 Mon Sep 17 00:00:00 2001 From: Israel- Date: Sat, 30 Dec 2017 19:59:27 -0600 Subject: [PATCH 5/9] Fix minor script issues --- cmake/configure | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/cmake/configure b/cmake/configure index 7934b9c0..a7c126c3 100755 --- a/cmake/configure +++ b/cmake/configure @@ -154,21 +154,30 @@ addArguments() ARG="$1" TYPE="$2" VALUE="$3" - ARGUMENTS="${ARGUMENTS[*]} -D$ARG:$TYPE=$VALUE" + ARGUMENTS="${ARGUMENTS} -D$ARG:$TYPE=$VALUE" } addBool() { - [ "$2" -eq "" ] && 2="TRUE" + if [ -z "$2" ] + then + 2="TRUE" + fi addArguments "$1" BOOL "$2" } andInt() { - [ "$2" -eq "" ] && 2="1" + if [ -z "$2" ] + then + 2="1" + fi addArguments "$1" INT "$2" } addString() { - [ "$2" -eq "" ] && return + if [ -z "$2" ] + then + return + fi addArguments "$1" STRING "$2" } while : @@ -236,6 +245,6 @@ do esac shift done -[ -d bin ] || mkdir bin -cd bin -cmake ${ARGUMENTS[@]} .. +#[ -d bin ] || mkdir bin +#cd bin +cmake ${ARGUMENTS} .. From 77ea8cd553f7bf1ca05a57076e2af18677bef069 Mon Sep 17 00:00:00 2001 From: Israel- Date: Mon, 1 Jan 2018 16:01:10 -0600 Subject: [PATCH 6/9] More CMakeLists fixes. More compatibility in configure script --- CMakeLists.txt | 96 ++++- cmake/configure | 107 ++++-- cmake/modules/FindFreeType.cmake | 2 +- po/da.po | 572 ++++++++++++++--------------- po/de.po | 576 ++++++++++++++--------------- po/es.po | 590 +++++++++++++++--------------- po/fr.po | 578 ++++++++++++++--------------- po/hu.po | 588 ++++++++++++++--------------- po/it.po | 606 +++++++++++++++--------------- po/lt.po | 581 ++++++++++++++--------------- po/nl.po | 602 +++++++++++++++--------------- po/pl.po | 598 +++++++++++++++--------------- po/pt.po | 610 +++++++++++++++---------------- po/pt_BR.po | 594 +++++++++++++++--------------- po/ru.po | 610 +++++++++++++++---------------- po/zh_CN.po | 584 ++++++++++++++--------------- po/zh_TW.po | 578 ++++++++++++++--------------- 17 files changed, 4289 insertions(+), 4183 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 28a67545..e380f390 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -17,10 +17,13 @@ set(PACKAGE_TARNAME "${PROJECT_NAME}") set(LOCALE_DIR "/locale") set(LOCALEDIR "${CMAKE_INSTALL_PREFIX}${LOCALE_DIR}") set(ARCH_INDEP_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}") -## TODO... make configure script that does: mkdir bin && cd bin && cmake .. -set(USE_ICONS true CACHE BOOL "Disable Icon supprot") +set(USE_ICONS TRUE CACHE BOOL "Disable Icon supprot") +set(USE_NLS TRUE CACHE BOOL "Disable translation of program messages to the user's native language") +set(ENABLE_NLS "${USE_NLS}") +set(STDC_HEADERS TRUE) ## path for custom cmake modules set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/modules/") + ## DON'T build in here!!!! OK?!?!?! if ( ${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR} ) message( FATAL_ERROR "In-source builds not allowed. Please make a new directory (called a build directory) and run CMake from there. You may need to remove CMakeCache.txt." ) @@ -28,12 +31,14 @@ endif() ## first line of our generated config.h file set(SYSTEM_CONFIG "${SYSCONF}system.jwmrc") - +## Set debug if using cmake debug string(COMPARE EQUAL "${CMAKE_BUILD_TYPE}" "Debug" D_RES) set(DEBUG "${D_RES}") + ######## FIND STUFF #################### -##### LIBRARIES ##### +##### PACKAGED LIBRARIES ##### +message("Looking for packaged libraries") ## We need X11 find_package(X11 REQUIRED) string(COMPARE EQUAL "${X11_INCLUDE_DIR}" "" x11_result) @@ -122,7 +127,11 @@ if(USE_ICONS) #librsvg2 find_package(RSVG) - set(USE_RSVG ${RSVG_FOUND} CACHE BOOL "Use RSVG") + if(RSVG_FOUND) + set(USE_RSVG TRUE CACHE BOOL "Use RSVG") + else() + set(USE_RSVG FALSE CACHE BOOL "Use RSVG") + endif() if(USE_RSVG) message("Found RSVG") set(ALL_LIBS "${ALL_LIBS}" "${RSVG_LIBRARIES}") @@ -139,6 +148,7 @@ endif() # USE_ICONS #endif() ##### HEADERS ##### +message("Checking headers") include (CheckIncludeFiles) function(CheckHeader header_filename) string(TOUPPER ${header_filename} OUTVAR) @@ -156,8 +166,12 @@ function(CheckHeader header_filename) endif() endfunction() +## probably this works find_path(ALLOCA alloca.c) set(C_ALLOCA "${ALLOCA}") +##TODO: +#undef CRAY_STACKSEG_END + ## check list of header files set(HEADERS_TO_CHECK "alloca.h;ctype.h;iconv.h;inttypes.h;jpeglib.h;langinfo.h;libintl.h;locale.h;memory.h;signal.h;stdarg.h;stdint.h;stdio.h;stdlib.h;strings.h;string.h;sys/select.h;sys/stat.h;sys/time.h;sys/types.h;sys/wait.h;time.h;unistd.h;X11/cursorfont.h;X11/extensions/Xrender.h;X11/keysym.h;X11/Xatom.h;X11/Xlib.h;X11/xpm.h;X11/Xproto.h;X11/Xresource.h;X11/Xutil.h;") @@ -167,6 +181,7 @@ foreach(loop_var ${HEADERS_TO_CHECK}) endforeach() ##### FUNCTIONS ##### +message("Checking functions") include (CheckFunctionExists) ## FUNCTION CHECKER function (CheckFunctions FunName) @@ -182,6 +197,7 @@ foreach(loop_var ${FUNCTIONS_TO_CHECK}) endforeach() ###### LIBS ############ +message("Checking Libraries") #check_library_exists(X11 XOpenDisplay "" USE_X11) check_library_exists(Xrender XRenderComposite "" USE_XRENDER) check_library_exists(fribidi fribidi_charset_to_unicode "" USE_FRIBIDI) @@ -191,18 +207,74 @@ check_library_exists(Xext XShapeCombineRectangles "" USE_SHAPE) check_library_exists(Xmu XmuDrawRoundedRectangle "" USE_XMU) check_library_exists(Xft XftFontOpenName "" USE_XFT) check_include_files(ft2build.h USE_XFT) + ###### Symbols ############ +message("Checking for symbols") include(CheckSymbolExists) check_symbol_exists(XpmAllocColor X11/xpm.h USE_XPM) -check_symbol_exists(alloca alloca.h HAVE_ALLOCA) -##### compiles or not? ############ -set(iconvsourcetest "") +#check_symbol_exists(alloca alloca.h alloca.c HAVE_ALLOCA) +###### size_t +message("Checking Types") +include(CheckTypeSize) +check_type_size(size_t DEFINED_SIZE_T) +if(NOT DEFINED_SIZE_T) + set(size_t "unsigned int") +endif() + +##### compiles or not? ############ +message("Checking compiliation compatibility") include (CheckCSourceCompiles) -check_c_source_compiles("${iconvsourcetest}" ICONV_CONST) -##TODO: doesn't work right -check_c_source_compiles("#define _XOPEN_SOURCE 600L -#include " _XOPEN_SOURCE_EXTENDED) +include(CheckCCompilerFlag) + +## alloca +##TODO: make this work!! +check_c_source_compiles(" +#include +int +main () +{ + char *p = (char *) alloca (2 * sizeof (int)); + if (p) return 0; + ; + return 0; +} +" HAVE_ALLOCA) + +check_c_compiler_flag("-Werror" ICONV_HAVE_WERROR) +set (CMAKE_C_FLAGS_BACKUP "${CMAKE_C_FLAGS}") +if(ICONV_HAVE_WERROR) + set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror") +endif(ICONV_HAVE_WERROR) + +## iconv() +## TODO: this does not work correctly +check_c_source_compiles(" +#include +int main(){ + iconv_t conv = 0; + const char* in = 0; + size_t ilen = 0; + char* out = 0; + size_t olen = 0; + iconv(conv, &in, &ilen, &out, &olen); + return 0; +} +" ICONV_CONST) +set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS_BACKUP}") + +## open source +check_c_source_compiles( +"#define _XOPEN_SOURCE 600L +#include +int +main () +{ + + ; + return 0; +} +" _XOPEN_SOURCE_EXTENDED) set(__EXTENSIONS__ "${_XOPEN_SOURCE_EXTENDED}") if(_XOPEN_SOURCE_EXTENDED) set(_XOPEN_SOURCE 600L) diff --git a/cmake/configure b/cmake/configure index a7c126c3..46e07817 100755 --- a/cmake/configure +++ b/cmake/configure @@ -1,42 +1,9 @@ #!/bin/sh -## TODO command line options in parity with old system -getThing() -{ - ARG="$1" - DELIM="$2" - printf "%s\n" "$ARG" | sed "s/.*$DELIM//" -} -getEQ() -{ - getThing "$1" "=" -} -checkYN() -{ - ARG=$(getEQ "${1}") - #TODO: - #ARG="${ARG,,}" - case $ARG in - "no"|"No"|"NO")return 1;; - esac - return 0 -} -enable_thing() -{ - ARG="${1}" - THING=$(printf "%s\n" "${ARG}" | sed "s/=.*//") - ##To UPPER - ENABLED=$(getEQ "${ARG}") - checkYN "$ENABLED" - case $? in - 0)RESULT="$THING";; ## Enabled - *)RESULT="";; - esac - printf "%s\n" "${RESULT}" -} +VERSION="2.4.0" usage() { - echo "'configure' configures jwm 2.4.0 to adapt to many kinds of systems. + echo "'configure' configures jwm $VERSION to adapt to many kinds of systems. Usage: ${0} [OPTION]... [VAR=VALUE]... @@ -146,7 +113,7 @@ it to find libraries and programs with nonstandard names/locations. Report bugs to ." - exit + exit 0 } #ARGUMENTS=(${ARGUMENTS[@]} "-D:INT=1") addArguments() @@ -180,10 +147,76 @@ addString() fi addArguments "$1" STRING "$2" } +getThing() +{ + ARG="$1" + DELIM="$2" + printf "%s\n" "$ARG" | sed "s/.*$DELIM//" +} +getEQ() +{ + getThing "$1" "=" +} + +checkYN() +{ + ARG=$(getEQ "${1}") + #TODO: + #ARG="${ARG,,}" + case $ARG in + "no"|"No"|"NO")return 1;; + esac + return 0 +} +checkEnabled() +{ + ARG="${1}" + RES=$(printf "%s" "$ARG" | sed "s/.*-//") + echo "$RES" + TESTER=$(printf "%s" "$ARG" | sed "s/--//") + TESTER=$(printf "%s" "$ARG" | sed "s/-.*//") + case $TESTER in + "dis"*|"disabled")return 1;; + esac + return 0 + +} +enable_thing() +{ + ARG="${1}" + THING=$(printf "%s\n" "${ARG}" | sed "s/=.*//") + VALUE="FALSE" + ##To UPPER + ENABLED=$(getEQ "${ARG}") + RESULT="$THING" + RESULT=$(printf "%s" "$RESULT" | tr '[a-z]' '[A-Z]') + RESULT=$(checkEnabled "$RESULT") + EnabledOrDisabled="$?" + checkYN "$ENABLED" + YesOrNo="$?" + if [ $YesOrNo -eq 0 ] ##=yes + then + if [ $EnabledOrDisabled -eq 0 ] ## enabled + then + VALUE="TRUE" + fi + else ## = no + if [ $EnabledOrDisabled -eq 1 ] ## disabled + then + VALUE="TRUE" + fi + if + addBool "USE_$RESULT" "$VALUE" +} + while : do case $1 in -h|--help|-\?)usage;; + -v|--version) + printf "%s\n" "JWM version $VERSION" + exit 0 + ;; --prefix=*)addString "ARCH_INDEP_INSTALL_DIR" "$(getEQ ${1})";; --exec-prefix=*)addString "CMAKE_INSTALL_PREFIX" "$(getEQ ${1})";; --bindir=*)BINDIR=$(getEQ "${1}");; @@ -226,7 +259,7 @@ do --disable-xinerama)addBool "USE_XINERAMA" FALSE;; --disable-rpath);; --disable-nls);; - --enable-debug);; + --enable-debug)addBool "DEBUG" TRUE;; --enable-*|--disable-*)enable_thing "${1}";; --with-x)WITH_X="true";; diff --git a/cmake/modules/FindFreeType.cmake b/cmake/modules/FindFreeType.cmake index 3f888db9..232544cb 100644 --- a/cmake/modules/FindFreeType.cmake +++ b/cmake/modules/FindFreeType.cmake @@ -17,7 +17,7 @@ if(PKG_CONFIG_FOUND) pkg_check_modules(PC_FREETYPE freetype2 QUIET) endif() -find_path(FREETYPE_INCLUDE_DIR NAMES freetype/freetype.h freetype.h freetype2/freetype.h +find_path(FREETYPE_INCLUDE_DIR NAMES freetype2/freetype/freetype.h freetype.h freetype2/freetype.h freetype/freetype.h PATHS ${PC_FREETYPE_INCLUDEDIR} ${PC_FREETYPE_INCLUDE_DIRS}) find_library(FREETYPE_LIBRARY NAMES freetype freetype246MT diff --git a/po/da.po b/po/da.po index 0543312c..a37e1212 100644 --- a/po/da.po +++ b/po/da.po @@ -17,66 +17,78 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/action.c:44 +#: src/parse.c:1829 #, c-format -msgid "invalid action: \"%s\"" -msgstr "ugyldig handling: \"%s\"" +msgid "%s is empty" +msgstr "%s er tom" -#: src/action.c:211 +#: src/lex.c:367 #, c-format -msgid "action: root menu \"%s\" not defined" -msgstr "handling: rodmenu \"%s\" ikke angivet" +msgid "%s[%d]: invalid entity: \"%.8s\"" +msgstr "%s[%d]: ugyldig entitet: \"%.8s\"" -#: src/background.c:137 -msgid "no value specified for background" -msgstr "ingen værdi angivet for baggrund" +#: src/lex.c:201 +#, c-format +msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgstr "%s[%u]: luk-tag \"%s\" passer ikke med åben-tag \"%s\"" -#: src/background.c:149 +#: src/lex.c:213 #, c-format -msgid "invalid background type: \"%s\"" -msgstr "ugyldig baggrundstype: \"%s\"" +msgid "%s[%u]: close tag \"%s\" without open tag" +msgstr "%s[%u]: luk-tag \"%s\" uden åben-tag" -#: src/background.c:294 +#: src/lex.c:216 #, c-format -msgid "background image not found: \"%s\"" -msgstr "baggrundsbillede ikke fundet: \"%s\"" +msgid "%s[%u]: invalid close tag" +msgstr "%s[%u]: ugyldigt luk-tag" -#: src/client.c:905 -msgid "Kill this window?" -msgstr "Dræb dette vindue?" +#: src/lex.c:234 +#, c-format +msgid "%s[%u]: invalid open tag" +msgstr "%s[%u]: ugyldigt åben-tag" -#: src/client.c:906 -msgid "This may cause data to be lost!" -msgstr "Dette kan forårsage tab af data!" +#: src/lex.c:250 +#, c-format +msgid "%s[%u]: invalid tag" +msgstr "%s[%u]: ugyldigt tag" -#: src/command.c:138 src/main.c:221 +#: src/lex.c:207 #, c-format -msgid "exec failed: (%s) %s" -msgstr "exec fejlede: (%s) %s" +msgid "%s[%u]: unexpected and invalid close tag" +msgstr "%s[%u]: uventet og ugyldigt luk-tag" -#: src/confirm.c:69 -msgid "OK" -msgstr "OK" +#: src/lex.c:308 +#, c-format +msgid "%s[%u]: unexpected text: \"%s\"" +msgstr "%s[%u]: uventet tekst: \"%s\"" + +#: src/winmenu.c:150 +msgid "Above" +msgstr "Over" + +#: src/root.c:224 +msgid "Are you sure?" +msgstr "Er du sikker?" + +#: src/winmenu.c:160 +msgid "Below" +msgstr "Under" #: src/confirm.c:74 msgid "Cancel" msgstr "Annuller" +#: src/taskbar.c:444 src/winmenu.c:48 +msgid "Close" +msgstr "Luk" + #: src/confirm.c:308 msgid "Confirm" msgstr "Bekræft" -#: src/desktop.c:336 -msgid "empty Desktops Name tag" -msgstr "tomt Desktops Name-tag" - -#: src/dock.c:151 -msgid "only one Dock allowed" -msgstr "kun én dok er tilladt" - -#: src/dock.c:232 -msgid "could not acquire system tray selection" -msgstr "kunne ikke hente valg af systembakke" +#: src/root.c:223 +msgid "Exit JWM" +msgstr "Afslut JWM" #: src/error.c:22 #, c-format @@ -88,367 +100,355 @@ msgstr "JWM: fejl: " msgid "JWM: warning: " msgstr "JWM: advarsel: " -#: src/error.c:77 -msgid "display is already managed" -msgstr "display er allerede håndteret" +#: src/winmenu.c:49 +msgid "Kill" +msgstr "Dræb" -#: src/font.c:109 src/font.c:126 -#, c-format -msgid "could not load font: %s" -msgstr "kunne ikke indlæse skrifttype: %s" +#: src/client.c:905 +msgid "Kill this window?" +msgstr "Dræb dette vindue?" -#: src/font.c:116 src/font.c:133 -#, c-format -msgid "could not load the default font: %s" -msgstr "kunne ikke indlæse standardskrifttypen: %s" +#: src/winmenu.c:139 +msgid "Layer" +msgstr "Lag" -#: src/font.c:315 -msgid "empty Font tag" -msgstr "tomt Font-tag" +#: src/winmenu.c:90 +msgid "Maximize" +msgstr "Maksimer" -#: src/group.c:115 -msgid "invalid group class" -msgstr "ugyldig gruppeklasse" +#: src/winmenu.c:86 +msgid "Maximize-x" +msgstr "Maksimer-x" -#: src/group.c:126 -msgid "invalid group name" -msgstr "ugyldig gruppenavn" +#: src/winmenu.c:81 +msgid "Maximize-y" +msgstr "Maksimer-y" -#: src/group.c:287 -#, c-format -msgid "invalid group desktop: %d" -msgstr "ugyldig gruppe skrivebord: %d" +#: src/taskbar.c:451 src/winmenu.c:66 +msgid "Minimize" +msgstr "Minimer" -#: src/image.c:220 -#, c-format -msgid "could not create read struct for PNG image: %s" -msgstr "kunne ikke oprette read struct til PNG-billede: %s" +#: src/winmenu.c:60 +msgid "Move" +msgstr "Flyt" -#: src/image.c:233 -#, c-format -msgid "error reading PNG image: %s" -msgstr "fejl ved læsning af PNG-billede: %s" +#: src/winmenu.c:155 +msgid "Normal" +msgstr "Normal" -#: src/image.c:241 -#, c-format -msgid "could not create info struct for PNG image: %s" -msgstr "kunne ikke oprette info struct til PNG-billede: %s" +#: src/confirm.c:69 +msgid "OK" +msgstr "OK" + +#: src/winmenu.c:57 +msgid "Resize" +msgstr "Tilpas størrelse" + +#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 +#: src/winmenu.c:106 +msgid "Restore" +msgstr "Gendan" + +#: src/taskbar.c:465 src/winmenu.c:179 +msgid "Send To" +msgstr "Send til" + +#: src/winmenu.c:74 +msgid "Shade" +msgstr "Rul sammen" #: src/key.c:318 msgid "Specified KeySym is not defined for any KeyCode" msgstr "Angivne KeySym er ikke angivet for nogen KeyCode" -#: src/key.c:326 -#, c-format -msgid "modifier not found for keysym 0x%0x" -msgstr "modifikator ikke fundet for keysym 0x%0x" +#: src/winmenu.c:114 +msgid "Stick" +msgstr "Fastgør" -#: src/key.c:356 -#, c-format -msgid "invalid modifier: \"%c\"" -msgstr "ugyldig modifikator: \"%c\"" +#: src/client.c:906 +msgid "This may cause data to be lost!" +msgstr "Dette kan forårsage tab af data!" -#: src/key.c:371 -#, c-format -msgid "invalid key symbol: \"%s\"" -msgstr "ugyldigt nøglesymbol: \"%s\"" +#: src/winmenu.c:72 +msgid "Unshade" +msgstr "Rul ud" -#: src/key.c:452 -msgid "neither key nor keycode specified for Key" -msgstr "hverken tast eller tastkode angivet for tast" +#: src/winmenu.c:112 +msgid "Unstick" +msgstr "Fastgør ikke" -#: src/key.c:467 -#, c-format -msgid "key binding: root menu \"%s\" not defined" -msgstr "tastebinding: rodmenu \"%s\" ikke angivet" +#: src/winmenu.c:148 +msgid "[Above]" +msgstr "[Over]" -#: src/lex.c:201 -#, c-format -msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" -msgstr "%s[%u]: luk-tag \"%s\" passer ikke med åben-tag \"%s\"" +#: src/winmenu.c:158 +msgid "[Below]" +msgstr "[Under]" -#: src/lex.c:207 -#, c-format -msgid "%s[%u]: unexpected and invalid close tag" -msgstr "%s[%u]: uventet og ugyldigt luk-tag" +#: src/winmenu.c:153 +msgid "[Normal]" +msgstr "[Normal]" -#: src/lex.c:213 +#: src/action.c:211 #, c-format -msgid "%s[%u]: close tag \"%s\" without open tag" -msgstr "%s[%u]: luk-tag \"%s\" uden åben-tag" +msgid "action: root menu \"%s\" not defined" +msgstr "handling: rodmenu \"%s\" ikke angivet" -#: src/lex.c:216 +#: src/background.c:294 #, c-format -msgid "%s[%u]: invalid close tag" -msgstr "%s[%u]: ugyldigt luk-tag" +msgid "background image not found: \"%s\"" +msgstr "baggrundsbillede ikke fundet: \"%s\"" -#: src/lex.c:234 +#: src/swallow.c:85 +msgid "cannot swallow a client with no name" +msgstr "kan ikke sluge en klient uden navn" + +#: src/parse.c:2052 +msgid "configuration error" +msgstr "konfigurationsfejl" + +#: src/dock.c:232 +msgid "could not acquire system tray selection" +msgstr "kunne ikke hente valg af systembakke" + +#: src/image.c:241 #, c-format -msgid "%s[%u]: invalid open tag" -msgstr "%s[%u]: ugyldigt åben-tag" +msgid "could not create info struct for PNG image: %s" +msgstr "kunne ikke oprette info struct til PNG-billede: %s" -#: src/lex.c:250 +#: src/image.c:220 #, c-format -msgid "%s[%u]: invalid tag" -msgstr "%s[%u]: ugyldigt tag" +msgid "could not create read struct for PNG image: %s" +msgstr "kunne ikke oprette read struct til PNG-billede: %s" -#: src/lex.c:308 +#: src/font.c:109 src/font.c:126 #, c-format -msgid "%s[%u]: unexpected text: \"%s\"" -msgstr "%s[%u]: uventet tekst: \"%s\"" +msgid "could not load font: %s" +msgstr "kunne ikke indlæse skrifttype: %s" -#: src/lex.c:367 +#: src/font.c:116 src/font.c:133 #, c-format -msgid "%s[%d]: invalid entity: \"%.8s\"" -msgstr "%s[%d]: ugyldig entitet: \"%.8s\"" +msgid "could not load the default font: %s" +msgstr "kunne ikke indlæse standardskrifttypen: %s" -#: src/lex.c:473 src/parse.c:1893 -msgid "out of memory" -msgstr "ikke mere ledig hukommelse" +#: src/traybutton.c:89 +#, c-format +msgid "could not load tray icon: \"%s\"" +msgstr "kunne ikke indlæse bakkeikon: \"%s\"" #: src/parse.c:228 #, c-format msgid "could not open %s or %s" msgstr "kunne ikke åbne %s eller %s" -#: src/parse.c:246 +#: src/parse.c:971 #, c-format -msgid "include depth (%d) exceeded" -msgstr "inkluderingsdybde (%d) overskredet" +msgid "could not open included file: %s" +msgstr "kunne ikke åbne inkluderede fil: %s" -#: src/parse.c:384 +#: src/parse.c:967 #, c-format -msgid "invalid start tag: %s" -msgstr "ugyldigt start-tag: %s" +msgid "could not process include: %s" +msgstr "kunne ikke behandle inkludering: %s" -#: src/parse.c:774 +#: src/parse.c:1880 #, c-format -msgid "invalid include: %s" -msgstr "ugyldig inkludering: %s" - -#: src/parse.c:824 -msgid "no action specified for Key" -msgstr "ingen handling angivet for tast" +msgid "could not read file: %s" +msgstr "kunne ikke læse fil: %s" -#: src/parse.c:847 -#, c-format -msgid "invalid Key action: \"%s\"" -msgstr "ugyldig tasthandling: \"%s\"" +#: src/error.c:77 +msgid "display is already managed" +msgstr "display er allerede håndteret" -#: src/parse.c:871 -#, c-format -msgid "invalid text alignment: \"%s\"" -msgstr "ugyldig tekstjustering: \"%s\"" +#: src/desktop.c:336 +msgid "empty Desktops Name tag" +msgstr "tomt Desktops Name-tag" -#: src/parse.c:957 -msgid "no include file specified" -msgstr "ingen inkluderingsfil angivet" +#: src/font.c:315 +msgid "empty Font tag" +msgstr "tomt Font-tag" -#: src/parse.c:967 +#: src/image.c:233 #, c-format -msgid "could not process include: %s" -msgstr "kunne ikke behandle inkludering: %s" +msgid "error reading PNG image: %s" +msgstr "fejl ved læsning af PNG-billede: %s" -#: src/parse.c:971 +#: src/command.c:138 src/main.c:221 #, c-format -msgid "could not open included file: %s" -msgstr "kunne ikke åbne inkluderede fil: %s" +msgid "exec failed: (%s) %s" +msgstr "exec fejlede: (%s) %s" -#: src/parse.c:1611 +#: src/parse.c:246 #, c-format -msgid "invalid value for 'enabled': \"%s\"" -msgstr "ugyldig værdi for 'enabled': \"%s\"" +msgid "include depth (%d) exceeded" +msgstr "inkluderingsdybde (%d) overskredet" + +#: src/parse.c:1836 +#, c-format +msgid "invalid %s: \"%s\"" +msgstr "ugyldig %s: \"%s\"" #: src/parse.c:1752 #, c-format msgid "invalid Group Option: %s" msgstr "ugyldig gruppevalgmulighed: %s" -#: src/parse.c:1767 +#: src/parse.c:847 #, c-format -msgid "invalid decorations: %s" -msgstr "ugyldige dekorationer: %s" +msgid "invalid Key action: \"%s\"" +msgstr "ugyldig tasthandling: \"%s\"" -#: src/parse.c:1829 +#: src/action.c:44 #, c-format -msgid "%s is empty" -msgstr "%s er tom" +msgid "invalid action: \"%s\"" +msgstr "ugyldig handling: \"%s\"" -#: src/parse.c:1836 +#: src/background.c:149 #, c-format -msgid "invalid %s: \"%s\"" -msgstr "ugyldig %s: \"%s\"" +msgid "invalid background type: \"%s\"" +msgstr "ugyldig baggrundstype: \"%s\"" -#: src/parse.c:1854 +#: src/parse.c:1767 #, c-format -msgid "invalid value for %s: \"%s\"" -msgstr "ugyldig værdi for %s: \"%s\"" +msgid "invalid decorations: %s" +msgstr "ugyldige dekorationer: %s" -#: src/parse.c:1880 +#: src/group.c:115 +msgid "invalid group class" +msgstr "ugyldig gruppeklasse" + +#: src/group.c:287 #, c-format -msgid "could not read file: %s" -msgstr "kunne ikke læse fil: %s" +msgid "invalid group desktop: %d" +msgstr "ugyldig gruppe skrivebord: %d" -#: src/parse.c:1967 src/parse.c:1984 -msgid "no value specified" -msgstr "ingen værdi angivet" +#: src/group.c:126 +msgid "invalid group name" +msgstr "ugyldig gruppenavn" -#: src/parse.c:1972 +#: src/taskbar.c:975 #, c-format -msgid "invalid setting: %s" -msgstr "ugyldig indstilling: %s" +msgid "invalid height for TaskList: %s" +msgstr "ugyldig højde for TaskList: %s" -#: src/parse.c:1989 +#: src/parse.c:774 #, c-format -msgid "invalid opacity: %s" -msgstr "ugyldig opacitet: %s" +msgid "invalid include: %s" +msgstr "ugyldig inkludering: %s" + +#: src/key.c:371 +#, c-format +msgid "invalid key symbol: \"%s\"" +msgstr "ugyldigt nøglesymbol: \"%s\"" #: src/parse.c:2010 #, c-format msgid "invalid layer: %s" msgstr "ugyldigt lag: %s" -#: src/parse.c:2031 +#: src/taskbar.c:961 #, c-format -msgid "invalid tag in %s: %s" -msgstr "ugyldigt tag i %s: %s" +msgid "invalid maxwidth for TaskList: %s" +msgstr "ugyldig maxwidth for TaskList: %s" -#: src/parse.c:2052 -msgid "configuration error" -msgstr "konfigurationsfejl" +#: src/key.c:356 +#, c-format +msgid "invalid modifier: \"%c\"" +msgstr "ugyldig modifikator: \"%c\"" + +#: src/parse.c:1989 +#, c-format +msgid "invalid opacity: %s" +msgstr "ugyldig opacitet: %s" #: src/root.c:131 #, c-format msgid "invalid root menu specified: \"%c\"" msgstr "ugyldig rodmenu angivet: \"%c\"" -#: src/root.c:223 -msgid "Exit JWM" -msgstr "Afslut JWM" - -#: src/root.c:224 -msgid "Are you sure?" -msgstr "Er du sikker?" - -#: src/swallow.c:85 -msgid "cannot swallow a client with no name" -msgstr "kan ikke sluge en klient uden navn" - -#: src/taskbar.c:444 src/winmenu.c:48 -msgid "Close" -msgstr "Luk" - -#: src/taskbar.c:451 src/winmenu.c:66 -msgid "Minimize" -msgstr "Minimer" - -#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 -#: src/winmenu.c:106 -msgid "Restore" -msgstr "Gendan" - -#: src/taskbar.c:465 src/winmenu.c:179 -msgid "Send To" -msgstr "Send til" +#: src/parse.c:1972 +#, c-format +msgid "invalid setting: %s" +msgstr "ugyldig indstilling: %s" -#: src/taskbar.c:961 +#: src/parse.c:384 #, c-format -msgid "invalid maxwidth for TaskList: %s" -msgstr "ugyldig maxwidth for TaskList: %s" +msgid "invalid start tag: %s" +msgstr "ugyldigt start-tag: %s" -#: src/taskbar.c:975 +#: src/parse.c:2031 #, c-format -msgid "invalid height for TaskList: %s" -msgstr "ugyldig højde for TaskList: %s" +msgid "invalid tag in %s: %s" +msgstr "ugyldigt tag i %s: %s" -#: src/tray.c:1064 +#: src/parse.c:871 #, c-format -msgid "invalid tray layout: \"%s\"" -msgstr "ugyldigt bakkelayout: \"%s\"" +msgid "invalid text alignment: \"%s\"" +msgstr "ugyldig tekstjustering: \"%s\"" #: src/tray.c:1102 #, c-format msgid "invalid tray horizontal alignment: \"%s\"" msgstr "ugyldig vandret justering af bakke: \"%s\"" +#: src/tray.c:1064 +#, c-format +msgid "invalid tray layout: \"%s\"" +msgstr "ugyldigt bakkelayout: \"%s\"" + #: src/tray.c:1125 #, c-format msgid "invalid tray vertical alignment: \"%s\"" msgstr "ugyldig lodret justering af bakke: \"%s\"" -#: src/traybutton.c:89 +#: src/parse.c:1854 #, c-format -msgid "could not load tray icon: \"%s\"" -msgstr "kunne ikke indlæse bakkeikon: \"%s\"" - -#: src/traybutton.c:130 -msgid "no icon or label for TrayButton" -msgstr "intet ikon eller etiket for bakkeknap" - -#: src/winmenu.c:49 -msgid "Kill" -msgstr "Dræb" - -#: src/winmenu.c:57 -msgid "Resize" -msgstr "Tilpas størrelse" - -#: src/winmenu.c:60 -msgid "Move" -msgstr "Flyt" - -#: src/winmenu.c:72 -msgid "Unshade" -msgstr "Rul ud" - -#: src/winmenu.c:74 -msgid "Shade" -msgstr "Rul sammen" - -#: src/winmenu.c:81 -msgid "Maximize-y" -msgstr "Maksimer-y" +msgid "invalid value for %s: \"%s\"" +msgstr "ugyldig værdi for %s: \"%s\"" -#: src/winmenu.c:86 -msgid "Maximize-x" -msgstr "Maksimer-x" +#: src/parse.c:1611 +#, c-format +msgid "invalid value for 'enabled': \"%s\"" +msgstr "ugyldig værdi for 'enabled': \"%s\"" -#: src/winmenu.c:90 -msgid "Maximize" -msgstr "Maksimer" +#: src/key.c:467 +#, c-format +msgid "key binding: root menu \"%s\" not defined" +msgstr "tastebinding: rodmenu \"%s\" ikke angivet" -#: src/winmenu.c:112 -msgid "Unstick" -msgstr "Fastgør ikke" +#: src/key.c:326 +#, c-format +msgid "modifier not found for keysym 0x%0x" +msgstr "modifikator ikke fundet for keysym 0x%0x" -#: src/winmenu.c:114 -msgid "Stick" -msgstr "Fastgør" +#: src/key.c:452 +msgid "neither key nor keycode specified for Key" +msgstr "hverken tast eller tastkode angivet for tast" -#: src/winmenu.c:139 -msgid "Layer" -msgstr "Lag" +#: src/parse.c:824 +msgid "no action specified for Key" +msgstr "ingen handling angivet for tast" -#: src/winmenu.c:148 -msgid "[Above]" -msgstr "[Over]" +#: src/traybutton.c:130 +msgid "no icon or label for TrayButton" +msgstr "intet ikon eller etiket for bakkeknap" -#: src/winmenu.c:150 -msgid "Above" -msgstr "Over" +#: src/parse.c:957 +msgid "no include file specified" +msgstr "ingen inkluderingsfil angivet" -#: src/winmenu.c:153 -msgid "[Normal]" -msgstr "[Normal]" +#: src/parse.c:1967 src/parse.c:1984 +msgid "no value specified" +msgstr "ingen værdi angivet" -#: src/winmenu.c:155 -msgid "Normal" -msgstr "Normal" +#: src/background.c:137 +msgid "no value specified for background" +msgstr "ingen værdi angivet for baggrund" -#: src/winmenu.c:158 -msgid "[Below]" -msgstr "[Under]" +#: src/dock.c:151 +msgid "only one Dock allowed" +msgstr "kun én dok er tilladt" -#: src/winmenu.c:160 -msgid "Below" -msgstr "Under" +#: src/lex.c:473 src/parse.c:1893 +msgid "out of memory" +msgstr "ikke mere ledig hukommelse" diff --git a/po/de.po b/po/de.po index 3215ab23..b4538c7e 100644 --- a/po/de.po +++ b/po/de.po @@ -12,66 +12,78 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/action.c:44 -#, fuzzy, c-format -msgid "invalid action: \"%s\"" -msgstr "ungültige Einstellung %s" +#: src/parse.c:1829 +#, c-format +msgid "%s is empty" +msgstr "" -#: src/action.c:211 +#: src/lex.c:367 #, c-format -msgid "action: root menu \"%s\" not defined" +msgid "%s[%d]: invalid entity: \"%.8s\"" msgstr "" -#: src/background.c:137 -msgid "no value specified for background" -msgstr "kein Wert für Hintergrund spezifiziert" +#: src/lex.c:201 +#, c-format +msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgstr "" -#: src/background.c:149 +#: src/lex.c:213 #, c-format -msgid "invalid background type: \"%s\"" -msgstr "ungültiger Typ für Hintergrund: \"%s\"" +msgid "%s[%u]: close tag \"%s\" without open tag" +msgstr "" -#: src/background.c:294 +#: src/lex.c:216 #, c-format -msgid "background image not found: \"%s\"" -msgstr "Hintergrundbild nicht gefunden: \"%s\"" +msgid "%s[%u]: invalid close tag" +msgstr "" -#: src/client.c:905 -msgid "Kill this window?" -msgstr "Dieses Fenster töten?" +#: src/lex.c:234 +#, c-format +msgid "%s[%u]: invalid open tag" +msgstr "" -#: src/client.c:906 -msgid "This may cause data to be lost!" -msgstr "Das kann Datenverlust verursachen!" +#: src/lex.c:250 +#, c-format +msgid "%s[%u]: invalid tag" +msgstr "" -#: src/command.c:138 src/main.c:221 +#: src/lex.c:207 #, c-format -msgid "exec failed: (%s) %s" -msgstr "Ausführung fehlgeschlagen: (%s) %s" +msgid "%s[%u]: unexpected and invalid close tag" +msgstr "" -#: src/confirm.c:69 -msgid "OK" +#: src/lex.c:308 +#, c-format +msgid "%s[%u]: unexpected text: \"%s\"" msgstr "" +#: src/winmenu.c:150 +msgid "Above" +msgstr "Darüber" + +#: src/root.c:224 +msgid "Are you sure?" +msgstr "Sicher?" + +#: src/winmenu.c:160 +msgid "Below" +msgstr "Darunter" + #: src/confirm.c:74 msgid "Cancel" msgstr "" +#: src/taskbar.c:444 src/winmenu.c:48 +msgid "Close" +msgstr "Schließen" + #: src/confirm.c:308 msgid "Confirm" msgstr "" -#: src/desktop.c:336 -msgid "empty Desktops Name tag" -msgstr "" - -#: src/dock.c:151 -msgid "only one Dock allowed" -msgstr "" - -#: src/dock.c:232 -msgid "could not acquire system tray selection" -msgstr "" +#: src/root.c:223 +msgid "Exit JWM" +msgstr "JWM beenden" #: src/error.c:22 #, c-format @@ -83,176 +95,192 @@ msgstr "" msgid "JWM: warning: " msgstr "" -#: src/error.c:77 -msgid "display is already managed" -msgstr "" +#: src/winmenu.c:49 +msgid "Kill" +msgstr "Töten" -#: src/font.c:109 src/font.c:126 -#, c-format -msgid "could not load font: %s" -msgstr "konnte Schrift nicht laden: %s" +#: src/client.c:905 +msgid "Kill this window?" +msgstr "Dieses Fenster töten?" -#: src/font.c:116 src/font.c:133 -#, c-format -msgid "could not load the default font: %s" -msgstr "konnte Standard-Schrift nicht laden: %s" +#: src/winmenu.c:139 +msgid "Layer" +msgstr "Ebene" -#: src/font.c:315 -msgid "empty Font tag" -msgstr "" +#: src/winmenu.c:90 +msgid "Maximize" +msgstr "Maximieren" -#: src/group.c:115 -msgid "invalid group class" -msgstr "ungültige Gruppenklasse" +#: src/winmenu.c:86 +msgid "Maximize-x" +msgstr "Maximieren-x" -#: src/group.c:126 -msgid "invalid group name" -msgstr "ungültiger Gruppenname" +#: src/winmenu.c:81 +msgid "Maximize-y" +msgstr "Maximieren-y" -#: src/group.c:287 -#, c-format -msgid "invalid group desktop: %d" -msgstr "ungültiger Gruppen-Desktop: %d" +#: src/taskbar.c:451 src/winmenu.c:66 +msgid "Minimize" +msgstr "Minimieren" -#: src/image.c:220 -#, c-format -msgid "could not create read struct for PNG image: %s" -msgstr "" +#: src/winmenu.c:60 +msgid "Move" +msgstr "Verschieben" -#: src/image.c:233 -#, c-format -msgid "error reading PNG image: %s" -msgstr "" +#: src/winmenu.c:155 +msgid "Normal" +msgstr "Normal" -#: src/image.c:241 -#, c-format -msgid "could not create info struct for PNG image: %s" +#: src/confirm.c:69 +msgid "OK" msgstr "" +#: src/winmenu.c:57 +msgid "Resize" +msgstr "Größe ändern" + +#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 +#: src/winmenu.c:106 +msgid "Restore" +msgstr "Wiedereinlesen" + +#: src/taskbar.c:465 src/winmenu.c:179 +msgid "Send To" +msgstr "Senden an" + +#: src/winmenu.c:74 +msgid "Shade" +msgstr "Schattieren" + #: src/key.c:318 msgid "Specified KeySym is not defined for any KeyCode" msgstr "" -#: src/key.c:326 -#, c-format -msgid "modifier not found for keysym 0x%0x" -msgstr "" +#: src/winmenu.c:114 +msgid "Stick" +msgstr "Ankleben" -#: src/key.c:356 -#, c-format -msgid "invalid modifier: \"%c\"" -msgstr "ungültiger Modifizierer: \"%c\"" +#: src/client.c:906 +msgid "This may cause data to be lost!" +msgstr "Das kann Datenverlust verursachen!" -#: src/key.c:371 -#, c-format -msgid "invalid key symbol: \"%s\"" -msgstr "ungültiges Tastensymbol: \"%s\"" +#: src/winmenu.c:72 +msgid "Unshade" +msgstr "Entschattieren" -#: src/key.c:452 -msgid "neither key nor keycode specified for Key" -msgstr "" +#: src/winmenu.c:112 +msgid "Unstick" +msgstr "Abkleben" -#: src/key.c:467 -#, c-format -msgid "key binding: root menu \"%s\" not defined" -msgstr "" +#: src/winmenu.c:148 +msgid "[Above]" +msgstr "[Darüber]" -#: src/lex.c:201 +#: src/winmenu.c:158 +msgid "[Below]" +msgstr "[Darunter]" + +#: src/winmenu.c:153 +msgid "[Normal]" +msgstr "[Normal]" + +#: src/action.c:211 #, c-format -msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgid "action: root menu \"%s\" not defined" msgstr "" -#: src/lex.c:207 +#: src/background.c:294 #, c-format -msgid "%s[%u]: unexpected and invalid close tag" +msgid "background image not found: \"%s\"" +msgstr "Hintergrundbild nicht gefunden: \"%s\"" + +#: src/swallow.c:85 +msgid "cannot swallow a client with no name" msgstr "" -#: src/lex.c:213 -#, c-format -msgid "%s[%u]: close tag \"%s\" without open tag" +#: src/parse.c:2052 +msgid "configuration error" +msgstr "Konfigurationsfehler" + +#: src/dock.c:232 +msgid "could not acquire system tray selection" msgstr "" -#: src/lex.c:216 +#: src/image.c:241 #, c-format -msgid "%s[%u]: invalid close tag" +msgid "could not create info struct for PNG image: %s" msgstr "" -#: src/lex.c:234 +#: src/image.c:220 #, c-format -msgid "%s[%u]: invalid open tag" +msgid "could not create read struct for PNG image: %s" msgstr "" -#: src/lex.c:250 +#: src/font.c:109 src/font.c:126 #, c-format -msgid "%s[%u]: invalid tag" -msgstr "" +msgid "could not load font: %s" +msgstr "konnte Schrift nicht laden: %s" -#: src/lex.c:308 +#: src/font.c:116 src/font.c:133 #, c-format -msgid "%s[%u]: unexpected text: \"%s\"" -msgstr "" +msgid "could not load the default font: %s" +msgstr "konnte Standard-Schrift nicht laden: %s" -#: src/lex.c:367 +#: src/traybutton.c:89 #, c-format -msgid "%s[%d]: invalid entity: \"%.8s\"" -msgstr "" - -#: src/lex.c:473 src/parse.c:1893 -msgid "out of memory" -msgstr "" +msgid "could not load tray icon: \"%s\"" +msgstr "konnte Leistensymbol nicht laden: %s" #: src/parse.c:228 #, fuzzy, c-format msgid "could not open %s or %s" msgstr "konnte Schrift nicht laden: %s" -#: src/parse.c:246 -#, c-format -msgid "include depth (%d) exceeded" -msgstr "" +#: src/parse.c:971 +#, fuzzy, c-format +msgid "could not open included file: %s" +msgstr "konnte Schrift nicht laden: %s" -#: src/parse.c:384 +#: src/parse.c:967 #, fuzzy, c-format -msgid "invalid start tag: %s" -msgstr "ungültige Einstellung %s" +msgid "could not process include: %s" +msgstr "konnte Schrift nicht laden: %s" -#: src/parse.c:774 +#: src/parse.c:1880 #, fuzzy, c-format -msgid "invalid include: %s" -msgstr "ungültige Ebene %s" +msgid "could not read file: %s" +msgstr "konnte Schrift nicht laden: %s" -#: src/parse.c:824 -#, fuzzy -msgid "no action specified for Key" -msgstr "kein Wert für Hintergrund spezifiziert" +#: src/error.c:77 +msgid "display is already managed" +msgstr "" -#: src/parse.c:847 -#, fuzzy, c-format -msgid "invalid Key action: \"%s\"" -msgstr "ungültige Einstellung %s" +#: src/desktop.c:336 +msgid "empty Desktops Name tag" +msgstr "" -#: src/parse.c:871 -#, fuzzy, c-format -msgid "invalid text alignment: \"%s\"" -msgstr "ungültige Vertikalausrichtung für Leiste: \"%s\"" +#: src/font.c:315 +msgid "empty Font tag" +msgstr "" -#: src/parse.c:957 -msgid "no include file specified" +#: src/image.c:233 +#, c-format +msgid "error reading PNG image: %s" msgstr "" -#: src/parse.c:967 -#, fuzzy, c-format -msgid "could not process include: %s" -msgstr "konnte Schrift nicht laden: %s" +#: src/command.c:138 src/main.c:221 +#, c-format +msgid "exec failed: (%s) %s" +msgstr "Ausführung fehlgeschlagen: (%s) %s" -#: src/parse.c:971 -#, fuzzy, c-format -msgid "could not open included file: %s" -msgstr "konnte Schrift nicht laden: %s" +#: src/parse.c:246 +#, c-format +msgid "include depth (%d) exceeded" +msgstr "" -#: src/parse.c:1611 +#: src/parse.c:1836 #, fuzzy, c-format -msgid "invalid value for 'enabled': \"%s\"" +msgid "invalid %s: \"%s\"" msgstr "ungültige Einstellung %s" #: src/parse.c:1752 @@ -260,201 +288,173 @@ msgstr "ungültige Einstellung %s" msgid "invalid Group Option: %s" msgstr "ungültiger Gruppen-Desktop: %d" -#: src/parse.c:1767 +#: src/parse.c:847 #, fuzzy, c-format -msgid "invalid decorations: %s" +msgid "invalid Key action: \"%s\"" msgstr "ungültige Einstellung %s" -#: src/parse.c:1829 -#, c-format -msgid "%s is empty" -msgstr "" - -#: src/parse.c:1836 +#: src/action.c:44 #, fuzzy, c-format -msgid "invalid %s: \"%s\"" +msgid "invalid action: \"%s\"" msgstr "ungültige Einstellung %s" -#: src/parse.c:1854 -#, fuzzy, c-format -msgid "invalid value for %s: \"%s\"" -msgstr "ungültiger tag in %s: %s" +#: src/background.c:149 +#, c-format +msgid "invalid background type: \"%s\"" +msgstr "ungültiger Typ für Hintergrund: \"%s\"" -#: src/parse.c:1880 +#: src/parse.c:1767 #, fuzzy, c-format -msgid "could not read file: %s" -msgstr "konnte Schrift nicht laden: %s" +msgid "invalid decorations: %s" +msgstr "ungültige Einstellung %s" -#: src/parse.c:1967 src/parse.c:1984 -#, fuzzy -msgid "no value specified" -msgstr "kein Wert für Hintergrund spezifiziert" +#: src/group.c:115 +msgid "invalid group class" +msgstr "ungültige Gruppenklasse" -#: src/parse.c:1972 +#: src/group.c:287 #, c-format -msgid "invalid setting: %s" -msgstr "ungültige Einstellung %s" +msgid "invalid group desktop: %d" +msgstr "ungültiger Gruppen-Desktop: %d" -#: src/parse.c:1989 -#, c-format -msgid "invalid opacity: %s" +#: src/group.c:126 +msgid "invalid group name" +msgstr "ungültiger Gruppenname" + +#: src/taskbar.c:975 +#, fuzzy, c-format +msgid "invalid height for TaskList: %s" msgstr "ungültige Opazität: \"%s\"" +#: src/parse.c:774 +#, fuzzy, c-format +msgid "invalid include: %s" +msgstr "ungültige Ebene %s" + +#: src/key.c:371 +#, c-format +msgid "invalid key symbol: \"%s\"" +msgstr "ungültiges Tastensymbol: \"%s\"" + #: src/parse.c:2010 #, c-format msgid "invalid layer: %s" msgstr "ungültige Ebene %s" -#: src/parse.c:2031 +#: src/taskbar.c:961 #, c-format -msgid "invalid tag in %s: %s" -msgstr "ungültiger tag in %s: %s" +msgid "invalid maxwidth for TaskList: %s" +msgstr "" -#: src/parse.c:2052 -msgid "configuration error" -msgstr "Konfigurationsfehler" +#: src/key.c:356 +#, c-format +msgid "invalid modifier: \"%c\"" +msgstr "ungültiger Modifizierer: \"%c\"" + +#: src/parse.c:1989 +#, c-format +msgid "invalid opacity: %s" +msgstr "ungültige Opazität: \"%s\"" #: src/root.c:131 #, c-format msgid "invalid root menu specified: \"%c\"" msgstr "ungültiges root Menü spezifiziert: \"%c\"" -#: src/root.c:223 -msgid "Exit JWM" -msgstr "JWM beenden" - -#: src/root.c:224 -msgid "Are you sure?" -msgstr "Sicher?" - -#: src/swallow.c:85 -msgid "cannot swallow a client with no name" -msgstr "" - -#: src/taskbar.c:444 src/winmenu.c:48 -msgid "Close" -msgstr "Schließen" - -#: src/taskbar.c:451 src/winmenu.c:66 -msgid "Minimize" -msgstr "Minimieren" - -#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 -#: src/winmenu.c:106 -msgid "Restore" -msgstr "Wiedereinlesen" - -#: src/taskbar.c:465 src/winmenu.c:179 -msgid "Send To" -msgstr "Senden an" - -#: src/taskbar.c:961 +#: src/parse.c:1972 #, c-format -msgid "invalid maxwidth for TaskList: %s" -msgstr "" +msgid "invalid setting: %s" +msgstr "ungültige Einstellung %s" -#: src/taskbar.c:975 +#: src/parse.c:384 #, fuzzy, c-format -msgid "invalid height for TaskList: %s" -msgstr "ungültige Opazität: \"%s\"" +msgid "invalid start tag: %s" +msgstr "ungültige Einstellung %s" -#: src/tray.c:1064 +#: src/parse.c:2031 #, c-format -msgid "invalid tray layout: \"%s\"" -msgstr "ungültiges Leistenlayout: \"%s\"" +msgid "invalid tag in %s: %s" +msgstr "ungültiger tag in %s: %s" + +#: src/parse.c:871 +#, fuzzy, c-format +msgid "invalid text alignment: \"%s\"" +msgstr "ungültige Vertikalausrichtung für Leiste: \"%s\"" #: src/tray.c:1102 #, c-format msgid "invalid tray horizontal alignment: \"%s\"" msgstr "ungültige Horizontalausrichtung für Leiste: \"%s\"" +#: src/tray.c:1064 +#, c-format +msgid "invalid tray layout: \"%s\"" +msgstr "ungültiges Leistenlayout: \"%s\"" + #: src/tray.c:1125 #, c-format msgid "invalid tray vertical alignment: \"%s\"" msgstr "ungültige Vertikalausrichtung für Leiste: \"%s\"" -#: src/traybutton.c:89 -#, c-format -msgid "could not load tray icon: \"%s\"" -msgstr "konnte Leistensymbol nicht laden: %s" - -#: src/traybutton.c:130 -msgid "no icon or label for TrayButton" -msgstr "" - -#: src/winmenu.c:49 -msgid "Kill" -msgstr "Töten" - -#: src/winmenu.c:57 -msgid "Resize" -msgstr "Größe ändern" - -#: src/winmenu.c:60 -msgid "Move" -msgstr "Verschieben" - -#: src/winmenu.c:72 -msgid "Unshade" -msgstr "Entschattieren" - -#: src/winmenu.c:74 -msgid "Shade" -msgstr "Schattieren" - -#: src/winmenu.c:81 -msgid "Maximize-y" -msgstr "Maximieren-y" +#: src/parse.c:1854 +#, fuzzy, c-format +msgid "invalid value for %s: \"%s\"" +msgstr "ungültiger tag in %s: %s" -#: src/winmenu.c:86 -msgid "Maximize-x" -msgstr "Maximieren-x" +#: src/parse.c:1611 +#, fuzzy, c-format +msgid "invalid value for 'enabled': \"%s\"" +msgstr "ungültige Einstellung %s" -#: src/winmenu.c:90 -msgid "Maximize" -msgstr "Maximieren" +#: src/key.c:467 +#, c-format +msgid "key binding: root menu \"%s\" not defined" +msgstr "" -#: src/winmenu.c:112 -msgid "Unstick" -msgstr "Abkleben" +#: src/key.c:326 +#, c-format +msgid "modifier not found for keysym 0x%0x" +msgstr "" -#: src/winmenu.c:114 -msgid "Stick" -msgstr "Ankleben" +#: src/key.c:452 +msgid "neither key nor keycode specified for Key" +msgstr "" -#: src/winmenu.c:139 -msgid "Layer" -msgstr "Ebene" +#: src/parse.c:824 +#, fuzzy +msgid "no action specified for Key" +msgstr "kein Wert für Hintergrund spezifiziert" -#: src/winmenu.c:148 -msgid "[Above]" -msgstr "[Darüber]" +#: src/traybutton.c:130 +msgid "no icon or label for TrayButton" +msgstr "" -#: src/winmenu.c:150 -msgid "Above" -msgstr "Darüber" +#: src/parse.c:957 +msgid "no include file specified" +msgstr "" -#: src/winmenu.c:153 -msgid "[Normal]" -msgstr "[Normal]" +#: src/parse.c:1967 src/parse.c:1984 +#, fuzzy +msgid "no value specified" +msgstr "kein Wert für Hintergrund spezifiziert" -#: src/winmenu.c:155 -msgid "Normal" -msgstr "Normal" +#: src/background.c:137 +msgid "no value specified for background" +msgstr "kein Wert für Hintergrund spezifiziert" -#: src/winmenu.c:158 -msgid "[Below]" -msgstr "[Darunter]" +#: src/dock.c:151 +msgid "only one Dock allowed" +msgstr "" -#: src/winmenu.c:160 -msgid "Below" -msgstr "Darunter" +#: src/lex.c:473 src/parse.c:1893 +msgid "out of memory" +msgstr "" -#~ msgid "invalid tray width: %d" -#~ msgstr "ungültige Leistenbreite: %d" +#~ msgid "invalid insert mode: \"%s\"" +#~ msgstr "ungültiger EInfügungsmodus: \"%s\"" #~ msgid "invalid tray height: %d" #~ msgstr "ungültige Leistenhöhe: %d" -#~ msgid "invalid insert mode: \"%s\"" -#~ msgstr "ungültiger EInfügungsmodus: \"%s\"" +#~ msgid "invalid tray width: %d" +#~ msgstr "ungültige Leistenbreite: %d" diff --git a/po/es.po b/po/es.po index 4843287c..b52e5fc2 100644 --- a/po/es.po +++ b/po/es.po @@ -17,66 +17,80 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Poedit 1.8.8\n" -#: src/action.c:44 +#: src/parse.c:1829 #, c-format -msgid "invalid action: \"%s\"" -msgstr "acción no válida: «%s»" +msgid "%s is empty" +msgstr "%s está vacío" -#: src/action.c:211 +#: src/lex.c:367 #, c-format -msgid "action: root menu \"%s\" not defined" -msgstr "acción: menú raíz «%s» no definido" +msgid "%s[%d]: invalid entity: \"%.8s\"" +msgstr "%s[%d]: entidad no válida: «%.8s»" -#: src/background.c:137 -msgid "no value specified for background" -msgstr "no hay valor especificado para fondo de pantalla" +#: src/lex.c:201 +#, c-format +msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgstr "" +"%s[%u]: la etiqueta de cierre «%s» no coincide con la etiqueta de apertura " +"«%s»" -#: src/background.c:149 +#: src/lex.c:213 #, c-format -msgid "invalid background type: \"%s\"" -msgstr "tipo de fondo de pantalla no válido: «%s»" +msgid "%s[%u]: close tag \"%s\" without open tag" +msgstr "%s[%u]: etiqueta de cierre «%s» sin etiqueta de apertura" -#: src/background.c:294 +#: src/lex.c:216 #, c-format -msgid "background image not found: \"%s\"" -msgstr "imagen de fondo de pantalla no encontrada: «%s»" +msgid "%s[%u]: invalid close tag" +msgstr "%s[%u]: etiqueta de cierre no válida" -#: src/client.c:905 -msgid "Kill this window?" -msgstr "¿Finalizar esta ventana?" +#: src/lex.c:234 +#, c-format +msgid "%s[%u]: invalid open tag" +msgstr "%s[%u]: etiqueta de apertura no válida" -#: src/client.c:906 -msgid "This may cause data to be lost!" -msgstr "¡Esto puede causar pérdida de datos!" +#: src/lex.c:250 +#, c-format +msgid "%s[%u]: invalid tag" +msgstr "%s[%u]: etiqueta no válida" -#: src/command.c:138 src/main.c:221 +#: src/lex.c:207 #, c-format -msgid "exec failed: (%s) %s" -msgstr "Ha fallado: (%s) %s" +msgid "%s[%u]: unexpected and invalid close tag" +msgstr "%s[%u]: etiqueta de cierre inesperada y no válida" -#: src/confirm.c:69 -msgid "OK" -msgstr "OK" +#: src/lex.c:308 +#, c-format +msgid "%s[%u]: unexpected text: \"%s\"" +msgstr "%s[%u]: texto inesperado: «%s»" + +#: src/winmenu.c:150 +msgid "Above" +msgstr "Arriba" + +#: src/root.c:224 +msgid "Are you sure?" +msgstr "¿Está seguro?" + +#: src/winmenu.c:160 +msgid "Below" +msgstr "Abajo" #: src/confirm.c:74 msgid "Cancel" msgstr "Cancelar" +#: src/taskbar.c:444 src/winmenu.c:48 +msgid "Close" +msgstr "Cerrar" + #: src/confirm.c:308 msgid "Confirm" msgstr "Confirmar" -#: src/desktop.c:336 -msgid "empty Desktops Name tag" -msgstr "etiqueta Nombre de Escritorio vacía" - -#: src/dock.c:151 -msgid "only one Dock allowed" -msgstr "solo se permite un Muelle" - -#: src/dock.c:232 -msgid "could not acquire system tray selection" -msgstr "no se pudo adquirir la selección de bandeja de sistema" +#: src/root.c:223 +msgid "Exit JWM" +msgstr "Salir de JWM" #: src/error.c:22 #, c-format @@ -88,51 +102,62 @@ msgstr "JWM: error: " msgid "JWM: warning: " msgstr "JWM: advertencia: " -#: src/error.c:77 -msgid "display is already managed" -msgstr "el visor ya está manejado" +#: src/winmenu.c:49 +msgid "Kill" +msgstr "Finalizar" -#: src/font.c:109 src/font.c:126 -#, c-format -msgid "could not load font: %s" -msgstr "no se pudo cargar el tipo de letra: %s" +#: src/client.c:905 +msgid "Kill this window?" +msgstr "¿Finalizar esta ventana?" -#: src/font.c:116 src/font.c:133 -#, c-format -msgid "could not load the default font: %s" -msgstr "no se pudo cargar el tipo de letra por omición: %s" +#: src/winmenu.c:139 +msgid "Layer" +msgstr "Capa" -#: src/font.c:315 -msgid "empty Font tag" -msgstr "etiqueta de Tipo de letra vacía" +#: src/winmenu.c:90 +msgid "Maximize" +msgstr "Maximizar" -#: src/group.c:115 -msgid "invalid group class" -msgstr "clase de grupo no válida" +#: src/winmenu.c:86 +msgid "Maximize-x" +msgstr "Maximizar-x" -#: src/group.c:126 -msgid "invalid group name" -msgstr "nombre de grupo no válido" +#: src/winmenu.c:81 +msgid "Maximize-y" +msgstr "Maximizar-y" -#: src/group.c:287 -#, c-format -msgid "invalid group desktop: %d" -msgstr "escritorio de grupo no válido: %d" +#: src/taskbar.c:451 src/winmenu.c:66 +msgid "Minimize" +msgstr "Minimizar" -#: src/image.c:220 -#, c-format -msgid "could not create read struct for PNG image: %s" -msgstr "no se pudo crear estructura de lectura para imagen PNG: %s" +#: src/winmenu.c:60 +msgid "Move" +msgstr "Mover" -#: src/image.c:233 -#, c-format -msgid "error reading PNG image: %s" -msgstr "error leyendo imagen PNG: %s" +#: src/winmenu.c:155 +msgid "Normal" +msgstr "Normal" -#: src/image.c:241 -#, c-format -msgid "could not create info struct for PNG image: %s" -msgstr "no se pudo crear estruct. de infor. para imagen PNG: %s" +#: src/confirm.c:69 +msgid "OK" +msgstr "OK" + +#: src/winmenu.c:57 +msgid "Resize" +msgstr "Redimensionar" + +#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 +#: src/winmenu.c:106 +msgid "Restore" +msgstr "Restaurar" + +#: src/taskbar.c:465 src/winmenu.c:179 +msgid "Send To" +msgstr "Enviar A" + +#: src/winmenu.c:74 +msgid "Shade" +msgstr "Enrollar" #: src/key.c:318 msgid "Specified KeySym is not defined for any KeyCode" @@ -140,328 +165,303 @@ msgstr "" "El símbolo de tecla especificado no está definido para cualquier código de " "tecla" -#: src/key.c:326 -#, c-format -msgid "modifier not found for keysym 0x%0x" -msgstr "modificador no encontrado para el símbolo de tecla 0x%0x" +#: src/winmenu.c:114 +msgid "Stick" +msgstr "Pegar" -#: src/key.c:356 -#, c-format -msgid "invalid modifier: \"%c\"" -msgstr "modificador no válido: \"%c\"" +#: src/client.c:906 +msgid "This may cause data to be lost!" +msgstr "¡Esto puede causar pérdida de datos!" -#: src/key.c:371 -#, c-format -msgid "invalid key symbol: \"%s\"" -msgstr "símbolo de tecla no válido: \"%s\"" +#: src/winmenu.c:72 +msgid "Unshade" +msgstr "Desenrollar" -#: src/key.c:452 -msgid "neither key nor keycode specified for Key" -msgstr "ni tecla ni código especificados para Tecla" +#: src/winmenu.c:112 +msgid "Unstick" +msgstr "Despegar" -#: src/key.c:467 -#, c-format -msgid "key binding: root menu \"%s\" not defined" -msgstr "atajo de teclado: menú raíz «%s» no definido" +#: src/winmenu.c:148 +msgid "[Above]" +msgstr "[Arriba]" -#: src/lex.c:201 -#, c-format -msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" -msgstr "" -"%s[%u]: la etiqueta de cierre «%s» no coincide con la etiqueta de apertura " -"«%s»" +#: src/winmenu.c:158 +msgid "[Below]" +msgstr "[Abajo]" -#: src/lex.c:207 -#, c-format -msgid "%s[%u]: unexpected and invalid close tag" -msgstr "%s[%u]: etiqueta de cierre inesperada y no válida" +#: src/winmenu.c:153 +msgid "[Normal]" +msgstr "[Normal]" -#: src/lex.c:213 +#: src/action.c:211 #, c-format -msgid "%s[%u]: close tag \"%s\" without open tag" -msgstr "%s[%u]: etiqueta de cierre «%s» sin etiqueta de apertura" +msgid "action: root menu \"%s\" not defined" +msgstr "acción: menú raíz «%s» no definido" -#: src/lex.c:216 +#: src/background.c:294 #, c-format -msgid "%s[%u]: invalid close tag" -msgstr "%s[%u]: etiqueta de cierre no válida" +msgid "background image not found: \"%s\"" +msgstr "imagen de fondo de pantalla no encontrada: «%s»" -#: src/lex.c:234 +#: src/swallow.c:85 +msgid "cannot swallow a client with no name" +msgstr "no se puede mostrar un cliente sin nombre" + +#: src/parse.c:2052 +msgid "configuration error" +msgstr "error de configuración" + +#: src/dock.c:232 +msgid "could not acquire system tray selection" +msgstr "no se pudo adquirir la selección de bandeja de sistema" + +#: src/image.c:241 #, c-format -msgid "%s[%u]: invalid open tag" -msgstr "%s[%u]: etiqueta de apertura no válida" +msgid "could not create info struct for PNG image: %s" +msgstr "no se pudo crear estruct. de infor. para imagen PNG: %s" -#: src/lex.c:250 +#: src/image.c:220 #, c-format -msgid "%s[%u]: invalid tag" -msgstr "%s[%u]: etiqueta no válida" +msgid "could not create read struct for PNG image: %s" +msgstr "no se pudo crear estructura de lectura para imagen PNG: %s" -#: src/lex.c:308 +#: src/font.c:109 src/font.c:126 #, c-format -msgid "%s[%u]: unexpected text: \"%s\"" -msgstr "%s[%u]: texto inesperado: «%s»" +msgid "could not load font: %s" +msgstr "no se pudo cargar el tipo de letra: %s" -#: src/lex.c:367 +#: src/font.c:116 src/font.c:133 #, c-format -msgid "%s[%d]: invalid entity: \"%.8s\"" -msgstr "%s[%d]: entidad no válida: «%.8s»" +msgid "could not load the default font: %s" +msgstr "no se pudo cargar el tipo de letra por omición: %s" -#: src/lex.c:473 src/parse.c:1893 -msgid "out of memory" -msgstr "Sin memoria" +#: src/traybutton.c:89 +#, c-format +msgid "could not load tray icon: \"%s\"" +msgstr "no se pudo cargar el icono de bandeja: «%s»" #: src/parse.c:228 #, c-format msgid "could not open %s or %s" msgstr "no se pudo abrir %s o %s" -#: src/parse.c:246 +#: src/parse.c:971 #, c-format -msgid "include depth (%d) exceeded" -msgstr "se excedió la profundidad de capa (%d)" +msgid "could not open included file: %s" +msgstr "no se pudo abrir el incluir: %s" -#: src/parse.c:384 +#: src/parse.c:967 #, c-format -msgid "invalid start tag: %s" -msgstr "etiqueta inicial no válida: %s" +msgid "could not process include: %s" +msgstr "no se pudo procesar el incluir: %s" -#: src/parse.c:774 +#: src/parse.c:1880 #, c-format -msgid "invalid include: %s" -msgstr "incluir no válido: %s" +msgid "could not read file: %s" +msgstr "no se pudo cargar el archivo: %s" -#: src/parse.c:824 -msgid "no action specified for Key" -msgstr "no se especificó acción para la Tecla" +#: src/error.c:77 +msgid "display is already managed" +msgstr "el visor ya está manejado" -#: src/parse.c:847 -#, c-format -msgid "invalid Key action: \"%s\"" -msgstr "acción no válida para la Tecla de acción: «%s»" +#: src/desktop.c:336 +msgid "empty Desktops Name tag" +msgstr "etiqueta Nombre de Escritorio vacía" -#: src/parse.c:871 -#, c-format -msgid "invalid text alignment: \"%s\"" -msgstr "alineación de texto no válida: «%s»" +#: src/font.c:315 +msgid "empty Font tag" +msgstr "etiqueta de Tipo de letra vacía" -#: src/parse.c:957 -msgid "no include file specified" -msgstr "no se especificó un archivo de capa" +#: src/image.c:233 +#, c-format +msgid "error reading PNG image: %s" +msgstr "error leyendo imagen PNG: %s" -#: src/parse.c:967 +#: src/command.c:138 src/main.c:221 #, c-format -msgid "could not process include: %s" -msgstr "no se pudo procesar el incluir: %s" +msgid "exec failed: (%s) %s" +msgstr "Ha fallado: (%s) %s" -#: src/parse.c:971 +#: src/parse.c:246 #, c-format -msgid "could not open included file: %s" -msgstr "no se pudo abrir el incluir: %s" +msgid "include depth (%d) exceeded" +msgstr "se excedió la profundidad de capa (%d)" -#: src/parse.c:1611 +#: src/parse.c:1836 #, c-format -msgid "invalid value for 'enabled': \"%s\"" -msgstr "valor no válido para «habilitado»: «%s»" +msgid "invalid %s: \"%s\"" +msgstr "no valido para %s: «%s»" #: src/parse.c:1752 #, c-format msgid "invalid Group Option: %s" msgstr "Grupo de opciones no válido: %s" -#: src/parse.c:1767 +#: src/parse.c:847 #, c-format -msgid "invalid decorations: %s" -msgstr "decoración no válida: «%s»" +msgid "invalid Key action: \"%s\"" +msgstr "acción no válida para la Tecla de acción: «%s»" -#: src/parse.c:1829 +#: src/action.c:44 #, c-format -msgid "%s is empty" -msgstr "%s está vacío" +msgid "invalid action: \"%s\"" +msgstr "acción no válida: «%s»" -#: src/parse.c:1836 +#: src/background.c:149 #, c-format -msgid "invalid %s: \"%s\"" -msgstr "no valido para %s: «%s»" +msgid "invalid background type: \"%s\"" +msgstr "tipo de fondo de pantalla no válido: «%s»" -#: src/parse.c:1854 +#: src/parse.c:1767 #, c-format -msgid "invalid value for %s: \"%s\"" -msgstr "valor no válido para %s: «%s»" +msgid "invalid decorations: %s" +msgstr "decoración no válida: «%s»" -#: src/parse.c:1880 +#: src/group.c:115 +msgid "invalid group class" +msgstr "clase de grupo no válida" + +#: src/group.c:287 #, c-format -msgid "could not read file: %s" -msgstr "no se pudo cargar el archivo: %s" +msgid "invalid group desktop: %d" +msgstr "escritorio de grupo no válido: %d" -#: src/parse.c:1967 src/parse.c:1984 -msgid "no value specified" -msgstr "no hay valor especificado" +#: src/group.c:126 +msgid "invalid group name" +msgstr "nombre de grupo no válido" -#: src/parse.c:1972 +#: src/taskbar.c:975 #, c-format -msgid "invalid setting: %s" -msgstr "ajuste no válido: %s" +msgid "invalid height for TaskList: %s" +msgstr "ancho no válido para Lista de Tareas: %s" -#: src/parse.c:1989 +#: src/parse.c:774 #, c-format -msgid "invalid opacity: %s" -msgstr "opacidad no válida: %s" +msgid "invalid include: %s" +msgstr "incluir no válido: %s" + +#: src/key.c:371 +#, c-format +msgid "invalid key symbol: \"%s\"" +msgstr "símbolo de tecla no válido: \"%s\"" #: src/parse.c:2010 #, c-format msgid "invalid layer: %s" msgstr "capa no válida: %s" -#: src/parse.c:2031 +#: src/taskbar.c:961 #, c-format -msgid "invalid tag in %s: %s" -msgstr "etiqueta no válida en %s: %s" +msgid "invalid maxwidth for TaskList: %s" +msgstr "ancho máximo no válido para Lista de Tareas: %s" -#: src/parse.c:2052 -msgid "configuration error" -msgstr "error de configuración" +#: src/key.c:356 +#, c-format +msgid "invalid modifier: \"%c\"" +msgstr "modificador no válido: \"%c\"" + +#: src/parse.c:1989 +#, c-format +msgid "invalid opacity: %s" +msgstr "opacidad no válida: %s" #: src/root.c:131 #, c-format msgid "invalid root menu specified: \"%c\"" msgstr "menú root especificado no válido: «%c»" -#: src/root.c:223 -msgid "Exit JWM" -msgstr "Salir de JWM" - -#: src/root.c:224 -msgid "Are you sure?" -msgstr "¿Está seguro?" - -#: src/swallow.c:85 -msgid "cannot swallow a client with no name" -msgstr "no se puede mostrar un cliente sin nombre" - -#: src/taskbar.c:444 src/winmenu.c:48 -msgid "Close" -msgstr "Cerrar" - -#: src/taskbar.c:451 src/winmenu.c:66 -msgid "Minimize" -msgstr "Minimizar" - -#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 -#: src/winmenu.c:106 -msgid "Restore" -msgstr "Restaurar" - -#: src/taskbar.c:465 src/winmenu.c:179 -msgid "Send To" -msgstr "Enviar A" +#: src/parse.c:1972 +#, c-format +msgid "invalid setting: %s" +msgstr "ajuste no válido: %s" -#: src/taskbar.c:961 +#: src/parse.c:384 #, c-format -msgid "invalid maxwidth for TaskList: %s" -msgstr "ancho máximo no válido para Lista de Tareas: %s" +msgid "invalid start tag: %s" +msgstr "etiqueta inicial no válida: %s" -#: src/taskbar.c:975 +#: src/parse.c:2031 #, c-format -msgid "invalid height for TaskList: %s" -msgstr "ancho no válido para Lista de Tareas: %s" +msgid "invalid tag in %s: %s" +msgstr "etiqueta no válida en %s: %s" -#: src/tray.c:1064 +#: src/parse.c:871 #, c-format -msgid "invalid tray layout: \"%s\"" -msgstr "forma no válida para bandeja: «%s»" +msgid "invalid text alignment: \"%s\"" +msgstr "alineación de texto no válida: «%s»" #: src/tray.c:1102 #, c-format msgid "invalid tray horizontal alignment: \"%s\"" msgstr "alineación horizontal no válida para bandeja: «%s»" +#: src/tray.c:1064 +#, c-format +msgid "invalid tray layout: \"%s\"" +msgstr "forma no válida para bandeja: «%s»" + #: src/tray.c:1125 #, c-format msgid "invalid tray vertical alignment: \"%s\"" msgstr "alineación vertical no válida para bandeja: «%s»" -#: src/traybutton.c:89 +#: src/parse.c:1854 #, c-format -msgid "could not load tray icon: \"%s\"" -msgstr "no se pudo cargar el icono de bandeja: «%s»" - -#: src/traybutton.c:130 -msgid "no icon or label for TrayButton" -msgstr "no hay icono o etiqueta para el Botón de Bandeja" - -#: src/winmenu.c:49 -msgid "Kill" -msgstr "Finalizar" - -#: src/winmenu.c:57 -msgid "Resize" -msgstr "Redimensionar" - -#: src/winmenu.c:60 -msgid "Move" -msgstr "Mover" - -#: src/winmenu.c:72 -msgid "Unshade" -msgstr "Desenrollar" - -#: src/winmenu.c:74 -msgid "Shade" -msgstr "Enrollar" - -#: src/winmenu.c:81 -msgid "Maximize-y" -msgstr "Maximizar-y" +msgid "invalid value for %s: \"%s\"" +msgstr "valor no válido para %s: «%s»" -#: src/winmenu.c:86 -msgid "Maximize-x" -msgstr "Maximizar-x" +#: src/parse.c:1611 +#, c-format +msgid "invalid value for 'enabled': \"%s\"" +msgstr "valor no válido para «habilitado»: «%s»" -#: src/winmenu.c:90 -msgid "Maximize" -msgstr "Maximizar" +#: src/key.c:467 +#, c-format +msgid "key binding: root menu \"%s\" not defined" +msgstr "atajo de teclado: menú raíz «%s» no definido" -#: src/winmenu.c:112 -msgid "Unstick" -msgstr "Despegar" +#: src/key.c:326 +#, c-format +msgid "modifier not found for keysym 0x%0x" +msgstr "modificador no encontrado para el símbolo de tecla 0x%0x" -#: src/winmenu.c:114 -msgid "Stick" -msgstr "Pegar" +#: src/key.c:452 +msgid "neither key nor keycode specified for Key" +msgstr "ni tecla ni código especificados para Tecla" -#: src/winmenu.c:139 -msgid "Layer" -msgstr "Capa" +#: src/parse.c:824 +msgid "no action specified for Key" +msgstr "no se especificó acción para la Tecla" -#: src/winmenu.c:148 -msgid "[Above]" -msgstr "[Arriba]" +#: src/traybutton.c:130 +msgid "no icon or label for TrayButton" +msgstr "no hay icono o etiqueta para el Botón de Bandeja" -#: src/winmenu.c:150 -msgid "Above" -msgstr "Arriba" +#: src/parse.c:957 +msgid "no include file specified" +msgstr "no se especificó un archivo de capa" -#: src/winmenu.c:153 -msgid "[Normal]" -msgstr "[Normal]" +#: src/parse.c:1967 src/parse.c:1984 +msgid "no value specified" +msgstr "no hay valor especificado" -#: src/winmenu.c:155 -msgid "Normal" -msgstr "Normal" +#: src/background.c:137 +msgid "no value specified for background" +msgstr "no hay valor especificado para fondo de pantalla" -#: src/winmenu.c:158 -msgid "[Below]" -msgstr "[Abajo]" +#: src/dock.c:151 +msgid "only one Dock allowed" +msgstr "solo se permite un Muelle" -#: src/winmenu.c:160 -msgid "Below" -msgstr "Abajo" +#: src/lex.c:473 src/parse.c:1893 +msgid "out of memory" +msgstr "Sin memoria" -#~ msgid "invalid tray width: %d" -#~ msgstr "ancho de bandeja no válido: %d" +#~ msgid "Fullscreen state will be shaped!" +#~ msgstr "¡Se definirá el estado de Pantalla Completa!" -#~ msgid "invalid tray height: %d" -#~ msgstr "alto de bandeja no válido: %d" +#~ msgid "cannot swallow the same client multiple times" +#~ msgstr "no se puede mostrar el mismo cliente varias veces" #~ msgid "invalid insert mode: \"%s\"" #~ msgstr "modo de insertar no válido: «%s»" @@ -469,8 +469,8 @@ msgstr "Abajo" #~ msgid "invalid status window type: %s" #~ msgstr "tipo de ventana de estado no válido: %s" -#~ msgid "cannot swallow the same client multiple times" -#~ msgstr "no se puede mostrar el mismo cliente varias veces" +#~ msgid "invalid tray height: %d" +#~ msgstr "alto de bandeja no válido: %d" -#~ msgid "Fullscreen state will be shaped!" -#~ msgstr "¡Se definirá el estado de Pantalla Completa!" +#~ msgid "invalid tray width: %d" +#~ msgstr "ancho de bandeja no válido: %d" diff --git a/po/fr.po b/po/fr.po index 4c448a1a..612265c2 100644 --- a/po/fr.po +++ b/po/fr.po @@ -13,66 +13,80 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n > 1);\n" "X-Generator: Poedit 1.5.4\n" -#: src/action.c:44 +#: src/parse.c:1829 #, c-format -msgid "invalid action: \"%s\"" -msgstr "action incorrecte: \"%s\"" +msgid "%s is empty" +msgstr "%s est vide" -#: src/action.c:211 +#: src/lex.c:367 #, c-format -msgid "action: root menu \"%s\" not defined" -msgstr "action: menu racine \"%s\" non défini" +msgid "%s[%d]: invalid entity: \"%.8s\"" +msgstr "%s[%d]: entité incorrecte: \"%.8s\"" -#: src/background.c:137 -msgid "no value specified for background" -msgstr "aucune valeur spécifiée pour l'arrière-plan" +#: src/lex.c:201 +#, c-format +msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgstr "" +"%s[%u]: la balise de fermeture \"%s\" ne coïncide pas avec la balise " +"d'ouverture \"%s\"" -#: src/background.c:149 +#: src/lex.c:213 #, c-format -msgid "invalid background type: \"%s\"" -msgstr "type d'arrière-plan incorrect: \"%s\"" +msgid "%s[%u]: close tag \"%s\" without open tag" +msgstr "%s[%u]: balise de fermeture \"%s\" sans balise d'ouverture" -#: src/background.c:294 +#: src/lex.c:216 #, c-format -msgid "background image not found: \"%s\"" -msgstr "image d'arrière-plan introuvable: \"%s\"" +msgid "%s[%u]: invalid close tag" +msgstr "%s[%u]: balise de fermeture incorrecte" -#: src/client.c:905 -msgid "Kill this window?" -msgstr "Éliminer la fenêtre?" +#: src/lex.c:234 +#, c-format +msgid "%s[%u]: invalid open tag" +msgstr "%s[%u]: balise d'ouverture incorrecte" -#: src/client.c:906 -msgid "This may cause data to be lost!" -msgstr "Cela peut entraîner la perte de données!" +#: src/lex.c:250 +#, c-format +msgid "%s[%u]: invalid tag" +msgstr "%s[%u]: balise incorrecte" -#: src/command.c:138 src/main.c:221 +#: src/lex.c:207 #, c-format -msgid "exec failed: (%s) %s" -msgstr "échec de l'exécution: (%s) %s" +msgid "%s[%u]: unexpected and invalid close tag" +msgstr "%s[%u]: balise de fermeture inattendue et incorrecte" -#: src/confirm.c:69 -msgid "OK" -msgstr "Valider" +#: src/lex.c:308 +#, c-format +msgid "%s[%u]: unexpected text: \"%s\"" +msgstr "%s[%u]: texte inattendu: \"%s\"" + +#: src/winmenu.c:150 +msgid "Above" +msgstr "Avant" + +#: src/root.c:224 +msgid "Are you sure?" +msgstr "Êtes-vous certain?" + +#: src/winmenu.c:160 +msgid "Below" +msgstr "Arrière" #: src/confirm.c:74 msgid "Cancel" msgstr "Annuler" +#: src/taskbar.c:444 src/winmenu.c:48 +msgid "Close" +msgstr "Fermer" + #: src/confirm.c:308 msgid "Confirm" msgstr "Confirmer" -#: src/desktop.c:336 -msgid "empty Desktops Name tag" -msgstr "balise de noms de bureaux vide" - -#: src/dock.c:151 -msgid "only one Dock allowed" -msgstr "un seul Dock autorisé" - -#: src/dock.c:232 -msgid "could not acquire system tray selection" -msgstr "impossible d'obtenir la sélection de la barre système" +#: src/root.c:223 +msgid "Exit JWM" +msgstr "Quitter JWM" #: src/error.c:22 #, c-format @@ -84,369 +98,355 @@ msgstr "JWM: erreur: " msgid "JWM: warning: " msgstr "JWM: avertissement: " -#: src/error.c:77 -msgid "display is already managed" -msgstr "affichage déjà pris en charge" +#: src/winmenu.c:49 +msgid "Kill" +msgstr "Éliminer" -#: src/font.c:109 src/font.c:126 -#, c-format -msgid "could not load font: %s" -msgstr "impossible de charger la police de caractères: %s" +#: src/client.c:905 +msgid "Kill this window?" +msgstr "Éliminer la fenêtre?" -#: src/font.c:116 src/font.c:133 -#, c-format -msgid "could not load the default font: %s" -msgstr "impossible de charger la police de caractères par défaut: %s" +#: src/winmenu.c:139 +msgid "Layer" +msgstr "Plan" -#: src/font.c:315 -msgid "empty Font tag" -msgstr "balise de police de caractères vide" +#: src/winmenu.c:90 +msgid "Maximize" +msgstr "Maximiser" -#: src/group.c:115 -msgid "invalid group class" -msgstr "classe de groupe incorrecte" +#: src/winmenu.c:86 +msgid "Maximize-x" +msgstr "Maximiser-x" -#: src/group.c:126 -msgid "invalid group name" -msgstr "nom de groupe incorrect" +#: src/winmenu.c:81 +msgid "Maximize-y" +msgstr "Maximiser-y" -#: src/group.c:287 -#, c-format -msgid "invalid group desktop: %d" -msgstr "bureau de groupe incorrect: %d" +#: src/taskbar.c:451 src/winmenu.c:66 +msgid "Minimize" +msgstr "Réduire" -#: src/image.c:220 -#, c-format -msgid "could not create read struct for PNG image: %s" -msgstr "impossible de créer une structure de lecture pour l'image PNG: %s" +#: src/winmenu.c:60 +msgid "Move" +msgstr "Déplacer" -#: src/image.c:233 -#, c-format -msgid "error reading PNG image: %s" -msgstr "erreur de lecture de l'image PNG: %s" +#: src/winmenu.c:155 +msgid "Normal" +msgstr "Normal" -#: src/image.c:241 -#, c-format -msgid "could not create info struct for PNG image: %s" -msgstr "impossible de créer les informations de structure pour l'image PNG: %s" +#: src/confirm.c:69 +msgid "OK" +msgstr "Valider" + +#: src/winmenu.c:57 +msgid "Resize" +msgstr "Redimensionner" + +#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 +#: src/winmenu.c:106 +msgid "Restore" +msgstr "Restaurer" + +#: src/taskbar.c:465 src/winmenu.c:179 +msgid "Send To" +msgstr "Envoyer vers" + +#: src/winmenu.c:74 +msgid "Shade" +msgstr "Replier" #: src/key.c:318 msgid "Specified KeySym is not defined for any KeyCode" msgstr "Le symbole de touche spécifié n'est défini pour aucun code de touche" -#: src/key.c:326 -#, c-format -msgid "modifier not found for keysym 0x%0x" -msgstr "modificateur pour le symbole de touche 0x%0x introuvable" +#: src/winmenu.c:114 +msgid "Stick" +msgstr "Coller" -#: src/key.c:356 -#, c-format -msgid "invalid modifier: \"%c\"" -msgstr "modificateur incorrect: \"%c\"" +#: src/client.c:906 +msgid "This may cause data to be lost!" +msgstr "Cela peut entraîner la perte de données!" -#: src/key.c:371 -#, c-format -msgid "invalid key symbol: \"%s\"" -msgstr "symbole de touche incorrect: \"%s\"" +#: src/winmenu.c:72 +msgid "Unshade" +msgstr "Déplier" -#: src/key.c:452 -msgid "neither key nor keycode specified for Key" -msgstr "ni touche ni code de touche spécifié pour la touche" +#: src/winmenu.c:112 +msgid "Unstick" +msgstr "Décoller" -#: src/key.c:467 -#, c-format -msgid "key binding: root menu \"%s\" not defined" -msgstr "Raccourci-clavier: menu racine \"%s\" non défini" +#: src/winmenu.c:148 +msgid "[Above]" +msgstr "[Avant]" -#: src/lex.c:201 -#, c-format -msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" -msgstr "" -"%s[%u]: la balise de fermeture \"%s\" ne coïncide pas avec la balise " -"d'ouverture \"%s\"" +#: src/winmenu.c:158 +msgid "[Below]" +msgstr "[Arrière]" -#: src/lex.c:207 -#, c-format -msgid "%s[%u]: unexpected and invalid close tag" -msgstr "%s[%u]: balise de fermeture inattendue et incorrecte" +#: src/winmenu.c:153 +msgid "[Normal]" +msgstr "[Normal]" -#: src/lex.c:213 +#: src/action.c:211 #, c-format -msgid "%s[%u]: close tag \"%s\" without open tag" -msgstr "%s[%u]: balise de fermeture \"%s\" sans balise d'ouverture" +msgid "action: root menu \"%s\" not defined" +msgstr "action: menu racine \"%s\" non défini" -#: src/lex.c:216 +#: src/background.c:294 #, c-format -msgid "%s[%u]: invalid close tag" -msgstr "%s[%u]: balise de fermeture incorrecte" +msgid "background image not found: \"%s\"" +msgstr "image d'arrière-plan introuvable: \"%s\"" -#: src/lex.c:234 +#: src/swallow.c:85 +msgid "cannot swallow a client with no name" +msgstr "impossible d'afficher un client sans nom" + +#: src/parse.c:2052 +msgid "configuration error" +msgstr "erreur de configuration" + +#: src/dock.c:232 +msgid "could not acquire system tray selection" +msgstr "impossible d'obtenir la sélection de la barre système" + +#: src/image.c:241 #, c-format -msgid "%s[%u]: invalid open tag" -msgstr "%s[%u]: balise d'ouverture incorrecte" +msgid "could not create info struct for PNG image: %s" +msgstr "impossible de créer les informations de structure pour l'image PNG: %s" -#: src/lex.c:250 +#: src/image.c:220 #, c-format -msgid "%s[%u]: invalid tag" -msgstr "%s[%u]: balise incorrecte" +msgid "could not create read struct for PNG image: %s" +msgstr "impossible de créer une structure de lecture pour l'image PNG: %s" -#: src/lex.c:308 +#: src/font.c:109 src/font.c:126 #, c-format -msgid "%s[%u]: unexpected text: \"%s\"" -msgstr "%s[%u]: texte inattendu: \"%s\"" +msgid "could not load font: %s" +msgstr "impossible de charger la police de caractères: %s" -#: src/lex.c:367 +#: src/font.c:116 src/font.c:133 #, c-format -msgid "%s[%d]: invalid entity: \"%.8s\"" -msgstr "%s[%d]: entité incorrecte: \"%.8s\"" +msgid "could not load the default font: %s" +msgstr "impossible de charger la police de caractères par défaut: %s" -#: src/lex.c:473 src/parse.c:1893 -msgid "out of memory" -msgstr "mémoire insuffisante" +#: src/traybutton.c:89 +#, c-format +msgid "could not load tray icon: \"%s\"" +msgstr "impossible de charger l'icône de barre: \"%s\"" #: src/parse.c:228 #, c-format msgid "could not open %s or %s" msgstr "impossible d'ouvrir %s ou %s" -#: src/parse.c:246 +#: src/parse.c:971 #, c-format -msgid "include depth (%d) exceeded" -msgstr "profondeur incluse (%d) dépassée" +msgid "could not open included file: %s" +msgstr "impossible d'ouvrir le fichier inclus: %s" -#: src/parse.c:384 +#: src/parse.c:967 #, c-format -msgid "invalid start tag: %s" -msgstr "balise de démarrage incorrecte: %s" +msgid "could not process include: %s" +msgstr "impossible de procéder à l'inclusion: %s" -#: src/parse.c:774 -#, c-format -msgid "invalid include: %s" -msgstr "inclusion incorrecte: %s" +#: src/parse.c:1880 +#, fuzzy, c-format +msgid "could not read file: %s" +msgstr "impossible de charger la police de caractères: %s" -#: src/parse.c:824 -msgid "no action specified for Key" -msgstr "aucune action spécifiée pour la touche" +#: src/error.c:77 +msgid "display is already managed" +msgstr "affichage déjà pris en charge" -#: src/parse.c:847 -#, c-format -msgid "invalid Key action: \"%s\"" -msgstr "action de touche incorrecte: \"%s\"" +#: src/desktop.c:336 +msgid "empty Desktops Name tag" +msgstr "balise de noms de bureaux vide" -#: src/parse.c:871 -#, c-format -msgid "invalid text alignment: \"%s\"" -msgstr "alignement de texte incorrect: \"%s\"" +#: src/font.c:315 +msgid "empty Font tag" +msgstr "balise de police de caractères vide" -#: src/parse.c:957 -msgid "no include file specified" -msgstr "aucun fichier inclus spécifié" +#: src/image.c:233 +#, c-format +msgid "error reading PNG image: %s" +msgstr "erreur de lecture de l'image PNG: %s" -#: src/parse.c:967 +#: src/command.c:138 src/main.c:221 #, c-format -msgid "could not process include: %s" -msgstr "impossible de procéder à l'inclusion: %s" +msgid "exec failed: (%s) %s" +msgstr "échec de l'exécution: (%s) %s" -#: src/parse.c:971 +#: src/parse.c:246 #, c-format -msgid "could not open included file: %s" -msgstr "impossible d'ouvrir le fichier inclus: %s" +msgid "include depth (%d) exceeded" +msgstr "profondeur incluse (%d) dépassée" -#: src/parse.c:1611 +#: src/parse.c:1836 #, c-format -msgid "invalid value for 'enabled': \"%s\"" -msgstr "valeur incorrecte pour 'enabled': \"%s\"" +msgid "invalid %s: \"%s\"" +msgstr " %s incorrect: \"%s\"" #: src/parse.c:1752 #, c-format msgid "invalid Group Option: %s" msgstr "option de groupe incorrecte: %s" -#: src/parse.c:1767 +#: src/parse.c:847 #, c-format -msgid "invalid decorations: %s" -msgstr "décorations incorrectes: %s" +msgid "invalid Key action: \"%s\"" +msgstr "action de touche incorrecte: \"%s\"" -#: src/parse.c:1829 +#: src/action.c:44 #, c-format -msgid "%s is empty" -msgstr "%s est vide" +msgid "invalid action: \"%s\"" +msgstr "action incorrecte: \"%s\"" -#: src/parse.c:1836 +#: src/background.c:149 #, c-format -msgid "invalid %s: \"%s\"" -msgstr " %s incorrect: \"%s\"" +msgid "invalid background type: \"%s\"" +msgstr "type d'arrière-plan incorrect: \"%s\"" -#: src/parse.c:1854 +#: src/parse.c:1767 #, c-format -msgid "invalid value for %s: \"%s\"" -msgstr "valeur incorrecte pour %s: \"%s\"" +msgid "invalid decorations: %s" +msgstr "décorations incorrectes: %s" -#: src/parse.c:1880 -#, fuzzy, c-format -msgid "could not read file: %s" -msgstr "impossible de charger la police de caractères: %s" +#: src/group.c:115 +msgid "invalid group class" +msgstr "classe de groupe incorrecte" -#: src/parse.c:1967 src/parse.c:1984 -msgid "no value specified" -msgstr "aucune valeur spécifiée" +#: src/group.c:287 +#, c-format +msgid "invalid group desktop: %d" +msgstr "bureau de groupe incorrect: %d" -#: src/parse.c:1972 +#: src/group.c:126 +msgid "invalid group name" +msgstr "nom de groupe incorrect" + +#: src/taskbar.c:975 #, c-format -msgid "invalid setting: %s" -msgstr "paramètre incorrect: %s" +msgid "invalid height for TaskList: %s" +msgstr "hauteur de liste de tâches incorrecte: %s" -#: src/parse.c:1989 +#: src/parse.c:774 #, c-format -msgid "invalid opacity: %s" -msgstr "opacité incorrecte: %s" +msgid "invalid include: %s" +msgstr "inclusion incorrecte: %s" + +#: src/key.c:371 +#, c-format +msgid "invalid key symbol: \"%s\"" +msgstr "symbole de touche incorrect: \"%s\"" #: src/parse.c:2010 #, c-format msgid "invalid layer: %s" msgstr "disposition incorrecte: %s" -#: src/parse.c:2031 +#: src/taskbar.c:961 #, c-format -msgid "invalid tag in %s: %s" -msgstr "balise incorrecte dans %s: %s" +msgid "invalid maxwidth for TaskList: %s" +msgstr "largeur maximale de liste de tâches incorrecte: %s" -#: src/parse.c:2052 -msgid "configuration error" -msgstr "erreur de configuration" +#: src/key.c:356 +#, c-format +msgid "invalid modifier: \"%c\"" +msgstr "modificateur incorrect: \"%c\"" + +#: src/parse.c:1989 +#, c-format +msgid "invalid opacity: %s" +msgstr "opacité incorrecte: %s" #: src/root.c:131 #, c-format msgid "invalid root menu specified: \"%c\"" msgstr "menu racine spécifié incorrect: \"%c\"" -#: src/root.c:223 -msgid "Exit JWM" -msgstr "Quitter JWM" - -#: src/root.c:224 -msgid "Are you sure?" -msgstr "Êtes-vous certain?" - -#: src/swallow.c:85 -msgid "cannot swallow a client with no name" -msgstr "impossible d'afficher un client sans nom" - -#: src/taskbar.c:444 src/winmenu.c:48 -msgid "Close" -msgstr "Fermer" - -#: src/taskbar.c:451 src/winmenu.c:66 -msgid "Minimize" -msgstr "Réduire" - -#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 -#: src/winmenu.c:106 -msgid "Restore" -msgstr "Restaurer" - -#: src/taskbar.c:465 src/winmenu.c:179 -msgid "Send To" -msgstr "Envoyer vers" +#: src/parse.c:1972 +#, c-format +msgid "invalid setting: %s" +msgstr "paramètre incorrect: %s" -#: src/taskbar.c:961 +#: src/parse.c:384 #, c-format -msgid "invalid maxwidth for TaskList: %s" -msgstr "largeur maximale de liste de tâches incorrecte: %s" +msgid "invalid start tag: %s" +msgstr "balise de démarrage incorrecte: %s" -#: src/taskbar.c:975 +#: src/parse.c:2031 #, c-format -msgid "invalid height for TaskList: %s" -msgstr "hauteur de liste de tâches incorrecte: %s" +msgid "invalid tag in %s: %s" +msgstr "balise incorrecte dans %s: %s" -#: src/tray.c:1064 +#: src/parse.c:871 #, c-format -msgid "invalid tray layout: \"%s\"" -msgstr "disposition de barre incorrecte: \"%s\"" +msgid "invalid text alignment: \"%s\"" +msgstr "alignement de texte incorrect: \"%s\"" #: src/tray.c:1102 #, c-format msgid "invalid tray horizontal alignment: \"%s\"" msgstr "alignement horizontal de barre incorrect: \"%s\"" +#: src/tray.c:1064 +#, c-format +msgid "invalid tray layout: \"%s\"" +msgstr "disposition de barre incorrecte: \"%s\"" + #: src/tray.c:1125 #, c-format msgid "invalid tray vertical alignment: \"%s\"" msgstr "alignement vertical de barre incorrect: \"%s\"" -#: src/traybutton.c:89 +#: src/parse.c:1854 #, c-format -msgid "could not load tray icon: \"%s\"" -msgstr "impossible de charger l'icône de barre: \"%s\"" - -#: src/traybutton.c:130 -msgid "no icon or label for TrayButton" -msgstr "aucune icône ou étiquette pour le bouton de barre" - -#: src/winmenu.c:49 -msgid "Kill" -msgstr "Éliminer" - -#: src/winmenu.c:57 -msgid "Resize" -msgstr "Redimensionner" - -#: src/winmenu.c:60 -msgid "Move" -msgstr "Déplacer" - -#: src/winmenu.c:72 -msgid "Unshade" -msgstr "Déplier" - -#: src/winmenu.c:74 -msgid "Shade" -msgstr "Replier" - -#: src/winmenu.c:81 -msgid "Maximize-y" -msgstr "Maximiser-y" +msgid "invalid value for %s: \"%s\"" +msgstr "valeur incorrecte pour %s: \"%s\"" -#: src/winmenu.c:86 -msgid "Maximize-x" -msgstr "Maximiser-x" +#: src/parse.c:1611 +#, c-format +msgid "invalid value for 'enabled': \"%s\"" +msgstr "valeur incorrecte pour 'enabled': \"%s\"" -#: src/winmenu.c:90 -msgid "Maximize" -msgstr "Maximiser" +#: src/key.c:467 +#, c-format +msgid "key binding: root menu \"%s\" not defined" +msgstr "Raccourci-clavier: menu racine \"%s\" non défini" -#: src/winmenu.c:112 -msgid "Unstick" -msgstr "Décoller" +#: src/key.c:326 +#, c-format +msgid "modifier not found for keysym 0x%0x" +msgstr "modificateur pour le symbole de touche 0x%0x introuvable" -#: src/winmenu.c:114 -msgid "Stick" -msgstr "Coller" +#: src/key.c:452 +msgid "neither key nor keycode specified for Key" +msgstr "ni touche ni code de touche spécifié pour la touche" -#: src/winmenu.c:139 -msgid "Layer" -msgstr "Plan" +#: src/parse.c:824 +msgid "no action specified for Key" +msgstr "aucune action spécifiée pour la touche" -#: src/winmenu.c:148 -msgid "[Above]" -msgstr "[Avant]" +#: src/traybutton.c:130 +msgid "no icon or label for TrayButton" +msgstr "aucune icône ou étiquette pour le bouton de barre" -#: src/winmenu.c:150 -msgid "Above" -msgstr "Avant" +#: src/parse.c:957 +msgid "no include file specified" +msgstr "aucun fichier inclus spécifié" -#: src/winmenu.c:153 -msgid "[Normal]" -msgstr "[Normal]" +#: src/parse.c:1967 src/parse.c:1984 +msgid "no value specified" +msgstr "aucune valeur spécifiée" -#: src/winmenu.c:155 -msgid "Normal" -msgstr "Normal" +#: src/background.c:137 +msgid "no value specified for background" +msgstr "aucune valeur spécifiée pour l'arrière-plan" -#: src/winmenu.c:158 -msgid "[Below]" -msgstr "[Arrière]" +#: src/dock.c:151 +msgid "only one Dock allowed" +msgstr "un seul Dock autorisé" -#: src/winmenu.c:160 -msgid "Below" -msgstr "Arrière" +#: src/lex.c:473 src/parse.c:1893 +msgid "out of memory" +msgstr "mémoire insuffisante" diff --git a/po/hu.po b/po/hu.po index 60a9a23e..3169bd97 100644 --- a/po/hu.po +++ b/po/hu.po @@ -18,66 +18,78 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Poedit-Language: Hungarian\n" -#: src/action.c:44 +#: src/parse.c:1829 #, c-format -msgid "invalid action: \"%s\"" -msgstr "nem támogatott művelet: \"%s\"" +msgid "%s is empty" +msgstr "" -#: src/action.c:211 +#: src/lex.c:367 #, c-format -msgid "action: root menu \"%s\" not defined" -msgstr "művelet: a \"%s\" gyökérmenü nincs definiálva" +msgid "%s[%d]: invalid entity: \"%.8s\"" +msgstr "%s[%d]: érvénytelen entitás: \"%.8s\"" -#: src/background.c:137 -msgid "no value specified for background" -msgstr "nincs megadva háttérkép-adat" +#: src/lex.c:201 +#, c-format +msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgstr "%s[%u]: az xml záró tag \"%s\" nem egyezik a nyitótaggal \"%s\"" -#: src/background.c:149 +#: src/lex.c:213 #, c-format -msgid "invalid background type: \"%s\"" -msgstr "nem támogatott háttérkép-típus: \"%s\"" +msgid "%s[%u]: close tag \"%s\" without open tag" +msgstr "%s[%u]: xml zárótag \"%s\" nyitótag nélkül" -#: src/background.c:294 +#: src/lex.c:216 #, c-format -msgid "background image not found: \"%s\"" -msgstr "a háttérkép nem található: \"%s\"" +msgid "%s[%u]: invalid close tag" +msgstr "%s[%u]: érvénytelen xml zárótag (címke)" -#: src/client.c:905 -msgid "Kill this window?" -msgstr "Ablak erőszakos bezárása?" +#: src/lex.c:234 +#, c-format +msgid "%s[%u]: invalid open tag" +msgstr "%s[%u]: érvénytelen xml nyitótag (címke)" -#: src/client.c:906 -msgid "This may cause data to be lost!" -msgstr "Ez adatvesztéshez vezethet!" +#: src/lex.c:250 +#, c-format +msgid "%s[%u]: invalid tag" +msgstr "%s[%u]: érvénytelen xml tag (címke)" -#: src/command.c:138 src/main.c:221 +#: src/lex.c:207 #, c-format -msgid "exec failed: (%s) %s" -msgstr "futtatás sikertelen: (%s) %s" +msgid "%s[%u]: unexpected and invalid close tag" +msgstr "%s[%u]: váratlan és érvénytelen xml zárótag" -#: src/confirm.c:69 -msgid "OK" -msgstr "Rendben" +#: src/lex.c:308 +#, c-format +msgid "%s[%u]: unexpected text: \"%s\"" +msgstr "%s[%u]: váratlan szöveg: \"%s\"" + +#: src/winmenu.c:150 +msgid "Above" +msgstr "Fölé" + +#: src/root.c:224 +msgid "Are you sure?" +msgstr "Biztosan folytatja?" + +#: src/winmenu.c:160 +msgid "Below" +msgstr "Alá" #: src/confirm.c:74 msgid "Cancel" msgstr "Visszavonás" +#: src/taskbar.c:444 src/winmenu.c:48 +msgid "Close" +msgstr "Bezárás" + #: src/confirm.c:308 msgid "Confirm" msgstr "Megerősítés" -#: src/desktop.c:336 -msgid "empty Desktops Name tag" -msgstr "üres Asztal-név (Desktops Name) xml tag" - -#: src/dock.c:151 -msgid "only one Dock allowed" -msgstr "csak egy Dock engedélyezett" - -#: src/dock.c:232 -msgid "could not acquire system tray selection" -msgstr "nem sikerült betölteni az értesítési terület (tray/dock) kijelölést" +#: src/root.c:223 +msgid "Exit JWM" +msgstr "Kilépés a JWM-ből" #: src/error.c:22 #, c-format @@ -89,177 +101,193 @@ msgstr "" msgid "JWM: warning: " msgstr "" -#: src/error.c:77 -msgid "display is already managed" -msgstr "" +#: src/winmenu.c:49 +msgid "Kill" +msgstr "Erőszakos bezárás" -#: src/font.c:109 src/font.c:126 -#, c-format -msgid "could not load font: %s" -msgstr "nem sikerült a betűtípus betöltése: %s" +#: src/client.c:905 +msgid "Kill this window?" +msgstr "Ablak erőszakos bezárása?" -#: src/font.c:116 src/font.c:133 -#, c-format -msgid "could not load the default font: %s" -msgstr "nem sikerült az alapértelmezett betűtípus betöltése: %s" +#: src/winmenu.c:139 +msgid "Layer" +msgstr "Réteg" -#: src/font.c:315 -msgid "empty Font tag" -msgstr "üres betűtípus (Font) xml tag" +#: src/winmenu.c:90 +msgid "Maximize" +msgstr "Maximális méret" -#: src/group.c:115 -msgid "invalid group class" -msgstr "nem támogatott csoport-osztály" +#: src/winmenu.c:86 +msgid "Maximize-x" +msgstr "Max. vízszintes méret" -#: src/group.c:126 -msgid "invalid group name" -msgstr "nem támogatott csoportnév" +#: src/winmenu.c:81 +msgid "Maximize-y" +msgstr "Max. függőleges méret" -#: src/group.c:287 -#, c-format -msgid "invalid group desktop: %d" -msgstr "érvénytelen csoport asztal: %d" +#: src/taskbar.c:451 src/winmenu.c:66 +msgid "Minimize" +msgstr "Lerakás tálcára" -#: src/image.c:220 -#, c-format -msgid "could not create read struct for PNG image: %s" -msgstr "" -"nem sikerült az olvasási ('read') struktúra létrehozása a PNG képhez: %s" +#: src/winmenu.c:60 +msgid "Move" +msgstr "Mozgatás" -#: src/image.c:233 -#, c-format -msgid "error reading PNG image: %s" -msgstr "hiba a PNG kép beolvasása során: %s" +#: src/winmenu.c:155 +msgid "Normal" +msgstr "Normál" -#: src/image.c:241 -#, c-format -msgid "could not create info struct for PNG image: %s" -msgstr "nem sikerült az 'info' struktúra létrehozása a PNG képhez: %s" +#: src/confirm.c:69 +msgid "OK" +msgstr "Rendben" + +#: src/winmenu.c:57 +msgid "Resize" +msgstr "Átméretezés" + +#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 +#: src/winmenu.c:106 +msgid "Restore" +msgstr "Visszaállítás" + +#: src/taskbar.c:465 src/winmenu.c:179 +msgid "Send To" +msgstr "Küldés" + +#: src/winmenu.c:74 +msgid "Shade" +msgstr "Háttérbe helyezés" #: src/key.c:318 msgid "Specified KeySym is not defined for any KeyCode" msgstr "Nincs megadva a szimbólum (KeySym) egyik billentyűkódhoz (KeyCode) sem" -#: src/key.c:326 -#, c-format -msgid "modifier not found for keysym 0x%0x" -msgstr "nem található a módosítóbillentyű a 0x%0x billentyű-szimbólumhoz" +#: src/winmenu.c:114 +msgid "Stick" +msgstr "Rögzítés" -#: src/key.c:356 -#, c-format -msgid "invalid modifier: \"%c\"" -msgstr "érvénytelen módosítóbillentyű: \"%c\"" +#: src/client.c:906 +msgid "This may cause data to be lost!" +msgstr "Ez adatvesztéshez vezethet!" -#: src/key.c:371 -#, c-format -msgid "invalid key symbol: \"%s\"" -msgstr "érvénytelen billentyű-szimbólum: \"%s\"" +#: src/winmenu.c:72 +msgid "Unshade" +msgstr "Előtérbe helyezés" -#: src/key.c:452 -msgid "neither key nor keycode specified for Key" -msgstr "se billentyű, sem billentyűkód nincs megadva a billentyűhöz" +#: src/winmenu.c:112 +msgid "Unstick" +msgstr "Feloldás" -#: src/key.c:467 -#, c-format -msgid "key binding: root menu \"%s\" not defined" -msgstr "billentyű-társítás: gyökérmenü \"%s\" nincs definiálva" +#: src/winmenu.c:148 +msgid "[Above]" +msgstr "[Fölött]" -#: src/lex.c:201 -#, c-format -msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" -msgstr "%s[%u]: az xml záró tag \"%s\" nem egyezik a nyitótaggal \"%s\"" +#: src/winmenu.c:158 +msgid "[Below]" +msgstr "[Alatt]" -#: src/lex.c:207 -#, c-format -msgid "%s[%u]: unexpected and invalid close tag" -msgstr "%s[%u]: váratlan és érvénytelen xml zárótag" +#: src/winmenu.c:153 +msgid "[Normal]" +msgstr "[Normál]" -#: src/lex.c:213 +#: src/action.c:211 #, c-format -msgid "%s[%u]: close tag \"%s\" without open tag" -msgstr "%s[%u]: xml zárótag \"%s\" nyitótag nélkül" +msgid "action: root menu \"%s\" not defined" +msgstr "művelet: a \"%s\" gyökérmenü nincs definiálva" -#: src/lex.c:216 +#: src/background.c:294 #, c-format -msgid "%s[%u]: invalid close tag" -msgstr "%s[%u]: érvénytelen xml zárótag (címke)" +msgid "background image not found: \"%s\"" +msgstr "a háttérkép nem található: \"%s\"" -#: src/lex.c:234 +#: src/swallow.c:85 +msgid "cannot swallow a client with no name" +msgstr "név nélküli kliens nem építhető be a tálcába" + +#: src/parse.c:2052 +msgid "configuration error" +msgstr "konfigurációs hiba" + +#: src/dock.c:232 +msgid "could not acquire system tray selection" +msgstr "nem sikerült betölteni az értesítési terület (tray/dock) kijelölést" + +#: src/image.c:241 #, c-format -msgid "%s[%u]: invalid open tag" -msgstr "%s[%u]: érvénytelen xml nyitótag (címke)" +msgid "could not create info struct for PNG image: %s" +msgstr "nem sikerült az 'info' struktúra létrehozása a PNG képhez: %s" -#: src/lex.c:250 +#: src/image.c:220 #, c-format -msgid "%s[%u]: invalid tag" -msgstr "%s[%u]: érvénytelen xml tag (címke)" +msgid "could not create read struct for PNG image: %s" +msgstr "" +"nem sikerült az olvasási ('read') struktúra létrehozása a PNG képhez: %s" -#: src/lex.c:308 +#: src/font.c:109 src/font.c:126 #, c-format -msgid "%s[%u]: unexpected text: \"%s\"" -msgstr "%s[%u]: váratlan szöveg: \"%s\"" +msgid "could not load font: %s" +msgstr "nem sikerült a betűtípus betöltése: %s" -#: src/lex.c:367 +#: src/font.c:116 src/font.c:133 #, c-format -msgid "%s[%d]: invalid entity: \"%.8s\"" -msgstr "%s[%d]: érvénytelen entitás: \"%.8s\"" +msgid "could not load the default font: %s" +msgstr "nem sikerült az alapértelmezett betűtípus betöltése: %s" -#: src/lex.c:473 src/parse.c:1893 -msgid "out of memory" -msgstr "megtelt a memória" +#: src/traybutton.c:89 +#, c-format +msgid "could not load tray icon: \"%s\"" +msgstr "nem sikerült betölteni a gyorsindító tálcaikont: \"%s\"" #: src/parse.c:228 #, fuzzy, c-format msgid "could not open %s or %s" msgstr "nem sikerült a betűtípus betöltése: %s" -#: src/parse.c:246 -#, c-format -msgid "include depth (%d) exceeded" -msgstr "" +#: src/parse.c:971 +#, fuzzy, c-format +msgid "could not open included file: %s" +msgstr "nem sikerült a betűtípus betöltése: %s" -#: src/parse.c:384 +#: src/parse.c:967 #, fuzzy, c-format -msgid "invalid start tag: %s" -msgstr "nem támogatott beállítás: %s" +msgid "could not process include: %s" +msgstr "nem sikerült a betűtípus betöltése: %s" -#: src/parse.c:774 +#: src/parse.c:1880 #, fuzzy, c-format -msgid "invalid include: %s" -msgstr "nem támogatott beállítás: %s" +msgid "could not read file: %s" +msgstr "nem sikerült a betűtípus betöltése: %s" -#: src/parse.c:824 -#, fuzzy -msgid "no action specified for Key" -msgstr "se billentyű, sem billentyűkód nincs megadva a billentyűhöz" +#: src/error.c:77 +msgid "display is already managed" +msgstr "" -#: src/parse.c:847 -#, fuzzy, c-format -msgid "invalid Key action: \"%s\"" -msgstr "nem támogatott művelet: \"%s\"" +#: src/desktop.c:336 +msgid "empty Desktops Name tag" +msgstr "üres Asztal-név (Desktops Name) xml tag" -#: src/parse.c:871 -#, fuzzy, c-format -msgid "invalid text alignment: \"%s\"" -msgstr "érvénytelen függőleges igazítási érték a tálcához: \"%s\"" +#: src/font.c:315 +msgid "empty Font tag" +msgstr "üres betűtípus (Font) xml tag" -#: src/parse.c:957 -msgid "no include file specified" -msgstr "" +#: src/image.c:233 +#, c-format +msgid "error reading PNG image: %s" +msgstr "hiba a PNG kép beolvasása során: %s" -#: src/parse.c:967 -#, fuzzy, c-format -msgid "could not process include: %s" -msgstr "nem sikerült a betűtípus betöltése: %s" +#: src/command.c:138 src/main.c:221 +#, c-format +msgid "exec failed: (%s) %s" +msgstr "futtatás sikertelen: (%s) %s" -#: src/parse.c:971 -#, fuzzy, c-format -msgid "could not open included file: %s" -msgstr "nem sikerült a betűtípus betöltése: %s" +#: src/parse.c:246 +#, c-format +msgid "include depth (%d) exceeded" +msgstr "" -#: src/parse.c:1611 +#: src/parse.c:1836 #, fuzzy, c-format -msgid "invalid value for 'enabled': \"%s\"" +msgid "invalid %s: \"%s\"" msgstr "nem támogatott művelet: \"%s\"" #: src/parse.c:1752 @@ -267,198 +295,170 @@ msgstr "nem támogatott művelet: \"%s\"" msgid "invalid Group Option: %s" msgstr "érvénytelen csoport asztal: %d" -#: src/parse.c:1767 +#: src/parse.c:847 #, fuzzy, c-format -msgid "invalid decorations: %s" +msgid "invalid Key action: \"%s\"" msgstr "nem támogatott művelet: \"%s\"" -#: src/parse.c:1829 +#: src/action.c:44 #, c-format -msgid "%s is empty" -msgstr "" - -#: src/parse.c:1836 -#, fuzzy, c-format -msgid "invalid %s: \"%s\"" +msgid "invalid action: \"%s\"" msgstr "nem támogatott művelet: \"%s\"" -#: src/parse.c:1854 -#, fuzzy, c-format -msgid "invalid value for %s: \"%s\"" -msgstr "érvéytelen xml tag %s-ben: %s" +#: src/background.c:149 +#, c-format +msgid "invalid background type: \"%s\"" +msgstr "nem támogatott háttérkép-típus: \"%s\"" -#: src/parse.c:1880 +#: src/parse.c:1767 #, fuzzy, c-format -msgid "could not read file: %s" -msgstr "nem sikerült a betűtípus betöltése: %s" +msgid "invalid decorations: %s" +msgstr "nem támogatott művelet: \"%s\"" -#: src/parse.c:1967 src/parse.c:1984 -#, fuzzy -msgid "no value specified" -msgstr "nincs megadva háttérkép-adat" +#: src/group.c:115 +msgid "invalid group class" +msgstr "nem támogatott csoport-osztály" -#: src/parse.c:1972 +#: src/group.c:287 #, c-format -msgid "invalid setting: %s" +msgid "invalid group desktop: %d" +msgstr "érvénytelen csoport asztal: %d" + +#: src/group.c:126 +msgid "invalid group name" +msgstr "nem támogatott csoportnév" + +#: src/taskbar.c:975 +#, fuzzy, c-format +msgid "invalid height for TaskList: %s" +msgstr "érvénytelen maximális hosszúság van megadva a feladatlistához: %s" + +#: src/parse.c:774 +#, fuzzy, c-format +msgid "invalid include: %s" msgstr "nem támogatott beállítás: %s" -#: src/parse.c:1989 +#: src/key.c:371 #, c-format -msgid "invalid opacity: %s" -msgstr "érvénytelen átlátszóssági (opacity) érték: %s" +msgid "invalid key symbol: \"%s\"" +msgstr "érvénytelen billentyű-szimbólum: \"%s\"" #: src/parse.c:2010 #, fuzzy, c-format msgid "invalid layer: %s" msgstr "érvénytelen átlátszóssági (opacity) érték: %s" -#: src/parse.c:2031 +#: src/taskbar.c:961 #, c-format -msgid "invalid tag in %s: %s" -msgstr "érvéytelen xml tag %s-ben: %s" +msgid "invalid maxwidth for TaskList: %s" +msgstr "érvénytelen maximális hosszúság van megadva a feladatlistához: %s" -#: src/parse.c:2052 -msgid "configuration error" -msgstr "konfigurációs hiba" +#: src/key.c:356 +#, c-format +msgid "invalid modifier: \"%c\"" +msgstr "érvénytelen módosítóbillentyű: \"%c\"" + +#: src/parse.c:1989 +#, c-format +msgid "invalid opacity: %s" +msgstr "érvénytelen átlátszóssági (opacity) érték: %s" #: src/root.c:131 #, c-format msgid "invalid root menu specified: \"%c\"" msgstr "a megadott gyökérmenü helytelen: \"%c\"" -#: src/root.c:223 -msgid "Exit JWM" -msgstr "Kilépés a JWM-ből" - -#: src/root.c:224 -msgid "Are you sure?" -msgstr "Biztosan folytatja?" - -#: src/swallow.c:85 -msgid "cannot swallow a client with no name" -msgstr "név nélküli kliens nem építhető be a tálcába" - -#: src/taskbar.c:444 src/winmenu.c:48 -msgid "Close" -msgstr "Bezárás" - -#: src/taskbar.c:451 src/winmenu.c:66 -msgid "Minimize" -msgstr "Lerakás tálcára" - -#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 -#: src/winmenu.c:106 -msgid "Restore" -msgstr "Visszaállítás" - -#: src/taskbar.c:465 src/winmenu.c:179 -msgid "Send To" -msgstr "Küldés" - -#: src/taskbar.c:961 +#: src/parse.c:1972 #, c-format -msgid "invalid maxwidth for TaskList: %s" -msgstr "érvénytelen maximális hosszúság van megadva a feladatlistához: %s" +msgid "invalid setting: %s" +msgstr "nem támogatott beállítás: %s" -#: src/taskbar.c:975 +#: src/parse.c:384 #, fuzzy, c-format -msgid "invalid height for TaskList: %s" -msgstr "érvénytelen maximális hosszúság van megadva a feladatlistához: %s" +msgid "invalid start tag: %s" +msgstr "nem támogatott beállítás: %s" -#: src/tray.c:1064 +#: src/parse.c:2031 #, c-format -msgid "invalid tray layout: \"%s\"" -msgstr "érvénytelen tálca-elrendezés: \"%s\"" +msgid "invalid tag in %s: %s" +msgstr "érvéytelen xml tag %s-ben: %s" + +#: src/parse.c:871 +#, fuzzy, c-format +msgid "invalid text alignment: \"%s\"" +msgstr "érvénytelen függőleges igazítási érték a tálcához: \"%s\"" #: src/tray.c:1102 #, c-format msgid "invalid tray horizontal alignment: \"%s\"" msgstr "érvénytelen vízszintes igazítási érték a tálcához: \"%s\"" +#: src/tray.c:1064 +#, c-format +msgid "invalid tray layout: \"%s\"" +msgstr "érvénytelen tálca-elrendezés: \"%s\"" + #: src/tray.c:1125 #, c-format msgid "invalid tray vertical alignment: \"%s\"" msgstr "érvénytelen függőleges igazítási érték a tálcához: \"%s\"" -#: src/traybutton.c:89 -#, c-format -msgid "could not load tray icon: \"%s\"" -msgstr "nem sikerült betölteni a gyorsindító tálcaikont: \"%s\"" - -#: src/traybutton.c:130 -msgid "no icon or label for TrayButton" -msgstr "nincs ikon vagy címke megadva a gyorsindító tálcaikonhoz" - -#: src/winmenu.c:49 -msgid "Kill" -msgstr "Erőszakos bezárás" - -#: src/winmenu.c:57 -msgid "Resize" -msgstr "Átméretezés" - -#: src/winmenu.c:60 -msgid "Move" -msgstr "Mozgatás" - -#: src/winmenu.c:72 -msgid "Unshade" -msgstr "Előtérbe helyezés" - -#: src/winmenu.c:74 -msgid "Shade" -msgstr "Háttérbe helyezés" +#: src/parse.c:1854 +#, fuzzy, c-format +msgid "invalid value for %s: \"%s\"" +msgstr "érvéytelen xml tag %s-ben: %s" -#: src/winmenu.c:81 -msgid "Maximize-y" -msgstr "Max. függőleges méret" +#: src/parse.c:1611 +#, fuzzy, c-format +msgid "invalid value for 'enabled': \"%s\"" +msgstr "nem támogatott művelet: \"%s\"" -#: src/winmenu.c:86 -msgid "Maximize-x" -msgstr "Max. vízszintes méret" +#: src/key.c:467 +#, c-format +msgid "key binding: root menu \"%s\" not defined" +msgstr "billentyű-társítás: gyökérmenü \"%s\" nincs definiálva" -#: src/winmenu.c:90 -msgid "Maximize" -msgstr "Maximális méret" +#: src/key.c:326 +#, c-format +msgid "modifier not found for keysym 0x%0x" +msgstr "nem található a módosítóbillentyű a 0x%0x billentyű-szimbólumhoz" -#: src/winmenu.c:112 -msgid "Unstick" -msgstr "Feloldás" +#: src/key.c:452 +msgid "neither key nor keycode specified for Key" +msgstr "se billentyű, sem billentyűkód nincs megadva a billentyűhöz" -#: src/winmenu.c:114 -msgid "Stick" -msgstr "Rögzítés" +#: src/parse.c:824 +#, fuzzy +msgid "no action specified for Key" +msgstr "se billentyű, sem billentyűkód nincs megadva a billentyűhöz" -#: src/winmenu.c:139 -msgid "Layer" -msgstr "Réteg" +#: src/traybutton.c:130 +msgid "no icon or label for TrayButton" +msgstr "nincs ikon vagy címke megadva a gyorsindító tálcaikonhoz" -#: src/winmenu.c:148 -msgid "[Above]" -msgstr "[Fölött]" +#: src/parse.c:957 +msgid "no include file specified" +msgstr "" -#: src/winmenu.c:150 -msgid "Above" -msgstr "Fölé" +#: src/parse.c:1967 src/parse.c:1984 +#, fuzzy +msgid "no value specified" +msgstr "nincs megadva háttérkép-adat" -#: src/winmenu.c:153 -msgid "[Normal]" -msgstr "[Normál]" +#: src/background.c:137 +msgid "no value specified for background" +msgstr "nincs megadva háttérkép-adat" -#: src/winmenu.c:155 -msgid "Normal" -msgstr "Normál" +#: src/dock.c:151 +msgid "only one Dock allowed" +msgstr "csak egy Dock engedélyezett" -#: src/winmenu.c:158 -msgid "[Below]" -msgstr "[Alatt]" +#: src/lex.c:473 src/parse.c:1893 +msgid "out of memory" +msgstr "megtelt a memória" -#: src/winmenu.c:160 -msgid "Below" -msgstr "Alá" +#~ msgid "invalid tray height: %d" +#~ msgstr "érvénytelen tálca-magasság: %d" #~ msgid "invalid tray width: %d" #~ msgstr "érvénytelen tálca-szélesség: %d" - -#~ msgid "invalid tray height: %d" -#~ msgstr "érvénytelen tálca-magasság: %d" diff --git a/po/it.po b/po/it.po index 238012cb..6a36df4a 100644 --- a/po/it.po +++ b/po/it.po @@ -17,66 +17,79 @@ msgstr "" "X-Loco-Parser: loco_parse_po\n" "X-Loco-Target-Locale: it_IT\n" -#: src/action.c:44 -#, fuzzy, c-format -msgid "invalid action: \"%s\"" -msgstr "Azione non valida: \"%s\"" +#: src/parse.c:1829 +#, c-format +msgid "%s is empty" +msgstr "%s è vuoto" -#: src/action.c:211 -#, fuzzy, c-format -msgid "action: root menu \"%s\" not defined" -msgstr "Tray button: root menu %d non definito" +#: src/lex.c:367 +#, c-format +msgid "%s[%d]: invalid entity: \"%.8s\"" +msgstr "%s[%d]: entità non valida: \"%.8s\"" -#: src/background.c:137 -msgid "no value specified for background" -msgstr "Nessun valore specificato per lo sfondo" +#: src/lex.c:201 +#, c-format +msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgstr "" +"%s[%u]: tag di chiusura \"%s\" non corrisponde al tag di apertura \"%s\"" -#: src/background.c:149 +#: src/lex.c:213 #, c-format -msgid "invalid background type: \"%s\"" -msgstr "Formato di sfondo non valido: \"%s\"" +msgid "%s[%u]: close tag \"%s\" without open tag" +msgstr "%s[%u]: tag di chiusura \"%s\" senza tag di apertura" -#: src/background.c:294 +#: src/lex.c:216 #, c-format -msgid "background image not found: \"%s\"" -msgstr "Immagine di sfondo non trovata: \"%s\"" +msgid "%s[%u]: invalid close tag" +msgstr "%s[%u]: tag di chiusura non valido" -#: src/client.c:905 -msgid "Kill this window?" -msgstr "Chiudere questa finestra?" +#: src/lex.c:234 +#, c-format +msgid "%s[%u]: invalid open tag" +msgstr "%s[%u]: tag di apertura non valido" -#: src/client.c:906 -msgid "This may cause data to be lost!" -msgstr "Questo può causare una perdita di dati!" +#: src/lex.c:250 +#, c-format +msgid "%s[%u]: invalid tag" +msgstr "%s[%u]: tag non valido" -#: src/command.c:138 src/main.c:221 +#: src/lex.c:207 #, c-format -msgid "exec failed: (%s) %s" -msgstr "Esecuzione fallita: (%s) %s" +msgid "%s[%u]: unexpected and invalid close tag" +msgstr "%s[%u]: tag di chiusura inatteso e non valido" -#: src/confirm.c:69 -msgid "OK" -msgstr "Ok" +#: src/lex.c:308 +#, c-format +msgid "%s[%u]: unexpected text: \"%s\"" +msgstr "%s[%u]: testo non atteso: \"%s\"" + +#: src/winmenu.c:150 +msgid "Above" +msgstr "Sopra" + +#: src/root.c:224 +msgid "Are you sure?" +msgstr "Sei sicuro?" + +#: src/winmenu.c:160 +msgid "Below" +msgstr "Sotto" #: src/confirm.c:74 msgid "Cancel" msgstr "Annulla" +#: src/taskbar.c:444 src/winmenu.c:48 +msgid "Close" +msgstr "Chiudi" + #: src/confirm.c:308 msgid "Confirm" msgstr "Conferma" -#: src/desktop.c:336 -msgid "empty Desktops Name tag" -msgstr "Etichetta Nome dei desktop vuota" - -#: src/dock.c:151 -msgid "only one Dock allowed" -msgstr "Permesso un solo Dock" - -#: src/dock.c:232 -msgid "could not acquire system tray selection" -msgstr "Impossibile acquisire la selezione del vassoio di sistema" +#: src/root.c:223 +msgid "Exit JWM" +msgstr "Termina JWM" #: src/error.c:22 #, c-format @@ -88,379 +101,363 @@ msgstr "JWM: errore: " msgid "JWM: warning: " msgstr "JWM: avviso: " -#: src/error.c:77 -msgid "display is already managed" -msgstr "lo schermo è già gestito" +#: src/winmenu.c:49 +msgid "Kill" +msgstr "Termina" -#: src/font.c:109 src/font.c:126 -#, c-format -msgid "could not load font: %s" -msgstr "Impossibile caricare font: %s" +#: src/client.c:905 +msgid "Kill this window?" +msgstr "Chiudere questa finestra?" -#: src/font.c:116 src/font.c:133 -#, c-format -msgid "could not load the default font: %s" -msgstr "Impossibile caricare il font predefinito: %s" +#: src/winmenu.c:139 +msgid "Layer" +msgstr "Layer" -#: src/font.c:315 -msgid "empty Font tag" -msgstr "Etichetta Font vuota" +#: src/winmenu.c:90 +msgid "Maximize" +msgstr "Ingrandisci" -#: src/group.c:115 -msgid "invalid group class" -msgstr "Classe di gruppo non valida" +#: src/winmenu.c:86 +msgid "Maximize-x" +msgstr "Ingrandisci-x" -#: src/group.c:126 -msgid "invalid group name" -msgstr "Nome di gruppo non valido" +#: src/winmenu.c:81 +msgid "Maximize-y" +msgstr "Ingrandisci-y" -#: src/group.c:287 -#, c-format -msgid "invalid group desktop: %d" -msgstr "Desktop del gruppo non valido: %d" +#: src/taskbar.c:451 src/winmenu.c:66 +msgid "Minimize" +msgstr "Riduci" -#: src/image.c:220 -#, c-format -msgid "could not create read struct for PNG image: %s" -msgstr "Impossibile creare struttura di read per immagine PNG: %s" +#: src/winmenu.c:60 +msgid "Move" +msgstr "Sposta" -#: src/image.c:233 -#, c-format -msgid "error reading PNG image: %s" -msgstr "Errore durante la lettura dell'immagine PNG: %s" +#: src/winmenu.c:155 +msgid "Normal" +msgstr "Normale" -#: src/image.c:241 -#, c-format -msgid "could not create info struct for PNG image: %s" -msgstr "Impossibile creare struttura di info per immagine PNG: %s" +#: src/confirm.c:69 +msgid "OK" +msgstr "Ok" + +#: src/winmenu.c:57 +msgid "Resize" +msgstr "Ridimensiona" + +#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 +#: src/winmenu.c:106 +msgid "Restore" +msgstr "Ripristina" + +#: src/taskbar.c:465 src/winmenu.c:179 +msgid "Send To" +msgstr "Manda A" + +#: src/winmenu.c:74 +msgid "Shade" +msgstr "Arrotola" #: src/key.c:318 msgid "Specified KeySym is not defined for any KeyCode" msgstr "Il KeySym specificato non è definito per alcun KeyCode" -#: src/key.c:326 -#, c-format -msgid "modifier not found for keysym 0x%0x" -msgstr "Modificatore non trovato per il KeySym 0x%0x" +#: src/winmenu.c:114 +msgid "Stick" +msgstr "Aggancia" -#: src/key.c:356 -#, c-format -msgid "invalid modifier: \"%c\"" -msgstr "Modificatore non valido: \"%c\"" +#: src/client.c:906 +msgid "This may cause data to be lost!" +msgstr "Questo può causare una perdita di dati!" -#: src/key.c:371 -#, c-format -msgid "invalid key symbol: \"%s\"" -msgstr "Key symbol non valido: \"%s\"" +#: src/winmenu.c:72 +msgid "Unshade" +msgstr "Srotola" -#: src/key.c:452 -msgid "neither key nor keycode specified for Key" -msgstr "Tasto o keycode non specificati per Key" +#: src/winmenu.c:112 +msgid "Unstick" +msgstr "Sgancia" -#: src/key.c:467 +#: src/winmenu.c:148 +msgid "[Above]" +msgstr "[Sopra]" + +#: src/winmenu.c:158 +msgid "[Below]" +msgstr "[Sotto]" + +#: src/winmenu.c:153 +msgid "[Normal]" +msgstr "[Normale]" + +#: src/action.c:211 #, fuzzy, c-format -msgid "key binding: root menu \"%s\" not defined" -msgstr "Combinazione di tasti: root menu %d non definito" +msgid "action: root menu \"%s\" not defined" +msgstr "Tray button: root menu %d non definito" -#: src/lex.c:201 +#: src/background.c:294 #, c-format -msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" -msgstr "" -"%s[%u]: tag di chiusura \"%s\" non corrisponde al tag di apertura \"%s\"" +msgid "background image not found: \"%s\"" +msgstr "Immagine di sfondo non trovata: \"%s\"" -#: src/lex.c:207 -#, c-format -msgid "%s[%u]: unexpected and invalid close tag" -msgstr "%s[%u]: tag di chiusura inatteso e non valido" +#: src/swallow.c:85 +msgid "cannot swallow a client with no name" +msgstr "Impossibile includere un client senza nome" -#: src/lex.c:213 -#, c-format -msgid "%s[%u]: close tag \"%s\" without open tag" -msgstr "%s[%u]: tag di chiusura \"%s\" senza tag di apertura" +#: src/parse.c:2052 +msgid "configuration error" +msgstr "Errore di configurazione" -#: src/lex.c:216 -#, c-format -msgid "%s[%u]: invalid close tag" -msgstr "%s[%u]: tag di chiusura non valido" +#: src/dock.c:232 +msgid "could not acquire system tray selection" +msgstr "Impossibile acquisire la selezione del vassoio di sistema" -#: src/lex.c:234 +#: src/image.c:241 #, c-format -msgid "%s[%u]: invalid open tag" -msgstr "%s[%u]: tag di apertura non valido" +msgid "could not create info struct for PNG image: %s" +msgstr "Impossibile creare struttura di info per immagine PNG: %s" -#: src/lex.c:250 +#: src/image.c:220 #, c-format -msgid "%s[%u]: invalid tag" -msgstr "%s[%u]: tag non valido" +msgid "could not create read struct for PNG image: %s" +msgstr "Impossibile creare struttura di read per immagine PNG: %s" -#: src/lex.c:308 +#: src/font.c:109 src/font.c:126 #, c-format -msgid "%s[%u]: unexpected text: \"%s\"" -msgstr "%s[%u]: testo non atteso: \"%s\"" +msgid "could not load font: %s" +msgstr "Impossibile caricare font: %s" -#: src/lex.c:367 +#: src/font.c:116 src/font.c:133 #, c-format -msgid "%s[%d]: invalid entity: \"%.8s\"" -msgstr "%s[%d]: entità non valida: \"%.8s\"" +msgid "could not load the default font: %s" +msgstr "Impossibile caricare il font predefinito: %s" -#: src/lex.c:473 src/parse.c:1893 -msgid "out of memory" -msgstr "Memoria esaurita" +#: src/traybutton.c:89 +#, c-format +msgid "could not load tray icon: \"%s\"" +msgstr "Impossibile caricare icona del vassoio: \"%s" #: src/parse.c:228 #, fuzzy, c-format msgid "could not open %s or %s" msgstr "Impossibile aprire %s o %s" -#: src/parse.c:246 -#, c-format -msgid "include depth (%d) exceeded" -msgstr "livello di inclusione (%d) superato" +#: src/parse.c:971 +#, fuzzy, c-format +msgid "could not open included file: %s" +msgstr "Impossibile aprire il file incluso: %s" -#: src/parse.c:384 +#: src/parse.c:967 #, fuzzy, c-format -msgid "invalid start tag: %s" -msgstr "Tag iniziale non valido: %s" +msgid "could not process include: %s" +msgstr "Impossibile elaborare l'include: %s" -#: src/parse.c:774 +#: src/parse.c:1880 #, fuzzy, c-format -msgid "invalid include: %s" -msgstr "Inclusione non valida: %s" +msgid "could not read file: %s" +msgstr "Impossibile leggere il file: %s" -#: src/parse.c:824 -#, fuzzy -msgid "no action specified for Key" -msgstr "Tasto o keycode non specificati per Key" +#: src/error.c:77 +msgid "display is already managed" +msgstr "lo schermo è già gestito" -#: src/parse.c:847 -#, fuzzy, c-format -msgid "invalid Key action: \"%s\"" -msgstr "Azione del tasto non valida: \"%s\"" +#: src/desktop.c:336 +msgid "empty Desktops Name tag" +msgstr "Etichetta Nome dei desktop vuota" -#: src/parse.c:871 -#, fuzzy, c-format -msgid "invalid text alignment: \"%s\"" -msgstr "Allineamento del testo non valido: \"%s\"" +#: src/font.c:315 +msgid "empty Font tag" +msgstr "Etichetta Font vuota" -#: src/parse.c:957 -msgid "no include file specified" -msgstr "file da includere non specificato" +#: src/image.c:233 +#, c-format +msgid "error reading PNG image: %s" +msgstr "Errore durante la lettura dell'immagine PNG: %s" -#: src/parse.c:967 -#, fuzzy, c-format -msgid "could not process include: %s" -msgstr "Impossibile elaborare l'include: %s" +#: src/command.c:138 src/main.c:221 +#, c-format +msgid "exec failed: (%s) %s" +msgstr "Esecuzione fallita: (%s) %s" -#: src/parse.c:971 -#, fuzzy, c-format -msgid "could not open included file: %s" -msgstr "Impossibile aprire il file incluso: %s" +#: src/parse.c:246 +#, c-format +msgid "include depth (%d) exceeded" +msgstr "livello di inclusione (%d) superato" -#: src/parse.c:1611 +#: src/parse.c:1836 #, fuzzy, c-format -msgid "invalid value for 'enabled': \"%s\"" -msgstr "Valore non valido per 'abilitato': \"%s\"" +msgid "invalid %s: \"%s\"" +msgstr "%s non valido: \"%s\"" #: src/parse.c:1752 #, fuzzy, c-format msgid "invalid Group Option: %s" msgstr "Opzione di gruppo non valida: %s" +#: src/parse.c:847 +#, fuzzy, c-format +msgid "invalid Key action: \"%s\"" +msgstr "Azione del tasto non valida: \"%s\"" + +#: src/action.c:44 +#, fuzzy, c-format +msgid "invalid action: \"%s\"" +msgstr "Azione non valida: \"%s\"" + +#: src/background.c:149 +#, c-format +msgid "invalid background type: \"%s\"" +msgstr "Formato di sfondo non valido: \"%s\"" + #: src/parse.c:1767 #, fuzzy, c-format msgid "invalid decorations: %s" msgstr "Decorazioni non valide: \"%s\"" -#: src/parse.c:1829 +#: src/group.c:115 +msgid "invalid group class" +msgstr "Classe di gruppo non valida" + +#: src/group.c:287 #, c-format -msgid "%s is empty" -msgstr "%s è vuoto" +msgid "invalid group desktop: %d" +msgstr "Desktop del gruppo non valido: %d" -#: src/parse.c:1836 -#, fuzzy, c-format -msgid "invalid %s: \"%s\"" -msgstr "%s non valido: \"%s\"" +#: src/group.c:126 +msgid "invalid group name" +msgstr "Nome di gruppo non valido" -#: src/parse.c:1854 +#: src/taskbar.c:975 #, fuzzy, c-format -msgid "invalid value for %s: \"%s\"" -msgstr "Valore non valido per %s: \"%s\"" +msgid "invalid height for TaskList: %s" +msgstr "Altezza della TaskList non valida: %s" -#: src/parse.c:1880 +#: src/parse.c:774 #, fuzzy, c-format -msgid "could not read file: %s" -msgstr "Impossibile leggere il file: %s" - -#: src/parse.c:1967 src/parse.c:1984 -#, fuzzy -msgid "no value specified" -msgstr "Nessun valore specificato" - -#: src/parse.c:1972 -#, c-format -msgid "invalid setting: %s" -msgstr "Impostazione non valida: %s" +msgid "invalid include: %s" +msgstr "Inclusione non valida: %s" -#: src/parse.c:1989 +#: src/key.c:371 #, c-format -msgid "invalid opacity: %s" -msgstr "Opacità non valida: %s" +msgid "invalid key symbol: \"%s\"" +msgstr "Key symbol non valido: \"%s\"" #: src/parse.c:2010 #, c-format msgid "invalid layer: %s" msgstr "Layer non valido: %s" -#: src/parse.c:2031 +#: src/taskbar.c:961 #, c-format -msgid "invalid tag in %s: %s" -msgstr "Tag non valido in %s: %s" +msgid "invalid maxwidth for TaskList: %s" +msgstr "Larghezza massima della TaskList non valida: %s" -#: src/parse.c:2052 -msgid "configuration error" -msgstr "Errore di configurazione" +#: src/key.c:356 +#, c-format +msgid "invalid modifier: \"%c\"" +msgstr "Modificatore non valido: \"%c\"" + +#: src/parse.c:1989 +#, c-format +msgid "invalid opacity: %s" +msgstr "Opacità non valida: %s" #: src/root.c:131 #, c-format msgid "invalid root menu specified: \"%c\"" msgstr "Root menu specificato non valido: \"%c\"" -#: src/root.c:223 -msgid "Exit JWM" -msgstr "Termina JWM" - -#: src/root.c:224 -msgid "Are you sure?" -msgstr "Sei sicuro?" - -#: src/swallow.c:85 -msgid "cannot swallow a client with no name" -msgstr "Impossibile includere un client senza nome" - -#: src/taskbar.c:444 src/winmenu.c:48 -msgid "Close" -msgstr "Chiudi" - -#: src/taskbar.c:451 src/winmenu.c:66 -msgid "Minimize" -msgstr "Riduci" - -#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 -#: src/winmenu.c:106 -msgid "Restore" -msgstr "Ripristina" - -#: src/taskbar.c:465 src/winmenu.c:179 -msgid "Send To" -msgstr "Manda A" - -#: src/taskbar.c:961 +#: src/parse.c:1972 #, c-format -msgid "invalid maxwidth for TaskList: %s" -msgstr "Larghezza massima della TaskList non valida: %s" +msgid "invalid setting: %s" +msgstr "Impostazione non valida: %s" -#: src/taskbar.c:975 +#: src/parse.c:384 #, fuzzy, c-format -msgid "invalid height for TaskList: %s" -msgstr "Altezza della TaskList non valida: %s" +msgid "invalid start tag: %s" +msgstr "Tag iniziale non valido: %s" -#: src/tray.c:1064 +#: src/parse.c:2031 #, c-format -msgid "invalid tray layout: \"%s\"" -msgstr "Disposizione del vassoio non valida: \"%s\"" +msgid "invalid tag in %s: %s" +msgstr "Tag non valido in %s: %s" + +#: src/parse.c:871 +#, fuzzy, c-format +msgid "invalid text alignment: \"%s\"" +msgstr "Allineamento del testo non valido: \"%s\"" #: src/tray.c:1102 #, c-format msgid "invalid tray horizontal alignment: \"%s\"" msgstr "Allineamento orizzontale del vassoio non valido: \"%s\"" +#: src/tray.c:1064 +#, c-format +msgid "invalid tray layout: \"%s\"" +msgstr "Disposizione del vassoio non valida: \"%s\"" + #: src/tray.c:1125 #, c-format msgid "invalid tray vertical alignment: \"%s\"" msgstr "Allineamento verticale del vassoio non valido: \"%s\"" -#: src/traybutton.c:89 -#, c-format -msgid "could not load tray icon: \"%s\"" -msgstr "Impossibile caricare icona del vassoio: \"%s" - -#: src/traybutton.c:130 -msgid "no icon or label for TrayButton" -msgstr "Nessuna icona o etichetta per il TrayButton" - -#: src/winmenu.c:49 -msgid "Kill" -msgstr "Termina" - -#: src/winmenu.c:57 -msgid "Resize" -msgstr "Ridimensiona" - -#: src/winmenu.c:60 -msgid "Move" -msgstr "Sposta" - -#: src/winmenu.c:72 -msgid "Unshade" -msgstr "Srotola" - -#: src/winmenu.c:74 -msgid "Shade" -msgstr "Arrotola" - -#: src/winmenu.c:81 -msgid "Maximize-y" -msgstr "Ingrandisci-y" - -#: src/winmenu.c:86 -msgid "Maximize-x" -msgstr "Ingrandisci-x" +#: src/parse.c:1854 +#, fuzzy, c-format +msgid "invalid value for %s: \"%s\"" +msgstr "Valore non valido per %s: \"%s\"" -#: src/winmenu.c:90 -msgid "Maximize" -msgstr "Ingrandisci" +#: src/parse.c:1611 +#, fuzzy, c-format +msgid "invalid value for 'enabled': \"%s\"" +msgstr "Valore non valido per 'abilitato': \"%s\"" -#: src/winmenu.c:112 -msgid "Unstick" -msgstr "Sgancia" +#: src/key.c:467 +#, fuzzy, c-format +msgid "key binding: root menu \"%s\" not defined" +msgstr "Combinazione di tasti: root menu %d non definito" -#: src/winmenu.c:114 -msgid "Stick" -msgstr "Aggancia" +#: src/key.c:326 +#, c-format +msgid "modifier not found for keysym 0x%0x" +msgstr "Modificatore non trovato per il KeySym 0x%0x" -#: src/winmenu.c:139 -msgid "Layer" -msgstr "Layer" +#: src/key.c:452 +msgid "neither key nor keycode specified for Key" +msgstr "Tasto o keycode non specificati per Key" -#: src/winmenu.c:148 -msgid "[Above]" -msgstr "[Sopra]" +#: src/parse.c:824 +#, fuzzy +msgid "no action specified for Key" +msgstr "Tasto o keycode non specificati per Key" -#: src/winmenu.c:150 -msgid "Above" -msgstr "Sopra" +#: src/traybutton.c:130 +msgid "no icon or label for TrayButton" +msgstr "Nessuna icona o etichetta per il TrayButton" -#: src/winmenu.c:153 -msgid "[Normal]" -msgstr "[Normale]" +#: src/parse.c:957 +msgid "no include file specified" +msgstr "file da includere non specificato" -#: src/winmenu.c:155 -msgid "Normal" -msgstr "Normale" +#: src/parse.c:1967 src/parse.c:1984 +#, fuzzy +msgid "no value specified" +msgstr "Nessun valore specificato" -#: src/winmenu.c:158 -msgid "[Below]" -msgstr "[Sotto]" +#: src/background.c:137 +msgid "no value specified for background" +msgstr "Nessun valore specificato per lo sfondo" -#: src/winmenu.c:160 -msgid "Below" -msgstr "Sotto" +#: src/dock.c:151 +msgid "only one Dock allowed" +msgstr "Permesso un solo Dock" -#~ msgid "invalid tray width: %d" -#~ msgstr "Larghezza del vassoio non valida: %d" +#: src/lex.c:473 src/parse.c:1893 +msgid "out of memory" +msgstr "Memoria esaurita" -#~ msgid "invalid tray height: %d" -#~ msgstr "Altezza del vassoio non valida: %d" +#~ msgid "cannot swallow the same client multiple times" +#~ msgstr "Impossibile includere più volte lo stesso client" #~ msgid "invalid insert mode: \"%s\"" #~ msgstr "Modo di inserimento non valido: \"%s\"" @@ -468,5 +465,8 @@ msgstr "Sotto" #~ msgid "invalid status window type: %s" #~ msgstr "Tipo di status della finestra non valido: %s" -#~ msgid "cannot swallow the same client multiple times" -#~ msgstr "Impossibile includere più volte lo stesso client" +#~ msgid "invalid tray height: %d" +#~ msgstr "Altezza del vassoio non valida: %d" + +#~ msgid "invalid tray width: %d" +#~ msgstr "Larghezza del vassoio non valida: %d" diff --git a/po/lt.po b/po/lt.po index d5c19bb8..85223ddd 100644 --- a/po/lt.po +++ b/po/lt.po @@ -7,77 +7,90 @@ msgid "" msgstr "" "Project-Id-Version: jwm 2.3.7\n" "Report-Msgid-Bugs-To: joewing@joewing.net\n" -"POT-Creation-Date: 2017-07-20 15:41-0400\n" +"POT-Creation-Date: 2017-07-12 21:06-0500\n" "PO-Revision-Date: 2017-07-21 05:18-0400\n" +"Last-Translator: Moo\n" "Language-Team: \n" +"Language: lt\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Poedit 1.8.11\n" -"Last-Translator: Moo\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -"Language: lt\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n" +"%100<10 || n%100>=20) ? 1 : 2);\n" -#: src/action.c:44 +#: src/parse.c:1829 #, c-format -msgid "invalid action: \"%s\"" -msgstr "neteisingas veiksmas: \"%s\"" +msgid "%s is empty" +msgstr "%s yra tuščias" -#: src/action.c:211 +#: src/lex.c:367 #, c-format -msgid "action: root menu \"%s\" not defined" -msgstr "veiksmas: nėra apibrėžtas šaknies meniu \"%s\"" +msgid "%s[%d]: invalid entity: \"%.8s\"" +msgstr "%s[%d]: neteisingas objektas: \"%.8s\"" -#: src/background.c:137 -msgid "no value specified for background" -msgstr "fonui nenurodyta jokia reikšmė" +#: src/lex.c:201 +#, c-format +msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgstr "%s[%u]: pabaigos žymė \"%s\" neatitinka pradžios žymę \"%s\"" -#: src/background.c:149 +#: src/lex.c:213 #, c-format -msgid "invalid background type: \"%s\"" -msgstr "neteisingas fono tipas: \"%s\"" +msgid "%s[%u]: close tag \"%s\" without open tag" +msgstr "%s[%u]: pabaigos žymė \"%s\" be pradžios žymės" -#: src/background.c:294 +#: src/lex.c:216 #, c-format -msgid "background image not found: \"%s\"" -msgstr "nerastas fono paveikslas: \"%s\"" +msgid "%s[%u]: invalid close tag" +msgstr "%s[%u]: neteisinga pabaigos žymė" -#: src/client.c:905 -msgid "Kill this window?" -msgstr "Nutraukti šio lango darbą?" +#: src/lex.c:234 +#, c-format +msgid "%s[%u]: invalid open tag" +msgstr "%s[%u]: neteisinga pradžios žymė" -#: src/client.c:906 -msgid "This may cause data to be lost!" -msgstr "Tai gali sukelti duomenų praradimą!" +#: src/lex.c:250 +#, c-format +msgid "%s[%u]: invalid tag" +msgstr "%s[%u]: neteisinga žymė" -#: src/command.c:138 src/main.c:221 +#: src/lex.c:207 #, c-format -msgid "exec failed: (%s) %s" -msgstr "vykdymas nepavyko: (%s) %s" +msgid "%s[%u]: unexpected and invalid close tag" +msgstr "%s[%u]: netikėta ir neteisinga pabaigos žymė" -#: src/confirm.c:69 -msgid "OK" -msgstr "Gerai" +#: src/lex.c:308 +#, c-format +msgid "%s[%u]: unexpected text: \"%s\"" +msgstr "%s[%u]: netikėtas tekstas: \"%s\"" + +#: src/winmenu.c:150 +msgid "Above" +msgstr "Aukščiau" + +#: src/root.c:224 +msgid "Are you sure?" +msgstr "Ar tikrai?" + +#: src/winmenu.c:160 +msgid "Below" +msgstr "Žemiau" #: src/confirm.c:74 msgid "Cancel" msgstr "Atsisakyti" +#: src/taskbar.c:444 src/winmenu.c:48 +msgid "Close" +msgstr "Užverti" + #: src/confirm.c:308 msgid "Confirm" msgstr "Patvirtinti" -#: src/desktop.c:336 -msgid "empty Desktops Name tag" -msgstr "tuščia darbalaukių pavadinimo (Desktops Name) žymė" - -#: src/dock.c:151 -msgid "only one Dock allowed" -msgstr "leidžiamas tik vienas dokas" - -#: src/dock.c:232 -msgid "could not acquire system tray selection" -msgstr "nepavyko gauti pasirinkimo sistemos dėkle" +#: src/root.c:223 +msgid "Exit JWM" +msgstr "Išeiti iš JWM" #: src/error.c:22 #, c-format @@ -89,367 +102,355 @@ msgstr "JWM: klaida: " msgid "JWM: warning: " msgstr "JWM: įspėjimas: " -#: src/error.c:77 -msgid "display is already managed" -msgstr "ekranas jau yra valdomas" +#: src/winmenu.c:49 +msgid "Kill" +msgstr "Nutraukti lango darbą" -#: src/font.c:109 src/font.c:126 -#, c-format -msgid "could not load font: %s" -msgstr "nepavyko įkelti šrifto: %s" +#: src/client.c:905 +msgid "Kill this window?" +msgstr "Nutraukti šio lango darbą?" -#: src/font.c:116 src/font.c:133 -#, c-format -msgid "could not load the default font: %s" -msgstr "nepavyko įkelti numatytojo šrifto: %s" +#: src/winmenu.c:139 +msgid "Layer" +msgstr "Sluoksnis" -#: src/font.c:315 -msgid "empty Font tag" -msgstr "tuščia šrifto (Font) žymė" +#: src/winmenu.c:90 +msgid "Maximize" +msgstr "Išskleisti" -#: src/group.c:115 -msgid "invalid group class" -msgstr "neteisinga grupės klasė" +#: src/winmenu.c:86 +msgid "Maximize-x" +msgstr "Išskleisti per x" -#: src/group.c:126 -msgid "invalid group name" -msgstr "neteisingas grupės pavadinimas" +#: src/winmenu.c:81 +msgid "Maximize-y" +msgstr "Išskleisti per y" -#: src/group.c:287 -#, c-format -msgid "invalid group desktop: %d" -msgstr "neteisingas grupės darbalaukis: %d" +#: src/taskbar.c:451 src/winmenu.c:66 +msgid "Minimize" +msgstr "Suskleisti" -#: src/image.c:220 -#, c-format -msgid "could not create read struct for PNG image: %s" -msgstr "nepavyko perskaityti PNG paveikslo struktūros: %s" +#: src/winmenu.c:60 +msgid "Move" +msgstr "Perkelti" -#: src/image.c:233 -#, c-format -msgid "error reading PNG image: %s" -msgstr "klaida skaitant PNG paveikslą: %s" +#: src/winmenu.c:155 +msgid "Normal" +msgstr "Normalus" -#: src/image.c:241 -#, c-format -msgid "could not create info struct for PNG image: %s" -msgstr "nepavyko sukurti PNG paveikslo informacijos struktūros: %s" +#: src/confirm.c:69 +msgid "OK" +msgstr "Gerai" + +#: src/winmenu.c:57 +msgid "Resize" +msgstr "Keisti dydį" + +#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 +#: src/winmenu.c:106 +msgid "Restore" +msgstr "Atkurti" + +#: src/taskbar.c:465 src/winmenu.c:179 +msgid "Send To" +msgstr "Siųsti į" + +#: src/winmenu.c:74 +msgid "Shade" +msgstr "Pridengti" #: src/key.c:318 msgid "Specified KeySym is not defined for any KeyCode" msgstr "Nurodytas KeySym nėra apibrėžtas jokiam KeyCode" -#: src/key.c:326 -#, c-format -msgid "modifier not found for keysym 0x%0x" -msgstr "nerastas modifikatorius, skirtas keysym 0x%0x" +#: src/winmenu.c:114 +msgid "Stick" +msgstr "Priklijuoti" -#: src/key.c:356 -#, c-format -msgid "invalid modifier: \"%c\"" -msgstr "neteisingas modifikatorius: \"%c\"" +#: src/client.c:906 +msgid "This may cause data to be lost!" +msgstr "Tai gali sukelti duomenų praradimą!" -#: src/key.c:371 -#, c-format -msgid "invalid key symbol: \"%s\"" -msgstr "neteisingas klavišo simbolis: \"%s\"" +#: src/winmenu.c:72 +msgid "Unshade" +msgstr "Atidengti" -#: src/key.c:452 -msgid "neither key nor keycode specified for Key" -msgstr "Klavišui (Key) nėra nurodytas nei klavišas, nei klavišo kodas" +#: src/winmenu.c:112 +msgid "Unstick" +msgstr "Atklijuoti" -#: src/key.c:467 -#, c-format -msgid "key binding: root menu \"%s\" not defined" -msgstr "Klavišų susiejimas: nėra apibrėžtas šaknies meniu \"%s\"" +#: src/winmenu.c:148 +msgid "[Above]" +msgstr "[Aukščiau]" -#: src/lex.c:201 -#, c-format -msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" -msgstr "%s[%u]: pabaigos žymė \"%s\" neatitinka pradžios žymę \"%s\"" +#: src/winmenu.c:158 +msgid "[Below]" +msgstr "[Žemiau]" -#: src/lex.c:207 -#, c-format -msgid "%s[%u]: unexpected and invalid close tag" -msgstr "%s[%u]: netikėta ir neteisinga pabaigos žymė" +#: src/winmenu.c:153 +msgid "[Normal]" +msgstr "[Normalus]" -#: src/lex.c:213 +#: src/action.c:211 #, c-format -msgid "%s[%u]: close tag \"%s\" without open tag" -msgstr "%s[%u]: pabaigos žymė \"%s\" be pradžios žymės" +msgid "action: root menu \"%s\" not defined" +msgstr "veiksmas: nėra apibrėžtas šaknies meniu \"%s\"" -#: src/lex.c:216 +#: src/background.c:294 #, c-format -msgid "%s[%u]: invalid close tag" -msgstr "%s[%u]: neteisinga pabaigos žymė" +msgid "background image not found: \"%s\"" +msgstr "nerastas fono paveikslas: \"%s\"" -#: src/lex.c:234 +#: src/swallow.c:85 +msgid "cannot swallow a client with no name" +msgstr "nepavyksta į dėklą praryti klientą be pavadinimo" + +#: src/parse.c:2052 +msgid "configuration error" +msgstr "konfigūracijos klaida" + +#: src/dock.c:232 +msgid "could not acquire system tray selection" +msgstr "nepavyko gauti pasirinkimo sistemos dėkle" + +#: src/image.c:241 #, c-format -msgid "%s[%u]: invalid open tag" -msgstr "%s[%u]: neteisinga pradžios žymė" +msgid "could not create info struct for PNG image: %s" +msgstr "nepavyko sukurti PNG paveikslo informacijos struktūros: %s" -#: src/lex.c:250 +#: src/image.c:220 #, c-format -msgid "%s[%u]: invalid tag" -msgstr "%s[%u]: neteisinga žymė" +msgid "could not create read struct for PNG image: %s" +msgstr "nepavyko perskaityti PNG paveikslo struktūros: %s" -#: src/lex.c:308 +#: src/font.c:109 src/font.c:126 #, c-format -msgid "%s[%u]: unexpected text: \"%s\"" -msgstr "%s[%u]: netikėtas tekstas: \"%s\"" +msgid "could not load font: %s" +msgstr "nepavyko įkelti šrifto: %s" -#: src/lex.c:367 +#: src/font.c:116 src/font.c:133 #, c-format -msgid "%s[%d]: invalid entity: \"%.8s\"" -msgstr "%s[%d]: neteisingas objektas: \"%.8s\"" +msgid "could not load the default font: %s" +msgstr "nepavyko įkelti numatytojo šrifto: %s" -#: src/lex.c:473 src/parse.c:1893 -msgid "out of memory" -msgstr "trūksta atminties" +#: src/traybutton.c:89 +#, c-format +msgid "could not load tray icon: \"%s\"" +msgstr "nepavyko įkelti dėklo piktogramos: \"%s\"" #: src/parse.c:228 #, c-format msgid "could not open %s or %s" msgstr "nepavyko atverti %s ar %s" -#: src/parse.c:246 +#: src/parse.c:971 #, c-format -msgid "include depth (%d) exceeded" -msgstr "viršytas įtraukimo gylis (%d)" +msgid "could not open included file: %s" +msgstr "nepavyko atverti įtraukto failo: %s" -#: src/parse.c:384 +#: src/parse.c:967 #, c-format -msgid "invalid start tag: %s" -msgstr "neteisinga pradžios žymė: %s" +msgid "could not process include: %s" +msgstr "nepavyko apdoroti įtraukimo: %s" -#: src/parse.c:774 +#: src/parse.c:1880 #, c-format -msgid "invalid include: %s" -msgstr "neteisingas įtraukimas: %s" - -#: src/parse.c:824 -msgid "no action specified for Key" -msgstr "Klavišui (Key) nėra nurodytas joks veiksmas" +msgid "could not read file: %s" +msgstr "nepavyko perskaityti failo: %s" -#: src/parse.c:847 -#, c-format -msgid "invalid Key action: \"%s\"" -msgstr "neteisingas klavišo (Key) veiksmas: \"%s\"" +#: src/error.c:77 +msgid "display is already managed" +msgstr "ekranas jau yra valdomas" -#: src/parse.c:871 -#, c-format -msgid "invalid text alignment: \"%s\"" -msgstr "neteisingas teksto lygiavimas: \"%s\"" +#: src/desktop.c:336 +msgid "empty Desktops Name tag" +msgstr "tuščia darbalaukių pavadinimo (Desktops Name) žymė" -#: src/parse.c:957 -msgid "no include file specified" -msgstr "nenurodytas joks įtraukimo failas" +#: src/font.c:315 +msgid "empty Font tag" +msgstr "tuščia šrifto (Font) žymė" -#: src/parse.c:967 +#: src/image.c:233 #, c-format -msgid "could not process include: %s" -msgstr "nepavyko apdoroti įtraukimo: %s" +msgid "error reading PNG image: %s" +msgstr "klaida skaitant PNG paveikslą: %s" -#: src/parse.c:971 +#: src/command.c:138 src/main.c:221 #, c-format -msgid "could not open included file: %s" -msgstr "nepavyko atverti įtraukto failo: %s" +msgid "exec failed: (%s) %s" +msgstr "vykdymas nepavyko: (%s) %s" -#: src/parse.c:1611 +#: src/parse.c:246 #, c-format -msgid "invalid value for 'enabled': \"%s\"" -msgstr "neteisinga \"enabled\" reikšmė: \"%s\"" +msgid "include depth (%d) exceeded" +msgstr "viršytas įtraukimo gylis (%d)" + +#: src/parse.c:1836 +#, c-format +msgid "invalid %s: \"%s\"" +msgstr "neteisingas %s: \"%s\"" #: src/parse.c:1752 #, c-format msgid "invalid Group Option: %s" msgstr "neteisingas grupės parametras: %s" -#: src/parse.c:1767 +#: src/parse.c:847 #, c-format -msgid "invalid decorations: %s" -msgstr "neteisingas dekoravimas: %s" +msgid "invalid Key action: \"%s\"" +msgstr "neteisingas klavišo (Key) veiksmas: \"%s\"" -#: src/parse.c:1829 +#: src/action.c:44 #, c-format -msgid "%s is empty" -msgstr "%s yra tuščias" +msgid "invalid action: \"%s\"" +msgstr "neteisingas veiksmas: \"%s\"" -#: src/parse.c:1836 +#: src/background.c:149 #, c-format -msgid "invalid %s: \"%s\"" -msgstr "neteisingas %s: \"%s\"" +msgid "invalid background type: \"%s\"" +msgstr "neteisingas fono tipas: \"%s\"" -#: src/parse.c:1854 +#: src/parse.c:1767 #, c-format -msgid "invalid value for %s: \"%s\"" -msgstr "neteisinga %s reikšmė: \"%s\"" +msgid "invalid decorations: %s" +msgstr "neteisingas dekoravimas: %s" -#: src/parse.c:1880 +#: src/group.c:115 +msgid "invalid group class" +msgstr "neteisinga grupės klasė" + +#: src/group.c:287 #, c-format -msgid "could not read file: %s" -msgstr "nepavyko perskaityti failo: %s" +msgid "invalid group desktop: %d" +msgstr "neteisingas grupės darbalaukis: %d" -#: src/parse.c:1967 src/parse.c:1984 -msgid "no value specified" -msgstr "nenurodyta reikšmė" +#: src/group.c:126 +msgid "invalid group name" +msgstr "neteisingas grupės pavadinimas" -#: src/parse.c:1972 +#: src/taskbar.c:975 #, c-format -msgid "invalid setting: %s" -msgstr "neteisingas nustatymas: %s" +msgid "invalid height for TaskList: %s" +msgstr "neteisingas užduočių juostos (TaskList) aukštis: %s" -#: src/parse.c:1989 +#: src/parse.c:774 #, c-format -msgid "invalid opacity: %s" -msgstr "neteisingas nepermatomumas: %s" +msgid "invalid include: %s" +msgstr "neteisingas įtraukimas: %s" + +#: src/key.c:371 +#, c-format +msgid "invalid key symbol: \"%s\"" +msgstr "neteisingas klavišo simbolis: \"%s\"" #: src/parse.c:2010 #, c-format msgid "invalid layer: %s" msgstr "neteisingas sluoksnis: %s" -#: src/parse.c:2031 +#: src/taskbar.c:961 #, c-format -msgid "invalid tag in %s: %s" -msgstr "neteisinga žymė, esanti %s: %s" +msgid "invalid maxwidth for TaskList: %s" +msgstr "neteisingas didžiausias užduočių juostos (TaskList) plotis: %s" -#: src/parse.c:2052 -msgid "configuration error" -msgstr "konfigūracijos klaida" +#: src/key.c:356 +#, c-format +msgid "invalid modifier: \"%c\"" +msgstr "neteisingas modifikatorius: \"%c\"" + +#: src/parse.c:1989 +#, c-format +msgid "invalid opacity: %s" +msgstr "neteisingas nepermatomumas: %s" #: src/root.c:131 #, c-format msgid "invalid root menu specified: \"%c\"" msgstr "nurodytas neteisingas šaknies meniu: \"%c\"" -#: src/root.c:223 -msgid "Exit JWM" -msgstr "Išeiti iš JWM" - -#: src/root.c:224 -msgid "Are you sure?" -msgstr "Ar tikrai?" - -#: src/swallow.c:85 -msgid "cannot swallow a client with no name" -msgstr "nepavyksta į dėklą praryti klientą be pavadinimo" - -#: src/taskbar.c:444 src/winmenu.c:48 -msgid "Close" -msgstr "Užverti" - -#: src/taskbar.c:451 src/winmenu.c:66 -msgid "Minimize" -msgstr "Suskleisti" - -#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 -#: src/winmenu.c:106 -msgid "Restore" -msgstr "Atkurti" - -#: src/taskbar.c:465 src/winmenu.c:179 -msgid "Send To" -msgstr "Siųsti į" +#: src/parse.c:1972 +#, c-format +msgid "invalid setting: %s" +msgstr "neteisingas nustatymas: %s" -#: src/taskbar.c:961 +#: src/parse.c:384 #, c-format -msgid "invalid maxwidth for TaskList: %s" -msgstr "neteisingas didžiausias užduočių juostos (TaskList) plotis: %s" +msgid "invalid start tag: %s" +msgstr "neteisinga pradžios žymė: %s" -#: src/taskbar.c:975 +#: src/parse.c:2031 #, c-format -msgid "invalid height for TaskList: %s" -msgstr "neteisingas užduočių juostos (TaskList) aukštis: %s" +msgid "invalid tag in %s: %s" +msgstr "neteisinga žymė, esanti %s: %s" -#: src/tray.c:1064 +#: src/parse.c:871 #, c-format -msgid "invalid tray layout: \"%s\"" -msgstr "neteisingas dėklo lygiavimas: \"%s\"" +msgid "invalid text alignment: \"%s\"" +msgstr "neteisingas teksto lygiavimas: \"%s\"" #: src/tray.c:1102 #, c-format msgid "invalid tray horizontal alignment: \"%s\"" msgstr "neteisingas horizontalusis dėklo lygiavimas: \"%s\"" +#: src/tray.c:1064 +#, c-format +msgid "invalid tray layout: \"%s\"" +msgstr "neteisingas dėklo lygiavimas: \"%s\"" + #: src/tray.c:1125 #, c-format msgid "invalid tray vertical alignment: \"%s\"" msgstr "neteisingas vertikalusis dėklo lygiavimas: \"%s\"" -#: src/traybutton.c:89 +#: src/parse.c:1854 #, c-format -msgid "could not load tray icon: \"%s\"" -msgstr "nepavyko įkelti dėklo piktogramos: \"%s\"" - -#: src/traybutton.c:130 -msgid "no icon or label for TrayButton" -msgstr "nėra jokios dėklo mygtuko (TrayButton) piktogramos ar etiketės" - -#: src/winmenu.c:49 -msgid "Kill" -msgstr "Nutraukti lango darbą" - -#: src/winmenu.c:57 -msgid "Resize" -msgstr "Keisti dydį" - -#: src/winmenu.c:60 -msgid "Move" -msgstr "Perkelti" - -#: src/winmenu.c:72 -msgid "Unshade" -msgstr "Atidengti" - -#: src/winmenu.c:74 -msgid "Shade" -msgstr "Pridengti" - -#: src/winmenu.c:81 -msgid "Maximize-y" -msgstr "Išskleisti per y" +msgid "invalid value for %s: \"%s\"" +msgstr "neteisinga %s reikšmė: \"%s\"" -#: src/winmenu.c:86 -msgid "Maximize-x" -msgstr "Išskleisti per x" +#: src/parse.c:1611 +#, c-format +msgid "invalid value for 'enabled': \"%s\"" +msgstr "neteisinga \"enabled\" reikšmė: \"%s\"" -#: src/winmenu.c:90 -msgid "Maximize" -msgstr "Išskleisti" +#: src/key.c:467 +#, c-format +msgid "key binding: root menu \"%s\" not defined" +msgstr "Klavišų susiejimas: nėra apibrėžtas šaknies meniu \"%s\"" -#: src/winmenu.c:112 -msgid "Unstick" -msgstr "Atklijuoti" +#: src/key.c:326 +#, c-format +msgid "modifier not found for keysym 0x%0x" +msgstr "nerastas modifikatorius, skirtas keysym 0x%0x" -#: src/winmenu.c:114 -msgid "Stick" -msgstr "Priklijuoti" +#: src/key.c:452 +msgid "neither key nor keycode specified for Key" +msgstr "Klavišui (Key) nėra nurodytas nei klavišas, nei klavišo kodas" -#: src/winmenu.c:139 -msgid "Layer" -msgstr "Sluoksnis" +#: src/parse.c:824 +msgid "no action specified for Key" +msgstr "Klavišui (Key) nėra nurodytas joks veiksmas" -#: src/winmenu.c:148 -msgid "[Above]" -msgstr "[Aukščiau]" +#: src/traybutton.c:130 +msgid "no icon or label for TrayButton" +msgstr "nėra jokios dėklo mygtuko (TrayButton) piktogramos ar etiketės" -#: src/winmenu.c:150 -msgid "Above" -msgstr "Aukščiau" +#: src/parse.c:957 +msgid "no include file specified" +msgstr "nenurodytas joks įtraukimo failas" -#: src/winmenu.c:153 -msgid "[Normal]" -msgstr "[Normalus]" +#: src/parse.c:1967 src/parse.c:1984 +msgid "no value specified" +msgstr "nenurodyta reikšmė" -#: src/winmenu.c:155 -msgid "Normal" -msgstr "Normalus" +#: src/background.c:137 +msgid "no value specified for background" +msgstr "fonui nenurodyta jokia reikšmė" -#: src/winmenu.c:158 -msgid "[Below]" -msgstr "[Žemiau]" +#: src/dock.c:151 +msgid "only one Dock allowed" +msgstr "leidžiamas tik vienas dokas" -#: src/winmenu.c:160 -msgid "Below" -msgstr "Žemiau" +#: src/lex.c:473 src/parse.c:1893 +msgid "out of memory" +msgstr "trūksta atminties" diff --git a/po/nl.po b/po/nl.po index e5e9316b..730dc1c8 100644 --- a/po/nl.po +++ b/po/nl.po @@ -12,66 +12,78 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/action.c:44 -#, fuzzy, c-format -msgid "invalid action: \"%s\"" -msgstr "Ongeldige Taakbalk-knop actie: \"%s\"" +#: src/parse.c:1829 +#, c-format +msgid "%s is empty" +msgstr "" -#: src/action.c:211 -#, fuzzy, c-format -msgid "action: root menu \"%s\" not defined" -msgstr "taakbalk-knop: root menu %d niet gedefiniëerd" +#: src/lex.c:367 +#, c-format +msgid "%s[%d]: invalid entity: \"%.8s\"" +msgstr "%s[%d]: ongeldige entiteit: \"%.8s\"" -#: src/background.c:137 -msgid "no value specified for background" -msgstr "Geen warde opgegeven voor achtergrond" +#: src/lex.c:201 +#, c-format +msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgstr "%s[%u]: sluiten-label \"%s\" komt niet overeen met openen-label \"%s\"" -#: src/background.c:149 +#: src/lex.c:213 #, c-format -msgid "invalid background type: \"%s\"" -msgstr "ongeldig achtergrond-type: \"%s\"" +msgid "%s[%u]: close tag \"%s\" without open tag" +msgstr "%s[%u]: sluiten-label \"%s\" zonder openen-label" -#: src/background.c:294 +#: src/lex.c:216 #, c-format -msgid "background image not found: \"%s\"" -msgstr "Achtergrond-afbeelding niet gevonden: \"%s\"" +msgid "%s[%u]: invalid close tag" +msgstr "%s[%u]: ongeldig sluiten-label" -#: src/client.c:905 -msgid "Kill this window?" -msgstr "Sluiten van dit venster forceren?" +#: src/lex.c:234 +#, c-format +msgid "%s[%u]: invalid open tag" +msgstr "%s[%u]: ongeldig openen-label" -#: src/client.c:906 -msgid "This may cause data to be lost!" -msgstr "Dit kan verlies van data veroorzaken!" +#: src/lex.c:250 +#, c-format +msgid "%s[%u]: invalid tag" +msgstr "%s[%u]: ongeldig label" -#: src/command.c:138 src/main.c:221 +#: src/lex.c:207 #, c-format -msgid "exec failed: (%s) %s" -msgstr "uitvoeren mislukt: (%s) %s" +msgid "%s[%u]: unexpected and invalid close tag" +msgstr "%s[%u]: onverwacht en ongeldig sluiten-label " -#: src/confirm.c:69 -msgid "OK" -msgstr "" +#: src/lex.c:308 +#, c-format +msgid "%s[%u]: unexpected text: \"%s\"" +msgstr "%s[%u]: ongeldige entiteit: \"%.8s\"" + +#: src/winmenu.c:150 +msgid "Above" +msgstr "Boven" + +#: src/root.c:224 +msgid "Are you sure?" +msgstr "Weet je het zeker?" + +#: src/winmenu.c:160 +msgid "Below" +msgstr "Onder" #: src/confirm.c:74 msgid "Cancel" msgstr "" +#: src/taskbar.c:444 src/winmenu.c:48 +msgid "Close" +msgstr "Sluiten" + #: src/confirm.c:308 msgid "Confirm" msgstr "" -#: src/desktop.c:336 -msgid "empty Desktops Name tag" -msgstr "leeg Bureaublad-naam label" - -#: src/dock.c:151 -msgid "only one Dock allowed" -msgstr "Slechts één Paneel toegelaten" - -#: src/dock.c:232 -msgid "could not acquire system tray selection" -msgstr "kan de systeem taakbalk keuze niet verkrijgen" +#: src/root.c:223 +msgid "Exit JWM" +msgstr "JWM afsluiten" #: src/error.c:22 #, c-format @@ -83,176 +95,192 @@ msgstr "" msgid "JWM: warning: " msgstr "" -#: src/error.c:77 -msgid "display is already managed" -msgstr "" +#: src/winmenu.c:49 +msgid "Kill" +msgstr "Sluiten forceren" -#: src/font.c:109 src/font.c:126 -#, c-format -msgid "could not load font: %s" -msgstr "kon dit lettertype niet laden: %s" +#: src/client.c:905 +msgid "Kill this window?" +msgstr "Sluiten van dit venster forceren?" -#: src/font.c:116 src/font.c:133 -#, c-format -msgid "could not load the default font: %s" -msgstr "kon standaard lettertype niet laden: %s" +#: src/winmenu.c:139 +msgid "Layer" +msgstr "Laag" -#: src/font.c:315 -msgid "empty Font tag" -msgstr "Leeg lettertype label" +#: src/winmenu.c:90 +msgid "Maximize" +msgstr "Maximaliseren" -#: src/group.c:115 -msgid "invalid group class" -msgstr "ongeldige groepsklasse" +#: src/winmenu.c:86 +msgid "Maximize-x" +msgstr "Maximaliseer-x" -#: src/group.c:126 -msgid "invalid group name" -msgstr "ongeldige groepsnaam" +#: src/winmenu.c:81 +msgid "Maximize-y" +msgstr "Maximaliseer-y" -#: src/group.c:287 -#, c-format -msgid "invalid group desktop: %d" -msgstr "ongeldige groep bureaublad: %d" +#: src/taskbar.c:451 src/winmenu.c:66 +msgid "Minimize" +msgstr "Minimaliseren" -#: src/image.c:220 -#, c-format -msgid "could not create read struct for PNG image: %s" -msgstr "kon geen lees-structuur voor PNG afbeelding aanmaken: %s" +#: src/winmenu.c:60 +msgid "Move" +msgstr "Verplaatsen" -#: src/image.c:233 -#, c-format -msgid "error reading PNG image: %s" -msgstr "fout bij lezen van PNG afbeelding: %s" +#: src/winmenu.c:155 +msgid "Normal" +msgstr "Normaal" -#: src/image.c:241 -#, c-format -msgid "could not create info struct for PNG image: %s" -msgstr "kon geen info-structuur aanmaken voor PNG afbeelding: %s" +#: src/confirm.c:69 +msgid "OK" +msgstr "" + +#: src/winmenu.c:57 +msgid "Resize" +msgstr "Grootte wijzigen" + +#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 +#: src/winmenu.c:106 +msgid "Restore" +msgstr "Herstellen" + +#: src/taskbar.c:465 src/winmenu.c:179 +msgid "Send To" +msgstr "Zend naar" + +#: src/winmenu.c:74 +msgid "Shade" +msgstr "Oprollen" #: src/key.c:318 msgid "Specified KeySym is not defined for any KeyCode" msgstr "Opgegeven Toets-Sym is voor geen enkele ToetsCode bepaald" -#: src/key.c:326 -#, c-format -msgid "modifier not found for keysym 0x%0x" -msgstr "Aanpassing voor toets-sym 0x%0x niet gevonden" +#: src/winmenu.c:114 +msgid "Stick" +msgstr "Vastmaken" -#: src/key.c:356 -#, c-format -msgid "invalid modifier: \"%c\"" -msgstr "ongeldige aanpassing: \"%c\"" +#: src/client.c:906 +msgid "This may cause data to be lost!" +msgstr "Dit kan verlies van data veroorzaken!" -#: src/key.c:371 -#, c-format -msgid "invalid key symbol: \"%s\"" -msgstr "ongeldig toets-symbool: \"%s\"" +#: src/winmenu.c:72 +msgid "Unshade" +msgstr "Uitrollen" -#: src/key.c:452 -msgid "neither key nor keycode specified for Key" -msgstr "Toets en Toetscode niet opgegeven voor Toets" +#: src/winmenu.c:112 +msgid "Unstick" +msgstr "Losmaken" -#: src/key.c:467 +#: src/winmenu.c:148 +msgid "[Above]" +msgstr "[Boven]" + +#: src/winmenu.c:158 +msgid "[Below]" +msgstr "[Onder]" + +#: src/winmenu.c:153 +msgid "[Normal]" +msgstr "[Normaal]" + +#: src/action.c:211 #, fuzzy, c-format -msgid "key binding: root menu \"%s\" not defined" -msgstr "Sneltoets: root menu %d niet gedefiniëerd" +msgid "action: root menu \"%s\" not defined" +msgstr "taakbalk-knop: root menu %d niet gedefiniëerd" -#: src/lex.c:201 +#: src/background.c:294 #, c-format -msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" -msgstr "%s[%u]: sluiten-label \"%s\" komt niet overeen met openen-label \"%s\"" +msgid "background image not found: \"%s\"" +msgstr "Achtergrond-afbeelding niet gevonden: \"%s\"" -#: src/lex.c:207 -#, c-format -msgid "%s[%u]: unexpected and invalid close tag" -msgstr "%s[%u]: onverwacht en ongeldig sluiten-label " +#: src/swallow.c:85 +msgid "cannot swallow a client with no name" +msgstr "" -#: src/lex.c:213 -#, c-format -msgid "%s[%u]: close tag \"%s\" without open tag" -msgstr "%s[%u]: sluiten-label \"%s\" zonder openen-label" +#: src/parse.c:2052 +msgid "configuration error" +msgstr "configuratie-fout" -#: src/lex.c:216 -#, c-format -msgid "%s[%u]: invalid close tag" -msgstr "%s[%u]: ongeldig sluiten-label" +#: src/dock.c:232 +msgid "could not acquire system tray selection" +msgstr "kan de systeem taakbalk keuze niet verkrijgen" -#: src/lex.c:234 +#: src/image.c:241 #, c-format -msgid "%s[%u]: invalid open tag" -msgstr "%s[%u]: ongeldig openen-label" +msgid "could not create info struct for PNG image: %s" +msgstr "kon geen info-structuur aanmaken voor PNG afbeelding: %s" -#: src/lex.c:250 +#: src/image.c:220 #, c-format -msgid "%s[%u]: invalid tag" -msgstr "%s[%u]: ongeldig label" +msgid "could not create read struct for PNG image: %s" +msgstr "kon geen lees-structuur voor PNG afbeelding aanmaken: %s" -#: src/lex.c:308 +#: src/font.c:109 src/font.c:126 #, c-format -msgid "%s[%u]: unexpected text: \"%s\"" -msgstr "%s[%u]: ongeldige entiteit: \"%.8s\"" +msgid "could not load font: %s" +msgstr "kon dit lettertype niet laden: %s" -#: src/lex.c:367 +#: src/font.c:116 src/font.c:133 #, c-format -msgid "%s[%d]: invalid entity: \"%.8s\"" -msgstr "%s[%d]: ongeldige entiteit: \"%.8s\"" +msgid "could not load the default font: %s" +msgstr "kon standaard lettertype niet laden: %s" -#: src/lex.c:473 src/parse.c:1893 -msgid "out of memory" -msgstr "" +#: src/traybutton.c:89 +#, c-format +msgid "could not load tray icon: \"%s\"" +msgstr "kon taakbalk-pictogram niet laden: \"%s\"" #: src/parse.c:228 #, fuzzy, c-format msgid "could not open %s or %s" msgstr "kon dit lettertype niet laden: %s" -#: src/parse.c:246 -#, c-format -msgid "include depth (%d) exceeded" -msgstr "" +#: src/parse.c:971 +#, fuzzy, c-format +msgid "could not open included file: %s" +msgstr "kon dit lettertype niet laden: %s" -#: src/parse.c:384 +#: src/parse.c:967 #, fuzzy, c-format -msgid "invalid start tag: %s" -msgstr "ongeldige instelling: %s" +msgid "could not process include: %s" +msgstr "kon dit lettertype niet laden: %s" -#: src/parse.c:774 +#: src/parse.c:1880 #, fuzzy, c-format -msgid "invalid include: %s" -msgstr "ongeldige laag: %s" +msgid "could not read file: %s" +msgstr "kon dit lettertype niet laden: %s" -#: src/parse.c:824 -#, fuzzy -msgid "no action specified for Key" -msgstr "Toets en Toetscode niet opgegeven voor Toets" +#: src/error.c:77 +msgid "display is already managed" +msgstr "" -#: src/parse.c:847 -#, fuzzy, c-format -msgid "invalid Key action: \"%s\"" -msgstr "Ongeldige Taakbalk-knop actie: \"%s\"" +#: src/desktop.c:336 +msgid "empty Desktops Name tag" +msgstr "leeg Bureaublad-naam label" -#: src/parse.c:871 -#, fuzzy, c-format -msgid "invalid text alignment: \"%s\"" -msgstr "ongeldige verticale taakbalk uitlijning: \"%s\"" +#: src/font.c:315 +msgid "empty Font tag" +msgstr "Leeg lettertype label" -#: src/parse.c:957 -msgid "no include file specified" -msgstr "" +#: src/image.c:233 +#, c-format +msgid "error reading PNG image: %s" +msgstr "fout bij lezen van PNG afbeelding: %s" -#: src/parse.c:967 -#, fuzzy, c-format -msgid "could not process include: %s" -msgstr "kon dit lettertype niet laden: %s" +#: src/command.c:138 src/main.c:221 +#, c-format +msgid "exec failed: (%s) %s" +msgstr "uitvoeren mislukt: (%s) %s" -#: src/parse.c:971 -#, fuzzy, c-format -msgid "could not open included file: %s" -msgstr "kon dit lettertype niet laden: %s" +#: src/parse.c:246 +#, c-format +msgid "include depth (%d) exceeded" +msgstr "" -#: src/parse.c:1611 +#: src/parse.c:1836 #, fuzzy, c-format -msgid "invalid value for 'enabled': \"%s\"" +msgid "invalid %s: \"%s\"" msgstr "Ongeldige Taakbalk-knop actie: \"%s\"" #: src/parse.c:1752 @@ -260,201 +288,170 @@ msgstr "Ongeldige Taakbalk-knop actie: \"%s\"" msgid "invalid Group Option: %s" msgstr "ongeldige groep bureaublad: %d" -#: src/parse.c:1767 +#: src/parse.c:847 #, fuzzy, c-format -msgid "invalid decorations: %s" +msgid "invalid Key action: \"%s\"" msgstr "Ongeldige Taakbalk-knop actie: \"%s\"" -#: src/parse.c:1829 -#, c-format -msgid "%s is empty" -msgstr "" - -#: src/parse.c:1836 +#: src/action.c:44 #, fuzzy, c-format -msgid "invalid %s: \"%s\"" +msgid "invalid action: \"%s\"" msgstr "Ongeldige Taakbalk-knop actie: \"%s\"" -#: src/parse.c:1854 -#, fuzzy, c-format -msgid "invalid value for %s: \"%s\"" -msgstr "ongeldig label in %s: %s" +#: src/background.c:149 +#, c-format +msgid "invalid background type: \"%s\"" +msgstr "ongeldig achtergrond-type: \"%s\"" -#: src/parse.c:1880 +#: src/parse.c:1767 #, fuzzy, c-format -msgid "could not read file: %s" -msgstr "kon dit lettertype niet laden: %s" +msgid "invalid decorations: %s" +msgstr "Ongeldige Taakbalk-knop actie: \"%s\"" -#: src/parse.c:1967 src/parse.c:1984 -#, fuzzy -msgid "no value specified" -msgstr "Geen warde opgegeven voor achtergrond" +#: src/group.c:115 +msgid "invalid group class" +msgstr "ongeldige groepsklasse" -#: src/parse.c:1972 +#: src/group.c:287 #, c-format -msgid "invalid setting: %s" -msgstr "ongeldige instelling: %s" +msgid "invalid group desktop: %d" +msgstr "ongeldige groep bureaublad: %d" -#: src/parse.c:1989 +#: src/group.c:126 +msgid "invalid group name" +msgstr "ongeldige groepsnaam" + +#: src/taskbar.c:975 +#, fuzzy, c-format +msgid "invalid height for TaskList: %s" +msgstr "ongeldige maximum breedte voor Taaklijst: %s" + +#: src/parse.c:774 +#, fuzzy, c-format +msgid "invalid include: %s" +msgstr "ongeldige laag: %s" + +#: src/key.c:371 #, c-format -msgid "invalid opacity: %s" -msgstr "ongeldige transparantie: %s" +msgid "invalid key symbol: \"%s\"" +msgstr "ongeldig toets-symbool: \"%s\"" #: src/parse.c:2010 #, c-format msgid "invalid layer: %s" msgstr "ongeldige laag: %s" -#: src/parse.c:2031 +#: src/taskbar.c:961 #, c-format -msgid "invalid tag in %s: %s" -msgstr "ongeldig label in %s: %s" +msgid "invalid maxwidth for TaskList: %s" +msgstr "ongeldige maximum breedte voor Taaklijst: %s" -#: src/parse.c:2052 -msgid "configuration error" -msgstr "configuratie-fout" +#: src/key.c:356 +#, c-format +msgid "invalid modifier: \"%c\"" +msgstr "ongeldige aanpassing: \"%c\"" + +#: src/parse.c:1989 +#, c-format +msgid "invalid opacity: %s" +msgstr "ongeldige transparantie: %s" #: src/root.c:131 #, c-format msgid "invalid root menu specified: \"%c\"" msgstr "opgegeven root menu ongeldig: \"%c\"" -#: src/root.c:223 -msgid "Exit JWM" -msgstr "JWM afsluiten" - -#: src/root.c:224 -msgid "Are you sure?" -msgstr "Weet je het zeker?" - -#: src/swallow.c:85 -msgid "cannot swallow a client with no name" -msgstr "" - -#: src/taskbar.c:444 src/winmenu.c:48 -msgid "Close" -msgstr "Sluiten" - -#: src/taskbar.c:451 src/winmenu.c:66 -msgid "Minimize" -msgstr "Minimaliseren" - -#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 -#: src/winmenu.c:106 -msgid "Restore" -msgstr "Herstellen" - -#: src/taskbar.c:465 src/winmenu.c:179 -msgid "Send To" -msgstr "Zend naar" - -#: src/taskbar.c:961 +#: src/parse.c:1972 #, c-format -msgid "invalid maxwidth for TaskList: %s" -msgstr "ongeldige maximum breedte voor Taaklijst: %s" +msgid "invalid setting: %s" +msgstr "ongeldige instelling: %s" -#: src/taskbar.c:975 +#: src/parse.c:384 #, fuzzy, c-format -msgid "invalid height for TaskList: %s" -msgstr "ongeldige maximum breedte voor Taaklijst: %s" +msgid "invalid start tag: %s" +msgstr "ongeldige instelling: %s" -#: src/tray.c:1064 +#: src/parse.c:2031 #, c-format -msgid "invalid tray layout: \"%s\"" -msgstr "ongeldige taakbalk lay-out: \"%s\"" +msgid "invalid tag in %s: %s" +msgstr "ongeldig label in %s: %s" + +#: src/parse.c:871 +#, fuzzy, c-format +msgid "invalid text alignment: \"%s\"" +msgstr "ongeldige verticale taakbalk uitlijning: \"%s\"" #: src/tray.c:1102 #, c-format msgid "invalid tray horizontal alignment: \"%s\"" msgstr "ongeldige horizontale taakbalk uitlijning: \"%s\"" +#: src/tray.c:1064 +#, c-format +msgid "invalid tray layout: \"%s\"" +msgstr "ongeldige taakbalk lay-out: \"%s\"" + #: src/tray.c:1125 #, c-format msgid "invalid tray vertical alignment: \"%s\"" msgstr "ongeldige verticale taakbalk uitlijning: \"%s\"" -#: src/traybutton.c:89 -#, c-format -msgid "could not load tray icon: \"%s\"" -msgstr "kon taakbalk-pictogram niet laden: \"%s\"" - -#: src/traybutton.c:130 -msgid "no icon or label for TrayButton" -msgstr "geen pictogram of label voor Taakbalk-knop" - -#: src/winmenu.c:49 -msgid "Kill" -msgstr "Sluiten forceren" - -#: src/winmenu.c:57 -msgid "Resize" -msgstr "Grootte wijzigen" - -#: src/winmenu.c:60 -msgid "Move" -msgstr "Verplaatsen" - -#: src/winmenu.c:72 -msgid "Unshade" -msgstr "Uitrollen" - -#: src/winmenu.c:74 -msgid "Shade" -msgstr "Oprollen" - -#: src/winmenu.c:81 -msgid "Maximize-y" -msgstr "Maximaliseer-y" - -#: src/winmenu.c:86 -msgid "Maximize-x" -msgstr "Maximaliseer-x" +#: src/parse.c:1854 +#, fuzzy, c-format +msgid "invalid value for %s: \"%s\"" +msgstr "ongeldig label in %s: %s" -#: src/winmenu.c:90 -msgid "Maximize" -msgstr "Maximaliseren" +#: src/parse.c:1611 +#, fuzzy, c-format +msgid "invalid value for 'enabled': \"%s\"" +msgstr "Ongeldige Taakbalk-knop actie: \"%s\"" -#: src/winmenu.c:112 -msgid "Unstick" -msgstr "Losmaken" +#: src/key.c:467 +#, fuzzy, c-format +msgid "key binding: root menu \"%s\" not defined" +msgstr "Sneltoets: root menu %d niet gedefiniëerd" -#: src/winmenu.c:114 -msgid "Stick" -msgstr "Vastmaken" +#: src/key.c:326 +#, c-format +msgid "modifier not found for keysym 0x%0x" +msgstr "Aanpassing voor toets-sym 0x%0x niet gevonden" -#: src/winmenu.c:139 -msgid "Layer" -msgstr "Laag" +#: src/key.c:452 +msgid "neither key nor keycode specified for Key" +msgstr "Toets en Toetscode niet opgegeven voor Toets" -#: src/winmenu.c:148 -msgid "[Above]" -msgstr "[Boven]" +#: src/parse.c:824 +#, fuzzy +msgid "no action specified for Key" +msgstr "Toets en Toetscode niet opgegeven voor Toets" -#: src/winmenu.c:150 -msgid "Above" -msgstr "Boven" +#: src/traybutton.c:130 +msgid "no icon or label for TrayButton" +msgstr "geen pictogram of label voor Taakbalk-knop" -#: src/winmenu.c:153 -msgid "[Normal]" -msgstr "[Normaal]" +#: src/parse.c:957 +msgid "no include file specified" +msgstr "" -#: src/winmenu.c:155 -msgid "Normal" -msgstr "Normaal" +#: src/parse.c:1967 src/parse.c:1984 +#, fuzzy +msgid "no value specified" +msgstr "Geen warde opgegeven voor achtergrond" -#: src/winmenu.c:158 -msgid "[Below]" -msgstr "[Onder]" +#: src/background.c:137 +msgid "no value specified for background" +msgstr "Geen warde opgegeven voor achtergrond" -#: src/winmenu.c:160 -msgid "Below" -msgstr "Onder" +#: src/dock.c:151 +msgid "only one Dock allowed" +msgstr "Slechts één Paneel toegelaten" -#~ msgid "invalid tray width: %d" -#~ msgstr "ongeldige taakbalk-breedte: %d" +#: src/lex.c:473 src/parse.c:1893 +msgid "out of memory" +msgstr "" -#~ msgid "invalid tray height: %d" -#~ msgstr "ongeldige taakbalk-hoogte: %d" +#~ msgid "Fullscreen state will be shaped!" +#~ msgstr "Volledige scherm-status zal gevormd worden!" #~ msgid "invalid insert mode: \"%s\"" #~ msgstr "ongeldige invoeg-modus: \"%s\"" @@ -462,5 +459,8 @@ msgstr "Onder" #~ msgid "invalid status window type: %s" #~ msgstr "ongeldig staus-venster type: %s" -#~ msgid "Fullscreen state will be shaped!" -#~ msgstr "Volledige scherm-status zal gevormd worden!" +#~ msgid "invalid tray height: %d" +#~ msgstr "ongeldige taakbalk-hoogte: %d" + +#~ msgid "invalid tray width: %d" +#~ msgstr "ongeldige taakbalk-breedte: %d" diff --git a/po/pl.po b/po/pl.po index 0ac3937c..7f4a4cd3 100644 --- a/po/pl.po +++ b/po/pl.po @@ -18,66 +18,78 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2);\n" -#: src/action.c:44 -#, fuzzy, c-format -msgid "invalid action: \"%s\"" -msgstr "nieprawidłowa akcja TrayButton: \"%s\"" +#: src/parse.c:1829 +#, c-format +msgid "%s is empty" +msgstr "" -#: src/action.c:211 -#, fuzzy, c-format -msgid "action: root menu \"%s\" not defined" -msgstr "przycisk zasobnika: menu głównym %d nie zdefiniowano" +#: src/lex.c:367 +#, c-format +msgid "%s[%d]: invalid entity: \"%.8s\"" +msgstr "%s[%d]: nieprawidłowa jednostka: \"%.8s\"" -#: src/background.c:137 -msgid "no value specified for background" -msgstr "nie określono wartości dla tła" +#: src/lex.c:201 +#, c-format +msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgstr "%s[%u]: zamknij znacznik \"%s\" nie pasuje otwarty znacznik \"%s\"" -#: src/background.c:149 +#: src/lex.c:213 #, c-format -msgid "invalid background type: \"%s\"" -msgstr "nieprawidłowy typ tła: \"%s\"" +msgid "%s[%u]: close tag \"%s\" without open tag" +msgstr "%s[%u]: zamknij znacznik \"%s\" bez otwartego znacznika" -#: src/background.c:294 +#: src/lex.c:216 #, c-format -msgid "background image not found: \"%s\"" -msgstr "nie znaleziono obrazu tła: \"%s\"" +msgid "%s[%u]: invalid close tag" +msgstr "%s[%u]: nieprawidłowo zamknięty znacznik" -#: src/client.c:905 -msgid "Kill this window?" -msgstr "Zabić to okno?" +#: src/lex.c:234 +#, c-format +msgid "%s[%u]: invalid open tag" +msgstr "%s[%u]: nieprawidłowo otwarty znacznik" -#: src/client.c:906 -msgid "This may cause data to be lost!" -msgstr "Może to spowodować utratę danych!" +#: src/lex.c:250 +#, c-format +msgid "%s[%u]: invalid tag" +msgstr "%s[%u]: nieprawidłowy znacznik" -#: src/command.c:138 src/main.c:221 +#: src/lex.c:207 #, c-format -msgid "exec failed: (%s) %s" -msgstr "exec nie powiodło się: (%s) %s" +msgid "%s[%u]: unexpected and invalid close tag" +msgstr "%s[%u]: nieoczekiwany i nieprawidłowo zamknięty znacznik" -#: src/confirm.c:69 -msgid "OK" +#: src/lex.c:308 +#, c-format +msgid "%s[%u]: unexpected text: \"%s\"" +msgstr "%s[%u]: nieoczekiwany tekst: \"%s\"" + +#: src/winmenu.c:150 +msgid "Above" +msgstr "" + +#: src/root.c:224 +msgid "Are you sure?" +msgstr "Czy jesteś pewien?" + +#: src/winmenu.c:160 +msgid "Below" msgstr "" #: src/confirm.c:74 msgid "Cancel" msgstr "" +#: src/taskbar.c:444 src/winmenu.c:48 +msgid "Close" +msgstr "Zamknij" + #: src/confirm.c:308 msgid "Confirm" msgstr "" -#: src/desktop.c:336 -msgid "empty Desktops Name tag" -msgstr "pusty znacznik Nazwa Pulpitów" - -#: src/dock.c:151 -msgid "only one Dock allowed" -msgstr "tylko jeden dozwolony Dock" - -#: src/dock.c:232 -msgid "could not acquire system tray selection" -msgstr "nie można nabyć wyboru w zasobniku systemowym" +#: src/root.c:223 +msgid "Exit JWM" +msgstr "Zakończ JWM" #: src/error.c:22 #, c-format @@ -89,176 +101,192 @@ msgstr "" msgid "JWM: warning: " msgstr "" -#: src/error.c:77 -msgid "display is already managed" -msgstr "" +#: src/winmenu.c:49 +msgid "Kill" +msgstr "Zabij" -#: src/font.c:109 src/font.c:126 -#, c-format -msgid "could not load font: %s" -msgstr "nie można załadować czcionki: %s" +#: src/client.c:905 +msgid "Kill this window?" +msgstr "Zabić to okno?" -#: src/font.c:116 src/font.c:133 -#, c-format -msgid "could not load the default font: %s" -msgstr "nie można załadować domyślnej czcionki: %s" +#: src/winmenu.c:139 +msgid "Layer" +msgstr "Warstwa" -#: src/font.c:315 -msgid "empty Font tag" -msgstr "pusty znacznik czcionki" +#: src/winmenu.c:90 +msgid "Maximize" +msgstr "Zmaksymalizuj" -#: src/group.c:115 -msgid "invalid group class" -msgstr "nieprawidłowa klasa grupy" +#: src/winmenu.c:86 +msgid "Maximize-x" +msgstr "Zmaksymalizuj poz." -#: src/group.c:126 -msgid "invalid group name" -msgstr "nieprawidłowa nazwa grupy" +#: src/winmenu.c:81 +msgid "Maximize-y" +msgstr "Zmaksymalizuj pio." -#: src/group.c:287 -#, c-format -msgid "invalid group desktop: %d" -msgstr "nieprawidłowy pulpitu grupy: %d" +#: src/taskbar.c:451 src/winmenu.c:66 +msgid "Minimize" +msgstr "Zminimalizuj" -#: src/image.c:220 -#, c-format -msgid "could not create read struct for PNG image: %s" -msgstr "nie można utworzyć przeczytać struct dla obrazu PNG: %s" +#: src/winmenu.c:60 +msgid "Move" +msgstr "Przenieś" -#: src/image.c:233 -#, c-format -msgid "error reading PNG image: %s" -msgstr "błąd odczytu obrazu PNG: %s" +#: src/winmenu.c:155 +msgid "Normal" +msgstr "Normalny" -#: src/image.c:241 -#, c-format -msgid "could not create info struct for PNG image: %s" -msgstr "nie można utworzyć struktur informacji dla obrazu PNG: %s" +#: src/confirm.c:69 +msgid "OK" +msgstr "" + +#: src/winmenu.c:57 +msgid "Resize" +msgstr "Zmień rozmiar" + +#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 +#: src/winmenu.c:106 +msgid "Restore" +msgstr "Przywróć" + +#: src/taskbar.c:465 src/winmenu.c:179 +msgid "Send To" +msgstr "Wyślij do" + +#: src/winmenu.c:74 +msgid "Shade" +msgstr "Zwiń" #: src/key.c:318 msgid "Specified KeySym is not defined for any KeyCode" msgstr "Określony KeySym nie jest zdefiniowany dla żadego KeyCode" -#: src/key.c:326 -#, c-format -msgid "modifier not found for keysym 0x%0x" -msgstr "nie znaleziono modyfikatora dla keysym 0x%0x" +#: src/winmenu.c:114 +msgid "Stick" +msgstr "Przypnij" -#: src/key.c:356 -#, c-format -msgid "invalid modifier: \"%c\"" -msgstr "nieprawidłowy modyfikator: \"%c\"" +#: src/client.c:906 +msgid "This may cause data to be lost!" +msgstr "Może to spowodować utratę danych!" -#: src/key.c:371 -#, c-format -msgid "invalid key symbol: \"%s\"" -msgstr "nieprawidłowy symbol klucza: \"%s\"" +#: src/winmenu.c:72 +msgid "Unshade" +msgstr "Rozwiń" -#: src/key.c:452 -msgid "neither key nor keycode specified for Key" -msgstr "ani klucza ani keycode określony dla Key" +#: src/winmenu.c:112 +msgid "Unstick" +msgstr "Odepnij" -#: src/key.c:467 +#: src/winmenu.c:148 +msgid "[Above]" +msgstr "" + +#: src/winmenu.c:158 +msgid "[Below]" +msgstr "" + +#: src/winmenu.c:153 +msgid "[Normal]" +msgstr "[Normalny]" + +#: src/action.c:211 #, fuzzy, c-format -msgid "key binding: root menu \"%s\" not defined" -msgstr "klucz wiązania: menu główne %d nie zdefiniowano" +msgid "action: root menu \"%s\" not defined" +msgstr "przycisk zasobnika: menu głównym %d nie zdefiniowano" -#: src/lex.c:201 +#: src/background.c:294 #, c-format -msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" -msgstr "%s[%u]: zamknij znacznik \"%s\" nie pasuje otwarty znacznik \"%s\"" +msgid "background image not found: \"%s\"" +msgstr "nie znaleziono obrazu tła: \"%s\"" -#: src/lex.c:207 -#, c-format -msgid "%s[%u]: unexpected and invalid close tag" -msgstr "%s[%u]: nieoczekiwany i nieprawidłowo zamknięty znacznik" +#: src/swallow.c:85 +msgid "cannot swallow a client with no name" +msgstr "nie może połknąć klienta bez nazwy" -#: src/lex.c:213 -#, c-format -msgid "%s[%u]: close tag \"%s\" without open tag" -msgstr "%s[%u]: zamknij znacznik \"%s\" bez otwartego znacznika" +#: src/parse.c:2052 +msgid "configuration error" +msgstr "błąd konfiguracji" -#: src/lex.c:216 -#, c-format -msgid "%s[%u]: invalid close tag" -msgstr "%s[%u]: nieprawidłowo zamknięty znacznik" +#: src/dock.c:232 +msgid "could not acquire system tray selection" +msgstr "nie można nabyć wyboru w zasobniku systemowym" -#: src/lex.c:234 +#: src/image.c:241 #, c-format -msgid "%s[%u]: invalid open tag" -msgstr "%s[%u]: nieprawidłowo otwarty znacznik" +msgid "could not create info struct for PNG image: %s" +msgstr "nie można utworzyć struktur informacji dla obrazu PNG: %s" -#: src/lex.c:250 +#: src/image.c:220 #, c-format -msgid "%s[%u]: invalid tag" -msgstr "%s[%u]: nieprawidłowy znacznik" +msgid "could not create read struct for PNG image: %s" +msgstr "nie można utworzyć przeczytać struct dla obrazu PNG: %s" -#: src/lex.c:308 +#: src/font.c:109 src/font.c:126 #, c-format -msgid "%s[%u]: unexpected text: \"%s\"" -msgstr "%s[%u]: nieoczekiwany tekst: \"%s\"" +msgid "could not load font: %s" +msgstr "nie można załadować czcionki: %s" -#: src/lex.c:367 +#: src/font.c:116 src/font.c:133 #, c-format -msgid "%s[%d]: invalid entity: \"%.8s\"" -msgstr "%s[%d]: nieprawidłowa jednostka: \"%.8s\"" +msgid "could not load the default font: %s" +msgstr "nie można załadować domyślnej czcionki: %s" -#: src/lex.c:473 src/parse.c:1893 -msgid "out of memory" -msgstr "" +#: src/traybutton.c:89 +#, c-format +msgid "could not load tray icon: \"%s\"" +msgstr "nie można załadować ikon w zasobniku: \"%s\"" #: src/parse.c:228 #, fuzzy, c-format msgid "could not open %s or %s" msgstr "nie można załadować czcionki: %s" -#: src/parse.c:246 -#, c-format -msgid "include depth (%d) exceeded" -msgstr "" +#: src/parse.c:971 +#, fuzzy, c-format +msgid "could not open included file: %s" +msgstr "nie można załadować czcionki: %s" -#: src/parse.c:384 +#: src/parse.c:967 #, fuzzy, c-format -msgid "invalid start tag: %s" -msgstr "nieprawidłowy znacznik w: %s" +msgid "could not process include: %s" +msgstr "nie można załadować czcionki: %s" -#: src/parse.c:774 +#: src/parse.c:1880 #, fuzzy, c-format -msgid "invalid include: %s" -msgstr "nieprawidłowa warstwa grupy: %s" +msgid "could not read file: %s" +msgstr "nie można załadować czcionki: %s" -#: src/parse.c:824 -#, fuzzy -msgid "no action specified for Key" -msgstr "ani klucza ani keycode określony dla Key" +#: src/error.c:77 +msgid "display is already managed" +msgstr "" -#: src/parse.c:847 -#, fuzzy, c-format -msgid "invalid Key action: \"%s\"" -msgstr "nieprawidłowa akcja TrayButton: \"%s\"" +#: src/desktop.c:336 +msgid "empty Desktops Name tag" +msgstr "pusty znacznik Nazwa Pulpitów" -#: src/parse.c:871 -#, fuzzy, c-format -msgid "invalid text alignment: \"%s\"" -msgstr "nieprawidłowe wypionowanie zasobnika: \"%s\"" +#: src/font.c:315 +msgid "empty Font tag" +msgstr "pusty znacznik czcionki" -#: src/parse.c:957 -msgid "no include file specified" -msgstr "" +#: src/image.c:233 +#, c-format +msgid "error reading PNG image: %s" +msgstr "błąd odczytu obrazu PNG: %s" -#: src/parse.c:967 -#, fuzzy, c-format -msgid "could not process include: %s" -msgstr "nie można załadować czcionki: %s" +#: src/command.c:138 src/main.c:221 +#, c-format +msgid "exec failed: (%s) %s" +msgstr "exec nie powiodło się: (%s) %s" -#: src/parse.c:971 -#, fuzzy, c-format -msgid "could not open included file: %s" -msgstr "nie można załadować czcionki: %s" +#: src/parse.c:246 +#, c-format +msgid "include depth (%d) exceeded" +msgstr "" -#: src/parse.c:1611 +#: src/parse.c:1836 #, fuzzy, c-format -msgid "invalid value for 'enabled': \"%s\"" +msgid "invalid %s: \"%s\"" msgstr "nieprawidłowa akcja TrayButton: \"%s\"" #: src/parse.c:1752 @@ -266,201 +294,173 @@ msgstr "nieprawidłowa akcja TrayButton: \"%s\"" msgid "invalid Group Option: %s" msgstr "nieprawidłowy pulpitu grupy: %d" -#: src/parse.c:1767 +#: src/parse.c:847 #, fuzzy, c-format -msgid "invalid decorations: %s" +msgid "invalid Key action: \"%s\"" msgstr "nieprawidłowa akcja TrayButton: \"%s\"" -#: src/parse.c:1829 -#, c-format -msgid "%s is empty" -msgstr "" - -#: src/parse.c:1836 +#: src/action.c:44 #, fuzzy, c-format -msgid "invalid %s: \"%s\"" +msgid "invalid action: \"%s\"" msgstr "nieprawidłowa akcja TrayButton: \"%s\"" -#: src/parse.c:1854 -#, fuzzy, c-format -msgid "invalid value for %s: \"%s\"" -msgstr "nieprawidłowy znacznik w %s: %s" +#: src/background.c:149 +#, c-format +msgid "invalid background type: \"%s\"" +msgstr "nieprawidłowy typ tła: \"%s\"" -#: src/parse.c:1880 +#: src/parse.c:1767 #, fuzzy, c-format -msgid "could not read file: %s" -msgstr "nie można załadować czcionki: %s" +msgid "invalid decorations: %s" +msgstr "nieprawidłowa akcja TrayButton: \"%s\"" -#: src/parse.c:1967 src/parse.c:1984 -#, fuzzy -msgid "no value specified" -msgstr "nie określono wartości dla tła" +#: src/group.c:115 +msgid "invalid group class" +msgstr "nieprawidłowa klasa grupy" -#: src/parse.c:1972 +#: src/group.c:287 #, c-format -msgid "invalid setting: %s" -msgstr "nieprawidłowy znacznik w: %s" +msgid "invalid group desktop: %d" +msgstr "nieprawidłowy pulpitu grupy: %d" -#: src/parse.c:1989 +#: src/group.c:126 +msgid "invalid group name" +msgstr "nieprawidłowa nazwa grupy" + +#: src/taskbar.c:975 +#, fuzzy, c-format +msgid "invalid height for TaskList: %s" +msgstr "nieprawidłowa maksymalna szerokość TaskList: %s" + +#: src/parse.c:774 +#, fuzzy, c-format +msgid "invalid include: %s" +msgstr "nieprawidłowa warstwa grupy: %s" + +#: src/key.c:371 #, c-format -msgid "invalid opacity: %s" -msgstr "nieprawidłowa nieprzezroczystość menu: %s" +msgid "invalid key symbol: \"%s\"" +msgstr "nieprawidłowy symbol klucza: \"%s\"" #: src/parse.c:2010 #, c-format msgid "invalid layer: %s" msgstr "nieprawidłowa warstwa grupy: %s" -#: src/parse.c:2031 +#: src/taskbar.c:961 #, c-format -msgid "invalid tag in %s: %s" -msgstr "nieprawidłowy znacznik w %s: %s" +msgid "invalid maxwidth for TaskList: %s" +msgstr "nieprawidłowa maksymalna szerokość TaskList: %s" -#: src/parse.c:2052 -msgid "configuration error" -msgstr "błąd konfiguracji" +#: src/key.c:356 +#, c-format +msgid "invalid modifier: \"%c\"" +msgstr "nieprawidłowy modyfikator: \"%c\"" + +#: src/parse.c:1989 +#, c-format +msgid "invalid opacity: %s" +msgstr "nieprawidłowa nieprzezroczystość menu: %s" #: src/root.c:131 #, c-format msgid "invalid root menu specified: \"%c\"" msgstr "nieprawidłowo określono menu główne: \"%c\"" -#: src/root.c:223 -msgid "Exit JWM" -msgstr "Zakończ JWM" - -#: src/root.c:224 -msgid "Are you sure?" -msgstr "Czy jesteś pewien?" - -#: src/swallow.c:85 -msgid "cannot swallow a client with no name" -msgstr "nie może połknąć klienta bez nazwy" - -#: src/taskbar.c:444 src/winmenu.c:48 -msgid "Close" -msgstr "Zamknij" - -#: src/taskbar.c:451 src/winmenu.c:66 -msgid "Minimize" -msgstr "Zminimalizuj" - -#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 -#: src/winmenu.c:106 -msgid "Restore" -msgstr "Przywróć" - -#: src/taskbar.c:465 src/winmenu.c:179 -msgid "Send To" -msgstr "Wyślij do" - -#: src/taskbar.c:961 +#: src/parse.c:1972 #, c-format -msgid "invalid maxwidth for TaskList: %s" -msgstr "nieprawidłowa maksymalna szerokość TaskList: %s" +msgid "invalid setting: %s" +msgstr "nieprawidłowy znacznik w: %s" -#: src/taskbar.c:975 +#: src/parse.c:384 #, fuzzy, c-format -msgid "invalid height for TaskList: %s" -msgstr "nieprawidłowa maksymalna szerokość TaskList: %s" +msgid "invalid start tag: %s" +msgstr "nieprawidłowy znacznik w: %s" -#: src/tray.c:1064 +#: src/parse.c:2031 #, c-format -msgid "invalid tray layout: \"%s\"" -msgstr "nieprawidłowy układ zasobnika: \"%s\"" +msgid "invalid tag in %s: %s" +msgstr "nieprawidłowy znacznik w %s: %s" + +#: src/parse.c:871 +#, fuzzy, c-format +msgid "invalid text alignment: \"%s\"" +msgstr "nieprawidłowe wypionowanie zasobnika: \"%s\"" #: src/tray.c:1102 #, c-format msgid "invalid tray horizontal alignment: \"%s\"" msgstr "nieprawidłowe wypoziomowanie zasobnika: \"%s\"" +#: src/tray.c:1064 +#, c-format +msgid "invalid tray layout: \"%s\"" +msgstr "nieprawidłowy układ zasobnika: \"%s\"" + #: src/tray.c:1125 #, c-format msgid "invalid tray vertical alignment: \"%s\"" msgstr "nieprawidłowe wypionowanie zasobnika: \"%s\"" -#: src/traybutton.c:89 -#, c-format -msgid "could not load tray icon: \"%s\"" -msgstr "nie można załadować ikon w zasobniku: \"%s\"" - -#: src/traybutton.c:130 -msgid "no icon or label for TrayButton" -msgstr "brak ikony lub etykiety dla TrayButton" - -#: src/winmenu.c:49 -msgid "Kill" -msgstr "Zabij" - -#: src/winmenu.c:57 -msgid "Resize" -msgstr "Zmień rozmiar" - -#: src/winmenu.c:60 -msgid "Move" -msgstr "Przenieś" - -#: src/winmenu.c:72 -msgid "Unshade" -msgstr "Rozwiń" - -#: src/winmenu.c:74 -msgid "Shade" -msgstr "Zwiń" - -#: src/winmenu.c:81 -msgid "Maximize-y" -msgstr "Zmaksymalizuj pio." +#: src/parse.c:1854 +#, fuzzy, c-format +msgid "invalid value for %s: \"%s\"" +msgstr "nieprawidłowy znacznik w %s: %s" -#: src/winmenu.c:86 -msgid "Maximize-x" -msgstr "Zmaksymalizuj poz." +#: src/parse.c:1611 +#, fuzzy, c-format +msgid "invalid value for 'enabled': \"%s\"" +msgstr "nieprawidłowa akcja TrayButton: \"%s\"" -#: src/winmenu.c:90 -msgid "Maximize" -msgstr "Zmaksymalizuj" +#: src/key.c:467 +#, fuzzy, c-format +msgid "key binding: root menu \"%s\" not defined" +msgstr "klucz wiązania: menu główne %d nie zdefiniowano" -#: src/winmenu.c:112 -msgid "Unstick" -msgstr "Odepnij" +#: src/key.c:326 +#, c-format +msgid "modifier not found for keysym 0x%0x" +msgstr "nie znaleziono modyfikatora dla keysym 0x%0x" -#: src/winmenu.c:114 -msgid "Stick" -msgstr "Przypnij" +#: src/key.c:452 +msgid "neither key nor keycode specified for Key" +msgstr "ani klucza ani keycode określony dla Key" -#: src/winmenu.c:139 -msgid "Layer" -msgstr "Warstwa" +#: src/parse.c:824 +#, fuzzy +msgid "no action specified for Key" +msgstr "ani klucza ani keycode określony dla Key" -#: src/winmenu.c:148 -msgid "[Above]" -msgstr "" +#: src/traybutton.c:130 +msgid "no icon or label for TrayButton" +msgstr "brak ikony lub etykiety dla TrayButton" -#: src/winmenu.c:150 -msgid "Above" +#: src/parse.c:957 +msgid "no include file specified" msgstr "" -#: src/winmenu.c:153 -msgid "[Normal]" -msgstr "[Normalny]" +#: src/parse.c:1967 src/parse.c:1984 +#, fuzzy +msgid "no value specified" +msgstr "nie określono wartości dla tła" -#: src/winmenu.c:155 -msgid "Normal" -msgstr "Normalny" +#: src/background.c:137 +msgid "no value specified for background" +msgstr "nie określono wartości dla tła" -#: src/winmenu.c:158 -msgid "[Below]" -msgstr "" +#: src/dock.c:151 +msgid "only one Dock allowed" +msgstr "tylko jeden dozwolony Dock" -#: src/winmenu.c:160 -msgid "Below" +#: src/lex.c:473 src/parse.c:1893 +msgid "out of memory" msgstr "" -#~ msgid "invalid tray width: %d" -#~ msgstr "nieprawidłowa szerokość zasobnika: %d" +#~ msgid "Fullscreen state will be shaped!" +#~ msgstr "Pełnoekranowy stan będzie kształtowany!" -#~ msgid "invalid tray height: %d" -#~ msgstr "nieprawidłowa wysokość zasobnika: %d" +#~ msgid "cannot swallow the same client multiple times" +#~ msgstr "nie można połknąć tego samego klienta, wiele razy" #~ msgid "invalid insert mode: \"%s\"" #~ msgstr "nieprawidłowy tryb edycji: \"%s\"" @@ -468,8 +468,8 @@ msgstr "" #~ msgid "invalid status window type: %s" #~ msgstr "nieprawidłowy typ tła: %s" -#~ msgid "cannot swallow the same client multiple times" -#~ msgstr "nie można połknąć tego samego klienta, wiele razy" +#~ msgid "invalid tray height: %d" +#~ msgstr "nieprawidłowa wysokość zasobnika: %d" -#~ msgid "Fullscreen state will be shaped!" -#~ msgstr "Pełnoekranowy stan będzie kształtowany!" +#~ msgid "invalid tray width: %d" +#~ msgstr "nieprawidłowa szerokość zasobnika: %d" diff --git a/po/pt.po b/po/pt.po index c9c30452..5f525bce 100644 --- a/po/pt.po +++ b/po/pt.po @@ -19,66 +19,80 @@ msgstr "" "X-Poedit-SourceCharset: utf-8\n" "X-Generator: Poedit 1.8.4\n" -#: src/action.c:44 +#: src/parse.c:1829 #, c-format -msgid "invalid action: \"%s\"" -msgstr "Açao do Traybutton invalida: \"%s\"" +msgid "%s is empty" +msgstr "" -#: src/action.c:211 +#: src/lex.c:367 #, c-format -msgid "action: root menu \"%s\" not defined" -msgstr "botão do tabuleiro root \"%s\" não esta definido" +msgid "%s[%d]: invalid entity: \"%.8s\"" +msgstr "%s[%d]: entrada invalida: \"%.8s\"" -#: src/background.c:137 -msgid "no value specified for background" -msgstr "nenhum valor foi especificado para o fundo (background)" +#: src/lex.c:201 +#, c-format +msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgstr "" +"%s[%u]: terminação da etiqueta \"%s\" não corresponde à abertura da etiqueta " +"\"%s\"" -#: src/background.c:149 +#: src/lex.c:213 #, c-format -msgid "invalid background type: \"%s\"" -msgstr "tipo de fundo invalido: \"%s\"" +msgid "%s[%u]: close tag \"%s\" without open tag" +msgstr "%s[%u]: terminação da etiqueta \"%s\" sem etiqueta de abertura" -#: src/background.c:294 +#: src/lex.c:216 #, c-format -msgid "background image not found: \"%s\"" -msgstr "imagem de fundo não encontrada: \"%s\"" +msgid "%s[%u]: invalid close tag" +msgstr "%s[%u]: terminação de etiqueta invalida" -#: src/client.c:905 -msgid "Kill this window?" -msgstr "Matar janela?" +#: src/lex.c:234 +#, c-format +msgid "%s[%u]: invalid open tag" +msgstr "%s[%u]: abertura de etiqueta invalida" -#: src/client.c:906 -msgid "This may cause data to be lost!" -msgstr "esta ação pode causar perda de dados!" +#: src/lex.c:250 +#, c-format +msgid "%s[%u]: invalid tag" +msgstr "%s[%u]: etiqueta invalida" -#: src/command.c:138 src/main.c:221 +#: src/lex.c:207 #, c-format -msgid "exec failed: (%s) %s" -msgstr "comando executável exec falhou (%s) %s" +msgid "%s[%u]: unexpected and invalid close tag" +msgstr "%s[%u]: terminação da etiqueta inesperada e invalida" -#: src/confirm.c:69 -msgid "OK" -msgstr "Está bem" +#: src/lex.c:308 +#, c-format +msgid "%s[%u]: unexpected text: \"%s\"" +msgstr "%s[%u]: texto inesperado: \"%s\"" + +#: src/winmenu.c:150 +msgid "Above" +msgstr "Acima" + +#: src/root.c:224 +msgid "Are you sure?" +msgstr "Tem a certeza?" + +#: src/winmenu.c:160 +msgid "Below" +msgstr "Abaixo" #: src/confirm.c:74 msgid "Cancel" msgstr "Cancelar" +#: src/taskbar.c:444 src/winmenu.c:48 +msgid "Close" +msgstr "Fechar" + #: src/confirm.c:308 msgid "Confirm" msgstr "Comfirmar" -#: src/desktop.c:336 -msgid "empty Desktops Name tag" -msgstr "etiqueta Desktops vazia" - -#: src/dock.c:151 -msgid "only one Dock allowed" -msgstr "só um tabuleiro e permitido" - -#: src/dock.c:232 -msgid "could not acquire system tray selection" -msgstr "não pode adquirir a seleção da bandeja do sistema" +#: src/root.c:223 +msgid "Exit JWM" +msgstr "Sair do JWM?" #: src/error.c:22 #, c-format @@ -90,383 +104,369 @@ msgstr "" msgid "JWM: warning: " msgstr "" -#: src/error.c:77 -msgid "display is already managed" -msgstr "" +#: src/winmenu.c:49 +msgid "Kill" +msgstr "Terminar" -#: src/font.c:109 src/font.c:126 -#, c-format -msgid "could not load font: %s" -msgstr "impossível carregar fonte %s" +#: src/client.c:905 +msgid "Kill this window?" +msgstr "Matar janela?" -#: src/font.c:116 src/font.c:133 -#, c-format -msgid "could not load the default font: %s" -msgstr "Não foi possível carregar a fonte padrão %s" +#: src/winmenu.c:139 +msgid "Layer" +msgstr "Camada" -#: src/font.c:315 -msgid "empty Font tag" -msgstr "etiqueta Font vazia" +#: src/winmenu.c:90 +msgid "Maximize" +msgstr "Maximizar" -#: src/group.c:115 -msgid "invalid group class" -msgstr "classe do grupo invalida" +#: src/winmenu.c:86 +msgid "Maximize-x" +msgstr "Maximizar-x" -#: src/group.c:126 -msgid "invalid group name" -msgstr "nome do grupo invalido" +#: src/winmenu.c:81 +msgid "Maximize-y" +msgstr "Maximizar-y" -#: src/group.c:287 -#, c-format -msgid "invalid group desktop: %d" -msgstr "grupo invalido desktop %d" +#: src/taskbar.c:451 src/winmenu.c:66 +msgid "Minimize" +msgstr "Minimizar" -#: src/image.c:220 -#, c-format -msgid "could not create read struct for PNG image: %s" -msgstr "não foi possível criar ou ler a estrutura para imagens PNG: %s" +#: src/winmenu.c:60 +msgid "Move" +msgstr "Mover" -#: src/image.c:233 -#, c-format -msgid "error reading PNG image: %s" -msgstr "erro lendo imagem PNG %s" +#: src/winmenu.c:155 +msgid "Normal" +msgstr "Normal" -#: src/image.c:241 -#, c-format -msgid "could not create info struct for PNG image: %s" -msgstr "não foi possível criar estrutura de informação para imagem PNG %s" +#: src/confirm.c:69 +msgid "OK" +msgstr "Está bem" + +#: src/winmenu.c:57 +msgid "Resize" +msgstr "Redimensionar" + +#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 +#: src/winmenu.c:106 +msgid "Restore" +msgstr "Restaurar" + +#: src/taskbar.c:465 src/winmenu.c:179 +msgid "Send To" +msgstr "Enviar Para" + +#: src/winmenu.c:74 +msgid "Shade" +msgstr "Ligar Sombra" #: src/key.c:318 msgid "Specified KeySym is not defined for any KeyCode" msgstr "KeySym especificado não esta defendido por nenhum Keycode" -#: src/key.c:326 -#, c-format -msgid "modifier not found for keysym 0x%0x" -msgstr "modificador não foi encontrado para o Keysym 0x%0x" +#: src/winmenu.c:114 +msgid "Stick" +msgstr "Colar" -#: src/key.c:356 -#, c-format -msgid "invalid modifier: \"%c\"" -msgstr "modificador invalido: \"%c\"" +#: src/client.c:906 +msgid "This may cause data to be lost!" +msgstr "esta ação pode causar perda de dados!" -#: src/key.c:371 -#, c-format -msgid "invalid key symbol: \"%s\"" -msgstr "símbolo de tecla invalido: \"%s\"" +#: src/winmenu.c:72 +msgid "Unshade" +msgstr "Desligar Sombra" -#: src/key.c:452 -msgid "neither key nor keycode specified for Key" -msgstr "tecla e código de tecla não foi especificado para esta tecla" +#: src/winmenu.c:112 +msgid "Unstick" +msgstr "Descolar" -#: src/key.c:467 +#: src/winmenu.c:148 +msgid "[Above]" +msgstr "[Acima]" + +#: src/winmenu.c:158 +msgid "[Below]" +msgstr "[Abaixo]" + +#: src/winmenu.c:153 +msgid "[Normal]" +msgstr "[Normal]" + +#: src/action.c:211 #, c-format -msgid "key binding: root menu \"%s\" not defined" -msgstr "" -"teclas de atalho: não foram especificadas para o menu root \"%s\" não esta " -"definido" +msgid "action: root menu \"%s\" not defined" +msgstr "botão do tabuleiro root \"%s\" não esta definido" -#: src/lex.c:201 +#: src/background.c:294 #, c-format -msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgid "background image not found: \"%s\"" +msgstr "imagem de fundo não encontrada: \"%s\"" + +#: src/swallow.c:85 +msgid "cannot swallow a client with no name" msgstr "" -"%s[%u]: terminação da etiqueta \"%s\" não corresponde à abertura da etiqueta " -"\"%s\"" +"não podes inserir um cliente na etiqueta swallow sem especificar o nome" -#: src/lex.c:207 -#, c-format -msgid "%s[%u]: unexpected and invalid close tag" -msgstr "%s[%u]: terminação da etiqueta inesperada e invalida" +#: src/parse.c:2052 +msgid "configuration error" +msgstr "Erro de configuração" -#: src/lex.c:213 -#, c-format -msgid "%s[%u]: close tag \"%s\" without open tag" -msgstr "%s[%u]: terminação da etiqueta \"%s\" sem etiqueta de abertura" +#: src/dock.c:232 +msgid "could not acquire system tray selection" +msgstr "não pode adquirir a seleção da bandeja do sistema" -#: src/lex.c:216 +#: src/image.c:241 #, c-format -msgid "%s[%u]: invalid close tag" -msgstr "%s[%u]: terminação de etiqueta invalida" +msgid "could not create info struct for PNG image: %s" +msgstr "não foi possível criar estrutura de informação para imagem PNG %s" -#: src/lex.c:234 +#: src/image.c:220 #, c-format -msgid "%s[%u]: invalid open tag" -msgstr "%s[%u]: abertura de etiqueta invalida" +msgid "could not create read struct for PNG image: %s" +msgstr "não foi possível criar ou ler a estrutura para imagens PNG: %s" -#: src/lex.c:250 +#: src/font.c:109 src/font.c:126 #, c-format -msgid "%s[%u]: invalid tag" -msgstr "%s[%u]: etiqueta invalida" +msgid "could not load font: %s" +msgstr "impossível carregar fonte %s" -#: src/lex.c:308 +#: src/font.c:116 src/font.c:133 #, c-format -msgid "%s[%u]: unexpected text: \"%s\"" -msgstr "%s[%u]: texto inesperado: \"%s\"" +msgid "could not load the default font: %s" +msgstr "Não foi possível carregar a fonte padrão %s" -#: src/lex.c:367 +#: src/traybutton.c:89 #, c-format -msgid "%s[%d]: invalid entity: \"%.8s\"" -msgstr "%s[%d]: entrada invalida: \"%.8s\"" - -#: src/lex.c:473 src/parse.c:1893 -msgid "out of memory" -msgstr "Memoria insuficiente" +msgid "could not load tray icon: \"%s\"" +msgstr "nao foi possível carregar o ícone no tabuleiro: \"%s\"" #: src/parse.c:228 #, fuzzy, c-format msgid "could not open %s or %s" msgstr "impossível carregar fonte %s" -#: src/parse.c:246 -#, c-format -msgid "include depth (%d) exceeded" -msgstr "" +#: src/parse.c:971 +#, fuzzy, c-format +msgid "could not open included file: %s" +msgstr "impossível carregar fonte %s" -#: src/parse.c:384 +#: src/parse.c:967 #, fuzzy, c-format -msgid "invalid start tag: %s" -msgstr "Configuração invalida: %s" +msgid "could not process include: %s" +msgstr "impossível carregar fonte %s" -#: src/parse.c:774 +#: src/parse.c:1880 #, fuzzy, c-format -msgid "invalid include: %s" -msgstr "camada invalida: %s" +msgid "could not read file: %s" +msgstr "impossível carregar fonte %s" -#: src/parse.c:824 -#, fuzzy -msgid "no action specified for Key" -msgstr "tecla e código de tecla não foi especificado para esta tecla" +#: src/error.c:77 +msgid "display is already managed" +msgstr "" -#: src/parse.c:847 -#, fuzzy, c-format -msgid "invalid Key action: \"%s\"" -msgstr "Açao do Traybutton invalida: \"%s\"" +#: src/desktop.c:336 +msgid "empty Desktops Name tag" +msgstr "etiqueta Desktops vazia" -#: src/parse.c:871 -#, fuzzy, c-format -msgid "invalid text alignment: \"%s\"" -msgstr "alinhamento vertical do tabuleiro invalido: \"%s\"" +#: src/font.c:315 +msgid "empty Font tag" +msgstr "etiqueta Font vazia" -#: src/parse.c:957 -msgid "no include file specified" +#: src/image.c:233 +#, c-format +msgid "error reading PNG image: %s" +msgstr "erro lendo imagem PNG %s" + +#: src/command.c:138 src/main.c:221 +#, c-format +msgid "exec failed: (%s) %s" +msgstr "comando executável exec falhou (%s) %s" + +#: src/parse.c:246 +#, c-format +msgid "include depth (%d) exceeded" msgstr "" -#: src/parse.c:967 +#: src/parse.c:1836 #, fuzzy, c-format -msgid "could not process include: %s" -msgstr "impossível carregar fonte %s" +msgid "invalid %s: \"%s\"" +msgstr "Açao do Traybutton invalida: \"%s\"" -#: src/parse.c:971 +#: src/parse.c:1752 #, fuzzy, c-format -msgid "could not open included file: %s" -msgstr "impossível carregar fonte %s" +msgid "invalid Group Option: %s" +msgstr "grupo invalido desktop %d" -#: src/parse.c:1611 +#: src/parse.c:847 #, fuzzy, c-format -msgid "invalid value for 'enabled': \"%s\"" +msgid "invalid Key action: \"%s\"" +msgstr "Açao do Traybutton invalida: \"%s\"" + +#: src/action.c:44 +#, c-format +msgid "invalid action: \"%s\"" msgstr "Açao do Traybutton invalida: \"%s\"" -#: src/parse.c:1752 -#, fuzzy, c-format -msgid "invalid Group Option: %s" -msgstr "grupo invalido desktop %d" +#: src/background.c:149 +#, c-format +msgid "invalid background type: \"%s\"" +msgstr "tipo de fundo invalido: \"%s\"" #: src/parse.c:1767 #, fuzzy, c-format msgid "invalid decorations: %s" msgstr "Açao do Traybutton invalida: \"%s\"" -#: src/parse.c:1829 +#: src/group.c:115 +msgid "invalid group class" +msgstr "classe do grupo invalida" + +#: src/group.c:287 #, c-format -msgid "%s is empty" -msgstr "" +msgid "invalid group desktop: %d" +msgstr "grupo invalido desktop %d" -#: src/parse.c:1836 -#, fuzzy, c-format -msgid "invalid %s: \"%s\"" -msgstr "Açao do Traybutton invalida: \"%s\"" +#: src/group.c:126 +msgid "invalid group name" +msgstr "nome do grupo invalido" -#: src/parse.c:1854 +#: src/taskbar.c:975 #, fuzzy, c-format -msgid "invalid value for %s: \"%s\"" -msgstr "etiqueta invalida dentro de %s: %s" +msgid "invalid height for TaskList: %s" +msgstr "largura máxima invalida para etiqueta a Tasklist: %s" -#: src/parse.c:1880 +#: src/parse.c:774 #, fuzzy, c-format -msgid "could not read file: %s" -msgstr "impossível carregar fonte %s" - -#: src/parse.c:1967 src/parse.c:1984 -#, fuzzy -msgid "no value specified" -msgstr "nenhum valor foi especificado para o fundo (background)" - -#: src/parse.c:1972 -#, c-format -msgid "invalid setting: %s" -msgstr "Configuração invalida: %s" +msgid "invalid include: %s" +msgstr "camada invalida: %s" -#: src/parse.c:1989 +#: src/key.c:371 #, c-format -msgid "invalid opacity: %s" -msgstr "Transparência invalida: %s" +msgid "invalid key symbol: \"%s\"" +msgstr "símbolo de tecla invalido: \"%s\"" #: src/parse.c:2010 #, c-format msgid "invalid layer: %s" msgstr "camada invalida: %s" -#: src/parse.c:2031 +#: src/taskbar.c:961 #, c-format -msgid "invalid tag in %s: %s" -msgstr "etiqueta invalida dentro de %s: %s" +msgid "invalid maxwidth for TaskList: %s" +msgstr "largura máxima invalida para etiqueta a Tasklist: %s" -#: src/parse.c:2052 -msgid "configuration error" -msgstr "Erro de configuração" +#: src/key.c:356 +#, c-format +msgid "invalid modifier: \"%c\"" +msgstr "modificador invalido: \"%c\"" + +#: src/parse.c:1989 +#, c-format +msgid "invalid opacity: %s" +msgstr "Transparência invalida: %s" #: src/root.c:131 #, c-format msgid "invalid root menu specified: \"%c\"" msgstr "menu root especificado é invalido: \"%c\"" -#: src/root.c:223 -msgid "Exit JWM" -msgstr "Sair do JWM?" - -#: src/root.c:224 -msgid "Are you sure?" -msgstr "Tem a certeza?" - -#: src/swallow.c:85 -msgid "cannot swallow a client with no name" -msgstr "" -"não podes inserir um cliente na etiqueta swallow sem especificar o nome" - -#: src/taskbar.c:444 src/winmenu.c:48 -msgid "Close" -msgstr "Fechar" - -#: src/taskbar.c:451 src/winmenu.c:66 -msgid "Minimize" -msgstr "Minimizar" - -#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 -#: src/winmenu.c:106 -msgid "Restore" -msgstr "Restaurar" - -#: src/taskbar.c:465 src/winmenu.c:179 -msgid "Send To" -msgstr "Enviar Para" - -#: src/taskbar.c:961 +#: src/parse.c:1972 #, c-format -msgid "invalid maxwidth for TaskList: %s" -msgstr "largura máxima invalida para etiqueta a Tasklist: %s" +msgid "invalid setting: %s" +msgstr "Configuração invalida: %s" -#: src/taskbar.c:975 +#: src/parse.c:384 #, fuzzy, c-format -msgid "invalid height for TaskList: %s" -msgstr "largura máxima invalida para etiqueta a Tasklist: %s" +msgid "invalid start tag: %s" +msgstr "Configuração invalida: %s" -#: src/tray.c:1064 +#: src/parse.c:2031 #, c-format -msgid "invalid tray layout: \"%s\"" -msgstr "layout do tabuleiro invalido: \"%s\"" +msgid "invalid tag in %s: %s" +msgstr "etiqueta invalida dentro de %s: %s" + +#: src/parse.c:871 +#, fuzzy, c-format +msgid "invalid text alignment: \"%s\"" +msgstr "alinhamento vertical do tabuleiro invalido: \"%s\"" #: src/tray.c:1102 #, c-format msgid "invalid tray horizontal alignment: \"%s\"" msgstr "alinhamento horizontal do tabuleiro invalido: \"%s\"" +#: src/tray.c:1064 +#, c-format +msgid "invalid tray layout: \"%s\"" +msgstr "layout do tabuleiro invalido: \"%s\"" + #: src/tray.c:1125 #, c-format msgid "invalid tray vertical alignment: \"%s\"" msgstr "alinhamento vertical do tabuleiro invalido: \"%s\"" -#: src/traybutton.c:89 -#, c-format -msgid "could not load tray icon: \"%s\"" -msgstr "nao foi possível carregar o ícone no tabuleiro: \"%s\"" - -#: src/traybutton.c:130 -msgid "no icon or label for TrayButton" -msgstr "ícone e nome não esta definido na etiqueta TrayButton" - -#: src/winmenu.c:49 -msgid "Kill" -msgstr "Terminar" - -#: src/winmenu.c:57 -msgid "Resize" -msgstr "Redimensionar" - -#: src/winmenu.c:60 -msgid "Move" -msgstr "Mover" - -#: src/winmenu.c:72 -msgid "Unshade" -msgstr "Desligar Sombra" - -#: src/winmenu.c:74 -msgid "Shade" -msgstr "Ligar Sombra" - -#: src/winmenu.c:81 -msgid "Maximize-y" -msgstr "Maximizar-y" +#: src/parse.c:1854 +#, fuzzy, c-format +msgid "invalid value for %s: \"%s\"" +msgstr "etiqueta invalida dentro de %s: %s" -#: src/winmenu.c:86 -msgid "Maximize-x" -msgstr "Maximizar-x" +#: src/parse.c:1611 +#, fuzzy, c-format +msgid "invalid value for 'enabled': \"%s\"" +msgstr "Açao do Traybutton invalida: \"%s\"" -#: src/winmenu.c:90 -msgid "Maximize" -msgstr "Maximizar" +#: src/key.c:467 +#, c-format +msgid "key binding: root menu \"%s\" not defined" +msgstr "" +"teclas de atalho: não foram especificadas para o menu root \"%s\" não esta " +"definido" -#: src/winmenu.c:112 -msgid "Unstick" -msgstr "Descolar" +#: src/key.c:326 +#, c-format +msgid "modifier not found for keysym 0x%0x" +msgstr "modificador não foi encontrado para o Keysym 0x%0x" -#: src/winmenu.c:114 -msgid "Stick" -msgstr "Colar" +#: src/key.c:452 +msgid "neither key nor keycode specified for Key" +msgstr "tecla e código de tecla não foi especificado para esta tecla" -#: src/winmenu.c:139 -msgid "Layer" -msgstr "Camada" +#: src/parse.c:824 +#, fuzzy +msgid "no action specified for Key" +msgstr "tecla e código de tecla não foi especificado para esta tecla" -#: src/winmenu.c:148 -msgid "[Above]" -msgstr "[Acima]" +#: src/traybutton.c:130 +msgid "no icon or label for TrayButton" +msgstr "ícone e nome não esta definido na etiqueta TrayButton" -#: src/winmenu.c:150 -msgid "Above" -msgstr "Acima" +#: src/parse.c:957 +msgid "no include file specified" +msgstr "" -#: src/winmenu.c:153 -msgid "[Normal]" -msgstr "[Normal]" +#: src/parse.c:1967 src/parse.c:1984 +#, fuzzy +msgid "no value specified" +msgstr "nenhum valor foi especificado para o fundo (background)" -#: src/winmenu.c:155 -msgid "Normal" -msgstr "Normal" +#: src/background.c:137 +msgid "no value specified for background" +msgstr "nenhum valor foi especificado para o fundo (background)" -#: src/winmenu.c:158 -msgid "[Below]" -msgstr "[Abaixo]" +#: src/dock.c:151 +msgid "only one Dock allowed" +msgstr "só um tabuleiro e permitido" -#: src/winmenu.c:160 -msgid "Below" -msgstr "Abaixo" +#: src/lex.c:473 src/parse.c:1893 +msgid "out of memory" +msgstr "Memoria insuficiente" -#~ msgid "invalid tray width: %d" -#~ msgstr "largura do tabuleiro invalida: %d" +#~ msgid "Fullscreen state will be shaped!" +#~ msgstr "Estado do ecrã expandido será moldado!" -#~ msgid "invalid tray height: %d" -#~ msgstr "altura do tabuleiro invalida: %d" +#~ msgid "cannot swallow the same client multiple times" +#~ msgstr "não podes inserir um cliente no swallow mais que uma vez" #~ msgid "invalid insert mode: \"%s\"" #~ msgstr "modo de inserção invalido: \"%s\"" @@ -474,8 +474,8 @@ msgstr "Abaixo" #~ msgid "invalid status window type: %s" #~ msgstr "tipo de fundo invalido: %s" -#~ msgid "cannot swallow the same client multiple times" -#~ msgstr "não podes inserir um cliente no swallow mais que uma vez" +#~ msgid "invalid tray height: %d" +#~ msgstr "altura do tabuleiro invalida: %d" -#~ msgid "Fullscreen state will be shaped!" -#~ msgstr "Estado do ecrã expandido será moldado!" +#~ msgid "invalid tray width: %d" +#~ msgstr "largura do tabuleiro invalida: %d" diff --git a/po/pt_BR.po b/po/pt_BR.po index a2c78f5c..00f61165 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -15,66 +15,80 @@ msgstr "" "X-Poedit-SourceCharset: UTF-8\n" "X-Generator: Poedit 1.8.7.1\n" -#: src/action.c:44 +#: src/parse.c:1829 #, c-format -msgid "invalid action: \"%s\"" -msgstr "Ação inválida: \"%s\"" +msgid "%s is empty" +msgstr "%s está vazio" -#: src/action.c:211 +#: src/lex.c:367 #, c-format -msgid "action: root menu \"%s\" not defined" -msgstr "ação: o menu raiz \"%s\" não está definido" +msgid "%s[%d]: invalid entity: \"%.8s\"" +msgstr "%s[%d]: entrada inválida: \"%.8s\"" -#: src/background.c:137 -msgid "no value specified for background" -msgstr "nenhum valor foi especificado para o papel de parede" +#: src/lex.c:201 +#, c-format +msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgstr "" +"%s[%u]: terminação da variável \"%s\" não corresponde à abertura da variável " +"\"%s\"" -#: src/background.c:149 +#: src/lex.c:213 #, c-format -msgid "invalid background type: \"%s\"" -msgstr "tipo de papel de parede inválido: \"%s\"" +msgid "%s[%u]: close tag \"%s\" without open tag" +msgstr "%s[%u]: terminação da variável \"%s\" sem variável de abertura" -#: src/background.c:294 +#: src/lex.c:216 #, c-format -msgid "background image not found: \"%s\"" -msgstr "imagem de papel de parede não encontrado: \"%s\"" +msgid "%s[%u]: invalid close tag" +msgstr "%s[%u]: terminação da variável inválida" -#: src/client.c:905 -msgid "Kill this window?" -msgstr "Matar janela?" +#: src/lex.c:234 +#, c-format +msgid "%s[%u]: invalid open tag" +msgstr "%s[%u]: abertura da variável inválida" -#: src/client.c:906 -msgid "This may cause data to be lost!" -msgstr "Isto pode causar perda de dados!" +#: src/lex.c:250 +#, c-format +msgid "%s[%u]: invalid tag" +msgstr "%s[%u]: variável inválida" -#: src/command.c:138 src/main.c:221 +#: src/lex.c:207 #, c-format -msgid "exec failed: (%s) %s" -msgstr "comando exec falhou (%s) %s" +msgid "%s[%u]: unexpected and invalid close tag" +msgstr "%s[%u]: terminação da variável inesperada e inválida" -#: src/confirm.c:69 -msgid "OK" -msgstr "OK" +#: src/lex.c:308 +#, c-format +msgid "%s[%u]: unexpected text: \"%s\"" +msgstr "%s[%u]: texto inesperado: \"%s\"" + +#: src/winmenu.c:150 +msgid "Above" +msgstr "Acima" + +#: src/root.c:224 +msgid "Are you sure?" +msgstr "Tem certeza?" + +#: src/winmenu.c:160 +msgid "Below" +msgstr "Abaixo" #: src/confirm.c:74 msgid "Cancel" msgstr "Cancelar" +#: src/taskbar.c:444 src/winmenu.c:48 +msgid "Close" +msgstr "Fechar" + #: src/confirm.c:308 msgid "Confirm" msgstr "Comfirmar" -#: src/desktop.c:336 -msgid "empty Desktops Name tag" -msgstr "variável Name Tag do Desktops vazia" - -#: src/dock.c:151 -msgid "only one Dock allowed" -msgstr "apenas um Dock é permitido" - -#: src/dock.c:232 -msgid "could not acquire system tray selection" -msgstr "impossível adquirir a seleção da área de notificação" +#: src/root.c:223 +msgid "Exit JWM" +msgstr "Sair do JWM" #: src/error.c:22 #, c-format @@ -86,379 +100,365 @@ msgstr "JWM: erro:" msgid "JWM: warning: " msgstr "JWM: aviso:" -#: src/error.c:77 -msgid "display is already managed" -msgstr "display já é gerenciado" +#: src/winmenu.c:49 +msgid "Kill" +msgstr "Terminar" -#: src/font.c:109 src/font.c:126 -#, c-format -msgid "could not load font: %s" -msgstr "impossível carregar fonte: %s" +#: src/client.c:905 +msgid "Kill this window?" +msgstr "Matar janela?" -#: src/font.c:116 src/font.c:133 -#, c-format -msgid "could not load the default font: %s" -msgstr "impossível carregar a fonte padrão: %s" +#: src/winmenu.c:139 +msgid "Layer" +msgstr "Camada" -#: src/font.c:315 -msgid "empty Font tag" -msgstr "variável Font vazia" +#: src/winmenu.c:90 +msgid "Maximize" +msgstr "Maximizar" -#: src/group.c:115 -msgid "invalid group class" -msgstr "classe de grupo inválida" +#: src/winmenu.c:86 +msgid "Maximize-x" +msgstr "Maximizar-x" -#: src/group.c:126 -msgid "invalid group name" -msgstr "nome de grupo inválido" +#: src/winmenu.c:81 +msgid "Maximize-y" +msgstr "Maximizar-y" -#: src/group.c:287 -#, c-format -msgid "invalid group desktop: %d" -msgstr "grupo desktop inválido: %d" +#: src/taskbar.c:451 src/winmenu.c:66 +msgid "Minimize" +msgstr "Minimizar" -#: src/image.c:220 -#, c-format -msgid "could not create read struct for PNG image: %s" -msgstr "impossível criar ou ler a estrutura para imagem PNG: %s" +#: src/winmenu.c:60 +msgid "Move" +msgstr "Mover" -#: src/image.c:233 -#, c-format -msgid "error reading PNG image: %s" -msgstr "erro lendo imagem PNG: %s" +#: src/winmenu.c:155 +msgid "Normal" +msgstr "Normal" -#: src/image.c:241 -#, c-format -msgid "could not create info struct for PNG image: %s" -msgstr "impossível criar estrutura de informação para imagem PNG: %s" +#: src/confirm.c:69 +msgid "OK" +msgstr "OK" + +#: src/winmenu.c:57 +msgid "Resize" +msgstr "Redimensionar" + +#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 +#: src/winmenu.c:106 +msgid "Restore" +msgstr "Restaurar" + +#: src/taskbar.c:465 src/winmenu.c:179 +msgid "Send To" +msgstr "Enviar para" + +#: src/winmenu.c:74 +msgid "Shade" +msgstr "Ativar sombra" #: src/key.c:318 msgid "Specified KeySym is not defined for any KeyCode" msgstr "KeySym especificado não está definido por nenhum KeyCode" -#: src/key.c:326 -#, c-format -msgid "modifier not found for keysym 0x%0x" -msgstr "modificador não foi encontrado para o keysym 0x%0x" +#: src/winmenu.c:114 +msgid "Stick" +msgstr "Colar" -#: src/key.c:356 -#, c-format -msgid "invalid modifier: \"%c\"" -msgstr "modificador inválido: \"%c\"" +#: src/client.c:906 +msgid "This may cause data to be lost!" +msgstr "Isto pode causar perda de dados!" -#: src/key.c:371 -#, c-format -msgid "invalid key symbol: \"%s\"" -msgstr "símbolo de tecla inválido: \"%s\"" +#: src/winmenu.c:72 +msgid "Unshade" +msgstr "Desativar sombra" -#: src/key.c:452 -msgid "neither key nor keycode specified for Key" -msgstr "tecla e código de tecla não foram especificados para Key" +#: src/winmenu.c:112 +msgid "Unstick" +msgstr "Descolar" -#: src/key.c:467 +#: src/winmenu.c:148 +msgid "[Above]" +msgstr "[Acima]" + +#: src/winmenu.c:158 +msgid "[Below]" +msgstr "[Abaixo]" + +#: src/winmenu.c:153 +msgid "[Normal]" +msgstr "[Normal]" + +#: src/action.c:211 #, c-format -msgid "key binding: root menu \"%s\" not defined" -msgstr "teclas de atalho: menu raiz \"%s\" não está definido" +msgid "action: root menu \"%s\" not defined" +msgstr "ação: o menu raiz \"%s\" não está definido" -#: src/lex.c:201 +#: src/background.c:294 #, c-format -msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgid "background image not found: \"%s\"" +msgstr "imagem de papel de parede não encontrado: \"%s\"" + +#: src/swallow.c:85 +msgid "cannot swallow a client with no name" msgstr "" -"%s[%u]: terminação da variável \"%s\" não corresponde à abertura da variável " -"\"%s\"" +"não é possível inserir um cliente na variável swallow sem especificar o nome" -#: src/lex.c:207 -#, c-format -msgid "%s[%u]: unexpected and invalid close tag" -msgstr "%s[%u]: terminação da variável inesperada e inválida" +#: src/parse.c:2052 +msgid "configuration error" +msgstr "erro de configuração" -#: src/lex.c:213 -#, c-format -msgid "%s[%u]: close tag \"%s\" without open tag" -msgstr "%s[%u]: terminação da variável \"%s\" sem variável de abertura" +#: src/dock.c:232 +msgid "could not acquire system tray selection" +msgstr "impossível adquirir a seleção da área de notificação" -#: src/lex.c:216 +#: src/image.c:241 #, c-format -msgid "%s[%u]: invalid close tag" -msgstr "%s[%u]: terminação da variável inválida" +msgid "could not create info struct for PNG image: %s" +msgstr "impossível criar estrutura de informação para imagem PNG: %s" -#: src/lex.c:234 +#: src/image.c:220 #, c-format -msgid "%s[%u]: invalid open tag" -msgstr "%s[%u]: abertura da variável inválida" +msgid "could not create read struct for PNG image: %s" +msgstr "impossível criar ou ler a estrutura para imagem PNG: %s" -#: src/lex.c:250 +#: src/font.c:109 src/font.c:126 #, c-format -msgid "%s[%u]: invalid tag" -msgstr "%s[%u]: variável inválida" +msgid "could not load font: %s" +msgstr "impossível carregar fonte: %s" -#: src/lex.c:308 +#: src/font.c:116 src/font.c:133 #, c-format -msgid "%s[%u]: unexpected text: \"%s\"" -msgstr "%s[%u]: texto inesperado: \"%s\"" +msgid "could not load the default font: %s" +msgstr "impossível carregar a fonte padrão: %s" -#: src/lex.c:367 +#: src/traybutton.c:89 #, c-format -msgid "%s[%d]: invalid entity: \"%.8s\"" -msgstr "%s[%d]: entrada inválida: \"%.8s\"" - -#: src/lex.c:473 src/parse.c:1893 -msgid "out of memory" -msgstr "Memória insuficiente" +msgid "could not load tray icon: \"%s\"" +msgstr "não foi possível carregar o ícone no painel: \"%s\"" #: src/parse.c:228 #, c-format msgid "could not open %s or %s" msgstr "impossível abrir %s ou %s" -#: src/parse.c:246 +#: src/parse.c:971 #, c-format -msgid "include depth (%d) exceeded" -msgstr "profundidade de includes (%d) excedido" +msgid "could not open included file: %s" +msgstr "impossível abrir arquivo incluído: %s" -#: src/parse.c:384 +#: src/parse.c:967 #, c-format -msgid "invalid start tag: %s" -msgstr "abertura de variável inválida: %s" +msgid "could not process include: %s" +msgstr "impossível processar include: %s" -#: src/parse.c:774 -#, c-format -msgid "invalid include: %s" -msgstr "include inválido: %s" +#: src/parse.c:1880 +#, fuzzy, c-format +msgid "could not read file: %s" +msgstr "impossível carregar fonte: %s" -#: src/parse.c:824 -msgid "no action specified for Key" -msgstr "nenhuma ação especificada para tecla" +#: src/error.c:77 +msgid "display is already managed" +msgstr "display já é gerenciado" -#: src/parse.c:847 -#, c-format -msgid "invalid Key action: \"%s\"" -msgstr "Ação Key inválida: \"%s\"" +#: src/desktop.c:336 +msgid "empty Desktops Name tag" +msgstr "variável Name Tag do Desktops vazia" -#: src/parse.c:871 -#, c-format -msgid "invalid text alignment: \"%s\"" -msgstr "alinhamento de texto inválido: \"%s\"" +#: src/font.c:315 +msgid "empty Font tag" +msgstr "variável Font vazia" -#: src/parse.c:957 -msgid "no include file specified" -msgstr "nenhum arquivo include especificado" +#: src/image.c:233 +#, c-format +msgid "error reading PNG image: %s" +msgstr "erro lendo imagem PNG: %s" -#: src/parse.c:967 +#: src/command.c:138 src/main.c:221 #, c-format -msgid "could not process include: %s" -msgstr "impossível processar include: %s" +msgid "exec failed: (%s) %s" +msgstr "comando exec falhou (%s) %s" -#: src/parse.c:971 +#: src/parse.c:246 #, c-format -msgid "could not open included file: %s" -msgstr "impossível abrir arquivo incluído: %s" +msgid "include depth (%d) exceeded" +msgstr "profundidade de includes (%d) excedido" -#: src/parse.c:1611 +#: src/parse.c:1836 #, c-format -msgid "invalid value for 'enabled': \"%s\"" -msgstr "valor inválido para 'enabled': \"%s\"" +msgid "invalid %s: \"%s\"" +msgstr "inválido %s: \"%s\"" #: src/parse.c:1752 #, c-format msgid "invalid Group Option: %s" msgstr "Opção de Grupo inválida: %s" -#: src/parse.c:1767 +#: src/parse.c:847 #, c-format -msgid "invalid decorations: %s" -msgstr "decorations inválido: \"%s\"" +msgid "invalid Key action: \"%s\"" +msgstr "Ação Key inválida: \"%s\"" -#: src/parse.c:1829 +#: src/action.c:44 #, c-format -msgid "%s is empty" -msgstr "%s está vazio" +msgid "invalid action: \"%s\"" +msgstr "Ação inválida: \"%s\"" -#: src/parse.c:1836 +#: src/background.c:149 #, c-format -msgid "invalid %s: \"%s\"" -msgstr "inválido %s: \"%s\"" +msgid "invalid background type: \"%s\"" +msgstr "tipo de papel de parede inválido: \"%s\"" -#: src/parse.c:1854 +#: src/parse.c:1767 #, c-format -msgid "invalid value for %s: \"%s\"" -msgstr "valor inválido para %s: \"%s\"" +msgid "invalid decorations: %s" +msgstr "decorations inválido: \"%s\"" -#: src/parse.c:1880 -#, fuzzy, c-format -msgid "could not read file: %s" -msgstr "impossível carregar fonte: %s" +#: src/group.c:115 +msgid "invalid group class" +msgstr "classe de grupo inválida" -#: src/parse.c:1967 src/parse.c:1984 -msgid "no value specified" -msgstr "nenhum valor foi especificado" +#: src/group.c:287 +#, c-format +msgid "invalid group desktop: %d" +msgstr "grupo desktop inválido: %d" -#: src/parse.c:1972 +#: src/group.c:126 +msgid "invalid group name" +msgstr "nome de grupo inválido" + +#: src/taskbar.c:975 #, c-format -msgid "invalid setting: %s" -msgstr "configuração inválida: %s" +msgid "invalid height for TaskList: %s" +msgstr "altura inválida para Tasklist: %s" -#: src/parse.c:1989 +#: src/parse.c:774 #, c-format -msgid "invalid opacity: %s" -msgstr "transparência inválida: %s" +msgid "invalid include: %s" +msgstr "include inválido: %s" + +#: src/key.c:371 +#, c-format +msgid "invalid key symbol: \"%s\"" +msgstr "símbolo de tecla inválido: \"%s\"" #: src/parse.c:2010 #, c-format msgid "invalid layer: %s" msgstr "camada inválida: %s" -#: src/parse.c:2031 +#: src/taskbar.c:961 #, c-format -msgid "invalid tag in %s: %s" -msgstr "variável inválida dentro de %s: %s" +msgid "invalid maxwidth for TaskList: %s" +msgstr "largura máxima inválida para Tasklist: %s" -#: src/parse.c:2052 -msgid "configuration error" -msgstr "erro de configuração" +#: src/key.c:356 +#, c-format +msgid "invalid modifier: \"%c\"" +msgstr "modificador inválido: \"%c\"" + +#: src/parse.c:1989 +#, c-format +msgid "invalid opacity: %s" +msgstr "transparência inválida: %s" #: src/root.c:131 #, c-format msgid "invalid root menu specified: \"%c\"" msgstr "menu root especificado é inválido: \"%c\"" -#: src/root.c:223 -msgid "Exit JWM" -msgstr "Sair do JWM" - -#: src/root.c:224 -msgid "Are you sure?" -msgstr "Tem certeza?" - -#: src/swallow.c:85 -msgid "cannot swallow a client with no name" -msgstr "" -"não é possível inserir um cliente na variável swallow sem especificar o nome" - -#: src/taskbar.c:444 src/winmenu.c:48 -msgid "Close" -msgstr "Fechar" - -#: src/taskbar.c:451 src/winmenu.c:66 -msgid "Minimize" -msgstr "Minimizar" - -#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 -#: src/winmenu.c:106 -msgid "Restore" -msgstr "Restaurar" - -#: src/taskbar.c:465 src/winmenu.c:179 -msgid "Send To" -msgstr "Enviar para" +#: src/parse.c:1972 +#, c-format +msgid "invalid setting: %s" +msgstr "configuração inválida: %s" -#: src/taskbar.c:961 +#: src/parse.c:384 #, c-format -msgid "invalid maxwidth for TaskList: %s" -msgstr "largura máxima inválida para Tasklist: %s" +msgid "invalid start tag: %s" +msgstr "abertura de variável inválida: %s" -#: src/taskbar.c:975 +#: src/parse.c:2031 #, c-format -msgid "invalid height for TaskList: %s" -msgstr "altura inválida para Tasklist: %s" +msgid "invalid tag in %s: %s" +msgstr "variável inválida dentro de %s: %s" -#: src/tray.c:1064 +#: src/parse.c:871 #, c-format -msgid "invalid tray layout: \"%s\"" -msgstr "layout do painel inválido: \"%s\"" +msgid "invalid text alignment: \"%s\"" +msgstr "alinhamento de texto inválido: \"%s\"" #: src/tray.c:1102 #, c-format msgid "invalid tray horizontal alignment: \"%s\"" msgstr "alinhamento horizontal do painel inválido: \"%s\"" +#: src/tray.c:1064 +#, c-format +msgid "invalid tray layout: \"%s\"" +msgstr "layout do painel inválido: \"%s\"" + #: src/tray.c:1125 #, c-format msgid "invalid tray vertical alignment: \"%s\"" msgstr "alinhamento vertical do painel inválido: \"%s\"" -#: src/traybutton.c:89 +#: src/parse.c:1854 #, c-format -msgid "could not load tray icon: \"%s\"" -msgstr "não foi possível carregar o ícone no painel: \"%s\"" - -#: src/traybutton.c:130 -msgid "no icon or label for TrayButton" -msgstr "ícone e nome não estão definidos para TrayButton" - -#: src/winmenu.c:49 -msgid "Kill" -msgstr "Terminar" - -#: src/winmenu.c:57 -msgid "Resize" -msgstr "Redimensionar" - -#: src/winmenu.c:60 -msgid "Move" -msgstr "Mover" - -#: src/winmenu.c:72 -msgid "Unshade" -msgstr "Desativar sombra" - -#: src/winmenu.c:74 -msgid "Shade" -msgstr "Ativar sombra" - -#: src/winmenu.c:81 -msgid "Maximize-y" -msgstr "Maximizar-y" +msgid "invalid value for %s: \"%s\"" +msgstr "valor inválido para %s: \"%s\"" -#: src/winmenu.c:86 -msgid "Maximize-x" -msgstr "Maximizar-x" +#: src/parse.c:1611 +#, c-format +msgid "invalid value for 'enabled': \"%s\"" +msgstr "valor inválido para 'enabled': \"%s\"" -#: src/winmenu.c:90 -msgid "Maximize" -msgstr "Maximizar" +#: src/key.c:467 +#, c-format +msgid "key binding: root menu \"%s\" not defined" +msgstr "teclas de atalho: menu raiz \"%s\" não está definido" -#: src/winmenu.c:112 -msgid "Unstick" -msgstr "Descolar" +#: src/key.c:326 +#, c-format +msgid "modifier not found for keysym 0x%0x" +msgstr "modificador não foi encontrado para o keysym 0x%0x" -#: src/winmenu.c:114 -msgid "Stick" -msgstr "Colar" +#: src/key.c:452 +msgid "neither key nor keycode specified for Key" +msgstr "tecla e código de tecla não foram especificados para Key" -#: src/winmenu.c:139 -msgid "Layer" -msgstr "Camada" +#: src/parse.c:824 +msgid "no action specified for Key" +msgstr "nenhuma ação especificada para tecla" -#: src/winmenu.c:148 -msgid "[Above]" -msgstr "[Acima]" +#: src/traybutton.c:130 +msgid "no icon or label for TrayButton" +msgstr "ícone e nome não estão definidos para TrayButton" -#: src/winmenu.c:150 -msgid "Above" -msgstr "Acima" +#: src/parse.c:957 +msgid "no include file specified" +msgstr "nenhum arquivo include especificado" -#: src/winmenu.c:153 -msgid "[Normal]" -msgstr "[Normal]" +#: src/parse.c:1967 src/parse.c:1984 +msgid "no value specified" +msgstr "nenhum valor foi especificado" -#: src/winmenu.c:155 -msgid "Normal" -msgstr "Normal" +#: src/background.c:137 +msgid "no value specified for background" +msgstr "nenhum valor foi especificado para o papel de parede" -#: src/winmenu.c:158 -msgid "[Below]" -msgstr "[Abaixo]" +#: src/dock.c:151 +msgid "only one Dock allowed" +msgstr "apenas um Dock é permitido" -#: src/winmenu.c:160 -msgid "Below" -msgstr "Abaixo" +#: src/lex.c:473 src/parse.c:1893 +msgid "out of memory" +msgstr "Memória insuficiente" -#~ msgid "invalid tray width: %d" -#~ msgstr "largura do painel inválida: %d" +#~ msgid "Fullscreen state will be shaped!" +#~ msgstr "Estado do ecrã expandido será moldado!" -#~ msgid "invalid tray height: %d" -#~ msgstr "altura do painel inválida: %d" +#~ msgid "cannot swallow the same client multiple times" +#~ msgstr "não pode inserir um cliente no swallow mais que uma vez" #~ msgid "invalid insert mode: \"%s\"" #~ msgstr "modo de inserção inválido: \"%s\"" @@ -466,8 +466,8 @@ msgstr "Abaixo" #~ msgid "invalid status window type: %s" #~ msgstr "tipo de fundo inválido: %s" -#~ msgid "cannot swallow the same client multiple times" -#~ msgstr "não pode inserir um cliente no swallow mais que uma vez" +#~ msgid "invalid tray height: %d" +#~ msgstr "altura do painel inválida: %d" -#~ msgid "Fullscreen state will be shaped!" -#~ msgstr "Estado do ecrã expandido será moldado!" +#~ msgid "invalid tray width: %d" +#~ msgstr "largura do painel inválida: %d" diff --git a/po/ru.po b/po/ru.po index 7381edc7..bf338110 100644 --- a/po/ru.po +++ b/po/ru.po @@ -16,66 +16,78 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: src/action.c:44 -#, fuzzy, c-format -msgid "invalid action: \"%s\"" -msgstr "недопустимое значение действия кнопки запуска: \"%s\"" +#: src/parse.c:1829 +#, c-format +msgid "%s is empty" +msgstr "" -#: src/action.c:211 -#, fuzzy, c-format -msgid "action: root menu \"%s\" not defined" -msgstr "кнопка запуска: главное меню %d не задано" +#: src/lex.c:367 +#, c-format +msgid "%s[%d]: invalid entity: \"%.8s\"" +msgstr "%s[%d]: ошибочное вхождение: \"%.8s\"" -#: src/background.c:137 -msgid "no value specified for background" -msgstr "не задано значение для цвета фона" +#: src/lex.c:201 +#, c-format +msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgstr "%s[%u]: закрывающий тэг \"%s\" не соответствует открывающему \"%s\"" -#: src/background.c:149 +#: src/lex.c:213 #, c-format -msgid "invalid background type: \"%s\"" -msgstr "неизвестный тип фона: \"%s\"" +msgid "%s[%u]: close tag \"%s\" without open tag" +msgstr "%s[%u]: закрывающий тэг \"%s\" без открывающего" -#: src/background.c:294 +#: src/lex.c:216 #, c-format -msgid "background image not found: \"%s\"" -msgstr "фоновое изображение не найдено: \"%s\"" +msgid "%s[%u]: invalid close tag" +msgstr "%s[%u]: неправильный закрывающий тэг" -#: src/client.c:905 -msgid "Kill this window?" -msgstr "Ликвидировать окно?" +#: src/lex.c:234 +#, c-format +msgid "%s[%u]: invalid open tag" +msgstr "%s[%u]: неправильный открывающий тэг" -#: src/client.c:906 -msgid "This may cause data to be lost!" -msgstr "Это может привести к потере данных!" +#: src/lex.c:250 +#, c-format +msgid "%s[%u]: invalid tag" +msgstr "%s[%u]: неправильный тэг" -#: src/command.c:138 src/main.c:221 +#: src/lex.c:207 #, c-format -msgid "exec failed: (%s) %s" -msgstr "не удалось выполнить: (%s) %s" +msgid "%s[%u]: unexpected and invalid close tag" +msgstr "%s[%u]: непонятный и неправильный закрывающий тэг" -#: src/confirm.c:69 -msgid "OK" -msgstr "" +#: src/lex.c:308 +#, c-format +msgid "%s[%u]: unexpected text: \"%s\"" +msgstr "%s[%u]: непонятный текст: \"%s\"" + +#: src/winmenu.c:150 +msgid "Above" +msgstr "Всегда наверху" + +#: src/root.c:224 +msgid "Are you sure?" +msgstr "Вы уверены?" + +#: src/winmenu.c:160 +msgid "Below" +msgstr "Всегда позади" #: src/confirm.c:74 msgid "Cancel" msgstr "Отмена" +#: src/taskbar.c:444 src/winmenu.c:48 +msgid "Close" +msgstr "Закрыть" + #: src/confirm.c:308 msgid "Confirm" msgstr "Подтверждение" -#: src/desktop.c:336 -msgid "empty Desktops Name tag" -msgstr "пустой тэг Desktops Name (название рабочего стола)" - -#: src/dock.c:151 -msgid "only one Dock allowed" -msgstr "можно использовать только один Dock (область уведомлений)" - -#: src/dock.c:232 -msgid "could not acquire system tray selection" -msgstr "не удалось получить активное приложение в панели задач" +#: src/root.c:223 +msgid "Exit JWM" +msgstr "Выход из JWM" #: src/error.c:22 #, c-format @@ -87,176 +99,192 @@ msgstr "" msgid "JWM: warning: " msgstr "" -#: src/error.c:77 -msgid "display is already managed" -msgstr "" +#: src/winmenu.c:49 +msgid "Kill" +msgstr "Ликвидировать" -#: src/font.c:109 src/font.c:126 -#, c-format -msgid "could not load font: %s" -msgstr "не удалось загрузить шрифт: %s" +#: src/client.c:905 +msgid "Kill this window?" +msgstr "Ликвидировать окно?" -#: src/font.c:116 src/font.c:133 -#, c-format -msgid "could not load the default font: %s" -msgstr "не удалось загрузить шрифт по-умолчанию: %s" +#: src/winmenu.c:139 +msgid "Layer" +msgstr "Расположение окна" -#: src/font.c:315 -msgid "empty Font tag" -msgstr "пустой тэг Font" +#: src/winmenu.c:90 +msgid "Maximize" +msgstr "Развернуть" -#: src/group.c:115 -msgid "invalid group class" -msgstr "недопустимое значение класса группы" +#: src/winmenu.c:86 +msgid "Maximize-x" +msgstr "Развернуть-x" -#: src/group.c:126 -msgid "invalid group name" -msgstr "недопустимое значение названия группы" +#: src/winmenu.c:81 +msgid "Maximize-y" +msgstr "Развернуть-y" -#: src/group.c:287 -#, c-format -msgid "invalid group desktop: %d" -msgstr "недопустимое значение рабочего стола группы: %d" +#: src/taskbar.c:451 src/winmenu.c:66 +msgid "Minimize" +msgstr "Свернуть" -#: src/image.c:220 -#, c-format -msgid "could not create read struct for PNG image: %s" -msgstr "не удалось прочитать структуру изображения PNG: %s" +#: src/winmenu.c:60 +msgid "Move" +msgstr "Переместить" -#: src/image.c:233 -#, c-format -msgid "error reading PNG image: %s" -msgstr "ошибка чтения изображения PNG: %s" +#: src/winmenu.c:155 +msgid "Normal" +msgstr "Также как другие" -#: src/image.c:241 -#, c-format -msgid "could not create info struct for PNG image: %s" -msgstr "ошибка создания структуры информации об изображении PNG: %s" +#: src/confirm.c:69 +msgid "OK" +msgstr "" + +#: src/winmenu.c:57 +msgid "Resize" +msgstr "Изменить размер" + +#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 +#: src/winmenu.c:106 +msgid "Restore" +msgstr "Восстановить" + +#: src/taskbar.c:465 src/winmenu.c:179 +msgid "Send To" +msgstr "Переместить на рабочий стол" + +#: src/winmenu.c:74 +msgid "Shade" +msgstr "Свернуть в заголовок" #: src/key.c:318 msgid "Specified KeySym is not defined for any KeyCode" msgstr "Указанный KeySym не определен ни для одного значения KeyCode" -#: src/key.c:326 -#, c-format -msgid "modifier not found for keysym 0x%0x" -msgstr "модификатор не найден для KeySym 0x%0x" +#: src/winmenu.c:114 +msgid "Stick" +msgstr "Всегда на видимом рабочем столе" -#: src/key.c:356 -#, c-format -msgid "invalid modifier: \"%c\"" -msgstr "недопустимое значение для модификатора: \"%c\"" +#: src/client.c:906 +msgid "This may cause data to be lost!" +msgstr "Это может привести к потере данных!" -#: src/key.c:371 -#, c-format -msgid "invalid key symbol: \"%s\"" -msgstr "недопустимое значение символа клавиши: \"%s\"" +#: src/winmenu.c:72 +msgid "Unshade" +msgstr "Развернуть из заголовка" -#: src/key.c:452 -msgid "neither key nor keycode specified for Key" -msgstr "ни символ, ни код клавиши не заданы в тэге Key" +#: src/winmenu.c:112 +msgid "Unstick" +msgstr "Только на этом рабочем столе" -#: src/key.c:467 +#: src/winmenu.c:148 +msgid "[Above]" +msgstr "[Всегда наверху]" + +#: src/winmenu.c:158 +msgid "[Below]" +msgstr "[Всегда позади]" + +#: src/winmenu.c:153 +msgid "[Normal]" +msgstr "[Также как другие]" + +#: src/action.c:211 #, fuzzy, c-format -msgid "key binding: root menu \"%s\" not defined" -msgstr "назначение клавиши: главное меню %d не задано" +msgid "action: root menu \"%s\" not defined" +msgstr "кнопка запуска: главное меню %d не задано" -#: src/lex.c:201 +#: src/background.c:294 #, c-format -msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" -msgstr "%s[%u]: закрывающий тэг \"%s\" не соответствует открывающему \"%s\"" +msgid "background image not found: \"%s\"" +msgstr "фоновое изображение не найдено: \"%s\"" -#: src/lex.c:207 -#, c-format -msgid "%s[%u]: unexpected and invalid close tag" -msgstr "%s[%u]: непонятный и неправильный закрывающий тэг" +#: src/swallow.c:85 +msgid "cannot swallow a client with no name" +msgstr "нельзя использовать микро-окно панели (swallow) без имени" -#: src/lex.c:213 -#, c-format -msgid "%s[%u]: close tag \"%s\" without open tag" -msgstr "%s[%u]: закрывающий тэг \"%s\" без открывающего" +#: src/parse.c:2052 +msgid "configuration error" +msgstr "ошибка конфигурации" -#: src/lex.c:216 -#, c-format -msgid "%s[%u]: invalid close tag" -msgstr "%s[%u]: неправильный закрывающий тэг" +#: src/dock.c:232 +msgid "could not acquire system tray selection" +msgstr "не удалось получить активное приложение в панели задач" -#: src/lex.c:234 +#: src/image.c:241 #, c-format -msgid "%s[%u]: invalid open tag" -msgstr "%s[%u]: неправильный открывающий тэг" +msgid "could not create info struct for PNG image: %s" +msgstr "ошибка создания структуры информации об изображении PNG: %s" -#: src/lex.c:250 +#: src/image.c:220 #, c-format -msgid "%s[%u]: invalid tag" -msgstr "%s[%u]: неправильный тэг" +msgid "could not create read struct for PNG image: %s" +msgstr "не удалось прочитать структуру изображения PNG: %s" -#: src/lex.c:308 +#: src/font.c:109 src/font.c:126 #, c-format -msgid "%s[%u]: unexpected text: \"%s\"" -msgstr "%s[%u]: непонятный текст: \"%s\"" +msgid "could not load font: %s" +msgstr "не удалось загрузить шрифт: %s" -#: src/lex.c:367 +#: src/font.c:116 src/font.c:133 #, c-format -msgid "%s[%d]: invalid entity: \"%.8s\"" -msgstr "%s[%d]: ошибочное вхождение: \"%.8s\"" +msgid "could not load the default font: %s" +msgstr "не удалось загрузить шрифт по-умолчанию: %s" -#: src/lex.c:473 src/parse.c:1893 -msgid "out of memory" -msgstr "недостаточно памяти" +#: src/traybutton.c:89 +#, c-format +msgid "could not load tray icon: \"%s\"" +msgstr "не удалось загрузить иконку для кнопки запуска: \"%s\"" #: src/parse.c:228 #, fuzzy, c-format msgid "could not open %s or %s" msgstr "не удалось загрузить шрифт: %s" -#: src/parse.c:246 -#, c-format -msgid "include depth (%d) exceeded" -msgstr "" +#: src/parse.c:971 +#, fuzzy, c-format +msgid "could not open included file: %s" +msgstr "не удалось загрузить шрифт: %s" -#: src/parse.c:384 +#: src/parse.c:967 #, fuzzy, c-format -msgid "invalid start tag: %s" -msgstr "недопустимое значение положительного числа: %s" +msgid "could not process include: %s" +msgstr "не удалось загрузить шрифт: %s" -#: src/parse.c:774 +#: src/parse.c:1880 #, fuzzy, c-format -msgid "invalid include: %s" -msgstr "недопустимое значение расположения окна: %s" +msgid "could not read file: %s" +msgstr "не удалось загрузить шрифт: %s" -#: src/parse.c:824 -#, fuzzy -msgid "no action specified for Key" -msgstr "ни символ, ни код клавиши не заданы в тэге Key" +#: src/error.c:77 +msgid "display is already managed" +msgstr "" -#: src/parse.c:847 -#, fuzzy, c-format -msgid "invalid Key action: \"%s\"" -msgstr "недопустимое значение действия кнопки запуска: \"%s\"" +#: src/desktop.c:336 +msgid "empty Desktops Name tag" +msgstr "пустой тэг Desktops Name (название рабочего стола)" -#: src/parse.c:871 -#, fuzzy, c-format -msgid "invalid text alignment: \"%s\"" -msgstr "недопустимое значение вертикального выравнивания панели: \"%s\"" +#: src/font.c:315 +msgid "empty Font tag" +msgstr "пустой тэг Font" -#: src/parse.c:957 -msgid "no include file specified" -msgstr "" +#: src/image.c:233 +#, c-format +msgid "error reading PNG image: %s" +msgstr "ошибка чтения изображения PNG: %s" -#: src/parse.c:967 -#, fuzzy, c-format -msgid "could not process include: %s" -msgstr "не удалось загрузить шрифт: %s" +#: src/command.c:138 src/main.c:221 +#, c-format +msgid "exec failed: (%s) %s" +msgstr "не удалось выполнить: (%s) %s" -#: src/parse.c:971 -#, fuzzy, c-format -msgid "could not open included file: %s" -msgstr "не удалось загрузить шрифт: %s" +#: src/parse.c:246 +#, c-format +msgid "include depth (%d) exceeded" +msgstr "" -#: src/parse.c:1611 +#: src/parse.c:1836 #, fuzzy, c-format -msgid "invalid value for 'enabled': \"%s\"" +msgid "invalid %s: \"%s\"" msgstr "недопустимое значение действия кнопки запуска: \"%s\"" #: src/parse.c:1752 @@ -264,203 +292,176 @@ msgstr "недопустимое значение действия кнопки msgid "invalid Group Option: %s" msgstr "недопустимое значение рабочего стола группы: %d" +#: src/parse.c:847 +#, fuzzy, c-format +msgid "invalid Key action: \"%s\"" +msgstr "недопустимое значение действия кнопки запуска: \"%s\"" + +#: src/action.c:44 +#, fuzzy, c-format +msgid "invalid action: \"%s\"" +msgstr "недопустимое значение действия кнопки запуска: \"%s\"" + +#: src/background.c:149 +#, c-format +msgid "invalid background type: \"%s\"" +msgstr "неизвестный тип фона: \"%s\"" + #: src/parse.c:1767 #, fuzzy, c-format msgid "invalid decorations: %s" msgstr "недопустимое значение действия кнопки запуска: \"%s\"" -#: src/parse.c:1829 +#: src/group.c:115 +msgid "invalid group class" +msgstr "недопустимое значение класса группы" + +#: src/group.c:287 #, c-format -msgid "%s is empty" -msgstr "" +msgid "invalid group desktop: %d" +msgstr "недопустимое значение рабочего стола группы: %d" -#: src/parse.c:1836 -#, fuzzy, c-format -msgid "invalid %s: \"%s\"" -msgstr "недопустимое значение действия кнопки запуска: \"%s\"" +#: src/group.c:126 +msgid "invalid group name" +msgstr "недопустимое значение названия группы" -#: src/parse.c:1854 +#: src/taskbar.c:975 #, fuzzy, c-format -msgid "invalid value for %s: \"%s\"" -msgstr "недопустимое значение тэга в %s: %s" +msgid "invalid height for TaskList: %s" +msgstr "" +"недопустимое значение макс. ширины кнопки в панели задач (TaskList): %s" -#: src/parse.c:1880 +#: src/parse.c:774 #, fuzzy, c-format -msgid "could not read file: %s" -msgstr "не удалось загрузить шрифт: %s" - -#: src/parse.c:1967 src/parse.c:1984 -#, fuzzy -msgid "no value specified" -msgstr "не задано значение для цвета фона" - -#: src/parse.c:1972 -#, c-format -msgid "invalid setting: %s" -msgstr "недопустимое значение положительного числа: %s" +msgid "invalid include: %s" +msgstr "недопустимое значение расположения окна: %s" -#: src/parse.c:1989 +#: src/key.c:371 #, c-format -msgid "invalid opacity: %s" -msgstr "недопустимое значение прозрачности: %s" +msgid "invalid key symbol: \"%s\"" +msgstr "недопустимое значение символа клавиши: \"%s\"" #: src/parse.c:2010 #, c-format msgid "invalid layer: %s" msgstr "недопустимое значение расположения окна: %s" -#: src/parse.c:2031 +#: src/taskbar.c:961 #, c-format -msgid "invalid tag in %s: %s" -msgstr "недопустимое значение тэга в %s: %s" +msgid "invalid maxwidth for TaskList: %s" +msgstr "" +"недопустимое значение макс. ширины кнопки в панели задач (TaskList): %s" -#: src/parse.c:2052 -msgid "configuration error" -msgstr "ошибка конфигурации" +#: src/key.c:356 +#, c-format +msgid "invalid modifier: \"%c\"" +msgstr "недопустимое значение для модификатора: \"%c\"" + +#: src/parse.c:1989 +#, c-format +msgid "invalid opacity: %s" +msgstr "недопустимое значение прозрачности: %s" #: src/root.c:131 #, c-format msgid "invalid root menu specified: \"%c\"" msgstr "неправильно задано главное меню: \"%c\"" -#: src/root.c:223 -msgid "Exit JWM" -msgstr "Выход из JWM" - -#: src/root.c:224 -msgid "Are you sure?" -msgstr "Вы уверены?" - -#: src/swallow.c:85 -msgid "cannot swallow a client with no name" -msgstr "нельзя использовать микро-окно панели (swallow) без имени" - -#: src/taskbar.c:444 src/winmenu.c:48 -msgid "Close" -msgstr "Закрыть" - -#: src/taskbar.c:451 src/winmenu.c:66 -msgid "Minimize" -msgstr "Свернуть" - -#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 -#: src/winmenu.c:106 -msgid "Restore" -msgstr "Восстановить" - -#: src/taskbar.c:465 src/winmenu.c:179 -msgid "Send To" -msgstr "Переместить на рабочий стол" - -#: src/taskbar.c:961 +#: src/parse.c:1972 #, c-format -msgid "invalid maxwidth for TaskList: %s" -msgstr "" -"недопустимое значение макс. ширины кнопки в панели задач (TaskList): %s" +msgid "invalid setting: %s" +msgstr "недопустимое значение положительного числа: %s" -#: src/taskbar.c:975 +#: src/parse.c:384 #, fuzzy, c-format -msgid "invalid height for TaskList: %s" -msgstr "" -"недопустимое значение макс. ширины кнопки в панели задач (TaskList): %s" +msgid "invalid start tag: %s" +msgstr "недопустимое значение положительного числа: %s" -#: src/tray.c:1064 +#: src/parse.c:2031 #, c-format -msgid "invalid tray layout: \"%s\"" -msgstr "недопустимое значение расположения панели: \"%s\"" +msgid "invalid tag in %s: %s" +msgstr "недопустимое значение тэга в %s: %s" + +#: src/parse.c:871 +#, fuzzy, c-format +msgid "invalid text alignment: \"%s\"" +msgstr "недопустимое значение вертикального выравнивания панели: \"%s\"" #: src/tray.c:1102 #, c-format msgid "invalid tray horizontal alignment: \"%s\"" msgstr "недопустимое значение горизонтального выравнивания панели: \"%s\"" +#: src/tray.c:1064 +#, c-format +msgid "invalid tray layout: \"%s\"" +msgstr "недопустимое значение расположения панели: \"%s\"" + #: src/tray.c:1125 #, c-format msgid "invalid tray vertical alignment: \"%s\"" msgstr "недопустимое значение вертикального выравнивания панели: \"%s\"" -#: src/traybutton.c:89 -#, c-format -msgid "could not load tray icon: \"%s\"" -msgstr "не удалось загрузить иконку для кнопки запуска: \"%s\"" - -#: src/traybutton.c:130 -msgid "no icon or label for TrayButton" -msgstr "не заданы ни иконка, ни текст кнопки запуска" - -#: src/winmenu.c:49 -msgid "Kill" -msgstr "Ликвидировать" - -#: src/winmenu.c:57 -msgid "Resize" -msgstr "Изменить размер" - -#: src/winmenu.c:60 -msgid "Move" -msgstr "Переместить" - -#: src/winmenu.c:72 -msgid "Unshade" -msgstr "Развернуть из заголовка" - -#: src/winmenu.c:74 -msgid "Shade" -msgstr "Свернуть в заголовок" - -#: src/winmenu.c:81 -msgid "Maximize-y" -msgstr "Развернуть-y" +#: src/parse.c:1854 +#, fuzzy, c-format +msgid "invalid value for %s: \"%s\"" +msgstr "недопустимое значение тэга в %s: %s" -#: src/winmenu.c:86 -msgid "Maximize-x" -msgstr "Развернуть-x" +#: src/parse.c:1611 +#, fuzzy, c-format +msgid "invalid value for 'enabled': \"%s\"" +msgstr "недопустимое значение действия кнопки запуска: \"%s\"" -#: src/winmenu.c:90 -msgid "Maximize" -msgstr "Развернуть" +#: src/key.c:467 +#, fuzzy, c-format +msgid "key binding: root menu \"%s\" not defined" +msgstr "назначение клавиши: главное меню %d не задано" -#: src/winmenu.c:112 -msgid "Unstick" -msgstr "Только на этом рабочем столе" +#: src/key.c:326 +#, c-format +msgid "modifier not found for keysym 0x%0x" +msgstr "модификатор не найден для KeySym 0x%0x" -#: src/winmenu.c:114 -msgid "Stick" -msgstr "Всегда на видимом рабочем столе" +#: src/key.c:452 +msgid "neither key nor keycode specified for Key" +msgstr "ни символ, ни код клавиши не заданы в тэге Key" -#: src/winmenu.c:139 -msgid "Layer" -msgstr "Расположение окна" +#: src/parse.c:824 +#, fuzzy +msgid "no action specified for Key" +msgstr "ни символ, ни код клавиши не заданы в тэге Key" -#: src/winmenu.c:148 -msgid "[Above]" -msgstr "[Всегда наверху]" +#: src/traybutton.c:130 +msgid "no icon or label for TrayButton" +msgstr "не заданы ни иконка, ни текст кнопки запуска" -#: src/winmenu.c:150 -msgid "Above" -msgstr "Всегда наверху" +#: src/parse.c:957 +msgid "no include file specified" +msgstr "" -#: src/winmenu.c:153 -msgid "[Normal]" -msgstr "[Также как другие]" +#: src/parse.c:1967 src/parse.c:1984 +#, fuzzy +msgid "no value specified" +msgstr "не задано значение для цвета фона" -#: src/winmenu.c:155 -msgid "Normal" -msgstr "Также как другие" +#: src/background.c:137 +msgid "no value specified for background" +msgstr "не задано значение для цвета фона" -#: src/winmenu.c:158 -msgid "[Below]" -msgstr "[Всегда позади]" +#: src/dock.c:151 +msgid "only one Dock allowed" +msgstr "можно использовать только один Dock (область уведомлений)" -#: src/winmenu.c:160 -msgid "Below" -msgstr "Всегда позади" +#: src/lex.c:473 src/parse.c:1893 +msgid "out of memory" +msgstr "недостаточно памяти" -#~ msgid "invalid tray width: %d" -#~ msgstr "недопустимое значение ширины панели: %d" +#~ msgid "Fullscreen state will be shaped!" +#~ msgstr "Применено оформление в полноэкранном режиме!" -#~ msgid "invalid tray height: %d" -#~ msgstr "недопустимое значение высоты панели: %d" +#~ msgid "cannot swallow the same client multiple times" +#~ msgstr "" +#~ "нельзя использовать одно и то же микро-окно панели (swallow) несколько раз" #~ msgid "invalid insert mode: \"%s\"" #~ msgstr "недопустимое значение режима вставки: \"%s\"" @@ -468,9 +469,8 @@ msgstr "Всегда позади" #~ msgid "invalid status window type: %s" #~ msgstr "недопустимое значение типа статусного окна для перемещения: %s" -#~ msgid "cannot swallow the same client multiple times" -#~ msgstr "" -#~ "нельзя использовать одно и то же микро-окно панели (swallow) несколько раз" +#~ msgid "invalid tray height: %d" +#~ msgstr "недопустимое значение высоты панели: %d" -#~ msgid "Fullscreen state will be shaped!" -#~ msgstr "Применено оформление в полноэкранном режиме!" +#~ msgid "invalid tray width: %d" +#~ msgstr "недопустимое значение ширины панели: %d" diff --git a/po/zh_CN.po b/po/zh_CN.po index ba22d0b3..7c2e8a51 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -16,66 +16,78 @@ msgstr "" "X-Generator: Poedit 1.8.4\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: src/action.c:44 +#: src/parse.c:1829 #, c-format -msgid "invalid action: \"%s\"" -msgstr "无效操作:\"%s\"" +msgid "%s is empty" +msgstr "" -#: src/action.c:211 +#: src/lex.c:367 #, c-format -msgid "action: root menu \"%s\" not defined" -msgstr "操作:主菜单 \"%s\" 未定义" +msgid "%s[%d]: invalid entity: \"%.8s\"" +msgstr "%s[%d]:无效的实体:\"%.8s\"" -#: src/background.c:137 -msgid "no value specified for background" -msgstr "背景图片未定义" +#: src/lex.c:201 +#, c-format +msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgstr "%s[%u]:关闭标签 \"%s\" 与打开标签 \"%s\" 不匹配" -#: src/background.c:149 +#: src/lex.c:213 #, c-format -msgid "invalid background type: \"%s\"" -msgstr "无效的背景图片格式:\"%s\"" +msgid "%s[%u]: close tag \"%s\" without open tag" +msgstr "%s[%u]:未找到与关闭标签 \"%s\" 匹配的打开标签" -#: src/background.c:294 +#: src/lex.c:216 #, c-format -msgid "background image not found: \"%s\"" -msgstr "未找到背景图片:\"%s\"" +msgid "%s[%u]: invalid close tag" +msgstr "%s[%u]:无效的关闭标签" -#: src/client.c:905 -msgid "Kill this window?" -msgstr "强制结束该窗口?" +#: src/lex.c:234 +#, c-format +msgid "%s[%u]: invalid open tag" +msgstr "%s[%u]:无效的打开标签" -#: src/client.c:906 -msgid "This may cause data to be lost!" -msgstr "这可能导致数据丢失!" +#: src/lex.c:250 +#, c-format +msgid "%s[%u]: invalid tag" +msgstr "%s[%u]:无效的标签" -#: src/command.c:138 src/main.c:221 +#: src/lex.c:207 #, c-format -msgid "exec failed: (%s) %s" -msgstr "执行失败:(%s) %s" +msgid "%s[%u]: unexpected and invalid close tag" +msgstr "%s[%u]:未预料且无效的关闭标签" -#: src/confirm.c:69 -msgid "OK" -msgstr "确定" +#: src/lex.c:308 +#, c-format +msgid "%s[%u]: unexpected text: \"%s\"" +msgstr "%s[%u]:未预料的文字:\"%s\"" + +#: src/winmenu.c:150 +msgid "Above" +msgstr "置顶" + +#: src/root.c:224 +msgid "Are you sure?" +msgstr "确认吗?" + +#: src/winmenu.c:160 +msgid "Below" +msgstr "置底" #: src/confirm.c:74 msgid "Cancel" msgstr "取消" +#: src/taskbar.c:444 src/winmenu.c:48 +msgid "Close" +msgstr "关闭" + #: src/confirm.c:308 msgid "Confirm" msgstr "确认操作" -#: src/desktop.c:336 -msgid "empty Desktops Name tag" -msgstr "空的 Desktops Name 标签" - -#: src/dock.c:151 -msgid "only one Dock allowed" -msgstr "仅允许一个 Dock" - -#: src/dock.c:232 -msgid "could not acquire system tray selection" -msgstr "无法获取系统托盘选择" +#: src/root.c:223 +msgid "Exit JWM" +msgstr "退出 JWM" #: src/error.c:22 #, c-format @@ -87,375 +99,363 @@ msgstr "" msgid "JWM: warning: " msgstr "" -#: src/error.c:77 -msgid "display is already managed" -msgstr "" +#: src/winmenu.c:49 +msgid "Kill" +msgstr "强制结束" -#: src/font.c:109 src/font.c:126 -#, c-format -msgid "could not load font: %s" -msgstr "无法加载字体:%s" +#: src/client.c:905 +msgid "Kill this window?" +msgstr "强制结束该窗口?" -#: src/font.c:116 src/font.c:133 -#, c-format -msgid "could not load the default font: %s" -msgstr "无法加载默认字体:%s" +#: src/winmenu.c:139 +msgid "Layer" +msgstr "层" -#: src/font.c:315 -msgid "empty Font tag" -msgstr "空的 Font 标签" +#: src/winmenu.c:90 +msgid "Maximize" +msgstr "最大化" -#: src/group.c:115 -msgid "invalid group class" -msgstr "" +#: src/winmenu.c:86 +msgid "Maximize-x" +msgstr "横向最大化" -#: src/group.c:126 -msgid "invalid group name" -msgstr "" +#: src/winmenu.c:81 +msgid "Maximize-y" +msgstr "纵向最大化" -#: src/group.c:287 -#, c-format -msgid "invalid group desktop: %d" -msgstr "" +#: src/taskbar.c:451 src/winmenu.c:66 +msgid "Minimize" +msgstr "最小化" -#: src/image.c:220 -#, c-format -msgid "could not create read struct for PNG image: %s" -msgstr "" +#: src/winmenu.c:60 +msgid "Move" +msgstr "移动" -#: src/image.c:233 -#, c-format -msgid "error reading PNG image: %s" -msgstr "读取 PNG 图像时发生错误:%s" +#: src/winmenu.c:155 +msgid "Normal" +msgstr "正常" -#: src/image.c:241 -#, c-format -msgid "could not create info struct for PNG image: %s" -msgstr "" +#: src/confirm.c:69 +msgid "OK" +msgstr "确定" + +#: src/winmenu.c:57 +msgid "Resize" +msgstr "改变大小" + +#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 +#: src/winmenu.c:106 +msgid "Restore" +msgstr "恢复" + +#: src/taskbar.c:465 src/winmenu.c:179 +msgid "Send To" +msgstr "发送到桌面" + +#: src/winmenu.c:74 +msgid "Shade" +msgstr "向上收起" #: src/key.c:318 msgid "Specified KeySym is not defined for any KeyCode" msgstr "指定的 KeySym 未被任何 KeyCode 定义" -#: src/key.c:326 -#, c-format -msgid "modifier not found for keysym 0x%0x" -msgstr "未找到 KeySym 0x%0x 的修饰键" +#: src/winmenu.c:114 +msgid "Stick" +msgstr "固定" -#: src/key.c:356 -#, c-format -msgid "invalid modifier: \"%c\"" -msgstr "无效的修饰键:\"%c\"" +#: src/client.c:906 +msgid "This may cause data to be lost!" +msgstr "这可能导致数据丢失!" -#: src/key.c:371 -#, c-format -msgid "invalid key symbol: \"%s\"" -msgstr "无效的按键符号:\"%s\"" +#: src/winmenu.c:72 +msgid "Unshade" +msgstr "向下展开" -#: src/key.c:452 -msgid "neither key nor keycode specified for Key" -msgstr "key 或 keycode 均未被指定给 Key" +#: src/winmenu.c:112 +msgid "Unstick" +msgstr "解除固定" -#: src/key.c:467 -#, c-format -msgid "key binding: root menu \"%s\" not defined" -msgstr "按键绑定:主菜单 \"%s\" 未定义" +#: src/winmenu.c:148 +msgid "[Above]" +msgstr "[当前:置顶]" -#: src/lex.c:201 -#, c-format -msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" -msgstr "%s[%u]:关闭标签 \"%s\" 与打开标签 \"%s\" 不匹配" +#: src/winmenu.c:158 +msgid "[Below]" +msgstr "[当前:置底]" -#: src/lex.c:207 -#, c-format -msgid "%s[%u]: unexpected and invalid close tag" -msgstr "%s[%u]:未预料且无效的关闭标签" +#: src/winmenu.c:153 +msgid "[Normal]" +msgstr "[当前:正常]" -#: src/lex.c:213 +#: src/action.c:211 #, c-format -msgid "%s[%u]: close tag \"%s\" without open tag" -msgstr "%s[%u]:未找到与关闭标签 \"%s\" 匹配的打开标签" +msgid "action: root menu \"%s\" not defined" +msgstr "操作:主菜单 \"%s\" 未定义" -#: src/lex.c:216 +#: src/background.c:294 #, c-format -msgid "%s[%u]: invalid close tag" -msgstr "%s[%u]:无效的关闭标签" +msgid "background image not found: \"%s\"" +msgstr "未找到背景图片:\"%s\"" -#: src/lex.c:234 +#: src/swallow.c:85 +msgid "cannot swallow a client with no name" +msgstr "" + +#: src/parse.c:2052 +msgid "configuration error" +msgstr "配置文件错误" + +#: src/dock.c:232 +msgid "could not acquire system tray selection" +msgstr "无法获取系统托盘选择" + +#: src/image.c:241 #, c-format -msgid "%s[%u]: invalid open tag" -msgstr "%s[%u]:无效的打开标签" +msgid "could not create info struct for PNG image: %s" +msgstr "" -#: src/lex.c:250 +#: src/image.c:220 #, c-format -msgid "%s[%u]: invalid tag" -msgstr "%s[%u]:无效的标签" +msgid "could not create read struct for PNG image: %s" +msgstr "" -#: src/lex.c:308 +#: src/font.c:109 src/font.c:126 #, c-format -msgid "%s[%u]: unexpected text: \"%s\"" -msgstr "%s[%u]:未预料的文字:\"%s\"" +msgid "could not load font: %s" +msgstr "无法加载字体:%s" -#: src/lex.c:367 +#: src/font.c:116 src/font.c:133 #, c-format -msgid "%s[%d]: invalid entity: \"%.8s\"" -msgstr "%s[%d]:无效的实体:\"%.8s\"" +msgid "could not load the default font: %s" +msgstr "无法加载默认字体:%s" -#: src/lex.c:473 src/parse.c:1893 -msgid "out of memory" -msgstr "内存不足" +#: src/traybutton.c:89 +#, c-format +msgid "could not load tray icon: \"%s\"" +msgstr "无法加载托盘图标:\"%s\"" #: src/parse.c:228 #, fuzzy, c-format msgid "could not open %s or %s" msgstr "无法加载字体:%s" -#: src/parse.c:246 -#, c-format -msgid "include depth (%d) exceeded" -msgstr "" +#: src/parse.c:971 +#, fuzzy, c-format +msgid "could not open included file: %s" +msgstr "无法加载字体:%s" -#: src/parse.c:384 +#: src/parse.c:967 #, fuzzy, c-format -msgid "invalid start tag: %s" -msgstr "无效的设置:\"%s\"" +msgid "could not process include: %s" +msgstr "无法加载字体:%s" -#: src/parse.c:774 +#: src/parse.c:1880 #, fuzzy, c-format -msgid "invalid include: %s" -msgstr "无效的设置:\"%s\"" +msgid "could not read file: %s" +msgstr "无法加载字体:%s" -#: src/parse.c:824 -#, fuzzy -msgid "no action specified for Key" -msgstr "key 或 keycode 均未被指定给 Key" +#: src/error.c:77 +msgid "display is already managed" +msgstr "" -#: src/parse.c:847 -#, fuzzy, c-format -msgid "invalid Key action: \"%s\"" -msgstr "无效操作:\"%s\"" +#: src/desktop.c:336 +msgid "empty Desktops Name tag" +msgstr "空的 Desktops Name 标签" -#: src/parse.c:871 -#, fuzzy, c-format -msgid "invalid text alignment: \"%s\"" -msgstr "无效的托盘垂直对齐:\"%s\"" +#: src/font.c:315 +msgid "empty Font tag" +msgstr "空的 Font 标签" -#: src/parse.c:957 -msgid "no include file specified" +#: src/image.c:233 +#, c-format +msgid "error reading PNG image: %s" +msgstr "读取 PNG 图像时发生错误:%s" + +#: src/command.c:138 src/main.c:221 +#, c-format +msgid "exec failed: (%s) %s" +msgstr "执行失败:(%s) %s" + +#: src/parse.c:246 +#, c-format +msgid "include depth (%d) exceeded" msgstr "" -#: src/parse.c:967 +#: src/parse.c:1836 #, fuzzy, c-format -msgid "could not process include: %s" -msgstr "无法加载字体:%s" +msgid "invalid %s: \"%s\"" +msgstr "无效操作:\"%s\"" -#: src/parse.c:971 +#: src/parse.c:1752 #, fuzzy, c-format -msgid "could not open included file: %s" -msgstr "无法加载字体:%s" +msgid "invalid Group Option: %s" +msgstr "无效操作:\"%s\"" -#: src/parse.c:1611 +#: src/parse.c:847 #, fuzzy, c-format -msgid "invalid value for 'enabled': \"%s\"" +msgid "invalid Key action: \"%s\"" msgstr "无效操作:\"%s\"" -#: src/parse.c:1752 -#, fuzzy, c-format -msgid "invalid Group Option: %s" +#: src/action.c:44 +#, c-format +msgid "invalid action: \"%s\"" msgstr "无效操作:\"%s\"" +#: src/background.c:149 +#, c-format +msgid "invalid background type: \"%s\"" +msgstr "无效的背景图片格式:\"%s\"" + #: src/parse.c:1767 #, fuzzy, c-format msgid "invalid decorations: %s" msgstr "无效操作:\"%s\"" -#: src/parse.c:1829 +#: src/group.c:115 +msgid "invalid group class" +msgstr "" + +#: src/group.c:287 #, c-format -msgid "%s is empty" +msgid "invalid group desktop: %d" msgstr "" -#: src/parse.c:1836 -#, fuzzy, c-format -msgid "invalid %s: \"%s\"" -msgstr "无效操作:\"%s\"" +#: src/group.c:126 +msgid "invalid group name" +msgstr "" -#: src/parse.c:1854 +#: src/taskbar.c:975 #, fuzzy, c-format -msgid "invalid value for %s: \"%s\"" -msgstr "%s 含无效标签:%s" +msgid "invalid height for TaskList: %s" +msgstr "无效的任务列表最大宽度:%s" -#: src/parse.c:1880 +#: src/parse.c:774 #, fuzzy, c-format -msgid "could not read file: %s" -msgstr "无法加载字体:%s" - -#: src/parse.c:1967 src/parse.c:1984 -#, fuzzy -msgid "no value specified" -msgstr "背景图片未定义" - -#: src/parse.c:1972 -#, c-format -msgid "invalid setting: %s" +msgid "invalid include: %s" msgstr "无效的设置:\"%s\"" -#: src/parse.c:1989 +#: src/key.c:371 #, c-format -msgid "invalid opacity: %s" -msgstr "无效的透明度:\"%s\"" +msgid "invalid key symbol: \"%s\"" +msgstr "无效的按键符号:\"%s\"" #: src/parse.c:2010 #, fuzzy, c-format msgid "invalid layer: %s" msgstr "无效的透明度:\"%s\"" -#: src/parse.c:2031 +#: src/taskbar.c:961 #, c-format -msgid "invalid tag in %s: %s" -msgstr "%s 含无效标签:%s" +msgid "invalid maxwidth for TaskList: %s" +msgstr "无效的任务列表最大宽度:%s" -#: src/parse.c:2052 -msgid "configuration error" -msgstr "配置文件错误" +#: src/key.c:356 +#, c-format +msgid "invalid modifier: \"%c\"" +msgstr "无效的修饰键:\"%c\"" + +#: src/parse.c:1989 +#, c-format +msgid "invalid opacity: %s" +msgstr "无效的透明度:\"%s\"" #: src/root.c:131 #, c-format msgid "invalid root menu specified: \"%c\"" msgstr "指定的主菜单无效:\"%c\"" -#: src/root.c:223 -msgid "Exit JWM" -msgstr "退出 JWM" - -#: src/root.c:224 -msgid "Are you sure?" -msgstr "确认吗?" - -#: src/swallow.c:85 -msgid "cannot swallow a client with no name" -msgstr "" - -#: src/taskbar.c:444 src/winmenu.c:48 -msgid "Close" -msgstr "关闭" - -#: src/taskbar.c:451 src/winmenu.c:66 -msgid "Minimize" -msgstr "最小化" - -#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 -#: src/winmenu.c:106 -msgid "Restore" -msgstr "恢复" - -#: src/taskbar.c:465 src/winmenu.c:179 -msgid "Send To" -msgstr "发送到桌面" - -#: src/taskbar.c:961 +#: src/parse.c:1972 #, c-format -msgid "invalid maxwidth for TaskList: %s" -msgstr "无效的任务列表最大宽度:%s" +msgid "invalid setting: %s" +msgstr "无效的设置:\"%s\"" -#: src/taskbar.c:975 +#: src/parse.c:384 #, fuzzy, c-format -msgid "invalid height for TaskList: %s" -msgstr "无效的任务列表最大宽度:%s" +msgid "invalid start tag: %s" +msgstr "无效的设置:\"%s\"" -#: src/tray.c:1064 +#: src/parse.c:2031 #, c-format -msgid "invalid tray layout: \"%s\"" -msgstr "无效的托盘样式:\"%s\"" +msgid "invalid tag in %s: %s" +msgstr "%s 含无效标签:%s" + +#: src/parse.c:871 +#, fuzzy, c-format +msgid "invalid text alignment: \"%s\"" +msgstr "无效的托盘垂直对齐:\"%s\"" #: src/tray.c:1102 #, c-format msgid "invalid tray horizontal alignment: \"%s\"" msgstr "无效的托盘水平对齐:\"%s\"" +#: src/tray.c:1064 +#, c-format +msgid "invalid tray layout: \"%s\"" +msgstr "无效的托盘样式:\"%s\"" + #: src/tray.c:1125 #, c-format msgid "invalid tray vertical alignment: \"%s\"" msgstr "无效的托盘垂直对齐:\"%s\"" -#: src/traybutton.c:89 -#, c-format -msgid "could not load tray icon: \"%s\"" -msgstr "无法加载托盘图标:\"%s\"" - -#: src/traybutton.c:130 -msgid "no icon or label for TrayButton" -msgstr "TrayButton 中未找到 icon 或 label 定义" - -#: src/winmenu.c:49 -msgid "Kill" -msgstr "强制结束" - -#: src/winmenu.c:57 -msgid "Resize" -msgstr "改变大小" - -#: src/winmenu.c:60 -msgid "Move" -msgstr "移动" - -#: src/winmenu.c:72 -msgid "Unshade" -msgstr "向下展开" - -#: src/winmenu.c:74 -msgid "Shade" -msgstr "向上收起" +#: src/parse.c:1854 +#, fuzzy, c-format +msgid "invalid value for %s: \"%s\"" +msgstr "%s 含无效标签:%s" -#: src/winmenu.c:81 -msgid "Maximize-y" -msgstr "纵向最大化" +#: src/parse.c:1611 +#, fuzzy, c-format +msgid "invalid value for 'enabled': \"%s\"" +msgstr "无效操作:\"%s\"" -#: src/winmenu.c:86 -msgid "Maximize-x" -msgstr "横向最大化" +#: src/key.c:467 +#, c-format +msgid "key binding: root menu \"%s\" not defined" +msgstr "按键绑定:主菜单 \"%s\" 未定义" -#: src/winmenu.c:90 -msgid "Maximize" -msgstr "最大化" +#: src/key.c:326 +#, c-format +msgid "modifier not found for keysym 0x%0x" +msgstr "未找到 KeySym 0x%0x 的修饰键" -#: src/winmenu.c:112 -msgid "Unstick" -msgstr "解除固定" +#: src/key.c:452 +msgid "neither key nor keycode specified for Key" +msgstr "key 或 keycode 均未被指定给 Key" -#: src/winmenu.c:114 -msgid "Stick" -msgstr "固定" +#: src/parse.c:824 +#, fuzzy +msgid "no action specified for Key" +msgstr "key 或 keycode 均未被指定给 Key" -#: src/winmenu.c:139 -msgid "Layer" -msgstr "层" +#: src/traybutton.c:130 +msgid "no icon or label for TrayButton" +msgstr "TrayButton 中未找到 icon 或 label 定义" -#: src/winmenu.c:148 -msgid "[Above]" -msgstr "[当前:置顶]" +#: src/parse.c:957 +msgid "no include file specified" +msgstr "" -#: src/winmenu.c:150 -msgid "Above" -msgstr "置顶" +#: src/parse.c:1967 src/parse.c:1984 +#, fuzzy +msgid "no value specified" +msgstr "背景图片未定义" -#: src/winmenu.c:153 -msgid "[Normal]" -msgstr "[当前:正常]" +#: src/background.c:137 +msgid "no value specified for background" +msgstr "背景图片未定义" -#: src/winmenu.c:155 -msgid "Normal" -msgstr "正常" +#: src/dock.c:151 +msgid "only one Dock allowed" +msgstr "仅允许一个 Dock" -#: src/winmenu.c:158 -msgid "[Below]" -msgstr "[当前:置底]" +#: src/lex.c:473 src/parse.c:1893 +msgid "out of memory" +msgstr "内存不足" -#: src/winmenu.c:160 -msgid "Below" -msgstr "置底" +#~ msgid "invalid tray height: %d" +#~ msgstr "无效的托盘高度:%d" #~ msgid "invalid tray width: %d" #~ msgstr "无效的托盘宽度:%d" - -#~ msgid "invalid tray height: %d" -#~ msgstr "无效的托盘高度:%d" diff --git a/po/zh_TW.po b/po/zh_TW.po index 34940d8a..c6f3e9ff 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -15,66 +15,78 @@ msgstr "" "X-Generator: Poedit 1.8.4\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: src/action.c:44 +#: src/parse.c:1829 #, c-format -msgid "invalid action: \"%s\"" -msgstr "動作無效:\"%s\"" +msgid "%s is empty" +msgstr "%s 是空" -#: src/action.c:211 +#: src/lex.c:367 #, c-format -msgid "action: root menu \"%s\" not defined" -msgstr "動作:主選項單 \"%s\" 未定義" +msgid "%s[%d]: invalid entity: \"%.8s\"" +msgstr "%s[%d]: 無效的實體: \"%.8s\"" -#: src/background.c:137 -msgid "no value specified for background" -msgstr "沒有指定數值給背景" +#: src/lex.c:201 +#, c-format +msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" +msgstr "%s[%u]: 關閉的標籤 \"%s\" 沒有配對到開啟的標籤 \"%s\"" -#: src/background.c:149 +#: src/lex.c:213 #, c-format -msgid "invalid background type: \"%s\"" -msgstr "無效的背景格式:\"%s\"" +msgid "%s[%u]: close tag \"%s\" without open tag" +msgstr "%s[%u]: 關閉標籤 \"%s\" 不要開啟標籤" -#: src/background.c:294 +#: src/lex.c:216 #, c-format -msgid "background image not found: \"%s\"" -msgstr "未找到背景圖片:\"%s\"" +msgid "%s[%u]: invalid close tag" +msgstr "%s[%u]: 無效的關閉標籤" -#: src/client.c:905 -msgid "Kill this window?" -msgstr "強制關閉該視窗?" +#: src/lex.c:234 +#, c-format +msgid "%s[%u]: invalid open tag" +msgstr "%s[%u]: 無效的開啟標籤" -#: src/client.c:906 -msgid "This may cause data to be lost!" -msgstr "這可能會導致資料不見!" +#: src/lex.c:250 +#, c-format +msgid "%s[%u]: invalid tag" +msgstr "%s[%u]: 無效的標籤" -#: src/command.c:138 src/main.c:221 +#: src/lex.c:207 #, c-format -msgid "exec failed: (%s) %s" -msgstr "執行失敗:(%s) %s" +msgid "%s[%u]: unexpected and invalid close tag" +msgstr "%s[%u]: 無預期且無效的標籤" -#: src/confirm.c:69 -msgid "OK" -msgstr "確定" +#: src/lex.c:308 +#, c-format +msgid "%s[%u]: unexpected text: \"%s\"" +msgstr "%s[%u]: 無預期的文字: \"%s\"" + +#: src/winmenu.c:150 +msgid "Above" +msgstr "置頂" + +#: src/root.c:224 +msgid "Are you sure?" +msgstr "您確定嗎?" + +#: src/winmenu.c:160 +msgid "Below" +msgstr "置底" #: src/confirm.c:74 msgid "Cancel" msgstr "取消" +#: src/taskbar.c:444 src/winmenu.c:48 +msgid "Close" +msgstr "關閉" + #: src/confirm.c:308 msgid "Confirm" msgstr "確認" -#: src/desktop.c:336 -msgid "empty Desktops Name tag" -msgstr "空的Desktops名稱標籤" - -#: src/dock.c:151 -msgid "only one Dock allowed" -msgstr "只允許一個Dock工具列" - -#: src/dock.c:232 -msgid "could not acquire system tray selection" -msgstr "無法取得系統tray的選項" +#: src/root.c:223 +msgid "Exit JWM" +msgstr "退出 JWM" #: src/error.c:22 #, c-format @@ -86,368 +98,356 @@ msgstr "JWM: 錯誤:" msgid "JWM: warning: " msgstr "JWM: 警告:" -#: src/error.c:77 -msgid "display is already managed" -msgstr "顯示已經被控制" +#: src/winmenu.c:49 +msgid "Kill" +msgstr "強制結束" -#: src/font.c:109 src/font.c:126 -#, c-format -msgid "could not load font: %s" -msgstr "無法載入字體:%s" +#: src/client.c:905 +msgid "Kill this window?" +msgstr "強制關閉該視窗?" -#: src/font.c:116 src/font.c:133 -#, c-format -msgid "could not load the default font: %s" -msgstr "無法載入預設字體:%s" +#: src/winmenu.c:139 +msgid "Layer" +msgstr "層" -#: src/font.c:315 -msgid "empty Font tag" -msgstr "空的字體標籤" +#: src/winmenu.c:90 +msgid "Maximize" +msgstr "最大化" -#: src/group.c:115 -msgid "invalid group class" -msgstr "無效的群組類別" +#: src/winmenu.c:86 +msgid "Maximize-x" +msgstr "水平最大化" -#: src/group.c:126 -msgid "invalid group name" -msgstr "無效的群組名稱" +#: src/winmenu.c:81 +msgid "Maximize-y" +msgstr "垂直最大化" -#: src/group.c:287 -#, c-format -msgid "invalid group desktop: %d" -msgstr "無效的群組桌面: %d" +#: src/taskbar.c:451 src/winmenu.c:66 +msgid "Minimize" +msgstr "最小化" -#: src/image.c:220 -#, c-format -msgid "could not create read struct for PNG image: %s" -msgstr "無法建立PNG圖片的讀取結構: %s" +#: src/winmenu.c:60 +msgid "Move" +msgstr "移動" -#: src/image.c:233 -#, c-format -msgid "error reading PNG image: %s" -msgstr "讀取 PNG圖片發生錯誤:%s" +#: src/winmenu.c:155 +msgid "Normal" +msgstr "正常" -#: src/image.c:241 -#, c-format -msgid "could not create info struct for PNG image: %s" -msgstr "無法產生PNG圖片的資訊結構: %s" +#: src/confirm.c:69 +msgid "OK" +msgstr "確定" + +#: src/winmenu.c:57 +msgid "Resize" +msgstr "改變大小" + +#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 +#: src/winmenu.c:106 +msgid "Restore" +msgstr "回復" + +#: src/taskbar.c:465 src/winmenu.c:179 +msgid "Send To" +msgstr "傳送到" + +#: src/winmenu.c:74 +msgid "Shade" +msgstr "向上收起" #: src/key.c:318 msgid "Specified KeySym is not defined for any KeyCode" msgstr "指定的KeySym沒有被定義給任何KeyCode" -#: src/key.c:326 -#, c-format -msgid "modifier not found for keysym 0x%0x" -msgstr "keysym 0x%0x 的修改者沒有找到 " +#: src/winmenu.c:114 +msgid "Stick" +msgstr "固定" -#: src/key.c:356 -#, c-format -msgid "invalid modifier: \"%c\"" -msgstr "無效的修改者: \"%c\"" +#: src/client.c:906 +msgid "This may cause data to be lost!" +msgstr "這可能會導致資料不見!" -#: src/key.c:371 -#, c-format -msgid "invalid key symbol: \"%s\"" -msgstr "無效的key符號: \"%s\"" +#: src/winmenu.c:72 +msgid "Unshade" +msgstr "向下展開" -#: src/key.c:452 -msgid "neither key nor keycode specified for Key" -msgstr "key和keycode都不是指定給Key" +#: src/winmenu.c:112 +msgid "Unstick" +msgstr "解除固定" -#: src/key.c:467 -#, c-format -msgid "key binding: root menu \"%s\" not defined" -msgstr "key的繫結: 主選項單\"%s\"未定義" +#: src/winmenu.c:148 +msgid "[Above]" +msgstr "[置頂]" -#: src/lex.c:201 -#, c-format -msgid "%s[%u]: close tag \"%s\" does not match open tag \"%s\"" -msgstr "%s[%u]: 關閉的標籤 \"%s\" 沒有配對到開啟的標籤 \"%s\"" +#: src/winmenu.c:158 +msgid "[Below]" +msgstr "[置底]" -#: src/lex.c:207 -#, c-format -msgid "%s[%u]: unexpected and invalid close tag" -msgstr "%s[%u]: 無預期且無效的標籤" +#: src/winmenu.c:153 +msgid "[Normal]" +msgstr "[正常]" -#: src/lex.c:213 +#: src/action.c:211 #, c-format -msgid "%s[%u]: close tag \"%s\" without open tag" -msgstr "%s[%u]: 關閉標籤 \"%s\" 不要開啟標籤" +msgid "action: root menu \"%s\" not defined" +msgstr "動作:主選項單 \"%s\" 未定義" -#: src/lex.c:216 +#: src/background.c:294 #, c-format -msgid "%s[%u]: invalid close tag" -msgstr "%s[%u]: 無效的關閉標籤" +msgid "background image not found: \"%s\"" +msgstr "未找到背景圖片:\"%s\"" -#: src/lex.c:234 +#: src/swallow.c:85 +msgid "cannot swallow a client with no name" +msgstr "無法消掉沒有名字的客戶端" + +#: src/parse.c:2052 +msgid "configuration error" +msgstr "設定錯誤" + +#: src/dock.c:232 +msgid "could not acquire system tray selection" +msgstr "無法取得系統tray的選項" + +#: src/image.c:241 #, c-format -msgid "%s[%u]: invalid open tag" -msgstr "%s[%u]: 無效的開啟標籤" +msgid "could not create info struct for PNG image: %s" +msgstr "無法產生PNG圖片的資訊結構: %s" -#: src/lex.c:250 +#: src/image.c:220 #, c-format -msgid "%s[%u]: invalid tag" -msgstr "%s[%u]: 無效的標籤" +msgid "could not create read struct for PNG image: %s" +msgstr "無法建立PNG圖片的讀取結構: %s" -#: src/lex.c:308 +#: src/font.c:109 src/font.c:126 #, c-format -msgid "%s[%u]: unexpected text: \"%s\"" -msgstr "%s[%u]: 無預期的文字: \"%s\"" +msgid "could not load font: %s" +msgstr "無法載入字體:%s" -#: src/lex.c:367 +#: src/font.c:116 src/font.c:133 #, c-format -msgid "%s[%d]: invalid entity: \"%.8s\"" -msgstr "%s[%d]: 無效的實體: \"%.8s\"" +msgid "could not load the default font: %s" +msgstr "無法載入預設字體:%s" -#: src/lex.c:473 src/parse.c:1893 -msgid "out of memory" -msgstr "記憶體不足" +#: src/traybutton.c:89 +#, c-format +msgid "could not load tray icon: \"%s\"" +msgstr "無法載入tray圖示:\"%s\"" #: src/parse.c:228 #, c-format msgid "could not open %s or %s" msgstr "無法開啟 %s 或 %s" -#: src/parse.c:246 +#: src/parse.c:971 #, c-format -msgid "include depth (%d) exceeded" -msgstr "包含深度 (%d) 超過" +msgid "could not open included file: %s" +msgstr "無法開啟包含的檔案: %s" -#: src/parse.c:384 +#: src/parse.c:967 #, c-format -msgid "invalid start tag: %s" -msgstr "無效的開啟標籤: %s" +msgid "could not process include: %s" +msgstr "無法處理包含: %s" -#: src/parse.c:774 -#, c-format -msgid "invalid include: %s" -msgstr "無效的包含: %s" +#: src/parse.c:1880 +#, fuzzy, c-format +msgid "could not read file: %s" +msgstr "無法載入字體:%s" -#: src/parse.c:824 -msgid "no action specified for Key" -msgstr "此Key沒有指定的操作" +#: src/error.c:77 +msgid "display is already managed" +msgstr "顯示已經被控制" -#: src/parse.c:847 -#, c-format -msgid "invalid Key action: \"%s\"" -msgstr "無效的Key操作 %s" +#: src/desktop.c:336 +msgid "empty Desktops Name tag" +msgstr "空的Desktops名稱標籤" -#: src/parse.c:871 -#, c-format -msgid "invalid text alignment: \"%s\"" -msgstr "無效的文字對齊: \"%s\"" +#: src/font.c:315 +msgid "empty Font tag" +msgstr "空的字體標籤" -#: src/parse.c:957 -msgid "no include file specified" -msgstr "沒有被包含的檔案被指定" +#: src/image.c:233 +#, c-format +msgid "error reading PNG image: %s" +msgstr "讀取 PNG圖片發生錯誤:%s" -#: src/parse.c:967 +#: src/command.c:138 src/main.c:221 #, c-format -msgid "could not process include: %s" -msgstr "無法處理包含: %s" +msgid "exec failed: (%s) %s" +msgstr "執行失敗:(%s) %s" -#: src/parse.c:971 +#: src/parse.c:246 #, c-format -msgid "could not open included file: %s" -msgstr "無法開啟包含的檔案: %s" +msgid "include depth (%d) exceeded" +msgstr "包含深度 (%d) 超過" -#: src/parse.c:1611 +#: src/parse.c:1836 #, c-format -msgid "invalid value for 'enabled': \"%s\"" -msgstr "無效的數值給'啟用的': \"%s\"" +msgid "invalid %s: \"%s\"" +msgstr "無效的 %s: \"%s\"" #: src/parse.c:1752 #, c-format msgid "invalid Group Option: %s" msgstr "無效的群組選項: %s" +#: src/parse.c:847 +#, c-format +msgid "invalid Key action: \"%s\"" +msgstr "無效的Key操作 %s" + +#: src/action.c:44 +#, c-format +msgid "invalid action: \"%s\"" +msgstr "動作無效:\"%s\"" + +#: src/background.c:149 +#, c-format +msgid "invalid background type: \"%s\"" +msgstr "無效的背景格式:\"%s\"" + #: src/parse.c:1767 #, c-format msgid "invalid decorations: %s" msgstr "無效的裝飾; %s" -#: src/parse.c:1829 -#, c-format -msgid "%s is empty" -msgstr "%s 是空" +#: src/group.c:115 +msgid "invalid group class" +msgstr "無效的群組類別" -#: src/parse.c:1836 +#: src/group.c:287 #, c-format -msgid "invalid %s: \"%s\"" -msgstr "無效的 %s: \"%s\"" +msgid "invalid group desktop: %d" +msgstr "無效的群組桌面: %d" -#: src/parse.c:1854 -#, fuzzy, c-format -msgid "invalid value for %s: \"%s\"" -msgstr "%s: \"%s\"的無效數值" +#: src/group.c:126 +msgid "invalid group name" +msgstr "無效的群組名稱" -#: src/parse.c:1880 +#: src/taskbar.c:975 #, fuzzy, c-format -msgid "could not read file: %s" -msgstr "無法載入字體:%s" - -#: src/parse.c:1967 src/parse.c:1984 -#, fuzzy -msgid "no value specified" -msgstr "未設定任何數值" +msgid "invalid height for TaskList: %s" +msgstr "任務列表無效的高度:%s" -#: src/parse.c:1972 +#: src/parse.c:774 #, c-format -msgid "invalid setting: %s" -msgstr "無效的設定值:\"%s\"" +msgid "invalid include: %s" +msgstr "無效的包含: %s" -#: src/parse.c:1989 +#: src/key.c:371 #, c-format -msgid "invalid opacity: %s" -msgstr "無效的透明度:\"%s\"" +msgid "invalid key symbol: \"%s\"" +msgstr "無效的key符號: \"%s\"" #: src/parse.c:2010 #, fuzzy, c-format msgid "invalid layer: %s" msgstr "無效的層次:\"%s\"" -#: src/parse.c:2031 +#: src/taskbar.c:961 #, c-format -msgid "invalid tag in %s: %s" -msgstr " %s: %s 的無效標籤" +msgid "invalid maxwidth for TaskList: %s" +msgstr "任務列表無效的最大寬度:%s" -#: src/parse.c:2052 -msgid "configuration error" -msgstr "設定錯誤" +#: src/key.c:356 +#, c-format +msgid "invalid modifier: \"%c\"" +msgstr "無效的修改者: \"%c\"" + +#: src/parse.c:1989 +#, c-format +msgid "invalid opacity: %s" +msgstr "無效的透明度:\"%s\"" #: src/root.c:131 #, c-format msgid "invalid root menu specified: \"%c\"" msgstr "無效的指定主選項單 \"%c\"" -#: src/root.c:223 -msgid "Exit JWM" -msgstr "退出 JWM" - -#: src/root.c:224 -msgid "Are you sure?" -msgstr "您確定嗎?" - -#: src/swallow.c:85 -msgid "cannot swallow a client with no name" -msgstr "無法消掉沒有名字的客戶端" - -#: src/taskbar.c:444 src/winmenu.c:48 -msgid "Close" -msgstr "關閉" - -#: src/taskbar.c:451 src/winmenu.c:66 -msgid "Minimize" -msgstr "最小化" - -#: src/taskbar.c:458 src/winmenu.c:95 src/winmenu.c:97 src/winmenu.c:99 -#: src/winmenu.c:106 -msgid "Restore" -msgstr "回復" - -#: src/taskbar.c:465 src/winmenu.c:179 -msgid "Send To" -msgstr "傳送到" +#: src/parse.c:1972 +#, c-format +msgid "invalid setting: %s" +msgstr "無效的設定值:\"%s\"" -#: src/taskbar.c:961 +#: src/parse.c:384 #, c-format -msgid "invalid maxwidth for TaskList: %s" -msgstr "任務列表無效的最大寬度:%s" +msgid "invalid start tag: %s" +msgstr "無效的開啟標籤: %s" -#: src/taskbar.c:975 -#, fuzzy, c-format -msgid "invalid height for TaskList: %s" -msgstr "任務列表無效的高度:%s" +#: src/parse.c:2031 +#, c-format +msgid "invalid tag in %s: %s" +msgstr " %s: %s 的無效標籤" -#: src/tray.c:1064 +#: src/parse.c:871 #, c-format -msgid "invalid tray layout: \"%s\"" -msgstr "無效的tray層次: \"%s\" " +msgid "invalid text alignment: \"%s\"" +msgstr "無效的文字對齊: \"%s\"" #: src/tray.c:1102 #, c-format msgid "invalid tray horizontal alignment: \"%s\"" msgstr "無效的水平tray對齊: \"%s\"" +#: src/tray.c:1064 +#, c-format +msgid "invalid tray layout: \"%s\"" +msgstr "無效的tray層次: \"%s\" " + #: src/tray.c:1125 #, c-format msgid "invalid tray vertical alignment: \"%s\"" msgstr "無效的垂直tray對齊: \"%s\"" -#: src/traybutton.c:89 -#, c-format -msgid "could not load tray icon: \"%s\"" -msgstr "無法載入tray圖示:\"%s\"" - -#: src/traybutton.c:130 -msgid "no icon or label for TrayButton" -msgstr "未找到TrayButton的icon或是標籤" - -#: src/winmenu.c:49 -msgid "Kill" -msgstr "強制結束" - -#: src/winmenu.c:57 -msgid "Resize" -msgstr "改變大小" - -#: src/winmenu.c:60 -msgid "Move" -msgstr "移動" - -#: src/winmenu.c:72 -msgid "Unshade" -msgstr "向下展開" - -#: src/winmenu.c:74 -msgid "Shade" -msgstr "向上收起" - -#: src/winmenu.c:81 -msgid "Maximize-y" -msgstr "垂直最大化" +#: src/parse.c:1854 +#, fuzzy, c-format +msgid "invalid value for %s: \"%s\"" +msgstr "%s: \"%s\"的無效數值" -#: src/winmenu.c:86 -msgid "Maximize-x" -msgstr "水平最大化" +#: src/parse.c:1611 +#, c-format +msgid "invalid value for 'enabled': \"%s\"" +msgstr "無效的數值給'啟用的': \"%s\"" -#: src/winmenu.c:90 -msgid "Maximize" -msgstr "最大化" +#: src/key.c:467 +#, c-format +msgid "key binding: root menu \"%s\" not defined" +msgstr "key的繫結: 主選項單\"%s\"未定義" -#: src/winmenu.c:112 -msgid "Unstick" -msgstr "解除固定" +#: src/key.c:326 +#, c-format +msgid "modifier not found for keysym 0x%0x" +msgstr "keysym 0x%0x 的修改者沒有找到 " -#: src/winmenu.c:114 -msgid "Stick" -msgstr "固定" +#: src/key.c:452 +msgid "neither key nor keycode specified for Key" +msgstr "key和keycode都不是指定給Key" -#: src/winmenu.c:139 -msgid "Layer" -msgstr "層" +#: src/parse.c:824 +msgid "no action specified for Key" +msgstr "此Key沒有指定的操作" -#: src/winmenu.c:148 -msgid "[Above]" -msgstr "[置頂]" +#: src/traybutton.c:130 +msgid "no icon or label for TrayButton" +msgstr "未找到TrayButton的icon或是標籤" -#: src/winmenu.c:150 -msgid "Above" -msgstr "置頂" +#: src/parse.c:957 +msgid "no include file specified" +msgstr "沒有被包含的檔案被指定" -#: src/winmenu.c:153 -msgid "[Normal]" -msgstr "[正常]" +#: src/parse.c:1967 src/parse.c:1984 +#, fuzzy +msgid "no value specified" +msgstr "未設定任何數值" -#: src/winmenu.c:155 -msgid "Normal" -msgstr "正常" +#: src/background.c:137 +msgid "no value specified for background" +msgstr "沒有指定數值給背景" -#: src/winmenu.c:158 -msgid "[Below]" -msgstr "[置底]" +#: src/dock.c:151 +msgid "only one Dock allowed" +msgstr "只允許一個Dock工具列" -#: src/winmenu.c:160 -msgid "Below" -msgstr "置底" +#: src/lex.c:473 src/parse.c:1893 +msgid "out of memory" +msgstr "記憶體不足" From 049a5cb408696691f139a4c5b20bea58f397819f Mon Sep 17 00:00:00 2001 From: Israel- Date: Mon, 8 Jan 2018 09:45:21 -0600 Subject: [PATCH 7/9] readd config.h.in --- cmake/config.h.in | 237 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 237 insertions(+) create mode 100644 cmake/config.h.in diff --git a/cmake/config.h.in b/cmake/config.h.in new file mode 100644 index 00000000..38974f57 --- /dev/null +++ b/cmake/config.h.in @@ -0,0 +1,237 @@ +/* config.h Generated from cmake. */ + +#cmakedefine LOCALEDIR "@LOCALEDIR@" + +/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP + systems. This function is required for `alloca.c' support on those systems. + */ +#cmakedefine CRAY_STACKSEG_END + +/* Define to 1 if using `alloca.c'. */ +#cmakedefine C_ALLOCA + +/* Define to debug JWM */ +#cmakedefine DEBUG + +/* Define to disable confirm dialogs */ +#cmakedefine DISABLE_CONFIRM + +/* Define to 1 if translation of program messages to the user's native + language is requested. */ +#cmakedefine ENABLE_NLS 1 + +/* Define to 1 if you have `alloca', as a function or macro. */ +#cmakedefine HAVE_ALLOCA 1 + +/* Define to 1 if you have and it should be used (not on Ultrix). + */ +#cmakedefine HAVE_ALLOCA_H 1 + +/* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the + CoreFoundation framework. */ +#cmakedefine HAVE_CFLOCALECOPYCURRENT + +/* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in + the CoreFoundation framework. */ +#cmakedefine HAVE_CFPREFERENCESCOPYAPPVALUE + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_CTYPE_H 1 + +/* Define if the GNU dcgettext() function is already present or preinstalled. + */ +#cmakedefine HAVE_DCGETTEXT 1 + +/* Define if the GNU gettext() function is already present or preinstalled. */ +#cmakedefine HAVE_GETTEXT 1 + +/* Define if you have the iconv() function and it works. */ +#cmakedefine HAVE_ICONV 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_ICONV_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_JPEGLIB_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_LANGINFO_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_LIBINTL_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_LOCALE_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_MEMORY_H 1 + +/* Define to 1 if you have the `putenv' function. */ +#cmakedefine HAVE_PUTENV 1 + +/* Define to 1 if you have the `setlocale' function. */ +#cmakedefine HAVE_SETLOCALE 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_SIGNAL_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_STDARG_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_STDIO_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_STDLIB_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_STRING_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_SYS_SELECT_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_SYS_TIME_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_SYS_WAIT_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_TIME_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_UNISTD_H 1 + +/* Define to 1 if you have the `unsetenv' function. */ +#cmakedefine HAVE_UNSETENV 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_X11_CURSORFONT_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_X11_EXTENSIONS_XRENDER_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_X11_KEYSYM_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_X11_XATOM_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_X11_XLIB_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_X11_XPM_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_X11_XPROTO_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_X11_XRESOURCE_H 1 + +/* Define to 1 if you have the header file. */ +#cmakedefine HAVE_X11_XUTIL_H 1 + +/* Define as const if the declaration of iconv() needs const. */ +#cmakedefine ICONV_CONST + +/* Define to the address where bug reports for this package should be sent. */ +#cmakedefine PACKAGE_BUGREPORT "@PACKAGE_BUGREPORT@" + +/* Define to the full name of this package. */ +#cmakedefine PACKAGE_NAME "@PACKAGE_NAME@" + +/* Define to the full name and version of this package. */ +#cmakedefine PACKAGE_STRING "@PACKAGE_STRING@" + +/* Define to the one symbol short name of this package. */ +#cmakedefine PACKAGE_TARNAME "@PACKAGE_TARNAME@" + +/* Define to the home page for this package. */ +#cmakedefine PACKAGE_URL "@PACKAGE_URL@" + +/* Define to the version of this package. */ +#cmakedefine PACKAGE_VERSION "@PACKAGE_VERSION@" + +/* If using the C implementation of alloca, define if you know the + direction of stack growth for your system; otherwise it will be + automatically deduced at runtime. + STACK_DIRECTION > 0 => grows toward higher addresses + STACK_DIRECTION < 0 => grows toward lower addresses + STACK_DIRECTION = 0 => direction of growth unknown */ +#cmakedefine STACK_DIRECTION + +/* Define to 1 if you have the ANSI C header files. */ +#cmakedefine STDC_HEADERS 1 + +/* default system configuration path */ +#cmakedefine SYSTEM_CONFIG "@SYSTEM_CONFIG@" + +/* Define to use Cairo */ +#cmakedefine USE_CAIRO 1 + +/* Define to use FriBidi */ +#cmakedefine USE_FRIBIDI 1 + +/* Define to enable icon support */ +#cmakedefine USE_ICONS 1 + +/* Define to use libjpeg */ +#cmakedefine USE_JPEG 1 + +/* Define to use libpng */ +#cmakedefine USE_PNG 1 + +/* Define to use rsvg */ +#cmakedefine USE_RSVG 1 + +/* Define to enable the X shape extension */ +#cmakedefine USE_SHAPE 1 + +/* Define to enable XBM images */ +#cmakedefine USE_XBM 1 + +/* Define to enable Xft */ +#cmakedefine USE_XFT 1 + +/* Define to enable Xinerama */ +#cmakedefine USE_XINERAMA 1 + +/* Define to use Xmu */ +#cmakedefine USE_XMU 1 + +/* Define to enable XPM support */ +#cmakedefine USE_XPM 1 + +/* Define to enable the XRender extension */ +#cmakedefine USE_XRENDER 1 + +/* Define to use Xutf8TextPropertyToTextList */ +#cmakedefine USE_XUTF8 1 + +/* Define for single UNIX conformance */ +#cmakedefine _XOPEN_SOURCE @_XOPEN_SOURCE@ + +/* Define for timeval on IRIX 6.2 */ +#cmakedefine _XOPEN_SOURCE_EXTENDED + +/* Define for timeval on Solaris 2.5.1 */ +#cmakedefine __EXTENSIONS__ + +/* Define to `unsigned int' if does not define. */ +#cmakedefine size_t @size_t@ From 2db2495d77c70037b09a6785f56873e2b5b9a884 Mon Sep 17 00:00:00 2001 From: Israel Date: Sat, 13 Jan 2018 08:49:27 -0600 Subject: [PATCH 8/9] fix my silly typo --- cmake/configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/configure b/cmake/configure index 46e07817..4d895896 100755 --- a/cmake/configure +++ b/cmake/configure @@ -205,7 +205,7 @@ enable_thing() then VALUE="TRUE" fi - if + fi addBool "USE_$RESULT" "$VALUE" } From 63ef8c37acf8b284a129f4315bf3d3aba048797c Mon Sep 17 00:00:00 2001 From: Andrey Rodionov Date: Sun, 14 Jan 2018 11:19:15 +0300 Subject: [PATCH 9/9] Add a check of variable value --- CMakeLists.txt | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index e380f390..bb7bb55b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,7 +6,9 @@ string(TIMESTAMP DATE) set(VERSION_MAJOR 2) set(VERSION_MINOR 4) set(VERSION_REV 0) -set(SYSCONF "${CMAKE_INSTALL_PREFIX}/etc/") +if(NOT DEFINED SYSCONF) + set(SYSCONF "${CMAKE_INSTALL_PREFIX}/etc/") +endif() set(PACKAGE_BUGREPORT "joewing@joewing.net") set(AUTHOR "Joe Wingbermuehle") set(PACKAGE_URL "http://joewing.net/projects/jwm") @@ -15,8 +17,12 @@ set(PACKAGE_VERSION "${VERSION}") set(PACKAGE_STRING "Joe's Window Manager ${VERSION}") set(PACKAGE_TARNAME "${PROJECT_NAME}") set(LOCALE_DIR "/locale") -set(LOCALEDIR "${CMAKE_INSTALL_PREFIX}${LOCALE_DIR}") -set(ARCH_INDEP_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}") +if(NOT DEFINED LOCALEDIR) + set(LOCALEDIR "${CMAKE_INSTALL_PREFIX}${LOCALE_DIR}") +endif() +if(NOT DEFINED ARCH_INDEP_INSTALL_DIR) + set(ARCH_INDEP_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}") +endif() set(USE_ICONS TRUE CACHE BOOL "Disable Icon supprot") set(USE_NLS TRUE CACHE BOOL "Disable translation of program messages to the user's native language") set(ENABLE_NLS "${USE_NLS}") @@ -372,7 +378,9 @@ install(FILES ${ICONS} DESTINATION "${ARCH_INDEP_INSTALL_DIR}/share/pixmaps") ##install man page message("creating ${PROJECT_NAME}.1") configure_file("${CMAKE_SOURCE_DIR}/${PROJECT_NAME}.1.in" "${CMAKE_SOURCE_DIR}/${PROJECT_NAME}.1") -set(MAN_DIR "${ARCH_INDEP_INSTALL_DIR}/share/man/man1/" CACHE STRING "Man page installation directory") +if(NOT DEFINED MAN_DIR) + set(MAN_DIR "${ARCH_INDEP_INSTALL_DIR}/share/man/man1/" CACHE STRING "Man page installation directory") +endif() install(FILES "${PROJECT_NAME}.1" DESTINATION "${MAN_DIR}") ## configure header