From: Aurélien COUDERC Date: Wed, 4 Dec 2024 10:58:00 +0000 (+0100) Subject: Import kf6-kconfig_6.8.0.orig.tar.xz X-Git-Tag: archive/raspbian/6.8.0-1+rpi1^2~5 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=e547041af1218f8d58b44b5f4719e1bf58683ee9;p=kf6-kconfig.git Import kf6-kconfig_6.8.0.orig.tar.xz [dgit import orig kf6-kconfig_6.8.0.orig.tar.xz] --- e547041af1218f8d58b44b5f4719e1bf58683ee9 diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs new file mode 100644 index 0000000..d7c1427 --- /dev/null +++ b/.git-blame-ignore-revs @@ -0,0 +1,4 @@ +#clang-format/tidy +8bed00ab34e31f2b9c70026d418d923913325798 +48c132be8aa983165126b0641a083848dd5c6620 +06ca3b8c62989f59ca348606dfd4eda9e3ee3ec0 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f9dc289 --- /dev/null +++ b/.gitignore @@ -0,0 +1,29 @@ +# Ignore the following files +*~ +*.[oa] +*.diff +*.kate-swp +*.kdev4 +.kdev_include_paths +*.kdevelop.pcs +*.moc +*.moc.cpp +*.orig +*.user +.*.swp +.swp.* +Doxyfile +Makefile +avail +random_seed +/build*/ +/.vscode/ +CMakeLists.txt.user* +*.unc-backup* +.cmake/ +/.clang-format +/compile_commands.json +.clangd +.idea +/cmake-build* +.cache diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..ae0db78 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,12 @@ +# SPDX-FileCopyrightText: 2020 Volker Krause +# SPDX-License-Identifier: CC0-1.0 + +include: + - project: sysadmin/ci-utilities + file: + - /gitlab-templates/linux-qt6.yml + - /gitlab-templates/linux-qt6-static.yml + - /gitlab-templates/android-qt6.yml + - /gitlab-templates/freebsd-qt6.yml + - /gitlab-templates/windows-qt6.yml + - /gitlab-templates/alpine-qt6.yml diff --git a/.kde-ci.yml b/.kde-ci.yml new file mode 100644 index 0000000..e52bc32 --- /dev/null +++ b/.kde-ci.yml @@ -0,0 +1,8 @@ +Dependencies: +- 'on': ['@all'] + 'require': + 'frameworks/extra-cmake-modules': '@same' + +Options: + test-before-installing: True + require-passing-tests-on: [ 'Linux', 'FreeBSD', 'Windows' ] diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..35395e6 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,119 @@ +cmake_minimum_required(VERSION 3.16) + +set(KF_VERSION "6.8.0") # handled by release scripts +project(KConfig VERSION ${KF_VERSION}) + +include(FeatureSummary) +find_package(ECM 6.8.0 NO_MODULE) +set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://commits.kde.org/extra-cmake-modules") +feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES) + +set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) + +include(KDEInstallDirs) +include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE) +include(KDECMakeSettings) +include(KDEGitCommitHooks) + +include(ECMGenerateExportHeader) +include(ECMSetupVersion) +include(ECMGenerateHeaders) +include(ECMMarkNonGuiExecutable) +include(ECMPoQmTools) +include(ECMAddQch) +include(ECMQtDeclareLoggingCategory) +include(ECMDeprecationSettings) + +set(REQUIRED_QT_VERSION 6.5.0) + +find_package(Qt6 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Xml) +option(KCONFIG_USE_GUI "Build components using Qt6Gui" ON) +if(KCONFIG_USE_GUI) + find_package(Qt6 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Gui) +endif() + +option(KCONFIG_USE_QML "Build components using Qt6Qml" ON) + +if(KCONFIG_USE_QML) + include(ECMQmlModule) + find_package(Qt6 ${REQUIRED_QT_VERSION} REQUIRED COMPONENTS Qml Quick) +endif() + +# shall we use DBus? +# enabled per default on Linux & BSD systems +set(USE_DBUS_DEFAULT OFF) +if(UNIX AND NOT APPLE AND NOT ANDROID AND NOT HAIKU) + set(USE_DBUS_DEFAULT ON) +endif() +option(USE_DBUS "Build components using DBus" ${USE_DBUS_DEFAULT}) +if(USE_DBUS) + find_package(Qt6 ${REQUIRED_QT_VERSION} CONFIG REQUIRED DBus) + set(KCONFIG_USE_DBUS ON) +endif() + +set(EXCLUDE_DEPRECATED_BEFORE_AND_AT 0 CACHE STRING "Control the range of deprecated API excluded from the build [default=0].") + +option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF) +add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)") + +set(kconfig_version_header "${CMAKE_CURRENT_BINARY_DIR}/src/core/kconfig_version.h") +ecm_setup_version(PROJECT VARIABLE_PREFIX KCONFIG + VERSION_HEADER "${kconfig_version_header}" + PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF6ConfigConfigVersion.cmake" + SOVERSION 6) + +ecm_set_disabled_deprecation_versions( + QT 6.5 +) + +add_subdirectory(src) +if(BUILD_TESTING) + add_subdirectory(autotests) +endif() + +include (ECMPoQmTools) +ecm_install_po_files_as_qm(poqm) + + +# create a Config.cmake and a ConfigVersion.cmake file and install them +set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KF6Config") + +if(BUILD_QCH) + ecm_install_qch_export( + TARGETS KF6Config_QCH + FILE KF6ConfigQchTargets.cmake + DESTINATION "${CMAKECONFIG_INSTALL_DIR}" + COMPONENT Devel + ) + set(PACKAGE_INCLUDE_QCHTARGETS "include(\"\${CMAKE_CURRENT_LIST_DIR}/KF6ConfigQchTargets.cmake\")") +endif() + +include(CMakePackageConfigHelpers) + +configure_package_config_file("${CMAKE_CURRENT_SOURCE_DIR}/KF6ConfigConfig.cmake.in" + "${CMAKE_CURRENT_BINARY_DIR}/KF6ConfigConfig.cmake" + INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR} + ) + +install(FILES "${CMAKE_CURRENT_BINARY_DIR}/KF6ConfigConfig.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/KF6ConfigConfigVersion.cmake" + "${CMAKE_CURRENT_SOURCE_DIR}/KF6ConfigMacros.cmake" + DESTINATION "${CMAKECONFIG_INSTALL_DIR}" + COMPONENT Devel ) + + +install(EXPORT KF6ConfigTargets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" + FILE KF6ConfigTargets.cmake NAMESPACE KF6:: COMPONENT Devel) + + +install(EXPORT KF6ConfigCompilerTargets DESTINATION "${KDE_INSTALL_CMAKEPACKAGEDIR}/KF6Config" + FILE KF6ConfigCompilerTargets.cmake NAMESPACE KF6:: COMPONENT Devel) + +install(FILES ${kconfig_version_header} + DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KConfig COMPONENT Devel) + + +include(ECMFeatureSummary) +ecm_feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) + +kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT) diff --git a/DESIGN b/DESIGN new file mode 100644 index 0000000..e70d209 --- /dev/null +++ b/DESIGN @@ -0,0 +1,109 @@ +If you add a major new feature, suggest using it in +http://techbase.kde.org/Development/Tutorials/KConfig + +kconfigdata_p.h contains definitions of the data formats used by kconfig. + +Configuration entries are stored as "KEntry". They are indexed with "KEntryKey". +The primary store is a "KEntryMap" which is defined as a std::map from "KEntryKey" +to "KEntry" + +KEntry's are stored in order in the KEntryMap. The most significant sort +criteria is mGroup. This means that all entries who belong in the same group, +are grouped in the std::map as well. + +The start of a group is indicated with a KEntryKey with an empty mKey and a +dummy KEntry. This allows us to search for the start of the group and then to +iterate until we end up in another group. That way we will find all entries +of a certain group. + +Entries that are localised with the _current_ locale are stored with bLocal +set to true. Entries that are localised with another locale are either not +stored at all (default), or with the localization as part of the key and bRaw +set to true (when reading a file in order to merge it). + +Entries that are being read from a location other than the location to +which is written back are marked as "default" and will be added both as +normal entry as well as an entry with the key marked as default. + +When the configuration is synced to disk, the current on-disk state is re-read +into a temporary map, updated with dirty (modified) entries from the +current config object's entry map and then written back. + + +Note that there is a subtle difference between revertToDefault() and deleteEntry(). +revertToDefault() will change the entry to the default value set by the system +administrator (Via e.g. $KDEDIR/share/config) or, if no such default was set, +non-existent. +deleteEntry() will make the entry non-existent. If if the system administrator +has specified a default value, the local entry is marked with [$d]. + +Entries are marked "immutable" if the key is followed by [$i] (e.g. 'key[$i]=value'); +groups are marked "immutable" if the group is followed by [$i] (.e.g '[GroupName][$i]'). +An "immutable" entry/group cannot be overriden by the user. + +For more details see docs/options.md. + + +------------------------------------------------------------------------------ + +KConfig XT +========== + +My buzzword picker offered KConfig XT ("eXtended Technology") and KConfig NG +("Next Generation"). Since the planned changes are meant to be evolutionary +rather than revolutionary, KConfig NG was dropped. + +Goals +===== + +* Have the default value for config entries defined in 1 place. Currently it is +not uncommon to have them defined in three places: + 1) In the application that reads the setting in order to use it + 2) In the settings dialog when reading the setting + 3) In the settings dialog when selecting "Use defaults". + +* Provide type-information about config entries to facilate "KConfEdit" like +tools. Ideally type-information also includes range-information; this is even +mandatory if enums become an explicit type. + +* Facilitate the documentation of config entries. + +KCoreConfigSkeleton + | + v + KConfigSkeleton /--< myapp.kcfg + | / + |*---------------< + |kconfig_compiler \ + | \--< myconfig.kcfgc + v + MyConfig <-----KConfigDialogManager----> MyConfigWidget *---< myconfigwidget.ui + uic + +KCoreConfigSkeleton/ base class for deriving classes that store application +KConfigSkeleton: specific options providing type-safety and single-point + defaults. + +MyConfig: An application specific class that offers configuration options + to the applications via variables or accessor functions and that + handles type-safety and defaults. MyConfig is just an example + name, the application developer choses the actual name. + +myapp.kcfg: File describing the configuration options used by a specific + application. myapp.kcfg is just an example name, the application + developer choses the actual name. + +myconfig.kcfgc: Implementation specific code generation instructions + for the MyConfig class. myconfig.kcfgc is + just an example name, the application developer + choses the actual name. + +KConfigDialogManager: Class that links widgets in a dialog up with their + corresponding configuration options in a configuration + object derived from KConfigSkeleton. + +MyConfigWidget: Dialog generated from a .ui description file. Widget names + in the dialog that start with "kcfg_" refer to configuration + options. + +See http://techbase.kde.org/Development/Tutorials/Using_KConfig_XT diff --git a/KF6ConfigConfig.cmake.in b/KF6ConfigConfig.cmake.in new file mode 100644 index 0000000..9dcae19 --- /dev/null +++ b/KF6ConfigConfig.cmake.in @@ -0,0 +1,31 @@ +@PACKAGE_INIT@ + +# Any changes in this ".cmake" file will be overwritten by CMake, the source is the ".cmake.in" file. + +include("${CMAKE_CURRENT_LIST_DIR}/KF6ConfigTargets.cmake") +@PACKAGE_INCLUDE_QCHTARGETS@ + +include(CMakeFindDependencyMacro) + +if(NOT @BUILD_SHARED_LIBS@) + find_dependency(Qt6Xml @REQUIRED_QT_VERSION@) +endif() + +if(@KCONFIG_USE_DBUS@) + find_dependency(Qt6DBus "@REQUIRED_QT_VERSION@") +endif() + +if(@KCONFIG_USE_QML@) + find_dependency(Qt6Qml "@REQUIRED_QT_VERSION@") +endif() + +if(CMAKE_CROSSCOMPILING AND KF6_HOST_TOOLING) + find_file(KCONFIGCOMPILER_PATH KF6Config/KF6ConfigCompilerTargets.cmake + PATHS ${KF6_HOST_TOOLING} ${CMAKE_CURRENT_LIST_DIR} + NO_DEFAULT_PATH + NO_CMAKE_FIND_ROOT_PATH) + include("${KCONFIGCOMPILER_PATH}") +else() + include("${CMAKE_CURRENT_LIST_DIR}/KF6ConfigCompilerTargets.cmake") +endif() +include("${CMAKE_CURRENT_LIST_DIR}/KF6ConfigMacros.cmake") diff --git a/KF6ConfigMacros.cmake b/KF6ConfigMacros.cmake new file mode 100644 index 0000000..73bc356 --- /dev/null +++ b/KF6ConfigMacros.cmake @@ -0,0 +1,265 @@ +# KCONFIG_ADD_KCFG_FILES (SRCS_VAR [GENERATE_MOC] [USE_RELATIVE_PATH] file1.kcfgc ... fileN.kcfgc) +# KCONFIG_ADD_KCFG_FILES ( [GENERATE_MOC] [USE_RELATIVE_PATH] file1.kcfgc ... fileN.kcfgc) (since 5.67) +# Use this to add KDE config compiler files to your application/library. +# Use optional GENERATE_MOC to generate moc if you use signals in your kcfg files. +# Use optional USE_RELATIVE_PATH to generate the classes in the build following the given +# relative path to the file. +# must not be an alias. +# +# kconfig_target_kcfg_file( FILE CLASS_NAME ...) +# Add a kcfg file to a target without having a kcfgc file. The kcfgc file will +# be generated from the function arguments. Arguments correspond to the +# similarly names fields from the kcfgc file. +# +# TARGET should be a valid target. FILE is required and should be the name of +# a kcfg file. CLASS_NAME is required and should be the name of the C++ class +# that is generated. All the other arguments are optional. +# +# Option arguments are: +# MUTATORS +# SINGLETON +# CUSTOM_ADDITIONS +# NOTIFIERS +# DEFAULT_VALUE_GETTERS +# ITEM_ACCESSORS +# SET_USER_TEXTS +# GLOBAL_ENUMS +# USE_ENUM_TYPES +# FORCE_STRING_FILENAME +# GENERATE_PROPERTIES +# PARENT_IN_CONSTRUCTOR +# GENERATE_MOC +# Single value arguments are: +# FILE +# CLASS_NAME +# VISIBILITY +# HEADER_EXTENSION +# SOURCE_EXTENSION +# NAME_SPACE +# INHERITS +# MEMBER_VARIABLES +# TRANSLATION_SYSTEM +# TRANSLATION_DOMAIN +# Multi value arguments are: +# INCLUDE_FILES +# SOURCE_INCLUDE_FILES +# +# SPDX-FileCopyrightText: 2006-2009 Alexander Neundorf +# SPDX-FileCopyrightText: 2006, 2007, Laurent Montel +# SPDX-FileCopyrightText: 2007 Matthias Kretz +# +# SPDX-License-Identifier: BSD-3-Clause + +include(CMakeParseArguments) + +function(KCONFIG_ADD_KCFG_FILES _target_or_source_var) + set(options GENERATE_MOC USE_RELATIVE_PATH) + cmake_parse_arguments(ARG "${options}" "" "" ${ARGN}) + + if(TARGET ${_target_or_source_var}) + get_target_property(aliased_target ${_target_or_source_var} ALIASED_TARGET) + if(aliased_target) + message(FATAL_ERROR "Target argument passed to kconfig_add_kcfg_files must not be an alias: ${_target_or_source_var}") + endif() + endif() + + set(sources) + foreach(_current_FILE ${ARG_UNPARSED_ARGUMENTS}) + get_filename_component(_tmp_FILE ${_current_FILE} ABSOLUTE) + get_filename_component(_abs_PATH ${_tmp_FILE} PATH) + + if(ARG_USE_RELATIVE_PATH) # Process relative path only if the option was set + # Get relative path + get_filename_component(_rel_PATH ${_current_FILE} PATH) + + if(IS_ABSOLUTE ${_rel_PATH}) + # We got an absolute path + set(_rel_PATH "") + endif() + endif() + + get_filename_component(_basename ${_tmp_FILE} NAME_WE) + # If we had a relative path and we're asked to use it, then change the basename accordingly + if(_rel_PATH) + set(_basename ${_rel_PATH}/${_basename}) + endif() + + # if the file name in the kcfgc is changed, we need to rerun cmake + set_property(DIRECTORY APPEND + PROPERTY CMAKE_CONFIGURE_DEPENDS ${_tmp_FILE} + ) + + file(READ ${_tmp_FILE} _contents) + string(REGEX MATCH "File=([^\n]+\\.kcfg)\n" "" "${_contents}") + set(_kcfg_FILENAME "${CMAKE_MATCH_1}") + if(NOT _kcfg_FILENAME) + string(REGEX MATCH "File=([^\n]+\\.kcfg).*\n" "" "${_contents}") + if(CMAKE_MATCH_1) + message(WARNING "${_tmp_FILE}: Broken \"File\" field, make sure it's pointing at the right file") + set(_kcfg_FILENAME "${CMAKE_MATCH_1}") + else() + message(WARNING "Couldn't read the \"File\" field in ${_tmp_FILE}") + set(_kcfg_FILENAME "${_basename}.kcfg") + endif() + endif() + + string(REGEX MATCH "HeaderExtension=([^\n]+)\n" "" "${_contents}") + if(CMAKE_MATCH_1) + set(_kcfg_header_EXT "${CMAKE_MATCH_1}") + else() + set(_kcfg_header_EXT "h") + endif() + + set(_src_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp) + set(_header_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.${_kcfg_header_EXT}) + set(_moc_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc) + set(_kcfg_FILE ${_abs_PATH}/${_kcfg_FILENAME}) + # Maybe the .kcfg is a generated file? + if(NOT EXISTS "${_kcfg_FILE}") + set(_kcfg_FILE ${CMAKE_CURRENT_BINARY_DIR}/${_kcfg_FILENAME}) + endif() + + if(NOT EXISTS "${_kcfg_FILE}") + message(FATAL_ERROR "${_kcfg_FILENAME} not found; tried in ${_abs_PATH} and ${CMAKE_CURRENT_BINARY_DIR}") + endif() + + # make sure the directory exist in the build directory + if(NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/${_rel_PATH}") + file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_rel_PATH}) + endif() + + # the command for creating the source file from the kcfg file + add_custom_command(OUTPUT ${_header_FILE} ${_src_FILE} + COMMAND KF6::kconfig_compiler + ARGS ${_kcfg_FILE} ${_tmp_FILE} -d ${CMAKE_CURRENT_BINARY_DIR}/${_rel_PATH} + MAIN_DEPENDENCY ${_tmp_FILE} + DEPENDS ${_kcfg_FILE} KF6::kconfig_compiler) + + set_source_files_properties(${_header_FILE} ${_src_FILE} PROPERTIES + SKIP_AUTOUIC ON + ) + + if(NOT ARG_GENERATE_MOC) + set_source_files_properties(${_header_FILE} ${_src_FILE} PROPERTIES + SKIP_AUTOMOC ON + ) + endif() + + list(APPEND sources ${_src_FILE} ${_header_FILE}) + endforeach(_current_FILE) + + if(TARGET ${_target_or_source_var}) + target_sources(${_target_or_source_var} PRIVATE ${sources}) + else() + set(${_target_or_source_var} ${${_target_or_source_var}} ${sources} PARENT_SCOPE) + endif() + +endfunction(KCONFIG_ADD_KCFG_FILES) + +function(_convert_to_camelcase ARG_INPUT ARG_OUTPUT) + string(TOLOWER "${ARG_INPUT}" _input_lc) + string(REPLACE "_" ";" _input_parts "${_input_lc}") + set(_result "") + foreach(_part ${_input_parts}) + string(SUBSTRING "${_part}" 0 1 _first) + string(TOUPPER "${_first}" _first_uc) + string(APPEND _result "${_first_uc}") + string(SUBSTRING "${_part}" 1 -1 _rest) + string(APPEND _result "${_rest}") + endforeach() + set(${ARG_OUTPUT} "${_result}" PARENT_SCOPE) +endfunction() + +function(kconfig_target_kcfg_file ARG_TARGET) + set(_options + MUTATORS + SINGLETON + CUSTOM_ADDITIONS + NOTIFIERS + DEFAULT_VALUE_GETTERS + ITEM_ACCESSORS + SET_USER_TEXTS + GLOBAL_ENUMS + USE_ENUM_TYPES + FORCE_STRING_FILENAME + GENERATE_PROPERTIES + PARENT_IN_CONSTRUCTOR + GENERATE_MOC + QML_REGISTRATION + ) + set(_single_arguments + FILE + CLASS_NAME + VISIBILITY + HEADER_EXTENSION + SOURCE_EXTENSION + NAME_SPACE + INHERITS + MEMBER_VARIABLES + TRANSLATION_SYSTEM + TRANSLATION_DOMAIN + ) + set(_multi_arguments + INCLUDE_FILES + SOURCE_INCLUDE_FILES + ) + cmake_parse_arguments(PARSE_ARGV 1 ARG "${_options}" "${_single_arguments}" "${_multi_arguments}") + + if(NOT TARGET ${ARG_TARGET}) + message(FATAL_ERROR "${ARG_TARGET} not found") + endif() + + if(NOT EXISTS "${ARG_FILE}" AND NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${ARG_FILE}") + message(FATAL_ERROR "${ARG_FILE} not found") + endif() + + if("${ARG_CLASS_NAME}" STREQUAL "") + message(FATAL_ERROR "CLASS_NAME is a required argument") + endif() + + set(_filepath "${ARG_FILE}") + get_filename_component(_filename ${ARG_FILE} NAME) + if(IS_ABSOLUTE ${ARG_FILE}) + set(ARG_FILE ${_filename}) + endif() + + set(_content "") + + foreach(_option ${_options}) + if("${_option}" STREQUAL "GENERATE_MOC") + continue() + endif() + + _convert_to_camelcase("${_option}" _entry) + if(ARG_${_option}) + string(APPEND _content "${_entry}=true\n") + endif() + endforeach() + + foreach(_argument ${_single_arguments}) + _convert_to_camelcase("${_argument}" _entry) + if(ARG_${_argument}) + string(APPEND _content "${_entry}=${ARG_${_argument}}\n") + endif() + endforeach() + + foreach(_argument ${_multi_arguments}) + _convert_to_camelcase("${_argument}" _entry) + if(ARG_${_argument}) + list(JOIN ARG_${_argument} ", " _joined) + string(APPEND _content "${_entry}=${_joined}\n") + endif() + endforeach() + + get_filename_component(_basename ${_filepath} NAME_WE) + set(_output "${CMAKE_CURRENT_BINARY_DIR}/${_basename}.kcfgc") + file(WRITE ${_output} "${_content}") + + configure_file(${_filepath} "${CMAKE_CURRENT_BINARY_DIR}/${_filename}" COPYONLY) + + if(${ARG_GENERATE_MOC}) + KCONFIG_ADD_KCFG_FILES(${ARG_TARGET} ${_output} GENERATE_MOC) + else() + KCONFIG_ADD_KCFG_FILES(${ARG_TARGET} ${_output}) + endif() +endfunction() diff --git a/LICENSES/BSD-2-Clause.txt b/LICENSES/BSD-2-Clause.txt new file mode 100644 index 0000000..2d2bab1 --- /dev/null +++ b/LICENSES/BSD-2-Clause.txt @@ -0,0 +1,22 @@ +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, +this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE +LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE +USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/LICENSES/BSD-3-Clause.txt b/LICENSES/BSD-3-Clause.txt new file mode 100644 index 0000000..0741db7 --- /dev/null +++ b/LICENSES/BSD-3-Clause.txt @@ -0,0 +1,26 @@ +Copyright (c) . All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, +this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors +may be used to endorse or promote products derived from this software without +specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE +LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE +USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/LICENSES/CC0-1.0.txt b/LICENSES/CC0-1.0.txt new file mode 100644 index 0000000..0e259d4 --- /dev/null +++ b/LICENSES/CC0-1.0.txt @@ -0,0 +1,121 @@ +Creative Commons Legal Code + +CC0 1.0 Universal + + CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE + LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN + ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS + INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES + REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS + PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM + THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED + HEREUNDER. + +Statement of Purpose + +The laws of most jurisdictions throughout the world automatically confer +exclusive Copyright and Related Rights (defined below) upon the creator +and subsequent owner(s) (each and all, an "owner") of an original work of +authorship and/or a database (each, a "Work"). + +Certain owners wish to permanently relinquish those rights to a Work for +the purpose of contributing to a commons of creative, cultural and +scientific works ("Commons") that the public can reliably and without fear +of later claims of infringement build upon, modify, incorporate in other +works, reuse and redistribute as freely as possible in any form whatsoever +and for any purposes, including without limitation commercial purposes. +These owners may contribute to the Commons to promote the ideal of a free +culture and the further production of creative, cultural and scientific +works, or to gain reputation or greater distribution for their Work in +part through the use and efforts of others. + +For these and/or other purposes and motivations, and without any +expectation of additional consideration or compensation, the person +associating CC0 with a Work (the "Affirmer"), to the extent that he or she +is an owner of Copyright and Related Rights in the Work, voluntarily +elects to apply CC0 to the Work and publicly distribute the Work under its +terms, with knowledge of his or her Copyright and Related Rights in the +Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be +protected by copyright and related or neighboring rights ("Copyright and +Related Rights"). Copyright and Related Rights include, but are not +limited to, the following: + + i. the right to reproduce, adapt, distribute, perform, display, + communicate, and translate a Work; + ii. moral rights retained by the original author(s) and/or performer(s); +iii. publicity and privacy rights pertaining to a person's image or + likeness depicted in a Work; + iv. rights protecting against unfair competition in regards to a Work, + subject to the limitations in paragraph 4(a), below; + v. rights protecting the extraction, dissemination, use and reuse of data + in a Work; + vi. database rights (such as those arising under Directive 96/9/EC of the + European Parliament and of the Council of 11 March 1996 on the legal + protection of databases, and under any national implementation + thereof, including any amended or successor version of such + directive); and +vii. other similar, equivalent or corresponding rights throughout the + world based on applicable law or treaty, and any national + implementations thereof. + +2. Waiver. To the greatest extent permitted by, but not in contravention +of, applicable law, Affirmer hereby overtly, fully, permanently, +irrevocably and unconditionally waives, abandons, and surrenders all of +Affirmer's Copyright and Related Rights and associated claims and causes +of action, whether now known or unknown (including existing as well as +future claims and causes of action), in the Work (i) in all territories +worldwide, (ii) for the maximum duration provided by applicable law or +treaty (including future time extensions), (iii) in any current or future +medium and for any number of copies, and (iv) for any purpose whatsoever, +including without limitation commercial, advertising or promotional +purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each +member of the public at large and to the detriment of Affirmer's heirs and +successors, fully intending that such Waiver shall not be subject to +revocation, rescission, cancellation, termination, or any other legal or +equitable action to disrupt the quiet enjoyment of the Work by the public +as contemplated by Affirmer's express Statement of Purpose. + +3. Public License Fallback. Should any part of the Waiver for any reason +be judged legally invalid or ineffective under applicable law, then the +Waiver shall be preserved to the maximum extent permitted taking into +account Affirmer's express Statement of Purpose. In addition, to the +extent the Waiver is so judged Affirmer hereby grants to each affected +person a royalty-free, non transferable, non sublicensable, non exclusive, +irrevocable and unconditional license to exercise Affirmer's Copyright and +Related Rights in the Work (i) in all territories worldwide, (ii) for the +maximum duration provided by applicable law or treaty (including future +time extensions), (iii) in any current or future medium and for any number +of copies, and (iv) for any purpose whatsoever, including without +limitation commercial, advertising or promotional purposes (the +"License"). The License shall be deemed effective as of the date CC0 was +applied by Affirmer to the Work. Should any part of the License for any +reason be judged legally invalid or ineffective under applicable law, such +partial invalidity or ineffectiveness shall not invalidate the remainder +of the License, and in such case Affirmer hereby affirms that he or she +will not (i) exercise any of his or her remaining Copyright and Related +Rights in the Work or (ii) assert any associated claims and causes of +action with respect to the Work, in either case contrary to Affirmer's +express Statement of Purpose. + +4. Limitations and Disclaimers. + + a. No trademark or patent rights held by Affirmer are waived, abandoned, + surrendered, licensed or otherwise affected by this document. + b. Affirmer offers the Work as-is and makes no representations or + warranties of any kind concerning the Work, express, implied, + statutory or otherwise, including without limitation warranties of + title, merchantability, fitness for a particular purpose, non + infringement, or the absence of latent or other defects, accuracy, or + the present or absence of errors, whether or not discoverable, all to + the greatest extent permissible under applicable law. + c. Affirmer disclaims responsibility for clearing rights of other persons + that may apply to the Work or any use thereof, including without + limitation any person's Copyright and Related Rights in the Work. + Further, Affirmer disclaims responsibility for obtaining any necessary + consents, permissions or other rights required for any use of the + Work. + d. Affirmer understands and acknowledges that Creative Commons is not a + party to this document and has no duty or obligation with respect to + this CC0 or use of the Work. diff --git a/LICENSES/GPL-2.0-or-later.txt b/LICENSES/GPL-2.0-or-later.txt new file mode 100644 index 0000000..1d80ac3 --- /dev/null +++ b/LICENSES/GPL-2.0-or-later.txt @@ -0,0 +1,319 @@ +GNU GENERAL PUBLIC LICENSE + +Version 2, June 1991 + +Copyright (C) 1989, 1991 Free Software Foundation, Inc. + +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + +Everyone is permitted to copy and distribute verbatim copies of this license +document, but changing it is not allowed. + +Preamble + +The licenses for most software are designed to take away your freedom to share +and change it. By contrast, the GNU General Public License is intended to +guarantee your freedom to share and change free software--to make sure the +software is free for all its users. This General Public License applies to +most of the Free Software Foundation's software and to any other program whose +authors commit to using it. (Some other Free Software Foundation software +is covered by the GNU Lesser General Public License instead.) You can apply +it to your programs, too. + +When we speak of free software, we are referring to freedom, not price. Our +General Public Licenses are designed to make sure that you have the freedom +to distribute copies of free software (and charge for this service if you +wish), that you receive source code or can get it if you want it, that you +can change the software or use pieces of it in new free programs; and that +you know you can do these things. + +To protect your rights, we need to make restrictions that forbid anyone to +deny you these rights or to ask you to surrender the rights. These restrictions +translate to certain responsibilities for you if you distribute copies of +the software, or if you modify it. + +For example, if you distribute copies of such a program, whether gratis or +for a fee, you must give the recipients all the rights that you have. You +must make sure that they, too, receive or can get the source code. And you +must show them these terms so they know their rights. + +We protect your rights with two steps: (1) copyright the software, and (2) +offer you this license which gives you legal permission to copy, distribute +and/or modify the software. + +Also, for each author's protection and ours, we want to make certain that +everyone understands that there is no warranty for this free software. If +the software is modified by someone else and passed on, we want its recipients +to know that what they have is not the original, so that any problems introduced +by others will not reflect on the original authors' reputations. + +Finally, any free program is threatened constantly by software patents. We +wish to avoid the danger that redistributors of a free program will individually +obtain patent licenses, in effect making the program proprietary. To prevent +this, we have made it clear that any patent must be licensed for everyone's +free use or not licensed at all. + +The precise terms and conditions for copying, distribution and modification +follow. + +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + +0. This License applies to any program or other work which contains a notice +placed by the copyright holder saying it may be distributed under the terms +of this General Public License. The "Program", below, refers to any such program +or work, and a "work based on the Program" means either the Program or any +derivative work under copyright law: that is to say, a work containing the +Program or a portion of it, either verbatim or with modifications and/or translated +into another language. (Hereinafter, translation is included without limitation +in the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not covered +by this License; they are outside its scope. The act of running the Program +is not restricted, and the output from the Program is covered only if its +contents constitute a work based on the Program (independent of having been +made by running the Program). Whether that is true depends on what the Program +does. + +1. You may copy and distribute verbatim copies of the Program's source code +as you receive it, in any medium, provided that you conspicuously and appropriately +publish on each copy an appropriate copyright notice and disclaimer of warranty; +keep intact all the notices that refer to this License and to the absence +of any warranty; and give any other recipients of the Program a copy of this +License along with the Program. + +You may charge a fee for the physical act of transferring a copy, and you +may at your option offer warranty protection in exchange for a fee. + +2. You may modify your copy or copies of the Program or any portion of it, +thus forming a work based on the Program, and copy and distribute such modifications +or work under the terms of Section 1 above, provided that you also meet all +of these conditions: + +a) You must cause the modified files to carry prominent notices stating that +you changed the files and the date of any change. + +b) You must cause any work that you distribute or publish, that in whole or +in part contains or is derived from the Program or any part thereof, to be +licensed as a whole at no charge to all third parties under the terms of this +License. + +c) If the modified program normally reads commands interactively when run, +you must cause it, when started running for such interactive use in the most +ordinary way, to print or display an announcement including an appropriate +copyright notice and a notice that there is no warranty (or else, saying that +you provide a warranty) and that users may redistribute the program under +these conditions, and telling the user how to view a copy of this License. +(Exception: if the Program itself is interactive but does not normally print +such an announcement, your work based on the Program is not required to print +an announcement.) + +These requirements apply to the modified work as a whole. If identifiable +sections of that work are not derived from the Program, and can be reasonably +considered independent and separate works in themselves, then this License, +and its terms, do not apply to those sections when you distribute them as +separate works. But when you distribute the same sections as part of a whole +which is a work based on the Program, the distribution of the whole must be +on the terms of this License, whose permissions for other licensees extend +to the entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest your +rights to work written entirely by you; rather, the intent is to exercise +the right to control the distribution of derivative or collective works based +on the Program. + +In addition, mere aggregation of another work not based on the Program with +the Program (or with a work based on the Program) on a volume of a storage +or distribution medium does not bring the other work under the scope of this +License. + +3. You may copy and distribute the Program (or a work based on it, under Section +2) in object code or executable form under the terms of Sections 1 and 2 above +provided that you also do one of the following: + +a) Accompany it with the complete corresponding machine-readable source code, +which must be distributed under the terms of Sections 1 and 2 above on a medium +customarily used for software interchange; or, + +b) Accompany it with a written offer, valid for at least three years, to give +any third party, for a charge no more than your cost of physically performing +source distribution, a complete machine-readable copy of the corresponding +source code, to be distributed under the terms of Sections 1 and 2 above on +a medium customarily used for software interchange; or, + +c) Accompany it with the information you received as to the offer to distribute +corresponding source code. (This alternative is allowed only for noncommercial +distribution and only if you received the program in object code or executable +form with such an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for making +modifications to it. For an executable work, complete source code means all +the source code for all modules it contains, plus any associated interface +definition files, plus the scripts used to control compilation and installation +of the executable. However, as a special exception, the source code distributed +need not include anything that is normally distributed (in either source or +binary form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component itself +accompanies the executable. + +If distribution of executable or object code is made by offering access to +copy from a designated place, then offering equivalent access to copy the +source code from the same place counts as distribution of the source code, +even though third parties are not compelled to copy the source along with +the object code. + +4. You may not copy, modify, sublicense, or distribute the Program except +as expressly provided under this License. Any attempt otherwise to copy, modify, +sublicense or distribute the Program is void, and will automatically terminate +your rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses terminated +so long as such parties remain in full compliance. + +5. You are not required to accept this License, since you have not signed +it. However, nothing else grants you permission to modify or distribute the +Program or its derivative works. These actions are prohibited by law if you +do not accept this License. Therefore, by modifying or distributing the Program +(or any work based on the Program), you indicate your acceptance of this License +to do so, and all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + +6. Each time you redistribute the Program (or any work based on the Program), +the recipient automatically receives a license from the original licensor +to copy, distribute or modify the Program subject to these terms and conditions. +You may not impose any further restrictions on the recipients' exercise of +the rights granted herein. You are not responsible for enforcing compliance +by third parties to this License. + +7. If, as a consequence of a court judgment or allegation of patent infringement +or for any other reason (not limited to patent issues), conditions are imposed +on you (whether by court order, agreement or otherwise) that contradict the +conditions of this License, they do not excuse you from the conditions of +this License. If you cannot distribute so as to satisfy simultaneously your +obligations under this License and any other pertinent obligations, then as +a consequence you may not distribute the Program at all. For example, if a +patent license would not permit royalty-free redistribution of the Program +by all those who receive copies directly or indirectly through you, then the +only way you could satisfy both it and this License would be to refrain entirely +from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply and +the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any patents +or other property right claims or to contest validity of any such claims; +this section has the sole purpose of protecting the integrity of the free +software distribution system, which is implemented by public license practices. +Many people have made generous contributions to the wide range of software +distributed through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing to +distribute software through any other system and a licensee cannot impose +that choice. + +This section is intended to make thoroughly clear what is believed to be a +consequence of the rest of this License. + +8. If the distribution and/or use of the Program is restricted in certain +countries either by patents or by copyrighted interfaces, the original copyright +holder who places the Program under this License may add an explicit geographical +distribution limitation excluding those countries, so that distribution is +permitted only in or among countries not thus excluded. In such case, this +License incorporates the limitation as if written in the body of this License. + +9. The Free Software Foundation may publish revised and/or new versions of +the General Public License from time to time. Such new versions will be similar +in spirit to the present version, but may differ in detail to address new +problems or concerns. + +Each version is given a distinguishing version number. If the Program specifies +a version number of this License which applies to it and "any later version", +you have the option of following the terms and conditions either of that version +or of any later version published by the Free Software Foundation. If the +Program does not specify a version number of this License, you may choose +any version ever published by the Free Software Foundation. + +10. If you wish to incorporate parts of the Program into other free programs +whose distribution conditions are different, write to the author to ask for +permission. For software which is copyrighted by the Free Software Foundation, +write to the Free Software Foundation; we sometimes make exceptions for this. +Our decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing and reuse +of software generally. + + NO WARRANTY + +11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR +THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE +STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM +"AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE +OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE +OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA +OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES +OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH +HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. +END OF TERMS AND CONDITIONS + +How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest possible +use to the public, the best way to achieve this is to make it free software +which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest to attach +them to the start of each source file to most effectively convey the exclusion +of warranty; and each file should have at least the "copyright" line and a +pointer to where the full notice is found. + + + +Copyright (C) + +This program is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free Software +Foundation; either version 2 of the License, or (at your option) any later +version. + +This program is distributed in the hope that it will be useful, but WITHOUT +ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along with +this program; if not, write to the Free Software Foundation, Inc., 51 Franklin +Street, Fifth Floor, Boston, MA 02110-1301, USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this when +it starts in an interactive mode: + +Gnomovision version 69, Copyright (C) year name of author Gnomovision comes +with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, +and you are welcome to redistribute it under certain conditions; type `show +c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may be +called something other than `show w' and `show c'; they could even be mouse-clicks +or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your school, +if any, to sign a "copyright disclaimer" for the program, if necessary. Here +is a sample; alter the names: + +Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' +(which makes passes at compilers) written by James Hacker. + +, 1 April 1989 Ty Coon, President of Vice This General +Public License does not permit incorporating your program into proprietary +programs. If your program is a subroutine library, you may consider it more +useful to permit linking proprietary applications with the library. If this +is what you want to do, use the GNU Lesser General Public License instead +of this License. diff --git a/LICENSES/LGPL-2.0-only.txt b/LICENSES/LGPL-2.0-only.txt new file mode 100644 index 0000000..5c96471 --- /dev/null +++ b/LICENSES/LGPL-2.0-only.txt @@ -0,0 +1,446 @@ +GNU LIBRARY GENERAL PUBLIC LICENSE + +Version 2, June 1991 Copyright (C) 1991 Free Software Foundation, Inc. + +51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + +Everyone is permitted to copy and distribute verbatim copies of this license +document, but changing it is not allowed. + +[This is the first released version of the library GPL. It is numbered 2 because +it goes with version 2 of the ordinary GPL.] + +Preamble + +The licenses for most software are designed to take away your freedom to share +and change it. By contrast, the GNU General Public Licenses are intended to +guarantee your freedom to share and change free software--to make sure the +software is free for all its users. + +This license, the Library General Public License, applies to some specially +designated Free Software Foundation software, and to any other libraries whose +authors decide to use it. You can use it for your libraries, too. + +When we speak of free software, we are referring to freedom, not price. Our +General Public Licenses are designed to make sure that you have the freedom +to distribute copies of free software (and charge for this service if you +wish), that you receive source code or can get it if you want it, that you +can change the software or use pieces of it in new free programs; and that +you know you can do these things. + +To protect your rights, we need to make restrictions that forbid anyone to +deny you these rights or to ask you to surrender the rights. These restrictions +translate to certain responsibilities for you if you distribute copies of +the library, or if you modify it. + +For example, if you distribute copies of the library, whether gratis or for +a fee, you must give the recipients all the rights that we gave you. You must +make sure that they, too, receive or can get the source code. If you link +a program with the library, you must provide complete object files to the +recipients so that they can relink them with the library, after making changes +to the library and recompiling it. And you must show them these terms so they +know their rights. + +Our method of protecting your rights has two steps: (1) copyright the library, +and (2) offer you this license which gives you legal permission to copy, distribute +and/or modify the library. + +Also, for each distributor's protection, we want to make certain that everyone +understands that there is no warranty for this free library. If the library +is modified by someone else and passed on, we want its recipients to know +that what they have is not the original version, so that any problems introduced +by others will not reflect on the original authors' reputations. + +Finally, any free program is threatened constantly by software patents. We +wish to avoid the danger that companies distributing free software will individually +obtain patent licenses, thus in effect transforming the program into proprietary +software. To prevent this, we have made it clear that any patent must be licensed +for everyone's free use or not licensed at all. + +Most GNU software, including some libraries, is covered by the ordinary GNU +General Public License, which was designed for utility programs. This license, +the GNU Library General Public License, applies to certain designated libraries. +This license is quite different from the ordinary one; be sure to read it +in full, and don't assume that anything in it is the same as in the ordinary +license. + +The reason we have a separate public license for some libraries is that they +blur the distinction we usually make between modifying or adding to a program +and simply using it. Linking a program with a library, without changing the +library, is in some sense simply using the library, and is analogous to running +a utility program or application program. However, in a textual and legal +sense, the linked executable is a combined work, a derivative of the original +library, and the ordinary General Public License treats it as such. + +Because of this blurred distinction, using the ordinary General Public License +for libraries did not effectively promote software sharing, because most developers +did not use the libraries. We concluded that weaker conditions might promote +sharing better. + +However, unrestricted linking of non-free programs would deprive the users +of those programs of all benefit from the free status of the libraries themselves. +This Library General Public License is intended to permit developers of non-free +programs to use free libraries, while preserving your freedom as a user of +such programs to change the free libraries that are incorporated in them. +(We have not seen how to achieve this as regards changes in header files, +but we have achieved it as regards changes in the actual functions of the +Library.) The hope is that this will lead to faster development of free libraries. + +The precise terms and conditions for copying, distribution and modification +follow. Pay close attention to the difference between a "work based on the +library" and a "work that uses the library". The former contains code derived +from the library, while the latter only works together with the library. + +Note that it is possible for a library to be covered by the ordinary General +Public License rather than by this special one. + +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + +0. This License Agreement applies to any software library which contains a +notice placed by the copyright holder or other authorized party saying it +may be distributed under the terms of this Library General Public License +(also called "this License"). Each licensee is addressed as "you". + +A "library" means a collection of software functions and/or data prepared +so as to be conveniently linked with application programs (which use some +of those functions and data) to form executables. + +The "Library", below, refers to any such software library or work which has +been distributed under these terms. A "work based on the Library" means either +the Library or any derivative work under copyright law: that is to say, a +work containing the Library or a portion of it, either verbatim or with modifications +and/or translated straightforwardly into another language. (Hereinafter, translation +is included without limitation in the term "modification".) + +"Source code" for a work means the preferred form of the work for making modifications +to it. For a library, complete source code means all the source code for all +modules it contains, plus any associated interface definition files, plus +the scripts used to control compilation and installation of the library. + +Activities other than copying, distribution and modification are not covered +by this License; they are outside its scope. The act of running a program +using the Library is not restricted, and output from such a program is covered +only if its contents constitute a work based on the Library (independent of +the use of the Library in a tool for writing it). Whether that is true depends +on what the Library does and what the program that uses the Library does. + +1. You may copy and distribute verbatim copies of the Library's complete source +code as you receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice and disclaimer +of warranty; keep intact all the notices that refer to this License and to +the absence of any warranty; and distribute a copy of this License along with +the Library. + +You may charge a fee for the physical act of transferring a copy, and you +may at your option offer warranty protection in exchange for a fee. + +2. You may modify your copy or copies of the Library or any portion of it, +thus forming a work based on the Library, and copy and distribute such modifications +or work under the terms of Section 1 above, provided that you also meet all +of these conditions: + + a) The modified work must itself be a software library. + +b) You must cause the files modified to carry prominent notices stating that +you changed the files and the date of any change. + +c) You must cause the whole of the work to be licensed at no charge to all +third parties under the terms of this License. + +d) If a facility in the modified Library refers to a function or a table of +data to be supplied by an application program that uses the facility, other +than as an argument passed when the facility is invoked, then you must make +a good faith effort to ensure that, in the event an application does not supply +such function or table, the facility still operates, and performs whatever +part of its purpose remains meaningful. + +(For example, a function in a library to compute square roots has a purpose +that is entirely well-defined independent of the application. Therefore, Subsection +2d requires that any application-supplied function or table used by this function +must be optional: if the application does not supply it, the square root function +must still compute square roots.) + +These requirements apply to the modified work as a whole. If identifiable +sections of that work are not derived from the Library, and can be reasonably +considered independent and separate works in themselves, then this License, +and its terms, do not apply to those sections when you distribute them as +separate works. But when you distribute the same sections as part of a whole +which is a work based on the Library, the distribution of the whole must be +on the terms of this License, whose permissions for other licensees extend +to the entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest your +rights to work written entirely by you; rather, the intent is to exercise +the right to control the distribution of derivative or collective works based +on the Library. + +In addition, mere aggregation of another work not based on the Library with +the Library (or with a work based on the Library) on a volume of a storage +or distribution medium does not bring the other work under the scope of this +License. + +3. You may opt to apply the terms of the ordinary GNU General Public License +instead of this License to a given copy of the Library. To do this, you must +alter all the notices that refer to this License, so that they refer to the +ordinary GNU General Public License, version 2, instead of to this License. +(If a newer version than version 2 of the ordinary GNU General Public License +has appeared, then you can specify that version instead if you wish.) Do not +make any other change in these notices. + +Once this change is made in a given copy, it is irreversible for that copy, +so the ordinary GNU General Public License applies to all subsequent copies +and derivative works made from that copy. + +This option is useful when you wish to copy part of the code of the Library +into a program that is not a library. + +4. You may copy and distribute the Library (or a portion or derivative of +it, under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you accompany it with the complete corresponding +machine-readable source code, which must be distributed under the terms of +Sections 1 and 2 above on a medium customarily used for software interchange. + +If distribution of object code is made by offering access to copy from a designated +place, then offering equivalent access to copy the source code from the same +place satisfies the requirement to distribute the source code, even though +third parties are not compelled to copy the source along with the object code. + +5. A program that contains no derivative of any portion of the Library, but +is designed to work with the Library by being compiled or linked with it, +is called a "work that uses the Library". Such a work, in isolation, is not +a derivative work of the Library, and therefore falls outside the scope of +this License. + +However, linking a "work that uses the Library" with the Library creates an +executable that is a derivative of the Library (because it contains portions +of the Library), rather than a "work that uses the library". The executable +is therefore covered by this License. Section 6 states terms for distribution +of such executables. + +When a "work that uses the Library" uses material from a header file that +is part of the Library, the object code for the work may be a derivative work +of the Library even though the source code is not. Whether this is true is +especially significant if the work can be linked without the Library, or if +the work is itself a library. The threshold for this to be true is not precisely +defined by law. + +If such an object file uses only numerical parameters, data structure layouts +and accessors, and small macros and small inline functions (ten lines or less +in length), then the use of the object file is unrestricted, regardless of +whether it is legally a derivative work. (Executables containing this object +code plus portions of the Library will still fall under Section 6.) + +Otherwise, if the work is a derivative of the Library, you may distribute +the object code for the work under the terms of Section 6. Any executables +containing that work also fall under Section 6, whether or not they are linked +directly with the Library itself. + +6. As an exception to the Sections above, you may also compile or link a "work +that uses the Library" with the Library to produce a work containing portions +of the Library, and distribute that work under terms of your choice, provided +that the terms permit modification of the work for the customer's own use +and reverse engineering for debugging such modifications. + +You must give prominent notice with each copy of the work that the Library +is used in it and that the Library and its use are covered by this License. +You must supply a copy of this License. If the work during execution displays +copyright notices, you must include the copyright notice for the Library among +them, as well as a reference directing the user to the copy of this License. +Also, you must do one of these things: + +a) Accompany the work with the complete corresponding machine-readable source +code for the Library including whatever changes were used in the work (which +must be distributed under Sections 1 and 2 above); and, if the work is an +executable linked with the Library, with the complete machine-readable "work +that uses the Library", as object code and/or source code, so that the user +can modify the Library and then relink to produce a modified executable containing +the modified Library. (It is understood that the user who changes the contents +of definitions files in the Library will not necessarily be able to recompile +the application to use the modified definitions.) + +b) Accompany the work with a written offer, valid for at least three years, +to give the same user the materials specified in Subsection 6a, above, for +a charge no more than the cost of performing this distribution. + +c) If distribution of the work is made by offering access to copy from a designated +place, offer equivalent access to copy the above specified materials from +the same place. + +d) Verify that the user has already received a copy of these materials or +that you have already sent this user a copy. + +For an executable, the required form of the "work that uses the Library" must +include any data and utility programs needed for reproducing the executable +from it. However, as a special exception, the source code distributed need +not include anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the operating +system on which the executable runs, unless that component itself accompanies +the executable. + +It may happen that this requirement contradicts the license restrictions of +other proprietary libraries that do not normally accompany the operating system. +Such a contradiction means you cannot use both them and the Library together +in an executable that you distribute. + +7. You may place library facilities that are a work based on the Library side-by-side +in a single library together with other library facilities not covered by +this License, and distribute such a combined library, provided that the separate +distribution of the work based on the Library and of the other library facilities +is otherwise permitted, and provided that you do these two things: + +a) Accompany the combined library with a copy of the same work based on the +Library, uncombined with any other library facilities. This must be distributed +under the terms of the Sections above. + +b) Give prominent notice with the combined library of the fact that part of +it is a work based on the Library, and explaining where to find the accompanying +uncombined form of the same work. + +8. You may not copy, modify, sublicense, link with, or distribute the Library +except as expressly provided under this License. Any attempt otherwise to +copy, modify, sublicense, link with, or distribute the Library is void, and +will automatically terminate your rights under this License. However, parties +who have received copies, or rights, from you under this License will not +have their licenses terminated so long as such parties remain in full compliance. + +9. You are not required to accept this License, since you have not signed +it. However, nothing else grants you permission to modify or distribute the +Library or its derivative works. These actions are prohibited by law if you +do not accept this License. Therefore, by modifying or distributing the Library +(or any work based on the Library), you indicate your acceptance of this License +to do so, and all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + +10. Each time you redistribute the Library (or any work based on the Library), +the recipient automatically receives a license from the original licensor +to copy, distribute, link with or modify the Library subject to these terms +and conditions. You may not impose any further restrictions on the recipients' +exercise of the rights granted herein. You are not responsible for enforcing +compliance by third parties to this License. + +11. If, as a consequence of a court judgment or allegation of patent infringement +or for any other reason (not limited to patent issues), conditions are imposed +on you (whether by court order, agreement or otherwise) that contradict the +conditions of this License, they do not excuse you from the conditions of +this License. If you cannot distribute so as to satisfy simultaneously your +obligations under this License and any other pertinent obligations, then as +a consequence you may not distribute the Library at all. For example, if a +patent license would not permit royalty-free redistribution of the Library +by all those who receive copies directly or indirectly through you, then the +only way you could satisfy both it and this License would be to refrain entirely +from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any patents +or other property right claims or to contest validity of any such claims; +this section has the sole purpose of protecting the integrity of the free +software distribution system which is implemented by public license practices. +Many people have made generous contributions to the wide range of software +distributed through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing to +distribute software through any other system and a licensee cannot impose +that choice. + +This section is intended to make thoroughly clear what is believed to be a +consequence of the rest of this License. + +12. If the distribution and/or use of the Library is restricted in certain +countries either by patents or by copyrighted interfaces, the original copyright +holder who places the Library under this License may add an explicit geographical +distribution limitation excluding those countries, so that distribution is +permitted only in or among countries not thus excluded. In such case, this +License incorporates the limitation as if written in the body of this License. + +13. The Free Software Foundation may publish revised and/or new versions of +the Library General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to address +new problems or concerns. + +Each version is given a distinguishing version number. If the Library specifies +a version number of this License which applies to it and "any later version", +you have the option of following the terms and conditions either of that version +or of any later version published by the Free Software Foundation. If the +Library does not specify a license version number, you may choose any version +ever published by the Free Software Foundation. + +14. If you wish to incorporate parts of the Library into other free programs +whose distribution conditions are incompatible with these, write to the author +to ask for permission. For software which is copyrighted by the Free Software +Foundation, write to the Free Software Foundation; we sometimes make exceptions +for this. Our decision will be guided by the two goals of preserving the free +status of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + +15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR +THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE +STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY +"AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE +OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE +THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE +OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA +OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES +OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH +HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. +END OF TERMS AND CONDITIONS + +How to Apply These Terms to Your New Libraries + +If you develop a new library, and you want it to be of the greatest possible +use to the public, we recommend making it free software that everyone can +redistribute and change. You can do so by permitting redistribution under +these terms (or, alternatively, under the terms of the ordinary General Public +License). + +To apply these terms, attach the following notices to the library. It is safest +to attach them to the start of each source file to most effectively convey +the exclusion of warranty; and each file should have at least the "copyright" +line and a pointer to where the full notice is found. + +one line to give the library's name and an idea of what it does. + +Copyright (C) year name of author + +This library is free software; you can redistribute it and/or modify it under +the terms of the GNU Library General Public License as published by the Free +Software Foundation; either version 2 of the License, or (at your option) +any later version. + +This library is distributed in the hope that it will be useful, but WITHOUT +ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more +details. + +You should have received a copy of the GNU Library General Public License +along with this library; if not, write to the Free Software Foundation, Inc., +51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your school, +if any, to sign a "copyright disclaimer" for the library, if necessary. Here +is a sample; alter the names: + +Yoyodyne, Inc., hereby disclaims all copyright interest in + +the library `Frob' (a library for tweaking knobs) written + +by James Random Hacker. + +signature of Ty Coon, 1 April 1990 + +Ty Coon, President of Vice + +That's all there is to it! diff --git a/LICENSES/LGPL-2.0-or-later.txt b/LICENSES/LGPL-2.0-or-later.txt new file mode 100644 index 0000000..5c96471 --- /dev/null +++ b/LICENSES/LGPL-2.0-or-later.txt @@ -0,0 +1,446 @@ +GNU LIBRARY GENERAL PUBLIC LICENSE + +Version 2, June 1991 Copyright (C) 1991 Free Software Foundation, Inc. + +51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + +Everyone is permitted to copy and distribute verbatim copies of this license +document, but changing it is not allowed. + +[This is the first released version of the library GPL. It is numbered 2 because +it goes with version 2 of the ordinary GPL.] + +Preamble + +The licenses for most software are designed to take away your freedom to share +and change it. By contrast, the GNU General Public Licenses are intended to +guarantee your freedom to share and change free software--to make sure the +software is free for all its users. + +This license, the Library General Public License, applies to some specially +designated Free Software Foundation software, and to any other libraries whose +authors decide to use it. You can use it for your libraries, too. + +When we speak of free software, we are referring to freedom, not price. Our +General Public Licenses are designed to make sure that you have the freedom +to distribute copies of free software (and charge for this service if you +wish), that you receive source code or can get it if you want it, that you +can change the software or use pieces of it in new free programs; and that +you know you can do these things. + +To protect your rights, we need to make restrictions that forbid anyone to +deny you these rights or to ask you to surrender the rights. These restrictions +translate to certain responsibilities for you if you distribute copies of +the library, or if you modify it. + +For example, if you distribute copies of the library, whether gratis or for +a fee, you must give the recipients all the rights that we gave you. You must +make sure that they, too, receive or can get the source code. If you link +a program with the library, you must provide complete object files to the +recipients so that they can relink them with the library, after making changes +to the library and recompiling it. And you must show them these terms so they +know their rights. + +Our method of protecting your rights has two steps: (1) copyright the library, +and (2) offer you this license which gives you legal permission to copy, distribute +and/or modify the library. + +Also, for each distributor's protection, we want to make certain that everyone +understands that there is no warranty for this free library. If the library +is modified by someone else and passed on, we want its recipients to know +that what they have is not the original version, so that any problems introduced +by others will not reflect on the original authors' reputations. + +Finally, any free program is threatened constantly by software patents. We +wish to avoid the danger that companies distributing free software will individually +obtain patent licenses, thus in effect transforming the program into proprietary +software. To prevent this, we have made it clear that any patent must be licensed +for everyone's free use or not licensed at all. + +Most GNU software, including some libraries, is covered by the ordinary GNU +General Public License, which was designed for utility programs. This license, +the GNU Library General Public License, applies to certain designated libraries. +This license is quite different from the ordinary one; be sure to read it +in full, and don't assume that anything in it is the same as in the ordinary +license. + +The reason we have a separate public license for some libraries is that they +blur the distinction we usually make between modifying or adding to a program +and simply using it. Linking a program with a library, without changing the +library, is in some sense simply using the library, and is analogous to running +a utility program or application program. However, in a textual and legal +sense, the linked executable is a combined work, a derivative of the original +library, and the ordinary General Public License treats it as such. + +Because of this blurred distinction, using the ordinary General Public License +for libraries did not effectively promote software sharing, because most developers +did not use the libraries. We concluded that weaker conditions might promote +sharing better. + +However, unrestricted linking of non-free programs would deprive the users +of those programs of all benefit from the free status of the libraries themselves. +This Library General Public License is intended to permit developers of non-free +programs to use free libraries, while preserving your freedom as a user of +such programs to change the free libraries that are incorporated in them. +(We have not seen how to achieve this as regards changes in header files, +but we have achieved it as regards changes in the actual functions of the +Library.) The hope is that this will lead to faster development of free libraries. + +The precise terms and conditions for copying, distribution and modification +follow. Pay close attention to the difference between a "work based on the +library" and a "work that uses the library". The former contains code derived +from the library, while the latter only works together with the library. + +Note that it is possible for a library to be covered by the ordinary General +Public License rather than by this special one. + +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + +0. This License Agreement applies to any software library which contains a +notice placed by the copyright holder or other authorized party saying it +may be distributed under the terms of this Library General Public License +(also called "this License"). Each licensee is addressed as "you". + +A "library" means a collection of software functions and/or data prepared +so as to be conveniently linked with application programs (which use some +of those functions and data) to form executables. + +The "Library", below, refers to any such software library or work which has +been distributed under these terms. A "work based on the Library" means either +the Library or any derivative work under copyright law: that is to say, a +work containing the Library or a portion of it, either verbatim or with modifications +and/or translated straightforwardly into another language. (Hereinafter, translation +is included without limitation in the term "modification".) + +"Source code" for a work means the preferred form of the work for making modifications +to it. For a library, complete source code means all the source code for all +modules it contains, plus any associated interface definition files, plus +the scripts used to control compilation and installation of the library. + +Activities other than copying, distribution and modification are not covered +by this License; they are outside its scope. The act of running a program +using the Library is not restricted, and output from such a program is covered +only if its contents constitute a work based on the Library (independent of +the use of the Library in a tool for writing it). Whether that is true depends +on what the Library does and what the program that uses the Library does. + +1. You may copy and distribute verbatim copies of the Library's complete source +code as you receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice and disclaimer +of warranty; keep intact all the notices that refer to this License and to +the absence of any warranty; and distribute a copy of this License along with +the Library. + +You may charge a fee for the physical act of transferring a copy, and you +may at your option offer warranty protection in exchange for a fee. + +2. You may modify your copy or copies of the Library or any portion of it, +thus forming a work based on the Library, and copy and distribute such modifications +or work under the terms of Section 1 above, provided that you also meet all +of these conditions: + + a) The modified work must itself be a software library. + +b) You must cause the files modified to carry prominent notices stating that +you changed the files and the date of any change. + +c) You must cause the whole of the work to be licensed at no charge to all +third parties under the terms of this License. + +d) If a facility in the modified Library refers to a function or a table of +data to be supplied by an application program that uses the facility, other +than as an argument passed when the facility is invoked, then you must make +a good faith effort to ensure that, in the event an application does not supply +such function or table, the facility still operates, and performs whatever +part of its purpose remains meaningful. + +(For example, a function in a library to compute square roots has a purpose +that is entirely well-defined independent of the application. Therefore, Subsection +2d requires that any application-supplied function or table used by this function +must be optional: if the application does not supply it, the square root function +must still compute square roots.) + +These requirements apply to the modified work as a whole. If identifiable +sections of that work are not derived from the Library, and can be reasonably +considered independent and separate works in themselves, then this License, +and its terms, do not apply to those sections when you distribute them as +separate works. But when you distribute the same sections as part of a whole +which is a work based on the Library, the distribution of the whole must be +on the terms of this License, whose permissions for other licensees extend +to the entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest your +rights to work written entirely by you; rather, the intent is to exercise +the right to control the distribution of derivative or collective works based +on the Library. + +In addition, mere aggregation of another work not based on the Library with +the Library (or with a work based on the Library) on a volume of a storage +or distribution medium does not bring the other work under the scope of this +License. + +3. You may opt to apply the terms of the ordinary GNU General Public License +instead of this License to a given copy of the Library. To do this, you must +alter all the notices that refer to this License, so that they refer to the +ordinary GNU General Public License, version 2, instead of to this License. +(If a newer version than version 2 of the ordinary GNU General Public License +has appeared, then you can specify that version instead if you wish.) Do not +make any other change in these notices. + +Once this change is made in a given copy, it is irreversible for that copy, +so the ordinary GNU General Public License applies to all subsequent copies +and derivative works made from that copy. + +This option is useful when you wish to copy part of the code of the Library +into a program that is not a library. + +4. You may copy and distribute the Library (or a portion or derivative of +it, under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you accompany it with the complete corresponding +machine-readable source code, which must be distributed under the terms of +Sections 1 and 2 above on a medium customarily used for software interchange. + +If distribution of object code is made by offering access to copy from a designated +place, then offering equivalent access to copy the source code from the same +place satisfies the requirement to distribute the source code, even though +third parties are not compelled to copy the source along with the object code. + +5. A program that contains no derivative of any portion of the Library, but +is designed to work with the Library by being compiled or linked with it, +is called a "work that uses the Library". Such a work, in isolation, is not +a derivative work of the Library, and therefore falls outside the scope of +this License. + +However, linking a "work that uses the Library" with the Library creates an +executable that is a derivative of the Library (because it contains portions +of the Library), rather than a "work that uses the library". The executable +is therefore covered by this License. Section 6 states terms for distribution +of such executables. + +When a "work that uses the Library" uses material from a header file that +is part of the Library, the object code for the work may be a derivative work +of the Library even though the source code is not. Whether this is true is +especially significant if the work can be linked without the Library, or if +the work is itself a library. The threshold for this to be true is not precisely +defined by law. + +If such an object file uses only numerical parameters, data structure layouts +and accessors, and small macros and small inline functions (ten lines or less +in length), then the use of the object file is unrestricted, regardless of +whether it is legally a derivative work. (Executables containing this object +code plus portions of the Library will still fall under Section 6.) + +Otherwise, if the work is a derivative of the Library, you may distribute +the object code for the work under the terms of Section 6. Any executables +containing that work also fall under Section 6, whether or not they are linked +directly with the Library itself. + +6. As an exception to the Sections above, you may also compile or link a "work +that uses the Library" with the Library to produce a work containing portions +of the Library, and distribute that work under terms of your choice, provided +that the terms permit modification of the work for the customer's own use +and reverse engineering for debugging such modifications. + +You must give prominent notice with each copy of the work that the Library +is used in it and that the Library and its use are covered by this License. +You must supply a copy of this License. If the work during execution displays +copyright notices, you must include the copyright notice for the Library among +them, as well as a reference directing the user to the copy of this License. +Also, you must do one of these things: + +a) Accompany the work with the complete corresponding machine-readable source +code for the Library including whatever changes were used in the work (which +must be distributed under Sections 1 and 2 above); and, if the work is an +executable linked with the Library, with the complete machine-readable "work +that uses the Library", as object code and/or source code, so that the user +can modify the Library and then relink to produce a modified executable containing +the modified Library. (It is understood that the user who changes the contents +of definitions files in the Library will not necessarily be able to recompile +the application to use the modified definitions.) + +b) Accompany the work with a written offer, valid for at least three years, +to give the same user the materials specified in Subsection 6a, above, for +a charge no more than the cost of performing this distribution. + +c) If distribution of the work is made by offering access to copy from a designated +place, offer equivalent access to copy the above specified materials from +the same place. + +d) Verify that the user has already received a copy of these materials or +that you have already sent this user a copy. + +For an executable, the required form of the "work that uses the Library" must +include any data and utility programs needed for reproducing the executable +from it. However, as a special exception, the source code distributed need +not include anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the operating +system on which the executable runs, unless that component itself accompanies +the executable. + +It may happen that this requirement contradicts the license restrictions of +other proprietary libraries that do not normally accompany the operating system. +Such a contradiction means you cannot use both them and the Library together +in an executable that you distribute. + +7. You may place library facilities that are a work based on the Library side-by-side +in a single library together with other library facilities not covered by +this License, and distribute such a combined library, provided that the separate +distribution of the work based on the Library and of the other library facilities +is otherwise permitted, and provided that you do these two things: + +a) Accompany the combined library with a copy of the same work based on the +Library, uncombined with any other library facilities. This must be distributed +under the terms of the Sections above. + +b) Give prominent notice with the combined library of the fact that part of +it is a work based on the Library, and explaining where to find the accompanying +uncombined form of the same work. + +8. You may not copy, modify, sublicense, link with, or distribute the Library +except as expressly provided under this License. Any attempt otherwise to +copy, modify, sublicense, link with, or distribute the Library is void, and +will automatically terminate your rights under this License. However, parties +who have received copies, or rights, from you under this License will not +have their licenses terminated so long as such parties remain in full compliance. + +9. You are not required to accept this License, since you have not signed +it. However, nothing else grants you permission to modify or distribute the +Library or its derivative works. These actions are prohibited by law if you +do not accept this License. Therefore, by modifying or distributing the Library +(or any work based on the Library), you indicate your acceptance of this License +to do so, and all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + +10. Each time you redistribute the Library (or any work based on the Library), +the recipient automatically receives a license from the original licensor +to copy, distribute, link with or modify the Library subject to these terms +and conditions. You may not impose any further restrictions on the recipients' +exercise of the rights granted herein. You are not responsible for enforcing +compliance by third parties to this License. + +11. If, as a consequence of a court judgment or allegation of patent infringement +or for any other reason (not limited to patent issues), conditions are imposed +on you (whether by court order, agreement or otherwise) that contradict the +conditions of this License, they do not excuse you from the conditions of +this License. If you cannot distribute so as to satisfy simultaneously your +obligations under this License and any other pertinent obligations, then as +a consequence you may not distribute the Library at all. For example, if a +patent license would not permit royalty-free redistribution of the Library +by all those who receive copies directly or indirectly through you, then the +only way you could satisfy both it and this License would be to refrain entirely +from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any patents +or other property right claims or to contest validity of any such claims; +this section has the sole purpose of protecting the integrity of the free +software distribution system which is implemented by public license practices. +Many people have made generous contributions to the wide range of software +distributed through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing to +distribute software through any other system and a licensee cannot impose +that choice. + +This section is intended to make thoroughly clear what is believed to be a +consequence of the rest of this License. + +12. If the distribution and/or use of the Library is restricted in certain +countries either by patents or by copyrighted interfaces, the original copyright +holder who places the Library under this License may add an explicit geographical +distribution limitation excluding those countries, so that distribution is +permitted only in or among countries not thus excluded. In such case, this +License incorporates the limitation as if written in the body of this License. + +13. The Free Software Foundation may publish revised and/or new versions of +the Library General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to address +new problems or concerns. + +Each version is given a distinguishing version number. If the Library specifies +a version number of this License which applies to it and "any later version", +you have the option of following the terms and conditions either of that version +or of any later version published by the Free Software Foundation. If the +Library does not specify a license version number, you may choose any version +ever published by the Free Software Foundation. + +14. If you wish to incorporate parts of the Library into other free programs +whose distribution conditions are incompatible with these, write to the author +to ask for permission. For software which is copyrighted by the Free Software +Foundation, write to the Free Software Foundation; we sometimes make exceptions +for this. Our decision will be guided by the two goals of preserving the free +status of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + +15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR +THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE +STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY +"AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE +OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE +THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE +OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA +OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES +OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH +HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. +END OF TERMS AND CONDITIONS + +How to Apply These Terms to Your New Libraries + +If you develop a new library, and you want it to be of the greatest possible +use to the public, we recommend making it free software that everyone can +redistribute and change. You can do so by permitting redistribution under +these terms (or, alternatively, under the terms of the ordinary General Public +License). + +To apply these terms, attach the following notices to the library. It is safest +to attach them to the start of each source file to most effectively convey +the exclusion of warranty; and each file should have at least the "copyright" +line and a pointer to where the full notice is found. + +one line to give the library's name and an idea of what it does. + +Copyright (C) year name of author + +This library is free software; you can redistribute it and/or modify it under +the terms of the GNU Library General Public License as published by the Free +Software Foundation; either version 2 of the License, or (at your option) +any later version. + +This library is distributed in the hope that it will be useful, but WITHOUT +ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more +details. + +You should have received a copy of the GNU Library General Public License +along with this library; if not, write to the Free Software Foundation, Inc., +51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your school, +if any, to sign a "copyright disclaimer" for the library, if necessary. Here +is a sample; alter the names: + +Yoyodyne, Inc., hereby disclaims all copyright interest in + +the library `Frob' (a library for tweaking knobs) written + +by James Random Hacker. + +signature of Ty Coon, 1 April 1990 + +Ty Coon, President of Vice + +That's all there is to it! diff --git a/LICENSES/LGPL-2.1-only.txt b/LICENSES/LGPL-2.1-only.txt new file mode 100644 index 0000000..130dffb --- /dev/null +++ b/LICENSES/LGPL-2.1-only.txt @@ -0,0 +1,467 @@ +GNU LESSER GENERAL PUBLIC LICENSE + +Version 2.1, February 1999 + +Copyright (C) 1991, 1999 Free Software Foundation, Inc. + +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + +Everyone is permitted to copy and distribute verbatim copies of this license +document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts as the +successor of the GNU Library Public License, version 2, hence the version +number 2.1.] + +Preamble + +The licenses for most software are designed to take away your freedom to share +and change it. By contrast, the GNU General Public Licenses are intended to +guarantee your freedom to share and change free software--to make sure the +software is free for all its users. + +This license, the Lesser General Public License, applies to some specially +designated software packages--typically libraries--of the Free Software Foundation +and other authors who decide to use it. You can use it too, but we suggest +you first think carefully about whether this license or the ordinary General +Public License is the better strategy to use in any particular case, based +on the explanations below. + +When we speak of free software, we are referring to freedom of use, not price. +Our General Public Licenses are designed to make sure that you have the freedom +to distribute copies of free software (and charge for this service if you +wish); that you receive source code or can get it if you want it; that you +can change the software and use pieces of it in new free programs; and that +you are informed that you can do these things. + +To protect your rights, we need to make restrictions that forbid distributors +to deny you these rights or to ask you to surrender these rights. These restrictions +translate to certain responsibilities for you if you distribute copies of +the library or if you modify it. + +For example, if you distribute copies of the library, whether gratis or for +a fee, you must give the recipients all the rights that we gave you. You must +make sure that they, too, receive or can get the source code. If you link +other code with the library, you must provide complete object files to the +recipients, so that they can relink them with the library after making changes +to the library and recompiling it. And you must show them these terms so they +know their rights. + +We protect your rights with a two-step method: (1) we copyright the library, +and (2) we offer you this license, which gives you legal permission to copy, +distribute and/or modify the library. + +To protect each distributor, we want to make it very clear that there is no +warranty for the free library. Also, if the library is modified by someone +else and passed on, the recipients should know that what they have is not +the original version, so that the original author's reputation will not be +affected by problems that might be introduced by others. + +Finally, software patents pose a constant threat to the existence of any free +program. We wish to make sure that a company cannot effectively restrict the +users of a free program by obtaining a restrictive license from a patent holder. +Therefore, we insist that any patent license obtained for a version of the +library must be consistent with the full freedom of use specified in this +license. + +Most GNU software, including some libraries, is covered by the ordinary GNU +General Public License. This license, the GNU Lesser General Public License, +applies to certain designated libraries, and is quite different from the ordinary +General Public License. We use this license for certain libraries in order +to permit linking those libraries into non-free programs. + +When a program is linked with a library, whether statically or using a shared +library, the combination of the two is legally speaking a combined work, a +derivative of the original library. The ordinary General Public License therefore +permits such linking only if the entire combination fits its criteria of freedom. +The Lesser General Public License permits more lax criteria for linking other +code with the library. + +We call this license the "Lesser" General Public License because it does Less +to protect the user's freedom than the ordinary General Public License. It +also provides other free software developers Less of an advantage over competing +non-free programs. These disadvantages are the reason we use the ordinary +General Public License for many libraries. However, the Lesser license provides +advantages in certain special circumstances. + +For example, on rare occasions, there may be a special need to encourage the +widest possible use of a certain library, so that it becomes a de-facto standard. +To achieve this, non-free programs must be allowed to use the library. A more +frequent case is that a free library does the same job as widely used non-free +libraries. In this case, there is little to gain by limiting the free library +to free software only, so we use the Lesser General Public License. + +In other cases, permission to use a particular library in non-free programs +enables a greater number of people to use a large body of free software. For +example, permission to use the GNU C Library in non-free programs enables +many more people to use the whole GNU operating system, as well as its variant, +the GNU/Linux operating system. + +Although the Lesser General Public License is Less protective of the users' +freedom, it does ensure that the user of a program that is linked with the +Library has the freedom and the wherewithal to run that program using a modified +version of the Library. + +The precise terms and conditions for copying, distribution and modification +follow. Pay close attention to the difference between a "work based on the +library" and a "work that uses the library". The former contains code derived +from the library, whereas the latter must be combined with the library in +order to run. + +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + +0. This License Agreement applies to any software library or other program +which contains a notice placed by the copyright holder or other authorized +party saying it may be distributed under the terms of this Lesser General +Public License (also called "this License"). Each licensee is addressed as +"you". + +A "library" means a collection of software functions and/or data prepared +so as to be conveniently linked with application programs (which use some +of those functions and data) to form executables. + +The "Library", below, refers to any such software library or work which has +been distributed under these terms. A "work based on the Library" means either +the Library or any derivative work under copyright law: that is to say, a +work containing the Library or a portion of it, either verbatim or with modifications +and/or translated straightforwardly into another language. (Hereinafter, translation +is included without limitation in the term "modification".) + +"Source code" for a work means the preferred form of the work for making modifications +to it. For a library, complete source code means all the source code for all +modules it contains, plus any associated interface definition files, plus +the scripts used to control compilation and installation of the library. + +Activities other than copying, distribution and modification are not covered +by this License; they are outside its scope. The act of running a program +using the Library is not restricted, and output from such a program is covered +only if its contents constitute a work based on the Library (independent of +the use of the Library in a tool for writing it). Whether that is true depends +on what the Library does and what the program that uses the Library does. + +1. You may copy and distribute verbatim copies of the Library's complete source +code as you receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice and disclaimer +of warranty; keep intact all the notices that refer to this License and to +the absence of any warranty; and distribute a copy of this License along with +the Library. + +You may charge a fee for the physical act of transferring a copy, and you +may at your option offer warranty protection in exchange for a fee. + +2. You may modify your copy or copies of the Library or any portion of it, +thus forming a work based on the Library, and copy and distribute such modifications +or work under the terms of Section 1 above, provided that you also meet all +of these conditions: + + a) The modified work must itself be a software library. + +b) You must cause the files modified to carry prominent notices stating that +you changed the files and the date of any change. + +c) You must cause the whole of the work to be licensed at no charge to all +third parties under the terms of this License. + +d) If a facility in the modified Library refers to a function or a table of +data to be supplied by an application program that uses the facility, other +than as an argument passed when the facility is invoked, then you must make +a good faith effort to ensure that, in the event an application does not supply +such function or table, the facility still operates, and performs whatever +part of its purpose remains meaningful. + +(For example, a function in a library to compute square roots has a purpose +that is entirely well-defined independent of the application. Therefore, Subsection +2d requires that any application-supplied function or table used by this function +must be optional: if the application does not supply it, the square root function +must still compute square roots.) + +These requirements apply to the modified work as a whole. If identifiable +sections of that work are not derived from the Library, and can be reasonably +considered independent and separate works in themselves, then this License, +and its terms, do not apply to those sections when you distribute them as +separate works. But when you distribute the same sections as part of a whole +which is a work based on the Library, the distribution of the whole must be +on the terms of this License, whose permissions for other licensees extend +to the entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest your +rights to work written entirely by you; rather, the intent is to exercise +the right to control the distribution of derivative or collective works based +on the Library. + +In addition, mere aggregation of another work not based on the Library with +the Library (or with a work based on the Library) on a volume of a storage +or distribution medium does not bring the other work under the scope of this +License. + +3. You may opt to apply the terms of the ordinary GNU General Public License +instead of this License to a given copy of the Library. To do this, you must +alter all the notices that refer to this License, so that they refer to the +ordinary GNU General Public License, version 2, instead of to this License. +(If a newer version than version 2 of the ordinary GNU General Public License +has appeared, then you can specify that version instead if you wish.) Do not +make any other change in these notices. + +Once this change is made in a given copy, it is irreversible for that copy, +so the ordinary GNU General Public License applies to all subsequent copies +and derivative works made from that copy. + +This option is useful when you wish to copy part of the code of the Library +into a program that is not a library. + +4. You may copy and distribute the Library (or a portion or derivative of +it, under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you accompany it with the complete corresponding +machine-readable source code, which must be distributed under the terms of +Sections 1 and 2 above on a medium customarily used for software interchange. + +If distribution of object code is made by offering access to copy from a designated +place, then offering equivalent access to copy the source code from the same +place satisfies the requirement to distribute the source code, even though +third parties are not compelled to copy the source along with the object code. + +5. A program that contains no derivative of any portion of the Library, but +is designed to work with the Library by being compiled or linked with it, +is called a "work that uses the Library". Such a work, in isolation, is not +a derivative work of the Library, and therefore falls outside the scope of +this License. + +However, linking a "work that uses the Library" with the Library creates an +executable that is a derivative of the Library (because it contains portions +of the Library), rather than a "work that uses the library". The executable +is therefore covered by this License. Section 6 states terms for distribution +of such executables. + +When a "work that uses the Library" uses material from a header file that +is part of the Library, the object code for the work may be a derivative work +of the Library even though the source code is not. Whether this is true is +especially significant if the work can be linked without the Library, or if +the work is itself a library. The threshold for this to be true is not precisely +defined by law. + +If such an object file uses only numerical parameters, data structure layouts +and accessors, and small macros and small inline functions (ten lines or less +in length), then the use of the object file is unrestricted, regardless of +whether it is legally a derivative work. (Executables containing this object +code plus portions of the Library will still fall under Section 6.) + +Otherwise, if the work is a derivative of the Library, you may distribute +the object code for the work under the terms of Section 6. Any executables +containing that work also fall under Section 6, whether or not they are linked +directly with the Library itself. + +6. As an exception to the Sections above, you may also combine or link a "work +that uses the Library" with the Library to produce a work containing portions +of the Library, and distribute that work under terms of your choice, provided +that the terms permit modification of the work for the customer's own use +and reverse engineering for debugging such modifications. + +You must give prominent notice with each copy of the work that the Library +is used in it and that the Library and its use are covered by this License. +You must supply a copy of this License. If the work during execution displays +copyright notices, you must include the copyright notice for the Library among +them, as well as a reference directing the user to the copy of this License. +Also, you must do one of these things: + +a) Accompany the work with the complete corresponding machine-readable source +code for the Library including whatever changes were used in the work (which +must be distributed under Sections 1 and 2 above); and, if the work is an +executable linked with the Library, with the complete machine-readable "work +that uses the Library", as object code and/or source code, so that the user +can modify the Library and then relink to produce a modified executable containing +the modified Library. (It is understood that the user who changes the contents +of definitions files in the Library will not necessarily be able to recompile +the application to use the modified definitions.) + +b) Use a suitable shared library mechanism for linking with the Library. A +suitable mechanism is one that (1) uses at run time a copy of the library +already present on the user's computer system, rather than copying library +functions into the executable, and (2) will operate properly with a modified +version of the library, if the user installs one, as long as the modified +version is interface-compatible with the version that the work was made with. + +c) Accompany the work with a written offer, valid for at least three years, +to give the same user the materials specified in Subsection 6a, above, for +a charge no more than the cost of performing this distribution. + +d) If distribution of the work is made by offering access to copy from a designated +place, offer equivalent access to copy the above specified materials from +the same place. + +e) Verify that the user has already received a copy of these materials or +that you have already sent this user a copy. + +For an executable, the required form of the "work that uses the Library" must +include any data and utility programs needed for reproducing the executable +from it. However, as a special exception, the materials to be distributed +need not include anything that is normally distributed (in either source or +binary form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component itself +accompanies the executable. + +It may happen that this requirement contradicts the license restrictions of +other proprietary libraries that do not normally accompany the operating system. +Such a contradiction means you cannot use both them and the Library together +in an executable that you distribute. + +7. You may place library facilities that are a work based on the Library side-by-side +in a single library together with other library facilities not covered by +this License, and distribute such a combined library, provided that the separate +distribution of the work based on the Library and of the other library facilities +is otherwise permitted, and provided that you do these two things: + +a) Accompany the combined library with a copy of the same work based on the +Library, uncombined with any other library facilities. This must be distributed +under the terms of the Sections above. + +b) Give prominent notice with the combined library of the fact that part of +it is a work based on the Library, and explaining where to find the accompanying +uncombined form of the same work. + +8. You may not copy, modify, sublicense, link with, or distribute the Library +except as expressly provided under this License. Any attempt otherwise to +copy, modify, sublicense, link with, or distribute the Library is void, and +will automatically terminate your rights under this License. However, parties +who have received copies, or rights, from you under this License will not +have their licenses terminated so long as such parties remain in full compliance. + +9. You are not required to accept this License, since you have not signed +it. However, nothing else grants you permission to modify or distribute the +Library or its derivative works. These actions are prohibited by law if you +do not accept this License. Therefore, by modifying or distributing the Library +(or any work based on the Library), you indicate your acceptance of this License +to do so, and all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + +10. Each time you redistribute the Library (or any work based on the Library), +the recipient automatically receives a license from the original licensor +to copy, distribute, link with or modify the Library subject to these terms +and conditions. You may not impose any further restrictions on the recipients' +exercise of the rights granted herein. You are not responsible for enforcing +compliance by third parties with this License. + +11. If, as a consequence of a court judgment or allegation of patent infringement +or for any other reason (not limited to patent issues), conditions are imposed +on you (whether by court order, agreement or otherwise) that contradict the +conditions of this License, they do not excuse you from the conditions of +this License. If you cannot distribute so as to satisfy simultaneously your +obligations under this License and any other pertinent obligations, then as +a consequence you may not distribute the Library at all. For example, if a +patent license would not permit royalty-free redistribution of the Library +by all those who receive copies directly or indirectly through you, then the +only way you could satisfy both it and this License would be to refrain entirely +from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any patents +or other property right claims or to contest validity of any such claims; +this section has the sole purpose of protecting the integrity of the free +software distribution system which is implemented by public license practices. +Many people have made generous contributions to the wide range of software +distributed through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing to +distribute software through any other system and a licensee cannot impose +that choice. + +This section is intended to make thoroughly clear what is believed to be a +consequence of the rest of this License. + +12. If the distribution and/or use of the Library is restricted in certain +countries either by patents or by copyrighted interfaces, the original copyright +holder who places the Library under this License may add an explicit geographical +distribution limitation excluding those countries, so that distribution is +permitted only in or among countries not thus excluded. In such case, this +License incorporates the limitation as if written in the body of this License. + +13. The Free Software Foundation may publish revised and/or new versions of +the Lesser General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to address +new problems or concerns. + +Each version is given a distinguishing version number. If the Library specifies +a version number of this License which applies to it and "any later version", +you have the option of following the terms and conditions either of that version +or of any later version published by the Free Software Foundation. If the +Library does not specify a license version number, you may choose any version +ever published by the Free Software Foundation. + +14. If you wish to incorporate parts of the Library into other free programs +whose distribution conditions are incompatible with these, write to the author +to ask for permission. For software which is copyrighted by the Free Software +Foundation, write to the Free Software Foundation; we sometimes make exceptions +for this. Our decision will be guided by the two goals of preserving the free +status of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + +15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR +THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE +STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY +"AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE +OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE +THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE +OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA +OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES +OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH +HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. +END OF TERMS AND CONDITIONS + +How to Apply These Terms to Your New Libraries + +If you develop a new library, and you want it to be of the greatest possible +use to the public, we recommend making it free software that everyone can +redistribute and change. You can do so by permitting redistribution under +these terms (or, alternatively, under the terms of the ordinary General Public +License). + +To apply these terms, attach the following notices to the library. It is safest +to attach them to the start of each source file to most effectively convey +the exclusion of warranty; and each file should have at least the "copyright" +line and a pointer to where the full notice is found. + +< one line to give the library's name and an idea of what it does. > + +Copyright (C) < year > < name of author > + +This library is free software; you can redistribute it and/or modify it under +the terms of the GNU Lesser General Public License as published by the Free +Software Foundation; either version 2.1 of the License, or (at your option) +any later version. + +This library is distributed in the hope that it will be useful, but WITHOUT +ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more +details. + +You should have received a copy of the GNU Lesser General Public License along +with this library; if not, write to the Free Software Foundation, Inc., 51 +Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Also add information +on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your school, +if any, to sign a "copyright disclaimer" for the library, if necessary. Here +is a sample; alter the names: + +Yoyodyne, Inc., hereby disclaims all copyright interest in + +the library `Frob' (a library for tweaking knobs) written + +by James Random Hacker. + +< signature of Ty Coon > , 1 April 1990 + +Ty Coon, President of Vice + +That's all there is to it! diff --git a/LICENSES/LGPL-3.0-only.txt b/LICENSES/LGPL-3.0-only.txt new file mode 100644 index 0000000..bd405af --- /dev/null +++ b/LICENSES/LGPL-3.0-only.txt @@ -0,0 +1,163 @@ +GNU LESSER GENERAL PUBLIC LICENSE + +Version 3, 29 June 2007 + +Copyright (C) 2007 Free Software Foundation, Inc. + +Everyone is permitted to copy and distribute verbatim copies of this license +document, but changing it is not allowed. + +This version of the GNU Lesser General Public License incorporates the terms +and conditions of version 3 of the GNU General Public License, supplemented +by the additional permissions listed below. + + 0. Additional Definitions. + + + +As used herein, "this License" refers to version 3 of the GNU Lesser General +Public License, and the "GNU GPL" refers to version 3 of the GNU General Public +License. + + + +"The Library" refers to a covered work governed by this License, other than +an Application or a Combined Work as defined below. + + + +An "Application" is any work that makes use of an interface provided by the +Library, but which is not otherwise based on the Library. Defining a subclass +of a class defined by the Library is deemed a mode of using an interface provided +by the Library. + + + +A "Combined Work" is a work produced by combining or linking an Application +with the Library. The particular version of the Library with which the Combined +Work was made is also called the "Linked Version". + + + +The "Minimal Corresponding Source" for a Combined Work means the Corresponding +Source for the Combined Work, excluding any source code for portions of the +Combined Work that, considered in isolation, are based on the Application, +and not on the Linked Version. + + + +The "Corresponding Application Code" for a Combined Work means the object +code and/or source code for the Application, including any data and utility +programs needed for reproducing the Combined Work from the Application, but +excluding the System Libraries of the Combined Work. + + 1. Exception to Section 3 of the GNU GPL. + +You may convey a covered work under sections 3 and 4 of this License without +being bound by section 3 of the GNU GPL. + + 2. Conveying Modified Versions. + +If you modify a copy of the Library, and, in your modifications, a facility +refers to a function or data to be supplied by an Application that uses the +facility (other than as an argument passed when the facility is invoked), +then you may convey a copy of the modified version: + +a) under this License, provided that you make a good faith effort to ensure +that, in the event an Application does not supply the function or data, the +facility still operates, and performs whatever part of its purpose remains +meaningful, or + +b) under the GNU GPL, with none of the additional permissions of this License +applicable to that copy. + + 3. Object Code Incorporating Material from Library Header Files. + +The object code form of an Application may incorporate material from a header +file that is part of the Library. You may convey such object code under terms +of your choice, provided that, if the incorporated material is not limited +to numerical parameters, data structure layouts and accessors, or small macros, +inline functions and templates (ten or fewer lines in length), you do both +of the following: + +a) Give prominent notice with each copy of the object code that the Library +is used in it and that the Library and its use are covered by this License. + +b) Accompany the object code with a copy of the GNU GPL and this license document. + + 4. Combined Works. + +You may convey a Combined Work under terms of your choice that, taken together, +effectively do not restrict modification of the portions of the Library contained +in the Combined Work and reverse engineering for debugging such modifications, +if you also do each of the following: + +a) Give prominent notice with each copy of the Combined Work that the Library +is used in it and that the Library and its use are covered by this License. + +b) Accompany the Combined Work with a copy of the GNU GPL and this license +document. + +c) For a Combined Work that displays copyright notices during execution, include +the copyright notice for the Library among these notices, as well as a reference +directing the user to the copies of the GNU GPL and this license document. + + d) Do one of the following: + +0) Convey the Minimal Corresponding Source under the terms of this License, +and the Corresponding Application Code in a form suitable for, and under terms +that permit, the user to recombine or relink the Application with a modified +version of the Linked Version to produce a modified Combined Work, in the +manner specified by section 6 of the GNU GPL for conveying Corresponding Source. + +1) Use a suitable shared library mechanism for linking with the Library. A +suitable mechanism is one that (a) uses at run time a copy of the Library +already present on the user's computer system, and (b) will operate properly +with a modified version of the Library that is interface-compatible with the +Linked Version. + +e) Provide Installation Information, but only if you would otherwise be required +to provide such information under section 6 of the GNU GPL, and only to the +extent that such information is necessary to install and execute a modified +version of the Combined Work produced by recombining or relinking the Application +with a modified version of the Linked Version. (If you use option 4d0, the +Installation Information must accompany the Minimal Corresponding Source and +Corresponding Application Code. If you use option 4d1, you must provide the +Installation Information in the manner specified by section 6 of the GNU GPL +for conveying Corresponding Source.) + + 5. Combined Libraries. + +You may place library facilities that are a work based on the Library side +by side in a single library together with other library facilities that are +not Applications and are not covered by this License, and convey such a combined +library under terms of your choice, if you do both of the following: + +a) Accompany the combined library with a copy of the same work based on the +Library, uncombined with any other library facilities, conveyed under the +terms of this License. + +b) Give prominent notice with the combined library that part of it is a work +based on the Library, and explaining where to find the accompanying uncombined +form of the same work. + + 6. Revised Versions of the GNU Lesser General Public License. + +The Free Software Foundation may publish revised and/or new versions of the +GNU Lesser General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to address +new problems or concerns. + +Each version is given a distinguishing version number. If the Library as you +received it specifies that a certain numbered version of the GNU Lesser General +Public License "or any later version" applies to it, you have the option of +following the terms and conditions either of that published version or of +any later version published by the Free Software Foundation. If the Library +as you received it does not specify a version number of the GNU Lesser General +Public License, you may choose any version of the GNU Lesser General Public +License ever published by the Free Software Foundation. + +If the Library as you received it specifies that a proxy can decide whether +future versions of the GNU Lesser General Public License shall apply, that +proxy's public statement of acceptance of any version is permanent authorization +for you to choose that version for the Library. diff --git a/LICENSES/LicenseRef-KDE-Accepted-LGPL.txt b/LICENSES/LicenseRef-KDE-Accepted-LGPL.txt new file mode 100644 index 0000000..232b3c5 --- /dev/null +++ b/LICENSES/LicenseRef-KDE-Accepted-LGPL.txt @@ -0,0 +1,12 @@ +This library is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public +License as published by the Free Software Foundation; either +version 3 of the license or (at your option) any later version +that is accepted by the membership of KDE e.V. (or its successor +approved by the membership of KDE e.V.), which shall act as a +proxy as defined in Section 6 of version 3 of the license. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. diff --git a/LICENSES/MIT.txt b/LICENSES/MIT.txt new file mode 100644 index 0000000..204b93d --- /dev/null +++ b/LICENSES/MIT.txt @@ -0,0 +1,19 @@ +MIT License Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is furnished +to do so, subject to the following conditions: + +The above copyright notice and this permission notice (including the next +paragraph) shall be included in all copies or substantial portions of the +Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS +OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF +OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..e1d1cc6 --- /dev/null +++ b/README.md @@ -0,0 +1,23 @@ +# KConfig + +Persistent platform-independent application settings. + +## Introduction + +KConfig provides an advanced configuration system. It is made of two parts: +KConfigCore and KConfigGui. + +KConfigCore provides access to the configuration files themselves. It features: + +- Code generation: describe your configuration in an XML file, and use + kconfig_compiler to generate classes that read and write configuration + entries. +- Cascading configuration files (global settings overridden by local settings). +- Optional shell expansion support (see [docs/options.md](@ref options)). +- The ability to lock down configuration options (see + [docs/options.md](@ref options)). + +KConfigGui provides a way to hook widgets to the configuration so that they are +automatically initialized from the configuration and automatically propagate +their changes to their respective configuration files. + diff --git a/TODO b/TODO new file mode 100644 index 0000000..4f86d87 --- /dev/null +++ b/TODO @@ -0,0 +1,175 @@ +bugs +==== + +- make expandString stuff consistent +- KConfigGroup::exists() should return true only if the group contains + any non-deleted entries (?) +- immutable groups with no entries are not written out and thus lose + their immutability. +- "C" & "en_US" should be detected early and converted to a null string + (but also save the original string, so locale() semantics don't change + at that point). + +wishes +====== + +- use lazy loading + - load as soon as the first KConfigGroup is instantiated + - lazy parsing of values is interesting, too - see kconfig_take2 branch +- add $\\VAR and $\\(cmd) escapes to list-quote expanded string +- possibly: + - preserve unchanged parts of the config literally. problem: comments + might become stale. so if a comment is already there, add an additional + comment that indicates that the value was changed (include old value?). + - api to actively add comments to files, groups and keys + - option to start these comments with ## as a sign that they should not + trigger the above change indicator logic. + - guaranteeing that write order of new keys is preserved + - detect commented out entries and put actual entries with the same key + right behind them +- possibly: selective multi-level master diversion + - this is to support roaming profiles that have machine/user/etc. specific + settings + - files, groups and keys can have [$m] and [$s] markers; these cascade + within each file only. the least significant object (farthest away from + the master) with an effective $m mode becomes the master (i.e., is + written to and not read past). + default is $m for the master file and $s for the default files. + - the CascadeConfig flag being unset doesn't make things exactly simpler + - can kdeglobals be handled by this? + - does this really make sense? promoting an object to profile wide status + is a conscious decision - which probably needs to be repeated every time + the value changes. + +internals +========= + +- clear up bDeleted vs. isNull in entrymap +- make entrymap truly hierarchical + - an entry map contains its flags, a map of keys and a map of submaps. + it does NOT contain its name and has no parent pointer. + - when creating a kconfiggroup, ask parent for the respective submap + and link it if it is present. if it is not, create one at write op, + link it and tell parent to add it to its entry map. both query and + creation are recursive, obviously. + a kconfiggroup DOES contain its name and has a parent pointer. + - 3) +- 4) + +3) +> We wouldn't have to worry about the KEntryGroup being removed out from +> under us, because the only way that should happen is if the config +> object is destroyed or reparsed, and in those cases you shouldn't be +> using a KConfigGroup from prior to that. +> +i don't think "this is stupid and will not happen" works; [...] +given that cascaded parsing includes writing to existing maps, i think +the simplest approach is clearing the existing structure from keymaps +and resetting the attributes, but leaving the subgroup maps populated, +thus keeping any group refs valid. +the question is about the type of reference held to the entry map. +originally i had thought of pointers. a map would be linked only if it +really existed, otherwise the pointer would be null (thus indicating +reads to return the default immediately and writes to ask the parent to +create a submap). however, keeping that consistent with deletions would +be a nightmare, and with the rescan changing the groups underneath +impossible without each map having a list of referring configgroups. +therefore it might make more sense to always create a corresponding tree +of empty maps when a configroup for a non-existing group is instantiated +- these groups won't be written out (they have no entries and cannot be +immutable) and access to non-existing groups (esp. without an subsequent +write that would actually create it) is rare, so the performance and +memory overhead of this "eager" approach is likely to be negligible. as +a middle way one could use a pointer and lazily populate it on first +access without putting semantics into the pointer being already set, +but i don't think the added complexity will pay off. + +4) +> > > > hmm, wait. maybe it would be better if the map did not do actual +> > > > permission checking. the frontend is peppered with asserts already +> > > +> > > that's the group doing permission checking, if this group is immutable +> > > then the entry can't be changed. plus, now that KEntryKey doesn't know +> > > what group it belongs to KEntryMap can't check if the group is +> > > immutable. +> > > +> > > > (need to consider how to handle release builds). in the backend, the +> > > > ugly immutableGroups hack would be unnecessary. +> > > +> > > no, immutableGroups would still be necessary unless i remove all +> > > checking from KGroupEntry and KEntryMap. but, then checks for +> > > immutable would have to be used everywhere that an entry might be +> > > changed. +> > > +> > yes - and the frontend already handles it and the backend *should* +> > handle it (issue warnings for trying to overwrite $i settings). +> +> i don't know, i think most handling of the immutability of a group +> can/should be handled by the KGroupEntry itself. this way we can keep +> all the data about a group in one place and let KGroupEntry keep +> itself in a consistent/valid state. +> +dunno, either. the use cases are: +- backend: writing immutable objects is fine, as long as the + immutability does not come from a pre-existing default. + given that there will be multiple backends, it sounds like + centralizing the check and warning reporting might make sense. otoh, + such a low-level function might not have enough context to make a + useful message. +- frontend: obviously, writing immutable objects is not permitted. this + is already checked everywhere through asserts. in non-debug builds + these asserts have no effect, but if a write gets that far it means + that the app already permitted changing the option in the first place + due to failure to check for immutability. i don't see much point in + preventing the illegitimate change from being saved, as it can be + repeated anyway (i'm not really convinced of security through + exhaustion/boredom of the attacker :). +i'm not sure whether that means that the two use cases need separate +mutators or whether the mutator should not apply any immutability +semantics at all. + + +overwriting semantics +===================== + +generally: +- localized entries cannot exist without an unlocalized "primary" entry, + so writing a localized key when no corresponding unlocalized key + exists should print a warning and copy the value to the unlocalized + key. +- a primary entry in the user config overshadows not only the immediate + default, but also any localizations of the default. applies also to a + [$d] marker, obviously. + a localized entry in the user config overshadows only that + localization from the default. + +write ops: +> > - writing an entry with the localization flag changes really only that +> > key. +> > trying to change the globality of the key prints a warning and does +> > nothing. +- key exists in local config => overwritten +- key does not exist => created +yes, that's the trivial case. + +> > - writing an entry without the localization flag deletes all +> > localizations. +> > in this case, changing the globality of the key poses no problem. +- the key itself is handled trivially +- if localizations exist in the local config, they are actively purged +- localizations in the default config don't matter, as they will be + overshadowed by the unlocalized key in the local config + +> > - deleting an entry also deletes all localizations. +- if default exists, write [$d] entry +- if no default exists, delete entry +- if localizations exist in the local config, they are actively purged +- localizations in the default config don't matter, as they will be + overshadowed by the unlocalized key in the local config (as + localizations cannot exist without a primary key, a deletion marker + key will be present). + +> > - reverting a key to default also restores all localizations. +- any local entries are actively purged + + diff --git a/autotests/CMakeLists.txt b/autotests/CMakeLists.txt new file mode 100644 index 0000000..b674aba --- /dev/null +++ b/autotests/CMakeLists.txt @@ -0,0 +1,88 @@ +include(ECMAddTests) + +find_package(Qt6Test ${REQUIRED_QT_VERSION} CONFIG QUIET) +find_package(Qt6Concurrent ${REQUIRED_QT_VERSION} CONFIG QUIET) + +if(NOT Qt6Test_FOUND) + message(STATUS "Qt6Test not found, autotests will not be built.") + return() +endif() + +if(NOT Qt6Concurrent_FOUND) + message(STATUS "Qt6Concurrent not found, autotests will not be built.") + return() +endif() + +# compile KEntryMap into the test since it's not exported +ecm_add_test( + kentrymaptest.cpp + ../src/core/kconfigdata.cpp + TEST_NAME kentrymaptest + LINK_LIBRARIES Qt6::Test +) +target_include_directories(kentrymaptest PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../src/core) + +qt_add_resources(sharedconfigresources sharedconfigresources.qrc) + +ecm_add_test(ksharedconfigtest.cpp ${sharedconfigresources} TEST_NAME kconfigcore-ksharedconfigtest LINK_LIBRARIES KF6::ConfigCore Qt6::Test Qt6::Concurrent) + +# test for fallback to :/kconfig/xxxx config resource +qt_add_resources(fallbackconfigresources fallbackconfigresources.qrc) +ecm_add_test(fallbackconfigresourcestest.cpp ${fallbackconfigresources} TEST_NAME kconfigcore-fallbackconfigresourcestest LINK_LIBRARIES KF6::ConfigCore Qt6::Test Qt6::Concurrent) + +ecm_add_tests( + kconfignokdehometest.cpp + kconfigtest.cpp + kdesktopfiletest.cpp + test_kconf_update.cpp + ksharedconfig_in_global_object.cpp + dbussanitizertest.cpp + NAME_PREFIX kconfigcore- + LINK_LIBRARIES KF6::ConfigCore Qt6::Test Qt6::Concurrent +) + +add_dependencies(test_kconf_update kconf_update) + +if(TARGET Qt6::Gui) +ecm_add_tests( + kconfigguitest.cpp + kconfigloadertest.cpp + kconfigskeletontest.cpp + kstandardshortcuttest.cpp + NAME_PREFIX kconfiggui- + LINK_LIBRARIES KF6::ConfigGui Qt6::Test +) + +ecm_add_test( + kstandardshortcutwatchertest.cpp + # add sources instead of linking so we can use the unexported initialize() + ../src/gui/kstandardshortcut.cpp + ../src/gui/kstandardshortcutwatcher.cpp + LINK_LIBRARIES KF6::ConfigCore Qt6::Gui Qt6::Test + TEST_NAME kstandardshortcutwatchertest + NAME_PREFIX kconfiggui- +) +target_include_directories(kstandardshortcutwatchertest PRIVATE "$") +target_compile_definitions(kstandardshortcutwatchertest PRIVATE "-DKCONFIGGUI_STATIC_DEFINE") + +# These tests do a global cleanup of ~/.qttest, so they can't run in parallel +set_tests_properties(kconfigcore-kconfigtest PROPERTIES RUN_SERIAL TRUE) +set_tests_properties(kconfigcore-kconfignokdehometest PROPERTIES RUN_SERIAL TRUE) +set_tests_properties(kconfiggui-kconfigguitest PROPERTIES RUN_SERIAL TRUE) + +if(NOT CMAKE_CROSSCOMPILING) + add_subdirectory(kconfig_compiler) +endif() +endif() + +find_package(Qt6 OPTIONAL_COMPONENTS Widgets) +if(TARGET Qt6::Widgets) + ecm_add_test(kwindowstatesavertest.cpp LINK_LIBRARIES KF6::ConfigGui Qt6::Test Qt6::Widgets) +endif() + +# benchmarks, don't execute during normal testing +# they don't test additional stuff +add_executable(kconfig_benchmark kconfig_benchmark.cpp) +ecm_mark_nongui_executable(kconfig_benchmark) +add_test(NAME kconfig_benchmark COMMAND kconfig_benchmark CONFIGURATIONS BENCHMARK) +target_link_libraries(kconfig_benchmark KF6::ConfigCore Qt6::Test) diff --git a/autotests/dbussanitizertest.cpp b/autotests/dbussanitizertest.cpp new file mode 100644 index 0000000..c620c75 --- /dev/null +++ b/autotests/dbussanitizertest.cpp @@ -0,0 +1,20 @@ +// SPDX-License-Identifier: LGPL-2.0-or-later +// SPDX-FileCopyrightText: 2023 Harald Sitter + +#include "dbussanitizer_p.h" + +#include + +class DBusSanitizerTest : public QObject +{ + Q_OBJECT +private Q_SLOTS: + void test() + { + QCOMPARE(kconfigDBusSanitizePath(QStringLiteral("/plasma_org-kde!plasma~desktop:appletsrc")), + QStringLiteral("/plasma_org_kde_plasma_desktop_appletsrc")); + } +}; + +QTEST_GUILESS_MAIN(DBusSanitizerTest) +#include "dbussanitizertest.moc" diff --git a/autotests/fallbackconfigresources.qrc b/autotests/fallbackconfigresources.qrc new file mode 100644 index 0000000..0a39571 --- /dev/null +++ b/autotests/fallbackconfigresources.qrc @@ -0,0 +1,5 @@ + + + test.ini + + diff --git a/autotests/fallbackconfigresourcestest.cpp b/autotests/fallbackconfigresourcestest.cpp new file mode 100644 index 0000000..56d065c --- /dev/null +++ b/autotests/fallbackconfigresourcestest.cpp @@ -0,0 +1,36 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2015 Christoph Cullmann + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include +#include +#include + +class FallbackConfigResourcesTest : public QObject +{ + Q_OBJECT +private Q_SLOTS: + void initTestCase(); + void testResourceFallbackFile(); +}; + +void FallbackConfigResourcesTest::initTestCase() +{ + QStandardPaths::setTestModeEnabled(true); +} + +void FallbackConfigResourcesTest::testResourceFallbackFile() +{ + KSharedConfig::Ptr sharedConfig = KSharedConfig::openConfig(QStringLiteral("kconfigtesting"), KConfig::NoGlobals); + QVERIFY(sharedConfig); + + KConfigGroup cfg(sharedConfig, QStringLiteral("MainSection")); + QCOMPARE(cfg.readEntry(QStringLiteral("TestEntry"), QStringLiteral("UnexpectedData")), QStringLiteral("ExpectedData")); +} + +QTEST_MAIN(FallbackConfigResourcesTest) + +#include "fallbackconfigresourcestest.moc" diff --git a/autotests/helper.h b/autotests/helper.h new file mode 100644 index 0000000..513916a --- /dev/null +++ b/autotests/helper.h @@ -0,0 +1,30 @@ +/* + SPDX-FileCopyrightText: 2014 Martin Gräßlin + + SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL +*/ +#ifndef KCONFIG_AUTOTESTS_HELPER_H +#define KCONFIG_AUTOTESTS_HELPER_H + +#include + +/** + * @brief Helper to store the current default QLocale and resetting to it in the dtor. + **/ +class DefaultLocale +{ +public: + DefaultLocale() + : m_defaultLocale() + { + } + ~DefaultLocale() + { + QLocale::setDefault(m_defaultLocale); + } + +private: + QLocale m_defaultLocale; +}; + +#endif diff --git a/autotests/kconfig_benchmark.cpp b/autotests/kconfig_benchmark.cpp new file mode 100644 index 0000000..462dbad --- /dev/null +++ b/autotests/kconfig_benchmark.cpp @@ -0,0 +1,101 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 2024 Friedrich W. H. Kossebau + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include +#include + +#include +#include +#include + +static const QString s_test_subdir{QStringLiteral("kconfigtest_subdir/")}; +static const QString s_kconfig_test_subdir(s_test_subdir + QLatin1String("kconfigtest")); + +static const QString s_string_entry1(QStringLiteral("hello")); + +class KConfigBenchmark : public QObject +{ + Q_OBJECT + +private Q_SLOTS: + void initTestCase(); + + void testHasKey(); + void testReadEntry(); + void testKConfigGroupKeyList(); +}; + +void KConfigBenchmark::initTestCase() +{ + // ensure we don't use files in the real config directory + QStandardPaths::setTestModeEnabled(true); + + KConfig sc(s_kconfig_test_subdir); + KConfigGroup cg(&sc, QStringLiteral("Main")); + cg.deleteGroup(); + cg.writeEntry("UsedEntry", s_string_entry1); +} + +void KConfigBenchmark::testHasKey() +{ + bool hasUsedKey = false; + bool hasNotUsedKey = true; + + KConfig sc(s_kconfig_test_subdir); + KConfigGroup cg(&sc, QStringLiteral("Main")); + + QBENCHMARK { + hasUsedKey = cg.hasKey("UsedEntry"); + hasNotUsedKey = cg.hasKey("NotUsedEntry"); + } + + QCOMPARE(hasUsedKey, true); + QCOMPARE(hasNotUsedKey, false); +} + +void KConfigBenchmark::testReadEntry() +{ + QString usedEntry; + QString notUsedEntry; + const QString defaultEntry = QStringLiteral("Default"); + + KConfig sc(s_kconfig_test_subdir); + KConfigGroup cg(&sc, QStringLiteral("Main")); + + QBENCHMARK { + usedEntry = cg.readEntry("UsedEntry", defaultEntry); + notUsedEntry = cg.readEntry("NotUsedEntry", defaultEntry); + } + + QCOMPARE(usedEntry, s_string_entry1); + QCOMPARE(notUsedEntry, defaultEntry); +} + +void KConfigBenchmark::testKConfigGroupKeyList() +{ + QStringList keyList; + const QString defaultEntry = QStringLiteral("Default"); + + KConfig sc(s_kconfig_test_subdir); + KConfigGroup cg(&sc, QStringLiteral("Main")); + cg.writeEntry("Entry2", s_string_entry1); + cg.writeEntry("Entry3", s_string_entry1); + + QBENCHMARK { + keyList = cg.keyList(); + } + + const QStringList expectedKeyList{ + QStringLiteral("Entry2"), + QStringLiteral("Entry3"), + QStringLiteral("UsedEntry"), + }; + QCOMPARE(keyList, expectedKeyList); +} + +QTEST_GUILESS_MAIN(KConfigBenchmark) + +#include "kconfig_benchmark.moc" diff --git a/autotests/kconfig_compiler/CMakeLists.txt b/autotests/kconfig_compiler/CMakeLists.txt new file mode 100644 index 0000000..286948f --- /dev/null +++ b/autotests/kconfig_compiler/CMakeLists.txt @@ -0,0 +1,187 @@ +# make sure the generated headers can be found +include_directories(${CMAKE_CURRENT_BINARY_DIR}) + +include(ECMMarkAsTest) +include(${CMAKE_SOURCE_DIR}/KF6ConfigMacros.cmake) + +macro(GEN_KCFG_TEST_SOURCE _testName _srcs) + KCONFIG_ADD_KCFG_FILES(${_srcs} ${_testName}.kcfgc ${ARGN}) +endmacro() + +function(kconfig_compiler_test ARG_NAME) + cmake_parse_arguments(PARSE_ARGV 1 ARG "GENERATE_MOC" "MAIN;CLASS_NAME;KCFG;KCFGC" "") + + string(TOLOWER "${ARG_NAME}" _name_lc) + + if("${ARG_MAIN}" STREQUAL "") + set(ARG_MAIN "${_name_lc}main.cpp") + endif() + + if("${ARG_CLASS_NAME}" STREQUAL "") + set(ARG_CLASS_NAME "${ARG_NAME}") + endif() + + if("${ARG_KCFG}" STREQUAL "") + set(ARG_KCFG "${_name_lc}.kcfg") + endif() + + if("${ARG_KCFGC}" STREQUAL "") + set(ARG_KCFGC "${_name_lc}.kcfgc") + endif() + + if(${ARG_GENERATE_MOC}) + set(_moc GENERATE_MOC) + endif() + + # execute the tests in ${CMAKE_CURRENT_BINARY_DIR} to ensure we can easily find the generated files + + ecm_add_test(TEST_NAME ${ARG_NAME} ${ARG_MAIN} WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) + KCONFIG_ADD_KCFG_FILES(${ARG_NAME} "${ARG_KCFGC}" ${_moc}) + target_link_libraries(${ARG_NAME} Qt6::Test Qt6::Qml KF6::ConfigGui) + + ecm_add_test(TEST_NAME ${ARG_NAME}_cmake ${ARG_MAIN} WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) + get_filename_component(_kcfg_we "${ARG_KCFG}" NAME_WE) + configure_file("${ARG_KCFG}" "${_kcfg_we}_cmake.kcfg" COPYONLY) + kconfig_target_kcfg_file(${ARG_NAME}_cmake FILE "${CMAKE_CURRENT_BINARY_DIR}/${_kcfg_we}_cmake.kcfg" CLASS_NAME "${ARG_CLASS_NAME}" ${_moc} ${ARG_UNPARSED_ARGUMENTS}) + target_link_libraries(${ARG_NAME}_cmake Qt6::Test Qt6::Qml KF6::ConfigGui) + add_dependencies(${ARG_NAME}_cmake ${ARG_NAME}) +endfunction() + +kconfig_compiler_test(Test1 PARENT_IN_CONSTRUCTOR MUTATORS) +kconfig_compiler_test(Test2 MUTATORS GLOBAL_ENUMS ITEM_ACCESSORS SET_USER_TEXTS INHERITS MyPrefs INCLUDE_FILES myprefs.h MEMBER_VARIABLES public) +kconfig_compiler_test(Test3 MUTATORS GLOBAL_ENUMS ITEM_ACCESSORS NAME_SPACE TestNameSpace) +kconfig_compiler_test(Test3a MUTATORS GLOBAL_ENUMS ITEM_ACCESSORS NAME_SPACE TestNameSpace::InnerNameSpace) +kconfig_compiler_test(Test4 SINGLETON MUTATORS) +kconfig_compiler_test(Test5 PARENT_IN_CONSTRUCTOR SINGLETON MUTATORS GLOBAL_ENUMS) +kconfig_compiler_test(Test6 MUTATORS GLOBAL_ENUMS) +kconfig_compiler_test(Test7 MUTATORS GLOBAL_ENUMS) + +kconfig_compiler_test(Test8 KCFGC test8a.kcfgc KCFG test8a.kcfg CLASS_NAME Test8a PARENT_IN_CONSTRUCTOR MUTATORS) +KCONFIG_ADD_KCFG_FILES(Test8 test8c.kcfgc) +KCONFIG_ADD_KCFG_FILES(Test8 test8b.kcfgc) +kconfig_target_kcfg_file(Test8_cmake FILE test8b.kcfg CLASS_NAME Test8b SINGLETON MUTATORS INCLUDE_FILES test8a.h INHERITS Test8a) +kconfig_target_kcfg_file(Test8_cmake FILE test8c.kcfg CLASS_NAME Test8c SINGLETON PARENT_IN_CONSTRUCTOR MUTATORS) + +kconfig_compiler_test(Test9 MEMBER_VARIABLES public MUTATORS) +kconfig_compiler_test(Test10 SINGLETON) + +kconfig_compiler_test(Test11 PARENT_IN_CONSTRUCTOR MUTATORS INHERITS MyPrefs INCLUDE_FILES myprefs.h MEMBER_VARIABLES public ITEM_ACCESSORS SET_USER_TEXTS USE_ENUM_TYPES DEFAULT_VALUE_GETTERS) +KCONFIG_ADD_KCFG_FILES(Test11 test11a.kcfgc) +kconfig_target_kcfg_file(Test11_cmake FILE test11a.kcfg CLASS_NAME Test11a MUTATORS INHERITS MyPrefs INCLUDE_FILES myprefs.h MEMBER_VARIABLES public ITEM_ACCESSORS SET_USER_TEXTS USE_ENUM_TYPES DEFAULT_VALUE_GETTERS) + +kconfig_compiler_test(Test12 test12main.cpp) +kconfig_compiler_test(Test13 test13main.cpp MUTATORS GENERATE_PROPERTIES GENERATE_MOC) +kconfig_compiler_test(Test14 KCFGC test14.kcfgc KCFG test14.kcfg CLASS_NAME Test14 GENERATE_PROPERTIES GENERATE_MOC SINGLETON QML_REGISTRATION) +kconfig_compiler_test(Test15 CLASS_NAME Test15 GENERATE_PROPERTIES GENERATE_MOC SINGLETON QML_REGISTRATION) + +kconfig_compiler_test(test_state_config MAIN test_state_config_main.cpp CLASS_NAME MyStateConfig MUTATORS ITEM_ACCESSORS GENERATE_MOC) +kconfig_compiler_test(test_emptyentries MAIN test_emptyentries_main.cpp CLASS_NAME QMakeBuilderSettings SINGLETON GENERATE_MOC) +kconfig_compiler_test(test_subgroups MAIN test_subgroups_main.cpp CLASS_NAME TestSubgroups NOTIFIERS GENERATE_MOC) +kconfig_compiler_test(test_dpointer MAIN test_dpointer_main.cpp CLASS_NAME TestDPointer SINGLETON MUTATORS MEMBER_VARIABLES dpointer ITEM_ACCESSORS SET_USER_TEXTS) +kconfig_compiler_test(test_signal MAIN test_signal_main.cpp CLASS_NAME TestSignal SINGLETON MUTATORS MEMBER_VARIABLES private GENERATE_MOC) +kconfig_compiler_test(test_notifiers MAIN test_notifiers_main.cpp CLASS_NAME TestNotifiers MUTATORS GLOBAL_ENUMS NOTIFIERS) + +########### next target ############### + +set(kconfigcompiler_test_signals_SRCS kconfigcompiler_test_signals.cpp) +gen_kcfg_test_source(signals_test_singleton kconfigcompiler_test_signals_SRCS GENERATE_MOC) +gen_kcfg_test_source(signals_test_no_singleton kconfigcompiler_test_signals_SRCS GENERATE_MOC) +gen_kcfg_test_source(signals_test_singleton_dpointer kconfigcompiler_test_signals_SRCS GENERATE_MOC) +gen_kcfg_test_source(signals_test_no_singleton_dpointer kconfigcompiler_test_signals_SRCS GENERATE_MOC) +gen_kcfg_test_source(signals_test_singleton_itemaccessors kconfigcompiler_test_signals_SRCS GENERATE_MOC) + +ecm_add_test(${kconfigcompiler_test_signals_SRCS} + TEST_NAME kconfigcompiler-signals-test + LINK_LIBRARIES Qt6::Test KF6::ConfigGui +) + +########### next target ############### + +set(test_properties_minmax_SRCS test_properties_minmax_main.cpp) +gen_kcfg_test_source(test_properties_minmax test_properties_minmax_SRCS GENERATE_MOC) + +ecm_add_test(${test_properties_minmax_SRCS} + TEST_NAME test_properties_minmax + LINK_LIBRARIES KF6::ConfigGui +) + +########### next target ############### + +set(test_param_minmax_SRCS test_param_minmax_main.cpp) +gen_kcfg_test_source(test_param_minmax test_param_minmax_SRCS) + +ecm_add_test(${test_param_minmax_SRCS} + TEST_NAME test_param_minmax + LINK_LIBRARIES KF6::ConfigGui +) + +########### next target ############### + +ecm_add_test(kconfigcompiler_test.cpp + TEST_NAME kconfigcompiler-basic-test + LINK_LIBRARIES Qt6::Test +) + + +########### next target ############### + +set(test_qcategory_SRCS test_qdebugcategorymain.cpp test_qdebugcategory_debug.cpp) +gen_kcfg_test_source(test_qdebugcategory test_qcategory_SRCS) +ecm_add_test(TEST_NAME test_qdebugcategory ${test_qcategory_SRCS}) +target_link_libraries(test_qdebugcategory KF6::ConfigGui) + +########### next target ############### + +set(test_translation_qt_SRCS test_translation_qt_main.cpp) +gen_kcfg_test_source(test_translation_qt test_translation_qt_SRCS) + +ecm_add_test(TEST_NAME test_translation_qt ${test_translation_qt_SRCS}) +target_link_libraries(test_translation_qt KF6::ConfigGui) + +########### next target ############### + +set(test_translation_kde_SRCS test_translation_kde_main.cpp) +gen_kcfg_test_source(test_translation_kde test_translation_kde_SRCS) + +ecm_add_test(TEST_NAME test_translation_kde ${test_translation_kde_SRCS}) +target_link_libraries(test_translation_kde KF6::ConfigGui) + +########### next target ############### + +set(test_translation_kde_domain_SRCS test_translation_kde_domain_main.cpp) +gen_kcfg_test_source(test_translation_kde_domain test_translation_kde_domain_SRCS) + +ecm_add_test(TEST_NAME test_translation_kde_domain ${test_translation_kde_domain_SRCS}) +target_link_libraries(test_translation_kde_domain KF6::ConfigGui) + +########### next target ############### + +set(test_fileextensions_SRCS test_fileextensions_main.cxx) +gen_kcfg_test_source(test_fileextensions test_fileextensions_SRCS) + +ecm_add_test(TEST_NAME test_fileextensions ${test_fileextensions_SRCS}) +target_link_libraries(test_fileextensions KF6::ConfigGui) + + +####### next target ########## +## If this to compiles, we are sure that the generation is correct. +set(test_enums_and_properties_SRCS enum_group_main.cpp) +gen_kcfg_test_source(test_enums_and_properties test_enums_and_properties_SRCS GENERATE_MOC) +ecm_add_test(TEST_NAME test_enums_and_properties ${test_enums_and_properties_SRCS}) +target_link_libraries(test_enums_and_properties KF6::ConfigGui) + +ecm_add_test(test14qml.cpp TEST_NAME test14qml) +qt6_add_qml_module(test14qml URI "org.kde.kconfig.test14" QML_FILES Test14Qml.qml) +kconfig_add_kcfg_files(test14qml "test14.kcfgc" GENERATE_MOC) +target_link_libraries(test14qml PRIVATE Qt6::Gui Qt6::Qml Qt6::Test KF6::ConfigGui) +if (NOT QT6_IS_SHARED_LIBS_BUILD) + qt6_import_qml_plugins(test14qml) +endif() + +ecm_add_test(test15qml.cpp TEST_NAME test15qml) +qt6_add_qml_module(test15qml URI "org.kde.kconfig.test15" QML_FILES Test15Qml.qml) +kconfig_add_kcfg_files(test15qml "test15.kcfgc" GENERATE_MOC) +target_link_libraries(test15qml PRIVATE Qt6::Gui Qt6::Qml Qt6::Test KF6::ConfigGui) +if (NOT QT6_IS_SHARED_LIBS_BUILD) + qt6_import_qml_plugins(test15qml) +endif() diff --git a/autotests/kconfig_compiler/Test14Qml.qml b/autotests/kconfig_compiler/Test14Qml.qml new file mode 100644 index 0000000..471b7b1 --- /dev/null +++ b/autotests/kconfig_compiler/Test14Qml.qml @@ -0,0 +1,18 @@ +/* + SPDX-FileCopyrightText: 2024 Nicolas Fella + + SPDX-License-Identifier: MIT +*/ + +import QtQuick +import org.kde.kconfig.test14 + +Item { + + property url dir: test.picturesDir + property double brightness: test.brightness + + Test14 { + id: test + } +} diff --git a/autotests/kconfig_compiler/Test15Qml.qml b/autotests/kconfig_compiler/Test15Qml.qml new file mode 100644 index 0000000..9b2d088 --- /dev/null +++ b/autotests/kconfig_compiler/Test15Qml.qml @@ -0,0 +1,13 @@ +/* + SPDX-FileCopyrightText: 2024 Nicolas Fella + + SPDX-License-Identifier: MIT +*/ + +import QtQuick +import org.kde.kconfig.test15 + +Item { + property url dir: Test15.picturesDir + property double brightness: Test15.brightness +} diff --git a/autotests/kconfig_compiler/empty_main.cpp b/autotests/kconfig_compiler/empty_main.cpp new file mode 100644 index 0000000..905869d --- /dev/null +++ b/autotests/kconfig_compiler/empty_main.cpp @@ -0,0 +1,4 @@ +int main() +{ + return 0; +} diff --git a/autotests/kconfig_compiler/enum_group_main.cpp b/autotests/kconfig_compiler/enum_group_main.cpp new file mode 100644 index 0000000..73e09ae --- /dev/null +++ b/autotests/kconfig_compiler/enum_group_main.cpp @@ -0,0 +1,17 @@ +/* + SPDX-FileCopyrightText: 2009 Pino Toscano + + SPDX-License-Identifier: MIT +*/ +#include "test_enums_and_properties.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + + TestEnumsAndProperties t = TestEnumsAndProperties(); + + Q_UNUSED(app); + return 0; +} diff --git a/autotests/kconfig_compiler/kconfigcompiler_test.cpp b/autotests/kconfig_compiler/kconfigcompiler_test.cpp new file mode 100644 index 0000000..32a3217 --- /dev/null +++ b/autotests/kconfig_compiler/kconfigcompiler_test.cpp @@ -0,0 +1,236 @@ +/* + Tests for KConfig Compiler + + SPDX-FileCopyrightText: 2005 Duncan Mac-Vicar + SPDX-FileCopyrightText: 2009 Pino Toscano + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kconfigcompiler_test.h" +#include +#include +#include +#include +#include + +// QT5 TODO QTEST_GUILESS_MAIN(KConfigCompiler_Test) +QTEST_MAIN(KConfigCompiler_Test) + +typedef const char *CompilerTestSet[]; + +static CompilerTestSet testCases = {"test1.cpp", + "test1.h", + "test2.cpp", + "test2.h", + "test3.cpp", + "test3.h", + "test3a.cpp", + "test3a.h", + "test4.cpp", + "test4.h", + "test5.cpp", + "test5.h", + "test6.cpp", + "test6.h", + "test7.cpp", + "test7.h", + "test8a.cpp", + "test8a.h", + "test8b.cpp", + "test8b.h", + "test8c.cpp", + "test8c.h", + "test9.h", + "test9.cpp", + "test10.h", + "test10.cpp", + "test11.h", + "test11.cpp", + "test11a.h", + "test11a.cpp", + "test12.h", + "test12.cpp", + "test13.h", + "test13.cpp", + "test14.h", + "test14.cpp", + "test15.h", + "test15.cpp", + "test_dpointer.cpp", + "test_dpointer.h", + "test_qdebugcategory.cpp", + "test_qdebugcategory.h", + "test_signal.cpp", + "test_signal.h", + "test_notifiers.cpp", + "test_notifiers.h", + "test_translation_kde.cpp", + "test_translation_kde.h", + "test_translation_kde_domain.cpp", + "test_translation_kde_domain.h", + "test_translation_qt.cpp", + "test_translation_qt.h", + "test_emptyentries.cpp", + "test_emptyentries.h", + "test_properties_minmax.cpp", + "test_properties_minmax.h", + "test_param_minmax.cpp", + "test_param_minmax.h", + "test_subgroups.cpp", + "test_subgroups.h", + nullptr}; + +static CompilerTestSet testCasesToRun = {"Test1", + "Test2", + "Test3", + "Test3a", + "Test4", + "Test5", + "Test6", + "Test7", + "Test8", + "Test9", + "Test10", + "Test11", + "Test12", + "Test13", + "Test14", + "Test15", + "test_enums_and_properties", + "test_dpointer", + "test_qdebugcategory", + "test_signal", + "test_translation_kde", + "test_translation_kde_domain", + "test_translation_qt", + "test_emptyentries", + "test_properties_minmax", + "test_param_minmax", + "test_subgroups", + "Test1_cmake", + "Test2_cmake", + "Test3_cmake", + "Test3a_cmake", + "Test4_cmake", + "Test5_cmake", + "Test6_cmake", + "Test7_cmake", + "Test8_cmake", + "Test9_cmake", + "Test10_cmake", + "Test11_cmake", + "Test12_cmake", + "Test13_cmake", + "Test14_cmake", + "Test15_cmake", + "test_dpointer_cmake", + "test_signal_cmake", + "test_emptyentries_cmake", + "test_subgroups_cmake", + nullptr}; + +#if 0 +static CompilerTestSet willFailCases = { + // where is that QDir coming from? + //"test9.cpp", NULL + NULL +}; +#endif + +void KConfigCompiler_Test::initTestCase() +{ + m_diffExe = QStandardPaths::findExecutable(QStringLiteral("diff")); + if (m_diffExe.isEmpty()) { + qDebug() << "diff command not found, detailed info on comparison failure will not be available."; + } +} + +void KConfigCompiler_Test::testBaselineComparison_data() +{ + QTest::addColumn("testName"); + + for (const char **it = testCases; *it; ++it) { + QTest::newRow(*it) << QString::fromLatin1(*it); + } +} + +void KConfigCompiler_Test::testBaselineComparison() +{ + QFETCH(QString, testName); + + QFile file(testName); + QFile fileRef(QFINDTESTDATA(testName + QLatin1String(".ref"))); + + if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) { + qWarning() << "Failed to open" << file.fileName() << "(" << testName << ")"; + QFAIL("Can't open file for comparison"); + } + if (!fileRef.open(QIODevice::ReadOnly | QIODevice::Text)) { + qWarning() << "Failed to open" << fileRef.fileName() << "(" << testName << ".ref )"; + QFAIL("Can't open file for comparison"); + } + const QByteArray content = file.readAll(); + const QByteArray contentRef = fileRef.readAll(); + + if (content != contentRef) { + appendFileDiff(fileRef.fileName(), file.fileName()); + } + + QVERIFY(content == contentRef); +} + +void KConfigCompiler_Test::testRunning_data() +{ + QTest::addColumn("testName"); + + for (const char **it = testCasesToRun; *it; ++it) { + QTest::newRow(*it) << QString::fromLatin1(*it); + } +} + +void KConfigCompiler_Test::testRunning() +{ + QFETCH(QString, testName); + +#ifdef Q_OS_WIN + testName += QLatin1String{".exe"}; +#endif + + QString program = QFINDTESTDATA(testName); + QVERIFY2(!program.isEmpty(), qPrintable(testName + QLatin1String(" must exist!"))); + QVERIFY2(QFile::exists(program), qPrintable(program + QLatin1String(" must exist!"))); + QProcess process; + process.start(program, QStringList(), QIODevice::ReadOnly); + if (process.waitForStarted()) { + QVERIFY(process.waitForFinished()); + } + QCOMPARE((int)process.error(), (int)QProcess::UnknownError); + QCOMPARE(process.exitCode(), 0); +} + +void KConfigCompiler_Test::appendFileDiff(const QString &oldFile, const QString &newFile) +{ + if (m_diffExe.isEmpty()) { + return; + } + + QStringList args({QStringLiteral("-u"), QFileInfo(oldFile).absoluteFilePath(), QFileInfo(newFile).absoluteFilePath()}); + + QProcess process; + process.start(m_diffExe, args, QIODevice::ReadOnly); + process.waitForStarted(); + process.waitForFinished(); + + if (process.exitCode() == 1) { + const QString diffFileName = oldFile + QStringLiteral(".diff"); + QFile diffFile(diffFileName); + QVERIFY2(diffFile.open(QIODevice::WriteOnly), qPrintable(QLatin1String("Could not save diff file for ") + oldFile)); + diffFile.write(process.readAllStandardOutput()); + + // force a failure to print the flename where we stored the diff. + QVERIFY2(false, qPrintable(QLatin1String("This test failed, look at the following file for details: ") + diffFileName)); + } +} + +#include "moc_kconfigcompiler_test.cpp" diff --git a/autotests/kconfig_compiler/kconfigcompiler_test.h b/autotests/kconfig_compiler/kconfigcompiler_test.h new file mode 100644 index 0000000..c8242cf --- /dev/null +++ b/autotests/kconfig_compiler/kconfigcompiler_test.h @@ -0,0 +1,34 @@ +/* + Tests for KConfig Compiler + + SPDX-FileCopyrightText: 2005 Duncan Mac-Vicar + SPDX-FileCopyrightText: 2009 Pino Toscano + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGCOMPILER_TEST_H +#define KCONFIGCOMPILER_TEST_H + +#include +#include + +class QString; + +class KConfigCompiler_Test : public QObject +{ + Q_OBJECT +private Q_SLOTS: + void initTestCase(); + void testBaselineComparison_data(); + void testBaselineComparison(); + void testRunning_data(); + void testRunning(); + +private: + void appendFileDiff(const QString &oldFile, const QString &newFile); + + QString m_diffExe; +}; + +#endif diff --git a/autotests/kconfig_compiler/kconfigcompiler_test_signals.cpp b/autotests/kconfig_compiler/kconfigcompiler_test_signals.cpp new file mode 100644 index 0000000..46a2bd6 --- /dev/null +++ b/autotests/kconfig_compiler/kconfigcompiler_test_signals.cpp @@ -0,0 +1,214 @@ +/* + SPDX-FileCopyrightText: 2014 Alexander Richardson + + SPDX-License-Identifier: MIT +*/ + +#include "signals_test_no_singleton.h" +#include "signals_test_no_singleton_dpointer.h" +#include "signals_test_singleton.h" +#include "signals_test_singleton_dpointer.h" +#include "signals_test_singleton_itemaccessors.h" +#include +#include +#include +#include +#include +#include +#include + +class KConfigCompiler_Test_Signals : public QObject +{ + Q_OBJECT +private Q_SLOTS: + void testSetters(); + void testSetters_data(); + void testSetProperty(); + void testSetProperty_data(); + void initTestCase(); + void cleanupTestCase(); +}; + +static SignalsTestNoSingleton *noSingleton; +static SignalsTestNoSingletonDpointer *noSingletonDpointer; + +void KConfigCompiler_Test_Signals::initTestCase() +{ + // These tests do a lot quite a few I/O operations, speed that up by using a QTemporaryFile. + // At least on Linux this is often a tmpfs which means only RAM operations + QTemporaryFile *tempFile1 = new QTemporaryFile(this); + QTemporaryFile *tempFile2 = new QTemporaryFile(this); + QTemporaryFile *tempFile3 = new QTemporaryFile(this); + QTemporaryFile *tempFile4 = new QTemporaryFile(this); + QTemporaryFile *tempFile5 = new QTemporaryFile(this); + QVERIFY(tempFile1->open()); + QVERIFY(tempFile2->open()); + QVERIFY(tempFile3->open()); + QVERIFY(tempFile4->open()); + QVERIFY(tempFile5->open()); + + SignalsTestSingleton::instance(QFileInfo(*tempFile1).absoluteFilePath()); + SignalsTestSingletonDpointer::instance(QFileInfo(*tempFile2).absoluteFilePath()); + noSingleton = new SignalsTestNoSingleton(KSharedConfig::openConfig(QFileInfo(*tempFile3).absoluteFilePath(), KConfig::SimpleConfig)); + noSingletonDpointer = new SignalsTestNoSingletonDpointer(KSharedConfig::openConfig(QFileInfo(*tempFile4).absoluteFilePath(), KConfig::SimpleConfig)); + SignalsTestSingletonItemAccessors::instance(QFileInfo(*tempFile5).absoluteFilePath()); +} + +void KConfigCompiler_Test_Signals::cleanupTestCase() +{ + // ensure these instances are deleted before the temporary files are closed + delete noSingleton; + delete noSingletonDpointer; + delete SignalsTestSingleton::self(); + delete SignalsTestSingletonDpointer::self(); + delete SignalsTestSingletonItemAccessors::self(); +} + +struct TestSettersArg { + // default constructor required for Q_DECLARE_METATYPE + TestSettersArg() + : obj(nullptr) + { + } + template + TestSettersArg(T *object) + : obj(object) + { + // we can also call static methods using object->foo() so this works for all four cases + getter = [object]() { + return object->foo(); + }; + defaultGetter = [object]() { + return object->defaultFooValue(); + }; + setter = [object](const QString &s) { + object->setFoo(s); + }; + } + KCoreConfigSkeleton *obj; + std::function getter; + std::function defaultGetter; + std::function setter; +}; + +Q_DECLARE_METATYPE(TestSettersArg) // so that QFETCH works + +void KConfigCompiler_Test_Signals::testSetters_data() +{ + QTest::addColumn("params"); + QTest::newRow("singleton") << TestSettersArg(SignalsTestSingleton::self()); + QTest::newRow("singleton dpointer") << TestSettersArg(SignalsTestSingletonDpointer::self()); + QTest::newRow("non-singleton") << TestSettersArg(noSingleton); + QTest::newRow("non-singleton dpointer") << TestSettersArg(noSingleton); + QTest::newRow("singleton itemaccessors") << TestSettersArg(SignalsTestSingletonItemAccessors::self()); +} + +/** Ensure that a signal is emitted whenever the data is changed by using the generated setters */ +void KConfigCompiler_Test_Signals::testSetters() +{ + QFETCH(TestSettersArg, params); + const char *signal = SIGNAL(fooChanged(QString)); + const QString defaultValue = QStringLiteral("default"); + const QString changedValue = QStringLiteral("changed"); + + // make sure we are in the default state + params.obj->setDefaults(); + params.obj->save(); + + QList args; + QSignalSpy spy(params.obj, signal); + QVERIFY2(spy.isValid(), signal); + + // change value via setter, should get signal + QCOMPARE(params.getter(), defaultValue); + QCOMPARE(defaultValue, params.defaultGetter()); + QCOMPARE(params.getter(), params.defaultGetter()); + QVERIFY(changedValue != params.getter()); + params.setter(changedValue); + QCOMPARE(params.getter(), changedValue); + QCOMPARE(spy.count(), 0); // should have no change yet, only after save() + params.obj->save(); + QCOMPARE(spy.count(), 1); + args = spy.takeFirst(); + QCOMPARE(args.size(), 1); + QCOMPARE(args[0].toString(), changedValue); + + // reset to default values via setDefaults() + QVERIFY(params.getter() != params.defaultGetter()); + QVERIFY(params.getter() != defaultValue); + QCOMPARE(params.getter(), changedValue); + params.obj->setDefaults(); + QCOMPARE(params.getter(), params.defaultGetter()); + QCOMPARE(params.getter(), defaultValue); + + QCOMPARE(spy.count(), 0); // should have no change yet, only after save() + params.obj->save(); + // TODO: This currently fails since setDefaults() does not yet cause emitting a signal + QCOMPARE(spy.count(), 1); + args = spy.takeFirst(); + QCOMPARE(args.size(), 1); + QCOMPARE(args[0].value(), defaultValue); +} + +Q_DECLARE_METATYPE(KCoreConfigSkeleton *) + +void KConfigCompiler_Test_Signals::testSetProperty_data() +{ + QTest::addColumn("obj"); + QTest::newRow("singleton") << static_cast(SignalsTestSingleton::self()); + QTest::newRow("singleton dpointer") << static_cast(SignalsTestSingletonDpointer::self()); + QTest::newRow("non-singleton") << static_cast(noSingleton); + QTest::newRow("non-singleton dpointer") << static_cast(noSingletonDpointer); + QTest::newRow("singleton itemaccessors") << static_cast(SignalsTestSingletonItemAccessors::self()); +} + +/** Test that the signal is emitted when modifying the values using the underlying KConfigSkeletonItem (bypassing the setters) */ +void KConfigCompiler_Test_Signals::testSetProperty() +{ + QFETCH(KCoreConfigSkeleton *, obj); + const char *signal = SIGNAL(fooChanged(QString)); + const QString propertyName = QStringLiteral("foo"); + const QString defaultValue = QStringLiteral("default"); + const QString newValue = QStringLiteral("changed"); + obj->setDefaults(); + obj->save(); + + KConfigSkeletonItem *item = obj->findItem(propertyName); + QVERIFY2(item, "Item must exist"); + QVERIFY2(!item->isImmutable(), "Item must not be immutable"); + QVERIFY2(!obj->isImmutable(propertyName), "Item must not be immutable"); + + // listen for all expected signals + QSignalSpy spy(obj, signal); + QVERIFY2(spy.isValid(), signal); + + QVERIFY(item->isEqual(defaultValue)); + QVERIFY(!item->isEqual(newValue)); + + item->setProperty(newValue); // change value now + // should have no change yet, only after save() + QCOMPARE(spy.count(), 0); + obj->save(); + // now check for the signal emissions + QCOMPARE(spy.count(), 1); + QList args = spy.takeFirst(); + QCOMPARE(args.size(), 1); + QVERIFY(item->isEqual(args[0])); + + // now reset to default + QVERIFY(!item->isEqual(defaultValue)); + item->setDefault(); + QVERIFY(item->isEqual(defaultValue)); + // should have no change yet, only after save() + QCOMPARE(spy.count(), 0); + obj->save(); + // now check for the signal emissions + QCOMPARE(spy.count(), 1); + args = spy.takeFirst(); + QCOMPARE(args.size(), 1); + QVERIFY(item->isEqual(args[0])); +} + +QTEST_MAIN(KConfigCompiler_Test_Signals) + +#include "kconfigcompiler_test_signals.moc" diff --git a/autotests/kconfig_compiler/klocalizedstring.h b/autotests/kconfig_compiler/klocalizedstring.h new file mode 100644 index 0000000..1bd54be --- /dev/null +++ b/autotests/kconfig_compiler/klocalizedstring.h @@ -0,0 +1,38 @@ +/* + SPDX-FileCopyrightText: 2015 Chusslove Illich + + SPDX-License-Identifier: MIT +*/ + +/* This file is needed for test_translation_kde. + * It provides fake i18n* in order to avoid dependency on Ki18n framework. + */ + +#ifndef KLOCALIZEDSTRING_H +#define KLOCALIZEDSTRING_H + +inline QString i18n(const char *msgid) +{ + return QString::fromUtf8(msgid); +} + +inline QString i18nc(const char *msgctxt, const char *msgid) +{ + Q_UNUSED(msgctxt); + return QString::fromUtf8(msgid); +} + +inline QString i18nd(const char *domain, const char *msgid) +{ + Q_UNUSED(domain); + return QString::fromUtf8(msgid); +} + +inline QString i18ndc(const char *domain, const char *msgctxt, const char *msgid) +{ + Q_UNUSED(domain); + Q_UNUSED(msgctxt); + return QString::fromUtf8(msgid); +} + +#endif diff --git a/autotests/kconfig_compiler/myprefs.h b/autotests/kconfig_compiler/myprefs.h new file mode 100644 index 0000000..073352b --- /dev/null +++ b/autotests/kconfig_compiler/myprefs.h @@ -0,0 +1,15 @@ +#ifndef MYPREFS_H +#define MYPREFS_H + +#include + +class MyPrefs : public KConfigSkeleton +{ +public: + MyPrefs(const QString &a) + : KConfigSkeleton(a) + { + } +}; + +#endif diff --git a/autotests/kconfig_compiler/signals_test.kcfg b/autotests/kconfig_compiler/signals_test.kcfg new file mode 100644 index 0000000..766c56e --- /dev/null +++ b/autotests/kconfig_compiler/signals_test.kcfg @@ -0,0 +1,17 @@ + + + + + + foo + + + + default + + + + diff --git a/autotests/kconfig_compiler/signals_test_no_singleton.kcfgc b/autotests/kconfig_compiler/signals_test_no_singleton.kcfgc new file mode 100644 index 0000000..4d096e0 --- /dev/null +++ b/autotests/kconfig_compiler/signals_test_no_singleton.kcfgc @@ -0,0 +1,9 @@ +File=signals_test.kcfg +ClassName=SignalsTestNoSingleton +Singleton=false +Mutators=true +MemberVariables=private +GlobalEnums=false +UseEnumTypes=false +ItemAccessors=false +DefaultValueGetters=true diff --git a/autotests/kconfig_compiler/signals_test_no_singleton_dpointer.kcfgc b/autotests/kconfig_compiler/signals_test_no_singleton_dpointer.kcfgc new file mode 100644 index 0000000..11b7c43 --- /dev/null +++ b/autotests/kconfig_compiler/signals_test_no_singleton_dpointer.kcfgc @@ -0,0 +1,9 @@ +File=signals_test.kcfg +ClassName=SignalsTestNoSingletonDpointer +Singleton=false +Mutators=true +MemberVariables=dpointer +GlobalEnums=false +UseEnumTypes=false +ItemAccessors=false +DefaultValueGetters=true diff --git a/autotests/kconfig_compiler/signals_test_singleton.kcfgc b/autotests/kconfig_compiler/signals_test_singleton.kcfgc new file mode 100644 index 0000000..59e0445 --- /dev/null +++ b/autotests/kconfig_compiler/signals_test_singleton.kcfgc @@ -0,0 +1,9 @@ +File=signals_test.kcfg +ClassName=SignalsTestSingleton +Singleton=true +Mutators=true +MemberVariables=private +GlobalEnums=false +UseEnumTypes=false +ItemAccessors=false +DefaultValueGetters=true diff --git a/autotests/kconfig_compiler/signals_test_singleton_dpointer.kcfgc b/autotests/kconfig_compiler/signals_test_singleton_dpointer.kcfgc new file mode 100644 index 0000000..1f13493 --- /dev/null +++ b/autotests/kconfig_compiler/signals_test_singleton_dpointer.kcfgc @@ -0,0 +1,9 @@ +File=signals_test.kcfg +ClassName=SignalsTestSingletonDpointer +Singleton=true +Mutators=true +MemberVariables=dpointer +GlobalEnums=false +UseEnumTypes=false +ItemAccessors=false +DefaultValueGetters=true diff --git a/autotests/kconfig_compiler/signals_test_singleton_itemaccessors.kcfgc b/autotests/kconfig_compiler/signals_test_singleton_itemaccessors.kcfgc new file mode 100644 index 0000000..c71cca8 --- /dev/null +++ b/autotests/kconfig_compiler/signals_test_singleton_itemaccessors.kcfgc @@ -0,0 +1,9 @@ +File=signals_test.kcfg +ClassName=SignalsTestSingletonItemAccessors +Singleton=true +Mutators=true +MemberVariables=private +GlobalEnums=false +UseEnumTypes=false +ItemAccessors=true +DefaultValueGetters=true diff --git a/autotests/kconfig_compiler/test1.cpp.ref b/autotests/kconfig_compiler/test1.cpp.ref new file mode 100644 index 0000000..3e5fd70 --- /dev/null +++ b/autotests/kconfig_compiler/test1.cpp.ref @@ -0,0 +1,73 @@ +// This file is generated by kconfig_compiler_kf6 from test1.kcfg. +// All changes you do to this file will be lost. + +#include "test1.h" + +Test1::Test1( const QString & transport, const QString & folder, QObject *parent ) + : KConfigSkeleton( QStringLiteral( "examplerc" ) ) + , mParamtransport(transport) + , mParamfolder(folder) +{ + setParent(parent); + setCurrentGroup( QStringLiteral( "General-%1" ).arg( mParamfolder ) ); + + KConfigSkeleton::ItemBool *itemOneOption; + itemOneOption = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "OneOption" ), mOneOption, true ); + addItem( itemOneOption, QStringLiteral( "OneOption" ) ); + KConfigSkeleton::ItemInt *itemAnotherOption; + itemAnotherOption = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "Another Option" ), mAnotherOption, 5 ); + addItem( itemAnotherOption, QStringLiteral( "AnotherOption" ) ); + QList valuesListOption; + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("One"); + valuesListOption.append( choice ); + } + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("Two"); + valuesListOption.append( choice ); + } + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("Three"); + valuesListOption.append( choice ); + } + KConfigSkeleton::ItemEnum *itemListOption; + itemListOption = new KConfigSkeleton::ItemEnum( currentGroup(), QStringLiteral( "ListOption" ), mListOption, valuesListOption, EnumListOption::One ); + addItem( itemListOption, QStringLiteral( "ListOption" ) ); + + setCurrentGroup( QStringLiteral( "MyOptions" ) ); + + KConfigSkeleton::ItemString *itemMyString; + itemMyString = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "MyString" ), mMyString, QStringLiteral( "Default String" ) ); + addItem( itemMyString, QStringLiteral( "MyString" ) ); + KConfigSkeleton::ItemPath *itemMyPath; + itemMyPath = new KConfigSkeleton::ItemPath( currentGroup(), QStringLiteral( "MyPath" ), mMyPath, QDir::homePath()+QString::fromLatin1(".hidden_file") ); + addItem( itemMyPath, QStringLiteral( "MyPath" ) ); + KConfigSkeleton::ItemInt *itemAnotherOption2; + itemAnotherOption2 = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "Another Option" ), mAnotherOption2, 10 ); + addItem( itemAnotherOption2, QStringLiteral( "AnotherOption2" ) ); + QStringList defaultMyStringList; + defaultMyStringList.append( QString::fromUtf8( "up" ) ); + defaultMyStringList.append( QString::fromUtf8( "down" ) ); + + KConfigSkeleton::ItemStringList *itemMyStringList; + itemMyStringList = new KConfigSkeleton::ItemStringList( currentGroup(), QStringLiteral( "MyStringList" ), mMyStringList, defaultMyStringList ); + addItem( itemMyStringList, QStringLiteral( "MyStringList" ) ); + QStringList defaultMyStringListHidden; + defaultMyStringListHidden.append( QString::fromUtf8( "up" ) ); + defaultMyStringListHidden.append( QString::fromUtf8( "down" ) ); + + KConfigSkeleton::ItemStringList *itemMyStringListHidden; + itemMyStringListHidden = new KConfigSkeleton::ItemStringList( currentGroup(), QStringLiteral( "MyStringListHidden" ), mMyStringListHidden, defaultMyStringListHidden ); + addItem( itemMyStringListHidden, QStringLiteral( "MyStringListHidden" ) ); + KConfigSkeleton::ItemInt *itemMyNumber; + itemMyNumber = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "List-%1-%2" ).arg( mParamtransport, mParamfolder ), mMyNumber, 1 ); + addItem( itemMyNumber, QStringLiteral( "MyNumber" ) ); +} + +Test1::~Test1() +{ +} + diff --git a/autotests/kconfig_compiler/test1.h.ref b/autotests/kconfig_compiler/test1.h.ref new file mode 100644 index 0000000..e5fc17e --- /dev/null +++ b/autotests/kconfig_compiler/test1.h.ref @@ -0,0 +1,270 @@ +// This file is generated by kconfig_compiler_kf6 from test1.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST1_H +#define TEST1_H + +#include +#include +#include + +#include + +class Test1 : public KConfigSkeleton +{ + public: + class EnumListOption + { + public: + enum type { One, Two, Three, COUNT }; + }; + + Test1( const QString & transport, const QString & folder, QObject *parent = nullptr ); + ~Test1() override; + + /** + Set One option + */ + void setOneOption( bool v ) + { + if (!isOneOptionImmutable()) + mOneOption = v; + } + + /** + Get One option + */ + bool oneOption() const + { + return mOneOption; + } + + /** + Is One option Immutable + */ + bool isOneOptionImmutable() const + { + return isImmutable( QStringLiteral( "OneOption" ) ); + } + + /** + Set Another option + */ + void setAnotherOption( int v ) + { + if (!isAnotherOptionImmutable()) + mAnotherOption = v; + } + + /** + Get Another option + */ + int anotherOption() const + { + return mAnotherOption; + } + + /** + Is Another option Immutable + */ + bool isAnotherOptionImmutable() const + { + return isImmutable( QStringLiteral( "AnotherOption" ) ); + } + + /** + Set This is some funky option + */ + void setListOption( int v ) + { + if (!isListOptionImmutable()) + mListOption = v; + } + + /** + Get This is some funky option + */ + int listOption() const + { + return mListOption; + } + + /** + Is This is some funky option Immutable + */ + bool isListOptionImmutable() const + { + return isImmutable( QStringLiteral( "ListOption" ) ); + } + + /** + Set This is a string + */ + void setMyString( const QString & v ) + { + if (!isMyStringImmutable()) + mMyString = v; + } + + /** + Get This is a string + */ + QString myString() const + { + return mMyString; + } + + /** + Is This is a string Immutable + */ + bool isMyStringImmutable() const + { + return isImmutable( QStringLiteral( "MyString" ) ); + } + + /** + Set This is a path + */ + void setMyPath( const QString & v ) + { + if (!isMyPathImmutable()) + mMyPath = v; + } + + /** + Get This is a path + */ + QString myPath() const + { + return mMyPath; + } + + /** + Is This is a path Immutable + */ + bool isMyPathImmutable() const + { + return isImmutable( QStringLiteral( "MyPath" ) ); + } + + /** + Set Another option + */ + void setAnotherOption2( int v ) + { + if (!isAnotherOption2Immutable()) + mAnotherOption2 = v; + } + + /** + Get Another option + */ + int anotherOption2() const + { + return mAnotherOption2; + } + + /** + Is Another option Immutable + */ + bool isAnotherOption2Immutable() const + { + return isImmutable( QStringLiteral( "AnotherOption2" ) ); + } + + /** + Set MyStringList + */ + void setMyStringList( const QStringList & v ) + { + if (!isMyStringListImmutable()) + mMyStringList = v; + } + + /** + Get MyStringList + */ + QStringList myStringList() const + { + return mMyStringList; + } + + /** + Is MyStringList Immutable + */ + bool isMyStringListImmutable() const + { + return isImmutable( QStringLiteral( "MyStringList" ) ); + } + + /** + Set MyStringListHidden + */ + void setMyStringListHidden( const QStringList & v ) + { + if (!isMyStringListHiddenImmutable()) + mMyStringListHidden = v; + } + + /** + Get MyStringListHidden + */ + QStringList myStringListHidden() const + { + return mMyStringListHidden; + } + + /** + Is MyStringListHidden Immutable + */ + bool isMyStringListHiddenImmutable() const + { + return isImmutable( QStringLiteral( "MyStringListHidden" ) ); + } + + /** + Set List Number + */ + void setMyNumber( int v ) + { + if (!isMyNumberImmutable()) + mMyNumber = v; + } + + /** + Get List Number + */ + int myNumber() const + { + return mMyNumber; + } + + /** + Is List Number Immutable + */ + bool isMyNumberImmutable() const + { + return isImmutable( QStringLiteral( "MyNumber" ) ); + } + + protected: + QString mParamtransport; + QString mParamfolder; + + // General-$(folder) + bool mOneOption; + int mAnotherOption; + int mListOption; + + // MyOptions + QString mMyString; + QString mMyPath; + int mAnotherOption2; + QStringList mMyStringList; + QStringList mMyStringListHidden; + int mMyNumber; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test1.kcfg b/autotests/kconfig_compiler/test1.kcfg new file mode 100644 index 0000000..819bdac --- /dev/null +++ b/autotests/kconfig_compiler/test1.kcfg @@ -0,0 +1,55 @@ + + + qdir.h + + + + + + + + true + + + + 5 + + + + And this is a longer description of this option. Just wondering, how will the translations of those be handled? + + + + + + One + + + + + + Default String + + + + QDir::homePath()+QString::fromLatin1(".hidden_file") + + + + 10 + + + up,down + + + + + 1 + + + diff --git a/autotests/kconfig_compiler/test1.kcfgc b/autotests/kconfig_compiler/test1.kcfgc new file mode 100644 index 0000000..85e7217 --- /dev/null +++ b/autotests/kconfig_compiler/test1.kcfgc @@ -0,0 +1,20 @@ +# Code generation options for kconfig_compiler_kf6 +ClassName=Test1 +File=test1.kcfg +ParentInConstructor=true +# +# Singleton=false +# +# Inherits=KConfigSkeleton +# +# IncludeFiles=libkdepim/kpimprefs.h +# +# MemberVariables=public +# +### The following line includes the file exampleprefs_base_addon.h +### It can be used to add extra functions and variables to the +### class. +# CustomAdditions=true +# +### Provide setFooBar(int) style functions +Mutators=true diff --git a/autotests/kconfig_compiler/test10.cpp.ref b/autotests/kconfig_compiler/test10.cpp.ref new file mode 100644 index 0000000..1587de6 --- /dev/null +++ b/autotests/kconfig_compiler/test10.cpp.ref @@ -0,0 +1,50 @@ +// This file is generated by kconfig_compiler_kf6 from test10.kcfg. +// All changes you do to this file will be lost. + +#include "test10.h" + +#include +#include + +class Test10Helper +{ + public: + Test10Helper() : q(nullptr) {} + ~Test10Helper() { delete q; q = nullptr; } + Test10Helper(const Test10Helper&) = delete; + Test10Helper& operator=(const Test10Helper&) = delete; + Test10 *q; +}; +Q_GLOBAL_STATIC(Test10Helper, s_globalTest10) +Test10 *Test10::self() +{ + if (!s_globalTest10()->q) { + new Test10; + s_globalTest10()->q->read(); + } + + return s_globalTest10()->q; +} + +Test10::Test10( ) + : KConfigSkeleton( QStringLiteral( "test10rc" ) ) +{ + Q_ASSERT(!s_globalTest10()->q); + s_globalTest10()->q = this; + setCurrentGroup( QStringLiteral( "Foo" ) ); + + KConfigSkeleton::ItemUrl *itemFooBar; + itemFooBar = new KConfigSkeleton::ItemUrl( currentGroup(), QStringLiteral( "foo bar" ), mFooBar ); + addItem( itemFooBar, QStringLiteral( "FooBar" ) ); + KConfigSkeleton::ItemUrlList *itemBarFoo; + itemBarFoo = new KConfigSkeleton::ItemUrlList( currentGroup(), QStringLiteral( "bar foo" ), mBarFoo ); + addItem( itemBarFoo, QStringLiteral( "BarFoo" ) ); +} + +Test10::~Test10() +{ + if (s_globalTest10.exists() && !s_globalTest10.isDestroyed()) { + s_globalTest10()->q = nullptr; + } +} + diff --git a/autotests/kconfig_compiler/test10.h.ref b/autotests/kconfig_compiler/test10.h.ref new file mode 100644 index 0000000..1121497 --- /dev/null +++ b/autotests/kconfig_compiler/test10.h.ref @@ -0,0 +1,66 @@ +// This file is generated by kconfig_compiler_kf6 from test10.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST10_H +#define TEST10_H + +#include +#include +#include + +class Test10 : public KConfigSkeleton +{ + public: + + static Test10 *self(); + ~Test10() override; + + /** + Get foo bar + */ + static + QUrl fooBar() + { + return self()->mFooBar; + } + + /** + Is foo bar Immutable + */ + static + bool isFooBarImmutable() + { + return self()->isImmutable( QStringLiteral( "FooBar" ) ); + } + + /** + Get bar foo + */ + static + QList barFoo() + { + return self()->mBarFoo; + } + + /** + Is bar foo Immutable + */ + static + bool isBarFooImmutable() + { + return self()->isImmutable( QStringLiteral( "BarFoo" ) ); + } + + protected: + Test10(); + friend class Test10Helper; + + + // Foo + QUrl mFooBar; + QList mBarFoo; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test10.kcfg b/autotests/kconfig_compiler/test10.kcfg new file mode 100644 index 0000000..d7be2c3 --- /dev/null +++ b/autotests/kconfig_compiler/test10.kcfg @@ -0,0 +1,13 @@ + + + + + + + + + + diff --git a/autotests/kconfig_compiler/test10.kcfgc b/autotests/kconfig_compiler/test10.kcfgc new file mode 100644 index 0000000..4b2b318 --- /dev/null +++ b/autotests/kconfig_compiler/test10.kcfgc @@ -0,0 +1,4 @@ +# Code generation options for kconfig_compiler_kf6 +File=test10.kcfg +ClassName=Test10 +Singleton=true diff --git a/autotests/kconfig_compiler/test10main.cpp b/autotests/kconfig_compiler/test10main.cpp new file mode 100644 index 0000000..b7d35c4 --- /dev/null +++ b/autotests/kconfig_compiler/test10main.cpp @@ -0,0 +1,17 @@ +/* + SPDX-FileCopyrightText: 2007 Andreas Pakulat + + SPDX-License-Identifier: MIT +*/ + +#include "test10.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + Test10 *t = Test10::self(); + delete t; + return 0; +} diff --git a/autotests/kconfig_compiler/test11.cpp.ref b/autotests/kconfig_compiler/test11.cpp.ref new file mode 100644 index 0000000..a5c3256 --- /dev/null +++ b/autotests/kconfig_compiler/test11.cpp.ref @@ -0,0 +1,279 @@ +// This file is generated by kconfig_compiler_kf6 from test11.kcfg. +// All changes you do to this file will be lost. + +#include "test11.h" + +Test11::Test11( QObject *parent ) + : MyPrefs( QStringLiteral( "korganizerrc" ) ) +{ + setParent(parent); + setCurrentGroup( QStringLiteral( "General" ) ); + + mAutoSaveItem = new MyPrefs::ItemBool( currentGroup(), QStringLiteral( "Auto Save" ), mAutoSave, false ); + mAutoSaveItem->setLabel( QCoreApplication::translate("Test11", "Enable automatic saving of calendar") ); + mAutoSaveItem->setWhatsThis( QCoreApplication::translate("Test11", "WhatsThis text for AutoSave option") ); + addItem( mAutoSaveItem, QStringLiteral( "AutoSave" ) ); + mAutoSaveIntervalItem = new MyPrefs::ItemInt( currentGroup(), QStringLiteral( "Auto Save Interval" ), mAutoSaveInterval, 10 ); + mAutoSaveIntervalItem->setLabel( QCoreApplication::translate("Test11", "Auto Save Interval") ); + addItem( mAutoSaveIntervalItem, QStringLiteral( "AutoSaveInterval" ) ); + mConfirmItem = new MyPrefs::ItemBool( currentGroup(), QStringLiteral( "Confirm Deletes" ), mConfirm, true ); + mConfirmItem->setLabel( QCoreApplication::translate("Test11", "Confirm deletes") ); + addItem( mConfirmItem, QStringLiteral( "Confirm" ) ); + mArchiveFileItem = new MyPrefs::ItemString( currentGroup(), QStringLiteral( "Archive File" ), mArchiveFile ); + mArchiveFileItem->setLabel( QCoreApplication::translate("Test11", "Archive File") ); + addItem( mArchiveFileItem, QStringLiteral( "ArchiveFile" ) ); + QList valuesDestination; + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("standardDestination"); + valuesDestination.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("askDestination"); + valuesDestination.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("argl1"); + choice.label = QCoreApplication::translate("Test11", "Argl1 Label"); + valuesDestination.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("argl2"); + choice.whatsThis = QCoreApplication::translate("Test11", "Argl2 Whatsthis"); + valuesDestination.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("argl3"); + choice.label = QCoreApplication::translate("Test11", "Argl3 Label"); + choice.whatsThis = QCoreApplication::translate("Test11", "Argl3 Whatsthis"); + valuesDestination.append( choice ); + } + mDestinationItem = new MyPrefs::ItemEnum( currentGroup(), QStringLiteral( "Destination" ), mDestination, valuesDestination, EnumDestination::standardDestination ); + mDestinationItem->setLabel( QCoreApplication::translate("Test11", "New Events/Todos Should") ); + addItem( mDestinationItem, QStringLiteral( "Destination" ) ); + + setCurrentGroup( QStringLiteral( "Views" ) ); + + mHourSizeItem = new MyPrefs::ItemInt( currentGroup(), QStringLiteral( "Hour Size" ), mHourSize, 10 ); + mHourSizeItem->setLabel( QCoreApplication::translate("Test11", "Hour Size") ); + addItem( mHourSizeItem, QStringLiteral( "HourSize" ) ); + mSelectionStartsEditorItem = new MyPrefs::ItemBool( currentGroup(), QStringLiteral( "SelectionStartsEditor" ), mSelectionStartsEditor, false ); + mSelectionStartsEditorItem->setLabel( QCoreApplication::translate("Test11", "Time range selection in agenda view starts event editor") ); + addItem( mSelectionStartsEditorItem, QStringLiteral( "SelectionStartsEditor" ) ); + + setCurrentGroup( QStringLiteral( "KOrganizer Plugins" ) ); + + QStringList defaultSelectedPlugins; + defaultSelectedPlugins.append( QString::fromUtf8( "holidays" ) ); + defaultSelectedPlugins.append( QString::fromUtf8( "webexport" ) ); + + mSelectedPluginsItem = new MyPrefs::ItemStringList( currentGroup(), QStringLiteral( "SelectedPlugins" ), mSelectedPlugins, defaultSelectedPlugins ); + mSelectedPluginsItem->setLabel( QCoreApplication::translate("Test11", "SelectedPlugins") ); + addItem( mSelectedPluginsItem, QStringLiteral( "SelectedPlugins" ) ); + + setCurrentGroup( QStringLiteral( "Colors" ) ); + + mHighlightColorItem = new MyPrefs::ItemColor( currentGroup(), QStringLiteral( "Highlight Color" ), mHighlightColor, QColor( 100, 100, 255 ) ); + mHighlightColorItem->setLabel( QCoreApplication::translate("Test11", "Highlight color") ); + addItem( mHighlightColorItem, QStringLiteral( "HighlightColor" ) ); + mAgendaBgColorItem = new MyPrefs::ItemColor( currentGroup(), QStringLiteral( "Agenda Background Color" ), mAgendaBgColor, QColor( 255, 255, 255 ) ); + mAgendaBgColorItem->setLabel( QCoreApplication::translate("Test11", "Agenda view background color") ); + addItem( mAgendaBgColorItem, QStringLiteral( "AgendaBgColor" ) ); + + setCurrentGroup( QStringLiteral( "Fonts" ) ); + + mTimeBarFontItem = new MyPrefs::ItemFont( currentGroup(), QStringLiteral( "TimeBar Font" ), mTimeBarFont ); + mTimeBarFontItem->setLabel( QCoreApplication::translate("Test11", "Time bar") ); + addItem( mTimeBarFontItem, QStringLiteral( "TimeBarFont" ) ); + + setCurrentGroup( QStringLiteral( "Email" ) ); + + QList valuesEmailClient; + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("sendmail"); + choice.label = /*: @option */ QCoreApplication::translate("Test11", "Sendmail"); + valuesEmailClient.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("kmail"); + choice.label = /*: @option */ QCoreApplication::translate("Test11", "KMail"); + valuesEmailClient.append( choice ); + } + mEmailClientItem = new MyPrefs::ItemEnum( currentGroup(), QStringLiteral( "EmailClient" ), mEmailClient, valuesEmailClient, kmail ); + mEmailClientItem->setLabel( /*: @label */ QCoreApplication::translate("Test11", "Email client") ); + mEmailClientItem->setWhatsThis( /*: @info:whatsthis */ QCoreApplication::translate("Test11", "How to send email when an email alarm is triggered.KMail: The email is sent automatically via KMail. KMail is started first if necessary.Sendmail: The email is sent automatically. This option will only work if your system is configured to use sendmail or a sendmail compatible mail transport agent.") ); + addItem( mEmailClientItem, QStringLiteral( "EmailClient" ) ); + QList valuesDefaultReminderUnits; + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("Minutes"); + valuesDefaultReminderUnits.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("HoursMinutes"); + choice.label = /*: @option */ QCoreApplication::translate("Test11", "Hours/Minutes"); + valuesDefaultReminderUnits.append( choice ); + } + mDefaultReminderUnitsItem = new MyPrefs::ItemEnum( currentGroup(), QStringLiteral( "RemindUnits" ), mDefaultReminderUnits, valuesDefaultReminderUnits, TimePeriod::HoursMinutes ); + mDefaultReminderUnitsItem->setLabel( /*: @label */ QCoreApplication::translate("Test11", "Reminder units") ); + mDefaultReminderUnitsItem->setToolTip( /*: @info:tooltip */ QCoreApplication::translate("Test11", "Default reminder time units in the alarm edit dialog.") ); + mDefaultReminderUnitsItem->setWhatsThis( /*: @info:whatsthis */ QCoreApplication::translate("Test11", "Default reminder time units in the alarm edit dialog.") ); + addItem( mDefaultReminderUnitsItem, QStringLiteral( "DefaultReminderUnits" ) ); + + setCurrentGroup( QStringLiteral( "QueueRates" ) ); + + QList< QList > defaultRate; + QList< int > defaultRateInit; + + defaultRateInit.append( 15 ); + defaultRateInit.append( 60 ); + defaultRateInit.append( 0 ); + defaultRate.append( defaultRateInit ); + + defaultRateInit.clear(); + defaultRateInit.append( 40 ); + defaultRateInit.append( 60 ); + defaultRateInit.append( 0 ); + defaultRate.append( defaultRateInit ); + + defaultRateInit.clear(); + defaultRateInit.append( 1 ); + defaultRateInit.append( 1 ); + defaultRateInit.append( 0 ); + defaultRate.append( defaultRateInit ); + + QList defaultqueueRate; + + mQueueRateItem[0] = new MyPrefs::ItemIntList( currentGroup(), QStringLiteral( "EmptyingRate 0" ), mQueueRate[0], defaultRate[0] ); + mQueueRateItem[0]->setLabel( QCoreApplication::translate("Test11", "EmptyingRate queueRate$(QueueIndex)") ); + addItem( mQueueRateItem[0], QStringLiteral( "queueRate0" ) ); + mQueueRateItem[1] = new MyPrefs::ItemIntList( currentGroup(), QStringLiteral( "EmptyingRate 1" ), mQueueRate[1], defaultqueueRate ); + mQueueRateItem[1]->setLabel( QCoreApplication::translate("Test11", "EmptyingRate queueRate$(QueueIndex)") ); + addItem( mQueueRateItem[1], QStringLiteral( "queueRate1" ) ); + mQueueRateItem[2] = new MyPrefs::ItemIntList( currentGroup(), QStringLiteral( "EmptyingRate 2" ), mQueueRate[2], defaultRate[2] ); + mQueueRateItem[2]->setLabel( QCoreApplication::translate("Test11", "EmptyingRate queueRate$(QueueIndex)") ); + addItem( mQueueRateItem[2], QStringLiteral( "queueRate2" ) ); + mShowQueueTunerItem = new MyPrefs::ItemBool( currentGroup(), QStringLiteral( "ShowQueueTuner" ), mShowQueueTuner, false ); + mShowQueueTunerItem->setLabel( QCoreApplication::translate("Test11", "ShowQueueTuner") ); + addItem( mShowQueueTunerItem, QStringLiteral( "ShowQueueTuner" ) ); +} + +bool Test11::defaultAutoSaveValue_helper() const +{ + + return false; +} + +int Test11::defaultAutoSaveIntervalValue_helper() const +{ + + return 10; +} + +bool Test11::defaultConfirmValue_helper() const +{ + + return true; +} + +int Test11::defaultDestinationValue_helper() const +{ + + return EnumDestination::standardDestination; +} + +int Test11::defaultHourSizeValue_helper() const +{ + + return 10; +} + +bool Test11::defaultSelectionStartsEditorValue_helper() const +{ + + return false; +} + +QStringList Test11::defaultSelectedPluginsValue_helper() const +{ + QStringList defaultSelectedPlugins; + defaultSelectedPlugins.append( QString::fromUtf8( "holidays" ) ); + defaultSelectedPlugins.append( QString::fromUtf8( "webexport" ) ); + + return defaultSelectedPlugins; +} + +QColor Test11::defaultHighlightColorValue_helper() const +{ + + return QColor( 100, 100, 255 ); +} + +QColor Test11::defaultAgendaBgColorValue_helper() const +{ + + return QColor( 255, 255, 255 ); +} + +int Test11::defaultEmailClientValue_helper() const +{ + + return kmail; +} + +int Test11::defaultDefaultReminderUnitsValue_helper() const +{ + + return TimePeriod::HoursMinutes; +} + +QList Test11::defaultQueueRateValue_helper( int i ) const +{ + QList< QList > defaultRate; + QList< int > defaultRateInit; + + defaultRateInit.append( 15 ); + defaultRateInit.append( 60 ); + defaultRateInit.append( 0 ); + defaultRate.append( defaultRateInit ); + + defaultRateInit.clear(); + defaultRateInit.append( 40 ); + defaultRateInit.append( 60 ); + defaultRateInit.append( 0 ); + defaultRate.append( defaultRateInit ); + + defaultRateInit.clear(); + defaultRateInit.append( 1 ); + defaultRateInit.append( 1 ); + defaultRateInit.append( 0 ); + defaultRate.append( defaultRateInit ); + + QList defaultqueueRate; + + switch (i) { + case 0: return defaultRate[0]; + case 2: return defaultRate[2]; + default: + return defaultqueueRate; + } + +} + +bool Test11::defaultShowQueueTunerValue_helper() const +{ + + return false; +} + +Test11::~Test11() +{ +} + diff --git a/autotests/kconfig_compiler/test11.h.ref b/autotests/kconfig_compiler/test11.h.ref new file mode 100644 index 0000000..debd957 --- /dev/null +++ b/autotests/kconfig_compiler/test11.h.ref @@ -0,0 +1,693 @@ +// This file is generated by kconfig_compiler_kf6 from test11.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST11_H +#define TEST11_H + +#include + +#include +#include +#include +#include + +#include "test11_types.h" + +class Test11 : public MyPrefs +{ + public: + class EnumDestination + { + public: + enum type { standardDestination, askDestination, argl1, argl2, argl3, COUNT }; + }; + enum MailClient { sendmail, kmail }; + + Test11( QObject *parent = nullptr ); + ~Test11() override; + + /** + Set Enable automatic saving of calendar + */ + void setAutoSave( bool v ) + { + if (!isAutoSaveImmutable()) + mAutoSave = v; + } + + /** + Get Enable automatic saving of calendar + */ + bool autoSave() const + { + return mAutoSave; + } + + /** + Is Enable automatic saving of calendar Immutable + */ + bool isAutoSaveImmutable() const + { + return isImmutable( QStringLiteral( "AutoSave" ) ); + } + + /** + Get Enable automatic saving of calendar default value + */ + bool defaultAutoSaveValue() const + { + return defaultAutoSaveValue_helper(); + } + + /** + Get Item object corresponding to AutoSave() + */ + ItemBool *autoSaveItem() + { + return mAutoSaveItem; + } + + /** + Set Auto Save Interval + */ + void setAutoSaveInterval( int v ) + { + if (!isAutoSaveIntervalImmutable()) + mAutoSaveInterval = v; + } + + /** + Get Auto Save Interval + */ + int autoSaveInterval() const + { + return mAutoSaveInterval; + } + + /** + Is Auto Save Interval Immutable + */ + bool isAutoSaveIntervalImmutable() const + { + return isImmutable( QStringLiteral( "AutoSaveInterval" ) ); + } + + /** + Get Auto Save Interval default value + */ + int defaultAutoSaveIntervalValue() const + { + return defaultAutoSaveIntervalValue_helper(); + } + + /** + Get Item object corresponding to AutoSaveInterval() + */ + ItemInt *autoSaveIntervalItem() + { + return mAutoSaveIntervalItem; + } + + /** + Set Confirm deletes + */ + void setConfirm( bool v ) + { + if (!isConfirmImmutable()) + mConfirm = v; + } + + /** + Get Confirm deletes + */ + bool confirm() const + { + return mConfirm; + } + + /** + Is Confirm deletes Immutable + */ + bool isConfirmImmutable() const + { + return isImmutable( QStringLiteral( "Confirm" ) ); + } + + /** + Get Confirm deletes default value + */ + bool defaultConfirmValue() const + { + return defaultConfirmValue_helper(); + } + + /** + Get Item object corresponding to Confirm() + */ + ItemBool *confirmItem() + { + return mConfirmItem; + } + + /** + Set Archive File + */ + void setArchiveFile( const QString & v ) + { + if (!isArchiveFileImmutable()) + mArchiveFile = v; + } + + /** + Get Archive File + */ + QString archiveFile() const + { + return mArchiveFile; + } + + /** + Is Archive File Immutable + */ + bool isArchiveFileImmutable() const + { + return isImmutable( QStringLiteral( "ArchiveFile" ) ); + } + + /** + Get Item object corresponding to ArchiveFile() + */ + ItemString *archiveFileItem() + { + return mArchiveFileItem; + } + + /** + Set New Events/Todos Should + */ + void setDestination( EnumDestination::type v ) + { + if (!isDestinationImmutable()) + mDestination = v; + } + + /** + Get New Events/Todos Should + */ + EnumDestination::type destination() const + { + return static_cast(mDestination); + } + + /** + Is New Events/Todos Should Immutable + */ + bool isDestinationImmutable() const + { + return isImmutable( QStringLiteral( "Destination" ) ); + } + + /** + Get New Events/Todos Should default value + */ + EnumDestination::type defaultDestinationValue() const + { + return static_cast(defaultDestinationValue_helper()); + } + + /** + Get Item object corresponding to Destination() + */ + ItemEnum *destinationItem() + { + return mDestinationItem; + } + + /** + Set Hour Size + */ + void setHourSize( int v ) + { + if (!isHourSizeImmutable()) + mHourSize = v; + } + + /** + Get Hour Size + */ + int hourSize() const + { + return mHourSize; + } + + /** + Is Hour Size Immutable + */ + bool isHourSizeImmutable() const + { + return isImmutable( QStringLiteral( "HourSize" ) ); + } + + /** + Get Hour Size default value + */ + int defaultHourSizeValue() const + { + return defaultHourSizeValue_helper(); + } + + /** + Get Item object corresponding to HourSize() + */ + ItemInt *hourSizeItem() + { + return mHourSizeItem; + } + + /** + Set Time range selection in agenda view starts event editor + */ + void setSelectionStartsEditor( bool v ) + { + if (!isSelectionStartsEditorImmutable()) + mSelectionStartsEditor = v; + } + + /** + Get Time range selection in agenda view starts event editor + */ + bool selectionStartsEditor() const + { + return mSelectionStartsEditor; + } + + /** + Is Time range selection in agenda view starts event editor Immutable + */ + bool isSelectionStartsEditorImmutable() const + { + return isImmutable( QStringLiteral( "SelectionStartsEditor" ) ); + } + + /** + Get Time range selection in agenda view starts event editor default value + */ + bool defaultSelectionStartsEditorValue() const + { + return defaultSelectionStartsEditorValue_helper(); + } + + /** + Get Item object corresponding to SelectionStartsEditor() + */ + ItemBool *selectionStartsEditorItem() + { + return mSelectionStartsEditorItem; + } + + /** + Set SelectedPlugins + */ + void setSelectedPlugins( const QStringList & v ) + { + if (!isSelectedPluginsImmutable()) + mSelectedPlugins = v; + } + + /** + Get SelectedPlugins + */ + QStringList selectedPlugins() const + { + return mSelectedPlugins; + } + + /** + Is SelectedPlugins Immutable + */ + bool isSelectedPluginsImmutable() const + { + return isImmutable( QStringLiteral( "SelectedPlugins" ) ); + } + + /** + Get SelectedPlugins default value + */ + QStringList defaultSelectedPluginsValue() const + { + return defaultSelectedPluginsValue_helper(); + } + + /** + Get Item object corresponding to SelectedPlugins() + */ + ItemStringList *selectedPluginsItem() + { + return mSelectedPluginsItem; + } + + /** + Set Highlight color + */ + void setHighlightColor( const QColor & v ) + { + if (!isHighlightColorImmutable()) + mHighlightColor = v; + } + + /** + Get Highlight color + */ + QColor highlightColor() const + { + return mHighlightColor; + } + + /** + Is Highlight color Immutable + */ + bool isHighlightColorImmutable() const + { + return isImmutable( QStringLiteral( "HighlightColor" ) ); + } + + /** + Get Highlight color default value + */ + QColor defaultHighlightColorValue() const + { + return defaultHighlightColorValue_helper(); + } + + /** + Get Item object corresponding to HighlightColor() + */ + ItemColor *highlightColorItem() + { + return mHighlightColorItem; + } + + /** + Set Agenda view background color + */ + void setAgendaBgColor( const QColor & v ) + { + if (!isAgendaBgColorImmutable()) + mAgendaBgColor = v; + } + + /** + Get Agenda view background color + */ + QColor agendaBgColor() const + { + return mAgendaBgColor; + } + + /** + Is Agenda view background color Immutable + */ + bool isAgendaBgColorImmutable() const + { + return isImmutable( QStringLiteral( "AgendaBgColor" ) ); + } + + /** + Get Agenda view background color default value + */ + QColor defaultAgendaBgColorValue() const + { + return defaultAgendaBgColorValue_helper(); + } + + /** + Get Item object corresponding to AgendaBgColor() + */ + ItemColor *agendaBgColorItem() + { + return mAgendaBgColorItem; + } + + /** + Set Time bar + */ + void setTimeBarFont( const QFont & v ) + { + if (!isTimeBarFontImmutable()) + mTimeBarFont = v; + } + + /** + Get Time bar + */ + QFont timeBarFont() const + { + return mTimeBarFont; + } + + /** + Is Time bar Immutable + */ + bool isTimeBarFontImmutable() const + { + return isImmutable( QStringLiteral( "TimeBarFont" ) ); + } + + /** + Get Item object corresponding to TimeBarFont() + */ + ItemFont *timeBarFontItem() + { + return mTimeBarFontItem; + } + + /** + Set Email client + */ + void setEmailClient( MailClient v ) + { + if (!isEmailClientImmutable()) + mEmailClient = v; + } + + /** + Get Email client + */ + MailClient emailClient() const + { + return static_cast(mEmailClient); + } + + /** + Is Email client Immutable + */ + bool isEmailClientImmutable() const + { + return isImmutable( QStringLiteral( "EmailClient" ) ); + } + + /** + Get Email client default value + */ + MailClient defaultEmailClientValue() const + { + return static_cast(defaultEmailClientValue_helper()); + } + + /** + Get Item object corresponding to EmailClient() + */ + ItemEnum *emailClientItem() + { + return mEmailClientItem; + } + + /** + Set Reminder units + */ + void setDefaultReminderUnits( TimePeriod::Units v ) + { + if (!isDefaultReminderUnitsImmutable()) + mDefaultReminderUnits = v; + } + + /** + Get Reminder units + */ + TimePeriod::Units defaultReminderUnits() const + { + return static_cast(mDefaultReminderUnits); + } + + /** + Is Reminder units Immutable + */ + bool isDefaultReminderUnitsImmutable() const + { + return isImmutable( QStringLiteral( "DefaultReminderUnits" ) ); + } + + /** + Get Reminder units default value + */ + TimePeriod::Units defaultDefaultReminderUnitsValue() const + { + return static_cast(defaultDefaultReminderUnitsValue_helper()); + } + + /** + Get Item object corresponding to DefaultReminderUnits() + */ + ItemEnum *defaultReminderUnitsItem() + { + return mDefaultReminderUnitsItem; + } + + /** + Set EmptyingRate $(QueueIndex) + */ + void setQueueRate( int i, const QList & v ) + { + if (!isQueueRateImmutable( i )) + mQueueRate[i] = v; + } + + /** + Get EmptyingRate $(QueueIndex) + */ + QList queueRate( int i ) const + { + return mQueueRate[i]; + } + + /** + Is EmptyingRate $(QueueIndex) Immutable + */ + bool isQueueRateImmutable( int i ) const + { + return isImmutable( QStringLiteral( "queueRate%1" ).arg( i ) ); + } + + /** + Get EmptyingRate $(QueueIndex) default value + */ + QList defaultQueueRateValue( int i ) const + { + return defaultQueueRateValue_helper( i ); + } + + /** + Get Item object corresponding to queueRate() + */ + ItemIntList *queueRateItem( int i ) + { + return mQueueRateItem[i]; + } + + /** + Set ShowQueueTuner + */ + void setShowQueueTuner( bool v ) + { + if (!isShowQueueTunerImmutable()) + mShowQueueTuner = v; + } + + /** + Get ShowQueueTuner + */ + bool showQueueTuner() const + { + return mShowQueueTuner; + } + + /** + Is ShowQueueTuner Immutable + */ + bool isShowQueueTunerImmutable() const + { + return isImmutable( QStringLiteral( "ShowQueueTuner" ) ); + } + + /** + Get ShowQueueTuner default value + */ + bool defaultShowQueueTunerValue() const + { + return defaultShowQueueTunerValue_helper(); + } + + /** + Get Item object corresponding to ShowQueueTuner() + */ + ItemBool *showQueueTunerItem() + { + return mShowQueueTunerItem; + } + + protected: + public: + + // General + bool mAutoSave; + bool defaultAutoSaveValue_helper() const; + int mAutoSaveInterval; + int defaultAutoSaveIntervalValue_helper() const; + bool mConfirm; + bool defaultConfirmValue_helper() const; + QString mArchiveFile; + QString defaultArchiveFileValue_helper() const; + int mDestination; + int defaultDestinationValue_helper() const; + + // Views + int mHourSize; + int defaultHourSizeValue_helper() const; + bool mSelectionStartsEditor; + bool defaultSelectionStartsEditorValue_helper() const; + + // KOrganizer Plugins + QStringList mSelectedPlugins; + QStringList defaultSelectedPluginsValue_helper() const; + + // Colors + QColor mHighlightColor; + QColor defaultHighlightColorValue_helper() const; + QColor mAgendaBgColor; + QColor defaultAgendaBgColorValue_helper() const; + + // Fonts + QFont mTimeBarFont; + QFont defaultTimeBarFontValue_helper() const; + + // Email + int mEmailClient; + int defaultEmailClientValue_helper() const; + int mDefaultReminderUnits; + int defaultDefaultReminderUnitsValue_helper() const; + + // QueueRates + QList mQueueRate[3]; + QList defaultQueueRateValue_helper( int i ) const; + bool mShowQueueTuner; + bool defaultShowQueueTunerValue_helper() const; + + private: + ItemBool *mAutoSaveItem; + ItemInt *mAutoSaveIntervalItem; + ItemBool *mConfirmItem; + ItemString *mArchiveFileItem; + ItemEnum *mDestinationItem; + ItemInt *mHourSizeItem; + ItemBool *mSelectionStartsEditorItem; + ItemStringList *mSelectedPluginsItem; + ItemColor *mHighlightColorItem; + ItemColor *mAgendaBgColorItem; + ItemFont *mTimeBarFontItem; + ItemEnum *mEmailClientItem; + ItemEnum *mDefaultReminderUnitsItem; + ItemIntList *mQueueRateItem[3]; + ItemBool *mShowQueueTunerItem; +}; + +#endif + diff --git a/autotests/kconfig_compiler/test11.kcfg b/autotests/kconfig_compiler/test11.kcfg new file mode 100644 index 0000000..5b9f3f9 --- /dev/null +++ b/autotests/kconfig_compiler/test11.kcfg @@ -0,0 +1,136 @@ + + + + "test11_types.h" + + + + + + + WhatsThis text for AutoSave option + false + + + 10 + + + + true + + + + + + + + + + + + + + + Argl2 Whatsthis + + + + Argl3 Whatsthis + + + standardDestination + + + + + + 10 + + + + false + + + + + + holidays,webexport + + + + + + + 100, 100, 255 + + + + 255, 255, 255 + + + + + + + + + + + + + <para>How to send email when an email alarm is triggered.<list><item>KMail: The email is sent automatically via <application>KMail</application>. <application>KMail</application> is started first if necessary.</item><item>Sendmail: The email is sent automatically. This option will only work if your system is configured to use <application>sendmail</application> or a sendmail compatible mail transport agent.</item></list></para> + + + + + kmail + + + + + Default reminder time units in the alarm edit dialog. + Default reminder time units in the alarm edit dialog. + + + + + HoursMinutes + + + + + + + QList< QList<int> > defaultRate; + QList< int > defaultRateInit; + + defaultRateInit.append( 15 ); + defaultRateInit.append( 60 ); + defaultRateInit.append( 0 ); + defaultRate.append( defaultRateInit ); + + defaultRateInit.clear(); + defaultRateInit.append( 40 ); + defaultRateInit.append( 60 ); + defaultRateInit.append( 0 ); + defaultRate.append( defaultRateInit ); + + defaultRateInit.clear(); + defaultRateInit.append( 1 ); + defaultRateInit.append( 1 ); + defaultRateInit.append( 0 ); + defaultRate.append( defaultRateInit ); + + + defaultRate[0] + defaultRate[2] + + + false + + + + diff --git a/autotests/kconfig_compiler/test11.kcfgc b/autotests/kconfig_compiler/test11.kcfgc new file mode 100644 index 0000000..f9c2adf --- /dev/null +++ b/autotests/kconfig_compiler/test11.kcfgc @@ -0,0 +1,14 @@ +# Code generation options for kconfig_compiler_kf6 +File=test11.kcfg +ClassName=Test11 +ParentInConstructor=true +Singleton=false +Mutators=true +Inherits=MyPrefs +IncludeFiles=myprefs.h +MemberVariables=public +GlobalEnums=false +ItemAccessors=true +SetUserTexts=true +UseEnumTypes=true +DefaultValueGetters=true diff --git a/autotests/kconfig_compiler/test11_types.h b/autotests/kconfig_compiler/test11_types.h new file mode 100644 index 0000000..553ae54 --- /dev/null +++ b/autotests/kconfig_compiler/test11_types.h @@ -0,0 +1,21 @@ +/* + SPDX-FileCopyrightText: 2009 Pino Toscano + + SPDX-License-Identifier: MIT +*/ + +#ifndef TEST11_TYPES_H +#define TEST11_TYPES_H + +class TimePeriod +{ +public: + enum Units { + Minutes, + HoursMinutes, + Days, + Weeks, + }; +}; + +#endif diff --git a/autotests/kconfig_compiler/test11a.cpp.ref b/autotests/kconfig_compiler/test11a.cpp.ref new file mode 100644 index 0000000..d663179 --- /dev/null +++ b/autotests/kconfig_compiler/test11a.cpp.ref @@ -0,0 +1,187 @@ +// This file is generated by kconfig_compiler_kf6 from test11a.kcfg. +// All changes you do to this file will be lost. + +#include "test11a.h" + +Test11a::Test11a( ) + : MyPrefs( QStringLiteral( "korganizerrc" ) ) +{ + setCurrentGroup( QStringLiteral( "General" ) ); + + mAutoSaveItem = new MyPrefs::ItemBool( currentGroup(), QStringLiteral( "Auto Save" ), mAutoSave, false ); + mAutoSaveItem->setLabel( QCoreApplication::translate("Test11a", "Enable automatic saving of calendar") ); + mAutoSaveItem->setWhatsThis( QCoreApplication::translate("Test11a", "WhatsThis text for AutoSave option") ); + addItem( mAutoSaveItem, QStringLiteral( "AutoSave" ) ); + mAutoSaveIntervalItem = new MyPrefs::ItemInt( currentGroup(), QStringLiteral( "Auto Save Interval" ), mAutoSaveInterval, 10 ); + mAutoSaveIntervalItem->setLabel( QCoreApplication::translate("Test11a", "Auto Save Interval") ); + addItem( mAutoSaveIntervalItem, QStringLiteral( "AutoSaveInterval" ) ); + mConfirmItem = new MyPrefs::ItemBool( currentGroup(), QStringLiteral( "Confirm Deletes" ), mConfirm, true ); + mConfirmItem->setLabel( QCoreApplication::translate("Test11a", "Confirm deletes") ); + addItem( mConfirmItem, QStringLiteral( "Confirm" ) ); + mArchiveFileItem = new MyPrefs::ItemString( currentGroup(), QStringLiteral( "Archive File" ), mArchiveFile ); + mArchiveFileItem->setLabel( QCoreApplication::translate("Test11a", "Archive File") ); + addItem( mArchiveFileItem, QStringLiteral( "ArchiveFile" ) ); + QList valuesDestination; + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("standardDestination"); + valuesDestination.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("askDestination"); + valuesDestination.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("argl1"); + choice.label = QCoreApplication::translate("Test11a", "Argl1 Label"); + valuesDestination.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("argl2"); + choice.whatsThis = QCoreApplication::translate("Test11a", "Argl2 Whatsthis"); + valuesDestination.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("argl3"); + choice.label = QCoreApplication::translate("Test11a", "Argl3 Label"); + choice.whatsThis = QCoreApplication::translate("Test11a", "Argl3 Whatsthis"); + valuesDestination.append( choice ); + } + mDestinationItem = new MyPrefs::ItemEnum( currentGroup(), QStringLiteral( "Destination" ), mDestination, valuesDestination, EnumDestination::standardDestination ); + mDestinationItem->setLabel( QCoreApplication::translate("Test11a", "New Events/Todos Should") ); + addItem( mDestinationItem, QStringLiteral( "Destination" ) ); + + setCurrentGroup( QStringLiteral( "Views" ) ); + + mHourSizeItem = new MyPrefs::ItemInt( currentGroup(), QStringLiteral( "Hour Size" ), mHourSize, 10 ); + mHourSizeItem->setLabel( QCoreApplication::translate("Test11a", "Hour Size") ); + addItem( mHourSizeItem, QStringLiteral( "HourSize" ) ); + mSelectionStartsEditorItem = new MyPrefs::ItemBool( currentGroup(), QStringLiteral( "SelectionStartsEditor" ), mSelectionStartsEditor, false ); + mSelectionStartsEditorItem->setLabel( QCoreApplication::translate("Test11a", "Time range selection in agenda view starts event editor") ); + addItem( mSelectionStartsEditorItem, QStringLiteral( "SelectionStartsEditor" ) ); + + setCurrentGroup( QStringLiteral( "KOrganizer Plugins" ) ); + + QStringList defaultSelectedPlugins; + defaultSelectedPlugins.append( QString::fromUtf8( "holidays" ) ); + defaultSelectedPlugins.append( QString::fromUtf8( "webexport" ) ); + + mSelectedPluginsItem = new MyPrefs::ItemStringList( currentGroup(), QStringLiteral( "SelectedPlugins" ), mSelectedPlugins, defaultSelectedPlugins ); + mSelectedPluginsItem->setLabel( QCoreApplication::translate("Test11a", "SelectedPlugins") ); + addItem( mSelectedPluginsItem, QStringLiteral( "SelectedPlugins" ) ); + + setCurrentGroup( QStringLiteral( "Colors" ) ); + + mHighlightColorItem = new MyPrefs::ItemColor( currentGroup(), QStringLiteral( "Highlight Color" ), mHighlightColor, QColor( 100, 100, 255 ) ); + mHighlightColorItem->setLabel( QCoreApplication::translate("Test11a", "Highlight color") ); + addItem( mHighlightColorItem, QStringLiteral( "HighlightColor" ) ); + mAgendaBgColorItem = new MyPrefs::ItemColor( currentGroup(), QStringLiteral( "Agenda Background Color" ), mAgendaBgColor, QColor( 255, 255, 255 ) ); + mAgendaBgColorItem->setLabel( QCoreApplication::translate("Test11a", "Agenda view background color") ); + addItem( mAgendaBgColorItem, QStringLiteral( "AgendaBgColor" ) ); + + setCurrentGroup( QStringLiteral( "Fonts" ) ); + + mTimeBarFontItem = new MyPrefs::ItemFont( currentGroup(), QStringLiteral( "TimeBar Font" ), mTimeBarFont ); + mTimeBarFontItem->setLabel( QCoreApplication::translate("Test11a", "Time bar") ); + addItem( mTimeBarFontItem, QStringLiteral( "TimeBarFont" ) ); + + setCurrentGroup( QStringLiteral( "Email" ) ); + + QList valuesEmailClient; + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("sendmail"); + choice.label = /*: @option */ QCoreApplication::translate("Test11a", "Sendmail"); + valuesEmailClient.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("kmail"); + choice.label = /*: @option */ QCoreApplication::translate("Test11a", "KMail"); + valuesEmailClient.append( choice ); + } + mEmailClientItem = new MyPrefs::ItemEnum( currentGroup(), QStringLiteral( "EmailClient" ), mEmailClient, valuesEmailClient, kmail ); + mEmailClientItem->setLabel( /*: @label */ QCoreApplication::translate("Test11a", "Email client") ); + mEmailClientItem->setWhatsThis( /*: @info:whatsthis */ QCoreApplication::translate("Test11a", "How to send email when an email alarm is triggered.KMail: The email is sent automatically via KMail. KMail is started first if necessary.Sendmail: The email is sent automatically. This option will only work if your system is configured to use sendmail or a sendmail compatible mail transport agent.") ); + addItem( mEmailClientItem, QStringLiteral( "EmailClient" ) ); + QList valuesDefaultReminderUnits; + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("Minutes"); + valuesDefaultReminderUnits.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("HoursMinutes"); + choice.label = /*: @option */ QCoreApplication::translate("Test11a", "Hours/Minutes"); + valuesDefaultReminderUnits.append( choice ); + } + mDefaultReminderUnitsItem = new MyPrefs::ItemEnum( currentGroup(), QStringLiteral( "RemindUnits" ), mDefaultReminderUnits, valuesDefaultReminderUnits, TimePeriod::HoursMinutes ); + mDefaultReminderUnitsItem->setLabel( /*: @label */ QCoreApplication::translate("Test11a", "Reminder units") ); + mDefaultReminderUnitsItem->setWhatsThis( /*: @info:whatsthis */ QCoreApplication::translate("Test11a", "Default reminder time units in the alarm edit dialog.") ); + addItem( mDefaultReminderUnitsItem, QStringLiteral( "DefaultReminderUnits" ) ); + + setCurrentGroup( QStringLiteral( "QueueRates" ) ); + + QList< QList > defaultRate; + QList< int > defaultRateInit; + + defaultRateInit.append( 15 ); + defaultRateInit.append( 60 ); + defaultRateInit.append( 0 ); + defaultRate.append( defaultRateInit ); + + defaultRateInit.clear(); + defaultRateInit.append( 40 ); + defaultRateInit.append( 60 ); + defaultRateInit.append( 0 ); + defaultRate.append( defaultRateInit ); + + defaultRateInit.clear(); + defaultRateInit.append( 1 ); + defaultRateInit.append( 1 ); + defaultRateInit.append( 0 ); + defaultRate.append( defaultRateInit ); + + QList defaultqueueRate; + + mQueueRateItem[0] = new MyPrefs::ItemIntList( currentGroup(), QStringLiteral( "EmptyingRate 0" ), mQueueRate[0], defaultRate[0] ); + mQueueRateItem[0]->setLabel( QCoreApplication::translate("Test11a", "EmptyingRate queueRate$(QueueIndex)") ); + addItem( mQueueRateItem[0], QStringLiteral( "queueRate0" ) ); + mQueueRateItem[1] = new MyPrefs::ItemIntList( currentGroup(), QStringLiteral( "EmptyingRate 1" ), mQueueRate[1], defaultqueueRate ); + mQueueRateItem[1]->setLabel( QCoreApplication::translate("Test11a", "EmptyingRate queueRate$(QueueIndex)") ); + addItem( mQueueRateItem[1], QStringLiteral( "queueRate1" ) ); + mQueueRateItem[2] = new MyPrefs::ItemIntList( currentGroup(), QStringLiteral( "EmptyingRate 2" ), mQueueRate[2], defaultRate[2] ); + mQueueRateItem[2]->setLabel( QCoreApplication::translate("Test11a", "EmptyingRate queueRate$(QueueIndex)") ); + addItem( mQueueRateItem[2], QStringLiteral( "queueRate2" ) ); + mShowQueueTunerItem = new MyPrefs::ItemBool( currentGroup(), QStringLiteral( "ShowQueueTuner" ), mShowQueueTuner, false ); + mShowQueueTunerItem->setLabel( QCoreApplication::translate("Test11a", "ShowQueueTuner") ); + addItem( mShowQueueTunerItem, QStringLiteral( "ShowQueueTuner" ) ); +} + +int Test11a::defaultDestinationValue_helper() const +{ + + return EnumDestination::standardDestination; +} + +bool Test11a::defaultSelectionStartsEditorValue_helper() const +{ + + return false; +} + +int Test11a::defaultDefaultReminderUnitsValue_helper() const +{ + + return TimePeriod::HoursMinutes; +} + +Test11a::~Test11a() +{ +} + diff --git a/autotests/kconfig_compiler/test11a.h.ref b/autotests/kconfig_compiler/test11a.h.ref new file mode 100644 index 0000000..76a7225 --- /dev/null +++ b/autotests/kconfig_compiler/test11a.h.ref @@ -0,0 +1,601 @@ +// This file is generated by kconfig_compiler_kf6 from test11a.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST11A_H +#define TEST11A_H + +#include + +#include +#include +#include +#include + +#include "test11_types.h" + +class Test11a : public MyPrefs +{ + public: + class EnumDestination + { + public: + enum type { standardDestination, askDestination, argl1, argl2, argl3, COUNT }; + }; + enum MailClient { sendmail, kmail }; + + Test11a( ); + ~Test11a() override; + + /** + Set Enable automatic saving of calendar + */ + void setAutoSave( bool v ) + { + if (!isAutoSaveImmutable()) + mAutoSave = v; + } + + /** + Get Enable automatic saving of calendar + */ + bool autoSave() const + { + return mAutoSave; + } + + /** + Is Enable automatic saving of calendar Immutable + */ + bool isAutoSaveImmutable() const + { + return isImmutable( QStringLiteral( "AutoSave" ) ); + } + + /** + Get Item object corresponding to AutoSave() + */ + ItemBool *autoSaveItem() + { + return mAutoSaveItem; + } + + /** + Set Auto Save Interval + */ + void setAutoSaveInterval( int v ) + { + if (!isAutoSaveIntervalImmutable()) + mAutoSaveInterval = v; + } + + /** + Get Auto Save Interval + */ + int autoSaveInterval() const + { + return mAutoSaveInterval; + } + + /** + Is Auto Save Interval Immutable + */ + bool isAutoSaveIntervalImmutable() const + { + return isImmutable( QStringLiteral( "AutoSaveInterval" ) ); + } + + /** + Get Item object corresponding to AutoSaveInterval() + */ + ItemInt *autoSaveIntervalItem() + { + return mAutoSaveIntervalItem; + } + + /** + Set Confirm deletes + */ + void setConfirm( bool v ) + { + if (!isConfirmImmutable()) + mConfirm = v; + } + + /** + Get Confirm deletes + */ + bool confirm() const + { + return mConfirm; + } + + /** + Is Confirm deletes Immutable + */ + bool isConfirmImmutable() const + { + return isImmutable( QStringLiteral( "Confirm" ) ); + } + + /** + Get Item object corresponding to Confirm() + */ + ItemBool *confirmItem() + { + return mConfirmItem; + } + + /** + Set Archive File + */ + void setArchiveFile( const QString & v ) + { + if (!isArchiveFileImmutable()) + mArchiveFile = v; + } + + /** + Get Archive File + */ + QString archiveFile() const + { + return mArchiveFile; + } + + /** + Is Archive File Immutable + */ + bool isArchiveFileImmutable() const + { + return isImmutable( QStringLiteral( "ArchiveFile" ) ); + } + + /** + Get Item object corresponding to ArchiveFile() + */ + ItemString *archiveFileItem() + { + return mArchiveFileItem; + } + + /** + Set New Events/Todos Should + */ + void setDestination( EnumDestination::type v ) + { + if (!isDestinationImmutable()) + mDestination = v; + } + + /** + Get New Events/Todos Should + */ + EnumDestination::type destination() const + { + return static_cast(mDestination); + } + + /** + Is New Events/Todos Should Immutable + */ + bool isDestinationImmutable() const + { + return isImmutable( QStringLiteral( "Destination" ) ); + } + + /** + Get New Events/Todos Should default value + */ + EnumDestination::type defaultDestinationValue() const + { + return static_cast(defaultDestinationValue_helper()); + } + + /** + Get Item object corresponding to Destination() + */ + ItemEnum *destinationItem() + { + return mDestinationItem; + } + + /** + Set Hour Size + */ + void setHourSize( int v ) + { + if (!isHourSizeImmutable()) + mHourSize = v; + } + + /** + Get Hour Size + */ + int hourSize() const + { + return mHourSize; + } + + /** + Is Hour Size Immutable + */ + bool isHourSizeImmutable() const + { + return isImmutable( QStringLiteral( "HourSize" ) ); + } + + /** + Get Item object corresponding to HourSize() + */ + ItemInt *hourSizeItem() + { + return mHourSizeItem; + } + + /** + Set Time range selection in agenda view starts event editor + */ + void setSelectionStartsEditor( bool v ) + { + if (!isSelectionStartsEditorImmutable()) + mSelectionStartsEditor = v; + } + + /** + Get Time range selection in agenda view starts event editor + */ + bool selectionStartsEditor() const + { + return mSelectionStartsEditor; + } + + /** + Is Time range selection in agenda view starts event editor Immutable + */ + bool isSelectionStartsEditorImmutable() const + { + return isImmutable( QStringLiteral( "SelectionStartsEditor" ) ); + } + + /** + Get Time range selection in agenda view starts event editor default value + */ + bool defaultSelectionStartsEditorValue() const + { + return defaultSelectionStartsEditorValue_helper(); + } + + /** + Get Item object corresponding to SelectionStartsEditor() + */ + ItemBool *selectionStartsEditorItem() + { + return mSelectionStartsEditorItem; + } + + /** + Set SelectedPlugins + */ + void setSelectedPlugins( const QStringList & v ) + { + if (!isSelectedPluginsImmutable()) + mSelectedPlugins = v; + } + + /** + Get SelectedPlugins + */ + QStringList selectedPlugins() const + { + return mSelectedPlugins; + } + + /** + Is SelectedPlugins Immutable + */ + bool isSelectedPluginsImmutable() const + { + return isImmutable( QStringLiteral( "SelectedPlugins" ) ); + } + + /** + Get Item object corresponding to SelectedPlugins() + */ + ItemStringList *selectedPluginsItem() + { + return mSelectedPluginsItem; + } + + /** + Set Highlight color + */ + void setHighlightColor( const QColor & v ) + { + if (!isHighlightColorImmutable()) + mHighlightColor = v; + } + + /** + Get Highlight color + */ + QColor highlightColor() const + { + return mHighlightColor; + } + + /** + Is Highlight color Immutable + */ + bool isHighlightColorImmutable() const + { + return isImmutable( QStringLiteral( "HighlightColor" ) ); + } + + /** + Get Item object corresponding to HighlightColor() + */ + ItemColor *highlightColorItem() + { + return mHighlightColorItem; + } + + /** + Set Agenda view background color + */ + void setAgendaBgColor( const QColor & v ) + { + if (!isAgendaBgColorImmutable()) + mAgendaBgColor = v; + } + + /** + Get Agenda view background color + */ + QColor agendaBgColor() const + { + return mAgendaBgColor; + } + + /** + Is Agenda view background color Immutable + */ + bool isAgendaBgColorImmutable() const + { + return isImmutable( QStringLiteral( "AgendaBgColor" ) ); + } + + /** + Get Item object corresponding to AgendaBgColor() + */ + ItemColor *agendaBgColorItem() + { + return mAgendaBgColorItem; + } + + /** + Set Time bar + */ + void setTimeBarFont( const QFont & v ) + { + if (!isTimeBarFontImmutable()) + mTimeBarFont = v; + } + + /** + Get Time bar + */ + QFont timeBarFont() const + { + return mTimeBarFont; + } + + /** + Is Time bar Immutable + */ + bool isTimeBarFontImmutable() const + { + return isImmutable( QStringLiteral( "TimeBarFont" ) ); + } + + /** + Get Item object corresponding to TimeBarFont() + */ + ItemFont *timeBarFontItem() + { + return mTimeBarFontItem; + } + + /** + Set Email client + */ + void setEmailClient( MailClient v ) + { + if (!isEmailClientImmutable()) + mEmailClient = v; + } + + /** + Get Email client + */ + MailClient emailClient() const + { + return static_cast(mEmailClient); + } + + /** + Is Email client Immutable + */ + bool isEmailClientImmutable() const + { + return isImmutable( QStringLiteral( "EmailClient" ) ); + } + + /** + Get Item object corresponding to EmailClient() + */ + ItemEnum *emailClientItem() + { + return mEmailClientItem; + } + + /** + Set Reminder units + */ + void setDefaultReminderUnits( TimePeriod::Units v ) + { + if (!isDefaultReminderUnitsImmutable()) + mDefaultReminderUnits = v; + } + + /** + Get Reminder units + */ + TimePeriod::Units defaultReminderUnits() const + { + return static_cast(mDefaultReminderUnits); + } + + /** + Is Reminder units Immutable + */ + bool isDefaultReminderUnitsImmutable() const + { + return isImmutable( QStringLiteral( "DefaultReminderUnits" ) ); + } + + /** + Get Reminder units default value + */ + TimePeriod::Units defaultDefaultReminderUnitsValue() const + { + return static_cast(defaultDefaultReminderUnitsValue_helper()); + } + + /** + Get Item object corresponding to DefaultReminderUnits() + */ + ItemEnum *defaultReminderUnitsItem() + { + return mDefaultReminderUnitsItem; + } + + /** + Set EmptyingRate $(QueueIndex) + */ + void setQueueRate( int i, const QList & v ) + { + if (!isQueueRateImmutable( i )) + mQueueRate[i] = v; + } + + /** + Get EmptyingRate $(QueueIndex) + */ + QList queueRate( int i ) const + { + return mQueueRate[i]; + } + + /** + Is EmptyingRate $(QueueIndex) Immutable + */ + bool isQueueRateImmutable( int i ) const + { + return isImmutable( QStringLiteral( "queueRate%1" ).arg( i ) ); + } + + /** + Get Item object corresponding to queueRate() + */ + ItemIntList *queueRateItem( int i ) + { + return mQueueRateItem[i]; + } + + /** + Set ShowQueueTuner + */ + void setShowQueueTuner( bool v ) + { + if (!isShowQueueTunerImmutable()) + mShowQueueTuner = v; + } + + /** + Get ShowQueueTuner + */ + bool showQueueTuner() const + { + return mShowQueueTuner; + } + + /** + Is ShowQueueTuner Immutable + */ + bool isShowQueueTunerImmutable() const + { + return isImmutable( QStringLiteral( "ShowQueueTuner" ) ); + } + + /** + Get Item object corresponding to ShowQueueTuner() + */ + ItemBool *showQueueTunerItem() + { + return mShowQueueTunerItem; + } + + protected: + public: + + // General + bool mAutoSave; + int mAutoSaveInterval; + bool mConfirm; + QString mArchiveFile; + int mDestination; + int defaultDestinationValue_helper() const; + + // Views + int mHourSize; + bool mSelectionStartsEditor; + bool defaultSelectionStartsEditorValue_helper() const; + + // KOrganizer Plugins + QStringList mSelectedPlugins; + + // Colors + QColor mHighlightColor; + QColor mAgendaBgColor; + + // Fonts + QFont mTimeBarFont; + + // Email + int mEmailClient; + int mDefaultReminderUnits; + int defaultDefaultReminderUnitsValue_helper() const; + + // QueueRates + QList mQueueRate[3]; + bool mShowQueueTuner; + + private: + ItemBool *mAutoSaveItem; + ItemInt *mAutoSaveIntervalItem; + ItemBool *mConfirmItem; + ItemString *mArchiveFileItem; + ItemEnum *mDestinationItem; + ItemInt *mHourSizeItem; + ItemBool *mSelectionStartsEditorItem; + ItemStringList *mSelectedPluginsItem; + ItemColor *mHighlightColorItem; + ItemColor *mAgendaBgColorItem; + ItemFont *mTimeBarFontItem; + ItemEnum *mEmailClientItem; + ItemEnum *mDefaultReminderUnitsItem; + ItemIntList *mQueueRateItem[3]; + ItemBool *mShowQueueTunerItem; +}; + +#endif + diff --git a/autotests/kconfig_compiler/test11a.kcfg b/autotests/kconfig_compiler/test11a.kcfg new file mode 100644 index 0000000..b91b039 --- /dev/null +++ b/autotests/kconfig_compiler/test11a.kcfg @@ -0,0 +1,135 @@ + + + + "test11_types.h" + + + + + + + WhatsThis text for AutoSave option + false + + + 10 + + + + true + + + + + + + + + + + + + + + Argl2 Whatsthis + + + + Argl3 Whatsthis + + + standardDestination + + + + + + 10 + + + + false + + + + + + holidays,webexport + + + + + + + 100, 100, 255 + + + + 255, 255, 255 + + + + + + + + + + + + + <para>How to send email when an email alarm is triggered.<list><item>KMail: The email is sent automatically via <application>KMail</application>. <application>KMail</application> is started first if necessary.</item><item>Sendmail: The email is sent automatically. This option will only work if your system is configured to use <application>sendmail</application> or a sendmail compatible mail transport agent.</item></list></para> + + + + + kmail + + + + + Default reminder time units in the alarm edit dialog. + + + + + HoursMinutes + + + + + + + QList< QList<int> > defaultRate; + QList< int > defaultRateInit; + + defaultRateInit.append( 15 ); + defaultRateInit.append( 60 ); + defaultRateInit.append( 0 ); + defaultRate.append( defaultRateInit ); + + defaultRateInit.clear(); + defaultRateInit.append( 40 ); + defaultRateInit.append( 60 ); + defaultRateInit.append( 0 ); + defaultRate.append( defaultRateInit ); + + defaultRateInit.clear(); + defaultRateInit.append( 1 ); + defaultRateInit.append( 1 ); + defaultRateInit.append( 0 ); + defaultRate.append( defaultRateInit ); + + + defaultRate[0] + defaultRate[2] + + + false + + + + diff --git a/autotests/kconfig_compiler/test11a.kcfgc b/autotests/kconfig_compiler/test11a.kcfgc new file mode 100644 index 0000000..21b4d63 --- /dev/null +++ b/autotests/kconfig_compiler/test11a.kcfgc @@ -0,0 +1,13 @@ +# Code generation options for kconfig_compiler_kf6 +File=test11a.kcfg +ClassName=Test11a +Singleton=false +Mutators=true +Inherits=MyPrefs +IncludeFiles=myprefs.h +MemberVariables=public +GlobalEnums=false +ItemAccessors=true +SetUserTexts=true +UseEnumTypes=true +DefaultValueGetters=Destination,SelectionStartsEditor,DefaultReminderUnits diff --git a/autotests/kconfig_compiler/test11main.cpp b/autotests/kconfig_compiler/test11main.cpp new file mode 100644 index 0000000..115f7ce --- /dev/null +++ b/autotests/kconfig_compiler/test11main.cpp @@ -0,0 +1,19 @@ +/* + SPDX-FileCopyrightText: 2009 Pino Toscano + + SPDX-License-Identifier: MIT +*/ +#include "test11.h" +#include "test11a.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + Test11 *t = new Test11(); + Test11a *t2 = new Test11a(); + delete t; + delete t2; + return 0; +} diff --git a/autotests/kconfig_compiler/test12.cpp.ref b/autotests/kconfig_compiler/test12.cpp.ref new file mode 100644 index 0000000..3c20bda --- /dev/null +++ b/autotests/kconfig_compiler/test12.cpp.ref @@ -0,0 +1,22 @@ +// This file is generated by kconfig_compiler_kf6 from test12.kcfg. +// All changes you do to this file will be lost. + +#include "test12.h" + +Test12::Test12( ) + : KConfigSkeleton( QStringLiteral( "muondatasourcesrc" ) ) +{ + setCurrentGroup( QStringLiteral( "muon" ) ); + + QList defaultRnRSource; + defaultRnRSource.append( QUrl::fromUserInput(QString::fromUtf8( "http://kde.org" ) ) ); + + KConfigSkeleton::ItemUrlList *itemRnRSource; + itemRnRSource = new KConfigSkeleton::ItemUrlList( currentGroup(), QStringLiteral( "RnRSource" ), mRnRSource, defaultRnRSource ); + addItem( itemRnRSource, QStringLiteral( "RnRSource" ) ); +} + +Test12::~Test12() +{ +} + diff --git a/autotests/kconfig_compiler/test12.h.ref b/autotests/kconfig_compiler/test12.h.ref new file mode 100644 index 0000000..82b7ca4 --- /dev/null +++ b/autotests/kconfig_compiler/test12.h.ref @@ -0,0 +1,43 @@ +// This file is generated by kconfig_compiler_kf6 from test12.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST12_H +#define TEST12_H + +#include +#include +#include +#include + +class Test12 : public KConfigSkeleton +{ + public: + + Test12( ); + ~Test12() override; + + /** + Get RnRSource + */ + QList rnRSource() const + { + return mRnRSource; + } + + /** + Is RnRSource Immutable + */ + bool isRnRSourceImmutable() const + { + return isImmutable( QStringLiteral( "RnRSource" ) ); + } + + protected: + + // muon + QList mRnRSource; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test12.kcfg b/autotests/kconfig_compiler/test12.kcfg new file mode 100644 index 0000000..57663ab --- /dev/null +++ b/autotests/kconfig_compiler/test12.kcfg @@ -0,0 +1,10 @@ + + + + + http://kde.org + + diff --git a/autotests/kconfig_compiler/test12.kcfgc b/autotests/kconfig_compiler/test12.kcfgc new file mode 100644 index 0000000..d3a8fe2 --- /dev/null +++ b/autotests/kconfig_compiler/test12.kcfgc @@ -0,0 +1,2 @@ +ClassName=Test12 +File=test12.kcfg diff --git a/autotests/kconfig_compiler/test12main.cpp b/autotests/kconfig_compiler/test12main.cpp new file mode 100644 index 0000000..aedcf9f --- /dev/null +++ b/autotests/kconfig_compiler/test12main.cpp @@ -0,0 +1,12 @@ +/* + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + + SPDX-License-Identifier: MIT +*/ +#include "test12.h" + +int main(int, char **) +{ + Test12 t = Test12(); + return 0; +} diff --git a/autotests/kconfig_compiler/test13.cpp.ref b/autotests/kconfig_compiler/test13.cpp.ref new file mode 100644 index 0000000..189278f --- /dev/null +++ b/autotests/kconfig_compiler/test13.cpp.ref @@ -0,0 +1,38 @@ +// This file is generated by kconfig_compiler_kf6 from test13.kcfg. +// All changes you do to this file will be lost. + +#include "test13.h" + +Test13::Test13( ) + : KConfigSkeleton( QStringLiteral( "muondatasourcesrc" ) ) +{ + KConfigCompilerSignallingItem::NotifyFunction notifyFunction = static_cast(&Test13::itemChanged); + + setCurrentGroup( QStringLiteral( "kamoso" ) ); + + KConfigSkeleton::ItemUrl *itemPicturesDir; + itemPicturesDir = new KConfigSkeleton::ItemUrl( currentGroup(), QStringLiteral( "picturesDir" ), mPicturesDir ); + addItem( itemPicturesDir, QStringLiteral( "picturesDir" ) ); + KConfigCompilerSignallingItem *itemBrightness; + KConfigSkeleton::ItemDouble *innerItemBrightness; + innerItemBrightness = new KConfigSkeleton::ItemDouble( currentGroup(), QStringLiteral( "brightness" ), mBrightness ); + itemBrightness = new KConfigCompilerSignallingItem(innerItemBrightness, this, notifyFunction, signalBrightnessChanged); + addItem( itemBrightness, QStringLiteral( "brightness" ) ); + KConfigSkeleton::ItemBool *itemStartsWithUppercase; + itemStartsWithUppercase = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "StartsWithUppercase" ), mStartsWithUppercase ); + addItem( itemStartsWithUppercase, QStringLiteral( "StartsWithUppercase" ) ); +} + +Test13::~Test13() +{ +} + + +void Test13::itemChanged(quint64 signalFlag) { + + switch (signalFlag) { + case signalBrightnessChanged: + Q_EMIT brightnessChanged(); + break; + } +} diff --git a/autotests/kconfig_compiler/test13.h.ref b/autotests/kconfig_compiler/test13.h.ref new file mode 100644 index 0000000..6790d53 --- /dev/null +++ b/autotests/kconfig_compiler/test13.h.ref @@ -0,0 +1,106 @@ +// This file is generated by kconfig_compiler_kf6 from test13.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST13_H +#define TEST13_H + +#include +#include +#include +#include + +class Test13 : public KConfigSkeleton +{ + Q_OBJECT + public: + + Test13( ); + ~Test13() override; + + Q_PROPERTY(QUrl picturesDir READ picturesDir CONSTANT) + Q_PROPERTY(bool isPicturesDirImmutable READ isPicturesDirImmutable CONSTANT) + /** + Get picturesDir + */ + QUrl picturesDir() const + { + return mPicturesDir; + } + + /** + Is picturesDir Immutable + */ + bool isPicturesDirImmutable() const + { + return isImmutable( QStringLiteral( "picturesDir" ) ); + } + + /** + Set brightness + */ + void setBrightness( double v ) + { + if (v != mBrightness && !isBrightnessImmutable()) { + mBrightness = v; + Q_EMIT brightnessChanged(); + } + } + + Q_PROPERTY(double brightness READ brightness WRITE setBrightness NOTIFY brightnessChanged) + Q_PROPERTY(bool isBrightnessImmutable READ isBrightnessImmutable CONSTANT) + /** + Get brightness + */ + double brightness() const + { + return mBrightness; + } + + /** + Is brightness Immutable + */ + bool isBrightnessImmutable() const + { + return isImmutable( QStringLiteral( "brightness" ) ); + } + + Q_PROPERTY(bool startsWithUppercase READ startsWithUppercase CONSTANT) + Q_PROPERTY(bool isStartsWithUppercaseImmutable READ isStartsWithUppercaseImmutable CONSTANT) + /** + Get StartsWithUppercase + */ + bool startsWithUppercase() const + { + return mStartsWithUppercase; + } + + /** + Is StartsWithUppercase Immutable + */ + bool isStartsWithUppercaseImmutable() const + { + return isImmutable( QStringLiteral( "StartsWithUppercase" ) ); + } + + + enum { + signalBrightnessChanged = 1 + }; + + Q_SIGNALS: + void brightnessChanged(); + + private: + void itemChanged(quint64 signalFlag); + + protected: + + // kamoso + QUrl mPicturesDir; + double mBrightness; + bool mStartsWithUppercase; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test13.kcfg b/autotests/kconfig_compiler/test13.kcfg new file mode 100644 index 0000000..cf78c70 --- /dev/null +++ b/autotests/kconfig_compiler/test13.kcfg @@ -0,0 +1,12 @@ + + + + + + + + + diff --git a/autotests/kconfig_compiler/test13.kcfgc b/autotests/kconfig_compiler/test13.kcfgc new file mode 100644 index 0000000..a0c3c13 --- /dev/null +++ b/autotests/kconfig_compiler/test13.kcfgc @@ -0,0 +1,4 @@ +ClassName=Test13 +GenerateProperties=true +Mutators=brightness +File=test13.kcfg diff --git a/autotests/kconfig_compiler/test13main.cpp b/autotests/kconfig_compiler/test13main.cpp new file mode 100644 index 0000000..a342864 --- /dev/null +++ b/autotests/kconfig_compiler/test13main.cpp @@ -0,0 +1,12 @@ +/* + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + + SPDX-License-Identifier: MIT +*/ +#include "test13.h" + +int main(int, char **) +{ + Test13 t = Test13(); + return 0; +} diff --git a/autotests/kconfig_compiler/test14.cpp.ref b/autotests/kconfig_compiler/test14.cpp.ref new file mode 100644 index 0000000..7ca8102 --- /dev/null +++ b/autotests/kconfig_compiler/test14.cpp.ref @@ -0,0 +1,35 @@ +// This file is generated by kconfig_compiler_kf6 from test14.kcfg. +// All changes you do to this file will be lost. + +#include "test14.h" + +Test14::Test14( ) + : KConfigSkeleton( QStringLiteral( "muondatasourcesrc" ) ) +{ + KConfigCompilerSignallingItem::NotifyFunction notifyFunction = static_cast(&Test14::itemChanged); + + setCurrentGroup( QStringLiteral( "kamoso" ) ); + + KConfigSkeleton::ItemUrl *itemPicturesDir; + itemPicturesDir = new KConfigSkeleton::ItemUrl( currentGroup(), QStringLiteral( "picturesDir" ), mPicturesDir ); + addItem( itemPicturesDir, QStringLiteral( "picturesDir" ) ); + KConfigCompilerSignallingItem *itemBrightness; + KConfigSkeleton::ItemDouble *innerItemBrightness; + innerItemBrightness = new KConfigSkeleton::ItemDouble( currentGroup(), QStringLiteral( "brightness" ), mBrightness ); + itemBrightness = new KConfigCompilerSignallingItem(innerItemBrightness, this, notifyFunction, signalBrightnessChanged); + addItem( itemBrightness, QStringLiteral( "brightness" ) ); +} + +Test14::~Test14() +{ +} + + +void Test14::itemChanged(quint64 signalFlag) { + + switch (signalFlag) { + case signalBrightnessChanged: + Q_EMIT brightnessChanged(); + break; + } +} diff --git a/autotests/kconfig_compiler/test14.h.ref b/autotests/kconfig_compiler/test14.h.ref new file mode 100644 index 0000000..488e286 --- /dev/null +++ b/autotests/kconfig_compiler/test14.h.ref @@ -0,0 +1,89 @@ +// This file is generated by kconfig_compiler_kf6 from test14.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST14_H +#define TEST14_H + +#include +#include +#include +#include +#include + +class Test14 : public KConfigSkeleton +{ + Q_OBJECT + QML_ELEMENT + public: + + Test14( ); + ~Test14() override; + + Q_PROPERTY(QUrl picturesDir READ picturesDir CONSTANT) + Q_PROPERTY(bool isPicturesDirImmutable READ isPicturesDirImmutable CONSTANT) + /** + Get picturesDir + */ + QUrl picturesDir() const + { + return mPicturesDir; + } + + /** + Is picturesDir Immutable + */ + bool isPicturesDirImmutable() const + { + return isImmutable( QStringLiteral( "picturesDir" ) ); + } + + /** + Set brightness + */ + void setBrightness( double v ) + { + if (v != mBrightness && !isBrightnessImmutable()) { + mBrightness = v; + Q_EMIT brightnessChanged(); + } + } + + Q_PROPERTY(double brightness READ brightness WRITE setBrightness NOTIFY brightnessChanged) + Q_PROPERTY(bool isBrightnessImmutable READ isBrightnessImmutable CONSTANT) + /** + Get brightness + */ + double brightness() const + { + return mBrightness; + } + + /** + Is brightness Immutable + */ + bool isBrightnessImmutable() const + { + return isImmutable( QStringLiteral( "brightness" ) ); + } + + + enum { + signalBrightnessChanged = 1 + }; + + Q_SIGNALS: + void brightnessChanged(); + + private: + void itemChanged(quint64 signalFlag); + + protected: + + // kamoso + QUrl mPicturesDir; + double mBrightness; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test14.kcfg b/autotests/kconfig_compiler/test14.kcfg new file mode 100644 index 0000000..c4d3635 --- /dev/null +++ b/autotests/kconfig_compiler/test14.kcfg @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/autotests/kconfig_compiler/test14.kcfgc b/autotests/kconfig_compiler/test14.kcfgc new file mode 100644 index 0000000..cf6b7ba --- /dev/null +++ b/autotests/kconfig_compiler/test14.kcfgc @@ -0,0 +1,5 @@ +ClassName=Test14 +GenerateProperties=true +Mutators=brightness +File=test14.kcfg +QmlRegistration=true diff --git a/autotests/kconfig_compiler/test14main.cpp b/autotests/kconfig_compiler/test14main.cpp new file mode 100644 index 0000000..1b68654 --- /dev/null +++ b/autotests/kconfig_compiler/test14main.cpp @@ -0,0 +1,10 @@ +/* + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + + SPDX-License-Identifier: MIT +*/ + +int main(int, char **) +{ + return 0; +} diff --git a/autotests/kconfig_compiler/test14qml.cpp b/autotests/kconfig_compiler/test14qml.cpp new file mode 100644 index 0000000..8d729fd --- /dev/null +++ b/autotests/kconfig_compiler/test14qml.cpp @@ -0,0 +1,28 @@ +/* + SPDX-FileCopyrightText: 2024 Nicolas Fella + + SPDX-License-Identifier: MIT +*/ + +#include +#include +#include + +class Test14Qml : public QObject +{ + Q_OBJECT + +private Q_SLOTS: + void testQml() + { + QQmlApplicationEngine engine; + + engine.loadFromModule("org.kde.kconfig.test14", "Test14Qml"); + + QVERIFY(engine.rootObjects().size()); + } +}; + +QTEST_MAIN(Test14Qml) + +#include "test14qml.moc" diff --git a/autotests/kconfig_compiler/test15.cpp.ref b/autotests/kconfig_compiler/test15.cpp.ref new file mode 100644 index 0000000..1bad31d --- /dev/null +++ b/autotests/kconfig_compiler/test15.cpp.ref @@ -0,0 +1,73 @@ +// This file is generated by kconfig_compiler_kf6 from test15.kcfg. +// All changes you do to this file will be lost. + +#include "test15.h" + +#include +#include +#include + +class Test15Helper +{ + public: + Test15Helper() : q(nullptr) {} + ~Test15Helper() { delete q; q = nullptr; } + Test15Helper(const Test15Helper&) = delete; + Test15Helper& operator=(const Test15Helper&) = delete; + Test15 *q; +}; +Q_GLOBAL_STATIC(Test15Helper, s_globalTest15) +Test15 *Test15::self() +{ + if (!s_globalTest15()->q) { + new Test15; + s_globalTest15()->q->read(); + } + + return s_globalTest15()->q; +} + +Test15 *Test15::create(QQmlEngine *, QJSEngine *) +{ + QQmlEngine::setObjectOwnership(self(), QQmlEngine::CppOwnership); + return self(); +} + +Test15::Test15( ) + : KConfigSkeleton( QStringLiteral( "muondatasourcesrc" ) ) +{ + Q_ASSERT(!s_globalTest15()->q); + s_globalTest15()->q = this; + KConfigCompilerSignallingItem::NotifyFunction notifyFunction = static_cast(&Test15::itemChanged); + + setCurrentGroup( QStringLiteral( "kamoso" ) ); + + KConfigSkeleton::ItemUrl *itemPicturesDir; + itemPicturesDir = new KConfigSkeleton::ItemUrl( currentGroup(), QStringLiteral( "picturesDir" ), mPicturesDir ); + addItem( itemPicturesDir, QStringLiteral( "picturesDir" ) ); + KConfigCompilerSignallingItem *itemBrightness; + KConfigSkeleton::ItemDouble *innerItemBrightness; + innerItemBrightness = new KConfigSkeleton::ItemDouble( currentGroup(), QStringLiteral( "brightness" ), mBrightness ); + itemBrightness = new KConfigCompilerSignallingItem(innerItemBrightness, this, notifyFunction, signalBrightnessChanged); + addItem( itemBrightness, QStringLiteral( "brightness" ) ); + KConfigSkeleton::ItemBool *itemStartsWithUppercase; + itemStartsWithUppercase = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "StartsWithUppercase" ), mStartsWithUppercase ); + addItem( itemStartsWithUppercase, QStringLiteral( "StartsWithUppercase" ) ); +} + +Test15::~Test15() +{ + if (s_globalTest15.exists() && !s_globalTest15.isDestroyed()) { + s_globalTest15()->q = nullptr; + } +} + + +void Test15::itemChanged(quint64 signalFlag) { + + switch (signalFlag) { + case signalBrightnessChanged: + Q_EMIT brightnessChanged(); + break; + } +} diff --git a/autotests/kconfig_compiler/test15.h.ref b/autotests/kconfig_compiler/test15.h.ref new file mode 100644 index 0000000..fa28678 --- /dev/null +++ b/autotests/kconfig_compiler/test15.h.ref @@ -0,0 +1,122 @@ +// This file is generated by kconfig_compiler_kf6 from test15.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST15_H +#define TEST15_H + +#include +#include +#include +#include + +class QQmlEngine; +class QJSEngine; + +class Test15 : public KConfigSkeleton +{ + Q_OBJECT + QML_ELEMENT + QML_SINGLETON + public: + + static Test15 *self(); + static Test15 *create(QQmlEngine *, QJSEngine *); + ~Test15() override; + + Q_PROPERTY(QUrl picturesDir READ picturesDir CONSTANT) + Q_PROPERTY(bool isPicturesDirImmutable READ isPicturesDirImmutable CONSTANT) + /** + Get picturesDir + */ + static + QUrl picturesDir() + { + return self()->mPicturesDir; + } + + /** + Is picturesDir Immutable + */ + static + bool isPicturesDirImmutable() + { + return self()->isImmutable( QStringLiteral( "picturesDir" ) ); + } + + /** + Set brightness + */ + static + void setBrightness( double v ) + { + if (v != self()->mBrightness && !self()->isBrightnessImmutable()) { + self()->mBrightness = v; + Q_EMIT self()->brightnessChanged(); + } + } + + Q_PROPERTY(double brightness READ brightness WRITE setBrightness NOTIFY brightnessChanged) + Q_PROPERTY(bool isBrightnessImmutable READ isBrightnessImmutable CONSTANT) + /** + Get brightness + */ + static + double brightness() + { + return self()->mBrightness; + } + + /** + Is brightness Immutable + */ + static + bool isBrightnessImmutable() + { + return self()->isImmutable( QStringLiteral( "brightness" ) ); + } + + Q_PROPERTY(bool startsWithUppercase READ startsWithUppercase CONSTANT) + Q_PROPERTY(bool isStartsWithUppercaseImmutable READ isStartsWithUppercaseImmutable CONSTANT) + /** + Get StartsWithUppercase + */ + static + bool startsWithUppercase() + { + return self()->mStartsWithUppercase; + } + + /** + Is StartsWithUppercase Immutable + */ + static + bool isStartsWithUppercaseImmutable() + { + return self()->isImmutable( QStringLiteral( "StartsWithUppercase" ) ); + } + + + enum { + signalBrightnessChanged = 1 + }; + + Q_SIGNALS: + void brightnessChanged(); + + private: + void itemChanged(quint64 signalFlag); + + protected: + Test15(); + friend class Test15Helper; + + + // kamoso + QUrl mPicturesDir; + double mBrightness; + bool mStartsWithUppercase; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test15.kcfg b/autotests/kconfig_compiler/test15.kcfg new file mode 100644 index 0000000..cf78c70 --- /dev/null +++ b/autotests/kconfig_compiler/test15.kcfg @@ -0,0 +1,12 @@ + + + + + + + + + diff --git a/autotests/kconfig_compiler/test15.kcfgc b/autotests/kconfig_compiler/test15.kcfgc new file mode 100644 index 0000000..e89ff2a --- /dev/null +++ b/autotests/kconfig_compiler/test15.kcfgc @@ -0,0 +1,6 @@ +ClassName=Test15 +GenerateProperties=true +Mutators=brightness +File=test15.kcfg +QmlRegistration=true +Singleton=true diff --git a/autotests/kconfig_compiler/test15main.cpp b/autotests/kconfig_compiler/test15main.cpp new file mode 100644 index 0000000..25bbce3 --- /dev/null +++ b/autotests/kconfig_compiler/test15main.cpp @@ -0,0 +1,12 @@ +/* + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + + SPDX-License-Identifier: MIT +*/ +#include "test15.h" + +int main(int, char **) +{ + Test15::self(); + return 0; +} diff --git a/autotests/kconfig_compiler/test15qml.cpp b/autotests/kconfig_compiler/test15qml.cpp new file mode 100644 index 0000000..54ec36f --- /dev/null +++ b/autotests/kconfig_compiler/test15qml.cpp @@ -0,0 +1,28 @@ +/* + SPDX-FileCopyrightText: 2024 Nicolas Fella + + SPDX-License-Identifier: MIT +*/ + +#include +#include +#include + +class Test15Qml : public QObject +{ + Q_OBJECT + +private Q_SLOTS: + void testQml() + { + QQmlApplicationEngine engine; + + engine.loadFromModule("org.kde.kconfig.test15", "Test15Qml"); + + QVERIFY(engine.rootObjects().size()); + } +}; + +QTEST_MAIN(Test15Qml) + +#include "test15qml.moc" diff --git a/autotests/kconfig_compiler/test1main.cpp b/autotests/kconfig_compiler/test1main.cpp new file mode 100644 index 0000000..43dcd2c --- /dev/null +++ b/autotests/kconfig_compiler/test1main.cpp @@ -0,0 +1,27 @@ +/* + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + + SPDX-License-Identifier: MIT +*/ +#include "test1.h" +#include +#include +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + + { + KConfig initialConfig(QStringLiteral("examplerc")); + KConfigGroup group = initialConfig.group(QStringLiteral("MyOptions")); + group.writeEntry(QStringLiteral("MyString"), QStringLiteral("The String")); + } + Test1 *t = new Test1(QString(), QString()); + + bool ok = t->myString() == QLatin1String("The String"); + + delete t; + return ok ? 0 : 1; +} diff --git a/autotests/kconfig_compiler/test2.cpp.ref b/autotests/kconfig_compiler/test2.cpp.ref new file mode 100644 index 0000000..12c5c64 --- /dev/null +++ b/autotests/kconfig_compiler/test2.cpp.ref @@ -0,0 +1,96 @@ +// This file is generated by kconfig_compiler_kf6 from test2.kcfg. +// All changes you do to this file will be lost. + +#include "test2.h" + +Test2::Test2( ) + : MyPrefs( QStringLiteral( "korganizerrc" ) ) +{ + setCurrentGroup( QStringLiteral( "General" ) ); + + mAutoSaveItem = new MyPrefs::ItemBool( currentGroup(), QStringLiteral( "Auto Save" ), mAutoSave, false ); + mAutoSaveItem->setLabel( QCoreApplication::translate("Test2", "Enable automatic saving of calendar") ); + mAutoSaveItem->setWhatsThis( QCoreApplication::translate("Test2", "WhatsThis text for AutoSave option") ); + addItem( mAutoSaveItem, QStringLiteral( "AutoSave" ) ); + mAutoSaveIntervalItem = new MyPrefs::ItemInt( currentGroup(), QStringLiteral( "Auto Save Interval" ), mAutoSaveInterval, 10 ); + mAutoSaveIntervalItem->setLabel( QCoreApplication::translate("Test2", "Auto Save Interval") ); + addItem( mAutoSaveIntervalItem, QStringLiteral( "AutoSaveInterval" ) ); + mConfirmItem = new MyPrefs::ItemBool( currentGroup(), QStringLiteral( "Confirm Deletes" ), mConfirm, true ); + mConfirmItem->setLabel( QCoreApplication::translate("Test2", "Confirm deletes") ); + addItem( mConfirmItem, QStringLiteral( "Confirm" ) ); + mArchiveFileItem = new MyPrefs::ItemString( currentGroup(), QStringLiteral( "Archive File" ), mArchiveFile ); + mArchiveFileItem->setLabel( QCoreApplication::translate("Test2", "Archive File") ); + addItem( mArchiveFileItem, QStringLiteral( "ArchiveFile" ) ); + QList valuesDestination; + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("standardDestination"); + valuesDestination.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("askDestination"); + valuesDestination.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("argl1"); + choice.label = QCoreApplication::translate("Test2", "Argl1 Label"); + valuesDestination.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("argl2"); + choice.whatsThis = QCoreApplication::translate("Test2", "Argl2 Whatsthis"); + valuesDestination.append( choice ); + } + { + MyPrefs::ItemEnum::Choice choice; + choice.name = QStringLiteral("argl3"); + choice.label = QCoreApplication::translate("Test2", "Argl3 Label"); + choice.whatsThis = QCoreApplication::translate("Test2", "Argl3 Whatsthis"); + valuesDestination.append( choice ); + } + mDestinationItem = new MyPrefs::ItemEnum( currentGroup(), QStringLiteral( "Destination" ), mDestination, valuesDestination, standardDestination ); + mDestinationItem->setLabel( QCoreApplication::translate("Test2", "New Events/Todos Should") ); + addItem( mDestinationItem, QStringLiteral( "Destination" ) ); + + setCurrentGroup( QStringLiteral( "Views" ) ); + + mHourSizeItem = new MyPrefs::ItemInt( currentGroup(), QStringLiteral( "Hour Size" ), mHourSize, 10 ); + mHourSizeItem->setLabel( QCoreApplication::translate("Test2", "Hour Size") ); + addItem( mHourSizeItem, QStringLiteral( "HourSize" ) ); + mSelectionStartsEditorItem = new MyPrefs::ItemBool( currentGroup(), QStringLiteral( "SelectionStartsEditor" ), mSelectionStartsEditor, false ); + mSelectionStartsEditorItem->setLabel( QCoreApplication::translate("Test2", "Time range selection in agenda view starts event editor") ); + addItem( mSelectionStartsEditorItem, QStringLiteral( "SelectionStartsEditor" ) ); + + setCurrentGroup( QStringLiteral( "KOrganizer Plugins" ) ); + + QStringList defaultSelectedPlugins; + defaultSelectedPlugins.append( QString::fromUtf8( "holidays" ) ); + defaultSelectedPlugins.append( QString::fromUtf8( "webexport" ) ); + + mSelectedPluginsItem = new MyPrefs::ItemStringList( currentGroup(), QStringLiteral( "SelectedPlugins" ), mSelectedPlugins, defaultSelectedPlugins ); + mSelectedPluginsItem->setLabel( QCoreApplication::translate("Test2", "SelectedPlugins") ); + addItem( mSelectedPluginsItem, QStringLiteral( "SelectedPlugins" ) ); + + setCurrentGroup( QStringLiteral( "Colors" ) ); + + mHighlightColorItem = new MyPrefs::ItemColor( currentGroup(), QStringLiteral( "Highlight Color" ), mHighlightColor, QColor( 100, 100, 255 ) ); + mHighlightColorItem->setLabel( QCoreApplication::translate("Test2", "Highlight color") ); + addItem( mHighlightColorItem, QStringLiteral( "HighlightColor" ) ); + mAgendaBgColorItem = new MyPrefs::ItemColor( currentGroup(), QStringLiteral( "Agenda Background Color" ), mAgendaBgColor, QColor( 255, 255, 255 ) ); + mAgendaBgColorItem->setLabel( QCoreApplication::translate("Test2", "Agenda view background color") ); + addItem( mAgendaBgColorItem, QStringLiteral( "AgendaBgColor" ) ); + + setCurrentGroup( QStringLiteral( "Fonts" ) ); + + mTimeBarFontItem = new MyPrefs::ItemFont( currentGroup(), QStringLiteral( "TimeBar Font" ), mTimeBarFont ); + mTimeBarFontItem->setLabel( QCoreApplication::translate("Test2", "Time bar") ); + addItem( mTimeBarFontItem, QStringLiteral( "TimeBarFont" ) ); +} + +Test2::~Test2() +{ +} + diff --git a/autotests/kconfig_compiler/test2.h.ref b/autotests/kconfig_compiler/test2.h.ref new file mode 100644 index 0000000..f99ead5 --- /dev/null +++ b/autotests/kconfig_compiler/test2.h.ref @@ -0,0 +1,423 @@ +// This file is generated by kconfig_compiler_kf6 from test2.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST2_H +#define TEST2_H + +#include + +#include +#include +#include +#include + +class Test2 : public MyPrefs +{ + public: + enum EnumDestination { standardDestination, askDestination, argl1, argl2, argl3 }; + + Test2( ); + ~Test2() override; + + /** + Set Enable automatic saving of calendar + */ + void setAutoSave( bool v ) + { + if (!isAutoSaveImmutable()) + mAutoSave = v; + } + + /** + Get Enable automatic saving of calendar + */ + bool autoSave() const + { + return mAutoSave; + } + + /** + Is Enable automatic saving of calendar Immutable + */ + bool isAutoSaveImmutable() const + { + return isImmutable( QStringLiteral( "AutoSave" ) ); + } + + /** + Get Item object corresponding to AutoSave() + */ + ItemBool *autoSaveItem() + { + return mAutoSaveItem; + } + + /** + Set Auto Save Interval + */ + void setAutoSaveInterval( int v ) + { + if (!isAutoSaveIntervalImmutable()) + mAutoSaveInterval = v; + } + + /** + Get Auto Save Interval + */ + int autoSaveInterval() const + { + return mAutoSaveInterval; + } + + /** + Is Auto Save Interval Immutable + */ + bool isAutoSaveIntervalImmutable() const + { + return isImmutable( QStringLiteral( "AutoSaveInterval" ) ); + } + + /** + Get Item object corresponding to AutoSaveInterval() + */ + ItemInt *autoSaveIntervalItem() + { + return mAutoSaveIntervalItem; + } + + /** + Set Confirm deletes + */ + void setConfirm( bool v ) + { + if (!isConfirmImmutable()) + mConfirm = v; + } + + /** + Get Confirm deletes + */ + bool confirm() const + { + return mConfirm; + } + + /** + Is Confirm deletes Immutable + */ + bool isConfirmImmutable() const + { + return isImmutable( QStringLiteral( "Confirm" ) ); + } + + /** + Get Item object corresponding to Confirm() + */ + ItemBool *confirmItem() + { + return mConfirmItem; + } + + /** + Set Archive File + */ + void setArchiveFile( const QString & v ) + { + if (!isArchiveFileImmutable()) + mArchiveFile = v; + } + + /** + Get Archive File + */ + QString archiveFile() const + { + return mArchiveFile; + } + + /** + Is Archive File Immutable + */ + bool isArchiveFileImmutable() const + { + return isImmutable( QStringLiteral( "ArchiveFile" ) ); + } + + /** + Get Item object corresponding to ArchiveFile() + */ + ItemString *archiveFileItem() + { + return mArchiveFileItem; + } + + /** + Set New Events/Todos Should + */ + void setDestination( int v ) + { + if (!isDestinationImmutable()) + mDestination = v; + } + + /** + Get New Events/Todos Should + */ + int destination() const + { + return mDestination; + } + + /** + Is New Events/Todos Should Immutable + */ + bool isDestinationImmutable() const + { + return isImmutable( QStringLiteral( "Destination" ) ); + } + + /** + Get Item object corresponding to Destination() + */ + ItemEnum *destinationItem() + { + return mDestinationItem; + } + + /** + Set Hour Size + */ + void setHourSize( int v ) + { + if (!isHourSizeImmutable()) + mHourSize = v; + } + + /** + Get Hour Size + */ + int hourSize() const + { + return mHourSize; + } + + /** + Is Hour Size Immutable + */ + bool isHourSizeImmutable() const + { + return isImmutable( QStringLiteral( "HourSize" ) ); + } + + /** + Get Item object corresponding to HourSize() + */ + ItemInt *hourSizeItem() + { + return mHourSizeItem; + } + + /** + Set Time range selection in agenda view starts event editor + */ + void setSelectionStartsEditor( bool v ) + { + if (!isSelectionStartsEditorImmutable()) + mSelectionStartsEditor = v; + } + + /** + Get Time range selection in agenda view starts event editor + */ + bool selectionStartsEditor() const + { + return mSelectionStartsEditor; + } + + /** + Is Time range selection in agenda view starts event editor Immutable + */ + bool isSelectionStartsEditorImmutable() const + { + return isImmutable( QStringLiteral( "SelectionStartsEditor" ) ); + } + + /** + Get Item object corresponding to SelectionStartsEditor() + */ + ItemBool *selectionStartsEditorItem() + { + return mSelectionStartsEditorItem; + } + + /** + Set SelectedPlugins + */ + void setSelectedPlugins( const QStringList & v ) + { + if (!isSelectedPluginsImmutable()) + mSelectedPlugins = v; + } + + /** + Get SelectedPlugins + */ + QStringList selectedPlugins() const + { + return mSelectedPlugins; + } + + /** + Is SelectedPlugins Immutable + */ + bool isSelectedPluginsImmutable() const + { + return isImmutable( QStringLiteral( "SelectedPlugins" ) ); + } + + /** + Get Item object corresponding to SelectedPlugins() + */ + ItemStringList *selectedPluginsItem() + { + return mSelectedPluginsItem; + } + + /** + Set Highlight color + */ + void setHighlightColor( const QColor & v ) + { + if (!isHighlightColorImmutable()) + mHighlightColor = v; + } + + /** + Get Highlight color + */ + QColor highlightColor() const + { + return mHighlightColor; + } + + /** + Is Highlight color Immutable + */ + bool isHighlightColorImmutable() const + { + return isImmutable( QStringLiteral( "HighlightColor" ) ); + } + + /** + Get Item object corresponding to HighlightColor() + */ + ItemColor *highlightColorItem() + { + return mHighlightColorItem; + } + + /** + Set Agenda view background color + */ + void setAgendaBgColor( const QColor & v ) + { + if (!isAgendaBgColorImmutable()) + mAgendaBgColor = v; + } + + /** + Get Agenda view background color + */ + QColor agendaBgColor() const + { + return mAgendaBgColor; + } + + /** + Is Agenda view background color Immutable + */ + bool isAgendaBgColorImmutable() const + { + return isImmutable( QStringLiteral( "AgendaBgColor" ) ); + } + + /** + Get Item object corresponding to AgendaBgColor() + */ + ItemColor *agendaBgColorItem() + { + return mAgendaBgColorItem; + } + + /** + Set Time bar + */ + void setTimeBarFont( const QFont & v ) + { + if (!isTimeBarFontImmutable()) + mTimeBarFont = v; + } + + /** + Get Time bar + */ + QFont timeBarFont() const + { + return mTimeBarFont; + } + + /** + Is Time bar Immutable + */ + bool isTimeBarFontImmutable() const + { + return isImmutable( QStringLiteral( "TimeBarFont" ) ); + } + + /** + Get Item object corresponding to TimeBarFont() + */ + ItemFont *timeBarFontItem() + { + return mTimeBarFontItem; + } + + protected: + public: + + // General + bool mAutoSave; + int mAutoSaveInterval; + bool mConfirm; + QString mArchiveFile; + int mDestination; + + // Views + int mHourSize; + bool mSelectionStartsEditor; + + // KOrganizer Plugins + QStringList mSelectedPlugins; + + // Colors + QColor mHighlightColor; + QColor mAgendaBgColor; + + // Fonts + QFont mTimeBarFont; + + private: + ItemBool *mAutoSaveItem; + ItemInt *mAutoSaveIntervalItem; + ItemBool *mConfirmItem; + ItemString *mArchiveFileItem; + ItemEnum *mDestinationItem; + ItemInt *mHourSizeItem; + ItemBool *mSelectionStartsEditorItem; + ItemStringList *mSelectedPluginsItem; + ItemColor *mHighlightColorItem; + ItemColor *mAgendaBgColorItem; + ItemFont *mTimeBarFontItem; +}; + +#endif + diff --git a/autotests/kconfig_compiler/test2.kcfg b/autotests/kconfig_compiler/test2.kcfg new file mode 100644 index 0000000..3b19e27 --- /dev/null +++ b/autotests/kconfig_compiler/test2.kcfg @@ -0,0 +1,78 @@ + + + + + + + + WhatsThis text for AutoSave option + false + + + 10 + + + + true + + + + + + + + + + + + + + + Argl2 Whatsthis + + + + Argl3 Whatsthis + + + standardDestination + + + + + + 10 + + + + false + + + + + + holidays,webexport + + + + + + + 100, 100, 255 + + + + 255, 255, 255 + + + + + + + + + + diff --git a/autotests/kconfig_compiler/test2.kcfgc b/autotests/kconfig_compiler/test2.kcfgc new file mode 100644 index 0000000..40d789d --- /dev/null +++ b/autotests/kconfig_compiler/test2.kcfgc @@ -0,0 +1,11 @@ +# Code generation options for kconfig_compiler_kf6 +File=test2.kcfg +ClassName=Test2 +Singleton=false +Mutators=true +Inherits=MyPrefs +IncludeFiles=myprefs.h +MemberVariables=public +GlobalEnums=true +ItemAccessors=true +SetUserTexts=true diff --git a/autotests/kconfig_compiler/test2main.cpp b/autotests/kconfig_compiler/test2main.cpp new file mode 100644 index 0000000..51d541f --- /dev/null +++ b/autotests/kconfig_compiler/test2main.cpp @@ -0,0 +1,15 @@ +/* + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + + SPDX-License-Identifier: MIT +*/ +#include "test2.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + Test2 t = Test2(); + return 0; +} diff --git a/autotests/kconfig_compiler/test3.cpp.ref b/autotests/kconfig_compiler/test3.cpp.ref new file mode 100644 index 0000000..55651fe --- /dev/null +++ b/autotests/kconfig_compiler/test3.cpp.ref @@ -0,0 +1,29 @@ +// This file is generated by kconfig_compiler_kf6 from test3.kcfg. +// All changes you do to this file will be lost. + +#include "test3.h" + +using namespace TestNameSpace; + +Test3::Test3( ) + : KConfigSkeleton( QStringLiteral( "test3rc" ) ) +{ + setCurrentGroup( QStringLiteral( "General" ) ); + + mAutoSaveItem = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "Auto Save" ), mAutoSave, false ); + addItem( mAutoSaveItem, QStringLiteral( "AutoSave" ) ); + + setCurrentGroup( QStringLiteral( "Blah" ) ); + + mBlubbItem = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "Blubb" ), mBlubb, 10 ); + addItem( mBlubbItem, QStringLiteral( "Blubb" ) ); + mBlahBlahItem = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "BlahBlah" ), mBlahBlah, QStringLiteral( "a string" ) ); + addItem( mBlahBlahItem, QStringLiteral( "BlahBlah" ) ); + mMyPasswordItem = new KConfigSkeleton::ItemPassword( currentGroup(), QStringLiteral( "MyPassword" ), mMyPassword ); + addItem( mMyPasswordItem, QStringLiteral( "MyPassword" ) ); +} + +Test3::~Test3() +{ +} + diff --git a/autotests/kconfig_compiler/test3.h.ref b/autotests/kconfig_compiler/test3.h.ref new file mode 100644 index 0000000..99b7edf --- /dev/null +++ b/autotests/kconfig_compiler/test3.h.ref @@ -0,0 +1,172 @@ +// This file is generated by kconfig_compiler_kf6 from test3.kcfg. +// All changes you do to this file will be lost. +#ifndef TESTNAMESPACE_TEST3_H +#define TESTNAMESPACE_TEST3_H + +#include +#include +#include +#include + +namespace TestNameSpace { + +class Test3 : public KConfigSkeleton +{ + public: + + Test3( ); + ~Test3() override; + + /** + Set Enable automatic saving of calendar + */ + void setAutoSave( bool v ) + { + if (!isAutoSaveImmutable()) + mAutoSave = v; + } + + /** + Get Enable automatic saving of calendar + */ + bool autoSave() const + { + return mAutoSave; + } + + /** + Is Enable automatic saving of calendar Immutable + */ + bool isAutoSaveImmutable() const + { + return isImmutable( QStringLiteral( "AutoSave" ) ); + } + + /** + Get Item object corresponding to AutoSave() + */ + ItemBool *autoSaveItem() + { + return mAutoSaveItem; + } + + /** + Set Blubb + */ + void setBlubb( int v ) + { + if (!isBlubbImmutable()) + mBlubb = v; + } + + /** + Get Blubb + */ + int blubb() const + { + return mBlubb; + } + + /** + Is Blubb Immutable + */ + bool isBlubbImmutable() const + { + return isImmutable( QStringLiteral( "Blubb" ) ); + } + + /** + Get Item object corresponding to Blubb() + */ + ItemInt *blubbItem() + { + return mBlubbItem; + } + + /** + Set BlahBlah + */ + void setBlahBlah( const QString & v ) + { + if (!isBlahBlahImmutable()) + mBlahBlah = v; + } + + /** + Get BlahBlah + */ + QString blahBlah() const + { + return mBlahBlah; + } + + /** + Is BlahBlah Immutable + */ + bool isBlahBlahImmutable() const + { + return isImmutable( QStringLiteral( "BlahBlah" ) ); + } + + /** + Get Item object corresponding to BlahBlah() + */ + ItemString *blahBlahItem() + { + return mBlahBlahItem; + } + + /** + Set MyPassword + */ + void setMyPassword( const QString & v ) + { + if (!isMyPasswordImmutable()) + mMyPassword = v; + } + + /** + Get MyPassword + */ + QString myPassword() const + { + return mMyPassword; + } + + /** + Is MyPassword Immutable + */ + bool isMyPasswordImmutable() const + { + return isImmutable( QStringLiteral( "MyPassword" ) ); + } + + /** + Get Item object corresponding to MyPassword() + */ + ItemPassword *myPasswordItem() + { + return mMyPasswordItem; + } + + protected: + + // General + bool mAutoSave; + + // Blah + int mBlubb; + QString mBlahBlah; + QString mMyPassword; + + private: + ItemBool *mAutoSaveItem; + ItemInt *mBlubbItem; + ItemString *mBlahBlahItem; + ItemPassword *mMyPasswordItem; +}; + +} + +#endif + diff --git a/autotests/kconfig_compiler/test3.kcfg b/autotests/kconfig_compiler/test3.kcfg new file mode 100644 index 0000000..77916da --- /dev/null +++ b/autotests/kconfig_compiler/test3.kcfg @@ -0,0 +1,26 @@ + + + + + + + + WhatsThis text for AutoSave option + false + + + + + + 10 + + + a string + + + + + diff --git a/autotests/kconfig_compiler/test3.kcfgc b/autotests/kconfig_compiler/test3.kcfgc new file mode 100644 index 0000000..15ff6ab --- /dev/null +++ b/autotests/kconfig_compiler/test3.kcfgc @@ -0,0 +1,12 @@ +# Code generation options for kconfig_compiler_kf6 +File=test3.kcfg +NameSpace=TestNameSpace +ClassName=Test3 +#Singleton=false +Mutators=true +#Inherits=MyPrefs +#IncludeFiles=myprefs.h +#MemberVariables=public +GlobalEnums=true +ItemAccessors=true +#SetUserTexts=true diff --git a/autotests/kconfig_compiler/test3a.cpp.ref b/autotests/kconfig_compiler/test3a.cpp.ref new file mode 100644 index 0000000..403924b --- /dev/null +++ b/autotests/kconfig_compiler/test3a.cpp.ref @@ -0,0 +1,29 @@ +// This file is generated by kconfig_compiler_kf6 from test3a.kcfg. +// All changes you do to this file will be lost. + +#include "test3a.h" + +using namespace TestNameSpace::InnerNameSpace; + +Test3a::Test3a( ) + : KConfigSkeleton( QStringLiteral( "test3arc" ) ) +{ + setCurrentGroup( QStringLiteral( "General" ) ); + + mAutoSaveItem = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "Auto Save" ), mAutoSave, false ); + addItem( mAutoSaveItem, QStringLiteral( "AutoSave" ) ); + + setCurrentGroup( QStringLiteral( "Blah" ) ); + + mBlubbItem = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "Blubb" ), mBlubb, 10 ); + addItem( mBlubbItem, QStringLiteral( "Blubb" ) ); + mBlahBlahItem = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "BlahBlah" ), mBlahBlah, QStringLiteral( "a string" ) ); + addItem( mBlahBlahItem, QStringLiteral( "BlahBlah" ) ); + mMyPasswordItem = new KConfigSkeleton::ItemPassword( currentGroup(), QStringLiteral( "MyPassword" ), mMyPassword ); + addItem( mMyPasswordItem, QStringLiteral( "MyPassword" ) ); +} + +Test3a::~Test3a() +{ +} + diff --git a/autotests/kconfig_compiler/test3a.h.ref b/autotests/kconfig_compiler/test3a.h.ref new file mode 100644 index 0000000..d5f0208 --- /dev/null +++ b/autotests/kconfig_compiler/test3a.h.ref @@ -0,0 +1,174 @@ +// This file is generated by kconfig_compiler_kf6 from test3a.kcfg. +// All changes you do to this file will be lost. +#ifndef TESTNAMESPACE_INNERNAMESPACE_TEST3A_H +#define TESTNAMESPACE_INNERNAMESPACE_TEST3A_H + +#include +#include +#include +#include + +namespace TestNameSpace { +namespace InnerNameSpace { + +class Test3a : public KConfigSkeleton +{ + public: + + Test3a( ); + ~Test3a() override; + + /** + Set Enable automatic saving of calendar + */ + void setAutoSave( bool v ) + { + if (!isAutoSaveImmutable()) + mAutoSave = v; + } + + /** + Get Enable automatic saving of calendar + */ + bool autoSave() const + { + return mAutoSave; + } + + /** + Is Enable automatic saving of calendar Immutable + */ + bool isAutoSaveImmutable() const + { + return isImmutable( QStringLiteral( "AutoSave" ) ); + } + + /** + Get Item object corresponding to AutoSave() + */ + ItemBool *autoSaveItem() + { + return mAutoSaveItem; + } + + /** + Set Blubb + */ + void setBlubb( int v ) + { + if (!isBlubbImmutable()) + mBlubb = v; + } + + /** + Get Blubb + */ + int blubb() const + { + return mBlubb; + } + + /** + Is Blubb Immutable + */ + bool isBlubbImmutable() const + { + return isImmutable( QStringLiteral( "Blubb" ) ); + } + + /** + Get Item object corresponding to Blubb() + */ + ItemInt *blubbItem() + { + return mBlubbItem; + } + + /** + Set BlahBlah + */ + void setBlahBlah( const QString & v ) + { + if (!isBlahBlahImmutable()) + mBlahBlah = v; + } + + /** + Get BlahBlah + */ + QString blahBlah() const + { + return mBlahBlah; + } + + /** + Is BlahBlah Immutable + */ + bool isBlahBlahImmutable() const + { + return isImmutable( QStringLiteral( "BlahBlah" ) ); + } + + /** + Get Item object corresponding to BlahBlah() + */ + ItemString *blahBlahItem() + { + return mBlahBlahItem; + } + + /** + Set MyPassword + */ + void setMyPassword( const QString & v ) + { + if (!isMyPasswordImmutable()) + mMyPassword = v; + } + + /** + Get MyPassword + */ + QString myPassword() const + { + return mMyPassword; + } + + /** + Is MyPassword Immutable + */ + bool isMyPasswordImmutable() const + { + return isImmutable( QStringLiteral( "MyPassword" ) ); + } + + /** + Get Item object corresponding to MyPassword() + */ + ItemPassword *myPasswordItem() + { + return mMyPasswordItem; + } + + protected: + + // General + bool mAutoSave; + + // Blah + int mBlubb; + QString mBlahBlah; + QString mMyPassword; + + private: + ItemBool *mAutoSaveItem; + ItemInt *mBlubbItem; + ItemString *mBlahBlahItem; + ItemPassword *mMyPasswordItem; +}; + +} +} + +#endif + diff --git a/autotests/kconfig_compiler/test3a.kcfg b/autotests/kconfig_compiler/test3a.kcfg new file mode 100644 index 0000000..d49b4d6 --- /dev/null +++ b/autotests/kconfig_compiler/test3a.kcfg @@ -0,0 +1,26 @@ + + + + + + + + WhatsThis text for AutoSave option + false + + + + + + 10 + + + a string + + + + + diff --git a/autotests/kconfig_compiler/test3a.kcfgc b/autotests/kconfig_compiler/test3a.kcfgc new file mode 100644 index 0000000..d0ae0a3 --- /dev/null +++ b/autotests/kconfig_compiler/test3a.kcfgc @@ -0,0 +1,12 @@ +# Code generation options for kconfig_compiler_kf6 +File=test3a.kcfg +NameSpace=TestNameSpace::InnerNameSpace +ClassName=Test3a +#Singleton=false +Mutators=true +#Inherits=MyPrefs +#IncludeFiles=myprefs.h +#MemberVariables=public +GlobalEnums=true +ItemAccessors=true +#SetUserTexts=true diff --git a/autotests/kconfig_compiler/test3amain.cpp b/autotests/kconfig_compiler/test3amain.cpp new file mode 100644 index 0000000..c273dee --- /dev/null +++ b/autotests/kconfig_compiler/test3amain.cpp @@ -0,0 +1,15 @@ +/* + SPDX-FileCopyrightText: 2009 Pino Toscano + + SPDX-License-Identifier: MIT +*/ +#include "test3a.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + TestNameSpace::InnerNameSpace::Test3a t = TestNameSpace::InnerNameSpace::Test3a(); + return 0; +} diff --git a/autotests/kconfig_compiler/test3main.cpp b/autotests/kconfig_compiler/test3main.cpp new file mode 100644 index 0000000..b9c4605 --- /dev/null +++ b/autotests/kconfig_compiler/test3main.cpp @@ -0,0 +1,15 @@ +/* + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + + SPDX-License-Identifier: MIT +*/ +#include "test3.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + TestNameSpace::Test3 t = TestNameSpace::Test3(); + return 0; +} diff --git a/autotests/kconfig_compiler/test4.cpp.ref b/autotests/kconfig_compiler/test4.cpp.ref new file mode 100644 index 0000000..e04713c --- /dev/null +++ b/autotests/kconfig_compiler/test4.cpp.ref @@ -0,0 +1,185 @@ +// This file is generated by kconfig_compiler_kf6 from test4.kcfg. +// All changes you do to this file will be lost. + +#include "test4.h" + +#include +#include + +class Test4Helper +{ + public: + Test4Helper() : q(nullptr) {} + ~Test4Helper() { delete q; q = nullptr; } + Test4Helper(const Test4Helper&) = delete; + Test4Helper& operator=(const Test4Helper&) = delete; + Test4 *q; +}; +Q_GLOBAL_STATIC(Test4Helper, s_globalTest4) +Test4 *Test4::self() +{ + if (!s_globalTest4()->q) { + new Test4; + s_globalTest4()->q->read(); + } + + return s_globalTest4()->q; +} + +const char* const Test4::EnumButton::enumToString[] = { "right", "mid", "left" }; + +Test4::Test4( ) + : KConfigSkeleton( QStringLiteral( "test4rc" ) ) +{ + Q_ASSERT(!s_globalTest4()->q); + s_globalTest4()->q = this; + setCurrentGroup( QStringLiteral( "Foo" ) ); + +QColor defaultColor[4] = { Qt::red, Qt::blue, Qt::green, Qt::black }; + KConfigSkeleton::ItemColor *itemColor[4]; + itemColor[0] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "color #0" ), mColor[0], defaultColor[0] ); + addItem( itemColor[0], QStringLiteral( "Color0" ) ); + itemColor[1] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "color #1" ), mColor[1], defaultColor[1] ); + addItem( itemColor[1], QStringLiteral( "Color1" ) ); + itemColor[2] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "color #2" ), mColor[2], defaultColor[2] ); + addItem( itemColor[2], QStringLiteral( "Color2" ) ); + itemColor[3] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "color #3" ), mColor[3], defaultColor[3] ); + addItem( itemColor[3], QStringLiteral( "Color3" ) ); + QList valuesMouseAction; + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("Encrypt"); + valuesMouseAction.append( choice ); + } + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("Decrypt"); + valuesMouseAction.append( choice ); + } + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("CrashNBurn"); + valuesMouseAction.append( choice ); + } + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("PumpNDump"); + valuesMouseAction.append( choice ); + } + KConfigSkeleton::ItemEnum *itemMouseAction[3]; + itemMouseAction[0] = new KConfigSkeleton::ItemEnum( currentGroup(), QStringLiteral( "right_mouse_action" ), mMouseAction[0], valuesMouseAction, EnumMouseAction::Decrypt ); + itemMouseAction[0]->setValueForChoice(QStringLiteral( "CrashNBurn" ), QStringLiteral( "Crash and Burn" )); + addItem( itemMouseAction[0], QStringLiteral( "MouseActionright" ) ); + itemMouseAction[1] = new KConfigSkeleton::ItemEnum( currentGroup(), QStringLiteral( "mid_mouse_action" ), mMouseAction[1], valuesMouseAction, EnumMouseAction::Encrypt ); + itemMouseAction[1]->setValueForChoice(QStringLiteral( "CrashNBurn" ), QStringLiteral( "Crash and Burn" )); + addItem( itemMouseAction[1], QStringLiteral( "MouseActionmid" ) ); + itemMouseAction[2] = new KConfigSkeleton::ItemEnum( currentGroup(), QStringLiteral( "left_mouse_action" ), mMouseAction[2], valuesMouseAction, EnumMouseAction::PumpNDump ); + itemMouseAction[2]->setValueForChoice(QStringLiteral( "CrashNBurn" ), QStringLiteral( "Crash and Burn" )); + addItem( itemMouseAction[2], QStringLiteral( "MouseActionleft" ) ); + KConfigSkeleton::ItemColor *itemGrayColor[11]; + itemGrayColor[0] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "gray color #0" ), mGrayColor[0], + QColor::fromRgbF(0 / 10.0, 0 / 10.0, 0 / 10.0) + ); + addItem( itemGrayColor[0], QStringLiteral( "GrayColor0" ) ); + itemGrayColor[1] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "gray color #1" ), mGrayColor[1], + QColor::fromRgbF(1 / 10.0, 1 / 10.0, 1 / 10.0) + ); + addItem( itemGrayColor[1], QStringLiteral( "GrayColor1" ) ); + itemGrayColor[2] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "gray color #2" ), mGrayColor[2], + QColor::fromRgbF(2 / 10.0, 2 / 10.0, 2 / 10.0) + ); + addItem( itemGrayColor[2], QStringLiteral( "GrayColor2" ) ); + itemGrayColor[3] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "gray color #3" ), mGrayColor[3], + QColor::fromRgbF(3 / 10.0, 3 / 10.0, 3 / 10.0) + ); + addItem( itemGrayColor[3], QStringLiteral( "GrayColor3" ) ); + itemGrayColor[4] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "gray color #4" ), mGrayColor[4], + QColor::fromRgbF(4 / 10.0, 4 / 10.0, 4 / 10.0) + ); + addItem( itemGrayColor[4], QStringLiteral( "GrayColor4" ) ); + itemGrayColor[5] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "gray color #5" ), mGrayColor[5], + QColor::fromRgbF(5 / 10.0, 5 / 10.0, 5 / 10.0) + ); + addItem( itemGrayColor[5], QStringLiteral( "GrayColor5" ) ); + itemGrayColor[6] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "gray color #6" ), mGrayColor[6], + QColor::fromRgbF(6 / 10.0, 6 / 10.0, 6 / 10.0) + ); + addItem( itemGrayColor[6], QStringLiteral( "GrayColor6" ) ); + itemGrayColor[7] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "gray color #7" ), mGrayColor[7], + QColor::fromRgbF(7 / 10.0, 7 / 10.0, 7 / 10.0) + ); + addItem( itemGrayColor[7], QStringLiteral( "GrayColor7" ) ); + itemGrayColor[8] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "gray color #8" ), mGrayColor[8], + QColor::fromRgbF(8 / 10.0, 8 / 10.0, 8 / 10.0) + ); + addItem( itemGrayColor[8], QStringLiteral( "GrayColor8" ) ); + itemGrayColor[9] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "gray color #9" ), mGrayColor[9], + QColor::fromRgbF(9 / 10.0, 9 / 10.0, 9 / 10.0) + ); + addItem( itemGrayColor[9], QStringLiteral( "GrayColor9" ) ); + itemGrayColor[10] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "gray color #10" ), mGrayColor[10], + QColor::fromRgbF(10 / 10.0, 10 / 10.0, 10 / 10.0) + ); + addItem( itemGrayColor[10], QStringLiteral( "GrayColor10" ) ); + KConfigSkeleton::ItemString *itemColorString[11]; + itemColorString[0] = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "color string #0" ), mColorString[0], + QString::number(0) + ); + addItem( itemColorString[0], QStringLiteral( "ColorString0" ) ); + itemColorString[1] = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "color string #1" ), mColorString[1], + QString::number(1) + ); + addItem( itemColorString[1], QStringLiteral( "ColorString1" ) ); + itemColorString[2] = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "color string #2" ), mColorString[2], + QString::number(2) + ); + addItem( itemColorString[2], QStringLiteral( "ColorString2" ) ); + itemColorString[3] = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "color string #3" ), mColorString[3], + QString::number(3) + ); + addItem( itemColorString[3], QStringLiteral( "ColorString3" ) ); + itemColorString[4] = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "color string #4" ), mColorString[4], + QString::number(4) + ); + addItem( itemColorString[4], QStringLiteral( "ColorString4" ) ); + itemColorString[5] = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "color string #5" ), mColorString[5], + QString::number(5) + ); + addItem( itemColorString[5], QStringLiteral( "ColorString5" ) ); + itemColorString[6] = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "color string #6" ), mColorString[6], + QString::number(6) + ); + addItem( itemColorString[6], QStringLiteral( "ColorString6" ) ); + itemColorString[7] = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "color string #7" ), mColorString[7], + QString::number(7) + ); + addItem( itemColorString[7], QStringLiteral( "ColorString7" ) ); + itemColorString[8] = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "color string #8" ), mColorString[8], + QString::number(8) + ); + addItem( itemColorString[8], QStringLiteral( "ColorString8" ) ); + itemColorString[9] = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "color string #9" ), mColorString[9], + QString::number(9) + ); + addItem( itemColorString[9], QStringLiteral( "ColorString9" ) ); + itemColorString[10] = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "color string #10" ), mColorString[10], + QString::number(10) + ); + addItem( itemColorString[10], QStringLiteral( "ColorString10" ) ); + KConfigSkeleton::ItemString *itemFooBar; + itemFooBar = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "foo bar" ), mFooBar ); + addItem( itemFooBar, QStringLiteral( "FooBar" ) ); + KConfigSkeleton::ItemInt *itemAge; + itemAge = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "Age" ), mAge, 35 ); + itemAge->setMinValue(8); + itemAge->setMaxValue(88); + addItem( itemAge, QStringLiteral( "Age" ) ); +} + +Test4::~Test4() +{ + if (s_globalTest4.exists() && !s_globalTest4.isDestroyed()) { + s_globalTest4()->q = nullptr; + } +} + diff --git a/autotests/kconfig_compiler/test4.h.ref b/autotests/kconfig_compiler/test4.h.ref new file mode 100644 index 0000000..938babb --- /dev/null +++ b/autotests/kconfig_compiler/test4.h.ref @@ -0,0 +1,225 @@ +// This file is generated by kconfig_compiler_kf6 from test4.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST4_H +#define TEST4_H + +#include +#include +#include + +class Test4 : public KConfigSkeleton +{ + public: + class EnumMouseAction + { + public: + enum type { Encrypt, Decrypt, CrashNBurn, PumpNDump, COUNT }; + }; + class EnumButton + { + public: + enum type { right, mid, left, COUNT }; + static const char* const enumToString[]; + }; + + static Test4 *self(); + ~Test4() override; + + /** + Set Block colors. + */ + static + void setColor( int i, const QColor & v ) + { + if (!self()->isColorImmutable( i )) + self()->mColor[i] = v; + } + + /** + Get Block colors. + */ + static + QColor color( int i ) + { + return self()->mColor[i]; + } + + /** + Is Block colors. Immutable + */ + static + bool isColorImmutable( int i ) + { + return self()->isImmutable( QStringLiteral( "Color%1" ).arg( i ) ); + } + + /** + Set Mouse actions. + */ + static + void setMouseAction( int i, int v ) + { + if (!self()->isMouseActionImmutable( i )) + self()->mMouseAction[i] = v; + } + + /** + Get Mouse actions. + */ + static + int mouseAction( int i ) + { + return self()->mMouseAction[i]; + } + + /** + Is Mouse actions. Immutable + */ + static + bool isMouseActionImmutable( int i ) + { + return self()->isImmutable( QStringLiteral( "MouseAction%1" ).arg( QLatin1String( EnumButton::enumToString[i] ) ) ); + } + + /** + Set Gray colors. + */ + static + void setGrayColor( int i, const QColor & v ) + { + if (!self()->isGrayColorImmutable( i )) + self()->mGrayColor[i] = v; + } + + /** + Get Gray colors. + */ + static + QColor grayColor( int i ) + { + return self()->mGrayColor[i]; + } + + /** + Is Gray colors. Immutable + */ + static + bool isGrayColorImmutable( int i ) + { + return self()->isImmutable( QStringLiteral( "GrayColor%1" ).arg( i ) ); + } + + /** + Set Gray colors as string. + */ + static + void setColorString( int i, const QString & v ) + { + if (!self()->isColorStringImmutable( i )) + self()->mColorString[i] = v; + } + + /** + Get Gray colors as string. + */ + static + QString colorString( int i ) + { + return self()->mColorString[i]; + } + + /** + Is Gray colors as string. Immutable + */ + static + bool isColorStringImmutable( int i ) + { + return self()->isImmutable( QStringLiteral( "ColorString%1" ).arg( i ) ); + } + + /** + Set foo bar + */ + static + void setFooBar( const QString & v ) + { + if (!self()->isFooBarImmutable()) + self()->mFooBar = v; + } + + /** + Get foo bar + */ + static + QString fooBar() + { + return self()->mFooBar; + } + + /** + Is foo bar Immutable + */ + static + bool isFooBarImmutable() + { + return self()->isImmutable( QStringLiteral( "FooBar" ) ); + } + + /** + Set Age + */ + static + void setAge( int v ) + { + if (v < 8) + { + qDebug() << "setAge: value " << v << " is less than the minimum value of 8"; + v = 8; + } + + if (v > 88) + { + qDebug() << "setAge: value " << v << " is greater than the maximum value of 88"; + v = 88; + } + + if (!self()->isAgeImmutable()) + self()->mAge = v; + } + + /** + Get Age + */ + static + int age() + { + return self()->mAge; + } + + /** + Is Age Immutable + */ + static + bool isAgeImmutable() + { + return self()->isImmutable( QStringLiteral( "Age" ) ); + } + + protected: + Test4(); + friend class Test4Helper; + + + // Foo + QColor mColor[4]; + int mMouseAction[3]; + QColor mGrayColor[11]; + QString mColorString[11]; + QString mFooBar; + int mAge; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test4.kcfg b/autotests/kconfig_compiler/test4.kcfg new file mode 100644 index 0000000..4b40fda --- /dev/null +++ b/autotests/kconfig_compiler/test4.kcfg @@ -0,0 +1,56 @@ + + + + + + + + + QColor defaultColor[4] = { Qt::red, Qt::blue, Qt::green, Qt::black }; + defaultColor[$(Number)] + + + + + right + mid + left + + + + + + + + + + Decrypt + Encrypt + PumpNDump + + + + + + QColor::fromRgbF($(Number) / 10.0, $(Number) / 10.0, $(Number) / 10.0) + + + + + + + QString::number($(Number)) + + + + + 35 + 8 + 88 + + + + diff --git a/autotests/kconfig_compiler/test4.kcfgc b/autotests/kconfig_compiler/test4.kcfgc new file mode 100644 index 0000000..977b2be --- /dev/null +++ b/autotests/kconfig_compiler/test4.kcfgc @@ -0,0 +1,11 @@ +# Code generation options for kconfig_compiler_kf6 +File=test4.kcfg +ClassName=Test4 +Singleton=true +Mutators=true +#Inherits=MyPrefs +#IncludeFiles=myprefs.h +#MemberVariables=public +GlobalEnums=false +ItemAccessors=false +#SetUserTexts=true diff --git a/autotests/kconfig_compiler/test4main.cpp b/autotests/kconfig_compiler/test4main.cpp new file mode 100644 index 0000000..fa9bf7d --- /dev/null +++ b/autotests/kconfig_compiler/test4main.cpp @@ -0,0 +1,31 @@ +/* + SPDX-FileCopyrightText: 2003, 2004 Waldo Bastian + + SPDX-License-Identifier: MIT +*/ + +#include "test4.h" +#include +#include +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + { + KConfig initialConfig(QStringLiteral("test4rc")); + KConfigGroup group = initialConfig.group(QStringLiteral("Foo")); + group.writeEntry(QStringLiteral("foo bar"), QStringLiteral("Value")); + } + Test4 *t = Test4::self(); + const bool ok = QFile::exists(QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation) + QLatin1String{"/test4rc"}); + if (!ok) { + qWarning() << "config file was not created!"; + } + if (t->fooBar() != QLatin1String("Value")) { + qWarning() << "wrong value for foo bar:" << t->fooBar(); + } + delete t; + return ok ? 0 : 1; +} diff --git a/autotests/kconfig_compiler/test5.cpp.ref b/autotests/kconfig_compiler/test5.cpp.ref new file mode 100644 index 0000000..07abf32 --- /dev/null +++ b/autotests/kconfig_compiler/test5.cpp.ref @@ -0,0 +1,96 @@ +// This file is generated by kconfig_compiler_kf6 from test5.kcfg. +// All changes you do to this file will be lost. + +#include "test5.h" + +#include +#include + +class Test5Helper +{ + public: + Test5Helper() : q(nullptr) {} + ~Test5Helper() { delete q; q = nullptr; } + Test5Helper(const Test5Helper&) = delete; + Test5Helper& operator=(const Test5Helper&) = delete; + Test5 *q; +}; +Q_GLOBAL_STATIC(Test5Helper, s_globalTest5) +Test5 *Test5::self() +{ + if (!s_globalTest5()->q) { + new Test5; + s_globalTest5()->q->read(); + } + + return s_globalTest5()->q; +} + +const char* const Test5::EnumButtonToString[] = { "right", "mid", "left" }; + +Test5::Test5( QObject *parent ) + : KConfigSkeleton( QStringLiteral( "test4rc" ) ) +{ + setParent(parent); + Q_ASSERT(!s_globalTest5()->q); + s_globalTest5()->q = this; + setCurrentGroup( QStringLiteral( "Foo" ) ); + +QColor defaultColor[4] = { Qt::red, Qt::blue, Qt::green, Qt::black }; + KConfigSkeleton::ItemColor *itemColor[4]; + itemColor[0] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "color #0" ), mColor[0], defaultColor[0] ); + addItem( itemColor[0], QStringLiteral( "Color0" ) ); + itemColor[1] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "color #1" ), mColor[1], defaultColor[1] ); + addItem( itemColor[1], QStringLiteral( "Color1" ) ); + itemColor[2] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "color #2" ), mColor[2], defaultColor[2] ); + addItem( itemColor[2], QStringLiteral( "Color2" ) ); + itemColor[3] = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "color #3" ), mColor[3], defaultColor[3] ); + addItem( itemColor[3], QStringLiteral( "Color3" ) ); + QList valuesMouseAction; + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("Encrypt"); + valuesMouseAction.append( choice ); + } + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("Decrypt"); + valuesMouseAction.append( choice ); + } + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("CrashNBurn"); + valuesMouseAction.append( choice ); + } + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("PumpNDump"); + valuesMouseAction.append( choice ); + } + KConfigSkeleton::ItemEnum *itemMouseAction[3]; + itemMouseAction[0] = new KConfigSkeleton::ItemEnum( currentGroup(), QStringLiteral( "right_mouse_action" ), mMouseAction[0], valuesMouseAction, Decrypt ); + itemMouseAction[0]->setValueForChoice(QStringLiteral( "CrashNBurn" ), QStringLiteral( "Crash'n Burn" )); + addItem( itemMouseAction[0], QStringLiteral( "MouseActionright" ) ); + itemMouseAction[1] = new KConfigSkeleton::ItemEnum( currentGroup(), QStringLiteral( "mid_mouse_action" ), mMouseAction[1], valuesMouseAction, Encrypt ); + itemMouseAction[1]->setValueForChoice(QStringLiteral( "CrashNBurn" ), QStringLiteral( "Crash'n Burn" )); + addItem( itemMouseAction[1], QStringLiteral( "MouseActionmid" ) ); + itemMouseAction[2] = new KConfigSkeleton::ItemEnum( currentGroup(), QStringLiteral( "left_mouse_action" ), mMouseAction[2], valuesMouseAction, PumpNDump ); + itemMouseAction[2]->setValueForChoice(QStringLiteral( "CrashNBurn" ), QStringLiteral( "Crash'n Burn" )); + addItem( itemMouseAction[2], QStringLiteral( "MouseActionleft" ) ); + KConfigSkeleton::ItemString *itemFooBar; + itemFooBar = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "foo bar" ), mFooBar ); + addItem( itemFooBar, QStringLiteral( "FooBar" ) ); + KConfigSkeleton::ItemInt *itemAge; + itemAge = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "Age" ), mAge, 35 ); + itemAge->setMinValue(8); + itemAge->setMaxValue(88); + addItem( itemAge, QStringLiteral( "Age" ) ); +} + +Test5::~Test5() +{ + if (s_globalTest5.exists() && !s_globalTest5.isDestroyed()) { + s_globalTest5()->q = nullptr; + } +} + diff --git a/autotests/kconfig_compiler/test5.h.ref b/autotests/kconfig_compiler/test5.h.ref new file mode 100644 index 0000000..e116552 --- /dev/null +++ b/autotests/kconfig_compiler/test5.h.ref @@ -0,0 +1,159 @@ +// This file is generated by kconfig_compiler_kf6 from test5.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST5_H +#define TEST5_H + +#include +#include +#include + +class Test5 : public KConfigSkeleton +{ + public: + enum EnumMouseAction { Encrypt, Decrypt, CrashNBurn, PumpNDump }; + enum EnumButton { right, mid, left }; + static const char* const EnumButtonToString[]; + + static Test5 *self(); + ~Test5() override; + + /** + Set Block colors. + */ + static + void setColor( int i, const QColor & v ) + { + if (!self()->isColorImmutable( i )) + self()->mColor[i] = v; + } + + /** + Get Block colors. + */ + static + QColor color( int i ) + { + return self()->mColor[i]; + } + + /** + Is Block colors. Immutable + */ + static + bool isColorImmutable( int i ) + { + return self()->isImmutable( QStringLiteral( "Color%1" ).arg( i ) ); + } + + /** + Set Mouse actions. + */ + static + void setMouseAction( int i, int v ) + { + if (!self()->isMouseActionImmutable( i )) + self()->mMouseAction[i] = v; + } + + /** + Get Mouse actions. + */ + static + int mouseAction( int i ) + { + return self()->mMouseAction[i]; + } + + /** + Is Mouse actions. Immutable + */ + static + bool isMouseActionImmutable( int i ) + { + return self()->isImmutable( QStringLiteral( "MouseAction%1" ).arg( QLatin1String( EnumButtonToString[i] ) ) ); + } + + /** + Set foo bar + */ + static + void setFooBar( const QString & v ) + { + if (!self()->isFooBarImmutable()) + self()->mFooBar = v; + } + + /** + Get foo bar + */ + static + QString fooBar() + { + return self()->mFooBar; + } + + /** + Is foo bar Immutable + */ + static + bool isFooBarImmutable() + { + return self()->isImmutable( QStringLiteral( "FooBar" ) ); + } + + /** + Set Age + */ + static + void setAge( int v ) + { + if (v < 8) + { + qDebug() << "setAge: value " << v << " is less than the minimum value of 8"; + v = 8; + } + + if (v > 88) + { + qDebug() << "setAge: value " << v << " is greater than the maximum value of 88"; + v = 88; + } + + if (!self()->isAgeImmutable()) + self()->mAge = v; + } + + /** + Get Age + */ + static + int age() + { + return self()->mAge; + } + + /** + Is Age Immutable + */ + static + bool isAgeImmutable() + { + return self()->isImmutable( QStringLiteral( "Age" ) ); + } + + protected: + Test5(QObject *parent = nullptr); + friend class Test5Helper; + + + // Foo + QColor mColor[4]; + int mMouseAction[3]; + QString mFooBar; + int mAge; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test5.kcfg b/autotests/kconfig_compiler/test5.kcfg new file mode 100644 index 0000000..4b89450 --- /dev/null +++ b/autotests/kconfig_compiler/test5.kcfg @@ -0,0 +1,42 @@ + + + + + + + + + QColor defaultColor[4] = { Qt::red, Qt::blue, Qt::green, Qt::black }; + defaultColor[$(Number)] + + + + + right + mid + left + + + + + + + + + + Decrypt + Encrypt + PumpNDump + + + + 35 + 8 + 88 + + + + diff --git a/autotests/kconfig_compiler/test5.kcfgc b/autotests/kconfig_compiler/test5.kcfgc new file mode 100644 index 0000000..bd4184b --- /dev/null +++ b/autotests/kconfig_compiler/test5.kcfgc @@ -0,0 +1,12 @@ +# Code generation options for kconfig_compiler_kf6 +File=test5.kcfg +ClassName=Test5 +ParentInConstructor=true +Singleton=true +Mutators=true +#Inherits=MyPrefs +#IncludeFiles=myprefs.h +#MemberVariables=public +GlobalEnums=true +ItemAccessors=false +#SetUserTexts=true diff --git a/autotests/kconfig_compiler/test5main.cpp b/autotests/kconfig_compiler/test5main.cpp new file mode 100644 index 0000000..d3df1c2 --- /dev/null +++ b/autotests/kconfig_compiler/test5main.cpp @@ -0,0 +1,17 @@ +/* + SPDX-FileCopyrightText: 2004 Waldo Bastian + + SPDX-License-Identifier: MIT +*/ + +#include "test5.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + Test5 *t = Test5::self(); + delete t; + return 0; +} diff --git a/autotests/kconfig_compiler/test6.cpp.ref b/autotests/kconfig_compiler/test6.cpp.ref new file mode 100644 index 0000000..f101d75 --- /dev/null +++ b/autotests/kconfig_compiler/test6.cpp.ref @@ -0,0 +1,31 @@ +// This file is generated by kconfig_compiler_kf6 from test6.kcfg. +// All changes you do to this file will be lost. + +#include "test6.h" + +Test6::Test6( const QString & Number ) + : KConfigSkeleton( QStringLiteral( "test4rc" ) ) + , mParamNumber(Number) +{ + setCurrentGroup( QStringLiteral( "Foo" ) ); + + KConfigSkeleton::ItemColor *itemColor; + itemColor = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "color #%1" ).arg( mParamNumber ), mColor, QColor( "red" ) ); + addItem( itemColor, QStringLiteral( "Color" ) ); + + setCurrentGroup( QStringLiteral( "Bar%1" ).arg( mParamNumber ) ); + + KConfigSkeleton::ItemString *itemFooBar; + itemFooBar = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "foo bar" ), mFooBar ); + addItem( itemFooBar, QStringLiteral( "FooBar" ) ); + KConfigSkeleton::ItemInt *itemAge; + itemAge = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "Age" ), mAge, 35 ); + itemAge->setMinValue(8); + itemAge->setMaxValue(88); + addItem( itemAge, QStringLiteral( "Age" ) ); +} + +Test6::~Test6() +{ +} + diff --git a/autotests/kconfig_compiler/test6.h.ref b/autotests/kconfig_compiler/test6.h.ref new file mode 100644 index 0000000..6c44669 --- /dev/null +++ b/autotests/kconfig_compiler/test6.h.ref @@ -0,0 +1,118 @@ +// This file is generated by kconfig_compiler_kf6 from test6.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST6_H +#define TEST6_H + +#include +#include +#include + +class Test6 : public KConfigSkeleton +{ + public: + + Test6( const QString & Number ); + ~Test6() override; + + /** + Set Block colors. + */ + void setColor( const QColor & v ) + { + if (!isColorImmutable()) + mColor = v; + } + + /** + Get Block colors. + */ + QColor color() const + { + return mColor; + } + + /** + Is Block colors. Immutable + */ + bool isColorImmutable() const + { + return isImmutable( QStringLiteral( "Color" ) ); + } + + /** + Set foo bar + */ + void setFooBar( const QString & v ) + { + if (!isFooBarImmutable()) + mFooBar = v; + } + + /** + Get foo bar + */ + QString fooBar() const + { + return mFooBar; + } + + /** + Is foo bar Immutable + */ + bool isFooBarImmutable() const + { + return isImmutable( QStringLiteral( "FooBar" ) ); + } + + /** + Set Age + */ + void setAge( int v ) + { + if (v < 8) + { + qDebug() << "setAge: value " << v << " is less than the minimum value of 8"; + v = 8; + } + + if (v > 88) + { + qDebug() << "setAge: value " << v << " is greater than the maximum value of 88"; + v = 88; + } + + if (!isAgeImmutable()) + mAge = v; + } + + /** + Get Age + */ + int age() const + { + return mAge; + } + + /** + Is Age Immutable + */ + bool isAgeImmutable() const + { + return isImmutable( QStringLiteral( "Age" ) ); + } + + protected: + QString mParamNumber; + + // Foo + QColor mColor; + + // Bar$(Number) + QString mFooBar; + int mAge; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test6.kcfg b/autotests/kconfig_compiler/test6.kcfg new file mode 100644 index 0000000..e59fa88 --- /dev/null +++ b/autotests/kconfig_compiler/test6.kcfg @@ -0,0 +1,25 @@ + + + + + + + + + + red + + + + + + 35 + 8 + 88 + + + + diff --git a/autotests/kconfig_compiler/test6.kcfgc b/autotests/kconfig_compiler/test6.kcfgc new file mode 100644 index 0000000..54ffa60 --- /dev/null +++ b/autotests/kconfig_compiler/test6.kcfgc @@ -0,0 +1,11 @@ +# Code generation options for kconfig_compiler_kf6 +File=test6.kcfg +ClassName=Test6 +Singleton=false +Mutators=true +#Inherits=MyPrefs +#IncludeFiles=myprefs.h +#MemberVariables=public +GlobalEnums=true +ItemAccessors=false +#SetUserTexts=true diff --git a/autotests/kconfig_compiler/test6main.cpp b/autotests/kconfig_compiler/test6main.cpp new file mode 100644 index 0000000..2053b1d --- /dev/null +++ b/autotests/kconfig_compiler/test6main.cpp @@ -0,0 +1,16 @@ +/* + SPDX-FileCopyrightText: 2004 Waldo Bastian + + SPDX-License-Identifier: MIT +*/ + +#include "test6.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + Test6 t = Test6(QString()); + return 0; +} diff --git a/autotests/kconfig_compiler/test7.cpp.ref b/autotests/kconfig_compiler/test7.cpp.ref new file mode 100644 index 0000000..7055c8c --- /dev/null +++ b/autotests/kconfig_compiler/test7.cpp.ref @@ -0,0 +1,31 @@ +// This file is generated by kconfig_compiler_kf6 from test7.kcfg. +// All changes you do to this file will be lost. + +#include "test7.h" + +Test7::Test7( int Number ) + : KConfigSkeleton( QStringLiteral( "test7rc" ) ) + , mParamNumber(Number) +{ + setCurrentGroup( QStringLiteral( "Foo" ) ); + + KConfigSkeleton::ItemColor *itemColor; + itemColor = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "color #%1" ).arg( mParamNumber ), mColor, QColor( "red" ) ); + addItem( itemColor, QStringLiteral( "Color" ) ); + + setCurrentGroup( QStringLiteral( "Bar%1" ).arg( mParamNumber ) ); + + KConfigSkeleton::ItemString *itemFooBar; + itemFooBar = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "foo bar" ), mFooBar ); + addItem( itemFooBar, QStringLiteral( "FooBar" ) ); + KConfigSkeleton::ItemInt *itemAge; + itemAge = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "Age" ), mAge, 35 ); + itemAge->setMinValue(8); + itemAge->setMaxValue(88); + addItem( itemAge, QStringLiteral( "Age" ) ); +} + +Test7::~Test7() +{ +} + diff --git a/autotests/kconfig_compiler/test7.h.ref b/autotests/kconfig_compiler/test7.h.ref new file mode 100644 index 0000000..65166aa --- /dev/null +++ b/autotests/kconfig_compiler/test7.h.ref @@ -0,0 +1,118 @@ +// This file is generated by kconfig_compiler_kf6 from test7.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST7_H +#define TEST7_H + +#include +#include +#include + +class Test7 : public KConfigSkeleton +{ + public: + + Test7( int Number ); + ~Test7() override; + + /** + Set Block colors. + */ + void setColor( const QColor & v ) + { + if (!isColorImmutable()) + mColor = v; + } + + /** + Get Block colors. + */ + QColor color() const + { + return mColor; + } + + /** + Is Block colors. Immutable + */ + bool isColorImmutable() const + { + return isImmutable( QStringLiteral( "Color" ) ); + } + + /** + Set foo bar + */ + void setFooBar( const QString & v ) + { + if (!isFooBarImmutable()) + mFooBar = v; + } + + /** + Get foo bar + */ + QString fooBar() const + { + return mFooBar; + } + + /** + Is foo bar Immutable + */ + bool isFooBarImmutable() const + { + return isImmutable( QStringLiteral( "FooBar" ) ); + } + + /** + Set Age + */ + void setAge( int v ) + { + if (v < 8) + { + qDebug() << "setAge: value " << v << " is less than the minimum value of 8"; + v = 8; + } + + if (v > 88) + { + qDebug() << "setAge: value " << v << " is greater than the maximum value of 88"; + v = 88; + } + + if (!isAgeImmutable()) + mAge = v; + } + + /** + Get Age + */ + int age() const + { + return mAge; + } + + /** + Is Age Immutable + */ + bool isAgeImmutable() const + { + return isImmutable( QStringLiteral( "Age" ) ); + } + + protected: + int mParamNumber; + + // Foo + QColor mColor; + + // Bar$(Number) + QString mFooBar; + int mAge; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test7.kcfg b/autotests/kconfig_compiler/test7.kcfg new file mode 100644 index 0000000..0a7fd32 --- /dev/null +++ b/autotests/kconfig_compiler/test7.kcfg @@ -0,0 +1,25 @@ + + + + + + + + + + red + + + + + + 35 + 8 + 88 + + + + diff --git a/autotests/kconfig_compiler/test7.kcfgc b/autotests/kconfig_compiler/test7.kcfgc new file mode 100644 index 0000000..4aeca65 --- /dev/null +++ b/autotests/kconfig_compiler/test7.kcfgc @@ -0,0 +1,11 @@ +# Code generation options for kconfig_compiler_kf6 +File=test7.kcfg +ClassName=Test7 +Singleton=false +Mutators=true +#Inherits=MyPrefs +#IncludeFiles=myprefs.h +#MemberVariables=public +GlobalEnums=true +ItemAccessors=false +#SetUserTexts=true diff --git a/autotests/kconfig_compiler/test7main.cpp b/autotests/kconfig_compiler/test7main.cpp new file mode 100644 index 0000000..035face --- /dev/null +++ b/autotests/kconfig_compiler/test7main.cpp @@ -0,0 +1,16 @@ +/* + SPDX-FileCopyrightText: 2004 Waldo Bastian + + SPDX-License-Identifier: MIT +*/ + +#include "test7.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + Test7 t = Test7(42); + return 0; +} diff --git a/autotests/kconfig_compiler/test8a.cpp.ref b/autotests/kconfig_compiler/test8a.cpp.ref new file mode 100644 index 0000000..a4a69c9 --- /dev/null +++ b/autotests/kconfig_compiler/test8a.cpp.ref @@ -0,0 +1,23 @@ +// This file is generated by kconfig_compiler_kf6 from test8a.kcfg. +// All changes you do to this file will be lost. + +#include "test8a.h" + +Test8a::Test8a( KSharedConfig::Ptr config, QObject *parent ) + : KConfigSkeleton( std::move( config ) ) +{ + setParent(parent); + setCurrentGroup( QStringLiteral( "Group" ) ); + + KConfigSkeleton::ItemFont *itemFont; + itemFont = new KConfigSkeleton::ItemFont( currentGroup(), QStringLiteral( "Font" ), mFont, QFont() ); + addItem( itemFont, QStringLiteral( "Font" ) ); + KConfigSkeleton::ItemFont *itemTitleFont; + itemTitleFont = new KConfigSkeleton::ItemFont( currentGroup(), QStringLiteral( "TitleFont" ), mTitleFont, QFont() ); + addItem( itemTitleFont, QStringLiteral( "TitleFont" ) ); +} + +Test8a::~Test8a() +{ +} + diff --git a/autotests/kconfig_compiler/test8a.h.ref b/autotests/kconfig_compiler/test8a.h.ref new file mode 100644 index 0000000..e95fa6b --- /dev/null +++ b/autotests/kconfig_compiler/test8a.h.ref @@ -0,0 +1,78 @@ +// This file is generated by kconfig_compiler_kf6 from test8a.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST8A_H +#define TEST8A_H + +#include +#include +#include +#include + +class Test8a : public KConfigSkeleton +{ + public: + + Test8a( KSharedConfig::Ptr config = KSharedConfig::openConfig(), QObject *parent = nullptr ); + ~Test8a() override; + + /** + Set Font + */ + void setFont( const QFont & v ) + { + if (!isFontImmutable()) + mFont = v; + } + + /** + Get Font + */ + QFont font() const + { + return mFont; + } + + /** + Is Font Immutable + */ + bool isFontImmutable() const + { + return isImmutable( QStringLiteral( "Font" ) ); + } + + /** + Set TitleFont + */ + void setTitleFont( const QFont & v ) + { + if (!isTitleFontImmutable()) + mTitleFont = v; + } + + /** + Get TitleFont + */ + QFont titleFont() const + { + return mTitleFont; + } + + /** + Is TitleFont Immutable + */ + bool isTitleFontImmutable() const + { + return isImmutable( QStringLiteral( "TitleFont" ) ); + } + + protected: + + // Group + QFont mFont; + QFont mTitleFont; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test8a.kcfg b/autotests/kconfig_compiler/test8a.kcfg new file mode 100644 index 0000000..24038a6 --- /dev/null +++ b/autotests/kconfig_compiler/test8a.kcfg @@ -0,0 +1,17 @@ + + + + + + + QFont() + + + + QFont() + + + diff --git a/autotests/kconfig_compiler/test8a.kcfgc b/autotests/kconfig_compiler/test8a.kcfgc new file mode 100644 index 0000000..90abfcb --- /dev/null +++ b/autotests/kconfig_compiler/test8a.kcfgc @@ -0,0 +1,4 @@ +File=test8a.kcfg +ClassName=Test8a +ParentInConstructor=true +Mutators=true diff --git a/autotests/kconfig_compiler/test8b.cpp.ref b/autotests/kconfig_compiler/test8b.cpp.ref new file mode 100644 index 0000000..599cc18 --- /dev/null +++ b/autotests/kconfig_compiler/test8b.cpp.ref @@ -0,0 +1,56 @@ +// This file is generated by kconfig_compiler_kf6 from test8b.kcfg. +// All changes you do to this file will be lost. + +#include "test8b.h" + +#include +#include + +class Test8bHelper +{ + public: + Test8bHelper() : q(nullptr) {} + ~Test8bHelper() { delete q; q = nullptr; } + Test8bHelper(const Test8bHelper&) = delete; + Test8bHelper& operator=(const Test8bHelper&) = delete; + Test8b *q; +}; +Q_GLOBAL_STATIC(Test8bHelper, s_globalTest8b) +Test8b *Test8b::self() +{ + if (!s_globalTest8b()->q) { + new Test8b; + s_globalTest8b()->q->read(); + } + + return s_globalTest8b()->q; +} + +Test8b::Test8b( ) + : Test8a() +{ + Q_ASSERT(!s_globalTest8b()->q); + s_globalTest8b()->q = this; + setCurrentGroup( QStringLiteral( "Group8b1" ) ); + + Test8a::ItemUInt *itemSomething; + itemSomething = new Test8a::ItemUInt( currentGroup(), QStringLiteral( "Something" ), mSomething, 60 ); + addItem( itemSomething, QStringLiteral( "Something" ) ); + + setCurrentGroup( QStringLiteral( "Group8b2" ) ); + + Test8a::ItemBool *itemFooBoo; + itemFooBoo = new Test8a::ItemBool( currentGroup(), QStringLiteral( "FooBoo" ), mFooBoo, false ); + addItem( itemFooBoo, QStringLiteral( "FooBoo" ) ); + Test8a::ItemUInt *itemPort; + itemPort = new Test8a::ItemUInt( currentGroup(), QStringLiteral( "Port" ), mPort, 1000 ); + addItem( itemPort, QStringLiteral( "Port" ) ); +} + +Test8b::~Test8b() +{ + if (s_globalTest8b.exists() && !s_globalTest8b.isDestroyed()) { + s_globalTest8b()->q = nullptr; + } +} + diff --git a/autotests/kconfig_compiler/test8b.h.ref b/autotests/kconfig_compiler/test8b.h.ref new file mode 100644 index 0000000..f2e7d6f --- /dev/null +++ b/autotests/kconfig_compiler/test8b.h.ref @@ -0,0 +1,119 @@ +// This file is generated by kconfig_compiler_kf6 from test8b.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST8B_H +#define TEST8B_H + +#include + +#include +#include +#include + +class Test8b : public Test8a +{ + public: + + static Test8b *self(); + ~Test8b() override; + + /** + Set Something + */ + static + void setSomething( uint v ) + { + if (!self()->isSomethingImmutable()) + self()->mSomething = v; + } + + /** + Get Something + */ + static + uint something() + { + return self()->mSomething; + } + + /** + Is Something Immutable + */ + static + bool isSomethingImmutable() + { + return self()->isImmutable( QStringLiteral( "Something" ) ); + } + + /** + Set FooBoo + */ + static + void setFooBoo( bool v ) + { + if (!self()->isFooBooImmutable()) + self()->mFooBoo = v; + } + + /** + Get FooBoo + */ + static + bool fooBoo() + { + return self()->mFooBoo; + } + + /** + Is FooBoo Immutable + */ + static + bool isFooBooImmutable() + { + return self()->isImmutable( QStringLiteral( "FooBoo" ) ); + } + + /** + Set Port + */ + static + void setPort( uint v ) + { + if (!self()->isPortImmutable()) + self()->mPort = v; + } + + /** + Get Port + */ + static + uint port() + { + return self()->mPort; + } + + /** + Is Port Immutable + */ + static + bool isPortImmutable() + { + return self()->isImmutable( QStringLiteral( "Port" ) ); + } + + protected: + Test8b(); + friend class Test8bHelper; + + + // Group8b1 + uint mSomething; + + // Group8b2 + bool mFooBoo; + uint mPort; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test8b.kcfg b/autotests/kconfig_compiler/test8b.kcfg new file mode 100644 index 0000000..3e203a1 --- /dev/null +++ b/autotests/kconfig_compiler/test8b.kcfg @@ -0,0 +1,21 @@ + + + + + 60 + + + + + + false + + + + 1000 + + + diff --git a/autotests/kconfig_compiler/test8b.kcfgc b/autotests/kconfig_compiler/test8b.kcfgc new file mode 100644 index 0000000..7be0552 --- /dev/null +++ b/autotests/kconfig_compiler/test8b.kcfgc @@ -0,0 +1,6 @@ +File=test8b.kcfg +ClassName=Test8b +Mutators=true +Singleton=true +IncludeFiles=test8a.h +Inherits=Test8a diff --git a/autotests/kconfig_compiler/test8c.cpp.ref b/autotests/kconfig_compiler/test8c.cpp.ref new file mode 100644 index 0000000..7405da0 --- /dev/null +++ b/autotests/kconfig_compiler/test8c.cpp.ref @@ -0,0 +1,70 @@ +// This file is generated by kconfig_compiler_kf6 from test8c.kcfg. +// All changes you do to this file will be lost. + +#include "test8c.h" + +#include +#include + +#include + +class Test8cHelper +{ + public: + Test8cHelper() : q(nullptr) {} + ~Test8cHelper() { delete q; q = nullptr; } + Test8cHelper(const Test8cHelper&) = delete; + Test8cHelper& operator=(const Test8cHelper&) = delete; + Test8c *q; +}; +Q_GLOBAL_STATIC(Test8cHelper, s_globalTest8c) +Test8c *Test8c::self() +{ + if (!s_globalTest8c()->q) + qFatal("you need to call Test8c::instance before using"); + return s_globalTest8c()->q; +} + +void Test8c::instance(const QString& cfgfilename) +{ + if (s_globalTest8c()->q) { + qDebug() << "Test8c::instance called after the first use - ignoring"; + return; + } + new Test8c(KSharedConfig::openConfig(cfgfilename)); + s_globalTest8c()->q->read(); +} + +void Test8c::instance(KSharedConfig::Ptr config) +{ + if (s_globalTest8c()->q) { + qDebug() << "Test8c::instance called after the first use - ignoring"; + return; + } + new Test8c(std::move(config)); + s_globalTest8c()->q->read(); +} + +Test8c::Test8c( KSharedConfig::Ptr config, QObject *parent ) + : KConfigSkeleton( std::move( config ) ) +{ + setParent(parent); + Q_ASSERT(!s_globalTest8c()->q); + s_globalTest8c()->q = this; + setCurrentGroup( QStringLiteral( "Group" ) ); + + KConfigSkeleton::ItemFont *itemFont; + itemFont = new KConfigSkeleton::ItemFont( currentGroup(), QStringLiteral( "Font" ), mFont, QFont() ); + addItem( itemFont, QStringLiteral( "Font" ) ); + KConfigSkeleton::ItemFont *itemTitleFont; + itemTitleFont = new KConfigSkeleton::ItemFont( currentGroup(), QStringLiteral( "TitleFont" ), mTitleFont, QFont() ); + addItem( itemTitleFont, QStringLiteral( "TitleFont" ) ); +} + +Test8c::~Test8c() +{ + if (s_globalTest8c.exists() && !s_globalTest8c.isDestroyed()) { + s_globalTest8c()->q = nullptr; + } +} + diff --git a/autotests/kconfig_compiler/test8c.h.ref b/autotests/kconfig_compiler/test8c.h.ref new file mode 100644 index 0000000..6367683 --- /dev/null +++ b/autotests/kconfig_compiler/test8c.h.ref @@ -0,0 +1,88 @@ +// This file is generated by kconfig_compiler_kf6 from test8c.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST8C_H +#define TEST8C_H + +#include +#include +#include + +class Test8c : public KConfigSkeleton +{ + public: + + static Test8c *self(); + static void instance(const QString& cfgfilename); + static void instance(KSharedConfig::Ptr config); + ~Test8c() override; + + /** + Set Font + */ + static + void setFont( const QFont & v ) + { + if (!self()->isFontImmutable()) + self()->mFont = v; + } + + /** + Get Font + */ + static + QFont font() + { + return self()->mFont; + } + + /** + Is Font Immutable + */ + static + bool isFontImmutable() + { + return self()->isImmutable( QStringLiteral( "Font" ) ); + } + + /** + Set TitleFont + */ + static + void setTitleFont( const QFont & v ) + { + if (!self()->isTitleFontImmutable()) + self()->mTitleFont = v; + } + + /** + Get TitleFont + */ + static + QFont titleFont() + { + return self()->mTitleFont; + } + + /** + Is TitleFont Immutable + */ + static + bool isTitleFontImmutable() + { + return self()->isImmutable( QStringLiteral( "TitleFont" ) ); + } + + protected: + Test8c(KSharedConfig::Ptr config, QObject *parent = nullptr); + friend class Test8cHelper; + + + // Group + QFont mFont; + QFont mTitleFont; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test8c.kcfg b/autotests/kconfig_compiler/test8c.kcfg new file mode 100644 index 0000000..24038a6 --- /dev/null +++ b/autotests/kconfig_compiler/test8c.kcfg @@ -0,0 +1,17 @@ + + + + + + + QFont() + + + + QFont() + + + diff --git a/autotests/kconfig_compiler/test8c.kcfgc b/autotests/kconfig_compiler/test8c.kcfgc new file mode 100644 index 0000000..7c1ba85 --- /dev/null +++ b/autotests/kconfig_compiler/test8c.kcfgc @@ -0,0 +1,5 @@ +File=test8c.kcfg +ClassName=Test8c +ParentInConstructor=true +Mutators=true +Singleton=true diff --git a/autotests/kconfig_compiler/test8main.cpp b/autotests/kconfig_compiler/test8main.cpp new file mode 100644 index 0000000..959efe2 --- /dev/null +++ b/autotests/kconfig_compiler/test8main.cpp @@ -0,0 +1,24 @@ +/* + SPDX-FileCopyrightText: 2005 Michael Brade + + SPDX-License-Identifier: MIT +*/ + +#include "test8a.h" +#include "test8b.h" +#include "test8c.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + Test8a *config1 = new Test8a(KSharedConfig::openConfig(QString())); + Test8a *config2 = new Test8a(); + Test8b::self(); + Test8c::instance(KSharedConfig::openConfig(QString())); + Test8c::self(); + delete config1; + delete config2; + return 0; +} diff --git a/autotests/kconfig_compiler/test9.cpp.ref b/autotests/kconfig_compiler/test9.cpp.ref new file mode 100644 index 0000000..f0b23fc --- /dev/null +++ b/autotests/kconfig_compiler/test9.cpp.ref @@ -0,0 +1,35 @@ +// This file is generated by kconfig_compiler_kf6 from test9.kcfg. +// All changes you do to this file will be lost. + +#include "test9.h" + +Test9::Test9( const QString & transport, const QString & folder ) + : KConfigSkeleton( QStringLiteral( "examplerc" ) ) + , mParamtransport(transport) + , mParamfolder(folder) +{ + setCurrentGroup( QStringLiteral( "MyOptionsXX" ) ); + + QStringList defaultMyStringList; + defaultMyStringList.append( QString::fromUtf8( "up" ) ); + defaultMyStringList.append( QString::fromUtf8( "down" ) ); + + KConfigSkeleton::ItemStringList *itemMyStringList; + itemMyStringList = new KConfigSkeleton::ItemStringList( currentGroup(), QStringLiteral( "MyStringList" ), mMyStringList, defaultMyStringList ); + addItem( itemMyStringList, QStringLiteral( "MyStringList" ) ); + QStringList defaultMyPathList; + defaultMyPathList.append( QString::fromUtf8( "/home" ) ); + defaultMyPathList.append( QString::fromUtf8( "~" ) ); + + KConfigSkeleton::ItemPathList *itemMyPathList; + itemMyPathList = new KConfigSkeleton::ItemPathList( currentGroup(), QStringLiteral( "MyPathList" ), mMyPathList, defaultMyPathList ); + addItem( itemMyPathList, QStringLiteral( "MyPathList" ) ); + KConfigSkeleton::ItemPathList *itemMyPathsList2; + itemMyPathsList2 = new KConfigSkeleton::ItemPathList( currentGroup(), QStringLiteral( "MyPathsList2" ), mMyPathsList2, QStringList(QString::fromLatin1("/usr/bin")) << QDir::homePath() ); + addItem( itemMyPathsList2, QStringLiteral( "MyPathsList2" ) ); +} + +Test9::~Test9() +{ +} + diff --git a/autotests/kconfig_compiler/test9.h.ref b/autotests/kconfig_compiler/test9.h.ref new file mode 100644 index 0000000..811adcb --- /dev/null +++ b/autotests/kconfig_compiler/test9.h.ref @@ -0,0 +1,108 @@ +// This file is generated by kconfig_compiler_kf6 from test9.kcfg. +// All changes you do to this file will be lost. +#ifndef TEST9_H +#define TEST9_H + +#include +#include +#include + +#include + +class Test9 : public KConfigSkeleton +{ + public: + + Test9( const QString & transport, const QString & folder ); + ~Test9() override; + + /** + Set MyStringList + */ + void setMyStringList( const QStringList & v ) + { + if (!isMyStringListImmutable()) + mMyStringList = v; + } + + /** + Get MyStringList + */ + QStringList myStringList() const + { + return mMyStringList; + } + + /** + Is MyStringList Immutable + */ + bool isMyStringListImmutable() const + { + return isImmutable( QStringLiteral( "MyStringList" ) ); + } + + /** + Set This is a list of paths + */ + void setMyPathList( const QStringList & v ) + { + if (!isMyPathListImmutable()) + mMyPathList = v; + } + + /** + Get This is a list of paths + */ + QStringList myPathList() const + { + return mMyPathList; + } + + /** + Is This is a list of paths Immutable + */ + bool isMyPathListImmutable() const + { + return isImmutable( QStringLiteral( "MyPathList" ) ); + } + + /** + Set This is an additional test for PathList + */ + void setMyPathsList2( const QStringList & v ) + { + if (!isMyPathsList2Immutable()) + mMyPathsList2 = v; + } + + /** + Get This is an additional test for PathList + */ + QStringList myPathsList2() const + { + return mMyPathsList2; + } + + /** + Is This is an additional test for PathList Immutable + */ + bool isMyPathsList2Immutable() const + { + return isImmutable( QStringLiteral( "MyPathsList2" ) ); + } + + protected: + public: + QString mParamtransport; + QString mParamfolder; + + // MyOptionsXX + QStringList mMyStringList; + QStringList mMyPathList; + QStringList mMyPathsList2; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test9.kcfg b/autotests/kconfig_compiler/test9.kcfg new file mode 100644 index 0000000..73e96f4 --- /dev/null +++ b/autotests/kconfig_compiler/test9.kcfg @@ -0,0 +1,24 @@ + + + qdir.h + + + + + + + up,down + + + + /home,~ + + + + QStringList(QString::fromLatin1("/usr/bin")) << QDir::homePath() + + + diff --git a/autotests/kconfig_compiler/test9.kcfgc b/autotests/kconfig_compiler/test9.kcfgc new file mode 100644 index 0000000..e684e47 --- /dev/null +++ b/autotests/kconfig_compiler/test9.kcfgc @@ -0,0 +1,19 @@ +# Code generation options for kconfig_compiler_kf6 +ClassName=Test9 +File=test9.kcfg +# +# Singleton=false +# +# Inherits=KConfigSkeleton +# +# IncludeFiles=libkdepim/kpimprefs.h +# +MemberVariables=public +# +### The following line includes the file exampleprefs_base_addon.h +### It can be used to add extra functions and variables to the +### class. +# CustomAdditions=true +# +### Provide setFooBar(int) style functions +Mutators=true diff --git a/autotests/kconfig_compiler/test9main.cpp b/autotests/kconfig_compiler/test9main.cpp new file mode 100644 index 0000000..0a7256f --- /dev/null +++ b/autotests/kconfig_compiler/test9main.cpp @@ -0,0 +1,31 @@ +/* + SPDX-FileCopyrightText: 2005 Helge Deller + + SPDX-License-Identifier: MIT +*/ + +#include "test9.h" +#include +#include +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + Test9 *t = new Test9(QString(), QString()); + + QStringList myPathsList2 = t->myPathsList2(); + qWarning() << myPathsList2; + + // add another path + QStringList newlist; + myPathsList2 << QDir::homePath() + QLatin1String("/.kde"); + qWarning() << myPathsList2; + + t->setMyPathsList2(myPathsList2); + qWarning() << t->myPathsList2(); + + delete t; + return 0; +} diff --git a/autotests/kconfig_compiler/test_dpointer.cpp.ref b/autotests/kconfig_compiler/test_dpointer.cpp.ref new file mode 100644 index 0000000..38b31d4 --- /dev/null +++ b/autotests/kconfig_compiler/test_dpointer.cpp.ref @@ -0,0 +1,421 @@ +// This file is generated by kconfig_compiler_kf6 from test_dpointer.kcfg. +// All changes you do to this file will be lost. + +#include "test_dpointer.h" + +#include +#include + +class TestDPointerPrivate +{ + public: + + // General + bool autoSave; + int autoSaveInterval; + bool confirm; + QString archiveFile; + int destination; + + // Views + int hourSize; + bool selectionStartsEditor; + + // KOrganizer Plugins + QStringList selectedPlugins; + + // Colors + QColor highlightColor; + QColor agendaBgColor; + + // Fonts + QFont timeBarFont; + + // items + KConfigSkeleton::ItemBool *autoSaveItem; + KConfigSkeleton::ItemInt *autoSaveIntervalItem; + KConfigSkeleton::ItemBool *confirmItem; + KConfigSkeleton::ItemString *archiveFileItem; + KConfigSkeleton::ItemEnum *destinationItem; + KConfigSkeleton::ItemInt *hourSizeItem; + KConfigSkeleton::ItemBool *selectionStartsEditorItem; + KConfigSkeleton::ItemStringList *selectedPluginsItem; + KConfigSkeleton::ItemColor *highlightColorItem; + KConfigSkeleton::ItemColor *agendaBgColorItem; + KConfigSkeleton::ItemFont *timeBarFontItem; +}; + +class TestDPointerHelper +{ + public: + TestDPointerHelper() : q(nullptr) {} + ~TestDPointerHelper() { delete q; q = nullptr; } + TestDPointerHelper(const TestDPointerHelper&) = delete; + TestDPointerHelper& operator=(const TestDPointerHelper&) = delete; + TestDPointer *q; +}; +Q_GLOBAL_STATIC(TestDPointerHelper, s_globalTestDPointer) +TestDPointer *TestDPointer::self() +{ + if (!s_globalTestDPointer()->q) { + new TestDPointer; + s_globalTestDPointer()->q->read(); + } + + return s_globalTestDPointer()->q; +} + +TestDPointer::TestDPointer( ) + : KConfigSkeleton( QStringLiteral( "korganizerrc" ) ) +{ + d = new TestDPointerPrivate; + Q_ASSERT(!s_globalTestDPointer()->q); + s_globalTestDPointer()->q = this; + setCurrentGroup( QStringLiteral( "General" ) ); + + d->autoSaveItem = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "Auto Save" ), d->autoSave, false ); + d->autoSaveItem->setLabel( QCoreApplication::translate("TestDPointer", "Enable automatic saving of calendar") ); + d->autoSaveItem->setWhatsThis( QCoreApplication::translate("TestDPointer", "WhatsThis text for AutoSave option") ); + addItem( d->autoSaveItem, QStringLiteral( "AutoSave" ) ); + d->autoSaveIntervalItem = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "Auto Save Interval" ), d->autoSaveInterval, 10 ); + d->autoSaveIntervalItem->setMinValue(0); + d->autoSaveIntervalItem->setMaxValue(123); + d->autoSaveIntervalItem->setLabel( QCoreApplication::translate("TestDPointer", "Auto Save Interval") ); + addItem( d->autoSaveIntervalItem, QStringLiteral( "AutoSaveInterval" ) ); + d->confirmItem = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "Confirm Deletes" ), d->confirm, true ); + d->confirmItem->setLabel( QCoreApplication::translate("TestDPointer", "Confirm deletes") ); + addItem( d->confirmItem, QStringLiteral( "Confirm" ) ); + d->archiveFileItem = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "Archive File" ), d->archiveFile ); + d->archiveFileItem->setLabel( QCoreApplication::translate("TestDPointer", "Archive File") ); + addItem( d->archiveFileItem, QStringLiteral( "ArchiveFile" ) ); + QList valuesDestination; + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("standardDestination"); + valuesDestination.append( choice ); + } + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("askDestination"); + valuesDestination.append( choice ); + } + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("argl1"); + choice.label = QCoreApplication::translate("TestDPointer", "Argl1 Label"); + valuesDestination.append( choice ); + } + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("argl2"); + choice.whatsThis = QCoreApplication::translate("TestDPointer", "Argl2 Whatsthis"); + valuesDestination.append( choice ); + } + { + KConfigSkeleton::ItemEnum::Choice choice; + choice.name = QStringLiteral("argl3"); + choice.label = QCoreApplication::translate("TestDPointer", "Argl3 Label"); + choice.whatsThis = QCoreApplication::translate("TestDPointer", "Argl3 Whatsthis"); + valuesDestination.append( choice ); + } + d->destinationItem = new KConfigSkeleton::ItemEnum( currentGroup(), QStringLiteral( "Destination" ), d->destination, valuesDestination, EnumDestination::standardDestination ); + d->destinationItem->setLabel( QCoreApplication::translate("TestDPointer", "New Events/Todos Should") ); + addItem( d->destinationItem, QStringLiteral( "Destination" ) ); + + setCurrentGroup( QStringLiteral( "Views" ) ); + + d->hourSizeItem = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "Hour Size" ), d->hourSize, 10 ); + d->hourSizeItem->setLabel( QCoreApplication::translate("TestDPointer", "Hour Size") ); + addItem( d->hourSizeItem, QStringLiteral( "HourSize" ) ); + d->selectionStartsEditorItem = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "SelectionStartsEditor" ), d->selectionStartsEditor, false ); + d->selectionStartsEditorItem->setLabel( QCoreApplication::translate("TestDPointer", "Time range selection in agenda view starts event editor") ); + addItem( d->selectionStartsEditorItem, QStringLiteral( "SelectionStartsEditor" ) ); + + setCurrentGroup( QStringLiteral( "KOrganizer Plugins" ) ); + + QStringList defaultSelectedPlugins; + defaultSelectedPlugins.append( QString::fromUtf8( "holidays" ) ); + defaultSelectedPlugins.append( QString::fromUtf8( "webexport" ) ); + + d->selectedPluginsItem = new KConfigSkeleton::ItemStringList( currentGroup(), QStringLiteral( "SelectedPlugins" ), d->selectedPlugins, defaultSelectedPlugins ); + d->selectedPluginsItem->setLabel( QCoreApplication::translate("TestDPointer", "SelectedPlugins") ); + addItem( d->selectedPluginsItem, QStringLiteral( "SelectedPlugins" ) ); + + setCurrentGroup( QStringLiteral( "Colors" ) ); + + d->highlightColorItem = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "Highlight Color" ), d->highlightColor, QColor( 100, 100, 255 ) ); + d->highlightColorItem->setLabel( QCoreApplication::translate("TestDPointer", "Highlight color") ); + addItem( d->highlightColorItem, QStringLiteral( "HighlightColor" ) ); + d->agendaBgColorItem = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "Agenda Background Color" ), d->agendaBgColor, QColor( 255, 255, 255 ) ); + d->agendaBgColorItem->setLabel( QCoreApplication::translate("TestDPointer", "Agenda view background color") ); + addItem( d->agendaBgColorItem, QStringLiteral( "AgendaBgColor" ) ); + + setCurrentGroup( QStringLiteral( "Fonts" ) ); + + d->timeBarFontItem = new KConfigSkeleton::ItemFont( currentGroup(), QStringLiteral( "TimeBar Font" ), d->timeBarFont ); + d->timeBarFontItem->setLabel( QCoreApplication::translate("TestDPointer", "Time bar") ); + addItem( d->timeBarFontItem, QStringLiteral( "TimeBarFont" ) ); +} + +void TestDPointer::setAutoSave( bool v ) +{ + if (!self()->TestDPointer::isAutoSaveImmutable()) + self()->d->autoSave = v; +} + +bool TestDPointer::autoSave() +{ + return self()->d->autoSave; +} + +bool TestDPointer::isAutoSaveImmutable() +{ + return self()->isImmutable( QStringLiteral( "AutoSave" ) ); +} + + +KConfigSkeleton::ItemBool *TestDPointer::autoSaveItem() +{ + return d->autoSaveItem; +} + +void TestDPointer::setAutoSaveInterval( int v ) +{ + if (v < 0) + { + qDebug() << "setAutoSaveInterval: value " << v << " is less than the minimum value of 0"; + v = 0; + } + + if (v > 123) + { + qDebug() << "setAutoSaveInterval: value " << v << " is greater than the maximum value of 123"; + v = 123; + } + + if (!self()->TestDPointer::isAutoSaveIntervalImmutable()) + self()->d->autoSaveInterval = v; +} + +int TestDPointer::autoSaveInterval() +{ + return self()->d->autoSaveInterval; +} + +bool TestDPointer::isAutoSaveIntervalImmutable() +{ + return self()->isImmutable( QStringLiteral( "AutoSaveInterval" ) ); +} + + +KConfigSkeleton::ItemInt *TestDPointer::autoSaveIntervalItem() +{ + return d->autoSaveIntervalItem; +} + +void TestDPointer::setConfirm( bool v ) +{ + if (!self()->TestDPointer::isConfirmImmutable()) + self()->d->confirm = v; +} + +bool TestDPointer::confirm() +{ + return self()->d->confirm; +} + +bool TestDPointer::isConfirmImmutable() +{ + return self()->isImmutable( QStringLiteral( "Confirm" ) ); +} + + +KConfigSkeleton::ItemBool *TestDPointer::confirmItem() +{ + return d->confirmItem; +} + +void TestDPointer::setArchiveFile( const QString & v ) +{ + if (!self()->TestDPointer::isArchiveFileImmutable()) + self()->d->archiveFile = v; +} + +QString TestDPointer::archiveFile() +{ + return self()->d->archiveFile; +} + +bool TestDPointer::isArchiveFileImmutable() +{ + return self()->isImmutable( QStringLiteral( "ArchiveFile" ) ); +} + + +KConfigSkeleton::ItemString *TestDPointer::archiveFileItem() +{ + return d->archiveFileItem; +} + +void TestDPointer::setDestination( int v ) +{ + if (!self()->TestDPointer::isDestinationImmutable()) + self()->d->destination = v; +} + +int TestDPointer::destination() +{ + return self()->d->destination; +} + +bool TestDPointer::isDestinationImmutable() +{ + return self()->isImmutable( QStringLiteral( "Destination" ) ); +} + + +KConfigSkeleton::ItemEnum *TestDPointer::destinationItem() +{ + return d->destinationItem; +} + +void TestDPointer::setHourSize( int v ) +{ + if (!self()->TestDPointer::isHourSizeImmutable()) + self()->d->hourSize = v; +} + +int TestDPointer::hourSize() +{ + return self()->d->hourSize; +} + +bool TestDPointer::isHourSizeImmutable() +{ + return self()->isImmutable( QStringLiteral( "HourSize" ) ); +} + + +KConfigSkeleton::ItemInt *TestDPointer::hourSizeItem() +{ + return d->hourSizeItem; +} + +void TestDPointer::setSelectionStartsEditor( bool v ) +{ + if (!self()->TestDPointer::isSelectionStartsEditorImmutable()) + self()->d->selectionStartsEditor = v; +} + +bool TestDPointer::selectionStartsEditor() +{ + return self()->d->selectionStartsEditor; +} + +bool TestDPointer::isSelectionStartsEditorImmutable() +{ + return self()->isImmutable( QStringLiteral( "SelectionStartsEditor" ) ); +} + + +KConfigSkeleton::ItemBool *TestDPointer::selectionStartsEditorItem() +{ + return d->selectionStartsEditorItem; +} + +void TestDPointer::setSelectedPlugins( const QStringList & v ) +{ + if (!self()->TestDPointer::isSelectedPluginsImmutable()) + self()->d->selectedPlugins = v; +} + +QStringList TestDPointer::selectedPlugins() +{ + return self()->d->selectedPlugins; +} + +bool TestDPointer::isSelectedPluginsImmutable() +{ + return self()->isImmutable( QStringLiteral( "SelectedPlugins" ) ); +} + + +KConfigSkeleton::ItemStringList *TestDPointer::selectedPluginsItem() +{ + return d->selectedPluginsItem; +} + +void TestDPointer::setHighlightColor( const QColor & v ) +{ + if (!self()->TestDPointer::isHighlightColorImmutable()) + self()->d->highlightColor = v; +} + +QColor TestDPointer::highlightColor() +{ + return self()->d->highlightColor; +} + +bool TestDPointer::isHighlightColorImmutable() +{ + return self()->isImmutable( QStringLiteral( "HighlightColor" ) ); +} + + +KConfigSkeleton::ItemColor *TestDPointer::highlightColorItem() +{ + return d->highlightColorItem; +} + +void TestDPointer::setAgendaBgColor( const QColor & v ) +{ + if (!self()->TestDPointer::isAgendaBgColorImmutable()) + self()->d->agendaBgColor = v; +} + +QColor TestDPointer::agendaBgColor() +{ + return self()->d->agendaBgColor; +} + +bool TestDPointer::isAgendaBgColorImmutable() +{ + return self()->isImmutable( QStringLiteral( "AgendaBgColor" ) ); +} + + +KConfigSkeleton::ItemColor *TestDPointer::agendaBgColorItem() +{ + return d->agendaBgColorItem; +} + +void TestDPointer::setTimeBarFont( const QFont & v ) +{ + if (!self()->TestDPointer::isTimeBarFontImmutable()) + self()->d->timeBarFont = v; +} + +QFont TestDPointer::timeBarFont() +{ + return self()->d->timeBarFont; +} + +bool TestDPointer::isTimeBarFontImmutable() +{ + return self()->isImmutable( QStringLiteral( "TimeBarFont" ) ); +} + + +KConfigSkeleton::ItemFont *TestDPointer::timeBarFontItem() +{ + return d->timeBarFontItem; +} + +TestDPointer::~TestDPointer() +{ + delete d; + if (s_globalTestDPointer.exists() && !s_globalTestDPointer.isDestroyed()) { + s_globalTestDPointer()->q = nullptr; + } +} + diff --git a/autotests/kconfig_compiler/test_dpointer.h.ref b/autotests/kconfig_compiler/test_dpointer.h.ref new file mode 100644 index 0000000..528fbf2 --- /dev/null +++ b/autotests/kconfig_compiler/test_dpointer.h.ref @@ -0,0 +1,286 @@ +// This file is generated by kconfig_compiler_kf6 from test_dpointer.kcfg. +// All changes you do to this file will be lost. +#ifndef TESTDPOINTER_H +#define TESTDPOINTER_H + +#include +#include +#include + +class TestDPointerPrivate; + +class TestDPointer : public KConfigSkeleton +{ + public: + class EnumDestination + { + public: + enum type { standardDestination, askDestination, argl1, argl2, argl3, COUNT }; + }; + + static TestDPointer *self(); + ~TestDPointer() override; + + /** + Set Enable automatic saving of calendar + */ + static + void setAutoSave( bool v ); + + /** + Get Enable automatic saving of calendar + */ + static + bool autoSave(); + + /** + Is Enable automatic saving of calendar Immutable + */ + static + bool isAutoSaveImmutable(); + + /** + Get Item object corresponding to AutoSave() + */ + ItemBool *autoSaveItem(); + + /** + Set Auto Save Interval + */ + static + void setAutoSaveInterval( int v ); + + /** + Get Auto Save Interval + */ + static + int autoSaveInterval(); + + /** + Is Auto Save Interval Immutable + */ + static + bool isAutoSaveIntervalImmutable(); + + /** + Get Item object corresponding to AutoSaveInterval() + */ + ItemInt *autoSaveIntervalItem(); + + /** + Set Confirm deletes + */ + static + void setConfirm( bool v ); + + /** + Get Confirm deletes + */ + static + bool confirm(); + + /** + Is Confirm deletes Immutable + */ + static + bool isConfirmImmutable(); + + /** + Get Item object corresponding to Confirm() + */ + ItemBool *confirmItem(); + + /** + Set Archive File + */ + static + void setArchiveFile( const QString & v ); + + /** + Get Archive File + */ + static + QString archiveFile(); + + /** + Is Archive File Immutable + */ + static + bool isArchiveFileImmutable(); + + /** + Get Item object corresponding to ArchiveFile() + */ + ItemString *archiveFileItem(); + + /** + Set New Events/Todos Should + */ + static + void setDestination( int v ); + + /** + Get New Events/Todos Should + */ + static + int destination(); + + /** + Is New Events/Todos Should Immutable + */ + static + bool isDestinationImmutable(); + + /** + Get Item object corresponding to Destination() + */ + ItemEnum *destinationItem(); + + /** + Set Hour Size + */ + static + void setHourSize( int v ); + + /** + Get Hour Size + */ + static + int hourSize(); + + /** + Is Hour Size Immutable + */ + static + bool isHourSizeImmutable(); + + /** + Get Item object corresponding to HourSize() + */ + ItemInt *hourSizeItem(); + + /** + Set Time range selection in agenda view starts event editor + */ + static + void setSelectionStartsEditor( bool v ); + + /** + Get Time range selection in agenda view starts event editor + */ + static + bool selectionStartsEditor(); + + /** + Is Time range selection in agenda view starts event editor Immutable + */ + static + bool isSelectionStartsEditorImmutable(); + + /** + Get Item object corresponding to SelectionStartsEditor() + */ + ItemBool *selectionStartsEditorItem(); + + /** + Set SelectedPlugins + */ + static + void setSelectedPlugins( const QStringList & v ); + + /** + Get SelectedPlugins + */ + static + QStringList selectedPlugins(); + + /** + Is SelectedPlugins Immutable + */ + static + bool isSelectedPluginsImmutable(); + + /** + Get Item object corresponding to SelectedPlugins() + */ + ItemStringList *selectedPluginsItem(); + + /** + Set Highlight color + */ + static + void setHighlightColor( const QColor & v ); + + /** + Get Highlight color + */ + static + QColor highlightColor(); + + /** + Is Highlight color Immutable + */ + static + bool isHighlightColorImmutable(); + + /** + Get Item object corresponding to HighlightColor() + */ + ItemColor *highlightColorItem(); + + /** + Set Agenda view background color + */ + static + void setAgendaBgColor( const QColor & v ); + + /** + Get Agenda view background color + */ + static + QColor agendaBgColor(); + + /** + Is Agenda view background color Immutable + */ + static + bool isAgendaBgColorImmutable(); + + /** + Get Item object corresponding to AgendaBgColor() + */ + ItemColor *agendaBgColorItem(); + + /** + Set Time bar + */ + static + void setTimeBarFont( const QFont & v ); + + /** + Get Time bar + */ + static + QFont timeBarFont(); + + /** + Is Time bar Immutable + */ + static + bool isTimeBarFontImmutable(); + + /** + Get Item object corresponding to TimeBarFont() + */ + ItemFont *timeBarFontItem(); + + protected: + TestDPointer(); + friend class TestDPointerHelper; + + private: + TestDPointerPrivate *d; +}; + +#endif + diff --git a/autotests/kconfig_compiler/test_dpointer.kcfg b/autotests/kconfig_compiler/test_dpointer.kcfg new file mode 100644 index 0000000..7dc7400 --- /dev/null +++ b/autotests/kconfig_compiler/test_dpointer.kcfg @@ -0,0 +1,80 @@ + + + + + + + + WhatsThis text for AutoSave option + false + + + 10 + 0 + 123 + + + + true + + + + + + + + + + + + + + + Argl2 Whatsthis + + + + Argl3 Whatsthis + + + standardDestination + + + + + + 10 + + + + false + + + + + + holidays,webexport + + + + + + + 100, 100, 255 + + + + 255, 255, 255 + + + + + + + + + + diff --git a/autotests/kconfig_compiler/test_dpointer.kcfgc b/autotests/kconfig_compiler/test_dpointer.kcfgc new file mode 100644 index 0000000..005e6b2 --- /dev/null +++ b/autotests/kconfig_compiler/test_dpointer.kcfgc @@ -0,0 +1,11 @@ +# Code generation options for kconfig_compiler_kf6 +File=test_dpointer.kcfg +ClassName=TestDPointer +Singleton=true +Mutators=true +#Inherits=MyPrefs +#IncludeFiles=myprefs.h +MemberVariables=dpointer +#GlobalEnums=true +ItemAccessors=true +SetUserTexts=true diff --git a/autotests/kconfig_compiler/test_dpointer_main.cpp b/autotests/kconfig_compiler/test_dpointer_main.cpp new file mode 100644 index 0000000..751c591 --- /dev/null +++ b/autotests/kconfig_compiler/test_dpointer_main.cpp @@ -0,0 +1,17 @@ +/* + SPDX-FileCopyrightText: 2005 Duncan Mac-Vicar P. + + SPDX-License-Identifier: MIT +*/ + +#include "test_dpointer.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + TestDPointer *t = TestDPointer::self(); + delete t; + return 0; +} diff --git a/autotests/kconfig_compiler/test_emptyentries.cpp.ref b/autotests/kconfig_compiler/test_emptyentries.cpp.ref new file mode 100644 index 0000000..730395e --- /dev/null +++ b/autotests/kconfig_compiler/test_emptyentries.cpp.ref @@ -0,0 +1,61 @@ +// This file is generated by kconfig_compiler_kf6 from test_emptyentries.kcfg. +// All changes you do to this file will be lost. + +#include "test_emptyentries.h" + +#include +#include + +#include + +class QMakeBuilderSettingsHelper +{ + public: + QMakeBuilderSettingsHelper() : q(nullptr) {} + ~QMakeBuilderSettingsHelper() { delete q; q = nullptr; } + QMakeBuilderSettingsHelper(const QMakeBuilderSettingsHelper&) = delete; + QMakeBuilderSettingsHelper& operator=(const QMakeBuilderSettingsHelper&) = delete; + QMakeBuilderSettings *q; +}; +Q_GLOBAL_STATIC(QMakeBuilderSettingsHelper, s_globalQMakeBuilderSettings) +QMakeBuilderSettings *QMakeBuilderSettings::self() +{ + if (!s_globalQMakeBuilderSettings()->q) + qFatal("you need to call QMakeBuilderSettings::instance before using"); + return s_globalQMakeBuilderSettings()->q; +} + +void QMakeBuilderSettings::instance(const QString& cfgfilename) +{ + if (s_globalQMakeBuilderSettings()->q) { + qDebug() << "QMakeBuilderSettings::instance called after the first use - ignoring"; + return; + } + new QMakeBuilderSettings(KSharedConfig::openConfig(cfgfilename)); + s_globalQMakeBuilderSettings()->q->read(); +} + +void QMakeBuilderSettings::instance(KSharedConfig::Ptr config) +{ + if (s_globalQMakeBuilderSettings()->q) { + qDebug() << "QMakeBuilderSettings::instance called after the first use - ignoring"; + return; + } + new QMakeBuilderSettings(std::move(config)); + s_globalQMakeBuilderSettings()->q->read(); +} + +QMakeBuilderSettings::QMakeBuilderSettings( KSharedConfig::Ptr config ) + : KConfigSkeleton( std::move( config ) ) +{ + Q_ASSERT(!s_globalQMakeBuilderSettings()->q); + s_globalQMakeBuilderSettings()->q = this; +} + +QMakeBuilderSettings::~QMakeBuilderSettings() +{ + if (s_globalQMakeBuilderSettings.exists() && !s_globalQMakeBuilderSettings.isDestroyed()) { + s_globalQMakeBuilderSettings()->q = nullptr; + } +} + diff --git a/autotests/kconfig_compiler/test_emptyentries.h.ref b/autotests/kconfig_compiler/test_emptyentries.h.ref new file mode 100644 index 0000000..2e149bf --- /dev/null +++ b/autotests/kconfig_compiler/test_emptyentries.h.ref @@ -0,0 +1,29 @@ +// This file is generated by kconfig_compiler_kf6 from test_emptyentries.kcfg. +// All changes you do to this file will be lost. +#ifndef QMAKEBUILDERSETTINGS_H +#define QMAKEBUILDERSETTINGS_H + +#include +#include +#include + +#include + +class QMakeBuilderSettings : public KConfigSkeleton +{ + public: + static QMakeBuilderSettings *self(); + static void instance(const QString& cfgfilename); + static void instance(KSharedConfig::Ptr config); + ~QMakeBuilderSettings() override; + + protected: + QMakeBuilderSettings(KSharedConfig::Ptr config); + friend class QMakeBuilderSettingsHelper; + + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test_emptyentries.kcfg b/autotests/kconfig_compiler/test_emptyentries.kcfg new file mode 100644 index 0000000..1ad9326 --- /dev/null +++ b/autotests/kconfig_compiler/test_emptyentries.kcfg @@ -0,0 +1,9 @@ + + + + QString + + diff --git a/autotests/kconfig_compiler/test_emptyentries.kcfgc b/autotests/kconfig_compiler/test_emptyentries.kcfgc new file mode 100644 index 0000000..5c9c71d --- /dev/null +++ b/autotests/kconfig_compiler/test_emptyentries.kcfgc @@ -0,0 +1,3 @@ +File=test_emptyentries.kcfg +ClassName=QMakeBuilderSettings +Singleton=true diff --git a/autotests/kconfig_compiler/test_emptyentries_main.cpp b/autotests/kconfig_compiler/test_emptyentries_main.cpp new file mode 100644 index 0000000..5dbce8e --- /dev/null +++ b/autotests/kconfig_compiler/test_emptyentries_main.cpp @@ -0,0 +1,18 @@ +/* + SPDX-FileCopyrightText: 2007 Andreas Pakulat + + SPDX-License-Identifier: MIT +*/ + +#include "test_emptyentries.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + QMakeBuilderSettings::instance(QStringLiteral("abc")); + auto *t = QMakeBuilderSettings::self(); + delete t; + return 0; +} diff --git a/autotests/kconfig_compiler/test_enums_and_properties.kcfg b/autotests/kconfig_compiler/test_enums_and_properties.kcfg new file mode 100644 index 0000000..8ce6a41 --- /dev/null +++ b/autotests/kconfig_compiler/test_enums_and_properties.kcfg @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + 0 + + + diff --git a/autotests/kconfig_compiler/test_enums_and_properties.kcfgc b/autotests/kconfig_compiler/test_enums_and_properties.kcfgc new file mode 100644 index 0000000..7df2cf2 --- /dev/null +++ b/autotests/kconfig_compiler/test_enums_and_properties.kcfgc @@ -0,0 +1,4 @@ +File=test_enums_and_properties.kcfg +ClassName=TestEnumsAndProperties +GenerateProperties=true +Mutators=true diff --git a/autotests/kconfig_compiler/test_fileextensions.kcfg b/autotests/kconfig_compiler/test_fileextensions.kcfg new file mode 100644 index 0000000..c5040fd --- /dev/null +++ b/autotests/kconfig_compiler/test_fileextensions.kcfg @@ -0,0 +1,16 @@ + + + + + + + + Enable automatic saving of calendars to have calendars saved automatically. + false + + + + diff --git a/autotests/kconfig_compiler/test_fileextensions.kcfgc b/autotests/kconfig_compiler/test_fileextensions.kcfgc new file mode 100644 index 0000000..080595a --- /dev/null +++ b/autotests/kconfig_compiler/test_fileextensions.kcfgc @@ -0,0 +1,6 @@ +# Code generation options for kconfig_compiler_kf6 +File=test_fileextensions.kcfg +Singleton=true +ClassName=TestFileExtensions +SetUserTexts=true +HeaderExtension=hxx diff --git a/autotests/kconfig_compiler/test_fileextensions_main.cxx b/autotests/kconfig_compiler/test_fileextensions_main.cxx new file mode 100644 index 0000000..c6f5d75 --- /dev/null +++ b/autotests/kconfig_compiler/test_fileextensions_main.cxx @@ -0,0 +1,17 @@ +/* + SPDX-FileCopyrightText: 2019 Friedrich W. H. Kossebau + + SPDX-License-Identifier: MIT +*/ + +#include "test_fileextensions.hxx" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + TestFileExtensions *t = TestFileExtensions::self(); + delete t; + return 0; +} diff --git a/autotests/kconfig_compiler/test_notifiers.cpp.ref b/autotests/kconfig_compiler/test_notifiers.cpp.ref new file mode 100644 index 0000000..39460e7 --- /dev/null +++ b/autotests/kconfig_compiler/test_notifiers.cpp.ref @@ -0,0 +1,34 @@ +// This file is generated by kconfig_compiler_kf6 from test_notifiers.kcfg. +// All changes you do to this file will be lost. + +#include "test_notifiers.h" + +TestNotifiers::TestNotifiers( int Number ) + : KConfigSkeleton( QStringLiteral( "test7rc" ) ) + , mParamNumber(Number) +{ + setCurrentGroup( QStringLiteral( "Foo" ) ); + + KConfigSkeleton::ItemColor *itemColor; + itemColor = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "color #%1" ).arg( mParamNumber ), mColor, QColor( "red" ) ); + itemColor->setWriteFlags(KConfigBase::Notify); + addItem( itemColor, QStringLiteral( "Color" ) ); + + setCurrentGroup( QStringLiteral( "Bar%1" ).arg( mParamNumber ) ); + + KConfigSkeleton::ItemString *itemFooBar; + itemFooBar = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "foo bar" ), mFooBar ); + itemFooBar->setWriteFlags(KConfigBase::Notify); + addItem( itemFooBar, QStringLiteral( "FooBar" ) ); + KConfigSkeleton::ItemInt *itemAge; + itemAge = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "Age" ), mAge, 35 ); + itemAge->setMinValue(8); + itemAge->setMaxValue(88); + itemAge->setWriteFlags(KConfigBase::Notify); + addItem( itemAge, QStringLiteral( "Age" ) ); +} + +TestNotifiers::~TestNotifiers() +{ +} + diff --git a/autotests/kconfig_compiler/test_notifiers.h.ref b/autotests/kconfig_compiler/test_notifiers.h.ref new file mode 100644 index 0000000..c367f03 --- /dev/null +++ b/autotests/kconfig_compiler/test_notifiers.h.ref @@ -0,0 +1,118 @@ +// This file is generated by kconfig_compiler_kf6 from test_notifiers.kcfg. +// All changes you do to this file will be lost. +#ifndef TESTNOTIFIERS_H +#define TESTNOTIFIERS_H + +#include +#include +#include + +class TestNotifiers : public KConfigSkeleton +{ + public: + + TestNotifiers( int Number ); + ~TestNotifiers() override; + + /** + Set Block colors. + */ + void setColor( const QColor & v ) + { + if (!isColorImmutable()) + mColor = v; + } + + /** + Get Block colors. + */ + QColor color() const + { + return mColor; + } + + /** + Is Block colors. Immutable + */ + bool isColorImmutable() const + { + return isImmutable( QStringLiteral( "Color" ) ); + } + + /** + Set foo bar + */ + void setFooBar( const QString & v ) + { + if (!isFooBarImmutable()) + mFooBar = v; + } + + /** + Get foo bar + */ + QString fooBar() const + { + return mFooBar; + } + + /** + Is foo bar Immutable + */ + bool isFooBarImmutable() const + { + return isImmutable( QStringLiteral( "FooBar" ) ); + } + + /** + Set Age + */ + void setAge( int v ) + { + if (v < 8) + { + qDebug() << "setAge: value " << v << " is less than the minimum value of 8"; + v = 8; + } + + if (v > 88) + { + qDebug() << "setAge: value " << v << " is greater than the maximum value of 88"; + v = 88; + } + + if (!isAgeImmutable()) + mAge = v; + } + + /** + Get Age + */ + int age() const + { + return mAge; + } + + /** + Is Age Immutable + */ + bool isAgeImmutable() const + { + return isImmutable( QStringLiteral( "Age" ) ); + } + + protected: + int mParamNumber; + + // Foo + QColor mColor; + + // Bar$(Number) + QString mFooBar; + int mAge; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test_notifiers.kcfg b/autotests/kconfig_compiler/test_notifiers.kcfg new file mode 100644 index 0000000..2f54f60 --- /dev/null +++ b/autotests/kconfig_compiler/test_notifiers.kcfg @@ -0,0 +1,25 @@ + + + + + + + + + + red + + + + + + 35 + 8 + 88 + + + + diff --git a/autotests/kconfig_compiler/test_notifiers.kcfgc b/autotests/kconfig_compiler/test_notifiers.kcfgc new file mode 100644 index 0000000..692ae1e --- /dev/null +++ b/autotests/kconfig_compiler/test_notifiers.kcfgc @@ -0,0 +1,8 @@ +# Code generation options for kconfig_compiler_kf6 +File=test_notifiers.kcfg +ClassName=TestNotifiers +Singleton=false +Mutators=true +GlobalEnums=true +ItemAccessors=false +Notifiers=true diff --git a/autotests/kconfig_compiler/test_notifiers_main.cpp b/autotests/kconfig_compiler/test_notifiers_main.cpp new file mode 100644 index 0000000..7200938 --- /dev/null +++ b/autotests/kconfig_compiler/test_notifiers_main.cpp @@ -0,0 +1,16 @@ +/* + SPDX-FileCopyrightText: 2019 Kai Uwe Broulik + + SPDX-License-Identifier: MIT +*/ + +#include "test_notifiers.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + TestNotifiers t = TestNotifiers(42); + return 0; +} diff --git a/autotests/kconfig_compiler/test_param_minmax.cpp.ref b/autotests/kconfig_compiler/test_param_minmax.cpp.ref new file mode 100644 index 0000000..702bfa0 --- /dev/null +++ b/autotests/kconfig_compiler/test_param_minmax.cpp.ref @@ -0,0 +1,41 @@ +// This file is generated by kconfig_compiler_kf6 from test_param_minmax.kcfg. +// All changes you do to this file will be lost. + +#include "test_param_minmax.h" + +TestParamMinMax::TestParamMinMax( KSharedConfig::Ptr config ) + : KConfigSkeleton( std::move( config ) ) +{ + setCurrentGroup( QStringLiteral( "Something" ) ); + + KConfigSkeleton::ItemDouble *itemFoo[6]; + itemFoo[0] = new KConfigSkeleton::ItemDouble( currentGroup(), QStringLiteral( "foo_#0" ), mFoo[0], 1.23 ); + itemFoo[0]->setMinValue(0.01); + itemFoo[0]->setMaxValue(89898.23); + addItem( itemFoo[0], QStringLiteral( "Foo0" ) ); + itemFoo[1] = new KConfigSkeleton::ItemDouble( currentGroup(), QStringLiteral( "foo_#1" ), mFoo[1], 1.23 ); + itemFoo[1]->setMinValue(0.01); + itemFoo[1]->setMaxValue(89898.23); + addItem( itemFoo[1], QStringLiteral( "Foo1" ) ); + itemFoo[2] = new KConfigSkeleton::ItemDouble( currentGroup(), QStringLiteral( "foo_#2" ), mFoo[2], 1.23 ); + itemFoo[2]->setMinValue(0.01); + itemFoo[2]->setMaxValue(89898.23); + addItem( itemFoo[2], QStringLiteral( "Foo2" ) ); + itemFoo[3] = new KConfigSkeleton::ItemDouble( currentGroup(), QStringLiteral( "foo_#3" ), mFoo[3], 1.23 ); + itemFoo[3]->setMinValue(0.01); + itemFoo[3]->setMaxValue(89898.23); + addItem( itemFoo[3], QStringLiteral( "Foo3" ) ); + itemFoo[4] = new KConfigSkeleton::ItemDouble( currentGroup(), QStringLiteral( "foo_#4" ), mFoo[4], 1.23 ); + itemFoo[4]->setMinValue(0.01); + itemFoo[4]->setMaxValue(89898.23); + addItem( itemFoo[4], QStringLiteral( "Foo4" ) ); + itemFoo[5] = new KConfigSkeleton::ItemDouble( currentGroup(), QStringLiteral( "foo_#5" ), mFoo[5], 1.23 ); + itemFoo[5]->setMinValue(0.01); + itemFoo[5]->setMaxValue(89898.23); + addItem( itemFoo[5], QStringLiteral( "Foo5" ) ); +} + +TestParamMinMax::~TestParamMinMax() +{ +} + diff --git a/autotests/kconfig_compiler/test_param_minmax.h.ref b/autotests/kconfig_compiler/test_param_minmax.h.ref new file mode 100644 index 0000000..2de3c55 --- /dev/null +++ b/autotests/kconfig_compiler/test_param_minmax.h.ref @@ -0,0 +1,64 @@ +// This file is generated by kconfig_compiler_kf6 from test_param_minmax.kcfg. +// All changes you do to this file will be lost. +#ifndef TESTPARAMMINMAX_H +#define TESTPARAMMINMAX_H + +#include +#include +#include +#include + +class TestParamMinMax : public KConfigSkeleton +{ + public: + + TestParamMinMax( KSharedConfig::Ptr config = KSharedConfig::openConfig() ); + ~TestParamMinMax() override; + + /** + Set foo_#$(myparam) + */ + void setFoo( int i, double v ) + { + if (v < 0.01) + { + qDebug() << "setFoo: value " << v << " is less than the minimum value of 0.01"; + v = 0.01; + } + + if (v > 89898.23) + { + qDebug() << "setFoo: value " << v << " is greater than the maximum value of 89898.23"; + v = 89898.23; + } + + if (!isFooImmutable( i )) + mFoo[i] = v; + } + + /** + Get foo_#$(myparam) + */ + double foo( int i ) const + { + return mFoo[i]; + } + + /** + Is foo_#$(myparam) Immutable + */ + bool isFooImmutable( int i ) const + { + return isImmutable( QStringLiteral( "Foo%1" ).arg( i ) ); + } + + protected: + + // Something + double mFoo[6]; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test_param_minmax.kcfg b/autotests/kconfig_compiler/test_param_minmax.kcfg new file mode 100644 index 0000000..32046fd --- /dev/null +++ b/autotests/kconfig_compiler/test_param_minmax.kcfg @@ -0,0 +1,17 @@ + + + + + + + + 1.23 + 0.01 + 89898.23 + + + + diff --git a/autotests/kconfig_compiler/test_param_minmax.kcfgc b/autotests/kconfig_compiler/test_param_minmax.kcfgc new file mode 100644 index 0000000..d2aec87 --- /dev/null +++ b/autotests/kconfig_compiler/test_param_minmax.kcfgc @@ -0,0 +1,4 @@ +ClassName=TestParamMinMax +File=test_param_minmax.kcfg +Mutators=true + diff --git a/autotests/kconfig_compiler/test_param_minmax_main.cpp b/autotests/kconfig_compiler/test_param_minmax_main.cpp new file mode 100644 index 0000000..b8c220d --- /dev/null +++ b/autotests/kconfig_compiler/test_param_minmax_main.cpp @@ -0,0 +1,27 @@ +/* +Copyright (c) 2020 Henri chain + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +*/ +#include "test_param_minmax.h" + +int main(int, char **) +{ + TestParamMinMax t = TestParamMinMax(); + return 0; +} diff --git a/autotests/kconfig_compiler/test_properties_minmax.cpp.ref b/autotests/kconfig_compiler/test_properties_minmax.cpp.ref new file mode 100644 index 0000000..d18fe4f --- /dev/null +++ b/autotests/kconfig_compiler/test_properties_minmax.cpp.ref @@ -0,0 +1,34 @@ +// This file is generated by kconfig_compiler_kf6 from test_properties_minmax.kcfg. +// All changes you do to this file will be lost. + +#include "test_properties_minmax.h" + +TestPropertiesMinMax::TestPropertiesMinMax( KSharedConfig::Ptr config ) + : KConfigSkeleton( std::move( config ) ) +{ + KConfigCompilerSignallingItem::NotifyFunction notifyFunction = static_cast(&TestPropertiesMinMax::itemChanged); + + setCurrentGroup( QStringLiteral( "Something" ) ); + + KConfigCompilerSignallingItem *itemBar; + KConfigSkeleton::ItemInt *innerItemBar; + innerItemBar = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "bar" ), mBar, 42 ); + itemBar = new KConfigCompilerSignallingItem(innerItemBar, this, notifyFunction, signalBarChanged); + innerItemBar->setMinValue(36); + innerItemBar->setMaxValue(102); + addItem( itemBar, QStringLiteral( "bar" ) ); +} + +TestPropertiesMinMax::~TestPropertiesMinMax() +{ +} + + +void TestPropertiesMinMax::itemChanged(quint64 signalFlag) { + + switch (signalFlag) { + case signalBarChanged: + Q_EMIT barChanged(); + break; + } +} diff --git a/autotests/kconfig_compiler/test_properties_minmax.h.ref b/autotests/kconfig_compiler/test_properties_minmax.h.ref new file mode 100644 index 0000000..5f66534 --- /dev/null +++ b/autotests/kconfig_compiler/test_properties_minmax.h.ref @@ -0,0 +1,80 @@ +// This file is generated by kconfig_compiler_kf6 from test_properties_minmax.kcfg. +// All changes you do to this file will be lost. +#ifndef TESTPROPERTIESMINMAX_H +#define TESTPROPERTIESMINMAX_H + +#include +#include +#include +#include + +class TestPropertiesMinMax : public KConfigSkeleton +{ + Q_OBJECT + public: + + TestPropertiesMinMax( KSharedConfig::Ptr config = KSharedConfig::openConfig() ); + ~TestPropertiesMinMax() override; + + /** + Set bar + */ + void setBar( int v ) + { + if (v < 36) + { + qDebug() << "setBar: value " << v << " is less than the minimum value of 36"; + v = 36; + } + + if (v > 102) + { + qDebug() << "setBar: value " << v << " is greater than the maximum value of 102"; + v = 102; + } + + if (v != mBar && !isBarImmutable()) { + mBar = v; + Q_EMIT barChanged(); + } + } + + Q_PROPERTY(int bar READ bar WRITE setBar NOTIFY barChanged) + Q_PROPERTY(bool isBarImmutable READ isBarImmutable CONSTANT) + /** + Get bar + */ + int bar() const + { + return mBar; + } + + /** + Is bar Immutable + */ + bool isBarImmutable() const + { + return isImmutable( QStringLiteral( "bar" ) ); + } + + + enum { + signalBarChanged = 1 + }; + + Q_SIGNALS: + void barChanged(); + + private: + void itemChanged(quint64 signalFlag); + + protected: + + // Something + int mBar; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test_properties_minmax.kcfg b/autotests/kconfig_compiler/test_properties_minmax.kcfg new file mode 100644 index 0000000..621a793 --- /dev/null +++ b/autotests/kconfig_compiler/test_properties_minmax.kcfg @@ -0,0 +1,15 @@ + + + + + + + 42 + 36 + 102 + + + diff --git a/autotests/kconfig_compiler/test_properties_minmax.kcfgc b/autotests/kconfig_compiler/test_properties_minmax.kcfgc new file mode 100644 index 0000000..a7ce429 --- /dev/null +++ b/autotests/kconfig_compiler/test_properties_minmax.kcfgc @@ -0,0 +1,5 @@ +ClassName=TestPropertiesMinMax +GenerateProperties=true +File=test_properties_minmax.kcfg +Mutators=true + diff --git a/autotests/kconfig_compiler/test_properties_minmax_main.cpp b/autotests/kconfig_compiler/test_properties_minmax_main.cpp new file mode 100644 index 0000000..4031d6b --- /dev/null +++ b/autotests/kconfig_compiler/test_properties_minmax_main.cpp @@ -0,0 +1,27 @@ +/* +Copyright (c) 2020 Henri Chain + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +*/ +#include "test_properties_minmax.h" + +int main(int, char **) +{ + TestPropertiesMinMax t = TestPropertiesMinMax(); + return 0; +} diff --git a/autotests/kconfig_compiler/test_qdebugcategory.cpp.ref b/autotests/kconfig_compiler/test_qdebugcategory.cpp.ref new file mode 100644 index 0000000..8667cc7 --- /dev/null +++ b/autotests/kconfig_compiler/test_qdebugcategory.cpp.ref @@ -0,0 +1,31 @@ +// This file is generated by kconfig_compiler_kf6 from test_qdebugcategory.kcfg. +// All changes you do to this file will be lost. + +#include "test_qdebugcategory.h" + +TestQCategory::TestQCategory( int Number ) + : KConfigSkeleton( QStringLiteral( "test7rc" ) ) + , mParamNumber(Number) +{ + setCurrentGroup( QStringLiteral( "Foo" ) ); + + KConfigSkeleton::ItemColor *itemColor; + itemColor = new KConfigSkeleton::ItemColor( currentGroup(), QStringLiteral( "color #%1" ).arg( mParamNumber ), mColor, QColor( "red" ) ); + addItem( itemColor, QStringLiteral( "Color" ) ); + + setCurrentGroup( QStringLiteral( "Bar%1" ).arg( mParamNumber ) ); + + KConfigSkeleton::ItemString *itemFooBar; + itemFooBar = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "foo bar" ), mFooBar ); + addItem( itemFooBar, QStringLiteral( "FooBar" ) ); + KConfigSkeleton::ItemInt *itemAge; + itemAge = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "Age" ), mAge, 35 ); + itemAge->setMinValue(8); + itemAge->setMaxValue(88); + addItem( itemAge, QStringLiteral( "Age" ) ); +} + +TestQCategory::~TestQCategory() +{ +} + diff --git a/autotests/kconfig_compiler/test_qdebugcategory.h.ref b/autotests/kconfig_compiler/test_qdebugcategory.h.ref new file mode 100644 index 0000000..feb3121 --- /dev/null +++ b/autotests/kconfig_compiler/test_qdebugcategory.h.ref @@ -0,0 +1,120 @@ +// This file is generated by kconfig_compiler_kf6 from test_qdebugcategory.kcfg. +// All changes you do to this file will be lost. +#ifndef TESTQCATEGORY_H +#define TESTQCATEGORY_H + +#include + +#include +#include +#include + +class TestQCategory : public KConfigSkeleton +{ + public: + + TestQCategory( int Number ); + ~TestQCategory() override; + + /** + Set Block colors. + */ + void setColor( const QColor & v ) + { + if (!isColorImmutable()) + mColor = v; + } + + /** + Get Block colors. + */ + QColor color() const + { + return mColor; + } + + /** + Is Block colors. Immutable + */ + bool isColorImmutable() const + { + return isImmutable( QStringLiteral( "Color" ) ); + } + + /** + Set foo bar + */ + void setFooBar( const QString & v ) + { + if (!isFooBarImmutable()) + mFooBar = v; + } + + /** + Get foo bar + */ + QString fooBar() const + { + return mFooBar; + } + + /** + Is foo bar Immutable + */ + bool isFooBarImmutable() const + { + return isImmutable( QStringLiteral( "FooBar" ) ); + } + + /** + Set Age + */ + void setAge( int v ) + { + if (v < 8) + { + qCDebug(CATEGORY_LOG) << "setAge: value " << v << " is less than the minimum value of 8"; + v = 8; + } + + if (v > 88) + { + qCDebug(CATEGORY_LOG) << "setAge: value " << v << " is greater than the maximum value of 88"; + v = 88; + } + + if (!isAgeImmutable()) + mAge = v; + } + + /** + Get Age + */ + int age() const + { + return mAge; + } + + /** + Is Age Immutable + */ + bool isAgeImmutable() const + { + return isImmutable( QStringLiteral( "Age" ) ); + } + + protected: + int mParamNumber; + + // Foo + QColor mColor; + + // Bar$(Number) + QString mFooBar; + int mAge; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test_qdebugcategory.kcfg b/autotests/kconfig_compiler/test_qdebugcategory.kcfg new file mode 100644 index 0000000..2f54f60 --- /dev/null +++ b/autotests/kconfig_compiler/test_qdebugcategory.kcfg @@ -0,0 +1,25 @@ + + + + + + + + + + red + + + + + + 35 + 8 + 88 + + + + diff --git a/autotests/kconfig_compiler/test_qdebugcategory.kcfgc b/autotests/kconfig_compiler/test_qdebugcategory.kcfgc new file mode 100644 index 0000000..1010e84 --- /dev/null +++ b/autotests/kconfig_compiler/test_qdebugcategory.kcfgc @@ -0,0 +1,9 @@ +# Code generation options for kconfig_compiler_kf6 +File=test_qdebugcategory.kcfg +ClassName=TestQCategory +Singleton=false +Mutators=true +GlobalEnums=true +ItemAccessors=false +CategoryLoggingName=CATEGORY_LOG +IncludeFiles=test_qdebugcategory_debug.h diff --git a/autotests/kconfig_compiler/test_qdebugcategory_debug.cpp b/autotests/kconfig_compiler/test_qdebugcategory_debug.cpp new file mode 100644 index 0000000..2526254 --- /dev/null +++ b/autotests/kconfig_compiler/test_qdebugcategory_debug.cpp @@ -0,0 +1,2 @@ +#include "test_qdebugcategory_debug.h" +Q_LOGGING_CATEGORY(CATEGORY_LOG, "log_category") diff --git a/autotests/kconfig_compiler/test_qdebugcategory_debug.h b/autotests/kconfig_compiler/test_qdebugcategory_debug.h new file mode 100644 index 0000000..a92e54c --- /dev/null +++ b/autotests/kconfig_compiler/test_qdebugcategory_debug.h @@ -0,0 +1,7 @@ +#ifndef TEST_QCATEGORY_DEBUG_H +#define TEST_QCATEGORY_DEBUG_H + +#include +Q_DECLARE_LOGGING_CATEGORY(CATEGORY_LOG) + +#endif diff --git a/autotests/kconfig_compiler/test_qdebugcategorymain.cpp b/autotests/kconfig_compiler/test_qdebugcategorymain.cpp new file mode 100644 index 0000000..e5703bf --- /dev/null +++ b/autotests/kconfig_compiler/test_qdebugcategorymain.cpp @@ -0,0 +1,16 @@ +/* + SPDX-FileCopyrightText: 2004 Waldo Bastian + + SPDX-License-Identifier: MIT +*/ + +#include "test_qdebugcategory.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + TestQCategory t = TestQCategory(42); + return 0; +} diff --git a/autotests/kconfig_compiler/test_signal.cpp.ref b/autotests/kconfig_compiler/test_signal.cpp.ref new file mode 100644 index 0000000..8aa132f --- /dev/null +++ b/autotests/kconfig_compiler/test_signal.cpp.ref @@ -0,0 +1,86 @@ +// This file is generated by kconfig_compiler_kf6 from test_signal.kcfg. +// All changes you do to this file will be lost. + +#include "test_signal.h" + +#include +#include + +class TestSignalHelper +{ + public: + TestSignalHelper() : q(nullptr) {} + ~TestSignalHelper() { delete q; q = nullptr; } + TestSignalHelper(const TestSignalHelper&) = delete; + TestSignalHelper& operator=(const TestSignalHelper&) = delete; + TestSignal *q; +}; +Q_GLOBAL_STATIC(TestSignalHelper, s_globalTestSignal) +TestSignal *TestSignal::self() +{ + if (!s_globalTestSignal()->q) { + new TestSignal; + s_globalTestSignal()->q->read(); + } + + return s_globalTestSignal()->q; +} + +TestSignal::TestSignal( ) + : KConfigSkeleton( QStringLiteral( "kconfig_compiler_kf6_test_rc" ) ) +{ + Q_ASSERT(!s_globalTestSignal()->q); + s_globalTestSignal()->q = this; + KConfigCompilerSignallingItem::NotifyFunction notifyFunction = static_cast(&TestSignal::itemChanged); + + setCurrentGroup( QStringLiteral( "Appearance" ) ); + + KConfigCompilerSignallingItem *itemEmoticonTheme; + KConfigSkeleton::ItemString *innerItemEmoticonTheme; + innerItemEmoticonTheme = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "emoticonTheme" ), mEmoticonTheme, QStringLiteral( "Default" ) ); + itemEmoticonTheme = new KConfigCompilerSignallingItem(innerItemEmoticonTheme, this, notifyFunction, signalEmoticonSettingsChanged); + addItem( itemEmoticonTheme, QStringLiteral( "emoticonTheme" ) ); + KConfigCompilerSignallingItem *itemUseEmoticon; + KConfigSkeleton::ItemBool *innerItemUseEmoticon; + innerItemUseEmoticon = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "useEmoticon" ), mUseEmoticon, true ); + itemUseEmoticon = new KConfigCompilerSignallingItem(innerItemUseEmoticon, this, notifyFunction, signalEmoticonSettingsChanged); + addItem( itemUseEmoticon, QStringLiteral( "useEmoticon" ) ); + KConfigCompilerSignallingItem *itemEmoticonRequireSpace; + KConfigSkeleton::ItemBool *innerItemEmoticonRequireSpace; + innerItemEmoticonRequireSpace = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "emoticonRequireSpace" ), mEmoticonRequireSpace, true ); + itemEmoticonRequireSpace = new KConfigCompilerSignallingItem(innerItemEmoticonRequireSpace, this, notifyFunction, signalEmoticonSettingsChanged); + addItem( itemEmoticonRequireSpace, QStringLiteral( "emoticonRequireSpace" ) ); + KConfigCompilerSignallingItem *itemStylePath; + KConfigSkeleton::ItemString *innerItemStylePath; + innerItemStylePath = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "stylePath" ), mStylePath ); + itemStylePath = new KConfigCompilerSignallingItem(innerItemStylePath, this, notifyFunction, signalStyleChanged); + addItem( itemStylePath, QStringLiteral( "stylePath" ) ); + KConfigSkeleton::ItemString *itemStyleCSSVariant; + itemStyleCSSVariant = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "styleVariant" ), mStyleCSSVariant ); + addItem( itemStyleCSSVariant, QStringLiteral( "StyleCSSVariant" ) ); +} + +TestSignal::~TestSignal() +{ + if (s_globalTestSignal.exists() && !s_globalTestSignal.isDestroyed()) { + s_globalTestSignal()->q = nullptr; + } +} + +bool TestSignal::usrSave() +{ + const bool res = KConfigSkeleton::usrSave(); + if (!res) return false; + + if (mSettingsChanged.contains(signalEmoticonSettingsChanged)) + Q_EMIT emoticonSettingsChanged(); + if (mSettingsChanged.contains(signalStyleChanged)) + Q_EMIT styleChanged(mStylePath, mStyleCSSVariant); + mSettingsChanged.clear(); + return true; +} + +void TestSignal::itemChanged(quint64 signalFlag) { + mSettingsChanged.insert(signalFlag); + +} diff --git a/autotests/kconfig_compiler/test_signal.h.ref b/autotests/kconfig_compiler/test_signal.h.ref new file mode 100644 index 0000000..eb83149 --- /dev/null +++ b/autotests/kconfig_compiler/test_signal.h.ref @@ -0,0 +1,202 @@ +// This file is generated by kconfig_compiler_kf6 from test_signal.kcfg. +// All changes you do to this file will be lost. +#ifndef TESTSIGNAL_H +#define TESTSIGNAL_H + +#include +#include +#include +#include + +class TestSignal : public KConfigSkeleton +{ + Q_OBJECT + public: + + static TestSignal *self(); + ~TestSignal() override; + + /** + Set Current emoticon theme. + */ + static + void setEmoticonTheme( const QString & v ) + { + if (v != self()->mEmoticonTheme && !self()->isEmoticonThemeImmutable()) { + self()->mEmoticonTheme = v; + self()->mSettingsChanged.insert(signalEmoticonSettingsChanged); + } + } + + /** + Get Current emoticon theme. + */ + static + QString emoticonTheme() + { + return self()->mEmoticonTheme; + } + + /** + Is Current emoticon theme. Immutable + */ + static + bool isEmoticonThemeImmutable() + { + return self()->isImmutable( QStringLiteral( "emoticonTheme" ) ); + } + + /** + Set Enable emoticon support in Kopete. + */ + static + void setUseEmoticon( bool v ) + { + if (v != self()->mUseEmoticon && !self()->isUseEmoticonImmutable()) { + self()->mUseEmoticon = v; + self()->mSettingsChanged.insert(signalEmoticonSettingsChanged); + } + } + + /** + Get Enable emoticon support in Kopete. + */ + static + bool useEmoticon() + { + return self()->mUseEmoticon; + } + + /** + Is Enable emoticon support in Kopete. Immutable + */ + static + bool isUseEmoticonImmutable() + { + return self()->isImmutable( QStringLiteral( "useEmoticon" ) ); + } + + /** + Set Use strict mode in emoticon parsing. + */ + static + void setEmoticonRequireSpace( bool v ) + { + if (v != self()->mEmoticonRequireSpace && !self()->isEmoticonRequireSpaceImmutable()) { + self()->mEmoticonRequireSpace = v; + self()->mSettingsChanged.insert(signalEmoticonSettingsChanged); + } + } + + /** + Get Use strict mode in emoticon parsing. + */ + static + bool emoticonRequireSpace() + { + return self()->mEmoticonRequireSpace; + } + + /** + Is Use strict mode in emoticon parsing. Immutable + */ + static + bool isEmoticonRequireSpaceImmutable() + { + return self()->isImmutable( QStringLiteral( "emoticonRequireSpace" ) ); + } + + /** + Set Absolute path to a directory containing a Adium/Kopete chat window style. + */ + static + void setStylePath( const QString & v ) + { + if (v != self()->mStylePath && !self()->isStylePathImmutable()) { + self()->mStylePath = v; + self()->mSettingsChanged.insert(signalStyleChanged); + } + } + + /** + Get Absolute path to a directory containing a Adium/Kopete chat window style. + */ + static + QString stylePath() + { + return self()->mStylePath; + } + + /** + Is Absolute path to a directory containing a Adium/Kopete chat window style. Immutable + */ + static + bool isStylePathImmutable() + { + return self()->isImmutable( QStringLiteral( "stylePath" ) ); + } + + /** + Set Relative path to a CSS variant for the current style. + */ + static + void setStyleCSSVariant( const QString & v ) + { + if (!self()->isStyleCSSVariantImmutable()) + self()->mStyleCSSVariant = v; + } + + /** + Get Relative path to a CSS variant for the current style. + */ + static + QString styleCSSVariant() + { + return self()->mStyleCSSVariant; + } + + /** + Is Relative path to a CSS variant for the current style. Immutable + */ + static + bool isStyleCSSVariantImmutable() + { + return self()->isImmutable( QStringLiteral( "StyleCSSVariant" ) ); + } + + + enum { + signalEmoticonSettingsChanged = 1, + signalStyleChanged = 2 + }; + + Q_SIGNALS: + void emoticonSettingsChanged(); + + /** + Tell when a complete style change. + */ + void styleChanged(const QString & stylePath, const QString & StyleCSSVariant); + + private: + void itemChanged(quint64 signalFlag); + + protected: + TestSignal(); + friend class TestSignalHelper; + + bool usrSave() override; + + // Appearance + QString mEmoticonTheme; + bool mUseEmoticon; + bool mEmoticonRequireSpace; + QString mStylePath; + QString mStyleCSSVariant; + + private: + QSet mSettingsChanged; +}; + +#endif + diff --git a/autotests/kconfig_compiler/test_signal.kcfg b/autotests/kconfig_compiler/test_signal.kcfg new file mode 100644 index 0000000..83f4363 --- /dev/null +++ b/autotests/kconfig_compiler/test_signal.kcfg @@ -0,0 +1,45 @@ + + + + + + + + + + stylePath + StyleCSSVariant + + + + + + + Default + + + + + true + + + + + true + + + + + + + + + + + + + + diff --git a/autotests/kconfig_compiler/test_signal.kcfgc b/autotests/kconfig_compiler/test_signal.kcfgc new file mode 100644 index 0000000..b2a2fc0 --- /dev/null +++ b/autotests/kconfig_compiler/test_signal.kcfgc @@ -0,0 +1,7 @@ +File=test_signal.kcfg +ClassName=TestSignal +Singleton=true +Mutators=true +MemberVariables=private +GlobalEnums=false +ItemAccessors=false diff --git a/autotests/kconfig_compiler/test_signal_main.cpp b/autotests/kconfig_compiler/test_signal_main.cpp new file mode 100644 index 0000000..66ec3e1 --- /dev/null +++ b/autotests/kconfig_compiler/test_signal_main.cpp @@ -0,0 +1,17 @@ +/* + SPDX-FileCopyrightText: 2006 Michael Larouche + + SPDX-License-Identifier: MIT +*/ + +#include "test_signal.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + TestSignal *t = TestSignal::self(); + delete t; + return 0; +} diff --git a/autotests/kconfig_compiler/test_state_config.kcfg b/autotests/kconfig_compiler/test_state_config.kcfg new file mode 100644 index 0000000..9c9e96c --- /dev/null +++ b/autotests/kconfig_compiler/test_state_config.kcfg @@ -0,0 +1,14 @@ + + + + + + + 0 + + + + diff --git a/autotests/kconfig_compiler/test_state_config.kcfgc b/autotests/kconfig_compiler/test_state_config.kcfgc new file mode 100644 index 0000000..6b79bd1 --- /dev/null +++ b/autotests/kconfig_compiler/test_state_config.kcfgc @@ -0,0 +1,6 @@ +# Code generation options for kconfig_compiler_kf6 +File=test_state_config.kcfg +ClassName=MyStateConfig +Singleton=false +Mutators=true +ItemAccessors=true diff --git a/autotests/kconfig_compiler/test_state_config_main.cpp b/autotests/kconfig_compiler/test_state_config_main.cpp new file mode 100644 index 0000000..bdf8d5f --- /dev/null +++ b/autotests/kconfig_compiler/test_state_config_main.cpp @@ -0,0 +1,41 @@ +/* + SPDX-FileCopyrightText: 2021 Alexander Lohnau + + SPDX-License-Identifier: MIT +*/ + +#include "test_state_config.h" +#include + +class TestStateConfig : public QObject +{ + Q_OBJECT + +private Q_SLOTS: + void testStateConfig() + { + auto stateConfig = KSharedConfig::openStateConfig(QStringLiteral("test_statedatarc")); + + // Clean the group at every start + stateConfig->deleteGroup(QStringLiteral("General")); + stateConfig->sync(); + + // It should have the default value + QCOMPARE(MyStateConfig().someStateData(), 0); + + // the updated value should be read from the generated config class + stateConfig->group(QStringLiteral("General")).writeEntry("SomeStateData", 1); + QCOMPARE(MyStateConfig().someStateData(), 1); + + // Make sure writing the value works as expected + MyStateConfig cfg; + cfg.setSomeStateData(2); + QVERIFY(cfg.isSaveNeeded()); + cfg.save(); + stateConfig->reparseConfiguration(); + QCOMPARE(stateConfig->group(QStringLiteral("General")).readEntry("SomeStateData", -1), 2); + } +}; +QTEST_MAIN(TestStateConfig) + +#include "test_state_config_main.moc" diff --git a/autotests/kconfig_compiler/test_subgroups.cpp.ref b/autotests/kconfig_compiler/test_subgroups.cpp.ref new file mode 100644 index 0000000..11287ab --- /dev/null +++ b/autotests/kconfig_compiler/test_subgroups.cpp.ref @@ -0,0 +1,47 @@ +// This file is generated by kconfig_compiler_kf6 from test_subgroups.kcfg. +// All changes you do to this file will be lost. + +#include "test_subgroups.h" + +TestSubgroups::TestSubgroups( const QString & GeneralGroup, const QString & SubGroup, const QString & AnotherSubGroup ) + : KConfigSkeleton( QStringLiteral( "kconfig_compiler_kf6_test_rc" ) ) + , mParamGeneralGroup(GeneralGroup) + , mParamSubGroup(SubGroup) + , mParamAnotherSubGroup(AnotherSubGroup) +{ + KConfigGroup cgGeneralGroup(this->config(), QStringLiteral( "%1" ).arg( mParamGeneralGroup )); + KConfigGroup cgSubGroup = cgGeneralGroup.group(QStringLiteral( "%1" ).arg( mParamSubGroup )); + KConfigSkeleton::ItemBool *itemFoo; + itemFoo = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "Foo" ), mFoo, true ); + itemFoo->setWriteFlags(KConfigBase::Notify); + itemFoo->setGroup(cgSubGroup); + addItem( itemFoo, QStringLiteral( "Foo" ) ); + + KConfigGroup cgother = cgGeneralGroup.group(QStringLiteral( "other" )); + KConfigSkeleton::ItemInt *itemBar; + itemBar = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "Bar" ), mBar, 42 ); + itemBar->setWriteFlags(KConfigBase::Notify); + itemBar->setGroup(cgother); + addItem( itemBar, QStringLiteral( "Bar" ) ); + + KConfigGroup cgParentGroup(this->config(), QStringLiteral( "ParentGroup" )); + KConfigGroup cgAnotherSubGroup = cgParentGroup.group(QStringLiteral( "%1" ).arg( mParamAnotherSubGroup )); + KConfigSkeleton::ItemBool *itemBaz; + itemBaz = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "Baz" ), mBaz, true ); + itemBaz->setWriteFlags(KConfigBase::Notify); + itemBaz->setGroup(cgAnotherSubGroup); + addItem( itemBaz, QStringLiteral( "Baz" ) ); + + KConfigGroup cgSimpleParentGroup(this->config(), QStringLiteral( "SimpleParentGroup" )); + KConfigGroup cgSimpleGroup = cgSimpleParentGroup.group(QStringLiteral( "SimpleGroup" )); + KConfigSkeleton::ItemBool *itemFoobar; + itemFoobar = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "Foobar" ), mFoobar, true ); + itemFoobar->setWriteFlags(KConfigBase::Notify); + itemFoobar->setGroup(cgSimpleGroup); + addItem( itemFoobar, QStringLiteral( "Foobar" ) ); +} + +TestSubgroups::~TestSubgroups() +{ +} + diff --git a/autotests/kconfig_compiler/test_subgroups.h.ref b/autotests/kconfig_compiler/test_subgroups.h.ref new file mode 100644 index 0000000..96a8cc0 --- /dev/null +++ b/autotests/kconfig_compiler/test_subgroups.h.ref @@ -0,0 +1,102 @@ +// This file is generated by kconfig_compiler_kf6 from test_subgroups.kcfg. +// All changes you do to this file will be lost. +#ifndef TESTSUBGROUPS_H +#define TESTSUBGROUPS_H + +#include +#include +#include + +class TestSubgroups : public KConfigSkeleton +{ + public: + + TestSubgroups( const QString & GeneralGroup, const QString & SubGroup, const QString & AnotherSubGroup ); + ~TestSubgroups() override; + + /** + Get Foo + */ + bool foo() const + { + return mFoo; + } + + /** + Is Foo Immutable + */ + bool isFooImmutable() const + { + return isImmutable( QStringLiteral( "Foo" ) ); + } + + /** + Get Bar + */ + int bar() const + { + return mBar; + } + + /** + Is Bar Immutable + */ + bool isBarImmutable() const + { + return isImmutable( QStringLiteral( "Bar" ) ); + } + + /** + Get Baz + */ + bool baz() const + { + return mBaz; + } + + /** + Is Baz Immutable + */ + bool isBazImmutable() const + { + return isImmutable( QStringLiteral( "Baz" ) ); + } + + /** + Get Foobar + */ + bool foobar() const + { + return mFoobar; + } + + /** + Is Foobar Immutable + */ + bool isFoobarImmutable() const + { + return isImmutable( QStringLiteral( "Foobar" ) ); + } + + protected: + QString mParamGeneralGroup; + QString mParamSubGroup; + QString mParamAnotherSubGroup; + + // $(SubGroup) + bool mFoo; + + // other + int mBar; + + // $(AnotherSubGroup) + bool mBaz; + + // SimpleGroup + bool mFoobar; + + private: +}; + +#endif + diff --git a/autotests/kconfig_compiler/test_subgroups.kcfg b/autotests/kconfig_compiler/test_subgroups.kcfg new file mode 100644 index 0000000..9d660bc --- /dev/null +++ b/autotests/kconfig_compiler/test_subgroups.kcfg @@ -0,0 +1,31 @@ + + + + + + + + + + true + + + + + 42 + + + + + true + + + + + true + + + diff --git a/autotests/kconfig_compiler/test_subgroups.kcfgc b/autotests/kconfig_compiler/test_subgroups.kcfgc new file mode 100644 index 0000000..971964b --- /dev/null +++ b/autotests/kconfig_compiler/test_subgroups.kcfgc @@ -0,0 +1,3 @@ +File=test_subgroups.kcfg +ClassName=TestSubgroups +Notifiers=true diff --git a/autotests/kconfig_compiler/test_subgroups_main.cpp b/autotests/kconfig_compiler/test_subgroups_main.cpp new file mode 100644 index 0000000..63b7c30 --- /dev/null +++ b/autotests/kconfig_compiler/test_subgroups_main.cpp @@ -0,0 +1,31 @@ +/* + This file is part of KDE. + + Copyright (C) 2020 Cyril Rossi + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#include "test_subgroups.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + TestSubgroups t = TestSubgroups(QStringLiteral("General"), QStringLiteral("Sub"), QStringLiteral("AnotherSub")); + return 0; +} diff --git a/autotests/kconfig_compiler/test_translation.kcfg b/autotests/kconfig_compiler/test_translation.kcfg new file mode 100644 index 0000000..ca2c208 --- /dev/null +++ b/autotests/kconfig_compiler/test_translation.kcfg @@ -0,0 +1,16 @@ + + + + + + + + Enable automatic saving of calendars to have calendars saved automatically. + false + + + + diff --git a/autotests/kconfig_compiler/test_translation_kde.cpp.ref b/autotests/kconfig_compiler/test_translation_kde.cpp.ref new file mode 100644 index 0000000..ca7afa2 --- /dev/null +++ b/autotests/kconfig_compiler/test_translation_kde.cpp.ref @@ -0,0 +1,25 @@ +// This file is generated by kconfig_compiler_kf6 from test_translation.kcfg. +// All changes you do to this file will be lost. + +#include "test_translation_kde.h" + +#include + +using namespace TestNameSpace; + +TestTranslationKde::TestTranslationKde( ) + : KConfigSkeleton( QStringLiteral( "test_translation_rc" ) ) +{ + setCurrentGroup( QStringLiteral( "General" ) ); + + KConfigSkeleton::ItemBool *itemAutoSave; + itemAutoSave = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "Auto Save" ), mAutoSave, false ); + itemAutoSave->setLabel( i18n("Enable automatic saving of calendar") ); + itemAutoSave->setWhatsThis( i18nc("@info:whatsthis", "Enable automatic saving of calendars to have calendars saved automatically.") ); + addItem( itemAutoSave, QStringLiteral( "AutoSave" ) ); +} + +TestTranslationKde::~TestTranslationKde() +{ +} + diff --git a/autotests/kconfig_compiler/test_translation_kde.h.ref b/autotests/kconfig_compiler/test_translation_kde.h.ref new file mode 100644 index 0000000..2effe3d --- /dev/null +++ b/autotests/kconfig_compiler/test_translation_kde.h.ref @@ -0,0 +1,47 @@ +// This file is generated by kconfig_compiler_kf6 from test_translation.kcfg. +// All changes you do to this file will be lost. +#ifndef TESTNAMESPACE_TESTTRANSLATIONKDE_H +#define TESTNAMESPACE_TESTTRANSLATIONKDE_H + +#include +#include +#include +#include + +namespace TestNameSpace { + +class TestTranslationKde : public KConfigSkeleton +{ + public: + + TestTranslationKde( ); + ~TestTranslationKde() override; + + /** + Get Enable automatic saving of calendar + */ + bool autoSave() const + { + return mAutoSave; + } + + /** + Is Enable automatic saving of calendar Immutable + */ + bool isAutoSaveImmutable() const + { + return isImmutable( QStringLiteral( "AutoSave" ) ); + } + + protected: + + // General + bool mAutoSave; + + private: +}; + +} + +#endif + diff --git a/autotests/kconfig_compiler/test_translation_kde.kcfgc b/autotests/kconfig_compiler/test_translation_kde.kcfgc new file mode 100644 index 0000000..8f107e8 --- /dev/null +++ b/autotests/kconfig_compiler/test_translation_kde.kcfgc @@ -0,0 +1,6 @@ +# Code generation options for kconfig_compiler_kf6 +File=test_translation.kcfg +NameSpace=TestNameSpace +ClassName=TestTranslationKde +SetUserTexts=true +TranslationSystem=kde diff --git a/autotests/kconfig_compiler/test_translation_kde_domain.cpp.ref b/autotests/kconfig_compiler/test_translation_kde_domain.cpp.ref new file mode 100644 index 0000000..a5c70c4 --- /dev/null +++ b/autotests/kconfig_compiler/test_translation_kde_domain.cpp.ref @@ -0,0 +1,25 @@ +// This file is generated by kconfig_compiler_kf6 from test_translation.kcfg. +// All changes you do to this file will be lost. + +#include "test_translation_kde_domain.h" + +#include + +using namespace TestNameSpace; + +TestTranslationKdeDomain::TestTranslationKdeDomain( ) + : KConfigSkeleton( QStringLiteral( "test_translation_rc" ) ) +{ + setCurrentGroup( QStringLiteral( "General" ) ); + + KConfigSkeleton::ItemBool *itemAutoSave; + itemAutoSave = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "Auto Save" ), mAutoSave, false ); + itemAutoSave->setLabel( i18nd("test-kcfg-kde", "Enable automatic saving of calendar") ); + itemAutoSave->setWhatsThis( i18ndc("test-kcfg-kde", "@info:whatsthis", "Enable automatic saving of calendars to have calendars saved automatically.") ); + addItem( itemAutoSave, QStringLiteral( "AutoSave" ) ); +} + +TestTranslationKdeDomain::~TestTranslationKdeDomain() +{ +} + diff --git a/autotests/kconfig_compiler/test_translation_kde_domain.h.ref b/autotests/kconfig_compiler/test_translation_kde_domain.h.ref new file mode 100644 index 0000000..2587448 --- /dev/null +++ b/autotests/kconfig_compiler/test_translation_kde_domain.h.ref @@ -0,0 +1,47 @@ +// This file is generated by kconfig_compiler_kf6 from test_translation.kcfg. +// All changes you do to this file will be lost. +#ifndef TESTNAMESPACE_TESTTRANSLATIONKDEDOMAIN_H +#define TESTNAMESPACE_TESTTRANSLATIONKDEDOMAIN_H + +#include +#include +#include +#include + +namespace TestNameSpace { + +class TestTranslationKdeDomain : public KConfigSkeleton +{ + public: + + TestTranslationKdeDomain( ); + ~TestTranslationKdeDomain() override; + + /** + Get Enable automatic saving of calendar + */ + bool autoSave() const + { + return mAutoSave; + } + + /** + Is Enable automatic saving of calendar Immutable + */ + bool isAutoSaveImmutable() const + { + return isImmutable( QStringLiteral( "AutoSave" ) ); + } + + protected: + + // General + bool mAutoSave; + + private: +}; + +} + +#endif + diff --git a/autotests/kconfig_compiler/test_translation_kde_domain.kcfgc b/autotests/kconfig_compiler/test_translation_kde_domain.kcfgc new file mode 100644 index 0000000..32d3e6a --- /dev/null +++ b/autotests/kconfig_compiler/test_translation_kde_domain.kcfgc @@ -0,0 +1,7 @@ +# Code generation options for kconfig_compiler_kf6 +File=test_translation.kcfg +NameSpace=TestNameSpace +ClassName=TestTranslationKdeDomain +SetUserTexts=true +TranslationSystem=kde +TranslationDomain=test-kcfg-kde diff --git a/autotests/kconfig_compiler/test_translation_kde_domain_main.cpp b/autotests/kconfig_compiler/test_translation_kde_domain_main.cpp new file mode 100644 index 0000000..45492b7 --- /dev/null +++ b/autotests/kconfig_compiler/test_translation_kde_domain_main.cpp @@ -0,0 +1,16 @@ +/* + SPDX-FileCopyrightText: 2015 Chusslove Illich + + SPDX-License-Identifier: MIT +*/ + +#include "test_translation_kde_domain.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + TestNameSpace::TestTranslationKdeDomain t = TestNameSpace::TestTranslationKdeDomain(); + return 0; +} diff --git a/autotests/kconfig_compiler/test_translation_kde_main.cpp b/autotests/kconfig_compiler/test_translation_kde_main.cpp new file mode 100644 index 0000000..e89748b --- /dev/null +++ b/autotests/kconfig_compiler/test_translation_kde_main.cpp @@ -0,0 +1,16 @@ +/* + SPDX-FileCopyrightText: 2015 Chusslove Illich + + SPDX-License-Identifier: MIT +*/ + +#include "test_translation_kde.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + TestNameSpace::TestTranslationKde t = TestNameSpace::TestTranslationKde(); + return 0; +} diff --git a/autotests/kconfig_compiler/test_translation_qt.cpp.ref b/autotests/kconfig_compiler/test_translation_qt.cpp.ref new file mode 100644 index 0000000..2d3109e --- /dev/null +++ b/autotests/kconfig_compiler/test_translation_qt.cpp.ref @@ -0,0 +1,23 @@ +// This file is generated by kconfig_compiler_kf6 from test_translation.kcfg. +// All changes you do to this file will be lost. + +#include "test_translation_qt.h" + +using namespace TestNameSpace; + +TestTranslationQt::TestTranslationQt( ) + : KConfigSkeleton( QStringLiteral( "test_translation_rc" ) ) +{ + setCurrentGroup( QStringLiteral( "General" ) ); + + KConfigSkeleton::ItemBool *itemAutoSave; + itemAutoSave = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "Auto Save" ), mAutoSave, false ); + itemAutoSave->setLabel( QCoreApplication::translate("TestTranslationQt", "Enable automatic saving of calendar") ); + itemAutoSave->setWhatsThis( /*: @info:whatsthis */ QCoreApplication::translate("TestTranslationQt", "Enable automatic saving of calendars to have calendars saved automatically.") ); + addItem( itemAutoSave, QStringLiteral( "AutoSave" ) ); +} + +TestTranslationQt::~TestTranslationQt() +{ +} + diff --git a/autotests/kconfig_compiler/test_translation_qt.h.ref b/autotests/kconfig_compiler/test_translation_qt.h.ref new file mode 100644 index 0000000..afd8440 --- /dev/null +++ b/autotests/kconfig_compiler/test_translation_qt.h.ref @@ -0,0 +1,47 @@ +// This file is generated by kconfig_compiler_kf6 from test_translation.kcfg. +// All changes you do to this file will be lost. +#ifndef TESTNAMESPACE_TESTTRANSLATIONQT_H +#define TESTNAMESPACE_TESTTRANSLATIONQT_H + +#include +#include +#include +#include + +namespace TestNameSpace { + +class TestTranslationQt : public KConfigSkeleton +{ + public: + + TestTranslationQt( ); + ~TestTranslationQt() override; + + /** + Get Enable automatic saving of calendar + */ + bool autoSave() const + { + return mAutoSave; + } + + /** + Is Enable automatic saving of calendar Immutable + */ + bool isAutoSaveImmutable() const + { + return isImmutable( QStringLiteral( "AutoSave" ) ); + } + + protected: + + // General + bool mAutoSave; + + private: +}; + +} + +#endif + diff --git a/autotests/kconfig_compiler/test_translation_qt.kcfgc b/autotests/kconfig_compiler/test_translation_qt.kcfgc new file mode 100644 index 0000000..31b0fe9 --- /dev/null +++ b/autotests/kconfig_compiler/test_translation_qt.kcfgc @@ -0,0 +1,6 @@ +# Code generation options for kconfig_compiler_kf6 +File=test_translation.kcfg +NameSpace=TestNameSpace +ClassName=TestTranslationQt +SetUserTexts=true +TranslationSystem=qt diff --git a/autotests/kconfig_compiler/test_translation_qt_main.cpp b/autotests/kconfig_compiler/test_translation_qt_main.cpp new file mode 100644 index 0000000..95877d9 --- /dev/null +++ b/autotests/kconfig_compiler/test_translation_qt_main.cpp @@ -0,0 +1,16 @@ +/* + SPDX-FileCopyrightText: 2015 Chusslove Illich + + SPDX-License-Identifier: MIT +*/ + +#include "test_translation_qt.h" +#include + +int main(int argc, char **argv) +{ + QGuiApplication app(argc, argv); + Q_UNUSED(app); + TestNameSpace::TestTranslationQt t = TestNameSpace::TestTranslationQt(); + return 0; +} diff --git a/autotests/kconfigguitest.cpp b/autotests/kconfigguitest.cpp new file mode 100644 index 0000000..ffb7af3 --- /dev/null +++ b/autotests/kconfigguitest.cpp @@ -0,0 +1,150 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 1997 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kconfigguitest.h" +#include + +#include +#include +#include +#include +#include +#include + +QTEST_MAIN(KConfigTest) + +// clazy:excludeall=non-pod-global-static + +static const QColor s_color_entry1(QLatin1String{"steelblue"}); +static const QColor s_color_entry2(235, 235, 100, 125); +static const QColor s_color_entry3(234, 234, 127); + +static QFont fontEntry() +{ + return QFont{QStringLiteral("Times"), 16, QFont::Normal}; +} + +void KConfigTest::initTestCase() +{ + QStandardPaths::setTestModeEnabled(true); + + // cheat the linker on windows to link against kconfiggui + KConfigSkeleton foo; + Q_UNUSED(foo); + + KConfig sc(QStringLiteral("kconfigtest")); + + KConfigGroup cg(&sc, QStringLiteral("ComplexTypes")); + cg.writeEntry("colorEntry1", s_color_entry1); + cg.writeEntry("colorEntry2", s_color_entry2); + cg.writeEntry("colorEntry3", (QList() << 234 << 234 << 127)); + cg.writeEntry("colorEntry4", (QList() << 235 << 235 << 100 << 125)); + cg.writeEntry("fontEntry", fontEntry()); + QVERIFY(sc.sync()); + + KConfig sc1(QStringLiteral("kdebugrc")); + KConfigGroup sg0(&sc1, QStringLiteral("0")); + sg0.writeEntry("AbortFatal", false); + sg0.writeEntry("WarnOutput", 0); + sg0.writeEntry("FatalOutput", 0); + QVERIFY(sc1.sync()); + + // Qt 5.8.0 would fail the fromString(toString) roundtrip in QFont + // if the qApp font has a styleName set. + // This is fixed by https://codereview.qt-project.org/181645 + // It's not in yet, and it depends on the app font, so rather than + // a version check, let's do a runtime check. + QFont orig(fontEntry()); + QFont f; + f.fromString(orig.toString()); + m_fontFromStringBug = (f.toString() != orig.toString()); + if (m_fontFromStringBug) { + qDebug() << "QFont::fromString serialization bug (Qt 5.8.0), the font test will be skipped" << f.toString() << "!=" << orig.toString(); + } +} + +void KConfigTest::cleanupTestCase() +{ + QDir dir(QStandardPaths::writableLocation(QStandardPaths::ConfigLocation)); + QVERIFY(dir.removeRecursively()); +} + +void KConfigTest::testComplex() +{ + KConfig sc2(QStringLiteral("kconfigtest")); + KConfigGroup sc3(&sc2, QStringLiteral("ComplexTypes")); + + QCOMPARE(QVariant(sc3.readEntry("colorEntry1", QColor(Qt::black))).toString(), QVariant(s_color_entry1).toString()); + QCOMPARE(sc3.readEntry("colorEntry1", QColor()), s_color_entry1); + QCOMPARE(sc3.readEntry("colorEntry2", QColor()), s_color_entry2); + QCOMPARE(sc3.readEntry("colorEntry3", QColor()), s_color_entry3); + QCOMPARE(sc3.readEntry("colorEntry4", QColor()), s_color_entry2); + QCOMPARE(sc3.readEntry("defaultColorTest", QColor("black")), QColor("black")); + if (m_fontFromStringBug) { + QEXPECT_FAIL("", "QFont fromString bug from Qt 5.8.0", Continue); + } + QCOMPARE(sc3.readEntry("fontEntry", QFont()), fontEntry()); +} + +void KConfigTest::testInvalid() +{ + KConfig sc(QStringLiteral("kconfigtest")); + + // all of these should print a message to the kdebug.dbg file + KConfigGroup sc3(&sc, QStringLiteral("InvalidTypes")); + + QList list; + + // 1 element list + list << 1; + sc3.writeEntry(QStringLiteral("badList"), list); + QVERIFY(sc.sync()); + + QVERIFY(sc3.readEntry("badList", QColor()) == QColor()); + + // 2 element list + list << 2; + sc3.writeEntry("badList", list); + QVERIFY(sc.sync()); + + QVERIFY(sc3.readEntry("badList", QColor()) == QColor()); + + // 3 element list + list << 303; + sc3.writeEntry("badList", list); + QVERIFY(sc.sync()); + + QVERIFY(sc3.readEntry("badList", QColor()) == QColor()); // out of bounds + + // 4 element list + list << 4; + sc3.writeEntry("badList", list); + QVERIFY(sc.sync()); + + QVERIFY(sc3.readEntry("badList", QColor()) == QColor()); // out of bounds + + list[2] = -3; + sc3.writeEntry("badList", list); + QVERIFY(sc.sync()); + QVERIFY(sc3.readEntry("badList", QColor()) == QColor()); // out of bounds + + // 5 element list + list[2] = 3; + list << 5; + sc3.writeEntry("badList", list); + QVERIFY(sc.sync()); + + QVERIFY(sc3.readEntry("badList", QColor()) == QColor()); + + // 6 element list + list << 6; + sc3.writeEntry("badList", list); + QVERIFY(sc.sync()); + + QVERIFY(sc3.readEntry("badList", QColor()) == QColor()); +} + +#include "moc_kconfigguitest.cpp" diff --git a/autotests/kconfigguitest.h b/autotests/kconfigguitest.h new file mode 100644 index 0000000..607575d --- /dev/null +++ b/autotests/kconfigguitest.h @@ -0,0 +1,25 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 1997 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ +#ifndef KCONFIGTEST_H +#define KCONFIGTEST_H + +#include + +class KConfigTest : public QObject +{ + Q_OBJECT + +private Q_SLOTS: + void testComplex(); + void testInvalid(); + void initTestCase(); + void cleanupTestCase(); + +private: + bool m_fontFromStringBug; +}; + +#endif /* KCONFIGTEST_H */ diff --git a/autotests/kconfigloadertest.cpp b/autotests/kconfigloadertest.cpp new file mode 100644 index 0000000..c20d8b9 --- /dev/null +++ b/autotests/kconfigloadertest.cpp @@ -0,0 +1,234 @@ +/* + SPDX-FileCopyrightText: 2010 Martin Blumenstingl + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ +#include "kconfigloadertest.h" + +#include +#include +#include +#include + +Q_DECLARE_METATYPE(QList) + +static const QString s_testName(QStringLiteral("kconfigloadertest")); // clazy:exclude=non-pod-global-static + +#define GET_CONFIG_ITEM_VALUE(type, configName) \ + KConfigSkeletonItem *item = cl->findItem(s_testName, configName); \ + /* Check if we got back a valid item. */ \ + QVERIFY(item != nullptr); \ + /* Cast the item to the given type. */ \ + type typeItem = dynamic_cast(item); \ + /* Make sure the cast was successful. */ \ + QVERIFY(typeItem != nullptr); + +void ConfigLoaderTest::init() +{ + QString fileName = s_testName + QLatin1String(".xml"); + configFile = new QFile(QFINDTESTDATA(QString::fromLatin1("/") + fileName)); + cl = new KConfigLoader(configFile->fileName(), configFile); +} + +void ConfigLoaderTest::cleanup() +{ + delete cl; + delete configFile; +} + +void ConfigLoaderTest::boolDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemBool *, QStringLiteral("DefaultBoolItem")); + + QVERIFY(typeItem->isEqual(true)); +} + +void ConfigLoaderTest::colorDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KConfigSkeleton::ItemColor *, QStringLiteral("DefaultColorItem")); + + QVERIFY(typeItem->isEqual(QColor("#00FF00"))); +} + +void ConfigLoaderTest::dateTimeDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemDateTime *, QStringLiteral("DefaultDateTimeItem")); + + QVERIFY(typeItem->isEqual(QDateTime::fromString(QStringLiteral("Thu Sep 09 2010")))); +} + +void ConfigLoaderTest::enumDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KConfigSkeleton::ItemEnum *, QStringLiteral("DefaultEnumItem")); + + QVERIFY(typeItem->isEqual(3)); +} + +void ConfigLoaderTest::enumDefaultValueString() +{ + GET_CONFIG_ITEM_VALUE(KConfigSkeleton::ItemEnum *, QStringLiteral("DefaultEnumItemString")); + + QVERIFY(typeItem->isEqual(2)); +} + +void ConfigLoaderTest::fontDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KConfigSkeleton::ItemFont *, QStringLiteral("DefaultFontItem")); + + QVERIFY(typeItem->isEqual(QFont(QStringLiteral("DejaVu Sans")))); +} + +void ConfigLoaderTest::intDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemInt *, QStringLiteral("DefaultIntItem")); + + QVERIFY(typeItem->isEqual(27)); +} + +void ConfigLoaderTest::passwordDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KConfigSkeleton::ItemPassword *, QStringLiteral("DefaultPasswordItem")); + + QVERIFY(typeItem->isEqual(QString::fromLatin1("h4x."))); +} + +void ConfigLoaderTest::pathDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KConfigSkeleton::ItemPath *, QStringLiteral("DefaultPathItem")); + + QVERIFY(typeItem->isEqual(QString::fromLatin1("/dev/null"))); +} + +void ConfigLoaderTest::stringDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KConfigSkeleton::ItemString *, QStringLiteral("DefaultStringItem")); + + QVERIFY(typeItem->isEqual(QString::fromLatin1("TestString"))); +} + +void ConfigLoaderTest::stringListDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KConfigSkeleton::ItemStringList *, QStringLiteral("DefaultStringListItem")); + + // Create a string list with the expected values. + QStringList expected; + expected.append(QStringLiteral("One")); + expected.append(QStringLiteral("Two")); + expected.append(QStringLiteral("Three")); + expected.append(QStringLiteral("Four")); + expected.append(QStringLiteral("Five")); + + QVERIFY(typeItem->isEqual(expected)); +} + +void ConfigLoaderTest::uintDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemUInt *, QStringLiteral("DefaultUIntItem")); + + QVERIFY(typeItem->isEqual(7U)); +} + +void ConfigLoaderTest::urlDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemUrl *, QStringLiteral("DefaultUrlItem")); + + QVERIFY(typeItem->isEqual(QUrl(QStringLiteral("http://kde.org")))); +} + +void ConfigLoaderTest::doubleDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemDouble *, QStringLiteral("DefaultDoubleItem")); + + QVERIFY(typeItem->isEqual(13.37)); +} + +void ConfigLoaderTest::intListDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemIntList *, QStringLiteral("DefaultIntListItem")); + + // Create a int list with the expected values. + QList expected; + expected.append(1); + expected.append(1); + expected.append(2); + expected.append(3); + expected.append(5); + expected.append(8); + + QVERIFY(typeItem->isEqual(QVariant::fromValue(expected))); +} + +void ConfigLoaderTest::intListEmptyDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemIntList *, QStringLiteral("EmptyDefaultIntListItem")); + + QVERIFY(typeItem->value().isEmpty()); +} + +void ConfigLoaderTest::longLongDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemLongLong *, QStringLiteral("DefaultLongLongItem")); + + QVERIFY(typeItem->isEqual(Q_INT64_C(-9211372036854775808))); +} + +void ConfigLoaderTest::pointDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemPoint *, QStringLiteral("DefaultPointItem")); + + QVERIFY(typeItem->isEqual(QPoint(185, 857))); +} + +void ConfigLoaderTest::pointFDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemPointF *, QStringLiteral("DefaultPointFItem")); + + QVERIFY(typeItem->isEqual(QPointF(185.5, 857.5))); +} + +void ConfigLoaderTest::rectDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemRect *, QStringLiteral("DefaultRectItem")); + + // Create a new QRect with the expected value. + QRect expected; + expected.setCoords(3, 7, 951, 358); + + QVERIFY(typeItem->isEqual(expected)); +} + +void ConfigLoaderTest::rectFDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemRectF *, QStringLiteral("DefaultRectFItem")); + + // Create a new QRectF with the expected value. + QRectF expected; + expected.setCoords(3.5, 7.5, 951.5, 358.5); + + QVERIFY(typeItem->isEqual(expected)); +} + +void ConfigLoaderTest::sizeDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemSize *, QStringLiteral("DefaultSizeItem")); + + QVERIFY(typeItem->isEqual(QSize(640, 480))); +} + +void ConfigLoaderTest::sizeFDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemSizeF *, QStringLiteral("DefaultSizeFItem")); + + QVERIFY(typeItem->isEqual(QSizeF(640.5, 480.5))); +} + +void ConfigLoaderTest::ulongLongDefaultValue() +{ + GET_CONFIG_ITEM_VALUE(KCoreConfigSkeleton::ItemULongLong *, QStringLiteral("DefaultULongLongItem")); + + QVERIFY(typeItem->isEqual(Q_UINT64_C(9223372036854775806))); +} + +QTEST_MAIN(ConfigLoaderTest) + +#include "moc_kconfigloadertest.cpp" diff --git a/autotests/kconfigloadertest.h b/autotests/kconfigloadertest.h new file mode 100644 index 0000000..2ad259a --- /dev/null +++ b/autotests/kconfigloadertest.h @@ -0,0 +1,55 @@ +/* + SPDX-FileCopyrightText: 2010 Martin Blumenstingl + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGLOADERTEST_H +#define KCONFIGLOADERTEST_H + +#include + +class KConfigLoader; + +class QFile; + +class ConfigLoaderTest : public QObject +{ + Q_OBJECT + +public Q_SLOTS: + void init(); + void cleanup(); + +private Q_SLOTS: + void boolDefaultValue(); + void colorDefaultValue(); + void dateTimeDefaultValue(); + void enumDefaultValue(); + void enumDefaultValueString(); + void fontDefaultValue(); + void intDefaultValue(); + void passwordDefaultValue(); + void pathDefaultValue(); + void stringDefaultValue(); + void stringListDefaultValue(); + void uintDefaultValue(); + void urlDefaultValue(); + void doubleDefaultValue(); + void intListEmptyDefaultValue(); + void intListDefaultValue(); + void longLongDefaultValue(); + void pointDefaultValue(); + void pointFDefaultValue(); + void rectDefaultValue(); + void rectFDefaultValue(); + void sizeDefaultValue(); + void sizeFDefaultValue(); + void ulongLongDefaultValue(); + +private: + KConfigLoader *cl; + QFile *configFile; +}; + +#endif diff --git a/autotests/kconfigloadertest.xml b/autotests/kconfigloadertest.xml new file mode 100644 index 0000000..84d9357 --- /dev/null +++ b/autotests/kconfigloadertest.xml @@ -0,0 +1,90 @@ + + + + + + + true + + + #00FF00 + + + Thu Sep 09 2010 + + + 3 + + + + + + + Coconuts + + + + + + + DejaVu Sans + + + 27 + + + h4x. + + + /dev/null + + + TestString + + + One,Two,Three,Four,Five + + + 7 + + + http://kde.org + + + 13.37 + + + + + + 1,1,2,3,5,8 + + + -9211372036854775808 + + + 185,857 + + + 185.5,857.5 + + + 3,7,951,358 + + + 3.5,7.5,951.5,358.5 + + + 640,480 + + + 640.5,480.5 + + + 9223372036854775806 + + + diff --git a/autotests/kconfignokdehometest.cpp b/autotests/kconfignokdehometest.cpp new file mode 100644 index 0000000..3aa45df --- /dev/null +++ b/autotests/kconfignokdehometest.cpp @@ -0,0 +1,51 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 2011 David Faure + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include + +#include +#include +#include + +#include +#include + +class KConfigNoKdeHomeTest : public QObject +{ + Q_OBJECT + +private Q_SLOTS: + void testNoKdeHome(); +}; + +void KConfigNoKdeHomeTest::testNoKdeHome() +{ + QStandardPaths::setTestModeEnabled(true); + QString configPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation); + QDir configDir(configPath); + QVERIFY(configDir.removeRecursively()); + QVERIFY(!QFile::exists(configPath)); + + // Do what kf5-config does, and ensure the config directory doesn't get created (#233892) + QVERIFY(!QFile::exists(configPath)); + KSharedConfig::openConfig(); + QVERIFY(!QFile::exists(configPath)); + + // Now try to actually save something, see if it works. + KConfigGroup group(KSharedConfig::openConfig(), QStringLiteral("Group")); + group.writeEntry("Key", "Value"); + group.sync(); + QVERIFY(QFile::exists(configPath)); + const QString rcFile = QCoreApplication::applicationName() + QStringLiteral("rc"); + QVERIFY(QFile::exists(configPath + QLatin1Char('/') + rcFile)); + + // Cleanup + configDir.removeRecursively(); +} + +QTEST_MAIN(KConfigNoKdeHomeTest) + +#include "kconfignokdehometest.moc" diff --git a/autotests/kconfigskeletontest.cpp b/autotests/kconfigskeletontest.cpp new file mode 100644 index 0000000..121ec7d --- /dev/null +++ b/autotests/kconfigskeletontest.cpp @@ -0,0 +1,180 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 2006 Olivier Goffart + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kconfigskeletontest.h" + +#include +#include +#include + +QTEST_MAIN(KConfigSkeletonTest) + +// clazy:excludeall=non-pod-global-static + +static const bool s_default_setting1{false}; +static const QColor s_default_setting2{1, 2, 3}; +static const QString s_default_setting4{QStringLiteral("Hello World")}; + +static const bool s_write_setting1{true}; +static const QColor s_write_setting2{3, 2, 1}; +static const QString s_write_setting4{QStringLiteral("KDE")}; + +static QFont defaultSetting3() +{ + return QFont{QStringLiteral("helvetica"), 12}; +} + +static QFont writeSettings3() +{ + return QFont{QStringLiteral("helvetica"), 14}; +} + +void KConfigSkeletonTest::initTestCase() +{ + QStandardPaths::setTestModeEnabled(true); +} + +void KConfigSkeletonTest::init() +{ + QFile::remove(QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation) + QLatin1String{"/kconfigskeletontestrc"}); + s = new KConfigSkeleton(QStringLiteral("kconfigskeletontestrc")); + s->setCurrentGroup(QStringLiteral("MyGroup")); + itemBool = s->addItemBool(QStringLiteral("MySetting1"), mMyBool, s_default_setting1); + s->addItemColor(QStringLiteral("MySetting2"), mMyColor, s_default_setting2); + + s->setCurrentGroup(QStringLiteral("MyOtherGroup")); + s->addItemFont(QStringLiteral("MySetting3"), mMyFont, defaultSetting3()); + s->addItemString(QStringLiteral("MySetting4"), mMyString, s_default_setting4); + + QCOMPARE(mMyBool, s_default_setting1); + QCOMPARE(mMyColor, s_default_setting2); + QCOMPARE(mMyFont, defaultSetting3()); + QCOMPARE(mMyString, s_default_setting4); + + QVERIFY(s->isDefaults()); + QVERIFY(!s->isSaveNeeded()); +} + +void KConfigSkeletonTest::cleanup() +{ + delete s; +} + +void KConfigSkeletonTest::testSimple() +{ + mMyBool = s_write_setting1; + mMyColor = s_write_setting2; + mMyFont = writeSettings3(); + mMyString = s_write_setting4; + + QVERIFY(s->isSaveNeeded()); + QVERIFY(!s->isDefaults()); + + s->save(); + + QVERIFY(!s->isSaveNeeded()); + QVERIFY(!s->isDefaults()); + + mMyBool = false; + mMyColor = QColor(); + mMyString.clear(); + mMyFont = QFont(); + + QVERIFY(s->isSaveNeeded()); + QVERIFY(!s->isDefaults()); + + s->read(); + + QVERIFY(!s->isSaveNeeded()); + QVERIFY(!s->isDefaults()); + + QCOMPARE(mMyBool, s_write_setting1); + QCOMPARE(mMyColor, s_write_setting2); + QCOMPARE(mMyFont, writeSettings3()); + QCOMPARE(mMyString, s_write_setting4); +} + +void KConfigSkeletonTest::testRemoveItem() +{ + QVERIFY(s->findItem(QStringLiteral("MySetting1"))); + s->removeItem(QStringLiteral("MySetting1")); + QVERIFY(!s->findItem(QStringLiteral("MySetting1"))); +} + +void KConfigSkeletonTest::testClear() +{ + QVERIFY(s->findItem(QStringLiteral("MySetting2"))); + QVERIFY(s->findItem(QStringLiteral("MySetting3"))); + QVERIFY(s->findItem(QStringLiteral("MySetting4"))); + + s->clearItems(); + + QVERIFY(!s->findItem(QStringLiteral("MySetting2"))); + QVERIFY(!s->findItem(QStringLiteral("MySetting3"))); + QVERIFY(!s->findItem(QStringLiteral("MySetting4"))); +} + +void KConfigSkeletonTest::testDefaults() +{ + mMyBool = s_write_setting1; + mMyColor = s_write_setting2; + mMyFont = writeSettings3(); + mMyString = s_write_setting4; + + QVERIFY(s->isSaveNeeded()); + QVERIFY(!s->isDefaults()); + + s->save(); + + QVERIFY(!s->isSaveNeeded()); + QVERIFY(!s->isDefaults()); + + s->setDefaults(); + + QVERIFY(s->isSaveNeeded()); + QVERIFY(s->isDefaults()); + + QCOMPARE(mMyBool, s_default_setting1); + QCOMPARE(mMyColor, s_default_setting2); + QCOMPARE(mMyFont, defaultSetting3()); + QCOMPARE(mMyString, s_default_setting4); + + s->save(); + + QVERIFY(!s->isSaveNeeded()); + QVERIFY(s->isDefaults()); +} + +void KConfigSkeletonTest::testKConfigDirty() +{ + itemBool->setValue(true); + itemBool->writeConfig(s->sharedConfig().data()); + QVERIFY(s->sharedConfig()->isDirty()); + s->save(); + QVERIFY(!s->sharedConfig()->isDirty()); + + itemBool->setValue(false); + itemBool->writeConfig(s->sharedConfig().data()); + QVERIFY(s->sharedConfig()->isDirty()); + s->save(); + QVERIFY(!s->sharedConfig()->isDirty()); +} + +void KConfigSkeletonTest::testSaveRead() +{ + itemBool->setValue(true); + s->save(); + + itemBool->setValue(false); + s->save(); + + mMyBool = true; + + s->read(); + QCOMPARE(mMyBool, false); +} + +#include "moc_kconfigskeletontest.cpp" diff --git a/autotests/kconfigskeletontest.h b/autotests/kconfigskeletontest.h new file mode 100644 index 0000000..8c6d3aa --- /dev/null +++ b/autotests/kconfigskeletontest.h @@ -0,0 +1,35 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 2006 Olivier Goffart + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ +#ifndef KCONFIGSKELETONTEST_H +#define KCONFIGSKELETONTEST_H + +#include + +class KConfigSkeletonTest : public QObject +{ + Q_OBJECT +public: +private Q_SLOTS: + void initTestCase(); + void init(); + void cleanup(); + void testSimple(); + void testDefaults(); + void testRemoveItem(); + void testClear(); + void testKConfigDirty(); + void testSaveRead(); + +private: + KConfigSkeleton *s; + KConfigSkeleton::ItemBool *itemBool; + bool mMyBool; + QColor mMyColor; + QFont mMyFont; + QString mMyString; +}; + +#endif diff --git a/autotests/kconfigtest.cpp b/autotests/kconfigtest.cpp new file mode 100644 index 0000000..38714e6 --- /dev/null +++ b/autotests/kconfigtest.cpp @@ -0,0 +1,2164 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 1997 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kconfigtest.h" +#include "helper.h" + +#include "config-kconfig.h" + +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#ifdef Q_OS_UNIX +#include +#endif +#ifndef Q_OS_WIN +#include // getuid +#endif + +KCONFIGGROUP_DECLARE_ENUM_QOBJECT(KConfigTest, Testing) +KCONFIGGROUP_DECLARE_FLAGS_QOBJECT(KConfigTest, Flags) + +QTEST_MAIN(KConfigTest) + +Q_DECLARE_METATYPE(KConfigGroup) + +static QString homePath() +{ +#ifdef Q_OS_WIN + return QDir::homePath(); +#else + // Don't use QDir::homePath() on Unix, it removes any trailing slash, while KConfig uses $HOME. + return QString::fromLocal8Bit(qgetenv("HOME")); +#endif +} + +// clazy:excludeall=non-pod-global-static + +static const bool s_bool_entry1 = true; +static const bool s_bool_entry2 = false; + +static const QString s_string_entry1(QStringLiteral("hello")); +static const QString s_string_entry2(QStringLiteral(" hello")); +static const QString s_string_entry3(QStringLiteral("hello ")); +static const QString s_string_entry4(QStringLiteral(" hello ")); +static const QString s_string_entry5(QStringLiteral(" ")); +static const QString s_string_entry6{}; + +static const char s_utf8bit_entry[] = "Hello äöü"; +static const QString s_translated_string_entry1{QStringLiteral("bonjour")}; +static const QByteArray s_bytearray_entry{"\x00\xff\x7f\x3c abc\x00\x00", 10}; +static const char s_escapekey[] = " []\0017[]==]"; +static const char s_escape_entry[] = "[]\170[]]=3=]\\] "; +static const double s_double_entry{123456.78912345}; +static const float s_float_entry{123.567f}; +static const QPoint s_point_entry{4351, 1235}; +static const QSize s_size_entry{10, 20}; +static const QRect s_rect_entry{10, 23, 5321, 13}; +static const QDateTime s_date_time_entry{QDate{2002, 06, 23}, QTime{12, 55, 40}}; +static const QDateTime s_date_time_with_ms_entry{QDate{2002, 06, 23}, QTime{12, 55, 40, 532}}; +static const QStringList s_stringlist_entry{QStringLiteral("Hello,"), QStringLiteral("World")}; +static const QStringList s_stringlist_empty_entry{}; +static const QStringList s_stringlist_just_empty_element{QString{}}; +static const QStringList s_stringlist_empty_trailing_element{QStringLiteral("Hi"), QString{}}; +static const QStringList s_stringlist_escape_odd_entry{QStringLiteral("Hello\\\\\\"), QStringLiteral("World")}; +static const QStringList s_stringlist_escape_even_entry{QStringLiteral("Hello\\\\\\\\"), QStringLiteral("World")}; +static const QStringList s_stringlist_escape_comma_entry{QStringLiteral("Hel\\\\\\,\\\\,\\,\\\\\\\\,lo"), QStringLiteral("World")}; +static const QList s_int_listentry1{1, 2, 3, 4}; +static const QList s_bytearray_list_entry1{"", "1,2", "end"}; +static const QVariantList s_variantlist_entry{true, false, QStringLiteral("joe"), 10023}; +static const QVariantList s_variantlist_entry2{s_point_entry, s_size_entry}; + +static const QString s_homepath{homePath() + QLatin1String{"/foo"}}; +static const QString s_homepath_escape{homePath() + QLatin1String("/foo/$HOME")}; +static const QString s_canonical_homepath{QFileInfo(homePath()).canonicalFilePath() + QLatin1String("/foo")}; +static const QString s_dollargroup{QStringLiteral("$i")}; +static const QString s_test_subdir{QStringLiteral("kconfigtest_subdir/")}; +static const QString s_kconfig_test_subdir(s_test_subdir + QLatin1String("kconfigtest")); +static const QString s_kconfig_test_illegal_object_path(s_test_subdir + QLatin1String("kconfig-test")); + +#ifndef Q_OS_WIN +void initLocale() +{ + setenv("LC_ALL", "en_US.utf-8", 1); + setenv("TZ", "UTC", 1); +} + +Q_CONSTRUCTOR_FUNCTION(initLocale) +#endif + +void KConfigTest::initTestCase() +{ + // ensure we don't use files in the real config directory + QStandardPaths::setTestModeEnabled(true); + + qRegisterMetaType(); + + // These two need to be assigned here, after setTestModeEnabled(true), and before cleanupTestCase() + m_testConfigDir = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation) + QLatin1Char('/') + s_test_subdir; + m_kdeGlobalsPath = QDir::cleanPath(m_testConfigDir + QLatin1String("..")) + QLatin1String("/kdeglobals"); + + // to make sure all files from a previous failed run are deleted + cleanupTestCase(); + + KSharedConfigPtr mainConfig = KSharedConfig::openConfig(); + mainConfig->group(QStringLiteral("Main")).writeEntry("Key", "Value"); + mainConfig->sync(); + + KConfig sc(s_kconfig_test_subdir); + + KConfigGroup cg(&sc, QStringLiteral("AAA")); // deleted later by testDelete + cg.writeEntry("stringEntry1", s_string_entry1, KConfig::Persistent | KConfig::Global); + + cg = KConfigGroup(&sc, QStringLiteral("GlobalGroup")); + cg.writeEntry("globalEntry", s_string_entry1, KConfig::Persistent | KConfig::Global); + cg.deleteEntry("globalEntry2", KConfig::Global); + + cg = KConfigGroup(&sc, QStringLiteral("LocalGroupToBeDeleted")); // deleted later by testDelete + cg.writeEntry("stringEntry1", s_string_entry1); + + cg = KConfigGroup(&sc, QStringLiteral("Hello")); + cg.writeEntry("boolEntry1", s_bool_entry1); + cg.writeEntry("boolEntry2", s_bool_entry2); + + QByteArray data(s_utf8bit_entry); + QCOMPARE(data.size(), 12); // the source file is in utf8 + QCOMPARE(QString::fromUtf8(data).length(), 9); + cg.writeEntry("Test", data); + cg.writeEntry("bytearrayEntry", s_bytearray_entry); + cg.writeEntry(s_escapekey, QString::fromLatin1(s_escape_entry)); + cg.writeEntry("emptyEntry", ""); + cg.writeEntry("stringEntry1", s_string_entry1); + cg.writeEntry("stringEntry2", s_string_entry2); + cg.writeEntry("stringEntry3", s_string_entry3); + cg.writeEntry("stringEntry4", s_string_entry4); + cg.writeEntry("stringEntry5", s_string_entry5); + cg.writeEntry("urlEntry1", QUrl(QStringLiteral("http://qt-project.org"))); + cg.writeEntry("keywith=equalsign", s_string_entry1); + cg.deleteEntry("stringEntry5"); + cg.deleteEntry("stringEntry6"); // deleting a nonexistent entry + cg.writeEntry("byteArrayEntry1", s_string_entry1.toLatin1(), KConfig::Global | KConfig::Persistent); + cg.writeEntry("doubleEntry1", s_double_entry); + cg.writeEntry("floatEntry1", s_float_entry); + + sc.deleteGroup(QStringLiteral("deleteMe")); // deleting a nonexistent group + + cg = KConfigGroup(&sc, QStringLiteral("Complex Types")); + cg.writeEntry("rectEntry", s_rect_entry); + cg.writeEntry("pointEntry", s_point_entry); + cg.writeEntry("sizeEntry", s_size_entry); + cg.writeEntry("dateTimeEntry", s_date_time_entry); + cg.writeEntry("dateEntry", s_date_time_entry.date()); + cg.writeEntry("dateTimeWithMSEntry", s_date_time_with_ms_entry); + + KConfigGroup ct = cg; + cg = KConfigGroup(&ct, QStringLiteral("Nested Group 1")); + cg.writeEntry("stringentry1", s_string_entry1); + + cg = KConfigGroup(&ct, QStringLiteral("Nested Group 2")); + cg.writeEntry("stringEntry2", s_string_entry2); + + cg = KConfigGroup(&cg, QStringLiteral("Nested Group 2.1")); + cg.writeEntry("stringEntry3", s_string_entry3); + + cg = KConfigGroup(&ct, QStringLiteral("Nested Group 3")); + cg.writeEntry("stringEntry3", s_string_entry3); + + cg = KConfigGroup(&sc, QStringLiteral("List Types")); + cg.writeEntry("listOfIntsEntry1", s_int_listentry1); + cg.writeEntry("listOfByteArraysEntry1", s_bytearray_list_entry1); + cg.writeEntry("stringListEntry", s_stringlist_entry); + cg.writeEntry("stringListEmptyEntry", s_stringlist_empty_entry); + cg.writeEntry("stringListJustEmptyElement", s_stringlist_just_empty_element); + cg.writeEntry("stringListEmptyTrailingElement", s_stringlist_empty_trailing_element); + cg.writeEntry("stringListEscapeOddEntry", s_stringlist_escape_odd_entry); + cg.writeEntry("stringListEscapeEvenEntry", s_stringlist_escape_even_entry); + cg.writeEntry("stringListEscapeCommaEntry", s_stringlist_escape_comma_entry); + cg.writeEntry("variantListEntry", s_variantlist_entry); + + cg = KConfigGroup(&sc, QStringLiteral("Path Type")); + cg.writePathEntry("homepath", s_homepath); + cg.writePathEntry("homepathescape", s_homepath_escape); + cg.writePathEntry("canonicalHomePath", s_canonical_homepath); + + cg = KConfigGroup(&sc, QStringLiteral("Enum Types")); +#if defined(_MSC_VER) && _MSC_VER == 1600 + cg.writeEntry("dummy", 42); +#else + // Visual C++ 2010 throws an Internal Compiler Error here + cg.writeEntry("enum-10", Tens); + cg.writeEntry("enum-100", Hundreds); + cg.writeEntry("flags-bit0", Flags(bit0)); + cg.writeEntry("flags-bit0-bit1", Flags(bit0 | bit1)); +#endif + + cg = KConfigGroup(&sc, QStringLiteral("ParentGroup")); + KConfigGroup cg1(&cg, QStringLiteral("SubGroup1")); + cg1.writeEntry("somestring", "somevalue"); + cg.writeEntry("parentgrpstring", "somevalue"); + KConfigGroup cg2(&cg, QStringLiteral("SubGroup2")); + cg2.writeEntry("substring", "somevalue"); + KConfigGroup cg3(&cg, QStringLiteral("SubGroup/3")); + cg3.writeEntry("sub3string", "somevalue"); + + QVERIFY(sc.isDirty()); + QVERIFY(sc.sync()); + QVERIFY(!sc.isDirty()); + + QVERIFY2(QFile::exists(m_testConfigDir + QLatin1String("/kconfigtest")), qPrintable(m_testConfigDir + QLatin1String("/kconfigtest must exist"))); + QVERIFY2(QFile::exists(m_kdeGlobalsPath), qPrintable(m_kdeGlobalsPath + QStringLiteral(" must exist"))); + + KConfig sc1(s_test_subdir + QLatin1String("kdebugrc"), KConfig::SimpleConfig); + KConfigGroup sg0(&sc1, QStringLiteral("0")); + sg0.writeEntry("AbortFatal", false); + sg0.writeEntry("WarnOutput", 0); + sg0.writeEntry("FatalOutput", 0); + QVERIFY(sc1.sync()); + + // Setup stuff to test KConfig::addConfigSources() + KConfig devcfg(s_test_subdir + QLatin1String("specificrc")); + KConfigGroup devonlygrp(&devcfg, QStringLiteral("Specific Only Group")); + devonlygrp.writeEntry("ExistingEntry", "DevValue"); + KConfigGroup devandbasegrp(&devcfg, QStringLiteral("Shared Group")); + devandbasegrp.writeEntry("SomeSharedEntry", "DevValue"); + devandbasegrp.writeEntry("SomeSpecificOnlyEntry", "DevValue"); + QVERIFY(devcfg.sync()); + KConfig basecfg(s_test_subdir + QLatin1String("baserc")); + KConfigGroup basegrp(&basecfg, QStringLiteral("Base Only Group")); + basegrp.writeEntry("ExistingEntry", "BaseValue"); + KConfigGroup baseanddevgrp(&basecfg, QStringLiteral("Shared Group")); + baseanddevgrp.writeEntry("SomeSharedEntry", "BaseValue"); + baseanddevgrp.writeEntry("SomeBaseOnlyEntry", "BaseValue"); + QVERIFY(basecfg.sync()); + + KConfig gecfg(s_test_subdir + QLatin1String("groupescapetest"), KConfig::SimpleConfig); + cg = KConfigGroup(&gecfg, s_dollargroup); + cg.writeEntry("entry", "doesntmatter"); +} + +void KConfigTest::cleanupTestCase() +{ + // ensure we don't delete the real directory + QDir localConfig(m_testConfigDir); + // qDebug() << "Erasing" << localConfig; + if (localConfig.exists()) { + QVERIFY(localConfig.removeRecursively()); + } + QVERIFY(!localConfig.exists()); + if (QFile::exists(m_kdeGlobalsPath)) { + QVERIFY(QFile::remove(m_kdeGlobalsPath)); + } +} + +static QList readLinesFrom(const QString &path) +{ + QFile file(path); + const bool opened = file.open(QIODevice::ReadOnly | QIODevice::Text); + QList lines; + if (!opened) { + qWarning() << "Failed to open" << path; + return lines; + } + QByteArray line; + do { + line = file.readLine(); + if (!line.isEmpty()) { + lines.append(line); + } + } while (!line.isEmpty()); + return lines; +} + +static const QString s_defaultArg = s_test_subdir + QLatin1String("kconfigtest"); +static QList readLines(const QString &fileName = s_defaultArg) +{ + const QString path = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation); + Q_ASSERT(!path.isEmpty()); + return readLinesFrom(path + QLatin1Char('/') + fileName); +} + +// see also testDefaults, which tests reverting with a defaults (global) file available +void KConfigTest::testDirtyAfterRevert() +{ + KConfig sc(s_test_subdir + QLatin1String("kconfigtest_revert")); + + KConfigGroup cg(&sc, QStringLiteral("Hello")); + cg.revertToDefault("does_not_exist"); + QVERIFY(!sc.isDirty()); + cg.writeEntry("Test", "Correct"); + QVERIFY(sc.isDirty()); + sc.sync(); + QVERIFY(!sc.isDirty()); + + cg.revertToDefault("Test"); + QVERIFY(sc.isDirty()); + QVERIFY(sc.sync()); + QVERIFY(!sc.isDirty()); + + cg.revertToDefault("Test"); + QVERIFY(!sc.isDirty()); +} + +void KConfigTest::testRevertAllEntries() +{ + // this tests the case were we revert (delete) all entries in a file, + // leaving a blank file + { + KConfig sc(s_test_subdir + QLatin1String("konfigtest2"), KConfig::SimpleConfig); + KConfigGroup cg(&sc, QStringLiteral("Hello")); + cg.writeEntry("Test", "Correct"); + } + + { + KConfig sc(s_test_subdir + QLatin1String("konfigtest2"), KConfig::SimpleConfig); + KConfigGroup cg(&sc, QStringLiteral("Hello")); + QCOMPARE(cg.readEntry("Test", "Default"), QStringLiteral("Correct")); + cg.revertToDefault("Test"); + } + + KConfig sc(s_test_subdir + QLatin1String("konfigtest2"), KConfig::SimpleConfig); + KConfigGroup cg(&sc, QStringLiteral("Hello")); + QCOMPARE(cg.readEntry("Test", "Default"), QStringLiteral("Default")); +} + +void KConfigTest::testSimple() +{ + // kdeglobals (which was created in initTestCase) must be found this way: + const QStringList kdeglobals = QStandardPaths::locateAll(QStandardPaths::GenericConfigLocation, QStringLiteral("kdeglobals")); + QVERIFY(!kdeglobals.isEmpty()); + + KConfig sc2(s_kconfig_test_subdir); + QCOMPARE(sc2.name(), s_test_subdir + QLatin1String{"kconfigtest"}); + + // make sure groupList() isn't returning something it shouldn't + const QStringList lstGroup = sc2.groupList(); + for (const QString &group : lstGroup) { + QVERIFY(!group.isEmpty() && group != QLatin1String("")); + QVERIFY(!group.contains(QChar(0x1d))); + } + + KConfigGroup sc3(&sc2, QStringLiteral("GlobalGroup")); + + QVERIFY(sc3.hasKey("globalEntry")); // from kdeglobals + QVERIFY(!sc3.isEntryImmutable("globalEntry")); + QCOMPARE(sc3.readEntry("globalEntry"), s_string_entry1); + + QVERIFY(!sc3.hasKey("globalEntry2")); + QCOMPARE(sc3.readEntry("globalEntry2", QStringLiteral("bla")), QStringLiteral("bla")); + + QVERIFY(!sc3.hasDefault("globalEntry")); + + sc3 = KConfigGroup(&sc2, QStringLiteral("Hello")); + QCOMPARE(sc3.readEntry("Test", QByteArray()), QByteArray(s_utf8bit_entry)); + QCOMPARE(sc3.readEntry("bytearrayEntry", QByteArray()), s_bytearray_entry); + QCOMPARE(sc3.readEntry(s_escapekey), QString::fromLatin1(s_escape_entry)); + QCOMPARE(sc3.readEntry("Test", QString{}), QString::fromUtf8(s_utf8bit_entry)); + QCOMPARE(sc3.readEntry("emptyEntry" /*, QString("Fietsbel")*/), QLatin1String("")); + QCOMPARE(sc3.readEntry("emptyEntry", QStringLiteral("Fietsbel")).isEmpty(), true); + QCOMPARE(sc3.readEntry("stringEntry1"), s_string_entry1); + QCOMPARE(sc3.readEntry("stringEntry2"), s_string_entry2); + QCOMPARE(sc3.readEntry("stringEntry3"), s_string_entry3); + QCOMPARE(sc3.readEntry("stringEntry4"), s_string_entry4); + QVERIFY(!sc3.hasKey("stringEntry5")); + QCOMPARE(sc3.readEntry("stringEntry5", QStringLiteral("test")), QStringLiteral("test")); + QVERIFY(!sc3.hasKey("stringEntry6")); + QCOMPARE(sc3.readEntry("stringEntry6", QStringLiteral("foo")), QStringLiteral("foo")); + QCOMPARE(sc3.readEntry("urlEntry1", QUrl{}), QUrl(QStringLiteral("http://qt-project.org"))); + QCOMPARE(sc3.readEntry("boolEntry1", s_bool_entry1), s_bool_entry1); + QCOMPARE(sc3.readEntry("boolEntry2", false), s_bool_entry2); + QCOMPARE(sc3.readEntry("keywith=equalsign", QStringLiteral("wrong")), s_string_entry1); + QCOMPARE(sc3.readEntry("byteArrayEntry1", QByteArray{}), s_string_entry1.toLatin1()); + QCOMPARE(sc3.readEntry("doubleEntry1", 0.0), s_double_entry); + QCOMPARE(sc3.readEntry("floatEntry1", 0.0f), s_float_entry); +} + +void KConfigTest::testDefaults() +{ + KConfig config(s_test_subdir + QLatin1String("defaulttest"), KConfig::NoGlobals); + const QString defaultsFile = s_test_subdir + QLatin1String("defaulttest.defaults"); + KConfig defaults(defaultsFile, KConfig::SimpleConfig); + const QString defaultsFilePath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation) + QLatin1Char('/') + defaultsFile; + + const QString Default(QStringLiteral("Default")); + const QString NotDefault(QStringLiteral("Not Default")); + const QString Value1(s_string_entry1); + const QString Value2(s_string_entry2); + + KConfigGroup group = defaults.group(QStringLiteral("any group")); + group.writeEntry("entry1", Default); + QVERIFY(group.sync()); + + group = config.group(QStringLiteral("any group")); + group.writeEntry("entry1", Value1); + group.writeEntry("entry2", Value2); + QVERIFY(group.sync()); + + config.addConfigSources(QStringList{defaultsFilePath}); + + config.setReadDefaults(true); + QCOMPARE(group.readEntry("entry1", QString()), Default); + QCOMPARE(group.readEntry("entry2", NotDefault), NotDefault); // no default for entry2 + + config.setReadDefaults(false); + QCOMPARE(group.readEntry("entry1", Default), Value1); + QCOMPARE(group.readEntry("entry2", NotDefault), Value2); + + group.revertToDefault("entry1"); + QCOMPARE(group.readEntry("entry1", QString()), Default); + group.revertToDefault("entry2"); + QCOMPARE(group.readEntry("entry2", QString()), QString()); + + // TODO test reverting localized entries + + Q_ASSERT(config.isDirty()); + group.sync(); + + // Check that everything is OK on disk, too + KConfig reader(s_test_subdir + QLatin1String("defaulttest"), KConfig::NoGlobals); + reader.addConfigSources(QStringList{defaultsFilePath}); + KConfigGroup readerGroup = reader.group(QStringLiteral("any group")); + QCOMPARE(readerGroup.readEntry("entry1", QString()), Default); + QCOMPARE(readerGroup.readEntry("entry2", QString()), QString()); +} + +void KConfigTest::testLocale() +{ + KConfig config(s_test_subdir + QLatin1String("kconfigtest.locales"), KConfig::SimpleConfig); + const QString Translated(s_translated_string_entry1); + const QString Untranslated(s_string_entry1); + + KConfigGroup group = config.group(QStringLiteral("Hello")); + group.writeEntry("stringEntry1", Untranslated); + config.setLocale(QStringLiteral("fr")); + group.writeEntry("stringEntry1", Translated, KConfig::Localized | KConfig::Persistent); + QVERIFY(config.sync()); + + QCOMPARE(group.readEntry("stringEntry1", QString()), Translated); + QCOMPARE(group.readEntryUntranslated("stringEntry1"), Untranslated); + + config.setLocale(QStringLiteral("C")); // strings written in the "C" locale are written as nonlocalized + group.writeEntry("stringEntry1", Untranslated, KConfig::Localized | KConfig::Persistent); + QVERIFY(config.sync()); + + QCOMPARE(group.readEntry("stringEntry1", QString()), Untranslated); +} + +void KConfigTest::testEncoding() +{ + const QString groupstr = QString::fromUtf8("UTF-8:\xc3\xb6l"); + + const QString path = s_test_subdir + QLatin1String("kconfigtestencodings"); + KConfig c(path); + KConfigGroup cg(&c, groupstr); + cg.writeEntry("key", "value"); + QVERIFY(c.sync()); + + const QList lines = readLines(path); + QCOMPARE(lines.count(), 2); + QCOMPARE(lines.first(), QByteArray("[UTF-8:\xc3\xb6l]\n")); + + KConfig c2(path); + KConfigGroup cg2(&c2, groupstr); + QCOMPARE(cg2.readEntry("key"), QStringLiteral("value")); + + QVERIFY(c2.groupList().contains(groupstr)); +} + +void KConfigTest::testLists() +{ + KConfig sc2(s_kconfig_test_subdir); + KConfigGroup sc3(&sc2, QStringLiteral("List Types")); + + QCOMPARE(sc3.readEntry("stringListEntry", QStringList{}), s_stringlist_entry); + + QCOMPARE(sc3.readEntry(QStringLiteral("stringListEmptyEntry"), QStringList(QStringLiteral("wrong"))), s_stringlist_empty_entry); + + QCOMPARE(sc3.readEntry(QStringLiteral("stringListJustEmptyElement"), QStringList()), s_stringlist_just_empty_element); + + QCOMPARE(sc3.readEntry(QStringLiteral("stringListEmptyTrailingElement"), QStringList()), s_stringlist_empty_trailing_element); + + QCOMPARE(sc3.readEntry(QStringLiteral("stringListEscapeOddEntry"), QStringList()), s_stringlist_escape_odd_entry); + + QCOMPARE(sc3.readEntry(QStringLiteral("stringListEscapeEvenEntry"), QStringList()), s_stringlist_escape_even_entry); + + QCOMPARE(sc3.readEntry(QStringLiteral("stringListEscapeCommaEntry"), QStringList()), s_stringlist_escape_comma_entry); + + QCOMPARE(sc3.readEntry("listOfIntsEntry1"), QString::fromLatin1("1,2,3,4")); + QList expectedIntList = s_int_listentry1; + QVERIFY(sc3.readEntry("listOfIntsEntry1", QList()) == expectedIntList); + + QCOMPARE(QVariant(sc3.readEntry("variantListEntry", s_variantlist_entry)).toStringList(), QVariant(s_variantlist_entry).toStringList()); + + QCOMPARE(sc3.readEntry("listOfByteArraysEntry1", QList()), s_bytearray_list_entry1); +} + +void KConfigTest::testPath() +{ + KConfig sc2(s_kconfig_test_subdir); + KConfigGroup sc3(&sc2, QStringLiteral("Path Type")); + QCOMPARE(sc3.readPathEntry(QStringLiteral("homepath"), QString{}), s_homepath); + QCOMPARE(sc3.readPathEntry(QStringLiteral("homepathescape"), QString{}), s_homepath_escape); + QCOMPARE(sc3.readPathEntry(QStringLiteral("canonicalHomePath"), QString{}), s_canonical_homepath); + QCOMPARE(sc3.entryMap().value(QStringLiteral("homepath")), s_homepath); + + qputenv("WITHSLASH", "/a/"); + { + QFile file(m_testConfigDir + QLatin1String("/pathtest")); + file.open(QIODevice::WriteOnly | QIODevice::Text); + QTextStream out(&file); + out << "[Test Group]\n" + << "homePath=$HOME/foo\n" + << "homePath2=file://$HOME/foo\n" + << "withSlash=$WITHSLASH/foo\n" + << "withSlash2=$WITHSLASH\n" + << "withBraces[$e]=file://${HOME}/foo\n" + << "URL[$e]=file://${HOME}/foo\n" + << "hostname[$e]=$(hostname)\n" + << "escapes=aaa,bb/b,ccc\\,ccc\n" + << "noeol=foo" // no EOL + ; + } + KConfig cf2(s_test_subdir + QLatin1String("pathtest")); + KConfigGroup group = cf2.group(QStringLiteral("Test Group")); + QVERIFY(group.hasKey("homePath")); + QCOMPARE(group.readPathEntry("homePath", QString{}), s_homepath); + QVERIFY(group.hasKey("homePath2")); + QCOMPARE(group.readPathEntry("homePath2", QString{}), QLatin1String("file://") + s_homepath); + QVERIFY(group.hasKey("withSlash")); + QCOMPARE(group.readPathEntry("withSlash", QString{}), QStringLiteral("/a//foo")); + QVERIFY(group.hasKey("withSlash2")); + QCOMPARE(group.readPathEntry("withSlash2", QString{}), QStringLiteral("/a/")); + QVERIFY(group.hasKey("withBraces")); + QCOMPARE(group.readPathEntry("withBraces", QString{}), QLatin1String("file://") + s_homepath); + QVERIFY(group.hasKey("URL")); + QCOMPARE(group.readEntry("URL", QString{}), QLatin1String("file://") + s_homepath); + QVERIFY(group.hasKey("hostname")); + QCOMPARE(group.readEntry("hostname", QString{}), QStringLiteral("(hostname)")); // the $ got removed because empty var name + QVERIFY(group.hasKey("noeol")); + QCOMPARE(group.readEntry("noeol", QString{}), QStringLiteral("foo")); + + const auto val = QStringList{QStringLiteral("aaa"), QStringLiteral("bb/b"), QStringLiteral("ccc,ccc")}; + QCOMPARE(group.readPathEntry(QStringLiteral("escapes"), QStringList()), val); +} + +void KConfigTest::testPersistenceOfExpandFlagForPath() +{ + // This test checks that a path entry starting with $HOME is still flagged + // with the expand flag after the config was altered without rewriting the + // path entry. + + // 1st step: Open the config, add a new dummy entry and then sync the config + // back to the storage. + { + KConfig sc2(s_kconfig_test_subdir); + KConfigGroup sc3(&sc2, QStringLiteral("Path Type")); + sc3.writeEntry("dummy", "dummy"); + QVERIFY(sc2.sync()); + } + + // 2nd step: Call testPath() again. Rewriting the config must not break + // the testPath() test. + testPath(); +} + +void KConfigTest::testPathQtHome() +{ + { + QFile file(m_testConfigDir + QLatin1String("/pathtest")); + file.open(QIODevice::WriteOnly | QIODevice::Text); + QTextStream out(&file); + out << "[Test Group]\n" + << "dataDir[$e]=$QT_DATA_HOME/kconfigtest\n" + << "cacheDir[$e]=$QT_CACHE_HOME/kconfigtest\n" + << "configDir[$e]=$QT_CONFIG_HOME/kconfigtest\n"; + } + KConfig cf2(s_test_subdir + QLatin1String("pathtest")); + KConfigGroup group = cf2.group(QStringLiteral("Test Group")); + qunsetenv("QT_DATA_HOME"); + qunsetenv("QT_CACHE_HOME"); + qunsetenv("QT_CONFIG_HOME"); + QVERIFY(group.hasKey("dataDir")); + QCOMPARE(group.readEntry("dataDir", QString{}), + QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation).append(QStringLiteral("/kconfigtest"))); + QVERIFY(group.hasKey("cacheDir")); + QCOMPARE(group.readEntry("cacheDir", QString{}), + QStandardPaths::writableLocation(QStandardPaths::GenericCacheLocation).append(QStringLiteral("/kconfigtest"))); + QVERIFY(group.hasKey("configDir")); + QCOMPARE(group.readEntry("configDir", QString{}), + QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation).append(QStringLiteral("/kconfigtest"))); + qputenv("QT_DATA_HOME", "/1"); + qputenv("QT_CACHE_HOME", "/2"); + qputenv("QT_CONFIG_HOME", "/3"); + QVERIFY(group.hasKey("dataDir")); + QCOMPARE(group.readEntry("dataDir", QString{}), QStringLiteral("/1/kconfigtest")); + QVERIFY(group.hasKey("cacheDir")); + QCOMPARE(group.readEntry("cacheDir", QString{}), QStringLiteral("/2/kconfigtest")); + QVERIFY(group.hasKey("configDir")); + QCOMPARE(group.readEntry("configDir", QString{}), QStringLiteral("/3/kconfigtest")); +} + +void KConfigTest::testComplex() +{ + KConfig sc2(s_kconfig_test_subdir); + KConfigGroup sc3(&sc2, QStringLiteral("Complex Types")); + + QCOMPARE(sc3.readEntry("pointEntry", QPoint()), s_point_entry); + QCOMPARE(sc3.readEntry("sizeEntry", s_size_entry), s_size_entry); + QCOMPARE(sc3.readEntry("rectEntry", QRect(1, 2, 3, 4)), s_rect_entry); + QCOMPARE(sc3.readEntry("dateTimeEntry", QDateTime()).toString(Qt::ISODateWithMs), s_date_time_entry.toString(Qt::ISODateWithMs)); + QCOMPARE(sc3.readEntry("dateEntry", QDate()).toString(Qt::ISODate), s_date_time_entry.date().toString(Qt::ISODate)); + QCOMPARE(sc3.readEntry("dateTimeWithMSEntry", QDateTime()).toString(Qt::ISODateWithMs), s_date_time_with_ms_entry.toString(Qt::ISODateWithMs)); + QCOMPARE(sc3.readEntry("dateTimeEntry", QDate()), s_date_time_entry.date()); +} + +void KConfigTest::testEnums() +{ + // Visual C++ 2010 (compiler version 16.0) throws an Internal Compiler Error + // when compiling the code in initTestCase that creates these KConfig entries, + // so we can't run this test +#if defined(_MSC_VER) && _MSC_VER == 1600 + QSKIP("Visual C++ 2010 can't compile this test"); +#endif + KConfig sc(s_kconfig_test_subdir); + KConfigGroup sc3(&sc, QStringLiteral("Enum Types")); + + QCOMPARE(sc3.readEntry("enum-10"), QStringLiteral("Tens")); + QVERIFY(sc3.readEntry("enum-100", Ones) != Ones); + QVERIFY(sc3.readEntry("enum-100", Ones) != Tens); + + QCOMPARE(sc3.readEntry("flags-bit0"), QStringLiteral("bit0")); + QVERIFY(sc3.readEntry("flags-bit0", Flags()) == bit0); + + int eid = staticMetaObject.indexOfEnumerator("Flags"); + QVERIFY(eid != -1); + QMetaEnum me = staticMetaObject.enumerator(eid); + Flags bitfield = bit0 | bit1; + + QCOMPARE(sc3.readEntry("flags-bit0-bit1"), QString::fromLatin1(me.valueToKeys(bitfield))); + QVERIFY(sc3.readEntry("flags-bit0-bit1", Flags()) == bitfield); +} + +void KConfigTest::testEntryMap() +{ + KConfig sc(s_kconfig_test_subdir); + KConfigGroup cg(&sc, QStringLiteral("Hello")); + QMap entryMap = cg.entryMap(); + qDebug() << entryMap.keys(); + QCOMPARE(entryMap.value(QStringLiteral("stringEntry1")), s_string_entry1); + QCOMPARE(entryMap.value(QStringLiteral("stringEntry2")), s_string_entry2); + QCOMPARE(entryMap.value(QStringLiteral("stringEntry3")), s_string_entry3); + QCOMPARE(entryMap.value(QStringLiteral("stringEntry4")), s_string_entry4); + QVERIFY(!entryMap.contains(QStringLiteral("stringEntry5"))); + QVERIFY(!entryMap.contains(QStringLiteral("stringEntry6"))); + QCOMPARE(entryMap.value(QStringLiteral("Test")), QString::fromUtf8(s_utf8bit_entry)); + QCOMPARE(entryMap.value(QStringLiteral("bytearrayEntry")), QString::fromUtf8(s_bytearray_entry.constData())); + QCOMPARE(entryMap.value(QStringLiteral("emptyEntry")), QString{}); + QVERIFY(entryMap.contains(QStringLiteral("emptyEntry"))); + QCOMPARE(entryMap.value(QStringLiteral("boolEntry1")), s_bool_entry1 ? QStringLiteral("true") : QStringLiteral("false")); + QCOMPARE(entryMap.value(QStringLiteral("boolEntry2")), s_bool_entry2 ? QStringLiteral("true") : QStringLiteral("false")); + QCOMPARE(entryMap.value(QStringLiteral("keywith=equalsign")), s_string_entry1); + QCOMPARE(entryMap.value(QStringLiteral("byteArrayEntry1")), s_string_entry1); + QCOMPARE(entryMap.value(QStringLiteral("doubleEntry1")).toDouble(), s_double_entry); + QCOMPARE(entryMap.value(QStringLiteral("floatEntry1")).toFloat(), s_float_entry); +} + +void KConfigTest::testInvalid() +{ + KConfig sc(s_kconfig_test_subdir); + + // all of these should print a message to the kdebug.dbg file + KConfigGroup sc3(&sc, QStringLiteral("Invalid Types")); + sc3.writeEntry("badList", s_variantlist_entry2); + + QList list; + + // 1 element list + list << 1; + sc3.writeEntry(QStringLiteral("badList"), list); + + QVERIFY(sc3.readEntry("badList", QPoint()) == QPoint()); + QVERIFY(sc3.readEntry("badList", QRect()) == QRect()); + QVERIFY(sc3.readEntry("badList", QSize()) == QSize()); + QVERIFY(sc3.readEntry("badList", QDate()) == QDate()); + QVERIFY(sc3.readEntry("badList", QDateTime()) == QDateTime()); + + // 2 element list + list << 2; + sc3.writeEntry("badList", list); + + QVERIFY(sc3.readEntry("badList", QRect()) == QRect()); + QVERIFY(sc3.readEntry("badList", QDate()) == QDate()); + QVERIFY(sc3.readEntry("badList", QDateTime()) == QDateTime()); + + // 3 element list + list << 303; + sc3.writeEntry("badList", list); + + QVERIFY(sc3.readEntry("badList", QPoint()) == QPoint()); + QVERIFY(sc3.readEntry("badList", QRect()) == QRect()); + QVERIFY(sc3.readEntry("badList", QSize()) == QSize()); + QVERIFY(sc3.readEntry("badList", QDate()) == QDate()); // out of bounds + QVERIFY(sc3.readEntry("badList", QDateTime()) == QDateTime()); + + // 4 element list + list << 4; + sc3.writeEntry("badList", list); + + QVERIFY(sc3.readEntry("badList", QPoint()) == QPoint()); + QVERIFY(sc3.readEntry("badList", QSize()) == QSize()); + QVERIFY(sc3.readEntry("badList", QDate()) == QDate()); + QVERIFY(sc3.readEntry("badList", QDateTime()) == QDateTime()); + + // 5 element list + list[2] = 3; + list << 5; + sc3.writeEntry("badList", list); + + QVERIFY(sc3.readEntry("badList", QPoint()) == QPoint()); + QVERIFY(sc3.readEntry("badList", QRect()) == QRect()); + QVERIFY(sc3.readEntry("badList", QSize()) == QSize()); + QVERIFY(sc3.readEntry("badList", QDate()) == QDate()); + QVERIFY(sc3.readEntry("badList", QDateTime()) == QDateTime()); + + // 6 element list + list << 6; + sc3.writeEntry("badList", list); + + QVERIFY(sc3.readEntry("badList", QPoint()) == QPoint()); + QVERIFY(sc3.readEntry("badList", QRect()) == QRect()); + QVERIFY(sc3.readEntry("badList", QSize()) == QSize()); +} + +void KConfigTest::testChangeGroup() +{ + KConfig sc(s_kconfig_test_subdir); + KConfigGroup sc3(&sc, QStringLiteral("Hello")); + QCOMPARE(sc3.name(), QStringLiteral("Hello")); + KConfigGroup newGroup(sc3); + + KConfigGroup rootGroup(sc.group(QString())); + QCOMPARE(rootGroup.name(), QStringLiteral("")); + KConfigGroup sc32(rootGroup.group(QStringLiteral("Hello"))); + QCOMPARE(sc32.name(), QStringLiteral("Hello")); + KConfigGroup newGroup2(sc32); +} + +// Simple test for deleteEntry +void KConfigTest::testDeleteEntry() +{ + const QString configFile = s_test_subdir + QLatin1String("kconfigdeletetest"); + + { + KConfig conf(configFile); + conf.group(QStringLiteral("Hello")).writeEntry("DelKey", "ToBeDeleted"); + } + const QList lines = readLines(configFile); + Q_ASSERT(lines.contains("[Hello]\n")); + Q_ASSERT(lines.contains("DelKey=ToBeDeleted\n")); + + KConfig sc(configFile); + KConfigGroup group(&sc, QStringLiteral("Hello")); + + group.deleteEntry("DelKey"); + QCOMPARE(group.readEntry("DelKey", QStringLiteral("Fietsbel")), QStringLiteral("Fietsbel")); + + QVERIFY(group.sync()); + Q_ASSERT(!readLines(configFile).contains("DelKey=ToBeDeleted\n")); + QCOMPARE(group.readEntry("DelKey", QStringLiteral("still deleted")), QStringLiteral("still deleted")); +} + +void KConfigTest::testDelete() +{ + KConfig sc(s_kconfig_test_subdir); + + KConfigGroup ct(&sc, QStringLiteral("Complex Types")); + + // First delete a nested group + KConfigGroup delgr(&ct, QStringLiteral("Nested Group 3")); + QVERIFY(delgr.exists()); + QVERIFY(ct.hasGroup(QStringLiteral("Nested Group 3"))); + QVERIFY(ct.groupList().contains(QStringLiteral("Nested Group 3"))); + delgr.deleteGroup(); + QVERIFY(!delgr.exists()); + QVERIFY(!ct.hasGroup(QStringLiteral("Nested Group 3"))); + QVERIFY(!ct.groupList().contains(QStringLiteral("Nested Group 3"))); + + KConfigGroup ng(&ct, QStringLiteral("Nested Group 2")); + QVERIFY(sc.hasGroup(QStringLiteral("Complex Types"))); + QVERIFY(sc.groupList().contains(QStringLiteral("Complex Types"))); + QVERIFY(!sc.hasGroup(QStringLiteral("Does not exist"))); + QVERIFY(ct.hasGroup(QStringLiteral("Nested Group 1"))); + QVERIFY(ct.groupList().contains(QStringLiteral("Nested Group 1"))); + sc.deleteGroup(QStringLiteral("Complex Types")); + QCOMPARE(sc.group(QStringLiteral("Complex Types")).keyList().count(), 0); + QVERIFY(!sc.hasGroup(QStringLiteral("Complex Types"))); // #192266 + QVERIFY(!sc.group(QStringLiteral("Complex Types")).exists()); + QVERIFY(!sc.groupList().contains(QStringLiteral("Complex Types"))); + QVERIFY(!ct.hasGroup(QStringLiteral("Nested Group 1"))); + QVERIFY(!ct.groupList().contains(QStringLiteral("Nested Group 1"))); + + QCOMPARE(ct.group(QStringLiteral("Nested Group 1")).keyList().count(), 0); + QCOMPARE(ct.group(QStringLiteral("Nested Group 2")).keyList().count(), 0); + QCOMPARE(ng.group(QStringLiteral("Nested Group 2.1")).keyList().count(), 0); + + KConfigGroup cg(&sc, QStringLiteral("AAA")); + cg.deleteGroup(); + QVERIFY(sc.entryMap(QStringLiteral("Complex Types")).isEmpty()); + QVERIFY(sc.entryMap(QStringLiteral("AAA")).isEmpty()); + QVERIFY(!sc.entryMap(QStringLiteral("Hello")).isEmpty()); // not deleted group + QVERIFY(sc.entryMap(QStringLiteral("FooBar")).isEmpty()); // inexistent group + + KConfigGroup(&sc, QStringLiteral("LocalGroupToBeDeleted")).deleteGroup(); + + QVERIFY(cg.sync()); + // Check what happens on disk + const QList lines = readLines(); + // qDebug() << lines; + QVERIFY(!lines.contains("[Complex Types]\n")); + QVERIFY(!lines.contains("[Complex Types][Nested Group 1]\n")); + QVERIFY(!lines.contains("[Complex Types][Nested Group 2]\n")); + QVERIFY(!lines.contains("[Complex Types][Nested Group 2.1]\n")); + QVERIFY(!lines.contains("[LocalGroupToBeDeleted]\n")); + QVERIFY(lines.contains("[AAA]\n")); // deleted from kconfigtest, but present in kdeglobals, so [$d] + QVERIFY(lines.contains("[Hello]\n")); // a group that was not deleted + + // test for entries that are marked as deleted when there is no default + KConfig cf(s_kconfig_test_subdir, KConfig::SimpleConfig); // make sure there are no defaults + cg = cf.group(QStringLiteral("Portable Devices")); + cg.writeEntry("devices|manual|(null)", "whatever"); + cg.writeEntry("devices|manual|/mnt/ipod", "/mnt/ipod"); + QVERIFY(cf.sync()); + + int count = 0; + const QList listLines = readLines(); + for (const QByteArray &item : listLines) { + if (item.startsWith("devices|")) { // krazy:exclude=strings + ++count; + } + } + QCOMPARE(count, 2); + cg.deleteEntry("devices|manual|/mnt/ipod"); + QVERIFY(cf.sync()); + const QList listLines2 = readLines(); + for (const QByteArray &item : listLines2) { + QVERIFY(!item.contains("ipod")); + } +} + +void KConfigTest::testDefaultGroup() +{ + KConfig sc(s_kconfig_test_subdir); + KConfigGroup defaultGroup(&sc, QStringLiteral("")); + QCOMPARE(defaultGroup.name(), QStringLiteral("")); + QVERIFY(!defaultGroup.exists()); + defaultGroup.writeEntry("TestKey", "defaultGroup"); + QVERIFY(defaultGroup.exists()); + QCOMPARE(defaultGroup.readEntry("TestKey", QString{}), QStringLiteral("defaultGroup")); + QVERIFY(sc.sync()); + + { + // Test reading it + KConfig sc2(s_kconfig_test_subdir); + KConfigGroup defaultGroup2(&sc2, QStringLiteral("")); + QCOMPARE(defaultGroup2.name(), QStringLiteral("")); + QVERIFY(defaultGroup2.exists()); + QCOMPARE(defaultGroup2.readEntry("TestKey", QString{}), QStringLiteral("defaultGroup")); + } + { + // Test reading it + KConfig sc2(s_kconfig_test_subdir); + KConfigGroup emptyGroup(&sc2, QString()); + QCOMPARE(emptyGroup.name(), QStringLiteral("")); + QVERIFY(emptyGroup.exists()); + QCOMPARE(emptyGroup.readEntry("TestKey", QString{}), QStringLiteral("defaultGroup")); + } + + QList lines = readLines(); + QVERIFY(!lines.contains("[]\n")); + QVERIFY(!lines.isEmpty()); + QCOMPARE(lines.first(), QByteArray("TestKey=defaultGroup\n")); + + // Now that the group exists make sure it isn't returned from groupList() + const QStringList groupList = sc.groupList(); + for (const QString &group : groupList) { + QVERIFY(!group.isEmpty() && group != QLatin1String("")); + } + + defaultGroup.deleteGroup(); + QVERIFY(sc.sync()); + + // Test if deleteGroup worked + lines = readLines(); + QVERIFY(lines.first() != QByteArray("TestKey=defaultGroup\n")); +} + +void KConfigTest::testEmptyGroup() +{ + KConfig sc(s_kconfig_test_subdir); + KConfigGroup emptyGroup(&sc, QString()); + QCOMPARE(emptyGroup.name(), QStringLiteral("")); // confusing, heh? + QVERIFY(!emptyGroup.exists()); + emptyGroup.writeEntry("TestKey", "emptyGroup"); + QVERIFY(emptyGroup.exists()); + QCOMPARE(emptyGroup.readEntry("TestKey", QString{}), QStringLiteral("emptyGroup")); + QVERIFY(sc.sync()); + + { + // Test reading it + KConfig sc2(s_kconfig_test_subdir); + KConfigGroup defaultGroup(&sc2, QStringLiteral("")); + QCOMPARE(defaultGroup.name(), QStringLiteral("")); + QVERIFY(defaultGroup.exists()); + QCOMPARE(defaultGroup.readEntry("TestKey", QString{}), QStringLiteral("emptyGroup")); + } + { + // Test reading it + KConfig sc2(s_kconfig_test_subdir); + KConfigGroup emptyGroup2(&sc2, QString()); + QCOMPARE(emptyGroup2.name(), QStringLiteral("")); + QVERIFY(emptyGroup2.exists()); + QCOMPARE(emptyGroup2.readEntry("TestKey", QString{}), QStringLiteral("emptyGroup")); + } + + QList lines = readLines(); + QVERIFY(!lines.contains("[]\n")); // there's no support for the [] group, in fact. + QCOMPARE(lines.first(), QByteArray("TestKey=emptyGroup\n")); + + // Now that the group exists make sure it isn't returned from groupList() + const QStringList groupList = sc.groupList(); + for (const QString &group : groupList) { + QVERIFY(!group.isEmpty() && group != QLatin1String("")); + } + emptyGroup.deleteGroup(); + QVERIFY(sc.sync()); + + // Test if deleteGroup worked + lines = readLines(); + QVERIFY(lines.first() != QByteArray("TestKey=defaultGroup\n")); +} + +#if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) && !defined(Q_OS_BLACKBERRY) && !defined(Q_OS_ANDROID) +#define Q_XDG_PLATFORM +#endif + +void KConfigTest::testCascadingWithLocale() +{ + // This test relies on XDG_CONFIG_DIRS, which only has effect on Unix. + // Cascading (more than two levels) isn't available at all on Windows. +#ifdef Q_XDG_PLATFORM + QTemporaryDir middleDir; + QTemporaryDir globalDir; + const QByteArray oldConfigDirs = qgetenv("XDG_CONFIG_DIRS"); + qputenv("XDG_CONFIG_DIRS", qPrintable(middleDir.path() + QLatin1Char(':') + globalDir.path())); + + const QString globalConfigDir = globalDir.path() + QLatin1Char('/') + s_test_subdir; + QVERIFY(QDir().mkpath(globalConfigDir)); + QFile global(globalConfigDir + QLatin1String("foo.desktop")); + QVERIFY(global.open(QIODevice::WriteOnly | QIODevice::Text)); + QTextStream globalOut(&global); + globalOut << "[Group]\n" + << "FromGlobal=true\n" + << "FromGlobal[fr]=vrai\n" + << "Name=Testing\n" + << "Name[fr]=FR\n" + << "Other=Global\n" + << "Other[fr]=Global_FR\n"; + global.close(); + + const QString middleConfigDir = middleDir.path() + QLatin1Char('/') + s_test_subdir; + QVERIFY(QDir().mkpath(middleConfigDir)); + QFile local(middleConfigDir + QLatin1String("foo.desktop")); + QVERIFY(local.open(QIODevice::WriteOnly | QIODevice::Text)); + QTextStream out(&local); + out << "[Group]\n" + << "FromLocal=true\n" + << "FromLocal[fr]=vrai\n" + << "Name=Local Testing\n" + << "Name[fr]=FR\n" + << "Other=English Only\n"; + local.close(); + + KConfig config(s_test_subdir + QLatin1String("foo.desktop")); + KConfigGroup group = config.group(QStringLiteral("Group")); + QCOMPARE(group.readEntry("FromGlobal"), QStringLiteral("true")); + QCOMPARE(group.readEntry("FromLocal"), QStringLiteral("true")); + QCOMPARE(group.readEntry("Name"), QStringLiteral("Local Testing")); + config.setLocale(QStringLiteral("fr")); + QCOMPARE(group.readEntry("FromGlobal"), QStringLiteral("vrai")); + QCOMPARE(group.readEntry("FromLocal"), QStringLiteral("vrai")); + QCOMPARE(group.readEntry("Name"), QStringLiteral("FR")); + QCOMPARE(group.readEntry("Other"), QStringLiteral("English Only")); // Global_FR is locally overridden + qputenv("XDG_CONFIG_DIRS", oldConfigDirs); +#endif +} + +void KConfigTest::testMerge() +{ + DefaultLocale defaultLocale; + QLocale::setDefault(QLocale::c()); + KConfig config(s_test_subdir + QLatin1String("mergetest"), KConfig::SimpleConfig); + + KConfigGroup cg = config.group(QStringLiteral("some group")); + cg.writeEntry("entry", " random entry"); + cg.writeEntry("another entry", "blah blah blah"); + + { + // simulate writing by another process + QFile file(m_testConfigDir + QLatin1String("/mergetest")); + file.open(QIODevice::WriteOnly | QIODevice::Text); + QTextStream out(&file); + out << "[Merged Group]\n" + << "entry1=Testing\n" + << "entry2=More Testing\n" + << "[some group]\n" + << "entry[fr]=French\n" + << "entry[es]=Spanish\n" + << "entry[de]=German\n"; + } + QVERIFY(config.sync()); + + { + QList lines; + // this is what the file should look like + lines << "[Merged Group]\n" + << "entry1=Testing\n" + << "entry2=More Testing\n" + << "\n" + << "[some group]\n" + << "another entry=blah blah blah\n" + << "entry=\\srandom entry\n" + << "entry[de]=German\n" + << "entry[es]=Spanish\n" + << "entry[fr]=French\n"; + QFile file(m_testConfigDir + QLatin1String("/mergetest")); + file.open(QIODevice::ReadOnly | QIODevice::Text); + for (const QByteArray &line : std::as_const(lines)) { + QCOMPARE(line, file.readLine()); + } + } +} + +void KConfigTest::testImmutable() +{ + { + QFile file(m_testConfigDir + QLatin1String("/immutabletest")); + file.open(QIODevice::WriteOnly | QIODevice::Text); + QTextStream out(&file); + out << "[$i]\n" + << "entry1=Testing\n" + << "[group][$i]\n" + << "[group][subgroup][$i]\n"; + } + + KConfig config(s_test_subdir + QLatin1String("immutabletest"), KConfig::SimpleConfig); + QVERIFY(config.isGroupImmutable(QString())); + KConfigGroup cg = config.group(QString()); + QVERIFY(cg.isEntryImmutable("entry1")); + KConfigGroup cg1 = config.group(QStringLiteral("group")); + QVERIFY(cg1.isImmutable()); + KConfigGroup cg1a = cg.group(QStringLiteral("group")); + QVERIFY(cg1a.isImmutable()); + KConfigGroup cg2 = cg1.group(QStringLiteral("subgroup")); + QVERIFY(cg2.isImmutable()); +} + +void KConfigTest::testOptionOrder() +{ + { + QFile file(m_testConfigDir + QLatin1String("/doubleattrtest")); + file.open(QIODevice::WriteOnly | QIODevice::Text); + QTextStream out(&file); + out << "[group3]\n" + << "entry2=unlocalized\n" + << "entry2[$i][de_DE]=t2\n"; + } + KConfig config(s_test_subdir + QLatin1String("doubleattrtest"), KConfig::SimpleConfig); + config.setLocale(QStringLiteral("de_DE")); + KConfigGroup cg3 = config.group(QStringLiteral("group3")); + QVERIFY(!cg3.isImmutable()); + QCOMPARE(cg3.readEntry("entry2", ""), QStringLiteral("t2")); + QVERIFY(cg3.isEntryImmutable("entry2")); + config.setLocale(QStringLiteral("C")); + QCOMPARE(cg3.readEntry("entry2", ""), QStringLiteral("unlocalized")); + QVERIFY(!cg3.isEntryImmutable("entry2")); + cg3.writeEntry("entry2", "modified"); + QVERIFY(config.sync()); + + { + QList lines; + // this is what the file should look like + lines << "[group3]\n" + << "entry2=modified\n" + << "entry2[de_DE][$i]=t2\n"; + + QFile file(m_testConfigDir + QLatin1String("/doubleattrtest")); + file.open(QIODevice::ReadOnly | QIODevice::Text); + for (const QByteArray &line : std::as_const(lines)) { + QCOMPARE(line, file.readLine()); + } + } +} + +void KConfigTest::testGroupEscape() +{ + KConfig config(s_test_subdir + QLatin1String("groupescapetest"), KConfig::SimpleConfig); + QVERIFY(config.group(s_dollargroup).exists()); +} + +void KConfigTest::testSubGroup() +{ + KConfig sc(s_kconfig_test_subdir); + KConfigGroup cg(&sc, QStringLiteral("ParentGroup")); + QCOMPARE(cg.readEntry("parentgrpstring", ""), QStringLiteral("somevalue")); + KConfigGroup subcg1(&cg, QStringLiteral("SubGroup1")); + QCOMPARE(subcg1.name(), QStringLiteral("SubGroup1")); + QCOMPARE(subcg1.readEntry("somestring", ""), QStringLiteral("somevalue")); + KConfigGroup subcg2(&cg, QStringLiteral("SubGroup2")); + QCOMPARE(subcg2.name(), QStringLiteral("SubGroup2")); + QCOMPARE(subcg2.readEntry("substring", ""), QStringLiteral("somevalue")); + KConfigGroup subcg3(&cg, QStringLiteral("SubGroup/3")); + QCOMPARE(subcg3.readEntry("sub3string", ""), QStringLiteral("somevalue")); + QCOMPARE(subcg3.name(), QStringLiteral("SubGroup/3")); + KConfigGroup rcg(&sc, QString()); + KConfigGroup srcg(&rcg, QStringLiteral("ParentGroup")); + QCOMPARE(srcg.readEntry("parentgrpstring", ""), QStringLiteral("somevalue")); + + QStringList groupList = cg.groupList(); + groupList.sort(); // comes from QSet, so order is undefined + QCOMPARE(groupList, (QStringList{QStringLiteral("SubGroup/3"), QStringLiteral("SubGroup1"), QStringLiteral("SubGroup2")})); + + const QStringList expectedSubgroup3Keys{QStringLiteral("sub3string")}; + QCOMPARE(subcg3.keyList(), expectedSubgroup3Keys); + const QStringList expectedParentGroupKeys{QStringLiteral("parentgrpstring")}; + + QCOMPARE(cg.keyList(), expectedParentGroupKeys); + + QCOMPARE(QStringList(cg.entryMap().keys()), expectedParentGroupKeys); + QCOMPARE(QStringList(subcg3.entryMap().keys()), expectedSubgroup3Keys); + + // Create A group containing only other groups. We want to make sure it + // shows up in groupList of sc + KConfigGroup neg(&sc, QStringLiteral("NoEntryGroup")); + KConfigGroup negsub1(&neg, QStringLiteral("NEG Child1")); + negsub1.writeEntry("entry", "somevalue"); + KConfigGroup negsub2(&neg, QStringLiteral("NEG Child2")); + KConfigGroup negsub3(&neg, QStringLiteral("NEG Child3")); + KConfigGroup negsub31(&negsub3, QStringLiteral("NEG Child3-1")); + KConfigGroup negsub4(&neg, QStringLiteral("NEG Child4")); + KConfigGroup negsub41(&negsub4, QStringLiteral("NEG Child4-1")); + negsub41.writeEntry("entry", "somevalue"); + + // A group exists if it has content + QVERIFY(negsub1.exists()); + + // But it doesn't exist if it has no content + // Ossi and David say: this is how it's supposed to work. + // However you could add a dummy entry for now, or we could add a "Persist" feature to kconfig groups + // which would make it written out, much like "immutable" already makes them persistent. + QVERIFY(!negsub2.exists()); + + // A subgroup does not qualify as content if it is also empty + QVERIFY(!negsub3.exists()); + + // A subgroup with content is ok + QVERIFY(negsub4.exists()); + + // Only subgroups with content show up in groupList() + // QEXPECT_FAIL("", "Empty subgroups do not show up in groupList()", Continue); + // QCOMPARE(neg.groupList(), QStringList() << "NEG Child1" << "NEG Child2" << "NEG Child3" << "NEG Child4"); + // This is what happens + QStringList groups = neg.groupList(); + groups.sort(); // Qt5 made the ordering unreliable, due to QHash + QCOMPARE(groups, (QStringList{QStringLiteral("NEG Child1"), QStringLiteral("NEG Child4")})); + + // make sure groupList() isn't returning something it shouldn't + const QStringList listGroup = sc.groupList(); + for (const QString &group : listGroup) { + QVERIFY(!group.isEmpty() && group != QLatin1String("")); + QVERIFY(!group.contains(QChar(0x1d))); + QVERIFY(!group.contains(QLatin1String("subgroup"))); + QVERIFY(!group.contains(QLatin1String("SubGroup"))); + } + + QVERIFY(sc.sync()); + + // Check that the empty groups are not written out. + const QList lines = readLines(); + QVERIFY(lines.contains("[NoEntryGroup][NEG Child1]\n")); + QVERIFY(!lines.contains("[NoEntryGroup][NEG Child2]\n")); + QVERIFY(!lines.contains("[NoEntryGroup][NEG Child3]\n")); + QVERIFY(!lines.contains("[NoEntryGroup][NEG Child4]\n")); // implicit group, not written out + QVERIFY(lines.contains("[NoEntryGroup][NEG Child4][NEG Child4-1]\n")); +} + +void KConfigTest::testAddConfigSources() +{ + KConfig cf(s_test_subdir + QLatin1String("specificrc")); + + cf.addConfigSources(QStringList{m_testConfigDir + QLatin1String("/baserc")}); + cf.reparseConfiguration(); + + KConfigGroup specificgrp(&cf, QStringLiteral("Specific Only Group")); + QCOMPARE(specificgrp.readEntry("ExistingEntry", ""), QStringLiteral("DevValue")); + + KConfigGroup sharedgrp(&cf, QStringLiteral("Shared Group")); + QCOMPARE(sharedgrp.readEntry("SomeSpecificOnlyEntry", ""), QStringLiteral("DevValue")); + QCOMPARE(sharedgrp.readEntry("SomeBaseOnlyEntry", ""), QStringLiteral("BaseValue")); + QCOMPARE(sharedgrp.readEntry("SomeSharedEntry", ""), QStringLiteral("DevValue")); + + KConfigGroup basegrp(&cf, QStringLiteral("Base Only Group")); + QCOMPARE(basegrp.readEntry("ExistingEntry", ""), QStringLiteral("BaseValue")); + basegrp.writeEntry("New Entry Base Only", "SomeValue"); + + KConfigGroup newgrp(&cf, QStringLiteral("New Group")); + newgrp.writeEntry("New Entry", "SomeValue"); + + QVERIFY(cf.sync()); + + KConfig plaincfg(s_test_subdir + QLatin1String("specificrc")); + + KConfigGroup newgrp2(&plaincfg, QStringLiteral("New Group")); + QCOMPARE(newgrp2.readEntry("New Entry", ""), QStringLiteral("SomeValue")); + + KConfigGroup basegrp2(&plaincfg, QStringLiteral("Base Only Group")); + QCOMPARE(basegrp2.readEntry("New Entry Base Only", ""), QStringLiteral("SomeValue")); +} + +void KConfigTest::testGroupCopyTo() +{ + KConfig cf1(s_kconfig_test_subdir); + KConfigGroup original = cf1.group(QStringLiteral("Enum Types")); + + KConfigGroup copy = cf1.group(QStringLiteral("Enum Types Copy")); + original.copyTo(©); // copy from one group to another + QCOMPARE(copy.entryMap(), original.entryMap()); + + KConfig cf2(s_test_subdir + QLatin1String("copy_of_kconfigtest"), KConfig::SimpleConfig); + QVERIFY(!cf2.hasGroup(original.name())); + QVERIFY(!cf2.hasGroup(copy.name())); + + KConfigGroup newGroup = cf2.group(original.name()); + original.copyTo(&newGroup); // copy from one file to another + QVERIFY(cf2.hasGroup(original.name())); + QVERIFY(!cf2.hasGroup(copy.name())); // make sure we didn't copy more than we wanted + QCOMPARE(newGroup.entryMap(), original.entryMap()); +} + +void KConfigTest::testConfigCopyToSync() +{ + KConfig cf1(s_kconfig_test_subdir); + // Prepare source file + KConfigGroup group(&cf1, QStringLiteral("CopyToTest")); + group.writeEntry("Type", "Test"); + QVERIFY(cf1.sync()); + + // Copy to "destination" + const QString destination = m_testConfigDir + QLatin1String("/kconfigcopytotest"); + QFile::remove(destination); + + KConfig cf2(s_test_subdir + QLatin1String("kconfigcopytotest")); + KConfigGroup group2(&cf2, QStringLiteral("CopyToTest")); + + group.copyTo(&group2); + + QString testVal = group2.readEntry("Type"); + QCOMPARE(testVal, QStringLiteral("Test")); + // should write to disk the copied data from group + QVERIFY(cf2.sync()); + QVERIFY(QFile::exists(destination)); +} + +void KConfigTest::testConfigCopyTo() +{ + KConfig cf1(s_kconfig_test_subdir); + { + // Prepare source file + KConfigGroup group(&cf1, QStringLiteral("CopyToTest")); + group.writeEntry("Type", "Test"); + QVERIFY(cf1.sync()); + } + + { + // Copy to "destination" + const QString destination = m_testConfigDir + QLatin1String("/kconfigcopytotest"); + QFile::remove(destination); + KConfig cf2; + cf1.copyTo(destination, &cf2); + KConfigGroup group2(&cf2, QStringLiteral("CopyToTest")); + QString testVal = group2.readEntry("Type"); + QCOMPARE(testVal, QStringLiteral("Test")); + QVERIFY(cf2.sync()); + QVERIFY(QFile::exists(destination)); + } + + // Check copied config file on disk + KConfig cf3(s_test_subdir + QLatin1String("kconfigcopytotest")); + KConfigGroup group3(&cf3, QStringLiteral("CopyToTest")); + QString testVal = group3.readEntry("Type"); + QCOMPARE(testVal, QStringLiteral("Test")); +} + +void KConfigTest::testReparent() +{ + KConfig cf(s_kconfig_test_subdir); + const QString name(QStringLiteral("Enum Types")); + KConfigGroup group = cf.group(name); + const QMap originalMap = group.entryMap(); + KConfigGroup parent = cf.group(QStringLiteral("Parent Group")); + + QVERIFY(!parent.hasGroup(name)); + + QVERIFY(group.entryMap() == originalMap); + + group.reparent(&parent); // see if it can be made a sub-group of another group + QVERIFY(parent.hasGroup(name)); + QCOMPARE(group.entryMap(), originalMap); + + group.reparent(&cf); // see if it can make it a top-level group again + // QVERIFY(!parent.hasGroup(name)); + QCOMPARE(group.entryMap(), originalMap); +} + +static void ageTimeStamp(const QString &path, int nsec) +{ +#ifdef Q_OS_UNIX + QDateTime mtime = QFileInfo(path).lastModified().addSecs(-nsec); + struct utimbuf utbuf; + utbuf.actime = mtime.toSecsSinceEpoch(); + utbuf.modtime = utbuf.actime; + utime(QFile::encodeName(path).constData(), &utbuf); +#else + QTest::qSleep(nsec * 1000); +#endif +} + +void KConfigTest::testWriteOnSync() +{ + QDateTime oldStamp; + QDateTime newStamp; + KConfig sc(s_kconfig_test_subdir, KConfig::IncludeGlobals); + + // Age the timestamp of global config file a few sec, and collect it. + QString globFile = m_kdeGlobalsPath; + ageTimeStamp(globFile, 2); // age 2 sec + oldStamp = QFileInfo(globFile).lastModified(); + + // Add a local entry and sync the config. + // Should not rewrite the global config file. + KConfigGroup cgLocal(&sc, QStringLiteral("Locals")); + cgLocal.writeEntry("someLocalString", "whatever"); + QVERIFY(sc.sync()); + + // Verify that the timestamp of global config file didn't change. + newStamp = QFileInfo(globFile).lastModified(); + QCOMPARE(newStamp, oldStamp); + + // Age the timestamp of local config file a few sec, and collect it. + QString locFile = m_testConfigDir + QLatin1String("/kconfigtest"); + ageTimeStamp(locFile, 2); // age 2 sec + oldStamp = QFileInfo(locFile).lastModified(); + + // Add a global entry and sync the config. + // Should not rewrite the local config file. + KConfigGroup cgGlobal(&sc, QStringLiteral("Globals")); + cgGlobal.writeEntry("someGlobalString", "whatever", KConfig::Persistent | KConfig::Global); + QVERIFY(sc.sync()); + + // Verify that the timestamp of local config file didn't change. + newStamp = QFileInfo(locFile).lastModified(); + QCOMPARE(newStamp, oldStamp); +} + +void KConfigTest::testFailOnReadOnlyFileSync() +{ + KConfig sc(s_test_subdir + QLatin1String("kconfigfailonreadonlytest")); + KConfigGroup cgLocal(&sc, QStringLiteral("Locals")); + + cgLocal.writeEntry("someLocalString", "whatever"); + QVERIFY(cgLocal.sync()); + + QFile f(m_testConfigDir + QLatin1String("kconfigfailonreadonlytest")); + QVERIFY(f.exists()); + QVERIFY(f.setPermissions(QFileDevice::ReadOwner)); + +#ifndef Q_OS_WIN + if (::getuid() == 0) { + QSKIP("Root can write to read-only files"); + } +#endif + cgLocal.writeEntry("someLocalString", "whatever2"); + QVERIFY(!cgLocal.sync()); + + QVERIFY(f.setPermissions(QFileDevice::ReadOwner | QFileDevice::WriteOwner)); + QVERIFY(f.remove()); +} + +void KConfigTest::testDirtyOnEqual() +{ + QDateTime oldStamp; + QDateTime newStamp; + KConfig sc(s_kconfig_test_subdir); + + // Initialize value + KConfigGroup cgLocal(&sc, QStringLiteral("random")); + cgLocal.writeEntry("theKey", "whatever"); + QVERIFY(sc.sync()); + + // Age the timestamp of local config file a few sec, and collect it. + QString locFile = m_testConfigDir + QLatin1String("/kconfigtest"); + ageTimeStamp(locFile, 2); // age 2 sec + oldStamp = QFileInfo(locFile).lastModified(); + + // Write exactly the same again + cgLocal.writeEntry("theKey", "whatever"); + // This should be a no-op + QVERIFY(sc.sync()); + + // Verify that the timestamp of local config file didn't change. + newStamp = QFileInfo(locFile).lastModified(); + QCOMPARE(newStamp, oldStamp); +} + +void KConfigTest::testDirtyOnEqualOverdo() +{ + QByteArray val1( + "\0" + "one", + 4); + QByteArray val2( + "\0" + "two", + 4); + QByteArray defvalr; + + KConfig sc(s_kconfig_test_subdir); + KConfigGroup cgLocal(&sc, QStringLiteral("random")); + cgLocal.writeEntry("someKey", val1); + QCOMPARE(cgLocal.readEntry("someKey", defvalr), val1); + cgLocal.writeEntry("someKey", val2); + QCOMPARE(cgLocal.readEntry("someKey", defvalr), val2); +} + +void KConfigTest::testCreateDir() +{ + // Test auto-creating the parent directory when needed (KConfigIniBackend::createEnclosing) + QTemporaryDir tmpDir(QDir::tempPath() + QStringLiteral("/fakehome_XXXXXX")); + QVERIFY(tmpDir.isValid()); + const QString kdehome = tmpDir.path() + QLatin1String("/.kde-unit-test"); + const QString subdir = kdehome + QLatin1String("/newsubdir"); + const QString file = subdir + QLatin1String("/foo.desktop"); + QFile::remove(file); + QDir().rmdir(subdir); + QVERIFY(!QDir().exists(subdir)); + KDesktopFile desktopFile(file); + desktopFile.desktopGroup().writeEntry("key", "value"); + QVERIFY(desktopFile.sync()); + QVERIFY(QFile::exists(file)); + + // Cleanup + QFile::remove(file); + QDir().rmdir(subdir); +} + +void KConfigTest::testSyncOnExit() +{ + // Often, the KGlobalPrivate global static's destructor ends up calling ~KConfig -> + // KConfig::sync ... and if that code triggers KGlobal code again then things could crash. + // So here's a test for modifying KSharedConfig::openConfig() and not syncing, the process exit will sync. + KConfigGroup grp(KSharedConfig::openConfig(s_test_subdir + QLatin1String("syncOnExitRc")), QStringLiteral("syncOnExit")); + grp.writeEntry("key", "value"); +} + +void KConfigTest::testSharedConfig() +{ + // Can I use a KConfigGroup even after the KSharedConfigPtr goes out of scope? + KConfigGroup myConfigGroup; + { + KSharedConfigPtr config = KSharedConfig::openConfig(s_kconfig_test_subdir); + myConfigGroup = KConfigGroup(config, QStringLiteral("Hello")); + } + QCOMPARE(myConfigGroup.readEntry("stringEntry1"), s_string_entry1); + + // Get the main config + KSharedConfigPtr mainConfig = KSharedConfig::openConfig(); + KConfigGroup mainGroup(mainConfig, QStringLiteral("Main")); + QCOMPARE(mainGroup.readEntry("Key", QString{}), QStringLiteral("Value")); +} + +void KConfigTest::testLocaleConfig() +{ + // Initialize the testdata + QDir().mkpath(m_testConfigDir); + const QString file = m_testConfigDir + QLatin1String("/localized.test"); + QFile::remove(file); + QFile f(file); + QVERIFY(f.open(QIODevice::WriteOnly)); + QTextStream ts(&f); + ts << "[Test_Wrong]\n"; + ts << "foo[ca]=5\n"; + ts << "foostring[ca]=nice\n"; + ts << "foobool[ca]=true\n"; + ts << "[Test_Right]\n"; + ts << "foo=5\n"; + ts << "foo[ca]=5\n"; + ts << "foostring=primary\n"; + ts << "foostring[ca]=nice\n"; + ts << "foobool=primary\n"; + ts << "foobool[ca]=true\n"; + f.close(); + + // Load the testdata + QVERIFY(QFile::exists(file)); + KConfig config(file); + config.setLocale(QStringLiteral("ca")); + + // This group has only localized values. That is not supported. The values + // should be dropped on loading. + KConfigGroup cg(&config, QStringLiteral("Test_Wrong")); + QEXPECT_FAIL("", "The localized values are not dropped", Continue); + QVERIFY(!cg.hasKey("foo")); + QEXPECT_FAIL("", "The localized values are not dropped", Continue); + QVERIFY(!cg.hasKey("foostring")); + QEXPECT_FAIL("", "The localized values are not dropped", Continue); + QVERIFY(!cg.hasKey("foobool")); + + // Now check the correct config group + KConfigGroup cg2(&config, QStringLiteral("Test_Right")); + QCOMPARE(cg2.readEntry("foo"), QStringLiteral("5")); + QCOMPARE(cg2.readEntry("foo", 3), 5); + QCOMPARE(cg2.readEntry("foostring"), QStringLiteral("nice")); + QCOMPARE(cg2.readEntry("foostring", "ugly"), QStringLiteral("nice")); + QCOMPARE(cg2.readEntry("foobool"), QStringLiteral("true")); + QCOMPARE(cg2.readEntry("foobool", false), true); + + // Clean up after the testcase + QFile::remove(file); +} + +void KConfigTest::testDeleteWhenLocalized() +{ + // Initialize the testdata + QTemporaryDir tmpDir(QDir::tempPath() + QStringLiteral("/fakehome_XXXXXX")); + QVERIFY(tmpDir.isValid()); + const QString subdir = tmpDir.path() + QLatin1String("/.kde-unit-test/"); + QDir().mkpath(subdir); + const QString file = subdir + QLatin1String("/localized_delete.test"); + QFile::remove(file); + QFile f(file); + QVERIFY(f.open(QIODevice::WriteOnly)); + QTextStream ts(&f); + ts << "[Test4711]\n"; + ts << "foo=3\n"; + ts << "foo[ca]=5\n"; + ts << "foo[de]=7\n"; + ts << "foostring=ugly\n"; + ts << "foostring[ca]=nice\n"; + ts << "foostring[de]=schoen\n"; + ts << "foobool=false\n"; + ts << "foobool[ca]=true\n"; + ts << "foobool[de]=true\n"; + f.close(); + + // Load the testdata. We start in locale "ca". + QVERIFY(QFile::exists(file)); + KConfig config(file); + config.setLocale(QStringLiteral("ca")); + KConfigGroup cg(&config, QStringLiteral("Test4711")); + + // Delete a value. Once with localized, once with Normal + cg.deleteEntry("foostring", KConfigBase::Persistent | KConfigBase::Localized); + cg.deleteEntry("foobool"); + QVERIFY(config.sync()); + + // The value is now gone. The others are still there. Everything correct + // here. + QVERIFY(!cg.hasKey("foostring")); + QVERIFY(!cg.hasKey("foobool")); + QVERIFY(cg.hasKey("foo")); + + // The current state is: (Just return before this comment.) + // [...] + // foobool[ca]=true + // foobool[de]=wahr + // foostring=ugly + // foostring[de]=schoen + + // Now switch the locale to "de" and repeat the checks. Results should be + // the same. But they currently are not. The localized value are + // independent of each other. All values are still there in "de". + config.setLocale(QStringLiteral("de")); + QEXPECT_FAIL("", "Currently localized values are not deleted correctly", Continue); + QVERIFY(!cg.hasKey("foostring")); + QEXPECT_FAIL("", "Currently localized values are not deleted correctly", Continue); + QVERIFY(!cg.hasKey("foobool")); + QVERIFY(cg.hasKey("foo")); + // Check where the wrong values come from. + // We get the "de" value. + QCOMPARE(cg.readEntry("foostring", "nothing"), QStringLiteral("schoen")); + // We get the "de" value. + QCOMPARE(cg.readEntry("foobool", false), true); + + // Now switch the locale back "ca" and repeat the checks. Results are + // again different. + config.setLocale(QStringLiteral("ca")); + // This line worked above. But now it fails. + QEXPECT_FAIL("", "Currently localized values are not deleted correctly", Continue); + QVERIFY(!cg.hasKey("foostring")); + // This line worked above too. + QEXPECT_FAIL("", "Currently localized values are not deleted correctly", Continue); + QVERIFY(!cg.hasKey("foobool")); + QVERIFY(cg.hasKey("foo")); + // Check where the wrong values come from. + // We get the primary value because the "ca" value was deleted. + QCOMPARE(cg.readEntry("foostring", "nothing"), QStringLiteral("ugly")); + // We get the "ca" value. + QCOMPARE(cg.readEntry("foobool", false), true); + + // Now test the deletion of a group. + cg.deleteGroup(); + QVERIFY(config.sync()); + + // Current state: [ca] and [de] entries left... oops. + // qDebug() << readLinesFrom(file); + + // Bug: The group still exists [because of the localized entries]... + QVERIFY(cg.exists()); + QVERIFY(!cg.hasKey("foo")); + QVERIFY(!cg.hasKey("foostring")); + QEXPECT_FAIL("", "Currently localized values are not deleted correctly", Continue); + QVERIFY(!cg.hasKey("foobool")); + + // Now switch the locale to "de" and repeat the checks. All values + // still here because only the primary values are deleted. + config.setLocale(QStringLiteral("de")); + QEXPECT_FAIL("", "Currently localized values are not deleted correctly", Continue); + QVERIFY(!cg.hasKey("foo")); + QEXPECT_FAIL("", "Currently localized values are not deleted correctly", Continue); + QVERIFY(!cg.hasKey("foostring")); + QEXPECT_FAIL("", "Currently localized values are not deleted correctly", Continue); + QVERIFY(!cg.hasKey("foobool")); + // Check where the wrong values come from. + // We get the "de" value. + QCOMPARE(cg.readEntry("foostring", "nothing"), QStringLiteral("schoen")); + // We get the "de" value. + QCOMPARE(cg.readEntry("foobool", false), true); + // We get the "de" value. + QCOMPARE(cg.readEntry("foo", 0), 7); + + // Now switch the locale to "ca" and repeat the checks + // "foostring" is now really gone because both the primary value and the + // "ca" value are deleted. + config.setLocale(QStringLiteral("ca")); + QEXPECT_FAIL("", "Currently localized values are not deleted correctly", Continue); + QVERIFY(!cg.hasKey("foo")); + QVERIFY(!cg.hasKey("foostring")); + QEXPECT_FAIL("", "Currently localized values are not deleted correctly", Continue); + QVERIFY(!cg.hasKey("foobool")); + // Check where the wrong values come from. + // We get the "ca" value. + QCOMPARE(cg.readEntry("foobool", false), true); + // We get the "ca" value. + QCOMPARE(cg.readEntry("foo", 0), 5); + + // Cleanup + QFile::remove(file); +} + +void KConfigTest::testKdeGlobals() +{ + { + KConfig glob(QStringLiteral("kdeglobals")); + KConfigGroup general(&glob, QStringLiteral("General")); + general.writeEntry("testKG", "1"); + QVERIFY(glob.sync()); + } + + KConfig globRead(QStringLiteral("kdeglobals")); + const KConfigGroup general(&globRead, QStringLiteral("General")); + QCOMPARE(general.readEntry("testKG"), QStringLiteral("1")); + + // Check we wrote into kdeglobals + const QList lines = readLines(QStringLiteral("kdeglobals")); + QVERIFY(lines.contains("[General]\n")); + QVERIFY(lines.contains("testKG=1\n")); + + // Writing using NoGlobals + { + KConfig glob(QStringLiteral("kdeglobals"), KConfig::NoGlobals); + KConfigGroup general(&glob, QStringLiteral("General")); + general.writeEntry("testKG", "2"); + QVERIFY(glob.sync()); + } + globRead.reparseConfiguration(); + QCOMPARE(general.readEntry("testKG"), QStringLiteral("2")); + + // Reading using NoGlobals + { + KConfig globReadNoGlob(QStringLiteral("kdeglobals"), KConfig::NoGlobals); + const KConfigGroup generalNoGlob(&globReadNoGlob, QStringLiteral("General")); + QCOMPARE(generalNoGlob.readEntry("testKG"), QStringLiteral("2")); + } +} + +void KConfigTest::testLocalDeletion() +{ + // Prepare kdeglobals + { + KConfig glob(QStringLiteral("kdeglobals")); + KConfigGroup general(&glob, QStringLiteral("OwnTestGroup")); + general.writeEntry("GlobalKey", "DontTouchMe"); + QVERIFY(glob.sync()); + } + + QStringList expectedKeys{QStringLiteral("LocalKey")}; + expectedKeys.prepend(QStringLiteral("GlobalWrite")); + + // Write into kconfigtest, including deleting GlobalKey + { + KConfig mainConfig(s_kconfig_test_subdir); + KConfigGroup mainGroup(&mainConfig, QStringLiteral("OwnTestGroup")); + mainGroup.writeEntry("LocalKey", QStringLiteral("LocalValue")); + mainGroup.writeEntry("GlobalWrite", QStringLiteral("GlobalValue"), KConfig::Persistent | KConfig::Global); // goes to kdeglobals + QCOMPARE(mainGroup.readEntry("GlobalKey"), QStringLiteral("DontTouchMe")); + mainGroup.deleteEntry("GlobalKey"); // local deletion ([$d]), kdeglobals is unchanged + QCOMPARE(mainGroup.readEntry("GlobalKey", "Default"), QStringLiteral("Default")); // key is gone + QCOMPARE(mainGroup.keyList(), expectedKeys); + } + + // Check what ended up in kconfigtest + const QList lines = readLines(); + QVERIFY(lines.contains("[OwnTestGroup]\n")); + QVERIFY(lines.contains("GlobalKey[$d]\n")); + + // Check what ended up in kdeglobals + { + KConfig globReadNoGlob(QStringLiteral("kdeglobals"), KConfig::NoGlobals); + const KConfigGroup generalNoGlob(&globReadNoGlob, QStringLiteral("OwnTestGroup")); + QCOMPARE(generalNoGlob.readEntry("GlobalKey"), QStringLiteral("DontTouchMe")); + QCOMPARE(generalNoGlob.readEntry("GlobalWrite"), QStringLiteral("GlobalValue")); + QVERIFY(!generalNoGlob.hasKey("LocalValue")); + QStringList expectedGlobalKeys{QStringLiteral("GlobalKey")}; + expectedGlobalKeys.append(QStringLiteral("GlobalWrite")); + QCOMPARE(generalNoGlob.keyList(), expectedGlobalKeys); + } + + // Check what we see when re-reading the config file + { + KConfig mainConfig(s_kconfig_test_subdir); + KConfigGroup mainGroup(&mainConfig, QStringLiteral("OwnTestGroup")); + QCOMPARE(mainGroup.readEntry("GlobalKey", "Default"), QStringLiteral("Default")); // key is gone + QCOMPARE(mainGroup.keyList(), expectedKeys); + } +} + +void KConfigTest::testAnonymousConfig() +{ + KConfig anonConfig(QString(), KConfig::SimpleConfig); + KConfigGroup general(&anonConfig, QStringLiteral("General")); + QCOMPARE(general.readEntry("testKG"), QString()); // no kdeglobals merging + general.writeEntry("Foo", "Bar"); + QCOMPARE(general.readEntry("Foo"), QStringLiteral("Bar")); +} + +void KConfigTest::testQByteArrayUtf8() +{ + QTemporaryFile file; + QVERIFY(file.open()); + KConfig config(file.fileName(), KConfig::SimpleConfig); + KConfigGroup general(&config, QStringLiteral("General")); + QByteArray bytes(256, '\0'); + for (int i = 0; i < 256; i++) { + bytes[i] = i; + } + general.writeEntry("Utf8", bytes); + config.sync(); + file.flush(); + file.close(); + QFile readFile(file.fileName()); + QVERIFY(readFile.open(QFile::ReadOnly)); +#define VALUE \ + "Utf8=" \ + "\\x00\\x01\\x02\\x03\\x04\\x05\\x06\\x07\\x08\\t\\n\\x0b\\x0c\\r\\x0e\\x0f\\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17\\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x" \ + "1f " \ + "!\"#$%&'()*+,-./" \ + "0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~" \ + "\\x7f\\x80\\x81\\x82\\x83\\x84\\x85\\x86\\x87\\x88\\x89\\x8a\\x8b\\x8c\\x8d\\x8e\\x8f\\x90\\x91\\x92\\x93\\x94\\x95\\x96\\x97\\x98\\x99\\x9a\\x9b\\x9c\\" \ + "x9d\\x9e\\x9f\\xa0\\xa1\\xa2\\xa3\\xa4\\xa5\\xa6\\xa7\\xa8\\xa9\\xaa\\xab\\xac\\xad\\xae\\xaf\\xb0\\xb1\\xb2\\xb3\\xb4\\xb5\\xb6\\xb7\\xb8\\xb9\\xba\\xb" \ + "b\\xbc\\xbd\\xbe\\xbf\\xc0\\xc1\\xc2\\xc3\\xc4\\xc5\\xc6\\xc7\\xc8\\xc9\\xca\\xcb\\xcc\\xcd\\xce\\xcf\\xd0\\xd1\\xd2\\xd3\\xd4\\xd5\\xd6\\xd7\\xd8\\xd9" \ + "\\xda\\xdb\\xdc\\xdd\\xde\\xdf\\xe0\\xe1\\xe2\\xe3\\xe4\\xe5\\xe6\\xe7\\xe8\\xe9\\xea\\xeb\\xec\\xed\\xee\\xef\\xf0\\xf1\\xf2\\xf3\\xf4\\xf5\\xf6\\xf7\\" \ + "xf8\\xf9\\xfa\\xfb\\xfc\\xfd\\xfe\\xff" + const QByteArray fileBytes = readFile.readAll(); +#ifndef Q_OS_WIN + QCOMPARE(fileBytes, QByteArrayLiteral("[General]\n" VALUE "\n")); +#else + QCOMPARE(fileBytes, QByteArrayLiteral("[General]\r\n" VALUE "\r\n")); +#endif +#undef VALUE + + // check that reading works + KConfig config2(file.fileName(), KConfig::SimpleConfig); + KConfigGroup general2(&config2, QStringLiteral("General")); + QCOMPARE(bytes, general2.readEntry("Utf8", QByteArray())); +} + +void KConfigTest::testQStringUtf8_data() +{ + QTest::addColumn("data"); + QTest::newRow("1") << QByteArray("Téléchargements\tTéléchargements"); + QTest::newRow("2") << QByteArray("$¢ह€𐍈\t$¢ह€𐍈"); + QTest::newRow("3") << QByteArray("\xc2\xe0\xa4\xf0\x90\x8d\t\\xc2\\xe0\\xa4\\xf0\\x90\\x8d"); + // 2 byte overlong + QTest::newRow("4") << QByteArray("\xc1\xbf\t\\xc1\\xbf"); + // 3 byte overlong + QTest::newRow("5") << QByteArray("\xe0\x9f\xbf\t\\xe0\\x9f\\xbf"); + // 4 byte overlong + QTest::newRow("6") << QByteArray("\xf0\x8f\xbf\xbf\t\\xf0\\x8f\\xbf\\xbf"); + // outside unicode range + QTest::newRow("7") << QByteArray("\xf4\x90\x80\x80\t\\xf4\\x90\\x80\\x80"); + // just within range + QTest::newRow("8") << QByteArray("\xc2\x80\t\xc2\x80"); + QTest::newRow("9") << QByteArray("\xe0\xa0\x80\t\xe0\xa0\x80"); + QTest::newRow("10") << QByteArray("\xf0\x90\x80\x80\t\xf0\x90\x80\x80"); + QTest::newRow("11") << QByteArray("\xf4\x8f\xbf\xbf\t\xf4\x8f\xbf\xbf"); +} + +void KConfigTest::testQStringUtf8() +{ + QFETCH(QByteArray, data); + const QList d = data.split('\t'); + const QByteArray value = d[0]; + const QByteArray serialized = d[1]; + QTemporaryFile file; + QVERIFY(file.open()); + KConfig config(file.fileName(), KConfig::SimpleConfig); + KConfigGroup general(&config, QStringLiteral("General")); + general.writeEntry("key", value); + config.sync(); + file.flush(); + file.close(); + QFile readFile(file.fileName()); + QVERIFY(readFile.open(QFile::ReadOnly)); + QByteArray fileBytes = readFile.readAll(); +#ifdef Q_OS_WIN + fileBytes.replace(QByteArrayLiteral("\r\n"), QByteArrayLiteral("\n")); +#endif + QCOMPARE(fileBytes, QByteArrayLiteral("[General]\nkey=") + serialized + QByteArrayLiteral("\n")); + + // check that reading works + KConfig config2(file.fileName(), KConfig::SimpleConfig); + KConfigGroup general2(&config2, QStringLiteral("General")); + QCOMPARE(value, general2.readEntry("key", QByteArray())); +} + +void KConfigTest::testNewlines() +{ + // test that kconfig always uses the native line endings + QTemporaryFile file; + QVERIFY(file.open()); + KConfig anonConfig(file.fileName(), KConfig::SimpleConfig); + KConfigGroup general(&anonConfig, QStringLiteral("General")); + general.writeEntry("Foo", "Bar"); + general.writeEntry("Bar", "Foo"); + anonConfig.sync(); + file.flush(); + file.close(); + QFile readFile(file.fileName()); + QVERIFY(readFile.open(QFile::ReadOnly)); +#ifndef Q_OS_WIN + QCOMPARE(readFile.readAll(), QByteArrayLiteral("[General]\nBar=Foo\nFoo=Bar\n")); +#else + QCOMPARE(readFile.readAll(), QByteArrayLiteral("[General]\r\nBar=Foo\r\nFoo=Bar\r\n")); +#endif +} + +void KConfigTest::testMoveValuesTo() +{ + QTemporaryFile file; + QVERIFY(file.open()); + // Prepare kdeglobals + { + KConfig glob(QStringLiteral("kdeglobals")); + KConfigGroup general(&glob, QStringLiteral("TestGroup")); + general.writeEntry("GlobalKey", "PlsDeleteMe"); + QVERIFY(glob.sync()); + } + + KConfigGroup grp = KSharedConfig::openConfig(file.fileName())->group(QStringLiteral("TestGroup")); + + grp.writeEntry("test1", "first_value"); + grp.writeEntry("test_empty", ""); + grp.writeEntry("other", "other_value"); + grp.writePathEntry("my_path", QStringLiteral("~/somepath")); + // because this key is from the global file it should be explicitly deleted + grp.deleteEntry("GlobalKey"); + + QTemporaryFile targetFile; + QVERIFY(targetFile.open()); + targetFile.close(); + KConfigGroup targetGroup = KSharedConfig::openConfig(targetFile.fileName(), KConfig::SimpleConfig)->group(QStringLiteral("MoveToGroup")); + + grp.moveValuesTo({"test1", "test_empty", "does_not_exist", "my_path", "GlobalKey"}, targetGroup); + QVERIFY(grp.config()->isDirty()); + QVERIFY(targetGroup.config()->isDirty()); + + QCOMPARE(grp.keyList(), QStringList{QStringLiteral("other")}); + QStringList expectedKeyList{QStringLiteral("my_path"), QStringLiteral("test1"), QStringLiteral("test_empty")}; + QCOMPARE(targetGroup.keyList(), expectedKeyList); + QCOMPARE(targetGroup.readEntry("test1"), QStringLiteral("first_value")); + + targetGroup.sync(); + QFile targetReadFile(targetFile.fileName()); + targetReadFile.open(QFile::ReadOnly); + QVERIFY(targetReadFile.readAll().contains(QByteArray("my_path[$e]=~/somepath"))); +} + +void KConfigTest::testMoveAllValuesTo() +{ + QTemporaryFile file; + QVERIFY(file.open()); + // Prepare kdeglobals + { + KConfig glob(QStringLiteral("kdeglobals")); + KConfigGroup general(&glob, QStringLiteral("TestGroup")); + general.writeEntry("GlobalKey", "PlsDeleteMe"); + QVERIFY(glob.sync()); + } + + KConfigGroup grp = KSharedConfig::openConfig(file.fileName())->group(QStringLiteral("TestGroup")); + + grp.writeEntry("test1", "first_value"); + grp.writeEntry("test_empty", ""); + grp.writePathEntry("my_path", QStringLiteral("~/somepath")); + // because this key is from the global file it should be explicitly deleted + grp.deleteEntry("GlobalKey"); + + QTemporaryFile targetFile; + QVERIFY(targetFile.open()); + targetFile.close(); + KConfigGroup targetGroup = KSharedConfig::openConfig(targetFile.fileName(), KConfig::SimpleConfig)->group(QStringLiteral("MoveToGroup")); + + grp.moveValuesTo(targetGroup); + QVERIFY(grp.config()->isDirty()); + QVERIFY(targetGroup.config()->isDirty()); + + QStringList expectedKeyList{QStringLiteral("my_path"), QStringLiteral("test1"), QStringLiteral("test_empty")}; + QCOMPARE(targetGroup.keyList(), expectedKeyList); + QCOMPARE(targetGroup.readEntry("test1"), QStringLiteral("first_value")); + + targetGroup.sync(); + QFile targetReadFile(targetFile.fileName()); + targetReadFile.open(QFile::ReadOnly); + QVERIFY(targetReadFile.readAll().contains(QByteArray("my_path[$e]=~/somepath"))); +} + +void KConfigTest::testXdgListEntry() +{ + QTemporaryFile file; + QVERIFY(file.open()); + QTextStream out(&file); + out << "[General]\n" + << "Key1=\n" // empty list + // emtpty entries + << "Key2=;\n" + << "Key3=;;\n" + << "Key4=;;;\n" + << "Key5=\\;\n" + << "Key6=1;2\\;3;;\n"; + out.flush(); + file.close(); + KConfig anonConfig(file.fileName(), KConfig::SimpleConfig); + KConfigGroup grp = anonConfig.group(QStringLiteral("General")); + QStringList invalidList; // use this as a default when an empty list is expected + invalidList << QStringLiteral("Error! Default value read!"); + QCOMPARE(grp.readXdgListEntry("Key1", invalidList), (QStringList{})); + QCOMPARE(grp.readXdgListEntry("Key2", invalidList), (QStringList{QString{}})); + QCOMPARE(grp.readXdgListEntry("Key3", invalidList), (QStringList{QString{}, QString{}})); + QCOMPARE(grp.readXdgListEntry("Key4", invalidList), (QStringList{QString{}, QString{}, QString{}})); + QCOMPARE(grp.readXdgListEntry("Key5", invalidList), (QStringList{QStringLiteral(";")})); + QCOMPARE(grp.readXdgListEntry("Key6", invalidList), (QStringList{QStringLiteral("1"), QStringLiteral("2;3"), QString{}})); +} + +#include +#include + +// To find multithreading bugs: valgrind --tool=helgrind --track-lockorders=no ./kconfigtest testThreads +void KConfigTest::testThreads() +{ + QThreadPool::globalInstance()->setMaxThreadCount(6); + // Run in parallel some tests that work on different config files, + // otherwise unexpected things might indeed happen. + const QList> futures = { + QtConcurrent::run(&KConfigTest::testAddConfigSources, this), + QtConcurrent::run(&KConfigTest::testSimple, this), + QtConcurrent::run(&KConfigTest::testDefaults, this), + QtConcurrent::run(&KConfigTest::testSharedConfig, this), + QtConcurrent::run(&KConfigTest::testSharedConfig, this), + }; + + // QEXPECT_FAIL triggers race conditions, it should be fixed to use QThreadStorage... + // futures << QtConcurrent::run(this, &KConfigTest::testDeleteWhenLocalized); + // futures << QtConcurrent::run(this, &KConfigTest::testEntryMap); + for (QFuture f : futures) { + f.waitForFinished(); + } +} + +void KConfigTest::testNotify() +{ +#if !KCONFIG_USE_DBUS + QSKIP("KConfig notification requires DBus"); +#endif + + KConfig config(s_kconfig_test_subdir); + auto myConfigGroup = KConfigGroup(&config, QStringLiteral("TopLevelGroup")); + + // mimics a config in another process, which is watching for events + auto remoteConfig = KSharedConfig::openConfig(s_kconfig_test_subdir); + KConfigWatcher::Ptr watcher = KConfigWatcher::create(remoteConfig); + + // some random config that shouldn't be changing when kconfigtest changes, only on kdeglobals + auto otherRemoteConfig = KSharedConfig::openConfig(s_test_subdir + QLatin1String("kconfigtest2")); + KConfigWatcher::Ptr otherWatcher = KConfigWatcher::create(otherRemoteConfig); + + QSignalSpy watcherSpy(watcher.data(), &KConfigWatcher::configChanged); + QSignalSpy otherWatcherSpy(otherWatcher.data(), &KConfigWatcher::configChanged); + + // write entries in a group and subgroup + myConfigGroup.writeEntry("entryA", "foo", KConfig::Persistent | KConfig::Notify); + auto subGroup = myConfigGroup.group(QStringLiteral("aSubGroup")); + subGroup.writeEntry("entry1", "foo", KConfig::Persistent | KConfig::Notify); + subGroup.writeEntry("entry2", "foo", KConfig::Persistent | KConfig::Notify); + config.sync(); + watcherSpy.wait(); + QCOMPARE(watcherSpy.count(), 2); + + std::sort(watcherSpy.begin(), watcherSpy.end(), [](QList a, QList b) { + return a[0].value().name() < b[0].value().name(); + }); + + QCOMPARE(watcherSpy[0][0].value().name(), QStringLiteral("TopLevelGroup")); + QCOMPARE(watcherSpy[0][1].value(), QByteArrayList({"entryA"})); + + QCOMPARE(watcherSpy[1][0].value().name(), QStringLiteral("aSubGroup")); + QCOMPARE(watcherSpy[1][0].value().parent().name(), QStringLiteral("TopLevelGroup")); + QCOMPARE(watcherSpy[1][1].value(), QByteArrayList({"entry1", "entry2"})); + + // delete an entry + watcherSpy.clear(); + myConfigGroup.deleteEntry("entryA", KConfig::Persistent | KConfig::Notify); + config.sync(); + watcherSpy.wait(); + QCOMPARE(watcherSpy.count(), 1); + QCOMPARE(watcherSpy[0][0].value().name(), QStringLiteral("TopLevelGroup")); + QCOMPARE(watcherSpy[0][1].value(), QByteArrayList({"entryA"})); + + // revert to default an entry + watcherSpy.clear(); + myConfigGroup.revertToDefault("entryA", KConfig::Persistent | KConfig::Notify); + config.sync(); + watcherSpy.wait(); + QCOMPARE(watcherSpy.count(), 1); + QCOMPARE(watcherSpy[0][0].value().name(), QStringLiteral("TopLevelGroup")); + QCOMPARE(watcherSpy[0][1].value(), QByteArrayList({"entryA"})); + + // deleting a group, should notify that every entry in that group has changed + watcherSpy.clear(); + myConfigGroup.deleteGroup(QStringLiteral("aSubGroup"), KConfig::Persistent | KConfig::Notify); + config.sync(); + watcherSpy.wait(); + QCOMPARE(watcherSpy.count(), 1); + QCOMPARE(watcherSpy[0][0].value().name(), QStringLiteral("aSubGroup")); + QCOMPARE(watcherSpy[0][1].value(), QByteArrayList({"entry1", "entry2"})); + + // global write still triggers our notification + watcherSpy.clear(); + myConfigGroup.writeEntry("someGlobalEntry", "foo", KConfig::Persistent | KConfig::Notify | KConfig::Global); + config.sync(); + watcherSpy.wait(); + QCOMPARE(watcherSpy.count(), 1); + QCOMPARE(watcherSpy[0][0].value().name(), QStringLiteral("TopLevelGroup")); + QCOMPARE(watcherSpy[0][1].value(), QByteArrayList({"someGlobalEntry"})); + + // watching another file should have only triggered from the kdeglobals change + QCOMPARE(otherWatcherSpy.count(), 1); + QCOMPARE(otherWatcherSpy[0][0].value().name(), QStringLiteral("TopLevelGroup")); + QCOMPARE(otherWatcherSpy[0][1].value(), QByteArrayList({"someGlobalEntry"})); +} + +void KConfigTest::testNotifyIllegalObjectPath() +{ +#if !KCONFIG_USE_DBUS + QSKIP("KConfig notification requires DBus"); +#endif + + KConfig config(s_kconfig_test_illegal_object_path); + auto myConfigGroup = KConfigGroup(&config, QStringLiteral("General")); + + // mimics a config in another process, which is watching for events + auto remoteConfig = KSharedConfig::openConfig(s_kconfig_test_illegal_object_path); + KConfigWatcher::Ptr watcher = KConfigWatcher::create(remoteConfig); + + QSignalSpy watcherSpy(watcher.data(), &KConfigWatcher::configChanged); + + // write entries in a group and subgroup + myConfigGroup.writeEntry("entryA", "foo", KConfig::Persistent | KConfig::Notify); + config.sync(); + watcherSpy.wait(); + QCOMPARE(watcherSpy.size(), 1); +} + +void KConfigTest::testKAuthorizeEnums() +{ + KSharedConfig::Ptr config = KSharedConfig::openConfig(); + KConfigGroup actionRestrictions = config->group(QStringLiteral("KDE Action Restrictions")); + actionRestrictions.writeEntry("shell_access", false); + actionRestrictions.writeEntry("action/open_with", false); + + QVERIFY(!KAuthorized::authorize(KAuthorized::SHELL_ACCESS)); + QVERIFY(!KAuthorized::authorizeAction(KAuthorized::OPEN_WITH)); + actionRestrictions.deleteGroup(); + + QVERIFY(!KAuthorized::authorize((KAuthorized::GenericRestriction)0)); + QVERIFY(!KAuthorized::authorizeAction((KAuthorized::GenericAction)0)); +} + +void KConfigTest::testKdeglobalsVsDefault() +{ + // Add testRestore key with global value in kdeglobals + KConfig glob(QStringLiteral("kdeglobals")); + KConfigGroup generalGlob(&glob, QStringLiteral("General")); + generalGlob.writeEntry("testRestore", "global"); + QVERIFY(glob.sync()); + + KConfig local(s_test_subdir + QLatin1String("restorerc")); + KConfigGroup generalLocal(&local, QStringLiteral("General")); + // Check if we get global and not the default value from cpp (defaultcpp) when reading data from restorerc + QCOMPARE(generalLocal.readEntry("testRestore", "defaultcpp"), QStringLiteral("global")); + + // Add test restore key with restore value in restorerc file + generalLocal.writeEntry("testRestore", "restore"); + QVERIFY(local.sync()); + local.reparseConfiguration(); + // We expect to get the value from restorerc file + QCOMPARE(generalLocal.readEntry("testRestore", "defaultcpp"), QStringLiteral("restore")); + + // Revert to default testRestore key and we expect to get default value and not the global one + generalLocal.revertToDefault("testRestore"); + local.sync(); + local.reparseConfiguration(); + QCOMPARE(generalLocal.readEntry("testRestore", "defaultcpp"), QStringLiteral("defaultcpp")); +} + +#include "moc_kconfigtest.cpp" diff --git a/autotests/kconfigtest.h b/autotests/kconfigtest.h new file mode 100644 index 0000000..c04e63e --- /dev/null +++ b/autotests/kconfigtest.h @@ -0,0 +1,102 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 1997 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGTEST_H +#define KCONFIGTEST_H + +#include + +class KConfigTest : public QObject +{ + Q_OBJECT + +public: + enum Testing { + Ones = 1, + Tens = 10, + Hundreds = 100, + }; + Q_ENUM(Testing) + enum bits { + bit0 = 1, + bit1 = 2, + bit2 = 4, + bit3 = 8, + }; + Q_DECLARE_FLAGS(Flags, bits) + Q_FLAG(Flags) + +private Q_SLOTS: + void initTestCase(); + void cleanupTestCase(); + void testSimple(); + void testDefaults(); + void testLists(); + void testLocale(); + void testEncoding(); + void testPath(); + void testPathQtHome(); + void testPersistenceOfExpandFlagForPath(); + void testComplex(); + void testEnums(); + void testEntryMap(); + void testInvalid(); + void testDeleteEntry(); + void testDelete(); + void testDeleteWhenLocalized(); + void testDefaultGroup(); + void testEmptyGroup(); + void testCascadingWithLocale(); + void testMerge(); + void testImmutable(); + void testGroupEscape(); + void testRevertAllEntries(); + void testChangeGroup(); + void testGroupCopyTo(); + void testConfigCopyTo(); + void testConfigCopyToSync(); + void testReparent(); + void testAnonymousConfig(); + void testQByteArrayUtf8(); + void testQStringUtf8_data(); + void testQStringUtf8(); + + void testMoveValuesTo(); + void testMoveAllValuesTo(); + + void testSubGroup(); + void testAddConfigSources(); + void testWriteOnSync(); + void testFailOnReadOnlyFileSync(); + void testDirtyOnEqual(); + void testDirtyOnEqualOverdo(); + void testCreateDir(); + void testSharedConfig(); + void testOptionOrder(); + void testLocaleConfig(); + void testDirtyAfterRevert(); + void testKdeGlobals(); + void testLocalDeletion(); + void testNewlines(); + void testXdgListEntry(); + void testNotify(); + void testNotifyIllegalObjectPath(); + void testKAuthorizeEnums(); + + void testThreads(); + + void testKdeglobalsVsDefault(); + + // should be last + void testSyncOnExit(); + +private: + QString m_testConfigDir; + QString m_kdeGlobalsPath; +}; +Q_DECLARE_OPERATORS_FOR_FLAGS(KConfigTest::Flags) + +#endif /* KCONFIGTEST_H */ diff --git a/autotests/kdesktopfiletest.cpp b/autotests/kdesktopfiletest.cpp new file mode 100644 index 0000000..a3d7935 --- /dev/null +++ b/autotests/kdesktopfiletest.cpp @@ -0,0 +1,305 @@ +/* + SPDX-FileCopyrightText: 2006 David Faure + + SPDX-License-Identifier: LGPL-2.0-only +*/ +#include "kdesktopfiletest.h" +#include "helper.h" +#include +#include +#include +#include + +#include "kdesktopfile.h" + +#include + +#if defined(Q_OS_UNIX) +#include +#endif + +QTEST_MAIN(KDesktopFileTest) + +void KDesktopFileTest::initTestCase() +{ + QStandardPaths::setTestModeEnabled(true); + + KConfigGroup actionRestrictions(KSharedConfig::openConfig(), QStringLiteral("KDE Action Restrictions")); + actionRestrictions.writeEntry("someBlockedAction", false); +} + +void KDesktopFileTest::testRead() +{ + qputenv("TESTVAR", "value"); + QTemporaryFile file(QDir::tempPath() + QStringLiteral("/testReadXXXXXX.desktop")); + QVERIFY(file.open()); + const QString fileName = file.fileName(); + QTextStream ts(&file); + ts << "[Desktop Entry]\n" + "Type= Application\n" + "Name=My Application\n" + "Icon = foo\n" + "URL[$e]=file:///tmp/$TESTVAR\n" + "MimeType =text/plain;image/png;\n" + "\n"; + file.close(); + QVERIFY(QFile::exists(fileName)); + QVERIFY(KDesktopFile::isDesktopFile(fileName)); + KDesktopFile df(fileName); + QCOMPARE(df.readType(), QString::fromLatin1("Application")); + QVERIFY(df.hasApplicationType()); + QCOMPARE(df.readName(), QString::fromLatin1("My Application")); + QCOMPARE(df.readIcon(), QString::fromLatin1("foo")); + QCOMPARE(df.readMimeTypes(), QStringList() << QString::fromLatin1("text/plain") << QString::fromLatin1("image/png")); + QVERIFY(!df.hasLinkType()); + QCOMPARE(df.fileName(), QFileInfo(fileName).canonicalFilePath()); + QCOMPARE(df.readUrl(), QStringLiteral("file:///tmp/value")); +} + +void KDesktopFileTest::testReadLocalized_data() +{ + QTest::addColumn("locale"); + QTest::addColumn("translation"); + + const QString german = QStringLiteral("Meine Anwendung"); + const QString swiss = QStringLiteral("Mein Anwendungsli"); + + QTest::newRow("de") << QLocale(QLocale::German) << german; + QTest::newRow("de_DE") << QLocale(QStringLiteral("de_DE")) << german; + QTest::newRow("de_DE@bayern") << QLocale(QStringLiteral("de_DE@bayern")) << german; + QTest::newRow("de@bayern") << QLocale(QStringLiteral("de@bayern")) << german; + QTest::newRow("de@freiburg") << QLocale(QStringLiteral("de@freiburg")) << QStringLiteral("Mein Anwendungsle"); + // For CH we have a special translation + QTest::newRow("de_CH") << QLocale(QLocale::German, QLocale::Switzerland) << swiss; + QTest::newRow("de_CH@bern") << QLocale(QStringLiteral("de_CH@bern")) << swiss; + // Austria should fall back to "de" + QTest::newRow("de_AT") << QLocale(QLocale::German, QLocale::Austria) << german; + QTest::newRow("de_AT@tirol") << QLocale(QStringLiteral("de_AT@tirol")) << german; + // no translation for French + QTest::newRow("fr") << QLocale(QLocale::French) << QStringLiteral("My Application"); +} + +void KDesktopFileTest::testReadLocalized() +{ + QTemporaryFile file(QDir::tempPath() + QStringLiteral("/testReadLocalizedXXXXXX.desktop")); + QVERIFY(file.open()); + const QString fileName = file.fileName(); + QTextStream ts(&file); + ts << "[Desktop Entry]\n" + "Type=Application\n" + "Name=My Application\n" + "Name[de]=Meine Anwendung\n" + "Name[de@freiburg]=Mein Anwendungsle\n" + "Name[de_CH]=Mein Anwendungsli\n" + "Icon=foo\n" + "\n"; + file.close(); + QVERIFY(QFile::exists(fileName)); + QVERIFY(KDesktopFile::isDesktopFile(fileName)); + + DefaultLocale defaultLocale; + + QFETCH(QLocale, locale); + QLocale::setDefault(locale); + KDesktopFile df(fileName); + + QEXPECT_FAIL("de@freiburg", "QLocale doesn't support modifiers", Continue); + QTEST(df.readName(), "translation"); +} + +void KDesktopFileTest::testSuccessfulTryExec() +{ + QTemporaryFile file(QDir::tempPath() + QStringLiteral("/testSuccessfulTryExecXXXXXX.desktop")); + QVERIFY(file.open()); + const QString fileName = file.fileName(); + QTextStream ts(&file); + ts << "[Desktop Entry]\n" + "TryExec=whoami\n" + "\n"; + file.close(); + QVERIFY(QFile::exists(fileName)); + KDesktopFile df(fileName); + QCOMPARE(df.tryExec(), true); +} + +void KDesktopFileTest::testUnsuccessfulTryExec() +{ + QTemporaryFile file(QDir::tempPath() + QStringLiteral("/testUnsuccessfulTryExecXXXXXX.desktop")); + QVERIFY(file.open()); + const QString fileName = file.fileName(); + QTextStream ts(&file); + ts << "[Desktop Entry]\n" + "TryExec=/does/not/exist\n" + "\n"; + file.close(); + QVERIFY(QFile::exists(fileName)); + KDesktopFile df(fileName); + QCOMPARE(df.tryExec(), false); +} + +void KDesktopFileTest::testActionGroup() +{ + QTemporaryFile file(QDir::tempPath() + QStringLiteral("/testActionGroupXXXXXX.desktop")); + QVERIFY(file.open()); + const QString fileName = file.fileName(); + QTextStream ts(&file); + ts << "[Desktop Entry]\n" + // make sure escaping of ';' using "\;" works + "Actions=encrypt;semi\\;colon;decrypt;\n" + "[Desktop Action encrypt]\n" + "Name=Encrypt file\n" + "[Desktop Action decrypt]\n" + "Name=Decrypt file\n" + // no escaping needed in group header + "[Desktop Action semi;colon]\n" + "Name=With semicolon\n" + "\n"; + file.close(); + QVERIFY(QFile::exists(fileName)); + KDesktopFile df(fileName); + QCOMPARE(df.readType(), QString()); + QCOMPARE(df.fileName(), QFileInfo(fileName).canonicalFilePath()); + QCOMPARE(df.readActions(), (QStringList{QStringLiteral("encrypt"), QStringLiteral("semi;colon"), QStringLiteral("decrypt")})); + QCOMPARE(df.hasActionGroup(QStringLiteral("encrypt")), true); + QCOMPARE(df.hasActionGroup(QStringLiteral("semi;colon")), true); + QCOMPARE(df.hasActionGroup(QStringLiteral("decrypt")), true); + QCOMPARE(df.hasActionGroup(QStringLiteral("doesnotexist")), false); + + const auto actions = df.actions(); + QCOMPARE(actions.size(), 3); + QVERIFY(std::all_of(actions.begin(), actions.end(), [&fileName](const KDesktopFileAction &action) { + return action.desktopFilePath() == fileName; + })); + QCOMPARE(actions.at(0).actionsKey(), QStringLiteral("encrypt")); + QCOMPARE(actions.at(0).name(), QStringLiteral("Encrypt file")); + QCOMPARE(actions.at(1).actionsKey(), QStringLiteral("semi;colon")); + QCOMPARE(actions.at(1).name(), QStringLiteral("With semicolon")); + QCOMPARE(actions.at(2).name(), QStringLiteral("Decrypt file")); + QCOMPARE(actions.at(2).actionsKey(), QStringLiteral("decrypt")); + QCOMPARE(actions.at(2).name(), QStringLiteral("Decrypt file")); +} + +void KDesktopFileTest::testIsAuthorizedDesktopFile() +{ + QTemporaryFile file(QDir::tempPath() + QStringLiteral("/testAuthXXXXXX.desktop")); + QVERIFY(file.open()); + const QString fileName = file.fileName(); + QTextStream ts(&file); + ts << "[Desktop Entry]\n" + "Type=Application\n" + "Name=My Application\n" + "Exec=kfoo\n" + "\n"; + file.close(); + QVERIFY(QFile::exists(fileName)); + +#if defined(Q_OS_UNIX) + // Try to fix test failing in docker running as root + const QFileInfo entryInfo(fileName); + if (entryInfo.ownerId() == 0) { + // try to find a valid user/group combination + for (int i = 1; i < 100; ++i) { + if (chown(fileName.toLocal8Bit().constData(), i, i) == 0) { + break; + } + } + const QFileInfo entryInfo1(fileName); + if (entryInfo1.ownerId() == 0) { + QEXPECT_FAIL("", "Running test as root and could not find a non root user to change the ownership of the file too", Continue); + } + } +#endif + + QVERIFY(!KDesktopFile::isAuthorizedDesktopFile(fileName)); + + const QString autostartFile = QStandardPaths::locate(QStandardPaths::GenericConfigLocation, QStringLiteral("autostart/plasma-desktop.desktop")); + if (!autostartFile.isEmpty()) { + QVERIFY(KDesktopFile::isAuthorizedDesktopFile(autostartFile)); + } else { + qWarning("Skipping test for plasma-desktop.desktop, not found. kde-workspace not installed?"); + } +} + +void KDesktopFileTest::testTryExecWithAuthorizeAction() +{ + { + QTemporaryFile file(QDir::tempPath() + QStringLiteral("/testAuthActionXXXXXX.desktop")); + QVERIFY(file.open()); + const QString fileName = file.fileName(); + QTextStream ts(&file); + ts << "[Desktop Entry]\n" + "Type=Application\n" + "Name=My Application\n" + "Exec=kfoo\n" + "TryExec="; +#ifdef Q_OS_WIN + ts << "cmd\n"; +#else + ts << "bash\n"; +#endif + ts << "X-KDE-AuthorizeAction=someAction" + "\n"; + file.close(); + + KDesktopFile desktopFile(fileName); + QVERIFY(desktopFile.tryExec()); + } + { + QTemporaryFile file(QDir::tempPath() + QStringLiteral("/testAuthActionXXXXXX.desktop")); + QVERIFY(file.open()); + const QString fileName = file.fileName(); + QTextStream ts(&file); + ts << "[Desktop Entry]\n" + "Type=Application\n" + "Name=My Application\n" + "Exec=kfoo\n" + "TryExec=bash\n" + "X-KDE-AuthorizeAction=someBlockedAction" + "\n"; + file.close(); + + KDesktopFile desktopFile(fileName); + QVERIFY(!desktopFile.tryExec()); + } +} + +void KDesktopFileTest::testLocateLocal_data() +{ + const QString systemConfigLocation = QStandardPaths::standardLocations(QStandardPaths::GenericConfigLocation).constLast(); + const QString writableConfigLocation = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation); + const QString systemDataLocation = QStandardPaths::standardLocations(QStandardPaths::GenericDataLocation).constLast(); + const QString writableDataLocation = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation); + + QTest::addColumn("path"); + QTest::addColumn("result"); + + QTest::newRow("configLocation, system-wide") << systemConfigLocation + QLatin1String{"/test.desktop"} + << writableConfigLocation + QLatin1String{"/test.desktop"}; + QTest::newRow("autostart, system-wide") << systemConfigLocation + QLatin1String{"/autostart/test.desktop"} + << writableConfigLocation + QLatin1String{"/autostart/test.desktop"}; + QTest::newRow("dataLocation, system-wide") << systemDataLocation + QLatin1String{"/test.desktop"} << writableDataLocation + QLatin1String{"/test.desktop"}; + QTest::newRow("applications, system-wide") << systemDataLocation + QLatin1String{"/applications/test.desktop"} + << writableDataLocation + QLatin1String{"/applications/test.desktop"}; + QTest::newRow("desktop-directories, system-wide") << systemDataLocation + QLatin1String{"/desktop-directories/test.directory"} + << writableDataLocation + QLatin1String{"/desktop-directories/test.directory"}; + QTest::newRow("configLocation, writable") << writableConfigLocation + QLatin1String{"/test.desktop"} + << writableConfigLocation + QLatin1String{"/test.desktop"}; + QTest::newRow("autostart, writable") << writableConfigLocation + QLatin1String{"/autostart/test.desktop"} + << writableConfigLocation + QLatin1String{"/autostart/test.desktop"}; + QTest::newRow("dataLocation, writable") << writableDataLocation + QLatin1String{"/test.desktop"} << writableDataLocation + QLatin1String{"/test.desktop"}; + QTest::newRow("applications, writable") << writableDataLocation + QLatin1String{"/applications/test.desktop"} + << writableDataLocation + QLatin1String{"/applications/test.desktop"}; + QTest::newRow("desktop-directories, writable") << writableDataLocation + QLatin1String{"/desktop-directories/test.directory"} + << writableDataLocation + QLatin1String{"/desktop-directories/test.directory"}; + QTest::newRow("unknown location") << QStringLiteral("/test.desktop") << writableDataLocation + QLatin1String{"/test.desktop"}; +} + +void KDesktopFileTest::testLocateLocal() +{ + QFETCH(QString, path); + QFETCH(QString, result); + + QCOMPARE(KDesktopFile::locateLocal(path), result); +} + +#include "moc_kdesktopfiletest.cpp" diff --git a/autotests/kdesktopfiletest.h b/autotests/kdesktopfiletest.h new file mode 100644 index 0000000..92f4ae8 --- /dev/null +++ b/autotests/kdesktopfiletest.h @@ -0,0 +1,30 @@ +/* + SPDX-FileCopyrightText: 2006 David Faure + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KDESKTOPFILETEST_H +#define KDESKTOPFILETEST_H + +#include +#include + +class KDesktopFileTest : public QObject +{ + Q_OBJECT +private Q_SLOTS: + void initTestCase(); + void testRead(); + void testReadLocalized_data(); + void testReadLocalized(); + void testUnsuccessfulTryExec(); + void testSuccessfulTryExec(); + void testActionGroup(); + void testIsAuthorizedDesktopFile(); + void testTryExecWithAuthorizeAction(); + void testLocateLocal_data(); + void testLocateLocal(); +}; + +#endif /* KDESKTOPFILETEST_H */ diff --git a/autotests/kentrymaptest.cpp b/autotests/kentrymaptest.cpp new file mode 100644 index 0000000..2b04024 --- /dev/null +++ b/autotests/kentrymaptest.cpp @@ -0,0 +1,211 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 2007 Thomas Braxton + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kentrymaptest.h" + +#include + +// clazy:excludeall=non-pod-global-static + +static const QString group1{QStringLiteral("A Group")}; +static const QByteArray key1{"A Key"}; +static const QByteArray key2{"Another Key"}; +static const QByteArray value1{"A value"}; +static const QByteArray value2{"A different value"}; + +QTEST_MAIN(KEntryMapTest) + +template +void KEntryMapTest::testKeyOrder() +{ + const KeyTypeA groupMarkerA(group1, {}); + const KeyTypeA entryA(group1, key1); + const KeyTypeA localizedA(group1, key1, true, false); + const KeyTypeA localizedDefaultA(group1, key1, true, true); + + const KeyTypeB entryB(group1, key1); + const KeyTypeB localizedB(group1, key1, true, false); + const KeyTypeB localizedDefaultB(group1, key1, true, true); + const KeyTypeB defaultEntryB(group1, key1, false, true); + + // group marker should come before all entries + QVERIFY(groupMarkerA < entryB); + QVERIFY(groupMarkerA < defaultEntryB); + QVERIFY(groupMarkerA < localizedB); + QVERIFY(groupMarkerA < localizedDefaultB); + + // localized should come before entry + QVERIFY(localizedA < entryB); + + // localized-default should come after localized entry + QVERIFY(localizedA < localizedDefaultB); + + // localized-default should come before non-localized entry + QVERIFY(localizedDefaultA < entryB); + + // default should come after entry + QVERIFY(entryA < defaultEntryB); +} + +void KEntryMapTest::testKeyAndKeyOrder() +{ + testKeyOrder(); +} + +void KEntryMapTest::testKeyAndKeyViewOrder() +{ + testKeyOrder(); +} + +void KEntryMapTest::testKeyViewAndKeyOrder() +{ + testKeyOrder(); +} + +void KEntryMapTest::testSimple() +{ + KEntryMap map; + + map.setEntry(group1, key1, value1, EntryOptions()); + QCOMPARE(map.size(), 2); // the group marker & 1 key + map.setEntry(group1, key2, value2, EntryOptions()); + QCOMPARE(map.size(), 3); // the group marker & 2 keys + + QVERIFY(map.constFindEntry(group1) != map.cend()); + QCOMPARE(map.constFindEntry(group1.toLower()), map.cend()); + + QVERIFY(map.constFindEntry(group1, key1) != map.cend()); + QCOMPARE(map.constFindEntry(group1, key1.toLower()), map.cend()); + QVERIFY(map.constFindEntry(group1, key2) != map.cend()); + QCOMPARE(map.constFindEntry(group1, key2.toUpper()), map.cend()); + + QByteArray found = map.constFindEntry(group1, key1)->second.mValue; + QCOMPARE(found, value1); + QVERIFY(found != value2); + + found = map.constFindEntry(group1, key2)->second.mValue; + QVERIFY(found != value1); + QCOMPARE(found, value2); +} + +void KEntryMapTest::testDirty() +{ + KEntryMap map; + bool ret = map.setEntry(group1, key1, value1, EntryDefault); + QCOMPARE(ret, true); + ret = map.setEntry(group1, key1, value1, EntryDefault); + QCOMPARE(ret, false); + ret = map.setEntry(group1, key2, value2, EntryOptions()); + QCOMPARE(ret, true); + ret = map.setEntry(group1, key2, value2, EntryOptions()); + QCOMPARE(ret, false); +} + +void KEntryMapTest::testDefault() +{ + KEntryMap map; + + map.setEntry(group1, key1, value1, EntryDefault); + QCOMPARE(map.size(), 3); // group marker, default, entry + map.setEntry(group1, key2, value2, EntryOptions()); + QCOMPARE(map.size(), 4); // group marker, default1, entry1, entry2 + + const auto defaultEntry(map.constFindEntry(group1, key1, SearchDefaults)); + const auto entry1(map.constFindEntry(group1, key1)); + const auto entry2(map.constFindEntry(group1, key2)); + + // default set for entry1 + QVERIFY(defaultEntry != map.cend()); + QCOMPARE(defaultEntry->second.mValue, entry1->second.mValue); + + // no default set for entry2 + QCOMPARE(map.constFindEntry(group1, key2, SearchDefaults), map.cend()); + + // change from default + map.setEntry(group1, key1, value2, EntryOptions()); + QVERIFY(defaultEntry->second.mValue != entry1->second.mValue); + QVERIFY(entry1 != entry2); + QCOMPARE(entry1->second.mValue, entry2->second.mValue); + + // revert entry1 + map.revertEntry(group1, key1, EntryOptions()); + QCOMPARE(defaultEntry->second.mValue, entry1->second.mValue); + + // revert entry2, no default --> should be marked as deleted + map.revertEntry(group1, key2, EntryOptions()); + QCOMPARE(entry2->second.mValue, QByteArray()); + QVERIFY(entry2->second.bDirty); + QVERIFY(entry2->second.bReverted); +} + +void KEntryMapTest::testDelete() +{ + KEntryMap map; + + map.setEntry(group1, key1, value1, EntryDefault); + map.setEntry(group1, key2, value2, EntryDefault); + QCOMPARE(map.size(), 5); + + map.setEntry(group1, key2, QByteArray(), EntryDeleted | EntryDirty); + QCOMPARE(map.size(), 5); // entry should still be in map, so it can override merged entries later + QCOMPARE(map.constFindEntry(group1, key2)->second.mValue, QByteArray()); +} + +void KEntryMapTest::testGlobal() +{ + KEntryMap map; + + map.setEntry(group1, key1, value1, EntryGlobal); + QCOMPARE(map.constFindEntry(group1, key1)->second.bGlobal, true); + + // this should create a new key that is not "global" + map.setEntry(group1, key1, value2, EntryOptions()); + QCOMPARE(map.constFindEntry(group1, key1)->second.bGlobal, false); +} + +void KEntryMapTest::testImmutable() +{ + KEntryMap map; + + map.setEntry(group1, key1, value1, EntryImmutable); + QCOMPARE(map.constFindEntry(group1, key1)->second.bImmutable, true); // verify the immutable bit was set + + map.setEntry(group1, key1, value2, EntryOptions()); + QCOMPARE(map.constFindEntry(group1, key1)->second.mValue, value1); // verify the value didn't change + + map.clear(); + + map.setEntry(group1, QByteArray(), QByteArray(), EntryImmutable); + QCOMPARE(map.constFindEntry(group1)->second.bImmutable, true); // verify the group is immutable + + map.setEntry(group1, key1, value1, EntryOptions()); // should be ignored since the group is immutable + QCOMPARE(map.constFindEntry(group1, key1), map.cend()); +} + +void KEntryMapTest::testLocale() +{ + const QByteArray translatedDefault("hola"); + const QByteArray translated("bonjour"); + const QByteArray untranslated("hello"); + KEntryMap map; + + map.setEntry(group1, key1, untranslated, EntryDefault); + QCOMPARE(map.constFindEntry(group1, key1)->second.mValue, untranslated); + QCOMPARE(map.constFindEntry(group1, key1, SearchLocalized)->second.mValue, untranslated); // no localized value yet + + map.setEntry(group1, key1, translated, EntryLocalized); + + QCOMPARE(map.constFindEntry(group1, key1, SearchLocalized)->second.mValue, translated); // has localized value now + QVERIFY(map.constFindEntry(group1, key1, SearchLocalized)->second.mValue != map.constFindEntry(group1, key1)->second.mValue); + QCOMPARE(map.constFindEntry(group1, key1, SearchDefaults | SearchLocalized)->second.mValue, untranslated); // default should still be untranslated + + map.setEntry(group1, key1, translatedDefault, EntryDefault | EntryLocalized); + QCOMPARE(map.constFindEntry(group1, key1, SearchLocalized)->second.mValue, translatedDefault); + map.setEntry(group1, key1, translated, EntryLocalized); // set the translated entry to a different locale + QCOMPARE(map.constFindEntry(group1, key1, SearchLocalized)->second.mValue, translated); +} + +#include "moc_kentrymaptest.cpp" diff --git a/autotests/kentrymaptest.h b/autotests/kentrymaptest.h new file mode 100644 index 0000000..47f7066 --- /dev/null +++ b/autotests/kentrymaptest.h @@ -0,0 +1,51 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 2007 Thomas Braxton + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KENTRYMAPTEST_H +#define KENTRYMAPTEST_H + +#include "kconfigdata_p.h" +#include + +class KEntryMapTest : public QObject +{ + Q_OBJECT + +public: + typedef KEntryMap::EntryOptions EntryOptions; + typedef KEntryMap::SearchFlags SearchFlags; + + typedef KEntryMap::SearchFlag SearchFlag; + static const SearchFlag SearchLocalized = KEntryMap::SearchLocalized; + static const SearchFlag SearchDefaults = KEntryMap::SearchDefaults; + + typedef KEntryMap::EntryOption EntryOption; + static const EntryOption EntryDirty = KEntryMap::EntryDirty; + static const EntryOption EntryGlobal = KEntryMap::EntryGlobal; + static const EntryOption EntryImmutable = KEntryMap::EntryImmutable; + static const EntryOption EntryDeleted = KEntryMap::EntryDeleted; + static const EntryOption EntryExpansion = KEntryMap::EntryExpansion; + static const EntryOption EntryDefault = KEntryMap::EntryDefault; + static const EntryOption EntryLocalized = KEntryMap::EntryLocalized; + +private: + template + void testKeyOrder(); + +private Q_SLOTS: + void testKeyAndKeyOrder(); + void testKeyAndKeyViewOrder(); + void testKeyViewAndKeyOrder(); + void testSimple(); + void testDirty(); + void testDefault(); + void testDelete(); + void testGlobal(); + void testImmutable(); + void testLocale(); +}; + +#endif // KENTRYMAPTEST_H diff --git a/autotests/ksharedconfig_in_global_object.cpp b/autotests/ksharedconfig_in_global_object.cpp new file mode 100644 index 0000000..e23bea0 --- /dev/null +++ b/autotests/ksharedconfig_in_global_object.cpp @@ -0,0 +1,50 @@ +/* This file is part of the KDE project + SPDX-FileCopyrightText: 2007 Matthias Kretz + + SPDX-License-Identifier: LGPL-2.0-only + +*/ + +#include +#include +#include +#include +#include +#include + +class Tester +{ +public: + void initConfig(); + ~Tester(); +}; + +void Tester::initConfig() +{ + fprintf(stderr, "app Tester\n"); + KConfigGroup group(KSharedConfig::openConfig(), QStringLiteral("test")); + group.writeEntry("test", 0); +} + +Tester::~Tester() +{ + fprintf(stderr, "app ~Tester\n"); + KConfigGroup group(KSharedConfig::openConfig(), QStringLiteral("test")); + group.writeEntry("test", 1); +} + +Q_GLOBAL_STATIC(Tester, globalTestObject) + +int main(int argc, char **argv) +{ + qputenv("QT_FATAL_WARNINGS", "1"); + QCoreApplication app(argc, argv); + + KSharedConfig::Ptr config = KSharedConfig::openConfig(); + + Tester *t = globalTestObject(); + t->initConfig(); + + QTimer::singleShot(0, qApp, SLOT(quit())); + return app.exec(); +} diff --git a/autotests/ksharedconfigtest.cpp b/autotests/ksharedconfigtest.cpp new file mode 100644 index 0000000..5d7dec7 --- /dev/null +++ b/autotests/ksharedconfigtest.cpp @@ -0,0 +1,159 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2012 David Faure + SPDX-FileCopyrightText: 2024 Harald Sitter + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include +#include +#include + +using namespace Qt::StringLiterals; + +class KSharedConfigTest : public QObject +{ + Q_OBJECT +private Q_SLOTS: + void initTestCase(); + void testUnicity(); + void testReadWrite(); + void testReadWriteSync(); + void testQrcFile(); + +#if !defined(Q_OS_WINDOWS) && !defined(Q_OS_ANDROID) && !defined(Q_OS_OSX) // m_stateDirPath is only applicable on XDG systems + void testState() + { + auto config = KSharedConfig::openStateConfig(); + config->group(u"Test"_s).writeEntry("Test", true); + config->sync(); + QVERIFY(QFile::exists(m_stateDirPath + "/"_L1 + QCoreApplication::applicationName() + "staterc"_L1)); + } + + void testStateName() + { + auto config = KSharedConfig::openStateConfig(u"foobar"_s); + config->group(u"Test"_s).writeEntry("Test", true); + config->sync(); + QVERIFY(QFile::exists(m_stateDirPath + "/foobar"_L1)); + } + + void testStateAbsolute() + { + QDir().mkpath(m_stateDirPath); + const QString path = m_stateDirPath + "/randomsubdir/hellostate"_L1; + auto config = KSharedConfig::openStateConfig(path); + config->group(u"Test"_s).writeEntry("Test", true); + config->sync(); + QVERIFY(QFile::exists(path)); + } + + void testStateMigration() + { + QDir().mkpath(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation)); + // Migrate from old file to new file if new file doesn't exist yet + const QString oldPath = QStandardPaths::writableLocation(QStandardPaths::AppDataLocation) + "/"_L1 + QCoreApplication::applicationName() + "staterc"_L1; + QFile(oldPath).open(QFile::WriteOnly | QFile::Truncate); + QVERIFY(QFile::exists(oldPath)); + const QString newPath = m_stateDirPath + "/"_L1 + QCoreApplication::applicationName() + "staterc"_L1; + if (QFile::exists(newPath)) { + QFile::remove(newPath); // make sure new file doesn't exist so we can write to it + } + + auto config = KSharedConfig::openStateConfig(); + config->group(u"Test"_s).writeEntry("Test", true); + config->sync(); + QVERIFY(!QFile::exists(oldPath)); + QVERIFY(QFile::exists(newPath)); + } + + void testStateMigrationClash() + { + QDir().mkpath(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation)); + // Both old and new staterc exist -> keep both + const QString oldPath = QStandardPaths::writableLocation(QStandardPaths::AppDataLocation) + "/"_L1 + QCoreApplication::applicationName() + "staterc"_L1; + QFile(oldPath).open(QFile::WriteOnly | QFile::Truncate); + QVERIFY(QFile::exists(oldPath)); + QDir().mkpath(m_stateDirPath); + const QString newPath = m_stateDirPath + "/"_L1 + QCoreApplication::applicationName() + "staterc"_L1; + QFile(oldPath).open(QFile::WriteOnly | QFile::Truncate); + QVERIFY(QFile::exists(oldPath)); + + auto config = KSharedConfig::openStateConfig(); + config->group(u"Test"_s).writeEntry("Test", true); + config->sync(); + QVERIFY(QFile::exists(oldPath)); + QVERIFY(QFile::exists(newPath)); + } +#endif + +private: + QString m_path; + QString m_stateDirPath; +}; + +void KSharedConfigTest::initTestCase() +{ + constexpr auto xdgStateHomeVar = "XDG_STATE_HOME"; + const QString xdgStateHome = QDir::homePath() + u"/.qttest/state"_s; + qputenv(xdgStateHomeVar, xdgStateHome.toUtf8()); + QStandardPaths::setTestModeEnabled(true); + + m_path = + QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation) + QLatin1Char('/') + QCoreApplication::applicationName() + QStringLiteral("rc"); + QFile::remove(m_path); + + m_stateDirPath = xdgStateHome; + QFile::remove(m_stateDirPath); +} + +void KSharedConfigTest::testUnicity() +{ + KSharedConfig::Ptr cfg1 = KSharedConfig::openConfig(); + KSharedConfig::Ptr cfg2 = KSharedConfig::openConfig(); + QCOMPARE(cfg1.data(), cfg2.data()); +} + +void KSharedConfigTest::testReadWrite() +{ + const int value = 1; + { + KConfigGroup cg(KSharedConfig::openConfig(), QStringLiteral("KSharedConfigTest")); + cg.writeEntry("NumKey", value); + } + { + KConfigGroup cg(KSharedConfig::openConfig(), QStringLiteral("KSharedConfigTest")); + QCOMPARE(cg.readEntry("NumKey", 0), 1); + } +} + +void KSharedConfigTest::testReadWriteSync() +{ + const int value = 1; + { + KConfigGroup cg(KSharedConfig::openConfig(), QStringLiteral("KSharedConfigTest")); + cg.writeEntry("NumKey", value); + } + QVERIFY(!QFile::exists(m_path)); + QVERIFY(KSharedConfig::openConfig()->sync()); + QVERIFY(QFile::exists(m_path)); + { + KConfigGroup cg(KSharedConfig::openConfig(), QStringLiteral("KSharedConfigTest")); + QCOMPARE(cg.readEntry("NumKey", 0), 1); + } +} + +void KSharedConfigTest::testQrcFile() +{ + QVERIFY(QFile::exists(QStringLiteral(":/testdata/test.ini"))); + KSharedConfig::Ptr sharedConfig = KSharedConfig::openConfig(QStringLiteral(":/testdata/test.ini"), KConfig::NoGlobals); + QVERIFY(sharedConfig); + + KConfigGroup cfg(sharedConfig, QStringLiteral("MainSection")); + QCOMPARE(cfg.readEntry(QStringLiteral("TestEntry"), QStringLiteral("UnexpectedData")), QStringLiteral("ExpectedData")); +} + +QTEST_MAIN(KSharedConfigTest) + +#include "ksharedconfigtest.moc" diff --git a/autotests/kstandardshortcuttest.cpp b/autotests/kstandardshortcuttest.cpp new file mode 100644 index 0000000..d451988 --- /dev/null +++ b/autotests/kstandardshortcuttest.cpp @@ -0,0 +1,64 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 2005 David Faure + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kstandardshortcuttest.h" +#include + +QTEST_MAIN(KStandardShortcutTest) // GUI needed by KAccel + +#include + +#ifndef Q_OS_WIN +void initLocale() +{ + setenv("LC_ALL", "en_US.utf-8", 1); +} + +Q_CONSTRUCTOR_FUNCTION(initLocale) +#endif + +void KStandardShortcutTest::testShortcutDefault() +{ + QCOMPARE(QKeySequence::listToString(KStandardShortcut::hardcodedDefaultShortcut(KStandardShortcut::FullScreen)), QLatin1String("Ctrl+Shift+F")); + QCOMPARE(QKeySequence::listToString(KStandardShortcut::hardcodedDefaultShortcut(KStandardShortcut::BeginningOfLine)), QLatin1String("Home")); + QCOMPARE(QKeySequence::listToString(KStandardShortcut::hardcodedDefaultShortcut(KStandardShortcut::EndOfLine)), QLatin1String("End")); + QCOMPARE(QKeySequence::listToString(KStandardShortcut::hardcodedDefaultShortcut(KStandardShortcut::Home)), QLatin1String("Alt+Home; Home Page")); +} + +void KStandardShortcutTest::testName() +{ + QCOMPARE(KStandardShortcut::name(KStandardShortcut::BeginningOfLine), QLatin1String("BeginningOfLine")); + QCOMPARE(KStandardShortcut::name(KStandardShortcut::EndOfLine), QLatin1String("EndOfLine")); + QCOMPARE(KStandardShortcut::name(KStandardShortcut::Home), QLatin1String("Home")); +} + +void KStandardShortcutTest::testLabel() +{ + // Tests run in English, right? + QCOMPARE(KStandardShortcut::label(KStandardShortcut::FindNext), QLatin1String("Find Next")); + QCOMPARE(KStandardShortcut::label(KStandardShortcut::Home), QLatin1String("Home")); +} + +void KStandardShortcutTest::testShortcut() +{ + QCOMPARE(QKeySequence::listToString(KStandardShortcut::shortcut(KStandardShortcut::ZoomIn)), QKeySequence::listToString(KStandardShortcut::zoomIn())); +} + +void KStandardShortcutTest::testFindStdAccel() +{ + QCOMPARE(KStandardShortcut::find(QKeySequence(Qt::CTRL | Qt::Key_F)), KStandardShortcut::Find); + QCOMPARE(KStandardShortcut::find(QKeySequence(Qt::CTRL | Qt::SHIFT | Qt::ALT | Qt::Key_G)), KStandardShortcut::AccelNone); +} + +void KStandardShortcutTest::testFindByName() +{ + for (int i = KStandardShortcut::AccelNone + 1; i < KStandardShortcut::StandardShortcutCount; ++i) { + const auto id = static_cast(i); + QCOMPARE(id, KStandardShortcut::findByName(KStandardShortcut::name(id))); + } +} + +#include "moc_kstandardshortcuttest.cpp" diff --git a/autotests/kstandardshortcuttest.h b/autotests/kstandardshortcuttest.h new file mode 100644 index 0000000..ae48445 --- /dev/null +++ b/autotests/kstandardshortcuttest.h @@ -0,0 +1,25 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 2005 David Faure + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KSTDACCELTEST_H +#define KSTDACCELTEST_H + +#include + +class KStandardShortcutTest : public QObject +{ + Q_OBJECT +private Q_SLOTS: + // KStandardShortcut tests + void testShortcutDefault(); + void testName(); + void testLabel(); + void testShortcut(); + void testFindStdAccel(); + void testFindByName(); +}; + +#endif diff --git a/autotests/kstandardshortcutwatchertest.cpp b/autotests/kstandardshortcutwatchertest.cpp new file mode 100644 index 0000000..b73ebb0 --- /dev/null +++ b/autotests/kstandardshortcutwatchertest.cpp @@ -0,0 +1,73 @@ +/* + SPDX-FileCopyrightText: 2022 David Redondo + + SPDX-License-Identifier: LGPL-2.0-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL +*/ + +#include "kstandardshortcutwatcher.h" +#include "kconfiggroup.h" +#include "ksharedconfig.h" +#include "kstandardshortcut_p.h" + +#include +#include +#include + +class KStandardShortcutWatcherTest : public QObject +{ + Q_OBJECT +private Q_SLOTS: + void initTestCase(); + void init(); + void testSignal(); + void testDataUpdated(); +}; + +Q_DECLARE_METATYPE(KStandardShortcut::StandardShortcut) + +const QList newShortcut = {Qt::CTRL | Qt::Key_Adiaeresis}; + +void KStandardShortcutWatcherTest::initTestCase() +{ + QStandardPaths::setTestModeEnabled(true); + qRegisterMetaType(); + QVERIFY(KStandardShortcut::hardcodedDefaultShortcut(KStandardShortcut::Open) != newShortcut); +} + +void KStandardShortcutWatcherTest::init() +{ + KConfigGroup group(KSharedConfig::openConfig(), QStringLiteral("Shortcuts")); + group.writeEntry("Open", QKeySequence::listToString(KStandardShortcut::hardcodedDefaultShortcut(KStandardShortcut::Open)), KConfig::Global); + group.sync(); + KStandardShortcut::initialize(KStandardShortcut::Open); +} + +void KStandardShortcutWatcherTest::testSignal() +{ +#ifdef Q_OS_WIN + QSKIP("KConfig is built without DBus on Windows"); +#endif + QSignalSpy signalSpy(KStandardShortcut::shortcutWatcher(), &KStandardShortcut::StandardShortcutWatcher::shortcutChanged); + KStandardShortcut::saveShortcut(KStandardShortcut::Open, newShortcut); + QTRY_COMPARE(signalSpy.count(), 1); + const QList arguments = signalSpy.takeFirst(); + QCOMPARE(arguments[0].toInt(), KStandardShortcut::Open); + QCOMPARE(arguments[1].value>(), newShortcut); +} + +void KStandardShortcutWatcherTest::testDataUpdated() +{ +#ifdef Q_OS_WIN + QSKIP("KConfig is built without DBus on Windows"); +#endif + QSignalSpy signalSpy(KStandardShortcut::shortcutWatcher(), &KStandardShortcut::StandardShortcutWatcher::shortcutChanged); + // Writing manually to forego automatic update in saveShortcut() + KConfigGroup group(KSharedConfig::openConfig(), QStringLiteral("Shortcuts")); + group.writeEntry("Open", QKeySequence::listToString(newShortcut), KConfig::Global | KConfig::Notify); + group.sync(); + QTRY_COMPARE(signalSpy.count(), 1); + QCOMPARE(KStandardShortcut::open(), newShortcut); +} + +QTEST_MAIN(KStandardShortcutWatcherTest) +#include "kstandardshortcutwatchertest.moc" diff --git a/autotests/kwindowstatesavertest.cpp b/autotests/kwindowstatesavertest.cpp new file mode 100644 index 0000000..5c976ba --- /dev/null +++ b/autotests/kwindowstatesavertest.cpp @@ -0,0 +1,90 @@ +/* + SPDX-FileCopyrightText: 2022 Volker Krause + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kwindowstatesaver.h" +#include "kconfiggroup.h" +#include "ksharedconfig.h" + +#include +#include +#include + +#include + +class KWindowStateSaverTest : public QObject +{ + Q_OBJECT +private Q_SLOTS: + void initTestCase(); + void testTopLevelDialog(); + void testSubDialog(); +}; + +void KWindowStateSaverTest::initTestCase() +{ + QStandardPaths::setTestModeEnabled(true); +} + +void KWindowStateSaverTest::testTopLevelDialog() +{ + auto cfg = KSharedConfig::openStateConfig(); + cfg->deleteGroup(QStringLiteral("topLevelDialogTest")); + QSize dlgSize(720, 720); + + { + QProgressDialog dlg; + new KWindowStateSaver(&dlg, QStringLiteral("topLevelDialogTest")); + dlg.show(); + QTest::qWait(10); // give the window time to show up, so we simulate a user-triggered resize + dlg.resize(dlgSize); + QTest::qWait(500); // give the state saver time to trigger + QCOMPARE(dlg.size(), dlgSize); + } + + QVERIFY(cfg->hasGroup(QStringLiteral("topLevelDialogTest"))); + + { + QProgressDialog dlg; + new KWindowStateSaver(&dlg, QStringLiteral("topLevelDialogTest")); + dlg.show(); + QTest::qWait(100); // give the window time to show up properly + QCOMPARE(dlg.size(), dlgSize); + } +} + +void KWindowStateSaverTest::testSubDialog() +{ + QWidget mainWindow; + mainWindow.show(); + QTest::qWait(10); + + auto cfg = KSharedConfig::openStateConfig(); + cfg->deleteGroup(QStringLiteral("subDialogTest")); + QSize dlgSize(700, 500); + + { + auto dlg = new QProgressDialog(&mainWindow); + new KWindowStateSaver(dlg, QStringLiteral("subDialogTest")); + dlg->show(); + QTest::qWait(10); // give the window time to show up, so we simulate a user-triggered resize + dlg->resize(dlgSize); + QTest::qWait(500); // give the state saver time to trigger + QCOMPARE(dlg->size(), dlgSize); + delete dlg; + } + + QVERIFY(cfg->hasGroup(QStringLiteral("subDialogTest"))); + + { + auto dlg = new QProgressDialog(&mainWindow); + new KWindowStateSaver(dlg, QStringLiteral("subDialogTest")); + dlg->show(); + QTest::qWait(100); // give the window time to show up properly + QCOMPARE(dlg->size(), dlgSize); + } +} + +QTEST_MAIN(KWindowStateSaverTest) +#include "kwindowstatesavertest.moc" diff --git a/autotests/sharedconfigresources.qrc b/autotests/sharedconfigresources.qrc new file mode 100644 index 0000000..c039b98 --- /dev/null +++ b/autotests/sharedconfigresources.qrc @@ -0,0 +1,6 @@ + + + test.ini + + + diff --git a/autotests/test.ini b/autotests/test.ini new file mode 100644 index 0000000..48b5853 --- /dev/null +++ b/autotests/test.ini @@ -0,0 +1,3 @@ +[MainSection] +TestEntry=ExpectedData + diff --git a/autotests/test_kconf_update.cpp b/autotests/test_kconf_update.cpp new file mode 100644 index 0000000..5843427 --- /dev/null +++ b/autotests/test_kconf_update.cpp @@ -0,0 +1,146 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 2010 Canonical Ltd + SPDX-FileContributor: Aurélien Gâteau + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ +#include "test_kconf_update.h" + +#include + +// Qt +#include +#include +#include +#include +#include +#include +#include +#include + +QTEST_GUILESS_MAIN(TestKConfUpdate) + +void TestKConfUpdate::initTestCase() +{ + QStandardPaths::setTestModeEnabled(true); + + // Ensure it all works with spaces in paths (as happens more commonly on OSX where it's ~/Library/Application Support/) + qputenv("XDG_DATA_HOME", "/tmp/a b"); +} + +static void writeFile(const QString &path, const QString &content) +{ + QFile file(path); + if (!file.open(QIODevice::WriteOnly)) { + qFatal("Could not write to '%s'", qPrintable(path)); + } + file.write(content.toUtf8()); +} + +static QString readFile(const QString &path) +{ + QFile file(path); + if (!file.open(QIODevice::ReadOnly)) { + qFatal("Could not read '%s'", qPrintable(path)); + } + QString ret = QString::fromUtf8(file.readAll()); +#ifdef Q_OS_WIN + // KConfig always writes files with the native line ending, the test comparison uses \n + ret.replace(QLatin1String{"\r\n"}, QLatin1String{"\n"}); +#endif + return ret; +} + +static std::unique_ptr writeUpdFile(const QString &content) +{ + std::unique_ptr file{new QTemporaryFile(QDir::tempPath() + QLatin1String("/test_kconf_update_XXXXXX.upd"))}; + bool ok = file->open(); + Q_UNUSED(ok) // silence warnings + Q_ASSERT(ok); + file->write(content.toUtf8()); + file->flush(); + return file; +} + +static void runKConfUpdate(const QString &updPath, const QString &expectedKConfOutputString) +{ + const QString kconfUpdateExecutable = QFINDTESTDATA("kconf_update"); + QVERIFY(QFile::exists(kconfUpdateExecutable)); + QProcess p; + p.start(kconfUpdateExecutable, QStringList{QStringLiteral("--testmode"), QStringLiteral("--debug"), updPath}); + QVERIFY(p.waitForFinished()); + QCOMPARE(p.exitCode(), 0); + if (!expectedKConfOutputString.isEmpty()) { + const QString out = QString::fromLocal8Bit(p.readAllStandardError()); + QVERIFY2(out.contains(expectedKConfOutputString), + qPrintable(QLatin1String("The string \"%1\" was not contained in putput \"%2\"").arg(expectedKConfOutputString, out))); + } +} + +void TestKConfUpdate::testScript_data() +{ + QTest::addColumn("updContent"); + QTest::addColumn("updScript"); + QTest::addColumn("oldConfContent"); + QTest::addColumn("expectedNewConfContent"); + QTest::addColumn("expectedKConfOutputString"); + +#ifdef Q_OS_FREEBSD + // https://stackoverflow.com/a/69955786 + const QString sedCommand = QStringLiteral("sed -i '' "); +#else + const QString sedCommand = QStringLiteral("sed -i "); +#endif + const QString updVersionIdPrefix = QLatin1String("Version=6\nId=%1\n").arg(QLatin1String{QTest::currentDataTag()}); + const QString confPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation) + QLatin1String{"/testrc"}; + const QString scriptContent = sedCommand + QLatin1String("'s/firstVal=abc/firstVal=xyz/' %1").arg(confPath); + + QTest::newRow("should reject script due to version missmatch") + << QStringLiteral("Version=5\nId=12345") << scriptContent << QString() << QString() << QStringLiteral("defined Version=5 but Version=6 was expected"); + + const QString updContent = updVersionIdPrefix + QLatin1String("Script=test.sh,sh\n"); + const QString configIn = QStringLiteral("[grp]\nfirstVal=abc\nsecondVal=xyz\n"); + const QString configOut = QStringLiteral("[grp]\nfirstVal=xyz\nsecondVal=xyz\n"); + + QTest::newRow("should run command and modify file") << updContent << scriptContent << configIn << configOut << QString(); + + const QString argScriptContent = sedCommand + QLatin1String("\"s/secondVal=$1/secondVal=abc/\" %1").arg(confPath); + QTest::newRow("should run command with argument and modify file") << QStringLiteral("ScriptArguments=xyz\n") + updContent << argScriptContent << configIn + << QStringLiteral("[grp]\nfirstVal=abc\nsecondVal=abc\n") << QString(); + + QTest::newRow("should run command with arguments and modify file") + << QStringLiteral("ScriptArguments=xyz abc\n") + updContent << sedCommand + QLatin1String("\"s/secondVal=$1/secondVal=$2/\" %1").arg(confPath) + << configIn << QStringLiteral("[grp]\nfirstVal=abc\nsecondVal=abc\n") << QString(); +} + +void TestKConfUpdate::testScript() +{ + if (QStandardPaths::findExecutable(QStringLiteral("sh")).isEmpty()) { + QSKIP("Could not find sh executable, cannot run test"); + return; + } + + QFETCH(QString, updContent); + QFETCH(QString, updScript); + QFETCH(QString, oldConfContent); + QFETCH(QString, expectedNewConfContent); + QFETCH(QString, expectedKConfOutputString); + + std::unique_ptr updFile(writeUpdFile(updContent)); + + const QString scriptDir = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation) + QLatin1String{"/kconf_update"}; + QVERIFY(QDir().mkpath(scriptDir)); + const QString scriptPath = scriptDir + QLatin1String{"/test.sh"}; + writeFile(scriptPath, updScript); + QCOMPARE(readFile(scriptPath), updScript); + + const QString confPath = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation) + QLatin1String{"/testrc"}; + writeFile(confPath, oldConfContent); + QCOMPARE(readFile(confPath), oldConfContent); + + runKConfUpdate(updFile->fileName(), expectedKConfOutputString); + + QCOMPARE(readFile(confPath), expectedNewConfContent); +} + +#include "moc_test_kconf_update.cpp" diff --git a/autotests/test_kconf_update.h b/autotests/test_kconf_update.h new file mode 100644 index 0000000..efd9e57 --- /dev/null +++ b/autotests/test_kconf_update.h @@ -0,0 +1,21 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 2010 Canonical Ltd + SPDX-FileContributor: Aurélien Gâteau + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ +#ifndef TEST_KCONF_UPDATE_H +#define TEST_KCONF_UPDATE_H + +#include + +class TestKConfUpdate : public QObject +{ + Q_OBJECT +private Q_SLOTS: + void initTestCase(); + void testScript_data(); + void testScript(); +}; + +#endif /* TEST_KCONF_UPDATE_H */ diff --git a/docs/DESIGN.kconfig b/docs/DESIGN.kconfig new file mode 100644 index 0000000..260bec5 --- /dev/null +++ b/docs/DESIGN.kconfig @@ -0,0 +1,224 @@ +kconfigdata_p.h contains definitions of the data formats used by kconfig. + +Configuration entries are stored as "KEntry". They are indexed with "KEntryKey". +The primary store is a "KEntryMap" which is defined as a std::map from "KEntryKey" +to "KEntry" + +KEntry's are stored in order in the KEntryMap. The most significant sort +criteria is mGroup. This means that all entries who belong in the same group, +are grouped in the std::map as well. + +The start of a group is indicated with a KEntryKey with an empty mKey and a +dummy KEntry. This allows us to search for the start of the group and then to +iterate until we end up in another group. That way we will find all entries +of a certain group. + +Entries that are localised with the _current_ locale are stored with bLocal +set to true. Entries that are localised with another locale are either not +stored at all (default), or with the localization as part of the key (when +reading a file in order to merge it). +[WABA: Does it make sense to keep both localized and non-localised around? +Can't we just let the localised version override the non-localised version?] + +Currently the localization bit is the least significant sort criteria, that +means that the localised version always follows the non-localised version +immediately. + + +Entries that are being read from a location other than the location to +which is written back are marked as "default" and will be added both as +normal entry as well as an entry with the key marked as default. + +When entries are written to disk, it is checked whether the entry to write +is equal to the default, if so the entry will not be written. The default +entry always follows directly after the normal entry, due to the sorting. +(After that the localised version follows) + +When entries are written to disk, it is checked whether the entry to write +is equal to the default, if so the entry will not be written. + + +Open question: +Should unmodified entries that are written back be compared with the default +too? This seems to be mostly a transition issue. + + +Extra functions: + +bool isEntryImmutable(key); // Can entry be modified? +bool hasDefault(key); // Is there a system wide default set for the entry? +void revertToDefault(key); // Restore to default +void deleteEntry(key); // Remove entry + +Note that there is a subtle difference between revertToDefault() and deleteEntry(). +revertToDefault() will change the entry to the default value set by the system +administrator (Via e.g. $KDEDIR/share/config) or, if no such default was set, +non-existent. +deleteEntry() will make the entry non-existent. + +Entries are marked "immutable" if the key is followed by [$i]. This means +that a user can not override these entries. + +Entries can be marked as deleted if they are followed by [$d]. This +is needed if the system administrator has specified a default value but the +entry was deleted (made 'non-existant'). In that case we can't just leave +the entry out since that would mean we get the default from the system +administrator back the next time we read the file. + + +When an entry is read with readEntry(key, defaultValue), non-existing +entries will return "defaultValue" while hasKey(key) will return "false" +for such entries. + +Currently all entries are stored in memory. When KConfig is "sync()'ed" +it reads the file that it is about to overwrite (for the second time), it +then merges in the entries it has in memory and writes the result back to +the file. It does NOT update its map of entries in memory with the entries +(re)read from disk. It only updates the entries in memory when +"reparseConfiguration()" is called. + + +Open Question: The standard writeEntry() function returns the original value, +is this needed? Nobody seems to use it. + +Open Question: The bPersistent flag doesn't seem to be used... could it be removed? + +Open Question: Is the bNLS flag needed? Localised entries seem to be mostly +useful for default files, are they ever created by the user itself? + +Open Question: Would it be worthwhile to lock a user option that is equal to the +default so that it doesn't change when the default changes? + + +KDE3.0 Changes +============== + +*) writeEntry now returns void instead of QString. +*) deleteEntry functions added + + +------------------------------------------------------------------------------ + +KConfig XT +========== + +My buzzword picker offered KConfig XT ("eXtended Technology") and KConfig NG +("Next Generation"). Since the planned changes are meant to be evolutionary +rather than revolutionary, KConfig NG was dropped. + +Goals +===== + +* Have the default value for config entries defined in 1 place. Currently it is +not uncommon to have them defined in three places: + 1) In the application that reads the setting in order to use it + 2) In the settings dialog when reading the setting + 3) In the settings dialog when selecting "Use defaults". + +* Provide type-information about config entries to facilitate "KConfEdit" like +tools. Ideally type-information also includes range-information; this is even +mandatory if enums become an explicit type. + +* Facilitate the documentation of config entries. + + +Instead of relying on the defaults that are hard-coded in the application, +rely on default configuration files being installed in $KDEDIR. The technical +changes required for this are very minimal, it is mostly a change in policy. + +Type information can be provide by preceding every entry with a formalized +comment. + +Work to be done: +* KConfig needs to be extended to provide access to the default values provided +by the default config files. KConfig already stores this information internally. +(DONE) +* A formal comment structure needs to be designed that can convey type-information. +Preferably in such a way that it is easily parsable by both machine and user. +* KConfig needs to be extended, or another class created, that is able to parse +the formalized comments. +* A tool needs to be developed that can assist developers with the generation +and verification of default configuration files including type-information. + +Drawbacks: +* We rely on default configuration files being properly installed. +* The user can break applications by making improper modifications to these +files. +* It is not possible to store defaults settings in a config file that are +of a dynamic nature. Examples are settings derived from other settings, +e.g. a color setting could be derived from the current color theme, or +e.g. the default high score user name which is determined by the user +currently logged in. + + +Some random ideas: +* The format of the entries would be something like this: + +[Mail Settings] +#!Type=string +#!Description=SMTP server to use for sending mail +#!Description[nl]=SMTP server voor het versturen van mail +Host=wantelbos.zogje.fr + +- the type could be subclassed more, e.g. strings can be "email", "hostname", + "url", etc. + +- having translations in these files is very arguable. external po's would be + better. + + + +Class overview + + KConfigBase + | + v + KConfigBackend <-----> KConfig <------> KConfigSkeleton /--< myapp.kcfg + | | | / + v v |*---------------< +KConfigINIBackend KSimpleConfig |kconfig_compiler \ + | \--< myconfig.kcfg-codegen + v + MyConfig <-----KConfigDialogManager----> MyConfigWidget *---< myconfigwidget.ui + uic + +KConfigBase: defines API for generic config class + +KConfig: functional generic config class that supports merging of cascaded + configuration files + +KSimpleConfig: functional generic config class without support for cascading + configuration files. + +KConfigBackend: defines API for config backend, t.i. the actual handling + of the storage method and storage format. + +KConfigINIBackend: the standard (and only one so far) class that implements + the config backend using the file-based .INI format + for configuration files + +KConfigSkeleton: base class for deriving classes that store application + specific options providing type-safety and single-point + defaults. + +MyConfig: An application specific class that offers configuration options + to the applications via variables or accessor functions and that + handles type-safety and defaults. MyConfig is just an example + name, the application developer choses the actual name. + +myapp.kcfg: File describing the configuration options used by a specific + application. myapp.kcfg is just an example name, the application + developer choses the actual name. + +myconfig.kcfg-codegen: Implementation specific code generation instructions + for the MyConfig class. myconfig.kcfg-codegen is + just an example name, the application developer + choses the actual name. + +KConfigDialogManager: Class that links widgets in a dialog up with their + corresponding configuration options in a configuration + object derived from KConfigSkeleton. + +MyConfigWidget: Dialog generated from a .ui description file. Widget names + in the dialog that start with "kcfg_" refer to configuration + options. diff --git a/docs/Doxyfile.local b/docs/Doxyfile.local new file mode 100644 index 0000000..37895c7 --- /dev/null +++ b/docs/Doxyfile.local @@ -0,0 +1,16 @@ +### KApiDox Project-specific Overrides File + +# define so that deprecated API is not skipped +PREDEFINED += \ + "KCONFIGCORE_ENABLE_DEPRECATED_SINCE(x, y)=1" \ + "KCONFIGCORE_BUILD_DEPRECATED_SINCE(x, y)=1" \ + "KCONFIGCORE_DEPRECATED_VERSION(x, y, t)=" \ + "KCONFIGCORE_DEPRECATED_VERSION_BELATED(x, y, xt, yt, t)=" \ + "KCONFIGCORE_ENUMERATOR_DEPRECATED_VERSION(x, y, t)=" \ + "KCONFIGCORE_ENUMERATOR_DEPRECATED_VERSION_BELATED(x, y, xt, yt, t)=" \ + "KCONFIGGUI_ENABLE_DEPRECATED_SINCE(x, y)=1" \ + "KCONFIGGUI_BUILD_DEPRECATED_SINCE(x, y)=1" \ + "KCONFIGGUI_DEPRECATED_VERSION(x, y, t)=" \ + "KCONFIGGUI_DEPRECATED_VERSION_BELATED(x, y, xt, yt, t)=" \ + "KCONFIGGUI_ENUMERATOR_DEPRECATED_VERSION(x, y, t)=" \ + "KCONFIGGUI_ENUMERATOR_DEPRECATED_VERSION_BELATED(x, y, xt, yt, t)=" diff --git a/docs/options.md b/docs/options.md new file mode 100644 index 0000000..b57713d --- /dev/null +++ b/docs/options.md @@ -0,0 +1,96 @@ +KConfig Entry Options {#options} +===================== + +KConfig provides various options that can alter how it interprets configuration +entries on a per-entry, per-group or per-file basis. Note that these are not +supported by other configuration frameworks, and so should not be used in files +that are intended to be used by applications that do not use KConfig (such as +application desktop files). + + +Immutable Entries +----------------- + +KConfig's cascading configuration mechanism usually causes values from earlier, +"global" configuration files to be overridden by later, "local" ones. +Typically, the system administrator might set global defaults, and a user might +override them in their local configuration files. + +However, KConfig provides a way to lock down configuration values, so that the +global settings override the local ones. This allows system administrators to +restrict the values a user can set for an entry, group of entries or an entire +configuration file. + +This is important for Kiosk authorization (see the KAuthorized namespace), +which allows parts of the user interface to be locked down. + +Configuration entries can be marked as immutable with the `$i` option. This can +be done on a per-entry basis: + + [MyGroup] + someKey[$i]=42 + +on a per-group basis (which will prevent any attempts to modify entries in the +group at all in later files): + + [MyGroup][$i] + someKey=42 + +or for an entire file by putting `[$i]` at the start of the file: + + [$i] + [MyGroup] + someKey=42 + [MyOtherGroup] + someOtherKey=11 + +Once this is done, the immutable entries or groups cannot be overridden by later +files of the same name (and, if the file is immutable, later files will be +ignored entirely). + +Note that a similar effect to file immutability can be achieved by using file +system permissions to prevent the user from writing to their local versions of +the configuration file, although (since this is normally a setup error), the +user will be warned that the configuration file is not writable. This warning +can be suppressed by adding the following setting to either the relevant +configuration file or the `kdeglobals` file: + + [General] + warn_unwritable_config=true + +However, using file system permissions like this can potentially be circumvented +by the user if they have write access to the containing directory or can modify +environment variables (and `XDG_CONFIG_HOME` in particular). + + + +Shell Expansion +--------------- + +If an entry is marked with `$e`, environment variables will be expanded. + + Name[$e]=$USER + +When the "Name" entry is read `$USER` will be replaced with the value of the +`$USER` environment variable. + +Note that the application will replace `$USER` with its +expanded value after saving. To prevent this combine the `$e` option +with `$i` (immmutable) option. For example: + + Name[$ei]=$USER + +This will make that the "Name" entry will always return the value of the `$USER` +environment variable. The user will not be able to change this entry. + +The following syntax for environment variables is also supported: + + Name[$ei]=${USER} + +There are three environment variables that have a fallback strategy if the +environment variable is not set. They instead map to a location from QStandardPaths. +They are: + +* `$QT_CACHE_HOME` - QStandardPaths::GenericCacheLocation +* `$QT_CONFIG_HOME` - QStandardPaths::GenericConfigLocation +* `$QT_DATA_HOME` - QStandardPaths::GenericDataLocation diff --git a/metainfo.yaml b/metainfo.yaml new file mode 100644 index 0000000..876209f --- /dev/null +++ b/metainfo.yaml @@ -0,0 +1,20 @@ +description: Configuration system +tier: 1 +type: functional +platforms: + - name: Linux + - name: FreeBSD + - name: Windows + - name: macOS + - name: Android +portingAid: false +deprecated: false +release: true +libraries: + - cmake: "KF6::ConfigCore" + - cmake: "KF6::ConfigGui" +cmakename: KF6Config + +public_lib: true +group: Frameworks +subgroup: Tier 1 diff --git a/poqm/af/kconfig6_qt.po b/poqm/af/kconfig6_qt.po new file mode 100644 index 0000000..c170344 --- /dev/null +++ b/poqm/af/kconfig6_qt.po @@ -0,0 +1,1081 @@ +# UTF-8 test:äëïöü +# Copyright (C) 2001 Free Software Foundation, Inc. +# Juanita Franz , 2005. +# +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig stable\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2005-06-08 01:39+0200\n" +"Last-Translator: Juanita Franz \n" +"Language-Team: AFRIKAANS \n" +"Language: af\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Groep om in te kyk" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Groep om in te kyk" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Groep om in te kyk" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Groep om in te kyk" + +#: gui/kstandardshortcut.cpp:181 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Groep om in te kyk" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Gebruik in plaas van globale konfigurasie" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Sleutel om voor te kyk" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Tipe van veranderlike. Gebruik\"bool\" vir boolean, anders word behandel as " +"'n string" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Die waarde om te skryf. Verpligtend, op 'n tolk gebruik '' vir leeg" + +#~ msgid "KWriteConfig" +#~ msgstr "KSkryfKonfigurasie" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Skryf KKonfigurasie inskrywings - vir gebruik in tolk skripte" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "Juanita Franz" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "juanita.franz@vr-web.de" diff --git a/poqm/ar/kconfig6_qt.po b/poqm/ar/kconfig6_qt.po new file mode 100644 index 0000000..6b6c322 --- /dev/null +++ b/poqm/ar/kconfig6_qt.po @@ -0,0 +1,1074 @@ +# SPDX-FileCopyrightText: 2021, 2022, 2023, 2024 Zayed Al-Saidi +# Safa Alfulaij , 2014, 2017, 2018. +# Zayed Al-Saidi , 2024. +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-06-28 15:38+0300\n" +"PO-Revision-Date: 2024-05-25 17:30+0400\n" +"Last-Translator: Zayed Al-Saidi \n" +"Language-Team: \n" +"Language: ar\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " +"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "رجاءً راسل مدير النظام." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "لا يمكن الكتابة في ملف الضبط ”%1“.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "المبدئي" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&عُد" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "ت&قدّم" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "ال&منزل" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&جديد" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "أنشئ مستندًا جديدًا" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "ا&فتح…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "افتح مستندًا موجودًا" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "افتح ملفاً &حديثًا" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "افتح مستندًا كان مفتوحًا حديثًا" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "ا&حفظ" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "احفظ المستند" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "احفظ &كَ‍…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "احفظ المستند باسم آخر" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "ا&عكس" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "اعكس التغييرات غير المحفوظة المجراة على المستند" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Ø£&غلق" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "أغلق المستند" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "ا&طبع…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "اطبع المستند" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "&عاين الطباعة" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "اعرض معاينة للمستند مطبوعًا" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "أبرِ&د…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "أرسل المستند بالبريد" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Ø£&نهِ" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "أنهِ التطبيق" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "ت&راجع" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "تراجع عن آخر إجراء" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Ø£&عِد" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "أعد آخر إجراء تراجعت عنه" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "ق&صّ" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "قصّ التحديد إلى الحافظة" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "ا&نسخ" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "انسخ التحديد إلى الحافظة" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "أل&صق" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "ألصق محتوى الحافظة" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "ام&سح" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "حدّد ال&كل" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Ø£&زل التحديد" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "ابح&ث…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "ابحث عن ال&تالي" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "ابحث عن ال&سابق" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "ا&ستبدل…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "&كبر للحجم الفعلي" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "اعرض المستند بمقاسه الأصلي" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "لا&ئم إلى الصفحة" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "غيّر التقريب لملاءمة الصفحة في النافذة" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "لائم إلى &عرض الصفحة" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "غيّر التقريب لملاءمة عرض الصفحة في النافذة" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "لائم إلى ارت&فاع الصفحة" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "غيّر التقريب لملاءمة ارتفاع الصفحة في النافذة" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "&قرّب" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "ب&عّد" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "الت&قريب…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "اختر مستوى التقريب" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "أن&عِش" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "أنعش المستند" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "لأ&على" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "انتقل لأعلى" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "الصفحة ال&سابقة" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "انتقل إلى الصفحة السابقة" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "الصفحة ال&تالية" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "انتقل إلى الصفحة التالية" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "ا&نتقل إلى…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "ا&نتقل إلى صفحة…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "ا&نتقل إلى سطر…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "الصفحة الأ&ولى" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "انتقل إلى الصفحة الأولى" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "الصفحة الأ&خيرة" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "انتقل إلى الصفحة الأخيرة" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&عُد" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "عُد وراءً في المستند" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "ت&قدّم" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "تقدّم أمامًا في المستند" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Ø£&ضف علامة" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&حرّر العلامات…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "الإ&ملاء…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "دقّق الإملاء في المستند" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "اعرض شريط ال&قوائم" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "اعرض/أخفِ شريط القوائم" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "اعرض شريط الأ&دوات" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "اعرض/أخفِ شريط الأدوات" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "اعرض شريط ال&حالة" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "اعرض/أخف شريط الحالة" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "وضع ملء ال&شاشة" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "اضبط ا&ختصارات لوحة المفاتيح..." + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "ا&ضبط %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "اضبط أشرطة الأ&دوات…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "اضبط الإ&خطارات…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "ك&تيّب %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "ما &هذا؟" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Ø£&بلغ عن علّة…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "اضبط الل&غة..." + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&عن %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "عن &كِيدِي" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "ا&حذف" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&غيّر الاسم…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "ا&نقل إلى المهملات" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "تبرّ&ع" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "افتح &قائمة" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "افتح" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "جديد" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "أغلق" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "احفظ" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "اطبع" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "أنهِ" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "تراجع" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "أعِد" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "قصّ" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "انسخ" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "ألصق" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "ألصق التحديد" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "حدّد الكل" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "أزل التحديد" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "احذف الكلمة السابقة" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "احذف الكلمة التالية" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "ابحث" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "ابحث عن التالي" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "ابحث عن السابق" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "استبدل" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "المنزل" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "البداية" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "النهاية" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "السابق" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "التالي" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "لأعلى" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "عُد" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "تقدّم" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "أعد التحميل" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "بداية السطر" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "نهاية السطر" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "انتقل إلى سطر" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "الكلمة السابقة" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "الكلمة التالية" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "أضف علامة" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "قرّب" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "بعّد" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "وضع ملء الشاشة" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "اعرض شريط القوائم" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "فعّل اللسان التالي" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "فعّل اللسان السابق" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "مساعدة" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "ما هذا" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "إكمال النص" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "مطابقة الإكمال السابقة" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "مطابقة الإكمال التالية" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "إكمال نص فرعي" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "العنصر السابق في القائمة" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "العنصر التالي في القائمة" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "افتح ملفاً حديثًا" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "احفظ كَ‍" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "اعكس" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "عاين الطباعة" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "أبرِد" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "امسح" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "كبر للحجم الفعلي" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "لائم إلى الصفحة" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "لائم إلى العرض" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "لائم إلى الارتفاع" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "التقريب" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "انتقل إلى" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "انتقل إلى صفحة" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "عُد في المستند" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "تقدّم في المستند" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "حرّر العلامات" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "الإملاء" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "اعرض شريط الأدوات" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "اعرض شريط الحالة" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "ارتباطات المفاتيح" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "اضبط التطبيق" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "اضبط أشرطة الأدوات" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "اضبط الإخطارات" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "أبلغ عن علّة" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "اضبط اللغة…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "عن التطبيق" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "عن كِيدِي" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "احذف" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "غيّر الاسم" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "انقل إلى المهملات" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "تبرّع" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "أظهر/أخف الملفات المخفية" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "أنشئ مجلّدًا" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "افتح في القائمة الرئيسة" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "افتح قائمة السياق" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "أداة «كِيدِي» لتحديث ملفات ضبط المستخدم" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "أبقِ نتائج الخرج من السكربتات" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"بالنسبة لاختبارات الوحدة فقط: لا تكتب الإدخالات المنجزة، بحيث يتم تنفيذ " +"البرامج النصية مرة أخرى مع كل إعادة تشغيل" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "التمس فيما إذا كان ملف الضبط نفسه يحتاج تحديثًا" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "الملف/الملفات التي ستُقرأ منها إرشادات التحديث" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "الدليل الذي سيُولّد فيه الملفات [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "دليل" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "اعرض رخصة البرمجية." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "استخدم بدل الضبط العمومي" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"المجموعة للبحث فيها. استخدم \"\" لمجموعة الجذر، أو استخدمها أكثر من " +"مرة للمجموعات المتداخلة." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "المفتاح الذي سيُبحث عنها" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "القيمة المبدئية" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "نوع المتغيّر" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "اسم المجموعة لا يمكن أن يكون فارغ، استخدم \"\" لمجموعة الجذر" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"نوع المتغيّر. استخدم ”bool“ للقيم المنطقية، وإلا فستتعامل معه البرمجية كسلسلة" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "احذف المفتاح المعين إذا كان ممكن" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "القيمة التي ستُكتب. هذه إلزامية وإلا استُخدمت ”“ باعتبارها (لا شيء)" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "فائدة اليوم" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "لاختبارات الوحدات فحسب: استخدم الأدلّة الاختبارية لألا تعطب ملفات المستخدم " +#~ "الحقيقية" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "خيارات الحفظ" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "بدّل لغة التطبيق" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "التّفضيلات" diff --git a/poqm/ast/kconfig6_qt.po b/poqm/ast/kconfig6_qt.po new file mode 100644 index 0000000..c4ba2bc --- /dev/null +++ b/poqm/ast/kconfig6_qt.po @@ -0,0 +1,1045 @@ +# SPDX-FileCopyrightText: 2023 Enol P. +msgid "" +msgstr "" +"Project-Id-Version: \n" +"PO-Revision-Date: 2023-11-07 21:26+0100\n" +"Last-Translator: Enol P. \n" +"Language-Team: \n" +"Language: ast\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Qt-Contexts: true\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Lokalize 23.08.2\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "El ficheru de configuración «%1» nun ye d'escritura.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Conseyu del día" diff --git a/poqm/az/kconfig6_qt.po b/poqm/az/kconfig6_qt.po new file mode 100644 index 0000000..5a50852 --- /dev/null +++ b/poqm/az/kconfig6_qt.po @@ -0,0 +1,1262 @@ +# Xəyyam , 2020, 2021, 2022, 2023. +msgid "" +msgstr "" +"Project-Id-Version: \n" +"PO-Revision-Date: 2023-02-17 01:22+0400\n" +"Last-Translator: Kheyyam \n" +"Language-Team: Azerbaijani \n" +"Language: az\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Qt-Contexts: true\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Lokalize 22.12.2\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Sistem inzibatçınız ilə əlaqə saxlayın." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "%1 Konfiqurasiya faylı yazılmır.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Susmaya görə" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Geriyə" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "İrəli" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Ev" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Aç" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Sonuncunu Aç" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Saxla" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Fərqli Saxla" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Bərpa Et" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Bağla" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Çap et" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Çapa Önbaxış" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "E-Poçtla Göndər" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Çıx" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Tətbiq haqqında" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Geriyə al" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Kopyala" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Yerləşdir" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Təmizlə" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Hamısını Seç" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Seçimi ləğv et" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Tap" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Sonrakını Tap" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Əvvəlkini Tap" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Əvəzlə" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom to Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Həqiqi ölçüsünə miqyaslayın" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Səhifəyə Sığışdır" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Eninə Sığışdır" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Hündürlüyə Sığışdır" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Böyüt" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Kiçilt" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Böyütmə" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Hamısını Seç" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Yuxarı" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Səhifəyə Keç" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Sətirə Keç" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Səhifəyə Keç" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Sətirə Keç" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Səhifəyə Sığışdır" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Sətirə Keç" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Səhifəyə Keç" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Geriyə" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "İrəli" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Əlfəcin əlavə et" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Əlfəcinə düzəliş et" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Orfoqrafiyanı Yoxla" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Menu Çubuğunu Göstər" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Menu Çubuğunu Göstər" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Alətlər Çubuğunu Göstər" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Alətlər Çubuğunu Göstər" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Status Çubuğunu Göstər" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Status Çubuğunu Göstər" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Tam Ekran" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "Dili Tənzimləmək..." + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Alətlər Çubuğunu Ayarla" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Bildirişləri Ayarla" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Bu nədir" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Xətaları Göndər" + +#: gui/kstandardactions_p.h:135 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Dili Tənzimləmək..." + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "KDE haqqında" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "KDE haqqında" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Sil" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Adını Dəyiş" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Səbət At" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Maddi Dəstək" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Sonuncunu Aç" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Aç" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Yeni" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Bağla" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Saxla" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Çap et" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Çıx" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Geriyə al" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Təkrar et" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Kəs" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopyala" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Yerləşdir" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Seçiləni Yerləşdir" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Hamısını Seç" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Seçimi ləğv et" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Öncəki Sözü Sil" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Sonrakı Sözü Sil" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Tap" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Sonrakını Tap" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Əvvəlkini Tap" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Əvəzlə" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Ev" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Başla" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Son" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Əvvəlki" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Sonrakı" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Yuxarı" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Geriyə" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "İrəli" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Yenidən Aç" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Sətir Başla" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Sətiri Bitir" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Sətirə Keç" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Bir Söz Geri" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Bir Soz İrəli" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Əlfəcin əlavə et" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Böyüt" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Kiçilt" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Tam Ekran" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Menu Çubuğunu Göstər" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Növbəti Çubuğu Aktivləşdir" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Əvvəlki Çubuğu Aktivləşdir" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Kömək" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Bu nədir" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Mətin Tamamlama" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Əvvəlki Tamamlama Variantı" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Sonrakı Tamamlama Variantı" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Sətiraltı Tamamlama" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Siyahıdakı Əvvəlki Element" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Siyahıdakı sonrakı Element" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Sonuncunu Aç" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Fərqli Saxla" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Bərpa Et" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Çapa Önbaxış" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "E-Poçtla Göndər" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Təmizlə" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Həqiqi ölçüsünə miqyaslayın" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Səhifəyə Sığışdır" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Eninə Sığışdır" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Hündürlüyə Sığışdır" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Böyütmə" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Keç" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Səhifəyə Keç" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Geri" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "İrəli" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Əlfəcinə düzəliş et" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Orfoqrafiyanı Yoxla" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Alətlər Çubuğunu Göstər" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Status Çubuğunu Göstər" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Klaviş Kombinasiyaları" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Tətbiqi Ayarla" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Alətlər Çubuğunu Ayarla" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Bildirişləri Ayarla" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Xətaları Göndər" + +#: gui/kstandardshortcut.cpp:373 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Dili Tənzimləmək..." + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Tətbiq haqqında" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "KDE haqqında" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Sil" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Adını Dəyiş" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Səbət At" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Maddi Dəstək" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Gizli faylları gizlət/göstər" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Qovluq yaratmaq" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "İstifadəçi konfiqurasiya fayllarını yeniləmək üçün KDE Vasitələri" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "İşlək seansların çıxarış nəticələrini saxla" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Konfiqurasiya faylının yenilənmə tələb edib etməməsini yoxla" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Yenilənmə təlimatlarını oxumaq üçün fayllar" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Faylları yaratmaq üçün qovluq [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "qovluq" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Tətbiq lisenziyalarını göstər" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Qlobal konfiqurasiya əvəzinə istifadə et" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Daxilində axtarış ediləcək qrup. Kök qrup üçün \"\" istifadə edin " +"və ya iç-içə qruplar üçün təkrar istifadə edin." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Axtarılacaq açar" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Susmaya görə ölçü" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Dəyişkən növ" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "Qrup adı boş ola bilməz, kök qrupu üçün \"\" istifadə edin" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Dəyişkən növ. Məntiqi dəyişkələr üçün \"bool\" istifadə et, əks halda " +"dəyişkən sətir kimi qəbul ediləcək" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Aktiv edildikdə təyin olunmuş açarı silin" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Yazı üçün göstərici. Mütləq göstərilir, üzlükdə böşluq üçün \" istifadə edin" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Günün Məsləhəti" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Yalnız vahid testlər üçün: Test qovluqlarını həqiqi isitifadəçı " +#~ "fayllarında ayrı yerləşdir" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Seçimi Saxla" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Tətbiqin Dilini Dəyiş" diff --git a/poqm/be/kconfig6_qt.po b/poqm/be/kconfig6_qt.po new file mode 100644 index 0000000..df9ead7 --- /dev/null +++ b/poqm/be/kconfig6_qt.po @@ -0,0 +1,1104 @@ +# Darafei Praliaskouski , 2006. +# Darafei Praliaskouski , 2007. +msgid "" +msgstr "" +"Project-Id-Version: fc57ad16a28d02dea100ceb1c60de14e\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-05-25 23:51\n" +"Last-Translator: Darafei Praliaskouski \n" +"Language-Team: Belarusian\n" +"Language: be\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || n%10>=5 && n%10<=9 || n" +"%100>=11 && n%100<=14 ? 2 : 3);\n" +"X-Qt-Contexts: true\n" +"X-Crowdin-Project: fc57ad16a28d02dea100ceb1c60de14e\n" +"X-Crowdin-Project-ID: 136\n" +"X-Crowdin-Language: be\n" +"X-Crowdin-File: /[antikruk.KDE] main/KDE6/be/messages/kconfig/kconfig6_qt." +"po\n" +"X-Crowdin-File-ID: 9944\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Звярніцеся да сістэмнага адміністратара." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Файл канфігурацыі \"%1\" недаступны для запісу.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Прадвызначана" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Назад" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "Д&алей" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Хатняя старонка" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Стварыць" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Стварыць новы дакумент" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Адкрыць…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Адкрыць існы дакумент" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Адкрыць &нядаўні файл" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Адкрыць дакумент, які нядаўна адкрываўся" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Захаваць" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Захаваць дакумент" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Захаваць &як…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Захаваць дакумент пад новай назвай" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "&Вярнуць" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Вярнуць незахаваныя змены, унесеныя ў дакумент" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "За&крыць" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Закрыць дакумент" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Друкаванне…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Друкаваць дакумент" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Папярэдні п&рагляд друку" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Вывесці папярэдні прагляд дакумента для друкавання" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Пошта…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Адправіць дакумент па электроннай пошце" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Выйсці" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Выйсці з праграмы" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Адрабіць" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Адрабіць апошняе дзеянне" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Па&ўтарыць" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Паўтарыць апошняе дзеянне" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "&Выразаць" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Выразаць абранае ў буфер абмену" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Скапіяваць" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Скапіяваць абранае ў буфер абмену" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Уставіць" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Уставіць змесціва з буфера абмену" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "А&чысціць" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Абраць &усё" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "&Адкінуць выбар" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Пошук…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Шукаць &наступнае" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Шукаць &папярэдняе" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Замяніць…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Маштабаваць да &сапраўднага памеру" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Паказаць дакумент у яго сапраўдным памеры" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Па &памеры старонкі" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Маштабаваць па памеры акна" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Па &шырыні старонкі" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Маштабаваць па шырыні акна" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Па &вышыні старонкі" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Маштабаваць па вышыні акна" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "&Павялічыць" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "&Паменшыць" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Маштабаванне…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Абраць узровень павелічэння" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Абнавіць" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Абнавіць дакумент" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Уверх" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Перайсці вышэй" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Папярэдняя старонка" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Перайсці да папярэдняй старонкі" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Наступная старонка" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Перайсці да наступнай старонкі" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Перайсці да…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Перайсці да старонкі…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Перайсці да радка…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Першая старонка" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Перайсці да першай старонкі" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "&Апошняя старонка" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Перайсці да апошняй старонкі" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Назад" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Перайсці назад у дакуменце" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Д&алей" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Перайсці наперад ў дакуменце" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Дадаць закладку" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Рэдагаваць закладкі…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Правапіс…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Праверыць правапіс у дакуменце" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Паказваць &меню" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Паказаць або схаваць панэль меню" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Паказваць &панэль інструментаў" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Паказаць або схаваць панэль інструментаў" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Паказваць панэль ст&ану" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Паказаць або схаваць панэль стану" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "&Поўнаэкранны рэжым" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Наладжванне &спалучэнняў клавіш…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Наладжванне %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Наладжванне панэлі &інструментаў…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Наладжванне &апавяшчэнняў…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "&Даведнік па \"%1\"" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Што &гэта?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Паведаміць пра хібу…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Наладжванне &мовы…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&Пра \"%1\"" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Пра &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Выдаліць" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Змяніць назву…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Перамясціць у сметніцу" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Ахвяраваць" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Адкрыць &меню" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Адкрыць" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Новы" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Закрыць" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Захаваць" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Друкаваць" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Выйсці" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Адрабіць" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Паўтарыць" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Выразаць" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Капіяваць" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Уставіць" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Уставіць абранае" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Абраць усё" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Адкінуць выбар" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Выдаліць папярэдняе слова" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Выдаліць наступнае слова" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Знайсці" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Шукаць наступнае" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Шукаць папярэдняе" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Замяніць" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Хатняя старонка" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "У пачатак" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "У канец" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Папярэдняе" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Далей" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Уверх" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Назад" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Наперад" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Перазагрузіць" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Пачатак радка" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Канец радка" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Перайсці да радка" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Папярэдняе слова" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Наступнае слова" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Дадаць закладку" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Наблізіць" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Аддаліць" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Поўнаэкранны рэжым" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Паказваць панэль меню" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Актываваць наступную ўкладку" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Актываваць папярэднюю ўкладку" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Даведка" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Што гэта" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Запаўненне тэксту" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Папярэдняе супадзенне для запаўнення" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Наступнае супадзенне для запаўнення" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Запаўненне радкоў" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Папярэдні элемент у спісе" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Наступны элемент у спісе" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Адкрыць нядаўнія" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Захаваць як" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Інвертаваць" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Папярэдні прагляд для друку" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Пошта" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Ачысціць" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Маштабаваць да сапраўднага памеру" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Па памеры старонкі" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Па шырыні" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Па вышыні" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Маштаб" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Перайсці" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Перайсці да старонкі" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Папярэдні дакумент" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Наступны дакумент" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Рэдагаваць закладкі" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Правапіс" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Паказваць панэль інструментаў" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Паказваць панэль стану" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Прывязванне клавіш" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Наладжванне праграмы" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Наладжванне панэляў інструментаў" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Наладжванне апавяшчэнняў" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Паведаміць пра хібу" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Наладжванне мовы…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Пра праграму" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Пра KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Выдаліць" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Змяніць назву" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Перамясціць у сметніцу" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Ахвяраваць" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Паказаць/Схаваць схаваныя файлы" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Стварыць каталог" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Адкрыць галоўнае меню" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Адкрыць кантэкстнае меню" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Інструмент KDE для абнаўлення карыстальніцкіх файлаў канфігурацыі" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Пакідаць вынікі вываду са скрыптоў" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Толькі для модульных тэстаў: не запісваць завершаныя запісы, каб пры кожным " +"паўторным запуску скрыпты выконваліся зноў" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Праверце, ці трэба абнавіць сам файл канфігурацыі" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Файл(ы), з якога трэба чытаць інструкцыі па абнаўленні" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Каталог для стварэння файлаў у [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "каталог" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Паказаць ліцэнзіі праграмнага забеспячэння." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Выкарыстоўваць замест глабальнай канфігурацыі" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Група для прагляду. Выкарыстоўваць \"\" для каранёвай групы або " +"паўторна для ўкладзеных груп." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Ключ для пошуку" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Прадвызначанае значэнне" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Тып зменнай" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Назва групы не можа быць пустой, для каранёвай групы выкарыстоўвайце " +"\"\"" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Тып зменнай. Выкарыстоўвайце \"bool\" для лагічнага значэння, інакш яно " +"будзе разглядацца як радок" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Выдаліць прызначаны ключ, калі ён уключаны" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Значэнне, якое трэба ўпісаць. Для пустога ў абалонцы абавязкова " +"выкарыстоўвайце ''" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Карысная парада" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Толькі для тэстаў модуляў: выкарыстоўваць тэставыя каталогі, каб не " +#~ "чапаць рэальныя файлы карыстальніка" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Захаваць параметры" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Запіс KConfig - для выкарыстання ў сцэнарах" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Луі Педро Коэльо" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Напісаў kreadconfig, на якой гэта базіруецца" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Луі Педро Коэльо" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Бернард Розенерэйнцэр" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "Дарафей Праляскоўскі" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "symbol@akeeri.tk" diff --git a/poqm/be@latin/kconfig6_qt.po b/poqm/be@latin/kconfig6_qt.po new file mode 100644 index 0000000..3ef0ef8 --- /dev/null +++ b/poqm/be@latin/kconfig6_qt.po @@ -0,0 +1,1081 @@ +# translation of kwriteconfig.po to Belarusian Latin +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# Ihar Hrachyshka , 2008. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2008-11-29 20:39+0200\n" +"Last-Translator: Ihar Hrachyshka \n" +"Language-Team: Belarusian Latin \n" +"Language: be@latin\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || n%10>=5 && n%10<=9 || n" +"%100>=11 && n%100<=14 ? 2 : 3);\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Vykarystaj , a nie hałoÅ­ny fajł naładaÅ­" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "Hurt, u jakim Å¡ukać. PaÅ­taraj dla Å­nutranych hurtoÅ­." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Patrebny kluč" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "Typ vartaści. „bool”: lahičnaja, inačaj tekstavy radok." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Vartaść, jakuju treba zapisać. Abaviazkovaja, dla pustoj vartaści Å­ abałoncy " +"karystajsia znakami „''”." + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Zapisvaje źviestki „KConfig” (dla skryptoÅ­ abałonki)" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "© 2001 Red Hat, Inc. i Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "" +#~ "NapisaÅ­ prahramu „kreadconfig”, pakładzienuju Å­ padvaliny hetaj prahramy" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/bg/kconfig6_qt.po b/poqm/bg/kconfig6_qt.po new file mode 100644 index 0000000..05e9b3d --- /dev/null +++ b/poqm/bg/kconfig6_qt.po @@ -0,0 +1,1056 @@ +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# Zlatko Popov , 2007, 2008. +# SPDX-FileCopyrightText: 2022, 2023, 2024 Mincho Kondarev +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-06-02 10:19+0200\n" +"Last-Translator: Mincho Kondarev \n" +"Language-Team: Bulgarian \n" +"Language: bg\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 24.05.0\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Моля, свържете се със системния си администратор." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Конфигурационният файл \"%1\" не може да се записва.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "По подразбиране" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "На&зад" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Напред" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Начална страница" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "Нов" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Създаване на нов документ" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Отваряне…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Отваряне на съществуващ документ" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Отваряне на скорошни" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Отваряне на наскоро отворян документ" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Запазване" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Запис на документа" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Запазване &като…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Запазване на документа под ново име" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "&Връщане" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Връщане на незаписаните промени в документа" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Затваряне" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Затваряне на документа" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Печат…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Отпечатване на документа" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Предпечатен пре&глед" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Показване на предварителен преглед за печат" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Поща…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Изпращане на документа по пощата" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Изход" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Изход от програмата" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Отмяна" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Отмяна на последното действие" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "В&ъзстановяване" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Повтаряне на последно отменено действие" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "&Изрязване" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Изрязване на селекцията в клипборда" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Копиране" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Копиране на селекцията в клипборда" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Поставяне" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Поставяне съдържанието на клипборда" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Изчистване" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Се&лектиране на всичко" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "&Размаркиране" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Намиране…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Търсене на следва&щ" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Търсене на преди&шен" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Заместване…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Мащабиране до &действителен размер" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Преглед на документа в действителния му размер" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Мащабиране до &размера на страницата" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Увеличаване до побиране на цялата страница в прозореца" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Мащабиране до &широчината на страницата" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Увеличаване до побиране на ширината на страницата в прозореца" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Мащабиране до &височината на страницата" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Увеличаване до побиране на височината на страницата в прозореца" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "У&величаване на мащаба" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Нама&ляване на мащаба" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Мащабиране…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Избиране на ниво на мащабиране" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Обновяване" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Обновяване на документа" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "На&горе" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Отиване нагоре" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "Преди&шна страница" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Към предишната страница" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Следва&ща страница" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Към следващата страница" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Отоване до…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Отиване на страница…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Отиване на &ред…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "П&ърва страница" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Към първата страница" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "После&дна страница" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Към последната страница" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "На&зад" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Отиване назад в документа" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Напред" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Отиване напред в документа" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Добавяне на отметка" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Редактиране на отметки…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Правопис…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Проверка на правописа в документа" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Показване на &главното меню" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Показване и скриване на лентата с менюто" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Показване на &лентата с инструменти" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Показване и скриване на лентата с инструменти" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Показване на лентата за с&ъстоянието" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Показване и скриване на лентата за състоянието" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Режим на &цял екран" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Конфигуриране на &клавишни комбинации…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Конфигуриране на %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "&Конфигуриране на ленти с инструменти…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Конфигуриране на &известията…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "&Ръководство за %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "&Какво е това?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Подаване на сигнал за грешка…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Конфигуриране на &език…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&Относно %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Относно &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Из&триване" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Преименуване…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Преместване в кошчето" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Дарение" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Отваряне на &меню" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Отваряне" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Ново" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Затваряне" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Запазване" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Печат" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Изход" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Отмяна" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Повторение" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Изрязване" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Копиране" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Поставяне" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Поставяне на селекцията" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Избиране на всичко" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Отмяна на избора" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Изтриване на дума назад" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Изтриване на дума напред" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Намиране" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Намиране следващо" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Намиране предишно" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Заместване" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Начална страница" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Начало" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Край" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Приоритет" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Следващ" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Нагоре" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Назад" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Напред" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Презареждане" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Начало на реда" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Край на реда" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Отиване на ред" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Дума назад" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Дума напред" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Добавяне на отметка" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Увеличаване на мащаба" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Намаляване на мащаба" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Режим на цял екран" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Показване на меню лента" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Активиране на следващия раздел" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Активиране на предишния раздел" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Помощ" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Какво е това" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Завършване на текст" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Предишно съвпадение за завършване" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Следващо съвпадение за завършване" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Завършване на подниза" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Предишен елемент в списъка" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Следващ елемент в списъка" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Отваряне на скорошни" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Запазване като" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Връщане" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Преглед преди печат" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Поща" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Изчистване" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Мащабиране до действителен размер" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Напасване на цяла страница" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Напасване по ширина" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Напасване на височина" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Мащабиране" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Отиване" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Отиване на страница" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Назад на документа" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Препращане на документ" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Редактиране на отметки" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Правопис" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Показване на лентата с инструменти" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Показване на лентата на състоянието" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Клавишни комбинации" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Конфигуриране на приложението" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Конфигуриране на ленти с инструменти" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Конфигуриране на известията" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Подаване на сигнал за грешка" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Конфигуриране на език…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Относно приложението" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Относно KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Изтриване" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Преименуване" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Преместване в кошчето" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Дарение" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Показване/скриване на скрити файлове" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Създаване на папка" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Отваряне на главното меню" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Отваряне на контекстното меню" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" +"KDE инструмент за актуализиране на потребителски конфигурационни файлове" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Задържане на изходните резултати от скриптове" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Само за тестове на единици: без записване на готовите записи, така че при " +"всяко повторностартиране, скриптовете да се изпълняват отново" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Проверяване, дали самият конфигурационен файл изисква актуализиране" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Файл или файлове с инструкции за актуализиране" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Директория за генериране на файлове в [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "директория" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Показване на лиценз за софтуер." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Използване на вместо глобална конфигурация" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Група, в която да търсите. Използвайте \"\" за root групата или " +"използвайте многократно за вложени групи." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Ключ за търсене" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Стойност по подразбиране" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Тип променлива" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Името на групата не може да бъде празно, Използвайте \"\" за root " +"групата" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Тип променлива. Използване на\"bool\"за булева стойност, в противен случай " +"тя се третира като низ" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Изтриване на посочения ключ, ако е активиран" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Стойност за запис. Изисква се, в терминал използвайте '' за празно" diff --git a/poqm/bn/kconfig6_qt.po b/poqm/bn/kconfig6_qt.po new file mode 100644 index 0000000..df1225c --- /dev/null +++ b/poqm/bn/kconfig6_qt.po @@ -0,0 +1,1094 @@ +# translation of kwriteconfig.po to Bengali +# Deepayan Sarkar , 2004, 2012. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2012-07-12 14:43+0530\n" +"Last-Translator: Deepayan Sarkar \n" +"Language-Team: Bengali \n" +"Language: bn\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 1.4\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "যে গ্রুপ-এ খোঁজা হবে" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "যে গ্রুপ-এ খোঁজা হবে" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "যে গ্রুপ-এ খোঁজা হবে" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "যে গ্রুপ-এ খোঁজা হবে" + +#: gui/kstandardshortcut.cpp:181 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "যে গ্রুপ-এ খোঁজা হবে" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "গ্লোবাল কনফিগ-এর পরিবর্তে ব্যবহার করো" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "যে যে গ্রুপ-এ দেখা হবে। একাধিক স্তরে গ্রুপ থাকলে একাধিকবার ব্যবহার করুন।" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "যে কী (Key) খোঁজা হবে " + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"ভেরিয়েবল-এর টাইপ। বুলিয়ান-এর জন্য \"bool\" ব্যবহার করুন, বাকি সব string হিসাবে " +"গণ্য হবে" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "যে মানটি লেখা হবে। দেওয়া প্রয়োজন। শেল-এ ফাঁকা রাখতে '' ব্যবহার করুন" + +#~ msgid "KWriteConfig" +#~ msgstr "কে-রাইট-কনফিগ" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "কনফিগ এন্ট্রি লেখে - শেল স্ক্রিপ্ট-এ ব্যবহারের জন্য" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "kreadconfig লিখেছেন, যার ভিত্তিতে এই প্রোগ্রামটি লেখা" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "দীপায়ন সরকার" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "deepayan@bengalinux.org" diff --git a/poqm/bn_IN/kconfig6_qt.po b/poqm/bn_IN/kconfig6_qt.po new file mode 100644 index 0000000..0856a45 --- /dev/null +++ b/poqm/bn_IN/kconfig6_qt.po @@ -0,0 +1,1081 @@ +# translation of kwriteconfig.po to Bengali INDIA +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# Runa Bhattacharjee , 2008. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2008-07-04 18:29+0530\n" +"Last-Translator: Runa Bhattacharjee \n" +"Language-Team: Bengali INDIA \n" +"Language: bn_IN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "গ্লোবাল কনফিগের পরিবর্তে ব্যবহার করুন" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "যে দলের মধ্যে অনুসন্ধান করা হবে। নেস্টেড দলের জন্য পুনাবৃত্তি করা আবশ্যক।" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "অনুসন্ধানের জন্য চিহ্নিত কি" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"ভেরিয়েবলের ধরন। বুলিয়ানের ক্ষেত্রে \"bool\" ব্যবহার করুন, অন্যথা সেটি স্ট্রিং রূপে " +"ব্যবহার করা হবে।" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"লেখার উদ্দেশ্যে চিহ্নিত মান। উল্লেখ করা আবশ্যক। ফাঁকা হলে শেলের মধ্যে '' লিখুন।" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "KConfig এনট্রি লিখুন - শেল স্ক্রিপ্টের সাথে ব্যবহারের উদ্দেশ্যে" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) ২০০১ Red Hat, Inc. ও লুই পেদ্রো কোয়লহো" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "" +#~ "kreadconfig-র লেখক। এই প্রোগ্রাম kreadconfig-র উপর ভিত্তি করে নির্মিত হয়েছে।" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "লুই পেদ্রো কোয়েলহো" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "বার্নার্ড রোসেনক্রেইনজার" diff --git a/poqm/br/kconfig6_qt.po b/poqm/br/kconfig6_qt.po new file mode 100644 index 0000000..20760cf --- /dev/null +++ b/poqm/br/kconfig6_qt.po @@ -0,0 +1,1054 @@ +# KDE breton translation +# Thierry Vignaud , 2004-2005 +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2004-07-08 17:18+0200\n" +"Last-Translator: Thierry Vignaud \n" +"Language-Team: Brezhoneg \n" +"Language: br\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "Thierry Vignaud, Jañ-Mai Drapier" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "tvignaud@mandriva.com, jdrapier@club-internet.fr" diff --git a/poqm/bs/kconfig6_qt.po b/poqm/bs/kconfig6_qt.po new file mode 100644 index 0000000..ca8e748 --- /dev/null +++ b/poqm/bs/kconfig6_qt.po @@ -0,0 +1,1244 @@ +msgid "" +msgstr "" +"Project-Id-Version: kde5\n" +"POT-Creation-Date: \n" +"PO-Revision-Date: 2015-02-24 19:56+0100\n" +"Last-Translator: Samir Ribić \n" +"Language-Team: Bosnian\n" +"Language: bs\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Qt-Contexts: true\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Obratite se sistem-administratoru." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Ne može se pisati u konfiguracionu datoteku %1.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Podrazumijevano" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Nazad" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Naprijed" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Kuća" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Otvori" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Otvori skoraÅ¡nje" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Sačuvaj" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Sačuvaj kao" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Vrati" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Zatvori" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Å tampaj" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Pregled pred Å¡tampanje" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Elektronska poÅ¡ta" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Izlaz" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "O programu" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "PoniÅ¡ti" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Kopiraj" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Umetni" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Čisto" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Izaberi sve" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "PoniÅ¡ti izbor" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Nađi" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Nađi sljedeće" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Nađi prethodno" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Zamijeni" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Stvarna veličina" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Uklopi u stranicu" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Uklopi u Å¡irinu" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Uklopi u visinu" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Uveličaj" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Umanji" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Uvećaj" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Izaberi sve" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Gore" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Idi na stranicu" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Idi na liniju" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Idi na stranicu" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Idi na liniju" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Uklopi u stranicu" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Idi na liniju" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Idi na stranicu" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Nazad" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Naprijed" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Dodaj zabiljeÅ¡ku" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Izmijeni zabiljeÅ¡ke" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Pravopis" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Prikaži traku menija" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Prikaži traku menija" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Prikaži alatnu traku" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Prikaži alatnu traku" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Prikaži statusnu traku" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Prikaži statusnu traku" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Režim punog ekrana" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Podesi alatne trake" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Podesi obavjeÅ¡tenja" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Å ta je ovo?" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Prijavi greÅ¡ku" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "O KDE-u" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "O KDE-u" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Otvori skoraÅ¡nje" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Otvori" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Novo" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Zatvori" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Sačuvaj" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Å tampaj" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Izlaz" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "PoniÅ¡ti" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Ponovi" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Isijeci" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopiraj" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Umetni" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Umetni izbor" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Izaberi sve" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "PoniÅ¡ti izbor" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "ObriÅ¡i riječ unazad" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "ObriÅ¡i riječ unaprijed" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Nađi" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Nađi sljedeće" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Nađi prethodno" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Zamijeni" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Kuća" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Početak" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "kraj" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Prethodno" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Sljedeći" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Gore" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Nazad" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Naprijed" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Ponovo učitaj" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Početak reda" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Kraj reda" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Idi na liniju" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Riječ unazad" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Riječ unaprijed" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Dodaj zabiljeÅ¡ku" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Uveličaj" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Umanji" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Režim punog ekrana" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Prikaži traku menija" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Aktiviraj sljedeću karticu" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Aktiviraj prethodnu karticu" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Pomoć" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Å ta je ovo?" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Dopuna teksta" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Prethodno poklapanje za dopunu" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Sljedeće poklapanje za dopunu" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Dopuna podniske" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Prethodna stavka na spisku" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Sljedeća stavka na spisku" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Otvori skoraÅ¡nje" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Sačuvaj kao" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Vrati" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Pregled pred Å¡tampanje" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Elektronska poÅ¡ta" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Čisto" + +#: gui/kstandardshortcut.cpp:299 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Stvarna veličina" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Uklopi u stranicu" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Uklopi u Å¡irinu" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Uklopi u visinu" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Uvećaj" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Idi na" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Idi na stranicu" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Dokument nazad" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Dokument naprijed" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Izmijeni zabiljeÅ¡ke" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Pravopis" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Prikaži alatnu traku" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Prikaži statusnu traku" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Pridruživanja tastera" + +#: gui/kstandardshortcut.cpp:348 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Podesi obavjeÅ¡tenja" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Podesi alatne trake" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Podesi obavjeÅ¡tenja" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Prijavi greÅ¡ku" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "O programu" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "O KDE-u" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE‑ova alatka za ažuriranje korisničkih konfiguracionih datoteka" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Zadrži izlazne rezultate iz skripti" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Provjeri da li konfiguraciona datoteka zahtijeva ažuriranje" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Direktorij za generisanje datoteka u [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "direktorij" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Prikaži softversku licencu." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Koristi umjesto globalne konfiguracije" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgctxt "main|" +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "Grupa u kojoj se traži. Ponavljajte za ugniježđene grupe." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Ključ za pregled" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Uobičajena vrijednost" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Vrsta varijable" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Vrsta promjenljive. Koristite \"bool\" za boole-ovu (logičku) promjenljivu,u " +"suprotnom će biti tretirana kao string" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Vrijednost koja se upisuje. Obavezno, u Å¡koljki koristite '' za prazno" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Savjet dana" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Opcije snimanja" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Promijeni jezik programa" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Postavke" diff --git a/poqm/ca/kconfig6_qt.po b/poqm/ca/kconfig6_qt.po new file mode 100644 index 0000000..0c9a61a --- /dev/null +++ b/poqm/ca/kconfig6_qt.po @@ -0,0 +1,1062 @@ +# Translation of kconfig6_qt.po to Catalan +# Copyright (C) 2004-2024 This_file_is_part_of_KDE +# This file is distributed under the license LGPL version 2.1 or +# version 3 or later versions approved by the membership of KDE e.V. +# +# Ivan Lloro Boada , 2004. +# Antoni Bella Pérez , 2014, 2015, 2016, 2017, 2019, 2020, 2021, 2022. +# Empar Montoro Martín , 2019. +# Josep M. Ferrer , 2007, 2008, 2009, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024. +msgid "" +msgstr "" +"Project-Id-Version: kconfig\n" +"Report-Msgid-Bugs-To: https://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-07-05 19:26+0200\n" +"Last-Translator: Josep M. Ferrer \n" +"Language-Team: Catalan \n" +"Language: ca\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 22.12.3\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Accelerator-Marker: &\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Si us plau, contacteu amb l'administrador del sistema." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "No es pot escriure en el fitxer de configuració «%1».\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Per defecte" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Enrere" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "En&davant" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Inici" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Nou" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Crea un document nou" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Obre…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Obre un document existent" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Obre'n un de &recent" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Obre un document que s'ha obert recentment" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Desa" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Desa el document" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Desa &com a…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Desa el document amb un nom nou" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Re&verteix" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Reverteix els canvis sense desar efectuats en el document" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Tan&ca" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Tanca el document" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Im&primeix…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Imprimeix el document" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "&Vista prèvia d'impressió" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Mostra una vista prèvia d'impressió del document" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Correu…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Envia un document per correu" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Surt" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Surt de l'aplicació" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Desfés" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Desfà l'última acció" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Re&fés" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Refà l'última acció desfeta" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "Re&talla" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Retalla la selecció al porta-retalls" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Copia" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Copia la selecció al porta-retalls" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Enganxa" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Enganxa el contingut del porta-retalls" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "&Neteja" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Selecciona-ho &tot" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Desse&lecciona" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Cerca…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Cerca la següe&nt" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Cerca l'an&terior" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Substitueix…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Zoom &a la mida real" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Visualitza el document en la seva mida real" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Ajusta a la pàgina" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Zoom fins a ajustar la pàgina a la finestra" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Ajusta a l'a&mplada de la pàgina" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Zoom fins a ajustar l'amplada de la pàgina a la finestra" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Ajusta a l'a&lçada de la pàgina" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Zoom fins a ajustar l'alçada de la pàgina a la finestra" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "&Amplia" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "&Redueix" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Zoom…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Selecciona el nivell de zoom" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Actualitza" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Actualitza el document" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Amunt" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Puja" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Pàgina anterior" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Va a la pàgina anterior" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Pàgina següe&nt" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Va a la pàgina següent" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Ves a…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Ves a la pàgina…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Ves a la línia…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "P&rimera pàgina" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Va a la primera pàgina" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Ú<ima pàgina" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Va a l'última pàgina" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Enrere" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Va enrere en el document" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "En&davant" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Va endavant en el document" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Afegeix una adreça d'interès" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Edita les adreces d'interès…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Ortografia…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Verifica l'ortografia en el document" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Mostra la barra de &menús" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Mostra o oculta la barra de menús" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Mostra la barra d'&eines" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Mostra o oculta la barra d'eines" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Mostra la barra d'est&at" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Mostra o oculta la barra d'estat" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "&Mode de pantalla completa" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Configura les &dreceres de teclat…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Configura %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Configura les &barres d'eines…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Configura les ¬ificacions…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "&Manual del %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Què és &això?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Informeu d'un error…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Configura &l'idioma…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&Quant al %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Quant al &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Su&primeix" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Reanomena…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Mou a la paperera" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Donatius" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Obre el &menú" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Obre" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Nou" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Tanca" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Desa" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Imprimeix" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Surt" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Desfés" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Refés" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Retalla" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Copia" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Enganxa" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Enganxa la selecció" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Selecciona-ho tot" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Desselecciona" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Suprimeix una paraula cap enrere" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Suprimeix una paraula cap endavant" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Cerca" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Cerca la següent" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Cerca l'anterior" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Substitueix" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Inici" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Comença" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Finalitza" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Anterior" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Següent" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Puja" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Enrere" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Endavant" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Torna a carregar" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Començament de la línia" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Final de línia" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Ves a la línia" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Paraula enrere" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Paraula endavant" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Afegeix una adreça d'interès" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Apropa" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Allunya" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Mode de pantalla completa" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Mostra la barra de menús" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Activa la pestanya següent" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Activa la pestanya anterior" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Ajuda" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Què és això?" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Compleció del text" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Coincidència anterior de la compleció" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Coincidència següent de la compleció" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Compleció de les subcadenes" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Element anterior a la llista" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Element següent a la llista" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Obre'n un de recent" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Desa com a" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Reverteix" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Vista prèvia d'impressió" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Correu" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Neteja" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Zoom a la mida real" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Ajusta a la pàgina" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Ajusta a l'amplada" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Ajusta a l'alçada" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Zoom" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Ves a" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Ves a la pàgina" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Document enrere" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Document endavant" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Edita les adreces d'interès" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Ortografia" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Mostra la barra d'eines" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Mostra la barra d'estat" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Lligams de tecla" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Configura l'aplicació" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Configura les barres d'eines" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Configura les notificacions" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Informeu d'un error" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Configura l'idioma…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Quant a l'aplicació" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Quant al KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Suprimeix" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Reanomena" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Mou a la paperera" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Donatius" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Mostra/Oculta els fitxers ocults" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Crea una carpeta" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Obre el menú principal" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Obre el menú contextual" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Eina del KDE per a actualitzar els fitxers de configuració d'usuari" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Conserva els resultats de la sortida dels scripts" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Només per a les proves unitàries: no escriviu les entrades efectuades, així " +"que en cada execució els scripts es tornen a executar de nou" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Comproveu si cal actualitzar el fitxer de configuració" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Fitxer/s per a llegir les instruccions d'actualització des de" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Directori per a generar els fitxers a [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "directori" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Mostra la llicència del programari." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Usa en comptes de la configuració global" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Grup on cercar. Useu «» per al grup arrel, o useu-lo " +"repetidament per a grups imbricats." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Clau a cercar" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Valor per defecte" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Tipus de variable" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"El nom de grup no pot estar buit, useu «» per al grup arrel" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Tipus de variable. Fa servir «bool» per a un booleà. En un altre cas, es " +"tracta com una cadena" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Suprimeix la clau designada, si està activada" + +# skip-rule: t-apo_ini,t-apo_fin +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"El valor a escriure. És obligatori. A l'intèrpret d'ordres fer servir '' si " +"està buit" diff --git a/poqm/ca@valencia/kconfig6_qt.po b/poqm/ca@valencia/kconfig6_qt.po new file mode 100644 index 0000000..e35706f --- /dev/null +++ b/poqm/ca@valencia/kconfig6_qt.po @@ -0,0 +1,1063 @@ +# Translation of kconfig6_qt.po to Catalan (Valencian) +# Copyright (C) 2004-2024 This_file_is_part_of_KDE +# This file is distributed under the license LGPL version 2.1 or +# version 3 or later versions approved by the membership of KDE e.V. +# +# Ivan Lloro Boada , 2004. +# Antoni Bella Pérez , 2014, 2015, 2016, 2017, 2019, 2020, 2021, 2022. +# Empar Montoro Martín , 2019. +# Josep M. Ferrer , 2007, 2008, 2009, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024. +msgid "" +msgstr "" +"Project-Id-Version: kconfig\n" +"Report-Msgid-Bugs-To: https://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-07-05 19:26+0200\n" +"Last-Translator: Josep M. Ferrer \n" +"Language-Team: Catalan \n" +"Language: ca@valencia\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 22.12.3\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Accelerator-Marker: &\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Contacteu amb l'administrador del sistema." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "No es pot escriure en el fitxer de configuració «%1».\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Predeterminat" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "A&rrere" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "A&vant" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Inici" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Nou" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Crea un document nou" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "O&bri…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Obri un document existent" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Obri'n un de &recent" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Obri un document que s'ha obert recentment" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Guar&da" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Guarda el document" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Anomena i gu&arda…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Guarda el document amb un nom nou" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Re&vertix" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Revertix els canvis sense guardar efectuats en el document" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Tan&ca" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Tanca el document" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Im&primix…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Imprimix el document" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "&Vista prèvia d'impressió" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Mostra una vista prèvia d'impressió del document" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Correu…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Envia un document per correu" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "I&x" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Ix de l'aplicació" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Desfés" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Desfà l'última acció" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Re&fés" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Refà l'última acció desfeta" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "Re&talla" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Retalla la selecció a dins del porta-retalls" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Copia" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Copia la selecció a dins del porta-retalls" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "A&pega" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Apega el contingut del porta-retalls" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "&Neteja" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Selecciona-ho &tot" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Desse&lecciona" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Bu&sca…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Busca la següe&nt" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Busca l'an&terior" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Su&bstituïx…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Zoom &a la mida real" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Visualitza el document en la seua mida real" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Ajusta a la pàgina" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Zoom fins a ajustar la pàgina en la finestra" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Ajusta a l'a&mplària de la pàgina" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Zoom fins a ajustar l'amplària de la pàgina en la finestra" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Ajusta a l'a&lçària de la pàgina" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Zoom fins a ajustar l'alçària de la pàgina en la finestra" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "&Amplia" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Red&uix" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Zoom…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Selecciona el nivell de zoom" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "Act&ualitza" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Actualitza el document" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Amunt" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Puja" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Pàgina anterior" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Va fins a la pàgina anterior" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Pàgina següe&nt" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Va fins a la pàgina següent" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Ves fins a…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Ves fins a la pàgina…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Ves fins a la línia…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "P&rimera pàgina" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Va fins a la primera pàgina" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Ú<ima pàgina" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Va fins a l'última pàgina" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "A&rrere" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Va arrere en el document" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "A&vant" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Va avant en el document" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Afi&g una adreça d'interés" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Edita les adreces d'interés…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Ortografia…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Verifica l'ortografia en el document" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Mostra la barra de &menús" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Mostra o oculta la barra de menús" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Mostra la barra d'&eines" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Mostra o oculta la barra d'eines" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Mostra la barra d'est&at" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Mostra o oculta la barra d'estat" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "&Mode de pantalla completa" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Configura les &dreceres de teclat…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Configura %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Configura les &barres d'eines…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Configura les ¬ificacions…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "&Manual de %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Què és &açò?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Informeu d'un error…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Configura &l'idioma…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&Quant a %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Quant a &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Sup&rimix" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Ca&nvia el nom…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Mou cap a dins de la paperera" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Donatius" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Obri el &menú" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Obri" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Nou" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Tanca" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Guarda" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Imprimix" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Ix" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Desfés" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Refés" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Retalla" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Copia" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Apega" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Apega la selecció" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Selecciona-ho tot" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Desselecciona" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Suprimix una paraula cap arrere" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Suprimix una paraula cap avant" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Busca" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Busca la següent" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Busca l'anterior" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Substituïx" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Inici" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Comença" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Finalitza" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Anterior" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Següent" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Puja" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Arrere" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Avant" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Torna a carregar" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Començament de la línia" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Final de línia" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Ves fins a la línia" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Paraula arrere" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Paraula avant" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Afig una adreça d'interés" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Acosta" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Allunya" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Mode de pantalla completa" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Mostra la barra de menús" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Activa la pestanya següent" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Activa la pestanya anterior" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Ajuda" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Què és açò?" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Compleció del text" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Coincidència anterior de la compleció" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Coincidència següent de la compleció" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Compleció de les subcadenes" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Element anterior en la llista" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Element següent en la llista" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Obri'n un de recent" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Anomena i guarda" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Revertix" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Vista prèvia d'impressió" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Correu" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Neteja" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Zoom a la mida real" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Ajusta a la pàgina" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Ajusta a l'amplària" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Ajusta a l'alçària" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Zoom" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Ves fins a" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Ves fins a la pàgina" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Document arrere" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Document avant" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Edita les adreces d'interés" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Ortografia" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Mostra la barra d'eines" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Mostra la barra d'estat" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Lligams de tecla" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Configura l'aplicació" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Configura les barres d'eines" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Configura les notificacions" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Informeu d'un error" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Configura l'idioma…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Quant a l'aplicació" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Quant a KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Suprimix" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Canvia el nom" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Mou cap a dins de la paperera" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Donatius" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Mostra/Oculta els fitxers ocults" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Crea una carpeta" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Obri el menú principal" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Obri el menú contextual" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Eina de KDE per a actualitzar els fitxers de configuració d'usuari" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Conserva els resultats de l'eixida dels scripts" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Només per a les proves unitàries: no escriviu les entrades efectuades, així " +"que en cada execució els scripts es tornen a executar de nou" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Comproveu si cal actualitzar el fitxer de configuració" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Fitxers per a llegir les instruccions d'actualització des de" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Directori per a generar els fitxers a [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "directori" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Mostra la llicència del programari." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Utilitza en comptes de la configuració global" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Grup on buscar. Utilitzeu «» per al grup arrel, o utilitzeu-" +"lo repetidament per a grups imbricats." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Clau que s'ha de buscar" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Valor predeterminat" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Tipus de variable" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"El nom de grup no pot estar buit, utilitzeu «» per al grup " +"arrel" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Tipus de variable. Utilitza «bool» per a un booleà. En un altre cas, es " +"tracta com una cadena" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Suprimix la clau designada, si està seleccionada" + +# skip-rule: t-apo_ini,t-apo_fin +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"El valor que s'escriurà. És obligatori. En l'intèrpret d'ordres utilitzar '' " +"si està buit" diff --git a/poqm/cs/kconfig6_qt.po b/poqm/cs/kconfig6_qt.po new file mode 100644 index 0000000..ea4ad71 --- /dev/null +++ b/poqm/cs/kconfig6_qt.po @@ -0,0 +1,1051 @@ +# SPDX-FileCopyrightText: 2014, 2016, 2017, 2018, 2019, 2020, 2023 Vít Pelčák +# SPDX-FileCopyrightText: 2021, 2022, 2024 Vit Pelcak +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-05-27 15:24+0200\n" +"Last-Translator: Vit Pelcak \n" +"Language-Team: Czech \n" +"Language: cs\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" +"X-Generator: Lokalize 24.02.2\n" +"X-Language: cs_CZ\n" +"X-Source-Language: en_US\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Prosím kontaktujte svého správce systému." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Soubor s konfigurací \"%1\" je nyní zapisovatelný.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Výchozí" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Zpět" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Vpřed" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Domů" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Nový" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Vytvořit nový dokument" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Otevřít…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Otevřít existující dokument" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Otevřít ne&dávný" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Otevřít dokument jenž byl nedávno otevřen" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Uložit" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Uložit dokument" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Uložit j&ako…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Uložit dokument pod jiným názvem" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "&Vrátit zpět" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Vrátit neuložené změny v dokumentu" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Zavřít" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Zavřít dokument" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Tisknout…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Vytisknout dokument" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Ná&hled před tiskem" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Zobrazit náhled před tiskem" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&E-mail…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Odeslat dokument e-mailem" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "U&končit" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Ukončit aplikaci" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Zpět" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Vrátit zpět poslední činnost" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Zno&vu" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Zopakovat naposled vrácenou činnost" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "Vyjmou&t" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Vyjmout výběr do schránky" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Kopírovat" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Kopírovat výběr do schránky" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "V&ložit" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Vložit obsah schránky" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Vyči&stit" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Vybr&at vÅ¡e" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "ZruÅ¡it vý&běr" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Najít…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Najít &následující" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Na&jít předchozí" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Na&hradit…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "ZvětÅ¡it n&a skutečnou velikost" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Zobrazit dokument v reálné velikosti" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Přizpůsobit &stránce" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Přizpůsobit stránku oknu" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "&Přizpůsobit šířce stránky" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Přizpůsobit šířce stránky" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Přizpůsobit výš&ce stránky" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Přizpůsobit výšce stránky" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Přiblíž&it" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "&Oddálit" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&ZvětÅ¡ení…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Vybrat úroveň přiblížení" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "O&bnovit" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Obnovit dokument" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Nahor&u" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Přejít nahoru" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Předchozí strana" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Přejít na předchozí stranu" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Následující strana" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Přejít na následující stranu" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Přejít na…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Př&ejít na stranu…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Př&ejít na řádku…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&První strana" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Přejít na první stranu" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Pos&lední stránka:" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Přejít na poslední stranu" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Zpět" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Zpátky v dokumentu" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Vpřed" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Vpřed v dokumentu" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Přidat k záložkám" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Upr&avit záložky…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Kontrola pravopisu…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Zkontrolovat pravopis dokumentu" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Zobrazovat hlavní &nabídku" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Zobrazovat nebo skrýt hlavní nabídku" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Zobrazi&t panel nástrojů" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Zobrazovat nebo skrýt panel nástrojů" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Zobrazovat st&avový panel" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Zobrazovat nebo skrýt stavový panel" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Celoobrazovkový reži&m" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Nas&tavit klávesové zkratky…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Nastavit %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Nastavit panely nástro&jů…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "&Nastavit upozornění…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "&Příručka aplikace '%1'" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Co je &toto?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Nahlásit &chybu…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Nastav&it jazyk…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "O &aplikaci '%1'" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "O prostředí &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Smazat" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Přejmenovat…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Pře&sunout do koÅ¡e" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Přispějte" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Otevřít na&bídku" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Otevřít" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Nový" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Zavřít" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Uložit" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Tisk" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Ukončit" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Zpět" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Znovu" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Vyjmout" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopírovat" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Vložit" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Vložit výběr" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Vybrat vÅ¡e" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "ZruÅ¡it označení" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Smazat slovo zpět" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Smazat slovo vpřed" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Najít" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Najít další" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Najít předchozí" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Nahradit" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Domů" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Začátek" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Konec" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Předchozí" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Následující" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Nahoru" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Zpět" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Vpřed" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Obnovit" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Začátek řádku" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Konec řádku" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Přejít na řádek" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "O slovo zpět" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "O slovo vpřed" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Přidat záložku" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Přiblížit" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Oddálit" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Celoobrazovkový režim" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Zobrazovat hlavní nabídku" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Aktivovat následující kartu" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Aktivovat předchozí kartu" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Nápověda" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Co je toto" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Doplňování textu" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Předchozí shoda doplňování" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Další shoda doplňování" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Dokončení podřetězců" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Předchozí položka v seznamu" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Další položka v seznamu" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Otevřít nedávné" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Uložit jako" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Vrátit zpět" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Náhled tisku" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Email" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Vyčistit" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "ZvětÅ¡it na skutečnou velikost" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Přizpůsobit stránce" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Přizpůsobit šířce" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Přizpůsobit výšce" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "ZvětÅ¡ení" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Přejít" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Přejít na stranu" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Dokument zpět" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Dokument vpřed" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Upravit záložky" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Pravopis" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Zobrazit panel nástrojů" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Zobrazit stavový panel" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Klávesové zkratky" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Nastavit aplikaci" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Nastavit panely nástrojů" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Nastavit upozornění" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Nahlásit chybu" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Nastavit jazyk…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "O aplikaci" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "O prostředí KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Smazat" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Přejmenovat" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Přesunout do koÅ¡e" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Přispět" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Zobrazit/skrýt skryté soubory" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Vytvořit složku" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Otevřít hlavní nabídku" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Otevřít kontextovou nabídku" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Nástroj KDE pro aktualizaci uživatelských souborů s nastavením" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Ponechat výsledky výstupu ze skriptů" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Zkontrolovat, zda soubor nastavení potřebuje aktualizaci" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Soubor(y) obsahující instrukce pro aktualizaci" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Adresář, kde se mají vytvářet soubory [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "adresář" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Zobrazit licenci softwaru" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Použít místo globální konfigurace" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Skupina k prohledání. Použijte \"\" pro kořenovou skupinu, nebo " +"opakovaně pro vnořené skupiny." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Vyhledat klíč" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Výchozí hodnota" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Typ proměnné" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Název skupiny nemůže být prázdný. Použít \"\" pro kořenovou skupinu" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Typ proměnné. Použijte \"bool\" pro booleovskou hodnotu, jinak je považováno " +"za řetězec" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Smazat vybraný pokud povoleno" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Hodnota k zapsání. Povinná, v shellu použijte '' jako prázdnou hodnotu" diff --git a/poqm/csb/kconfig6_qt.po b/poqm/csb/kconfig6_qt.po new file mode 100644 index 0000000..96a6a11 --- /dev/null +++ b/poqm/csb/kconfig6_qt.po @@ -0,0 +1,1081 @@ +# translation of kwriteconfig.po to Kaszëbsczi +# +# Michôł Òstrowsczi , 2006, 2008. +# Mark Kwidzińsczi , 2008. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2008-12-16 23:14+0100\n" +"Last-Translator: Mark Kwidzińsczi \n" +"Language-Team: Kashubian \n" +"Language: csb\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 0.2\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " +"|| n%100>=20) ? 1 : 2)\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Brëkùjë w môlu òglowi kònfigùracëji" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "Grëpa do sprawdzeniô. Brëkùjë czãsto dlô zagniéżdżónëch grëpów." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Szëkóny klucz" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Ôrt zmieniwny. Dlô logiczny wôrtnotë je to \"bool\", w procëmnym razu " +"zmieniwnô bãdze trzëmónô jakò régã céchów" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Wôrtnota do zapisaniô. Nieòbéńdnô, w skriptach mòże brëkòwac '' dlô pùsti " +"wôrtnotë" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Zapisanié wińdzeniô KConfig - do brëkòwaniô w skriptach" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Napisôł kreadconfig, na jaczim to je òpiarté" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/cy/kconfig6_qt.po b/poqm/cy/kconfig6_qt.po new file mode 100644 index 0000000..2e423be --- /dev/null +++ b/poqm/cy/kconfig6_qt.po @@ -0,0 +1,1082 @@ +# translation of kwriteconfig.po to Cymraeg +# Copyright (C) 2003 Free Software Foundation, Inc. +# KGyfieithu , 2003 +# +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2003-07-22 17:02+0100\n" +"Last-Translator: KGyfieithu \n" +"Language-Team: Cymraeg \n" +"Language: cy\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.0.1\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Grŵp i edrych ynddi" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Grŵp i edrych ynddi" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Grŵp i edrych ynddi" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Grŵp i edrych ynddi" + +#: gui/kstandardshortcut.cpp:181 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Grŵp i edrych ynddi" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Defnyddio yn lle'r ffurfwedd eang" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Allwedd i edrych amdani" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Math newidyn. Defnyddiwch \"bool\" am un Booleaidd, neu fe'i drinir fel " +"llinyn." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Y werth i'w ysgrifennu. Gorfodol, mewn plisgyn defnyddiwch '' am wag" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Ysgrifennu cofnodion KConfig - er defnydd mewn sgriptiau plisgyn" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "Owain Green ar ran KGyfieithu - Meddalwedd Gymraeg" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "kyfieithu@dotmon.com" diff --git a/poqm/da/kconfig6_qt.po b/poqm/da/kconfig6_qt.po new file mode 100644 index 0000000..8948e6b --- /dev/null +++ b/poqm/da/kconfig6_qt.po @@ -0,0 +1,1096 @@ +# translation of kwriteconfig.po to dansk +# Danish translation of kwriteconfig +# Copyright (C). +# +# Erik Kjær Pedersen , 2003. +# Keld Simonsen , 2008. +# Martin Schlander , 2008, 2014, 2015, 2016, 2017, 2018, 2019, 2020. +# SPDX-FileCopyrightText: 2024 rasmus rosendahl-kaa +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-10-21 13:07+0200\n" +"Last-Translator: rasmus rosendahl-kaa \n" +"Language-Team: Danish \n" +"Language: da\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 24.08.2\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Kontakt venligst din systemadministrator." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Indstillingsfilen \"%1\" er ikke skrivbar.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Standard" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Tilbage" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Frem" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Hjem" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Ny" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Opret nyt dokument" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Åbn…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Åbn et eksisterende dokument" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Åbn &nylige" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Åbn et dokument der er blevet Ã¥bnet for nyligt" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Gem" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Gem dokument" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Gem &som…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Gem dokument under et nyt navn" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Vend &tilbage" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Nulstil ikke-gemte ændringer af dokumentet" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Luk" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Luk dokument" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Udskriv…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Udskriv dokument" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Vis udskrif&t" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Vis udskrift for et dokument" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Mail…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Send dokument via e-mail" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Afslut" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Afslut programmet" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Fortryd" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Fortryd seneste handling" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Gen&dan" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Gendan seneste fortrudte handling" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "K&lip" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Klip det markerede til udklipsholderen" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Kopiér" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Kopiér markering til udklipsholder" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Indsæt" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Indsæt indhold fra udklipsholder" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "R&yd" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Markér &alt" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Fra&vælg" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Find…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Find &næste" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Find fo&rrige" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Erstat…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Zoom til &faktisk størrelse" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Se dokumentet i dets faktiske størrelse" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Pas til siden" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Zoom sÃ¥ siden passer til vinduet" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Pas til side&bredden" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Zoom sÃ¥ sidens bredde passer til vinduet" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Tilpas til side&højden" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Zoom sÃ¥ sidens højde passer til vinduet" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Zoom &ind" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Zoom &ud" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Zoom…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Vælg zoomniveau" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Genindlæs" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Genindlæs dokument" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Op" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "GÃ¥ op" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Forrige side" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "GÃ¥ til forrige side" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Næste side" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "&GÃ¥ til næste side" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&GÃ¥ til…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&GÃ¥ til side…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&GÃ¥ til linje…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Første side" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "&GÃ¥ til første side" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "&Sidste side" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "GÃ¥ til sidste side" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Tilbage" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "GÃ¥ tilbage i dokumentet" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Frem" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "GÃ¥ frem i dokumentet" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Tilføj bogmærke" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Redigér bogmærker…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Stavekontrol…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Kør stavekontrol pÃ¥ dokumentet" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Vis &menulinje" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Vis eller skjul menulinje" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Vis &værktøjslinje" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Vis eller skjul værktøjslinje" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Vis &statuslinje" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Vis elle skjul statuslinje" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "F&uldskærmstilstand" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Indstil tastaturg&enveje…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Indstil %1..." + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Indstil værktøjs&linjer" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Indstil &bekendtgørelser…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1-&hÃ¥ndbogen" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Hvad er &dette?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Rapportér programfejl…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Indstil &sprog..." + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&Om %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Om &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Slet" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Omdøb…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Flyt til papirkurv" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Donér" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Åbn &menu" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Åbn" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Ny" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Luk" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Gem" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Udskriv" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Afslut" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Fortryd" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Gendan" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Klip" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopiér" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Indsæt" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Indsæt markering" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Markér alt" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Fravælg" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Slet ord baglæns" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Slet ord forlæns" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Find" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Find næste" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Find forrige" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Erstat" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Hjem" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Begynd" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Slutning" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Før" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Næste" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Op" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Tilbage" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Frem" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Genindlæs" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Linjestart" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Linjeafslutning" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "GÃ¥ til linje" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Et ord tilbage" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Et ord frem" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Tilføj bogmærke" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Zoom ind" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Zoom ud" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Fuldskærmstilstand" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Vis menulinje" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Aktivér næste faneblad" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Aktivér forrige faneblad" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Hjælp" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Hvad er dette" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Tekstfuldførelse" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Forrige fuldførelsesmatch" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Næste fuldførelsesmatch" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Fuldførelse af delstreng" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Forrige punkt pÃ¥ listen" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Næste punkt pÃ¥ listen" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Åbn nylige" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Gem som" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Vend tilbage" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Vis udskrift" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Mail" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Ryd" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Zoom til faktisk størrelse" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Pas til siden" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Pas til bredden" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Pas til højden" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Zoom" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "GÃ¥ til" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "GÃ¥ til side" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Dokument tilbage" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Dokument frem" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Redigér bogmærker" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Stavekontrol" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Vis værktøjslinje" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Vis statuslinje" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Tastebindinger" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Indstil program" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Indstil værktøjslinjer" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Indstil bekendtgørelser" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Rapportér programfejl" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "&Indstil sprog..." + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Om programmet" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Om KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Slet" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Omdøb" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Flyt til papirkurv" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Donér" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Vis/skjul skjulte filer" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Opret mappe" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Åbn hovedmenu" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Åbn kontekstmenu" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE-værktøj til opdatering af brugerindstillingsfiler" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Behold output-resultater fra scripts" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Undersøg om config-filen selv kræver opdatering" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Filer at læse opdateringsinstruktioner fra" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Mappe som der skal genereres filer i [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "mappe" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Vis softwarelicens" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Brug i stedet for global config" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Gruppe at kigge i. Brug \"\" for root-gruppen eller brug gentagne " +"gange for indskudte grupper." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Tast at kigge efter" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Standardværdi" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Type af variabel" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "Gruppenavne kan ikke være tomme, brug \"\" for root-gruppen" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Variabeltype. Brug \"bool\" for en boolesk, ellers behandles den som en " +"streng" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Slet den tildelte nøgle hvis aktiveret" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Værdien der skal skrives. Krævet, i en skal bruges '' for tom" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Dagens tip" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Kun til enhedstester: Brug testmapper for at holde dig fra brugerens " +#~ "rigtige filer" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Gem indstillinger" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Skift programsprog" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Indstillinger" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Skriv KConfig-indgange - til brug i skal-scripts" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Skrev kreadconfig som dette er baseret pÃ¥" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/de/kconfig6_qt.po b/poqm/de/kconfig6_qt.po new file mode 100644 index 0000000..fb90927 --- /dev/null +++ b/poqm/de/kconfig6_qt.po @@ -0,0 +1,1110 @@ +# SPDX-FileCopyrightText: 2023, 2024 Johannes Obermayr +# Thomas Diehl , 2003. +# Thomas Reitelbach , 2006, 2007, 2008. +# Frederik Schwarzer , 2012, 2014, 2015, 2016, 2020, 2022. +# Burkhard Lück , 2014, 2015, 2016, 2017, 2018, 2019, 2021. +# Frank Steinmetzger , 2022. +msgid "" +msgstr "" +"Project-Id-Version: kconfig6_qt\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-08-26 18:25+0200\n" +"Last-Translator: Johannes Obermayr \n" +"Language-Team: German \n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Lokalize 24.05.2\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Bitte nehmen Sie Kontakt zu Ihrer Systemverwaltung auf." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Einrichtungsdatei „%1“ lässt sich nicht speichern.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Standard" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Zurück" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Vorwärts" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Startseite" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Neu" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Neues Dokument erstellen" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Öff&nen …" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Vorhandenes Dokument öffnen" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "&Zuletzt geöffnete Dateien" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Kürzlich geöffnetes Dokument öffnen" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Speichern" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Dokument speichern" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Speichern &unter …" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Dokument unter einem neuen Namen speichern" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Zu&rücksetzen" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Nicht gespeicherte Änderungen am Dokument verwerfen" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Schließen" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Dokument schließen" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Drucken …" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Dokument drucken" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Druck&vorschau" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Druckvorschau des Dokuments anzeigen" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&E-Mail …" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Dokument als E-Mail versenden" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Be&enden" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Anwendung beenden" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Rückgängig" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Letzte Aktion zurücknehmen" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Wie&derherstellen" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Letzte rückgängig gemachte Aktion wieder herstellen" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "&Ausschneiden" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Auswahl in Zwischenablage ausschneiden" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Kopieren" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Auswahl in die Zwischenablage kopieren" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Einfügen" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Inhalt der Zwischenablage einfügen" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "&Löschen" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "&Alle auswählen" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Auswahl aufheben" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Suchen …" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "&Weitersuchen" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "&Frühere suchen" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Ersetzen …" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Auf &Originalgröße zoomen" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Dokument in Originalgröße anzeigen" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Auf Seite einpassen" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Skalieren um Seite in Fenster einzupassen" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Auf Seiten&breite einpassen" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Skalieren um Seitenbreite in Fenster einzupassen" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Auf Seiten&höhe einpassen" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Skalieren um Seitenhöhe in Fenster einzupassen" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Ver&größern" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Ver&kleinern" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Vergrößerung …" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Vergrößerung auswählen" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Aktualisieren" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Dokument aktualisieren" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Nach &oben" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Nach oben" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Vorherige Seite" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Zur vorherigen Seite" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Nächste Seite" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Zur nächsten Seite gehen" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Gehe zu …" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Zu &Seite gehen …" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Zu &Zeile gehen …" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Erste Seite" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Zur ersten Seite gehen" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "&Letzte Seite" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Zur letzten Seite" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Zurück" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Rückwärts im Dokument" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Vorwärts" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Vorwärts im Dokument" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Lesezeichen hin&zufügen" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Lesezeichen &bearbeiten …" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Rech&tschreibung …" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Rechtschreibprüfung im Dokument" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "&Menüleiste anzeigen" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Menüleiste anzeigen oder ausblenden" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "&Werkzeugleiste anzeigen" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Werkzeugleiste anzeigen oder ausblenden" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "&Statusleiste anzeigen" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Statusleiste anzeigen oder ausblenden" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "&Vollbildmodus" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Tastaturkurzbefe&hle festlegen …" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "%1 einrichten …" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Werk&zeugleisten einrichten …" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "&Benachrichtigungen festlegen …" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "&Handbuch zu %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "&Was ist das?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "P&robleme oder Wünsche berichten …" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "&Sprache einrichten …" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Ü&ber %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Über &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Löschen" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Umbenennen …" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "In den &Papierkorb verschieben" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Spenden" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "&Menü öffnen" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Öffnen" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Neu" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Schließen" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Speichern" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Drucken" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Beenden" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Rückgängig" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Wiederherstellen" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Ausschneiden" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopieren" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Einfügen" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Auswahl einfügen" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Alle auswählen" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Auswahl aufheben" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Vorheriges Wort löschen" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Nächstes Wort löschen" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Suchen" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Weitersuchen" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Vorherige suchen" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Ersetzen" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Pos 1" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Anfang" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Ende" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Vorherige" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Weiter" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Nach oben" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Zurück" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Vorwärts" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Neu laden" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Zeilenanfang" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Zeilenende" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Gehe zu Zeile" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Ein Wort zurück" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Ein Wort vor" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Lesezeichen hinzufügen" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Vergrößern" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Verkleinern" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Vollbildmodus" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Menüleiste anzeigen" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Nächstes Unterfenster aktivieren" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Vorheriges Unterfenster aktivieren" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Hilfe" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Was ist das" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Textvervollständigung" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Vorherige Vervollständigung" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Nächste Vervollständigung" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Teilzeichenfolgen-Vervollständigung" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Vorheriges Listenelement" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Nächstes Listenelement" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Zuletzt geöffnete Dateien" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Speichern unter" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Zurücksetzen" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Druckvorschau" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Via E-Mail versenden" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Leeren" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Auf Originalgröße zoomen" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Auf Seite einpassen" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Auf Seitenbreite einpassen" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Auf Seitenhöhe einpassen" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Skalierung" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Gehe zu" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Gehe zu Seite" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Vorheriges Dokument" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Nächstes Dokument" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Lesezeichen bearbeiten" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Rechtschreibung" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Werkzeugleiste anzeigen" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Statusleiste anzeigen" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Kurzbefehle" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Anwendung einrichten" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Werkzeugleisten einrichten" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Benachrichtigungen festlegen" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Probleme oder Wünsche berichten" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Sprache einrichten …" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Über die Anwendung" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Über KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Löschen" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Umbenennen" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "In den Papierkorb verschieben" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Spenden" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Versteckte Dateien anzeigen/ausblenden" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Ordner erstellen" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Hauptmenü öffnen" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Kontextmenü öffnen" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" +"KDE-Dienstprogramm für die Aktualisierung von Benutzer-Konfigurationsdateien" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Skriptausgaben speichern" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Nur für Unit-Tests: Die ausgeführten Einträge nicht schreiben, damit bei " +"jeder neuen Ausführung alle Skripte nochmals ausführt werden" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" +"Überprüfen Sie, ob die Konfigurationsdatei selbst aktualisiert werden muss" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Dateien, der die Aktualisierungs-Informationen entnommen werden sollen" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Ordner, in dem die Dateien generiert werden [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "Ordner" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Zeigt die Software-Lizenz an." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr " statt globaler Konfigurationsdatei verwenden" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Zu durchsuchende Gruppe. Mehrfach verwenden zur Suche in verschachtelten " +"Gruppen, oder „“ für die Wurzelgruppe." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Zu suchender Schlüssel" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Standardwert" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Art der Variable" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Der Gruppenname darf nicht leer sein, benutzen Sie „“ für die " +"Wurzelgruppe" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Art der Variable. Verwenden Sie „bool“ für den booleschen Typ. Anderenfalls " +"wird sie als Zeichenfolge (string) behandelt." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Bezeichneten Schlüssel löschen, wenn er aktiviert ist" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Zu schreibender Wert. Zwingend erforderlich. Bei Shells bitte '' verwenden, " +"um „leer“ vorzugeben." + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Tipp des Tages" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Nur für Unittests: Test-Ordner verwenden, um die Tests von den " +#~ "eigentlichen Benutzerdateien zu trennen" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Optionen speichern" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Sprache der Anwendung umschalten" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Einstellungen" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "KConfig-Einträge schreiben – Zur Verwendung in Shell-Skripten" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "© 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Hat kreadconfig entwickelt, auf dem KWriteConfig basiert" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "Thomas Diehl" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "thd@kde.org" diff --git a/poqm/el/kconfig6_qt.po b/poqm/el/kconfig6_qt.po new file mode 100644 index 0000000..bd82573 --- /dev/null +++ b/poqm/el/kconfig6_qt.po @@ -0,0 +1,1105 @@ +# translation of kwriteconfig.po to Greek +# Copyright (C) 2003, 2004, 2007, 2008 Free Software Foundation, Inc. +# +# Stergios Dramis , 2003-2004. +# Spiros Georgaras , 2007. +# Spiros Georgaras , 2008. +# Dimitris Kardarakos , 2015, 2016. +# Stelios , 2020, 2023. +# SPDX-FileCopyrightText: 2024 George Stefanakis +# Antonis Geralis , 2024. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-09-07 21:11+0300\n" +"Last-Translator: Αντώνης Γέραλης \n" +"Language-Team: Greek \n" +"Language: el\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Lokalize 24.08.0\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Επικοινωνήστε με τον διαχειριστή του συστήματός σας." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Το αρχείο διαμόρφωσης \"%1\" δεν είναι εγγράψιμο.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Προκαθορισμένο" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Πίσω" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Μπροστά" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Αρχική" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Νέο" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Δημιουργία νέου εγγράφου" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Άνοι&γμα…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Άνοιγμα υπάρχοντος εγγράφου" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Άνοιγμα &πρόσφατου" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Άνοιγμα ενός εγγράφου που ανοίχτηκε πρόσφατα" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Αποθήκευση" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Αποθήκευση εγγράφου" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Αποθήκευση &ως…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Αποθήκευση εγγράφου με νέο όνομα" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Επαναφο&ρά" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Επαναφορά μη αποθηκευμένων αλλαγών στο έγγραφο" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Κλείσιμο" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Κλείσιμο εγγράφου" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Εκτύπωση…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Εκτύπωση εγγράφου" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Προεπισκόπηση ε&κτύπωσης" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Εμφάνιση προεπισκόπησης εκτύπωσης του εγγράφου" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Αλληλογραφία…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Αποστολή εγγράφου μέσω ταχυδρομείου" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Έ&ξοδος" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Κλείσιμο εφαρμογής" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Αναίρεση" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Αναίρεση της τελευταίας ενέργειας" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Επαναφορά" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Επανάληψη της τελευταίας ενέργειας που ακυρώθηκε" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "Αποκο&πή" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Αποκοπή επιλογής στο πρόχειρο" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Αντιγραφή" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Αντιγραφή επιλογής στο πρόχειρο" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Επικόλληση" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Επικόλληση περιεχομένου πρόχειρου" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Εκκα&θάριση" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Επι&λογή όλων" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Αποεπιλ&ογή" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Εύρεση…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Εύρεση &επόμενου" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Εύρεση προη&γούμενου" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Αντικατάσταση…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Εστίαση σε &πραγματικό μέγεθος" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Προβολή του εγγράφου στο πραγματικό του μέγεθος" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Προσαρμογή στη σελίδα" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Εστίαση για προσαρμογή σελίδας στο παράθυρο" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Προσαρμογή στο &πλάτος σελίδας" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Εστίαση για προσαρμογή πλάτους σελίδας στο παράθυρο" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Προσαρμογή στο ύ&ψος σελίδας" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Εστίαση για προσαρμογή ύψους σελίδας στο παράθυρο" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "&Μεγέθυνση" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "&Σμίκρυνση" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Εσ&τίαση…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Επιλογή επιπέδου εστίασης" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Ανανέωση" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Ανανέωση εγγράφου" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Πάνω" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Μετάβαση πάνω" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Προηγούμενη σελίδα" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Μετάβαση στην προηγούμενη σελίδα" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Επόμενη σελίδα" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Μετάβαση στην επόμενη σελίδα" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Μετάβαση σε…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Μετάβαση στη σελίδα…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Μετάβαση στη γραμμή…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Πρώτη σελίδα" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Μετάβαση στην πρώτη σελίδα" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "&Τελευταία σελίδα" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Μετάβαση στην τελευταία σελίδα" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Πίσω" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Μετάβαση πίσω στο έγγραφο" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Μπροστά" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Μετάβαση προς τα εμπρός στο έγγραφο" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Προσθήκη σελιδοδείκτη" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Επεξεργασία σελιδοδεικτών…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Ορθογραφία…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Έλεγχος ορθογραφίας στο έγγραφο" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Εμφάνιση &γραμμής μενού" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Εμφάνιση ή απόκρυψη της γραμμής μενού" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Εμφάνιση &γραμμής εργαλείων" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Εμφάνιση ή απόκρυψη γραμμής εργαλείων" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Εμφάνιση γραμμής κατάστασης" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Εμφάνιση ή απόκρυψη γραμμής κατάστασης" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Λειτουργία πλήρους οθόνης" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Διαμόρφωση συν&τομεύσεων πληκτρολογίου…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Διαμόρφωση %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Διαμόρφωση εργαλείων &γραμμών…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Διαμόρφωση &ειδοποιήσεων…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1 &εγχειρίδιο" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Τι είναι αυτό?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Αναφορά σφάλματος…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Διαμόρφωση γ&λώσσας…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Σ&χετικά με το %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Σχετικά με το &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Διαγραφή" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Μετονομασία…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Μετακίνηση στα απορρίμματα" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Δωρεά" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Άνο&ιγμα κυρίως μενού" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Άνοιγμα" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Νέο" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Κλείσιμο" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Αποθήκευση" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Εκτύπωση" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Έξοδος" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Αναίρεση" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Επανάληψη" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Αποκοπή" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Αντιγραφή" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Επικόλληση" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Επικόλληση επιλογής" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Επιλογή όλων" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Αποεπιλογή" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Διαγραφή λέξης προς τα πίσω" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Διαγραφή λέξης μπροστά" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Εύρεση" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Εύρεση επόμενου" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Εύρεση προηγούμενου" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Αντικατάσταση" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Αρχική" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Αρχή" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Τέλος" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Προηγούμενο" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Επόμενο" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Πάνω" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Πίσω" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Μπροστά" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Επαναφόρτωση" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Αρχή γραμμής" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Τέλος γραμμής" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Μετάβαση στη γραμμή" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Λέξη προς τα πίσω" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Λέξη μπροστά" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Προσθήκη σελιδοδείκτη" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Μεγέθυνση" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Σμίκρυνση" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Λειτουργία πλήρους οθόνης" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Εμφάνιση γραμμής μενού" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Ενεργοποίηση της επόμενης καρτέλας" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Ενεργοποίηση προηγούμενης καρτέλας" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Βοήθεια" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Τι είναι αυτό" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Συμπλήρωση κειμένου" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Προηγούμενο ταίριασμα συμπλήρωσης" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Επόμενο ταίριασμα συμπλήρωσης" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Συμπλήρωση υποσυμβολοσειράς" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Προηγούμενο αντικείμενο στη λίστα" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Επόμενο αντικείμενο στη λίστα" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Άνοιγμα πρόσφατου" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Αποθήκευση ως" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Επαναφορά" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Προεπισκόπηση εκτύπωσης" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Αλληλογραφία" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Εκκαθάριση" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Εστίαση στο πραγματικό μέγεθος" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Προσαρμογή στη σελίδα" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Προσαρμογή στο πλάτος" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Προσαρμογή στο ύψος" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Εστίαση" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Μετάβαση" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Μετάβαση σε σελίδα" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Έγγραφο πίσω" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Έγγραφο μπροστά" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Επεξεργασία σελιδοδεικτών" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Ορθογραφία" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Εμφάνιση γραμμής εργαλείων" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Εμφάνιση γραμμής κατάστασης" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Πλήκτρα συνδυασμών" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Διαμόρφωση εφαρμογής" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Διαμόρφωση γραμμών εργαλείων" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Διαμόρφωση ειδοποιήσεων" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Αναφορά σφάλματος" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Διαμόρφωση γλώσσας..." + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Σχετικά με την εφαρμογή" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Σχετικά με το KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Διαγραφή" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Μετονομασία" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Μετακίνηση στα απορρίμματα" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Δωρεά" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Εμφάνιση/απόκρυψη κρυφών αρχείων" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Δημιουργία φακέλου" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Άνοιγμα κυρίως μενού" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Άνοιγμα κυρίως μενού" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Εργαλείο του KDE για ενημέρωση των αρχείων διαμόρφωσης των χρηστών" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Διατήρηση των αποτελεσμάτων των σεναρίων κελύφους" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Μόνο για τις δοκιμές μονάδας: μην γράφετε τις καταχωρήσεις done, έτσι ώστε " +"σε κάθε επανεκτέλεση, τα σενάρια να εκτελούνται ξανά" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" +"Έλεγχος για το αν αυτό καθαυτό το αρχείο διαμόρφωσης χρειάζεται ενημέρωση" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Αρχείο(α) για ανάγνωση εντολών ενημέρωσης" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Ο κατάλογος όπου θα δημιουργηθούν τα αρχεία [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "κατάλογος" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Εμφάνιση άδειας χρήσης λογισμικού." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Χρήση <αρχείου> αντί καθολικής διαμόρφωσης" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Ομάδα στην οποία θα γίνει η αναζήτηση. Χρησιμοποιήστε \"\" για την " +"ομάδα του root ή επαναληπτικά για εμφωλευμένες ομάδες." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Κλειδί για αναζήτηση" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Προκαθορισμένη τιμή" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Τύπος μεταβλητής" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Το όνομα της ομάδας δεν μπορεί να είναι κενό, χρησιμοποιήστε \"\" " +"για την ομάδα του root" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Τύπος μεταβλητής. Χρησιμοποιήστε \"bool\" για boolean, αλλιώς " +"αντιμετωπίζεται ως συμβολοσειρά" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Να διαγραφεί το σημειωμένο κλειδί αν είναι ενεργό" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Η τιμή για εγγραφή. Υποχρεωτική, σε ένα κέλυφος χρησιμοποιήστε '' για κενό" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Συμβουλή της ημέρας" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Για ελέγχους από τον προγραμματιστή και μόνο: χρησιμοποιήστε " +#~ "δοκιμαστικούς καταλόγους για να μείνετε μακρυά από τα πραγματικά αρχεία " +#~ "του χρήστη" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Επιλογές αποθήκευσης" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Εναλλαγή γλώσσας εφαρμογής" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Προτιμήσεις" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Εγγραφή καταχωρήσεων KConfig - για χρήση σε σενάρια κελύφους" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Έγραψε το kreadconfig, στο οποίο βασίζεται αυτό" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/en_GB/kconfig6_qt.po b/poqm/en_GB/kconfig6_qt.po new file mode 100644 index 0000000..b81a82d --- /dev/null +++ b/poqm/en_GB/kconfig6_qt.po @@ -0,0 +1,1104 @@ +# translation of kwriteconfig.po to British English +# Copyright (C) 2003, 2008 Free Software Foundation, Inc. +# +# Malcolm Hunter , 2003, 2008. +# Andrew Coles , 2009. +# SPDX-FileCopyrightText: 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2022, 2023, 2024 Steve Allewell +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-05-24 16:48+0100\n" +"Last-Translator: Steve Allewell \n" +"Language-Team: British English\n" +"Language: en_GB\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Lokalize 24.02.2\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Please contact your system administrator." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Configuration file \"%1\" not writable.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Default" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Back" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Forward" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Home" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&New" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Create new document" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Open…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Open an existing document" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Open &Recent" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Open a document which was recently opened" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Save" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Save document" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Save &As…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Save document under a new name" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Re&vert" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Revert unsaved changes made to document" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Close" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Close document" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Print…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Print document" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Print Previe&w" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Show a print preview of document" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Mail…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Send document by mail" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Quit" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Quit application" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Undo" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Undo last action" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Re&do" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Redo last undone action" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "Cu&t" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Cut selection to clipboard" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Copy" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Copy selection to clipboard" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Paste" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Paste clipboard content" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "C&lear" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Select &All" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Dese&lect" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Find…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Find &Next" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Find Pre&vious" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Replace…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Zoom to &Actual Size" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "View document at its actual size" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Fit to Page" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Zoom to fit page in window" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Fit to Page &Width" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Zoom to fit page width in window" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Fit to Page &Height" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Zoom to fit page height in window" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Zoom &In" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Zoom &Out" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Zoom…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Select zoom level" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Refresh" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Refresh document" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Up" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Go up" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Previous Page" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Go to previous page" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Next Page" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Go to next page" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Go To…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Go to Page…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Go to Line…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&First Page" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Go to first page" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "&Last Page" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Go to last page" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Back" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Go back in document" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Forward" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Go forward in document" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Add Bookmark" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Edit Bookmarks…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Spelling…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Check spelling in document" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Show &Menubar" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Show or hide menubar" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Show &Toolbar" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Show or hide toolbar" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Show St&atusbar" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Show or hide statusbar" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "F&ull Screen Mode" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Configure Keyboard S&hortcuts…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Configure %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Configure Tool&bars…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Configure &Notifications…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1 &Handbook" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "What's &This?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Report Bug…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Configure &Language…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&About %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "About &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Delete" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Rename…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Move to Wastebin" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Donate" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Open &Menu" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Open" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "New" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Close" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Save" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Print" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Quit" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Undo" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Redo" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Cut" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Copy" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Paste" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Paste Selection" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Select All" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Deselect" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Delete Word Backwards" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Delete Word Forward" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Find" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Find Next" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Find Prev" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Replace" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Home" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Begin" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "End" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Prior" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Next" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Up" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Back" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Forward" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Reload" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Beginning of Line" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "End of Line" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Go to Line" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Backward Word" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Forward Word" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Add Bookmark" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Zoom In" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Zoom Out" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Full Screen Mode" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Show Menu Bar" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Activate Next Tab" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Activate Previous Tab" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Help" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "What's This" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Text Completion" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Previous Completion Match" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Next Completion Match" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Substring Completion" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Previous Item in List" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Next Item in List" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Open Recent" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Save As" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Revert" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Print Preview" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Mail" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Clear" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Zoom to Actual Size" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Fit To Page" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Fit To Width" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Fit To Height" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Zoom" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Goto" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Goto Page" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Document Back" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Document Forward" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Edit Bookmarks" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Spelling" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Show Toolbar" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Show Statusbar" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Key Bindings" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Configure Application" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Configure Toolbars" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Configure Notifications" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Report Bug" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Configure Language…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "About Application" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "About KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Delete" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Rename" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Move to Wastebin" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Donate" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Show/Hide Hidden Files" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Create Folder" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Open Main Menu" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Open Context Menu" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE Tool for updating user configuration files" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Keep output results from scripts" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Check whether config file itself requires updating" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "File(s) to read update instructions from" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Directory to generate files in [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "directory" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Display software licence." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Use instead of global config" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Key to look for" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Default value" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Type of variable" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "Group name cannot be empty, use \"\" for the root group" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Delete the designated key if enabled" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "The value to write. Mandatory, on a shell use '' for empty" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Tip Of Day" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Save Options" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Switch Application Language" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Preferences" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Write KConfig entries - for use in shell scripts" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Wrote kreadconfig on which this is based" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "Malcolm Hunter" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "malcolm.hunter@gmx.co.uk" diff --git a/poqm/eo/kconfig6_qt.po b/poqm/eo/kconfig6_qt.po new file mode 100644 index 0000000..8bddc65 --- /dev/null +++ b/poqm/eo/kconfig6_qt.po @@ -0,0 +1,1057 @@ +# translation of kconfig6_qt.pot to esperanto +# Copyright (C) 2014 Free Software Foundation, Inc. +# This file is distributed under the same license as the kconfig package. +# Matthias Peick , 2004. +# Pierre-Marie Pédrot , 2007. +# Michael Moroni , 2012. +# Oliver Kellogg , 2023. +# +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-05-30 07:49+0200\n" +"Last-Translator: Oliver Kellogg \n" +"Language-Team: Esperanto \n" +"Language: eo\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 1.4\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Poedit-Language: Esperanto\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Bonvolu kontakti vian sisteman administranton." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Agorda dosiero \"%1\" ne skribebla.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "DefaÅ­lto" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Reen" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&AntaÅ­en" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Hejma" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Nova" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Krei novan dokumenton" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Malfermi…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Malfermi ekzistantan dokumenton" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Malfermi &Lastatempan" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Malfermi dokumenton kiu estis lasttempe malfermita" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Kon&servi" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Konservi dokumenton" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Konservi &Kiel…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Konservi dokumenton sub nova nomo" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Mal&fari" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Malfari nekonservitajn ŝanĝojn faritajn al dokumento" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "F&ermi" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Fermi dokumenton" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Presi…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Presi dokumenton" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Pres-AntaÅ­rigar&do" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Montri antaÅ­rigardon de presita dokumento" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Ret&poŝti…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Sendi dokumenton per retpoŝto" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "F&orlasi" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Forlasi aplikon" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Malfar&u" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Malfari lastan agon" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Re&fari" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Refari laste malfaritan agon" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "&Tondi" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Tondi elekton al poŝo" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Kopii" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Kopii elekton al poŝo" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Alglui" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Alglui poŝenhavon" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "V&iŝi" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Elekti &Ĉion" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Male&lekti" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Trovi…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Trovi Sekva&n" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Tro&vi AntaÅ­an" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&AnstataÅ­igi…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Zomi al F&akta Grandeco" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Rigardi dokumenton en ĝia fakta grandeco" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Ĝisrandigi al Paĝo" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Zomi por konvenigi paĝon en fenestro" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Ĝisrandigi al Paĝa &Larĝeco" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Zomi por konvenigi paĝolarĝecon en fenestro" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Ĝisrandigi al Paĝa Alte&co" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Zomi por konvenigi paĝan altecon en fenestro" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Zom&i" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Malz&omi" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Zomi…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Elekti zomnivelon" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Refreŝigi" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Refreŝigi dokumenton" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "S&upren" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Iri supren" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "AntaÅ­a &Paĝo" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Iri al antaÅ­a paĝo" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Sekva&nta Paĝo" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Iri al sekva paĝo" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Iri Al…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Iri al Paĝo…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Iri al Linio…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Unua Paĝo" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Iri al unua paĝo" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "&Lasta Paĝo" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Iri al lasta paĝo" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&MalantaÅ­en" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Iri malantaÅ­en en la dokumento" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&AntaÅ­en" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Iri antaÅ­en en la dokumento" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Aldoni Legosignon" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "R&edakti Legosignojn…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Literumo…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Kontroli literumon en dokumento" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Montri &Menubreton" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Montri aÅ­ kaŝi menubreton" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Montri Ilobre&ton" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Montri aÅ­ kaŝi ilobreton" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Montri St&atusbreton" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Montri aÅ­ kaŝi statusbreton" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Plen-Ekrana Reĝim&o" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Agordi &Klavarkombinojn…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "A&gordi %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Agordi Ilo&bretojn…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Agordi Sciigoj&n…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "&Manlibro %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Kio estas &Tio?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Raporti Cimon…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Agordi &Lingvon…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&Pri %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Pri &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Forigi" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Renomi…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Movi al Rubujo" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Donaci" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Malfermi &Menuon" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Malfermi" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Nova" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Fermi" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Konservi" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Presi" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Forlasi" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Malfari" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Refari" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Tranĉi" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopii" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Alglui" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Alglui Elekton" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Elekti Ĉion" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Malelekti" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Forigi Vorton MalantaÅ­en" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Forigi Vorton AntaÅ­en" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Trovi" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Trovi Sekvan" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Trovi AntaÅ­an" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "AnstataÅ­igi" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Hejmo" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Komenco" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Fino" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "AntaÅ­a" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Posta" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Supren" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Reen" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "AntaÅ­en" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Reŝargi" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Komenco de Linio" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Fino de Linio" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Iri al Linio" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "MalantaÅ­en Vorte" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "AntaÅ­en Vorte" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Aldoni legosignon" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Zomi" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Malzomi" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Plena Ekrana Reĝimo" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Montri Menubreton" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Aktivigi Sekvan Langeton" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Aktivigi AntaÅ­an Langeton" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Helpo" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Kio estas tio" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Teksto Kompletigo" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "AntaÅ­a Kompleta Kongruo" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Sekva Kompleta Kongruo" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Subĉena Kompletigo" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "AntaÅ­a Ero en Listo" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Sekva Ero en Listo" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Malfermi Lastatempan" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Konservi kiel" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Reiri" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Presita antaÅ­vido" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Poŝto" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Klara" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Zomi al Fakta Grandeco" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Ĝisrandigi al Paĝo" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Ĝisrandigi al Larĝo" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Ĝisrandigi al Alteco" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Zomi" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Iri al" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Iri al Paĝo" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Dokumento Reen" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Dokumento AntaÅ­en" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Redakti legosignojn" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Literumo" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Montri Ilobreton" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Montri Statusbreton" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Klavkombinoj" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Agordi Aplikaĵon" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Agordi Ilobretojn" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Agordi Sciigojn" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Raporti Cimon" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Agordi Lingvon…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Pri Apliko" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Pri KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Forigi" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Alinomi" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Movi al Rubujo" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Doni" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Montri/Kaŝi Kaŝitajn dosierojn" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Krei Dosierujon" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Malfermi Ĉefmenuon" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Malfermi Kuntekstmenuon" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE-ilo por ĝisdatigi uzantajn agordajn dosierojn" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Konservi eligajn rezultojn de skriptoj" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Nur por unuotestoj: ne skribi la pretajn enirojn por ke je ĉiu relanĉo, la " +"skriptoj estos ree ruligataj" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Kontroli ĉu agorda dosiero mem postulas ĝisdatigon" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Dosiero(j) por legi ĝisdatigajn instrukciojn" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Dosierujo en kiu generi dosierojn [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "dosierujo" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Montri programlicencon." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Uzi anstataÅ­ ol ĉieaj agordoj" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Grupo priserĉenda. Uzu \"\" por la radika grupo, aÅ­ uzu ripete por " +"ingitaj grupoj." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Serĉenda ŝlosilo" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "DefaÅ­lta valoro" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Speco de variablo" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "Grupnomo ne povas esti malplena, uzu \"\" por la radika grupo" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Speco de variablo. Uzu \"bool\" por bulea, alikaze ĝi estas traktata kiel " +"ĉeno" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Forigi la elektitan ŝlosilon se ĝi estas ebligita" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "La skribenda valoro. Nepre, en ŝelo uzu '' kiel malplena" diff --git a/poqm/es/kconfig6_qt.po b/poqm/es/kconfig6_qt.po new file mode 100644 index 0000000..0b06449 --- /dev/null +++ b/poqm/es/kconfig6_qt.po @@ -0,0 +1,1106 @@ +# translation of kwriteconfig.po to Spanish +# Translation of kwriteconfig to Spanish +# Copyright (C) 2003, 2007, 2008 Free Software Foundation, Inc. +# +# Miguel Revilla Rodríguez , 2003. +# Jaime Robles , 2003, 2008. +# Enrique Matias Sanchez (aka Quique) , 2007. +# SPDX-FileCopyrightText: 2012, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024 Eloy Cuadra +# Rocio Gallego , 2014. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-05-22 03:53+0200\n" +"Last-Translator: Eloy Cuadra \n" +"Language-Team: Spanish \n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 24.02.2\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Póngase en contacto con el administrador de su sistema." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "No se puede escribir en el archivo de configuración «%1».\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Por omisión" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "A&trás" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "A&delante" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Inicio" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Nueva" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Crear nuevo documento" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Abrir..." + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Abrir un documento existente" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Abrir &reciente" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Abrir un documento abierto recientemente" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Guardar" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Guardar documento" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "G&uardar como..." + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Guardar el documento con un nombre nuevo" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Re&vertir" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Revertir los cambios sin guardar hechos en el documento" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Cerrar" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Cerrar el documento" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Im&primir..." + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Imprimir documento" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Vista previa de la i&mpresión" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Mostrar una vista previa del documento impreso" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "C&orreo..." + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Enviar el documento por correo" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Salir" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Salir de la aplicación" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Deshacer" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Deshacer la última acción" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Re&hacer" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Rehacer la última acción deshecha" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "Cor&tar" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Cortar la selección al portapapeles" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Copiar" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Copiar la selección al portapapeles" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Pegar" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Pegar el contenido del portapapeles" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "&Borrar" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "&Seleccionar todo" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Dese&leccionar" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Buscar..." + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Buscar si&guiente" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "B&uscar anterior" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Sustituir..." + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "&Ampliar al tamaño real" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Ver el documento en su tamaño real" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "A&justar a la página" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Ampliar para que la página quepa en la ventana" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Ajustar a la a&nchura de la página" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Ampliar para que la anchura de la página quepa en la ventana" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Ajus&tar a la altura de la página" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Ampliar para que la altura de la página quepa en la ventana" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Ampl&iar" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "&Reducir" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "A&mpliación..." + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Seleccionar el nivel de ampliación" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Refrescar" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Actualizar el documento" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Arriba" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Subir" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Página anterior" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Ira a la página anterior" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Pági&na siguiente" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Ir a la página siguiente" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Ir a..." + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Ir a la página..." + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Ir a la línea..." + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Pri&mera página" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Ir a la primera página" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Ú<ima página" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Ir a la última página" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Retroceder" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Retroceder en el documento" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "A&vanzar" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Avanzar en el documento" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Añadir marcador" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Editar marcadores..." + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Comprobación &ortográfica..." + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Comprobar la ortografía del documento" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "&Mostrar la barra de menú" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Mostrar u ocultar la barra de menú" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Mos&trar la barra de herramientas" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Mostrar u ocultar la barra de herramientas" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Mostrar la b&arra de estado" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Mostrar u ocultar la barra de estado" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "&Modo de pantalla completa" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Configurar los ata&jos de teclado..." + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Configurar %1..." + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Configurar &barras de herramientas..." + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Configurar ¬ificaciones..." + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "&Manual de %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "¿&Qué es esto?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "In&formar de fallo..." + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Configurar &idioma..." + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&Acerca de %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Acerca de &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Borrar" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Cambiar &nombre..." + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Mover a la papelera" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Hacer un &donativo" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Abrir el &menú" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Abrir" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Nuevo" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Cerrar" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Guardar" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Imprimir" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Salir" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Deshacer" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Rehacer" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Cortar" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Copiar" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Pegar" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Pegar selección" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Seleccionar todo" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Deseleccionar" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Borrar palabra hacia atrás" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Borrar palabra hacia adelante" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Buscar" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Buscar siguiente" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Buscar anterior" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Sustituir" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Inicio" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Principio" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Fin" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Anterior" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Siguiente" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Arriba" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Atrás" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Adelante" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Volver a cargar" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Principio de línea" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Fin de línea" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Ir a la línea" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Palabra anterior" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Palabra siguiente" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Añadir marcador" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Ampliar" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Reducir" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Modo de pantalla completa" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Mostrar la barra de menú" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Activar siguiente pestaña" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Activar anterior pestaña" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Ayuda" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "¿Qué es esto?" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Terminación de texto" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Coincidencia de terminación anterior" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Coincidencia de terminación siguiente" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Terminación de subcadenas" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Anterior elemento de la lista" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Siguiente elemento de la línea" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Abrir reciente" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Guardar como" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Revertir" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Vista previa de la impresión" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Correo" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Borrar" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Ampliar al tamaño real" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Ajustar a la página" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Ajustar al ancho" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Ajustar a la altura" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Ampliación" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Ir a" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Ir a la página" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Anterior documento" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Siguiente documento" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Editar marcadores" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Corrección ortográfica" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Mostrar la barra de herramientas" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Mostrar la barra de estado" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Asignaciones de teclas" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Configurar aplicación" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Configurar barras de herramientas" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Configurar notificaciones" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Informar de fallo" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Configurar idioma..." + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Acerca de la aplicación" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Acerca de KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Borrar" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Cambiar nombre" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Mover a la papelera" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Hacer un donativo" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Mostrar/ocultar archivos ocultos" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Crear carpeta" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Abrir el menú principal" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Abrir el menú de contexto" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" +"Herramienta de KDE para actualizar archivos de configuración de usuario" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Mantener los resultados de salida de los scripts" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Solo para pruebas unitarias: no escribir las entradas terminadas, de modo " +"que con cada repetición se ejecuten de nuevo los guiones" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Comprobar si el archivo de configuración necesita actualización" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Archivo(s) de donde leer las instrucciones de actualización" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Directorio en el que generar los archivos [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "directorio" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Mostrar la licencia del software." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Usar en lugar de la configuración global" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Grupo en el que buscar. Use «» para el grupo raíz, o úselo " +"de forma repetida para grupos anidados." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Clave a buscar" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Valor por omisión" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Tipo de variable" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"El nombre del grupo no puede estar vacío. Use «» para el " +"grupo raíz." + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Tipo de variable. Use «bool» para un booleano, de lo contrario se tratará " +"como una cadena" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Borrar la clave designada si está activado" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"El valor a escribir. Obligatorio. En un intérprete de órdenes use '' para " +"indicar vacío" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Consejo del día" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Solo para pruebas unitarias: usar directorios de pruebas para proteger " +#~ "los archivos reales del usuario" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Guardar opciones" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Cambiar idioma de la aplicación" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Preferencias" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "" +#~ "Escribir entradas de KConfig (para usar en guiones del intérprete de " +#~ "órdenes)" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "© 2001 Red Hat, Inc. y Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Escribió kreadconfig, en el que se basa este programa" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/et/kconfig6_qt.po b/poqm/et/kconfig6_qt.po new file mode 100644 index 0000000..ccd6610 --- /dev/null +++ b/poqm/et/kconfig6_qt.po @@ -0,0 +1,1289 @@ +# translation of kwriteconfig.po to Estonian +# Copyright (C) 2003 Free Software Foundation, Inc. +# +# Marek Laane , 2003,2007-2008, 2016, 2019, 2020. +# Mihkel Tõnnov , 2020, 2022. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2022-10-21 20:09+0200\n" +"Last-Translator: Mihkel Tõnnov \n" +"Language-Team: Estonian <>\n" +"Language: et\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 22.08.2\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Palun võta ühendust süsteemiadministraatoriga." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Seadistusfaili \"%1\" ei saa kirjutada.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Vaikimisi" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Tagasi" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Edasi" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Kodu" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Ava" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Ava viimati kasutatud" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Salvesta" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Salvesta kui" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Taasta" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Sulge" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Trüki" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Trükkimise eelvaatlus" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Saada e-postiga" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Välju" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Rakenduse teave" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Võta tagasi" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Kopeeri" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Aseta" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Puhasta" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Vali kõik" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Tühista valik" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Otsi" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Otsi järgmine" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Otsi eelmine" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Asenda" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom to Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Tegelik suurus" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Mahuta leheküljele" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Mahuta laiusele" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Mahuta kõrgusele" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Suurenda" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Vähenda" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Suurendus" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Vali kõik" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Üles" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Mine leheküljele" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Mine reale" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Mine leheküljele" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Mine reale" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Mahuta leheküljele" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Mine reale" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Mine leheküljele" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Tagasi" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Edasi" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Lisa järjehoidja" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Muuda järjehoidjaid" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Õigekirja kontroll" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Näita menüüriba" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Näita menüüriba" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Tööriistariba näitamine" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Tööriistariba näitamine" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Näita olekuriba" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Näita olekuriba" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Täisekraanirežiim" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "Vaheta keelt ..." + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Tööriistaribade seadistamine" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Märguannete seadistamine" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Mis see on" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Saada veateade" + +#: gui/kstandardactions_p.h:135 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Vaheta keelt ..." + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "KDE teave" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "KDE teave" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Kustuta" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Muuda nime" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Viska prügikasti" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Anneta" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Ava viimati kasutatud" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Ava" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Uus" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Sulge" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Salvesta" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Trüki" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Välju" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Võta tagasi" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Tee uuesti" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Lõika" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopeeri" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Aseta" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Aseta valik" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Vali kõik" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Tühista valik" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Kustuta eelmine sõna" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Kustuta järgmine sõna" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Otsi" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Otsi järgmine" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Otsi eelmine" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Asenda" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Kodu" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Algus" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Lõpp" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Eelmine" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Järgmine" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Üles" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Tagasi" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Edasi" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Laadi uuesti" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Rea algus" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Rea lõpp" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Mine reale" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Eelmine sõna" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Järgmine sõna" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Lisa järjehoidja" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Suurenda" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Vähenda" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Täisekraanirežiim" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Näita menüüriba" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Aktiveeri järgmine kaart" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Aktiveeri eelmine kaart" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Abi" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Mis see on" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Tekstilõpetus" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Eelmine lõpetamise kokkulangevus" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Järgmine lõpetamise kokkulangevus" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Alamstringide lõpetamine" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Eelmine element nimekirjas" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Järgmine element nimekirjas" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Ava viimati kasutatud" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Salvesta kui" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Taasta" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Trükkimise eelvaatlus" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Saada e-postiga" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Puhasta" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Tegelik suurus" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Mahuta leheküljele" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Mahuta laiusele" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Mahuta kõrgusele" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Suurendus" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Liikumine" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Mine leheküljele" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Eelmine dokument" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Järgmine dokument" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Muuda järjehoidjaid" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Õigekirja kontroll" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Tööriistariba näitamine" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Näita olekuriba" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Kiirklahvid" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Rakenduse seadistamine" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Tööriistaribade seadistamine" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Märguannete seadistamine" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Saada veateade" + +#: gui/kstandardshortcut.cpp:373 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Vaheta keelt ..." + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Rakenduse teave" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "KDE teave" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Kustuta" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Muuda nime" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Viska prügikasti" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Anneta" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Peidetud failide näitamine/peitmine" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Loo kataloog" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE kasutaja seadistusfailide uuendamise rakendus." + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Skripti väljundi tulemused säilitatakse" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Kontroll, kas seadistusfail ise vajab uuendamist" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Uuendamise instruktsioone sisaldav(ad) fail(id)" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Kataloog, kus failid genereeritakse [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "directory" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Tarkvaralitsentsi näitamine." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Globaalse seadistuse asemel kasutatakse faili " + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Otsitav grupp. Juurgrupi jaoks anna \"\", pesastatud gruppide puhul " +"anna mitu korda." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Otsitav võti" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Vaikeväärtus" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Muutuja tüüp" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Grupi nimi ei tohi tühi olla - kui soovid juurgruppi, anna \"\"" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Muutuja tüüp. Kui on tõeväärtus, anna \"bool\", muidu käsitletakse stringina" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Lubamise korral määratud võtme kustutamine" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Kirjutatav väärtus. See on kohustuslik. Shellis kasuta tühja asemel ''" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Päeva nõuanne" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Ainult ühiktestideks: testkataloogide kasutamine kasutaja tegelike " +#~ "failide puutumisest hoidumiseks" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Salvesta valikud" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Rakenduse keele vahetamine" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Eelistused" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "KConfigi kirjete kirjutamine - kasutamiseks shelli skriptides" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001: Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Aluseks oleva kreadconfig'i kirjutaja" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/eu/kconfig6_qt.po b/poqm/eu/kconfig6_qt.po new file mode 100644 index 0000000..fcecab3 --- /dev/null +++ b/poqm/eu/kconfig6_qt.po @@ -0,0 +1,1083 @@ +# Translation for kconfig5_qt.po to Euskara/Basque (eu). +# Copyright (C) 2017-2024 This file is copyright: +# This file is distributed under the same license as the original file. +# SPDX-FileCopyrightText: 2023, 2024 KDE euskaratzeko proiektuko arduraduna +# +# Translators: +# Osoitz , 2017. +# Ander Elortondo , 2017. +# Iñigo Salvador Azurmendi , 2017, 2018, 2019, 2020, 2022, 2023, 2024. +msgid "" +msgstr "" +"Project-Id-Version: \n" +"PO-Revision-Date: 2024-07-15 23:38+0200\n" +"Last-Translator: Iñigo Salvador Azurmendi \n" +"Language-Team: Basque \n" +"Language: eu\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Qt-Contexts: true\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Lokalize 24.05.2\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Mesedez, Jarri zure sistemaren administratzailearekin harremanean." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "\"%1\" konfigurazio fitxategia ezin da idatzi.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Lehenetsia" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "At&zera" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Aurrera" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Hasiera" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Berria" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Sortu dokumentu berria" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Ireki..." + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Ireki dagoen dokumentu bat" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Ireki a&zken aldikoa" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Ireki berriki ireki den dokumentu bat" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Gorde" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Gorde dokumentua" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Gorde &honela..." + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Gorde dokumentua izen berri batekin" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "&Leheneratu" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Leheneratu dokumentuari egindako gorde gabeko aldaketak" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Itxi" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Itxi dokumentua" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "In&primatu..." + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Inprimatu dokumentua" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Inprimatze a&urreikuspegia..." + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Erakutsi dokumentuaren inprimaketa aurreikuspegi bat" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Posta..." + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Bidali dokumentua posta bidez" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Irten" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Irten aplikaziotik" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Desegin" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Desegin azken ekintza" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "&Berregin" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Berregin desegindako azken ekintza" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "E&baki" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Ebaki hautapena arbelera" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Kopiatu" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Kopiatu hautapena arbelean" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "I&tsatsi" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Itsatsi arbeleko edukia" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "&Garbitu" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Hautatu den&a" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "&Deshautatu" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Aurkitu..." + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Aurkitu &hurrengoa" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Aurkitu &aurrekoa" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "O&rdeztu..." + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Zoom &benetako neurrira" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Ikusi dokumentua bere egiazko neurrian" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Orrialdera e&gokitu" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Zoom egin orria leihora egokitzeko" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Orri-zabalerara e&gokitu" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Zoom egin orriaren zabalera leihora egokitzeko" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Orri-&luzeerara egokitu" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Zoom egin orriaren luzeera leihora egokitzeko" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Zooma &gerturatu" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Zooma &urrundu" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Zooma..." + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Hautatu zoom-maila" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "Be&rritu" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Berritu dokumentua" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Gora" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Joan gora" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Aurreko orrialdea" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Joan aurreko orrialdera" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Hurrengo orrialdea" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Joan hurrengo orrialdera" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Joan..." + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Joan ...orrialdera" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Joan ...lerrora" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Lehen orrialdea" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Joan lehenengo orrialdera" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "A&zken orrialdea" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Joan azken orrialdera" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "At&zera" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Joan dokumentuan atzerantz" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Aurrera" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Joan dokumentuan aurrerantz" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Gehitu laster-marka" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Editatu laster-markak..." + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Ortografia..." + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Dokumentuan ortografia aztertu" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Erakutsi &menu-barra" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Erakutsi edo ezkutatu menu-barra" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Erakutsi &tresna-barra" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Erakutsi edo ezkutatu tresna-barra" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Erakutsi egoer&a-barra" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Erakutsi edo ezkutatu egoera-barra" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Pantaila &osoko modua" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Konfiguratu teklatuko &lasterbideak..." + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Konfiguratu %1..." + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Konfiguratu tresna-&barrak..." + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Konfiguratu &jakinarazpenak..." + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1 &eskuliburua" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Zer da &hau?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Akats baten &berri eman…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Konfiguratu &hizkuntza..." + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "%1(e)ri &buruz" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "&KDEri buruz" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "E&zabatu" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Be&rrizendatu..." + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Bota zakarrontzira" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Egin &dohaintza" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Ireki &menua" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Ireki" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Berria" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Itxi" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Gorde" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Inprimatu" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Irten" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Desegin" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Berregin" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Ebaki" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopiatu" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Itsatsi" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Itsatsi hautapena" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Hautatu guztiak" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Desautatu" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Ezabatu hitz atzerantza" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Ezabatu hitz aurrerantz" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Bilatu" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Bilatu hurrengoa" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Bilatu aurrekoa" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Ordeztu" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Hasiera" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Hasi" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Amaitu" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Aurrekoa" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Hurrengoa" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Gora" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Atzera" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Aurrera" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Birkargatu" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Lerroaren hasiera" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Lerroaren amaiera" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Joan lerrora" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Hitza atzerantz" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Hitza aurrerantz" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Gehitu laster-marka" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Zooma handiagotu" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Zooma txikiagotu" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Pantaila osoko modua" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Erakutsi menu-barra" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Aktibatu hurrengo fitxa" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Aktibatu aurreko fitxa" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Laguntza" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Zer da hau" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Testu-osaketa" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Aurreko osatze bat-etortzea" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Hurrengo osatze bat-etortzea" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Azpi-kateen osaketa" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Zerrendako aurreko elementua" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Zerrendako hurrengo elementua" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Ireki oraintsukoa" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Gorde honela" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Leheneratu" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Inprimatze-aurrebista" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Posta" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Garbitu" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Zoom benetako neurrira" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Doitu orriari" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Doitu zabalerara" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Doitu garaierara" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Zooma" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Joan hona" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Joan orrira" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Dokumentua atzera" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Dokumentua aurrera" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Editatu gogokoak" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Ortografia" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Erakutsi tresna-barra" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Erakutsi egoera-barra" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Tekla-konbinazioak" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Konfiguratu aplikazioa" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Konfiguratu tresna-barrak" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Konfiguratu jakinarazpenak" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Eman errorearen berri" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Konfiguratu hizkuntza..." + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Aplikazioari buruz" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "KDEri buruz" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Ezabatu" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Berrizendatu" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Bota zakarrontzira" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Egin dohaintza" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Erakutsi/ezkutatu ezkutuko fitxategiak" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Sortu karpeta" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Ireki menu nagusia" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Ireki testuinguru-menua" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Konfigurazio fitxategiak eguneratzeko KDE tresna" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Mantendu scriptaren irteera emaitzak" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Proba unitarioetarako bakarrik: ez idatzi egindako sarrerak, exekuzio berri " +"bakoitzarekin gidoiak berriz exekutatu daitezen." + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" +"Egiaztatu ea konfigurazio fitxategiak bere burua eguneratzea eskatzen duen. " + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Eguneratzeko jarraibideak irakurtzeko fitxategia(k)" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Fitxategiak sortzeko direktorioa [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "direktorioa" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Bistaratu software-lizentzia" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Erabili , konfigurazio globalaren ordez" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Begiratu beharreko taldea. root talderako \"\" erabili, edo " +"habiaratutako taldeetarako behin eta berriz erabili." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Bilatu beharreko gakoa" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Balio lehenetsia" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Aldagai mota" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Talde-izena ezin da hutsik egon, erabili \"\" root talderako" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Aldagai mota. Erabili \"bool\" aldagai boolearrentzat; bestela, kate gisa " +"tratatuko da" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Ezabatu izendatutako gakoa aktibo egonez gero" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Idatzi beharreko balioa. Derrigorrezkoa da. Shell-etan, erabili '' hutsik " +"uzteko" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Eguneko aholkua" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Unitate probatarako bakarrik: erabili proba karpetak salbu mantentzeko " +#~ "erabiltzailearen fitxategi errealak." + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Gorde aukerak" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Aldatu aplikazioaren hizkuntza" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Hobespenak" diff --git a/poqm/fa/kconfig6_qt.po b/poqm/fa/kconfig6_qt.po new file mode 100644 index 0000000..03ea2d1 --- /dev/null +++ b/poqm/fa/kconfig6_qt.po @@ -0,0 +1,1097 @@ +# translation of kwriteconfig.po to Persian +# Nazanin Kazemi , 2006. +# MaryamSadat Razavi , 2006. +# Nasim Daniarzadeh , 2006. +# Mohamad Reza Mirdamadi , 2011. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2011-09-25 19:57+0330\n" +"Last-Translator: Mohamad Reza Mirdamadi \n" +"Language-Team: Farsi (Persian) <>\n" +"Language: fa\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 1.2\n" +"Plural-Forms: nplurals=2; plural=(n==0 || n==1);\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "گروه برای جستجو" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "گروه برای جستجو" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "گروه برای جستجو" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "گروه برای جستجو" + +#: gui/kstandardshortcut.cpp:181 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "گروه برای جستجو" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "استفاده از به جای پیکربندی سراسری" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "Group to look in. Use repeatedly for nested groups." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "کلید برای جستجو" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"نوع متغیر. از «bool» برای مقدار بولی استفاده کنید. در غیر این صورت، به عنوان " +"یک رشته تلقی می‌شود" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "مقدار برای نوشتن. الزامی است که در پوسته، برای خالی از » استفاده کنید" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "نوشتن مدخلهای KConfig - برای استفاده در دست‌نوشته‌های پوسته" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(Ø­) Û²Û°Û°Û± شرکت Red Hat و Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "kreadconfig را نوشت که این بر اساس آن است" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "نازنین کاظمی" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "kazemi@itland.ir" diff --git a/poqm/fi/kconfig6_qt.po b/poqm/fi/kconfig6_qt.po new file mode 100644 index 0000000..c7eaba3 --- /dev/null +++ b/poqm/fi/kconfig6_qt.po @@ -0,0 +1,1290 @@ +# Lasse Liehu , 2014, 2015, 2016, 2017. +# Tommi Nieminen , 2018, 2020, 2022, 2023. +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2023-12-11 15:18+0200\n" +"Last-Translator: Tommi Nieminen \n" +"Language-Team: Finnish \n" +"Language: fi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Lokalize 22.12.3\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Ota yhteyttä järjestelmän ylläpitäjääsi." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Asetustiedostoon ”%1” ei voi kirjoittaa.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Oletus" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Takaisin" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Eteenpäin" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Koti" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Avaa" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Avaa viimeaikainen" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Tallenna" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Tallenna nimellä" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Palauta" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Sulje" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Tulosta" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Tulostuksen esikatselu" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Sähköpostita" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Lopeta" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Tietoa ohjelmasta" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Kumoa" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Kopioi" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Liitä" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Tyhjennä" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Valitse kaikki" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Poista valinta" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Etsi" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Etsi seuraava" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Etsi edellinen" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Korvaa" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom to Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Lähennä todelliseen kokoon" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Sovita sivulle" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Sovita leveyteen" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Sovita korkeuteen" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Lähennä" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Loitonna" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Lähennä" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Valitse kaikki" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Ylös" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Siirry sivulle" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Siirry riville" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Siirry sivulle" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Siirry riville" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Sovita sivulle" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Siirry riville" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Siirry sivulle" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Takaisin" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Eteenpäin" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Lisää kirjanmerkki" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Muokkaa kirjanmerkkejä" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Oikeinkirjoitus" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Näytä valikkorivi" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Näytä valikkorivi" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Näytä työkalurivi" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Näytä työkalurivi" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Näytä tilarivi" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Näytä tilarivi" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Koko näytön tila" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "Kieliasetukset…" + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Muokkaa työkalurivejä" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Muokkaa ilmoituksia" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Mikä tämä on" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Ilmoita viasta" + +#: gui/kstandardactions_p.h:135 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Kieliasetukset…" + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Tietoa KDE:stä" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Tietoa KDE:stä" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Poista" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Muuta nimeä" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Siirrä roskakoriin" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Lahjoita" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "" +#| "KStandardShortcut|@action referring to the menu bar or a hamburger menu" +#| msgid "Open Main Menu" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Avaa päävalikko" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Avaa" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Uusi" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Sulje" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Tallenna" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Tulosta" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Lopeta" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Kumoa" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Tee uudelleen" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Leikkaa" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopioi" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Liitä" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Liitä valinta" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Valitse kaikki" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Poista valinta" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Poista edellinen sana" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Poista seuraava sana" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Etsi" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Etsi seuraava" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Etsi edellinen" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Korvaa" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Koti" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Alku" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Loppu" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Edellinen" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Seuraava" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Ylös" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Takaisin" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Eteenpäin" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Lataa uudelleen" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Rivin alku" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Rivin loppu" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Siirry riville" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Edellinen sana" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Seuraava sana" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Lisää kirjanmerkki" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Lähennä" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Loitonna" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Koko näytön tila" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Näytä valikkorivi" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Aktivoi seuraava välilehti" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Aktivoi edellinen välilehti" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Ohje" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Mikä tämä on" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Tekstin täydennys" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Edellinen täydennysosuma" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Seuraava täydennysosuma" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Osamerkkijonon täydennys" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Edellinen kohta luettelossa" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Seuraava kohta luettelossa" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Avaa viimeaikainen" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Tallenna nimellä" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Palauta" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Tulostuksen esikatselu" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Sähköpostita" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Tyhjennä" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Lähennä todelliseen kokoon" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Sovita sivulle" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Sovita leveyteen" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Sovita korkeuteen" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Lähennä" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Siirry" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Siirry sivulle" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Tiedosto taaksepäin" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Tiedosto eteenpäin" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Muokkaa kirjanmerkkejä" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Oikeinkirjoitus" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Näytä työkalurivi" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Näytä tilarivi" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Näppäinyhdistelmät" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Sovelluksen asetukset" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Muokkaa työkalurivejä" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Muokkaa ilmoituksia" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Ilmoita viasta" + +#: gui/kstandardshortcut.cpp:373 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Kieliasetukset…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Tietoa ohjelmasta" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Tietoa KDE:stä" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Poista" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Muuta nimeä" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Siirrä roskakoriin" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Lahjoita" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Näytä tai piilota piilotiedostot" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Luo kansio" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Avaa päävalikko" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Avaa kontekstivalikko" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE-työkalu käyttäjän asetustiedostojen päivittämiseen" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Säilytä skriptien tulosteet" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Vain yksikkötesteille: älä kirjoita valmiita tietueita, jotta skriptit " +"suoritetaan joka ajossa uudelleen" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Tarkista, tarvitseeko itse asetustiedosto päivitystä" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Tiedostot, joista päivitysohjeet luetaan" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "hakemisto, johon tiedostot luodaan [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "hakemisto" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Näytä ohjelmiston lisenssi." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Käytä järjestelmänlaajuisten asetusten sijasta" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Ryhmä, josta etsitään. Juuriryhmälle ”” tai käytä sisäkkäisiä " +"ryhmiä toistuvasti." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Etsittävä arvo" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Oletusarvo" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Muuttujan tyyppi" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "Ryhmän nimi ei voi olla tyhjä; käytä juuriryhmälle ””" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Muuttujan tyyppi. ”bool” Boolen arvoille. Muutoin tämä tulkitaan " +"merkkijonoksi" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Poista kytketty näppäin, jos käytössä" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Kirjoitettava arvo. Pakollinen. Komentotulkissa tyhjä arvo kirjoitetaan ''" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Päivän vinkki" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Vain yksikkötestejä varten: käytä testikansioita käyttäjän oikeiden " +#~ "tiedostojen sijaan" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Tallenna asetukset" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Vaihda kieltä" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Asetukset" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Kirjoita KConfig-tietueet - käytettäväksi komentotulkkiskripteissä" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "© 2001 Red Hat, Inc. ja Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Kirjoitti kreadconfig-ohjelman, johon tämä pohjautuu" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/fr/kconfig6_qt.po b/poqm/fr/kconfig6_qt.po new file mode 100644 index 0000000..388d1b8 --- /dev/null +++ b/poqm/fr/kconfig6_qt.po @@ -0,0 +1,1115 @@ +# translation of kwriteconfig.po to Français +# translation of kwriteconfig.po to +# traduction de kwriteconfig.po en Français +# Copyright (C) 2003, 2007, 2008 Free Software Foundation, Inc. +# Charles de Miramon , 2003. +# Delafond , 2003. +# J. Cornavin , 2007. +# Sébastien Renard , 2008. +# Joëlle Cornavin , 2008. +# SPDX-FileCopyrightText: 2013, 2024 Xavier Besnard +# Maxime Corteel , 2014, 2015. +# Vincent Pinon , 2016, 2017. +# Simon Depiets , 2018, 2020. +# SPDX-FileCopyrightText: 2020, 2021, 2022, 2023 Xavier Besnard +# Xavier Besnard , 2023. +# +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-05-23 11:22+0200\n" +"Last-Translator: Xavier Besnard \n" +"Language-Team: French >\n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Accelerator-Marker: &\n" +"X-Environment: kde\n" +"X-Generator: Lokalize 23.08.5\n" +"X-Qt-Contexts: true\n" +"X-Text-Markup: qtrich\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Veuillez contacter l'administrateur du système." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Impossible d'écrire dans le fichier de configuration « %1 ».\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Par défaut" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "Re&venir en arrière" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Suivant" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "A&ccueil" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Nouveau" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Créer un nouveau document" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Ouvrir..." + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Ouvrir un document existant" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Ouvrir un fichier &récent" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Ouvrir un document récemment ouvert" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Enregi&strer" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Enregistrer le document" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "&Enregistrer sous" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Enregistrer le document sous un nouveau nom" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Annu&ler" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Annuler les modifications non enregistrées apportées au document" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Fermer" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Fermer un document" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Im&primer" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Imprimer un document" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Aperçu ava&nt impression" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Afficher un aperçu avant impression du document" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Envoyer par &courriel…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Envoie un document par courriel" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Quitter" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Quitter l'application" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Ann&uler" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Annuler la dernière action" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Re&faire" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Refaire la dernière action annulée" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "Cou&per" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Couper la sélection vers le presse-papier" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Copier" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Copier la sélection dans le presse-papier" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Co&ller" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Coller le contenu du presse-papier" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "E&ffacer" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "T&out sélectionner" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Dé-sé&lectionner" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Trouver..." + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Trouver l'occurre&nce suivante" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Trou&ver l'occurrence précédente" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Remplacer..." + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Zoomer jusqu'à la taille &actuelle" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Afficher le document dans sa taille courante" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "A&juster à la taille de la page" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Zoomer pour ajuster la page à la fenêtre" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Ajuster à la lar&geur de la page" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Zoomer pour adapter la largeur de page à la fenêtre" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Ajuster à la &hauteur de la page" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Zoomer pour adapter la hauteur de page à la fenêtre" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Agrand&ir" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Z&oomer en arrière" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Zoomer…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Sélectionner le niveau de zoom" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Rafraîchir" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Rafraîchir le document" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Ha&ut" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Monter" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Page précédente" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Se déplacer à la page précédente" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Page suiva&nte" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Se déplacer à la page suivante" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "Se dé&placer vers..." + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Se déplacer vers une pa&ge..." + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Se déplacer vers une li&gne..." + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Première page" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Se déplacer à la première page" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "&Dernière page" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Se déplacer à la dernière page" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Re&venir en arrière" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Se déplacer en arrière dans le document" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Sui&vant" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Se déplacer en avant dans le document" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Ajouter un signet" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Édit&er les signets..." + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Vérification orthographique…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Vérifier l'orthographe dans le document" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Afficher la barre de &menus" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Afficher ou masquer la barre de menus" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Afficher la barre d'ou&tils" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Afficher ou masquer la barre d'outils" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Afficher la b&arre d'état" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Afficher ou masquer la barre d'état" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "M&ode plein écran" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Confi&gurer les raccourcis de clavier…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "Configurer %1..." + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Configurer les &barres d'outils" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Configurer les ¬ifications..." + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "&Manuel utilisateur de %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Qu'est-ce que c'es&t ?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Signale&r un bogue..." + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Configurer &la langue..." + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&À propos de %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "À propos de &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Supprimer" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Renommer..." + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Dé&placer dans la corbeille" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Effectuer un &don" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Ouvrir le &menu" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Ouvrir" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Nouveau" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Fermer" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Enregistrer" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Imprimer" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Quitter" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Annuler" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Refaire" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Couper" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Copier" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Coller" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Coller la sélection" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Tout sélectionner" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Désélectionner" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Supprimer un mot vers l'arrière" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Supprimer un mot vers l'avant" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Trouver" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Trouver l'occurrence suivante" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Trouver l'occurrence précédente" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Remplacer" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Accueil" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Début" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Fin" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Précédent" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Suivant" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Haut" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Revenir en arrière" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Suivant" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Recharger" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Début de la ligne" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Fin de la ligne" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Aller à la ligne" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Passer un mot vers l'arrière" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Passer un mot vers l'avant" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Ajouter un signet" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Agrandir" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Rétrécir" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Mode plein écran" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Afficher la barre de menu" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Activer l'onglet suivant" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Activer l'onglet précédent" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Aide" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Qu'est-ce que c'est ?" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Complètement du texte" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Proposition de complètement précédente" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Proposition de complètement suivante" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Complètement partiel" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Élément précédent de la liste" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Élément suivant de la liste" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Ouvrir un fichier récent" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Enregistrer sous" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Revenir" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Aperçu avant impression" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Courriel" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Effacer" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Zoomer jusqu'à la taille actuelle" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Ajuster à la taille de la page" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Ajuster à la largeur de la page" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Ajuster à la hauteur de la page" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Agrandir" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Aller à" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Aller à la page" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Reculer dans le document" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Avancer dans le document" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Éditer les signets" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Orthographe" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Afficher la barre d'outil" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Afficher la barre d'état" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Raccourcis clavier" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Configurer l'application" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Configurer les barres d'outil" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Configurer les notifications" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Rapport de bogue" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Configurer votre langue..." + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "À propos de l'application" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "À propos de KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Supprimer" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Renommer" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Déplacer dans la corbeille" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Faire un don pour le projet" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Afficher / Masquer les fichiers cachés" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Créer un dossier" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Ouvrir le menu principal" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Ouvrir le menu contextuel" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Outil de KDE pour l'édition des fichiers de configuration" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Conserver le résultat de la sortie des scripts" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Pour les tests unitaires uniquement : ne pas écrire les entrées terminées, " +"de sorte qu'à chaque nouvelle exécution, les scripts sont lancés à nouveau." + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" +"Vérifier si le fichier de configuration nécessite lui-même une mise à jour" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Fichier(s) à partir desquels lire les instructions de mise à jour" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Dossier de génération des fichiers [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "dossier" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Afficher la licence du logiciel." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Utiliser au lieu de la configuration globale" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Groupe à examiner. Veuillez utiliser «  » pour le groupe " +"d'administrateur ou utiliser de façon répétitive pour les groupes imbriqués." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Clé à chercher" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Valeur par défaut" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Type de variable" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Le nom de groupe ne peut être vide. Veuillez utiliser «  » pour le " +"groupe d'administrateur" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Type de la variable. Utiliser « bool » pour une variable booléenne, sinon " +"elle sera considérée comme une chaîne" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Supprimer la clé désignée si activé" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"La valeur à écrire. Elle est obligatoire. Dans le shell, utilisez un " +"guillemet double, pour représenter une valeur vide" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Astuce du jour" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Pour les tests unitaires seulement : utiliser des dossiers de test pour " +#~ "éviter les vrais fichiers utilisateur" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Enregistrer les options" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Changer la langue de l'application" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Préférences" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "" +#~ "Écrire des éléments pour KConfig - à utiliser dans des scripts shell" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Écriture du « kreadconfig » pour cette application" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/fy/kconfig6_qt.po b/poqm/fy/kconfig6_qt.po new file mode 100644 index 0000000..776ba51 --- /dev/null +++ b/poqm/fy/kconfig6_qt.po @@ -0,0 +1,1077 @@ +# translation of kwriteconfig.po to Frysk +# +# Rinse de Vries , 2005, 2009. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2009-12-13 00:11+0100\n" +"Last-Translator: Berend Ytsma \n" +"Language-Team: Frysk \n" +"Language: fy\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr " brûke yn plak fan globale konfiguraasje" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "Groep om yn te sjen. Brûk dit stees opnij foar ynsletten groepen." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Term om nei te sykjen" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Fariabeletype. Brûk \"bool\" foar in boleaanske wearde, oars wurd dit " +"behannele as in tekenrige." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "De wearde om te skriuwen. Brûk op in shell altyd '' foar leech." + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Skriuw KConfig-yngongen - foar brûk fan yn shell-scripts." + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Hat kreadconfig skreaun wêrop dit bassearre is" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/ga/kconfig6_qt.po b/poqm/ga/kconfig6_qt.po new file mode 100644 index 0000000..f463158 --- /dev/null +++ b/poqm/ga/kconfig6_qt.po @@ -0,0 +1,1097 @@ +# Irish translation of kwriteconfig +# Copyright (C) 2009 This_file_is_part_of_KDE +# This file is distributed under the same license as the kwriteconfig package. +# Kevin Scannell , 2009. +msgid "" +msgstr "" +"Project-Id-Version: kdebase/kwriteconfig.po\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2004-12-03 14:52-0500\n" +"Last-Translator: Kevin Scannell \n" +"Language-Team: Irish \n" +"Language: ga\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=5; plural=n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n < 11 ? " +"3 : 4\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Grúpa le féachaint ann" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Grúpa le féachaint ann" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Grúpa le féachaint ann" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Grúpa le féachaint ann" + +#: gui/kstandardshortcut.cpp:181 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Grúpa le féachaint ann" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Úsáid in ionad na cumraíochta comhchoitinne" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Grúpa le cuardach. Úsáid arís agus arís eile le haghaidh grúpaí neadaithe." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Eochair le lorg" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Cineál na hathróige. Úsáid \"bool\" le haghaidh athróige Boole, i ngach cás " +"eile is teaghrán é" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Luach le scríobh. Riachtanach, i mblaosc úsáid '' do theaghrán folamh" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Scríobh iontrálacha KConfig - le haghaidh scripteanna blaoisce" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "© 2001 Red Hat, Inc. agus Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Údar kreadconfig, ar ar bunaíodh an clár seo" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "Séamus Ó Ciardhuáin,Kevin Scannell" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "seoc@iolfree.ie,kscanne@gmail.com" diff --git a/poqm/gd/kconfig6_qt.po b/poqm/gd/kconfig6_qt.po new file mode 100644 index 0000000..92bf4a1 --- /dev/null +++ b/poqm/gd/kconfig6_qt.po @@ -0,0 +1,1258 @@ +# GunChleoc , 2014, 2015. +msgid "" +msgstr "" +"Project-Id-Version: \n" +"POT-Creation-Date: \n" +"PO-Revision-Date: 2015-11-04 15:11+0000\n" +"Last-Translator: Michael Bauer \n" +"Language-Team: Fòram na Gàidhlig\n" +"Language: gd\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : " +"(n > 2 && n < 20) ? 2 : 3;\n" +"X-Generator: Poedit 1.8.4\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Cuir fios gu rianaire an t-siostaim agad." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Cha ghabh sgrìobhadh san fhaidhle rèiteachaidh \"%1\".\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Tùsail" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Air ais" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Air adhart" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Dhachaigh" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Fosgail" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Fosgail nì o chionn goirid" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Sàbhail" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Sàbhail mar" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Till" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Dùin" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Clò-bhuail" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Ro-shealladh a' chlò-bhualaidh" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Cuir air a' phost-d" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Fàg an-seo" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Mun aplacaid seo" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Neo-dhèan" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Dèan lethbhreac" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Cuir ann" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Falamhaich" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Tagh na h-uile" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Neo-thagh" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Lorg" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Lorg an ath fhear" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Lorg am fear roimhe" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Cuir 'na àite" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "An dearbh mheud" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Co-fhreagair ris an duilleag" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Co-fhreagair ris an leud" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Co-fhreagair ris an àirde" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Sùm a-steach" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Sùm a-mach" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Sùm" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Tagh na h-uile" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Suas" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Rach gu duilleag" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Rach gu loidhne" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Rach gu duilleag" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Rach gu loidhne" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Co-fhreagair ris an duilleag" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Rach gu loidhne" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Rach gu duilleag" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Air ais" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Air adhart" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Cuir comharra-leabhair ris" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Deasaich na comharran-leabhair" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Dearbhadh an litreachaidh" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Seall bàr clàr-taice" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Seall bàr clàr-taice" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Seall am bàr-inneal" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Seall am bàr-inneal" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Seall am bàr-staid" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Seall am bàr-staid" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Modh làn-sgrìn" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Rèitich na bàraichean-inneal" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Rèitich na brathan" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Dè th' ann?" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Dèan aithris air buga" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Mu KDE" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Mu KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Fosgail nì o chionn goirid" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Fosgail" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Ùr" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Dùin" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Sàbhail" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Clò-bhuail" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Fàg an-seo" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Neo-dhèan" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Ath-dhèan" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Gearr às" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Dèan lethbhreac" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Cuir ann" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Cuir ann na thagh thu" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Tagh na h-uile" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Neo-thagh" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Sguab às facal roimhe" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Sguab às facal às a dhèidh" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Lorg" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Lorg an ath fhear" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Lorg am fear roimhe" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Cuir 'na àite" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Dhachaigh" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "An toiseach" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "An deireadh" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "An nì roimhe" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "An ath nì" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Suas" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Air ais" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Air adhart" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Ath-luchdaich" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Toiseach na loidhne" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Deireadh na loidhne" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Rach gu loidhne" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Facal air ais" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Facal air adhart" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Cuir comharra-leabhair ris" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Sùm a-steach" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Sùm a-mach" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Modh làn-sgrìn" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Seall bàr clàr-taice" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Gnìomhaich an ath thaba" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Gnìomhaich an taba roimhe" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Cobhair" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Dè th' ann?" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Coileanadh teacsa" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Am maidse roimhe" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "An ath mhaidse" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Coileanadh fo-shreinge" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "An nì roimhe air an liosta" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "An ath nì air an liosta" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Fosgail nì o chionn goirid" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Sàbhail mar" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Till" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Ro-shealladh a' chlò-bhualaidh" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Cuir air a' phost-d" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Falamhaich" + +#: gui/kstandardshortcut.cpp:299 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "An dearbh mheud" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Co-fhreagair ris an duilleag" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Co-fhreagair ris an leud" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Co-fhreagair ris an àirde" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Sùm" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Rach gu" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Rach gu duilleag" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "An sgrìobhainn roimhpe" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "An ath sgrìobhainn" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Deasaich na comharran-leabhair" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Dearbhadh an litreachaidh" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Seall am bàr-inneal" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Seall am bàr-staid" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Nasgadh nan iuchraichean" + +#: gui/kstandardshortcut.cpp:348 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Rèitich na brathan" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Rèitich na bàraichean-inneal" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Rèitich na brathan" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Dèan aithris air buga" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Mun aplacaid seo" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Mu KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Inneal KDE gus faidhlichean rèiteachaidh a' chleachdaiche ùrachadh" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Cum toraidhean às-chuir o sgriobtaichean" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Thoir sùil a bheil am faidhle rèiteachaidh fhèin feumach air ùrachadh" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Faidhle/Faidhlichean gus stiùireadh an ùrachaidh a leughadh uapa" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Am pasgan sa thèid na faidhlichean a ghintinn ann [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "pasgan" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Seall ceadachas a' bhathair-bhog" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Cleachd an àite an rèiteachaidh uile-choitchinn" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgctxt "main|" +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Am buidheann sa thèid a lorg. Cleachd iomadh turas airson bhuidhnean " +"neadaichte." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "An iuchair a thèid a shireadh" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "An luach tùsail" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Seòrsa a' chaochladair" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Seòrsa a' chaochladair. Cleachd \"bool\" airson booleach air neo thèid " +"dèiligeadh ris mar shreang." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"An luach a thèid a sgrìobhadh. Tha seo riatanach, cleachd '' air shell " +"airson luach falamh." + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Gliocas an latha" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Airson unit tests a-mhàin: cleachd pasganan deuchainne gus cumail air " +#~ "falbh o dhearbh-fhaidhlichean a' chleachdaiche" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Sàbhail na roghainnean" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Atharraich cànan na h-aplacaid" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Roghainnean" diff --git a/poqm/gl/kconfig6_qt.po b/poqm/gl/kconfig6_qt.po new file mode 100644 index 0000000..0185ee0 --- /dev/null +++ b/poqm/gl/kconfig6_qt.po @@ -0,0 +1,1105 @@ +# translation of kwriteconfig.po to galician +# Copyright (C) 2004, 2007, 2008, 2009 Free Software Foundation, Inc. +# Littleagle Thoronaug , 2004. +# mvillarino , 2007, 2008, 2009. +# marce villarino , 2009. +# Marce Villarino , 2009, 2014. +# Adrián Chaves Fernández , 2015, 2017. +# SPDX-FileCopyrightText: 2023, 2024 Adrián Chaves (Gallaecio) +# +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-05-25 09:57+0200\n" +"Last-Translator: Adrián Chaves (Gallaecio) \n" +"Language-Team: Proxecto Trasno (proxecto@trasno.gal)\n" +"Language: gl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Lokalize 24.02.2\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Contacte co equipo administrador do sistema." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "O ficheiro de configuración «%1» non permite escritura.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Predeterminado" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Atrás" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "A&diante" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Inicio" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Novo" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Crear un novo documento" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Abrir…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Abrir un documento existente" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Abrir un &recente" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Abrir un documento aberto recentemente" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Gardar" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Gardar o documento" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Gardar &como…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Garda o documento con outro nome" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Re&verter" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Anula os cambios non gardados que fixese no documento" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Pechar" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Pechar o documento" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Imprimir…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Imprimir o documento" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Vista de impresión" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Mostra unha vista previa do documento" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Correo…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Enviar o documento por correo electrónico" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Saír" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Saír da aplicación" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Desfacer" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Desfacer a última acción" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Re&facer" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Refacer a última acción desfeita" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "Cor&tar" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Corta a selección e pona no portapapeis" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Copiar" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Copiar a selección no portapapeis" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Pegar" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Pegar o contido do portapapeis" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "&Baleirar" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Seleccion&alo todo" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Anular a se&lección" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Atopar…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Atopar a &seguinte" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Atopar a &anterior" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Substituír…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "&Ampliar ao tamaño real" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Ver o documento co tamaño real" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Axustar á páxina" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Axustar o tamaño da páxina ao da xanela" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Axustar á a&nchura da páxina" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Axustar a anchura da páxina á da xanela" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Axustar á &altura da páxina" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Axustar a altura da páxina á da xanela" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Ampl&iar" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Re&ducir" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Ampliación…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Seleccionar o nivel de ampliación" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Actualizar" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Actualizar o documento" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Subir" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Subir" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "Páxina &anterior" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Ir á páxina anterior" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Segui&nte páxina" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Ir á seguinte páxina" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Ir a…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Ir á páxina…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Ir á liña…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Primeira páxina" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Ir á primeira páxina" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Última pá&xina" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Ir á última páxina" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Atrás" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Retroceder no documento" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "A&vanzar" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Avanzar no documento" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Eng&adir un marcador" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Editar os marcadores…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Ortografía…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Comprobar a ortografía do documento" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Amosar a barra de &menú" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Amosar ou agochar a barra de menú" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Amosar a barra de &ferramentas" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Amosar ou agochar a barra de ferramentas" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Amosar a barra de &estado" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Amosar ou agochar a barra de estado" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Modo a pantalla &completa" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Confi&gurar os atallos de teclado…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Configurar %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Configurar as &barras de ferramentas…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Configurar as ¬ificacións…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "&Manual de %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Que é &isto?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Informar dun &fallo…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Configurar o &idioma…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&Sobre %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Sobre &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Eliminar" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Renomear…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Botar no lixo" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Doar" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Abre o &menú" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Abrir" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Novo" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Pechar" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Gardar" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Imprimir" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Saír" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Desfacer" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Refacer" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Cortar" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Copiar" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Pegar" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Pegar a selección" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Seleccionar todo" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Anular a selección" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Eliminar unha palabra cara atrás" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Eliminar unha palabra cara diante" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Atopar" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Atopar a seguinte" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Atopar a anterior" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Substituír" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Inicio" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Comezo" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Final" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Anterior" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Seguinte" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Subir" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Atrás" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Avanzar" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Recargar" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Inicio da liña" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Fin da liña" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Ir á liña" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Palabra anterior" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Seguinte palabra" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Engadir un marcador" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Ampliar" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Reducir" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Modo a pantalla completa" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Amosar a barra de menú" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Activar a seguinte lapela" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Activar a lapela anterior" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Axuda" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Que é isto" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Completación de textos" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Anterior coincidencia de completación" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Seguinte coincidencia de completación" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Completación de subcadeas" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Anterior elemento da lista" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Seguinte elemento da lista" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Abrir un recente" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Gardar como" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Reverter" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Vista de impresión" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Correo" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Limpar" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Ampliar ao tamaño real" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Axustar á páxina" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Axustar á anchura da páxina" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Axustar ao alto da páxina" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Ampliación" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Ir a" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Ir á páxina" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Retroceder no documento" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Avanzar no documento" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Editar os marcadores" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Ortografía" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Amosar a barra de ferramentas" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Amosar a barra de estado" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Asociacións de teclas" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Configurar a aplicación" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Configurar as barras de ferramentas" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Configurar as notificacións" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Informar dun fallo" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Configurar o idioma…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Sobre a aplicación" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Sobre KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Eliminar" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Renomear" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Botar no lixo" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Doar" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Amosar ou agochar os ficheiros agochados" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Crear un cartafol" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Abrir o menú principal" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Abrir o menú contextual" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" +"Ferramenta de KDE para actualizar os ficheiros de configuración da persoa " +"usuaria." + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Conservar a saída dos guións" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Só para probas unitarias: non escribir as entradas feitas, para que os " +"guións se executen de novo cada vez" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Comprobar se o ficheiro de configuración precisa actualizarse" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Ficheiros dos que ler as instrucións de actualización." + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "O cartafol no que xerar os ficheiros [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "cartafol" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Amosa a licenza do soporte lóxico." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Usar en troques da configuración global" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"O grupo no que buscar. Use «» para o grupo raíz, ou úseo " +"repetidamente para grupos aniñados." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "A chave que se ha buscar" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Valor predeterminado" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Tipo de variábel" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"O nome de grupo non pode estar baleiro, use «» para o grupo " +"raíz" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Tipo da variábel. Use «bool» para un booleano, se non, é tratado como unha " +"cadea" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Eliminar a tecla designada se escolle esta opción." + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"O valor para escribir. Obrigatorio, use '' nun intérprete de ordes para " +"deixalo baleiro." + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Consello do día" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Só para probas unitarias: usar directorios de proba para evitar os " +#~ "ficheiros reais do usuario." + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Opcións de garda" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Cambiar o idioma da aplicación" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Preferencias" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Escribe entradas KConfig, para uso en scripts da shell" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Escribiu kreadconfig no que nos baseamos para este programa" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/gu/kconfig6_qt.po b/poqm/gu/kconfig6_qt.po new file mode 100644 index 0000000..033ebf5 --- /dev/null +++ b/poqm/gu/kconfig6_qt.po @@ -0,0 +1,1077 @@ +# translation of kwriteconfig.po to Gujarati +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# Sweta Kothari , 2008. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2008-07-16 14:06+0530\n" +"Last-Translator: Kartik Mistry \n" +"Language-Team: Gujarati\n" +"Language: gu\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=2; plural=(n!=1);\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "વૈશ્વીક રૂપરેખાંકનને બદલ વાપરો" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "શોધવા માટેનો સમૂહ. વણાયેલ સમૂહો માટે વારંવાર વાપરો." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "શોધવા માટેની કળ" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "ચલનો પ્રકાર. બુલિયન માટે \"bool\" વાપરો, અથવા તે સ્ટ્રિંગ તરીકે જોવામાં આવશે" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "લખવાની કિંમત. ખાલી માટે \" શૅલ વપરાશ પર, જરૂરી" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "KConfig દાખલાઓ લખો - શૅલ સ્ક્રિપ્ટ્સમાં ઉપયોગ માટે" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) ૨૦૦૧ રેડ હેટ, ઇન્ક. અને લુઇસ પેડ્રો કોએલ્હો" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "kreadconfig લખ્યું જેના પર આ આધારિત છે " + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "લુઇસ પેડ્રો કોએલ્હો" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "બર્નહાર્ડ રોસેનક્રેન્ઝર" diff --git a/poqm/he/kconfig6_qt.po b/poqm/he/kconfig6_qt.po new file mode 100644 index 0000000..889898f --- /dev/null +++ b/poqm/he/kconfig6_qt.po @@ -0,0 +1,1061 @@ +# translation of kwriteconfig.po to hebrew +# Copyright (C) 2003, 2008 Free Software Foundation, Inc. +# +# Dror Levin , 2003. +# Shlomi Loubaton , 2003. +# tahmar1900 , 2008. +# Diego Iastrubni , 2008, 2012. +# Elkana Bardugo , 2017. #zanata +# SPDX-FileCopyrightText: 2023, 2024 Yaron Shahrabani +msgid "" +msgstr "" +"Project-Id-Version: \n" +"POT-Creation-Date: \n" +"PO-Revision-Date: 2024-05-22 06:40+0300\n" +"Last-Translator: Yaron Shahrabani \n" +"Language-Team: צוות התרגום של KDE ישראל\n" +"Language: he\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 && " +"n % 10 == 0) ? 2 : 3));\n" +"X-Generator: Lokalize 24.02.2\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "נא ליצור קשר עם הנהלת המערכת שלך." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "קובץ ההגדרות „%1” נעול לכתיבה.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "ברירת מחדל" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&אחורה" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&קדימה" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&בית" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&חדש" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "יצירת מסמך חדש" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&פתיחה…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "פתיחת מסמך קיים" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "פ&תיחת האחרונים" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "פתיחת מסמך שהיה בשימוש לאחרונה" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&שמירה" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "שמירת המסמך" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "שמירה &בשם…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "שמירת המסמך בשם חדש" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "שח&זור" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "הסגת שינויים שנערכו במסמך" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&סגירה" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "סגירת המסמך" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "ה&דפסה…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "הדפסת המסמך" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "הצגה מקדימה להד&פסה" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "הצגת תצוגה מקדימה להדפסת המסמך" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "דוא״&ל…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "שליחת המסמך בדוא״ל" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "י&ציאה" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "יציאה מהיישום" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "ה&סגה" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "הסגת הפעולה האחרונה" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "ביצוע מ&חדש" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "ביצוע הפעולה שהוסגה מחדש" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "&גזירה" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "גזירת הבחירה ללוח הגזירים" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "ה&עתקה" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "העתקת הבחירה ללוח הגזירים" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "ה&דבקה" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "הדבקת תוכן לוח הגזירים" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "&ניקוי" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "בחירה בה&כול" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "בי&טול בחירה" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&איתור…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "איתור ה&בא" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "איתור ה&קודם" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "ה&חלפה…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "תקריב ל&גודל המקורי" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "הצגת המסמך בגודל האמיתי שלו" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "התאמה ל&עמוד" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "התאמת גודל המסמך לגודל החלון" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "התאמה ל&רוחב העמוד" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "לכוון את המרחק מהמסמך כדי שיופיע לכל רוחבו של החלון" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "התאמה ל&גובה העמוד" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "לכוון את המרחק מהמסמך כדי שיופיע לכל אורכו של החלון" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "הת&קרבות" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "הת&רחקות" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&תקריב…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "בחירת מרחק התקריב" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&רענון" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "רענון המסמך" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "למ&עלה" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "עלייה למעלה" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "העמוד ה&קודם" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "מעבר לעמוד הקודם" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "העמוד ה&בא" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "מעבר לעמוד הבא" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "מ&עבר אל…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "מ&עבר לעמוד…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "מעבר ל&שורה…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "העמוד ה&ראשון" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "מעבר לעמוד הראשון" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "העמוד ה&אחרון" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "מעבר לעמוד הקודם" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "א&חורה" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "חזרה במסמך" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "×§&דימה" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "התקדמות במסמך" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "הוספת &סימנייה" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&עריכת סימניות…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&איות…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "בדיקת איות המסמך" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "הצגת &סרגל תפריטים" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "הצגת או הסתרת סרגל תפריטים" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "הצגת סרגל &כלים" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "הצגת או הסתרת סרגל כלים" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "הצגת &שורת מצב" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "הצגת או הסתרת שורת מצב" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "מצב מסך מ&לא" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "הגדרת קיצורי מ&קלדת…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "ה&גדרת %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "הגדרת ס&רגלי כלים…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "הגדרת ה&תראות…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "&ספרון ההדרכה של %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "מה &זה?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "דיווח על &תקלה…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "הגדרת &שפה…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&על %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "&על KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "מ&חיקה" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&שינוי שם…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "העברה ל&אשפה" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&תרומה" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "&פתיחת תפריט" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "פתיחה" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "חדש" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "סגירה" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "שמירה" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "הדפסה" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "יציאה" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "החזרה" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "ביצוע חוזר" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "גזירה" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "העתקה" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "הדבקה" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "הדבקת בחירה" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "בחירה בהכול" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "ביטול בחירה" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "מחיקת מילים אחורה" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "מחיקת מילים קדימה" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "איתור" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "איתור הבא" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "איתור הקודם" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "החלפה" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "בית" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "התחלה" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "סיום" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "קודם" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "הבא" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "למעלה" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "חזרה" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "קדימה" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "רענון" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "התחלת השורה" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "סוף השורה" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "מעבר לשורה" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "מילה אחורה" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "מילה קדימה" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "הוספת סימנייה" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "התקרבות" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "התרחקות" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "מצב מסך מלא" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "הצגת סרגל תפריטים" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "הפעלת הלשונית הבאה" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "הפעלת הלשונית הקודמת" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "עזרה" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "מה זה" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "השלמת טקסט" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "התאמת ההשלמה הקודמת" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "התאמת ההשלמה הבאה" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "השלמת תת־מחרוזת" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "הפריט הקודם ברשימה" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "הפריט הבא ברשימה" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "פתיחת האחרונים" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "שמירה בשם" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "שחזור" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "הצגה מקדימה להדפסה" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "דואר" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "פינוי" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "תקריב מקורי" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "התאמה לעמוד" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "התאמה לרוחב" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "התאמה לגובה" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "תקריב" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "קפיצה" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "קפיצה לעמוד" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "מסמך אחורה" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "מסמך קדימה" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "עריכת סימניות" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "איות" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "הצגת סרגל כלים" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "הצגת סרגל מצב" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "איגוד מקשים" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "הגדרת יישום" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "הגדרת סרגלי כלים" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "הגדרת התראות" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "דיווח על תקלה" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "הגדרת שפה…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "על היישום" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "על KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "מחיקה" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "שינוי שם" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "העברה לאשפה" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "תרומה" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "הצגת/הסתרת קבצים מוסתרים" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "יצירת תיקייה" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "פתיחת התפריט הראשי" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "פתיחת תפריט ההקשר" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "כלי KDE לעדכון קובצי הגדרות משתמש" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "שמירת תוצאות פלט מסקריפטים" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"לבדיקות יחידה: לא לכתוב את הרשומות שבוצעו, כך שבכל הרצה חוזרת, הסקריפטים " +"יופעלו שוב" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "לבדוק האם קובץ ההגדרות עצמו דורש עדכון" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "קבצים מהם לקרוא הנחיות עדכון" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "תיקייה בה לייצר קבצים [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "תיקייה" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "הצגת רשיונות תוכנה." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "להשתמש ב־ (קובץ) במקום בהגדרות כלליות" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"הקבוצה לחפש בה. יש להשתמש ב‏־„” (ברירת מחדל) לקבוצת העל או להשתמש " +"במחזוריות לקבוצות מקוננות." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "מפתח לחיפוש" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "ערך ברירת מחדל" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "סוג המשתנה" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"שם קבוצה לא יכול להיות ריק. יש להשתמש ב־„” (ברירת מחדל) לקבוצת העל" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"סוג משתנה. יש להשתמש ב־„bool” למשתנה בוליאני, אחרת מתייחסים אליו כאל מחרוזת" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "למחוק את המפתח המוקצה אם פעיל" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "הערך לכתיבה. חובה, במעטפת אפשר להשתמש ב־'' לריק" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "העצה היומית" diff --git a/poqm/hi/kconfig6_qt.po b/poqm/hi/kconfig6_qt.po new file mode 100644 index 0000000..724fe1d --- /dev/null +++ b/poqm/hi/kconfig6_qt.po @@ -0,0 +1,1286 @@ +# translation of kwriteconfig.po to Hindi +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# Ravishankar Shrivastava , 2007. +# G Karunakar , 2012. +# Raghavendra Kamath , 2021, 2022. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2022-02-10 11:42+0530\n" +"Last-Translator: Raghavendra Kamath \n" +"Language-Team: Hindi \n" +"Language: hi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 21.04.3\n" +"Plural-Forms: nplurals=2; plural=(n!=1);\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "कृपया अपने तंत्र व्यवस्थापक से संपर्क करें। " + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "कॉन्फ़िगरेशन फ़ाइल \"%1\" लेखन योग्य नहीं है। \n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "पूर्वन्यस्त" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "पीछे" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "आगे" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "घर" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "खोलें" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "हाल ही का खोलें" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "सहेजें" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "ऐसे सहेजें" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "पलटें" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "बंद करें" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "छापें" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "छपाई नमूना" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "ईमेल" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "बाहर जाएँ" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "अनुप्रयोग के बोरे में" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "पूर्ववत करें" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "नक़ल" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "चिपकाएँ" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "साफ करें" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "सभी चुनें" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "अचयनित करें" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "ढूंढें" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "अगला ढूंढें" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "पिछले ढूंढें" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "बदलें" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "वास्तविक आकार" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "पृष्ठ के अनुरूप" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "चौड़ाई के अनुरूप" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "ऊँचाई के अनुरूप" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "ज़ूम इन" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "ज़ूम आउट" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "ज़ूम" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "सभी चुनें" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "ऊपर" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "पृष्ठ में जाएँ" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "पंक्ति पर जाएँ" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "पृष्ठ में जाएँ" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "पंक्ति पर जाएँ" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "पृष्ठ के अनुरूप" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "पंक्ति पर जाएँ" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "पृष्ठ में जाएँ" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "पीछे" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "आगे" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "पुस्तचिन्ह जोड़ें" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "पुस्तचिह्न संपादित करें" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "वर्तनी" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "मेन्यूपट्टी दिखाएँ" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "मेन्यूपट्टी दिखाएँ" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "औज़ार पट्टी दिखाएँ" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "औज़ार पट्टी दिखाएँ" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "स्थिति-पट्टी दिखाएँ" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "स्थिति-पट्टी दिखाएँ" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "पूर्ण स्क्रीन मोड" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "भाषा विन्यस्त करें..." + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "औज़ार पट्टी विन्यस्त करें" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "सूचनाएँ विन्यस्त करें" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "यह क्या है?" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "त्रुटि दर्ज करें" + +#: gui/kstandardactions_p.h:135 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "भाषा विन्यस्त करें..." + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "केडीई के बारे में" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "केडीई के बारे में" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "मिटाएँ" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "नाम बदलें" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "कूडे में डालें" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "दान करें" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "हाल ही का खोलें" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "खोलें" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "नया" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "बंद करें" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "सहेजें" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "छापें" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "बाहर जाएँ" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "पूर्ववत करें" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "फिर करें" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "काटें" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "नक़ल" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "चिपकाएँ" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "चयन चिपकाएँ" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "सभी चुनें" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "अचयनित करें" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "शब्द को पीछे की ओर से हटाएं " + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "शब्द को आगे की ओर से हटाएं " + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "ढूंढें" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "अगला ढूंढें" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "पिछले ढूंढें" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "बदलें" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "घर" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "प्रारंभ" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "अंत" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "पहले " + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "अगला" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "ऊपर" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "पीछे" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "आगे" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "री-लोड" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "पंक्ति का आरंभ" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "पंक्ति का अंत" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "पंक्ति पर जाएँ" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "पिछला शब्द" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "आगे का शब्द" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "पुस्तचिन्ह जोड़ें" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "ज़ूम इन" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "ज़ूम आउट" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "पूर्ण स्क्रीन मोड" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "मेन्यूपट्टी दिखाएँ" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "अगला टैब सक्रिय करें" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "पिछला टैब सक्रिय करें" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "मदद" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "यह क्या है?" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "पाठ पूर्णता" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "पिछला समापन मेल" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "अगला समापन मेल" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "उप-स्ट्रिंग पूर्णता " + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "सूची में पिछली चीज" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "सूची में अगली चीज" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "हाल ही का खोलें" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "ऐसे सहेजें" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "पलटें" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "छपाई नमूना" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "ईमेल" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "साफ करें" + +#: gui/kstandardshortcut.cpp:299 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "वास्तविक आकार" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "पृष्ठ के अनुरूप" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "चौड़ाई के अनुरूप" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "ऊँचाई के अनुरूप" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "ज़ूम" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "में जाएँ" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "पृष्ठ में जाएँ" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "पिछला दस्तावेज़" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "अगला दस्तावेज़" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "पुस्तचिह्न संपादित करें" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "वर्तनी" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "औज़ार पट्टी दिखाएँ" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "स्थिति-पट्टी दिखाएँ" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "कुंजी बाइंडिंग" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "अनुप्रयोग विन्यस्त करें" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "औज़ार पट्टी विन्यस्त करें" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "सूचनाएँ विन्यस्त करें" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "त्रुटि दर्ज करें" + +#: gui/kstandardshortcut.cpp:373 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "भाषा विन्यस्त करें..." + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "अनुप्रयोग के बोरे में" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "केडीई के बारे में" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "मिटाएँ" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "नाम बदलें" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "कूडे में डालें" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "दान करें" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "छुपी फ़ाइलें दिखाएँ/छुपाएँ" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "फ़ोल्डर बनाएँ" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "उपयोगकर्ता कॉन्फ़िगरेशन फ़ाइलों को अद्यतन करने के लिए केडीई उपकरण " + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "स्क्रिप्ट से आउटपुट परिणाम रखें " + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "जांचें कि क्या कॉन्फ़िगर फ़ाइल को अपडेट करने की आवश्यकता है " + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "फ़ाइल (लों) से अद्यतन निर्देश पढ़ने के लिए " + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "फ़ाइलों को जनरेट करने के लिए डिरेक्ट्री [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "डिरेक्ट्री" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "सोफ्टवेयर का अनुज्ञापत्र दिखाएँ" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "वैश्विक कॉन्फ़िग के बजाए इस्तेमाल करें" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"देखने के लिए समूह। रूट समूह के लिए \"\" का उपयोग करें, या अंतर समूहों के लिए बार-" +"बार उपयोग करें।" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "कुंजी जिसे देखा जाना है" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "पूर्वन्यस्त मूल्य" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "परिवर्तनीय का प्रकार" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "समूह का नाम खाली नहीं हो सकता, रूट समूह के लिए \"\" का उपयोग करें" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"परिवर्तनीय का प्रकार. इस्तेमाल करें \"bool\" बूलियन के लिए, अन्यथा यह एक स्ट्रिंग की तरह " +"समझा जाएगा" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "सक्षम होने पर निर्दिष्ट कुंजी को हटा दें " + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "मूल्य जो लिखा जाना है. अनिवार्य है, शेल में खाली के लिए '' का इस्तेमाल करें" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "आज का सुझाव " + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "केवल यूनिट परीक्षणों के लिए: उपयोगकर्ता की वास्तविक फ़ाइलों से दूर रहने के लिए परीक्षण " +#~ "निर्देशिकाओं का उपयोग करें " + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "विकल्पों को सहेजें" + +#~ msgid "KWriteConfig" +#~ msgstr "के-राइट-कॉन्फ़िग" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "राइट के-कॉन्फ़िग प्रविष्टि - शेल स्क्रिप्ट के उपयोग में" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 रेड हैट इंक. तथा लुइस पेद्रो कोएल्हो" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "केडीईकॉन्फ़िग लिखा जिस पर यह आधारित है" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "लुइस पेद्रो कोएल्हो" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "बर्नहार्ड रोजेनक्रेन्जेर" diff --git a/poqm/hne/kconfig6_qt.po b/poqm/hne/kconfig6_qt.po new file mode 100644 index 0000000..502ed03 --- /dev/null +++ b/poqm/hne/kconfig6_qt.po @@ -0,0 +1,1089 @@ +# translation of kwriteconfig.po to Hindi +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# Ravishankar Shrivastava , 2007. +# Ravishankar Shrivastava , 2009. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2009-01-28 17:22+0530\n" +"Last-Translator: Ravishankar Shrivastava \n" +"Language-Team: Hindi \n" +"Language: hne\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 0.2\n" +"Plural-Forms: nplurals=2; plural=(n!=1);\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "समूह जेमां देखना हे" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "समूह जेमां देखना हे" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "समूह जेमां देखना हे" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "समूह जेमां देखना हे" + +#: gui/kstandardshortcut.cpp:181 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "समूह जेमां देखना हे" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "उपयोग करव बदला मा वैस्विक कान्फिग के" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "समूह जेमां देखना हे. नेस्टेड समूह बर बारबार उपयोग मं." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "कुंजी जऊन ल देखाना हे" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"चर के किसम. उपयोग करव \"bool\" बूलिये बर, नइ तहां ले ए एक स्ट्रिंग के जइसन समझे जाही" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "मूल्य जऊन ल लिखना हे. अनिवार्य, सेल मं खाली बर '' के उपयोग करव" + +#~ msgid "KWriteConfig" +#~ msgstr "के-राइट-कान्फिग" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "राइट के-कान्फिग प्रविस्टि - सेल स्क्रिप्ट के उपयोग में" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 रेड हेट इंक. अउ लुये पेद्रो कोएल्हो" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "केडीईकान्फिग लिखे हे जऊन मं एही आधारित हे" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "लुये पेद्रो कोएल्हो" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "बर्नहार्ड रोजेनक्रेन्जेर" diff --git a/poqm/hr/kconfig6_qt.po b/poqm/hr/kconfig6_qt.po new file mode 100644 index 0000000..c95b0c6 --- /dev/null +++ b/poqm/hr/kconfig6_qt.po @@ -0,0 +1,1101 @@ +# Translation of kwriteconfig to Croatian +# +# Andrej Dundović , 2009. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig 0\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2011-08-02 05:32+0200\n" +"PO-Revision-Date: 2009-07-01 09:19+0200\n" +"Last-Translator: Andrej Dundović \n" +"Language-Team: Croatian \n" +"Language: hr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"X-Generator: Lokalize 0.3\n" +"X-Environment: kde\n" +"X-Accelerator-Marker: &\n" +"X-Text-Markup: kde4\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Tražiti u grupi" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Tražiti u grupi" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Tražiti u grupi" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Tražiti u grupi" + +#: gui/kstandardshortcut.cpp:181 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Tražiti u grupi" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Umjesto opće konfiguracije upotrijebi " + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "Grupa u kojoj se traži. Ponavljaj za ugnježdene grupe." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Ključ za kojim se traga" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Vrsta varijable. Za Boolean unos upotrijebite \"bool\", u suprotnom će se s " +"njima postupati kao sa znakovnim nizovima." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Vrijednost koja će biti zapisana. Obavezno u ljusci za prazninu upotrijebite " +"''" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Zapisuj KConfig unose – za upotrebu u skriptama ljuske" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "© 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Napisan je kreadconfig na kojem je ovo bazirano" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "Danko Butorac, Denis Lackovic, Nikola Planinac, Robert Sedak" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "lokalizacija@linux.hr" diff --git a/poqm/hsb/kconfig6_qt.po b/poqm/hsb/kconfig6_qt.po new file mode 100644 index 0000000..f2b67e8 --- /dev/null +++ b/poqm/hsb/kconfig6_qt.po @@ -0,0 +1,1064 @@ +# translation of kwriteconfig.po to Upper Sorbian +# Copyright (C) 2003 Free Software Foundation, Inc. +# Prof. Dr. Eduard Werner , 2003 +# +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2003-12-22 18:13+0100\n" +"Last-Translator: Prof. Dr. Eduard Werner \n" +"Language-Team: Upper Sorbian\n" +"Language: hsb\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n" +"%100==4 ? 2 : 3;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Wužiwaj město globalneje konfiguracije" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Kluč, za kotrymž ma so pytać" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Typ wariable. Wužiwaj \"bool\" za Booleowu wariablu, hewak so jako string " +"wobhladuje" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Hódnota, kiž ma so pisać. Trěbna; za prózdnu hódnotu wužiwaj '' " + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Pisa zapisy za KConfig -- wužiwa so w skriptach" diff --git a/poqm/hu/kconfig6_qt.po b/poqm/hu/kconfig6_qt.po new file mode 100644 index 0000000..a98bd83 --- /dev/null +++ b/poqm/hu/kconfig6_qt.po @@ -0,0 +1,1096 @@ +# Copyright (C) 2014 Free Software Foundation, Inc. +# +# Tamas Szanto , 2003. +# Kristóf Kiszel , 2014. +# SPDX-FileCopyrightText: 2018, 2020, 2021, 2024 Kristof Kiszel +msgid "" +msgstr "" +"Project-Id-Version: KDE 4.1\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-05-31 22:46+0200\n" +"Last-Translator: Kristof Kiszel \n" +"Language-Team: Hungarian \n" +"Language: hu\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Lokalize 24.02.2\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Lépjen kapcsolatba a rendszergazdával." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "A(z) „%1” beállítófájl nem írható.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Alapértelmezett" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Vissza" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Előre" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Kezdőlap" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "Ú&j" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Új dokumentum létrehozása" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Megnyitás…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Meglévő dokumentum megnyitása" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "&Legutóbbi megnyitása" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Egy legutóbb megnyitott dokumentum megnyitása" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Menté&s" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Dokumentum mentése" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Mentés más&ként…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Dokumentum mentése új néven" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "&Visszaállítás" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Nem mentett módosítások visszavonása" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Bezárás" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Dokumentum bezárása" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Nyomtatás…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Dokumentum nyomtatása" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Nyomtatási &előnézet" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "A dokumentum nyomtatási előnézetének megjelenítése" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "E-&mail…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Dokumentum küldése e-mailben" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Kilépés" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Kilépés az alkalmazásból" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Visszavonás" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Legutóbbi művelet visszavonása" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Újra vég&rehajtás" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Legutóbb visszavont művelet újra végrehajtása" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "&Kivágás" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Kijelölés kivágása és a vágólapra helyezése" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Másolás" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Kijelölés másolása a vágólapra" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Beillesztés" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Vágólap tartalmának beillesztése" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "&Törlés" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Össz&es kijelölése" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Kijelö&lés megszüntetése" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Keresés…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Kö&vetkező keresése" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Előző &keresése" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Cse&re…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "N&agyítás a tényleges méretre" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Dokumentum megjelenítése tényleges méretben" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Teljes oldal" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Nagyítás az oldal kitöltéséhez" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Teljes &szélesség" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Nagyítás az oldalszélesség kitöltéséhez" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Teljes ma&gasság" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Nagyítás az oldalmagasság kitöltéséhez" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "N&agyítás" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "K&icsinyítés" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Nagyít&ás…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Válasszon nagyítási szintet" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Frissítés" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Dokumentum frissítése" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Fel" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Ugrás felfelé" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "El&őző oldal" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Ugrás az előző oldalra" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Következő &oldal" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Ugrás a következő oldalra" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Ugrás ide…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Ugrás egy ol&dalra…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "U&grás egy sorra…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "El&ső oldal" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Ugrás az első oldalra" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Ut&olsó oldal" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Ugrás az utolsó oldalra" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Vissza" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Vissza a dokumentumban" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Előre" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Előre a dokumentumban" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Hozzá&adás a könyvjelzőkhöz" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Könyvjelzők szerkesztése…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Helye&sírás-ellenőrzés…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Helyesírás-ellenőrzés a dokumentumban" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "&Menüsor" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Menüsáv megjelenítése vagy elrejtése" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Eszköz&tár megjelenítése" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Eszköztár megjelenítése vagy elrejtése" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Áll&apotsor" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Állapotsor megjelenítése vagy elrejtése" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "&Teljes képernyős mód" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Billentyű¶ncsok beállítása…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "%1 &beállítása…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "&Eszköztárak beállítása…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "É&rtesítések beállítása…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1 kéz&ikönyve" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Mi e&z?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Hiba&bejelentés…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Nye&lvbeállítás…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Né&vjegy: %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Névjegy: &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Törlés" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Át&nevezés…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Á&thelyezés a Kukába" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Támogatás" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "&Menü megnyitása" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Megnyitás" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Új" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Bezárás" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Mentés" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Nyomtatás" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Kilépés" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Visszavonás" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Újra végrehajtás" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Kivágás" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Másolás" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Beillesztés" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Kijelölés beillesztése" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Összes kijelölése" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Kijelölés megszüntetése" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "A kurzortól balra álló szó törlése" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "A kurzortól jobbra álló szó törlése" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Keresés" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Következő keresése" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Előző keresése" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Csere" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Saját mappa" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Elejére" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Végére" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Előtte" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Következő" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Fel" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Vissza" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Előre" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Újratöltés" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Sor eleje" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Sor vége" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Ugrás egy sorra" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Előző szó" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Következő szó" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Könyvjelző hozzáadása" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Nagyítás" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Kicsinyítés" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Teljes képernyős mód" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Menüsáv megjelenítése" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Váltás a következő lapra" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Váltás az előző lapra" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Súgó" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Mi ez" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Szövegkiegészítés" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Előző kiegészítés" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Következő kiegészítés" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Részszó-kiegészítés" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Előző listaelem" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Következő listaelem" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Legutóbbi megnyitása" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Mentés másként" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Visszavonás" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Nyomtatási előnézet" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "E-mail" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Törlés" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Nagyítás a tényleges méretre" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Teljes oldal" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Teljes szélesség" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Teljes magasság" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Nagyítás" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Ugrás" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Ugrás oldalra" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Előző dokumentum" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Következő dokumentum" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Könyvjelzők szerkesztése" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Helyesírás" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Eszköztár megjelenítése" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Állapotsor megjelenítése" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Billentyűparancsok" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Alkalmazás beállítása" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Eszköztárak beállítása" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Értesítések beállítása" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Hiba jelentése" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Nyelvbeállítás…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Az alkalmazás névjegye" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "A KDE névjegye" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Törlés" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Átnevezés" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Áthelyezés a Kukába" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Támogatás" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Rejtett fájlok megjelenítése/elrejtése" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Mappa létrehozása" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Főmenü megnyitása" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Helyi menü megnyitása" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Segédprogram a KDE-től felhasználói beállítófájlok frissítéséhez." + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Szkriptkimenetek megtartása" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Csak egységtesztekhez: ne írja ki a kész bejegyzéseket, így minden újra " +"futtatáskor a parancsfájlok ismét végrehajtódnak" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Ellenőrizze, kell-e frissíteni a beállítófájlt" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "A frissítési utasításokat tartalmazó fájl(ok)" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Fájlok generáláshoz használt mappa [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "mappa" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Szoftverlicenc megjelenítése" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "A megadott használata a globális helyett" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"A vizsgált csoport neve. Használja a „”-ot a root csoporthoz, vagy " +"ismételten megadható egymásba ágyazás esetén." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Keresendő kulcs" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Alapértelmezett érték" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "A változó típusa" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"A csoportnév nem lehet üres, használja a „”-ot a root csoporthoz" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"A változó típusa. Logikai változó esetén „bool”, máskülönben sztring lesz" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "A kijelölt billentyű törlése, ha be van kapcsolva" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"A kiírandó érték. Kötelezően meg kell adni, szkripteknél '' legyen, ha üres" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "A nap tippje" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Csak unit tesztekhez: tesztmappa használata a felhasználó fájljainak " +#~ "megóvása érdekében" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Mentési beállítások" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Más alkalmazásnyelv" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Beállítások" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "KConfig-bejegyzések írása (parancsfájlokhoz)" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) Red Hat, Inc. & Luís Pedro Coelho, 2001." + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "A kreadconfig szerzője, melyre a program épült" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/ia/kconfig6_qt.po b/poqm/ia/kconfig6_qt.po new file mode 100644 index 0000000..5126ce1 --- /dev/null +++ b/poqm/ia/kconfig6_qt.po @@ -0,0 +1,1098 @@ +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# SPDX-FileCopyrightText: 2010, 2017, 2021, 2022, 2023 g.sora +# Giovanni Sora , 2014, 2016, 2019, 2020. +# giovanni , 2023, 2024. +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-05-22 17:42+0200\n" +"Last-Translator: giovanni \n" +"Language-Team: Interlingua \n" +"Language: ia\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 21.12.1\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Pro favor, tu continge tu administrator de systema" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "File de configuration \"%1\" non pote scriber se.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Predefinite" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Retro" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Avante" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Domo o Initio" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Nove " + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Crea nove documento" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "A&peri..." + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Aperi un documento existente" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Aperi &recente" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Aperi un documento que ha essite aperite recentemente" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Salveguarda" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Salveguarda documento" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "S&alveguarda como..." + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Salveguarda un documento con un nove nomine" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Re&verte" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Reverte modificationes non salveguardate facite al documento" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Claude" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Claude documento" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Im&prime..." + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Imprime documento" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Vista Preliminar de &Imprimer" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Monstra un vista preliminar del documento" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Invia via &E-posta…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Invia un documento per e-posta" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Quita" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Quita Application" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Ann&ulla" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Annulla ultime action" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "R&eface" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Face de nove ultime action annullate" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "&Talia" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Talia selection a area de transferentia" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Copia" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Copia selection a area de transferentia" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Co&lla" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Colla contento de area de transferentia" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "&Netta" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Selection&a Tote" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "De-se&lectiona" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Trova…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Trova proxi&me" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Tro&va precedente " + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Reimplacia…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Aggrandi (zoom) a Dimension &Actual" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Vide documento a su grandor actual" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Ada&pta a la pagina" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Face zoom usque il adapta a pagina in fenestra" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Adapta al lar&gessa de pagina " + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Face zoom usque il adapta a largessa de pagina pagina in fenestra" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Adapta al al&tessa de pagina" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Face zoom usque il adapta a altessa de pagina in fenestra" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Zoom &In (aggrandi)" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Zoom&Out (diminue)" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Zoom…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Selectiona nivello de zoom" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Refresca" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Refresca Documento" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "in &Alto" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Vade in alto" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Pagina precedente" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Vade a pagina precedente" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Pagi&na Proxime" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Vade a pagina proxime" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Vade a.." + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Vade a pagina ..." + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Vade a Linea…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Pagina prime" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Vade a prime pagina" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Pagina u<ime" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Vade a ultime pagina" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Retro" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Vade retro in le documento" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "A&vante" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Vade avante in le documento" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Adde marcator de libro" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Edita marcatores de libro…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Controlo ort&hographic..." + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Controlo Orthographic in documento" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Monstra barra de &menu" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Monstra o cela barra de menu" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Mons&tra le barra de instrumentos" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Monstra o cela barra de instrumentos" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Monstrar barra de st&ato" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Monstra o cela barra de stato" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "M&odo de schermo integre" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Configura Via&s breve de claviero ..." + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Configura %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Configura le &barras de instrumentos..." + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Configura &Notificationes ..." + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1 &Manual" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Que es is&to?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Reporta Bug…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Configura &Linguage …" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&A proposito de %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "A proposito de &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Dele" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Renomina…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Move al corbe" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Dona" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Aperi &Menu" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Aperi" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Nove " + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Claude" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Salveguarda" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Imprime" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Quita" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Annulla" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Reface" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Talia" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Copia" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Colla" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Colla Selection" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Selige toto" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "De-selectiona" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Cancella Parola de Retro" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Cancella Parola In Avante" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Trova" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Trova proxime" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Trova Precedente" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Reimplacia" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Domo o initio" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Initio" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Fin" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Ante" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Proxime" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "In alto" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Retro" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Avante" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Recarga" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Initio de linea" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Fin de Linea" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Vade al Linea" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Parola de retro" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Parola in Avante" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Adde marcator de libro" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Zoom In (aggrandir)" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Zoom Out (Diminuer)" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Modo de Schermo Integre" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Monstra le barra de menu" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Activa proxime scheda" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Activa previe scheda" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Adjuta" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Que es isto" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Completamento de texto" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Resultato de completamento precedente" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Resultato de completamento proxime" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Completamento de sub-catena" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Elemento precedente in lista" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Elemento proxime in lista" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Aperi Recente " + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Salveguarda como" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Reverte" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Vista preliminar de imprimer" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Posta" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Netta" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Aggrandi (zoom) a Dimension actual" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Adapta a la pagina" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Adapta in largessa" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Adapta in altessa" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Zoom" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Vade a" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Vade a pagina" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Documento Previe (de retro)" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Documento in Avante" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Edita marcatores de libro" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Controlo orthographic" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Monstra le barra de instrumentos" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Monstra le barra de stato" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Ligamines Clave" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Configura Application" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Configura le barras de instrumentos" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Configura notificationes " + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Reporta Bug" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Configura Linguage ..." + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Re le Application" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Re KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Dele" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Renomina" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Move a corbe" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Dona" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Monstra /Cela files celate" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Crea dossier" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Aperi Menu principal" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Aperi Menu de Contexto" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Instrumento KDE pro actualisar le files de configuration del usator" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Mantene le resultatos de exitos ex le scripts" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Solmente pro essayar unitate: non scriber le entratas facite, assi que con " +"cata re-execution, le script es executate novemente " + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Controla si le mesme file de configuration debe esser actualisate" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "File(s) ex cuje leger instructiones de actualisation" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Directorio pro generar files in [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "directorio" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Monstra licentia de software." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Usa in vice de config global" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Gruppo de guardar internemente. Usa \"\" per le gruppo de radice, o " +"usa repetitemente per gruppos annidate." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Clave per cercar" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Valor predefinite" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Typo de variabile" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Nomine de gruppo non pote esser vacue, tu usa \"\" per le gruppo de " +"radice" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Typo de variabile. Usa \"bool\" per un boolean, alteremente il es tractate " +"como un catena" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Dele le clave designate si habilitate" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Le valor de scriber. Obligatori usar in un shell \" per vacue" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Consilio del Die" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Solment eper unitates de essayar: usa dossieres de essayar pro estar " +#~ "foras del ver files de usator" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Salveguarda optiones" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Commuta le linguage de application" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Preferentias" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Entratas de Write KConfig - per uso in scripts de shell" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Il scribeva kreadconfig sur le qual isto es basate" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/id/kconfig6_qt.po b/poqm/id/kconfig6_qt.po new file mode 100644 index 0000000..85a8c09 --- /dev/null +++ b/poqm/id/kconfig6_qt.po @@ -0,0 +1,1293 @@ +# Indonesian translations for kwriteconfig package. +# Copyright (C) 2010 This_file_is_part_of_KDE +# This file is distributed under the same license as the kwriteconfig package. +# Gian Giovani , 2010. +# Andhika Padmawan , 2014. +# Wantoyo , 2017, 2018, 2019, 2020, 2021, 2022. +# Aziz Adam Adrian <4.adam.adrian@gmail.com>, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2022-08-19 20:36+0700\n" +"Last-Translator: Wantoyèk \n" +"Language-Team: https://t.me/Localizations_KDE_Indonesia\n" +"Language: id\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Lokalize 21.12.3\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Silakan kontak pengurus sistem anda." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "File konfigurasi \"%1\" tidak dapat ditulis.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Baku" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Mundur" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Maju" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Beranda" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Buka" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Buka Baru-baru ini" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Simpan" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Simpan Sebagai" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Kembalikan" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Tutup" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Cetak" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Pratinjau Cetak" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Surat" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Berhenti" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Tentang Aplikasi" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Urung" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Salin" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Tempel" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Bersihkan" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Pilih Semua" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Tak Pilih" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Temukan" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Temukan Selanjutnya" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Temukan Sebelumnya" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Ganti" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom to Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Zoom ke Ukuran Sebenarnya" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Paskan Ke Halaman" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Paskan Ke Lebar" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Paskan Ke Tinggi" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Zoom Perbesar" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Zoom Perkecil" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Zoom " + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Pilih Semua" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Atas" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Ke Halaman" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Menuju ke Baris" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Ke Halaman" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Menuju ke Baris" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Paskan Ke Halaman" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Menuju ke Baris" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Ke Halaman" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Mundur" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Maju" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Tambah Markah" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Edit Markah" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Pengejaan" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Tampilkan Menubar" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Tampilkan Menubar" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Tampilkan Bilah Alat" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Tampilkan Bilah Alat" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Tampilkan Bilah Status" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Tampilkan Bilah Status" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Mode Layar Penuh" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "Konfigurasikan Bahasa..." + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Konfigurasikan Bilah Alat" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Konfigurasikan Notifikasi" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Apakah Ini" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Laporkan Bug" + +#: gui/kstandardactions_p.h:135 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Konfigurasikan Bahasa..." + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Tentang KDE" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Tentang KDE" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Hapus" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Ubah Nama" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Pindah ke Tong Sampah" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Donasi" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Buka Baru-baru ini" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Buka" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Baru" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Tutup" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Simpan" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Cetak" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Berhenti" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Urung" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Ulang" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Potong" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Salin" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Tempel" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Seleksi Tempel" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Pilih Semua" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Tak Pilih" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Hapus Kata Mundur" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Hapus Kata Maju" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Temukan" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Temukan Selanjutnya" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Temukan Sebelumnya" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Ganti" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Beranda" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Awal" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Akhir" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Sebelumnya" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Selanjutnya" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Atas" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Mundur" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Maju" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Muat Ulang" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Awal Baris" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Akhir Baris" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Menuju ke Baris" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Kata Mundur" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Kata Maju" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Tambah Markah" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Zoom Perbesar" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Zoom Perkecil" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Mode Layar Penuh" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Tampilkan Menubar" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Aktifkan Tab Selanjutnya" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Aktifkan Tab Sebelumnya" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Bantuan" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Apakah Ini" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Penyelesai Teks" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Kecocokan Penyelesai Sebelumnya" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Kecocokan Penyelesai Selanjutnya" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Penyelesai Substring" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Item Sebelumnya di Daftar" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Item Selanjutnya di Daftar" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Buka Baru-baru ini" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Simpan Sebagai" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Kembalikan" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Pratinjau Cetak" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Surat" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Bersihkan" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Zoom ke Ukuran Sebenarnya" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Paskan Ke Halaman" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Paskan Ke Lebar" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Paskan Ke Tinggi" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Zoom " + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Ke" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Ke Halaman" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Dokumen Mundur" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Dokumen Maju" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Edit Markah" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Pengejaan" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Tampilkan Bilah Alat" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Tampilkan Bilah Status" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Pengikat Tuts" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Konfigurasikan Aplikasi" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Konfigurasikan Bilah Alat" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Konfigurasikan Notifikasi" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Laporkan Bug" + +#: gui/kstandardshortcut.cpp:373 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Konfigurasikan Bahasa..." + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Tentang Aplikasi" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Tentang KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Hapus" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Ubah Nama" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Pindah ke Tong Sampah" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Donasi" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Tampilkan/Sembunyikan File Yang Tersembunyi" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Ciptakan Folder" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Alat KDE untuk memperbarui file konfigurasi pengguna" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Jaga output dihasilkan dari skrip" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Cek apakah file konfigurasi itu sendiri memerlukan peningkatan" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "File untuk membaca instruksi pembaruan dari" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Direktori untuk membuat file di [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "direktori" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Tampilkan lisensi perangkat lunak." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Gunakan daripada konfig global" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Group untuk dilihat. Pakai \"\" untuk grup root, atau gunakan " +"berulang kali untuk grup berkumpul." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Kunci untuk dilihat" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Nilai baku" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Tipe variabel" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "Nama grup tidak boleh kosong, pakai \"\" untuk grup root" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Tipe dari variabel. Gunakan \"bool\" untuk boolean, yang lain akan " +"diperlakukan seperti string" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Hapus kunci yang dituju jika difungsikan" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Nilai untuk penulisan. Seharusnya, di shell gunakan '' bagi yang kosong" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Tip Hari Ini" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Untuk uji unit saja: gunakan direktori uji agar menjauh dari file asli " +#~ "pengguna" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Opsi Simpan" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Alihkan Bahasa Aplikasi" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Setelan" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Tulis isi KConfig - untuk digunakan di skrip shell" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Tulis kreadconfig dimana ini ditempatkan" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/is/kconfig6_qt.po b/poqm/is/kconfig6_qt.po new file mode 100644 index 0000000..22abb18 --- /dev/null +++ b/poqm/is/kconfig6_qt.po @@ -0,0 +1,1098 @@ +# translation of kwriteconfig.po to Icelandic +# Icelandic translation of kwriteconfig +# Copyright (C) 2004, 2008 Free Software Foundation, Inc. +# +# Richard Allen , 2004. +# Sveinn í Felli , 2016, 2022. +# SPDX-FileCopyrightText: 2022, 2024 Guðmundur Erlingsson +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-06-29 14:35+0000\n" +"Last-Translator: Gummi \n" +"Language-Team: Icelandic \n" +"Language: is\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Lokalize 23.08.5\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Hafðu samband við kerfisstjóra." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Ekki er hægt að skrifa í grunnstillingaskrána \"%1\".\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Sjálfgefið" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "Til &baka" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "Á&fram" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Heim" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Nýtt" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Búa til nýtt skjal" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Opna…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Opna skjal sem þegar er til" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Opna ný&legt" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Opna skjal sem var nýlega opnað" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Vi&sta" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Vista skjal" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Vist&a sem…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Vista skjal með nýju heiti" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Aftu&rkalla" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Afturkalla óvistaðar breytingar sem gerðar hafa verið á skjalinu" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Loka" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Loka skjali" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Prenta…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Prenta skjalið" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Forskoða pren&tun" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Sýna prentútgáfu skjals" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Póstur…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Senda skjal í tölvupósti" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Hætta" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Loka forriti" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Afturkalla" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Afturkalla síðustu aðgerð" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Gera a&ftur" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Gera aftur síðustu afturkölluðu aðgerð" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "&Klippa" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Klippa val á klippispjald" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Afrita" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Afrita val á klippispjald" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Líma" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Líma af klippispjaldi" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Hr&einsa" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Velja &allt" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Afve&lja" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Finna…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Finna &næsta" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Finna &fyrra" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Skipta út…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Sýna í r&aunstærð" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Skoða skjal í raunstærð þess" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Laga að síðu" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Laga síðu að glugga" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Laga að síðu&breidd" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Laga breidd síðu að glugga" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Laga að síðu&hæð" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Laga hæð síðu að glugga" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Auka &aðdrátt" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Mi&nnka aðdrátt" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Aðdráttur…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Velja aðdráttarstig" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Endurhlaða" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Endurhlaða skjal" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Upp" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Fara upp" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Fyrri síða" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Fara á fyrri síðu" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Næsta síða" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Fara á næstu síðu" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Fara í " + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Fara á &síðu…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Fara í línu…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Fyrsta síða" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Fara á fyrstu síðu" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "&Síðasta síða" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Fara á síðustu síðu" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Til &baka" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Fara afturábak í skjalinu" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Á&fram" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Fara áfram í skjalinu" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Bæta við bókamerki" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Breyta bókamerkjum…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Stafsetning…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Kanna stafsetningu í skjalinu" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Sýna &valmyndastiku" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Sýna eða fela valmyndastiku" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Sýna &tækjastiku" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Sýna eða fela tækjastiku" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Sýn&a stöðustiku" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Sýna eða fela stöðustiku" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "F&ylla skjá" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Grunnstilla &flýtilykla…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Grunnstilla %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Grunnstilla tækja&stikur…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Grunnstilla tilky&nningar…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "&Handbók fyrir %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Hvað er þ&etta?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Senda &villuskýrslu…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Grunnstilla tungu&mál…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&Um %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Um &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Eyða" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Endurnefna…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Setja í &ruslið" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Styrkja" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Opna &valmynd" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Opna" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Nýtt" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Loka" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Vista" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Prenta" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Hætta" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Afturkalla" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Gera aftur" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Klippa" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Afrita" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Líma" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Líma val" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Velja allt" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Afvelja" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Eyða orðinu á undan" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Eyða orðinu á eftir" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Finna" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Finna næsta" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Finna fyrra" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Skipta út" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Heim" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Byrja" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Ljúka" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Fyrri" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Næsta" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Upp" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Til baka" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Áfram" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Endurhlaða" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Í byrjun línu" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Í enda línu" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Fara í línu" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Afturábak um orð" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Áfram um orð" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Bæta við bókamerki" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Auka aðdrátt" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Minnka aðdrátt" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Fylla skjá" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Sýna valmyndastiku" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Virkja næsta flipa" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Virkja fyrri flipa" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Hjálp" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Hvað er þetta" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Textaútfylling" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Fyrri útfyllingarsamsvörun" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Næsta útfyllingarsamsvörun" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Útfylling strenghluta" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Fyrra atriði á listanum" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Næsta atriði á listanum" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Opna nýlegt" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Vista sem" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Afturkalla" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Forskoðun prentunar" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Póstur" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Hreinsa" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Aðdrátt í raunstærð" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Laga að síðu" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Laga að breidd" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Laga að hæð" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Aðdráttur" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Fara á" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Fara á síðu" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Til baka í skjali" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Áfram í skjali" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Breyta bókamerkjum" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Stafsetning" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Sýna tækjastiku" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Sýna stöðustiku" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Lyklabindingar" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Grunnstilla forrit" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Grunnstilla tækjastikur" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Grunnstilla tilkynningar" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Senda villutilkynningu" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Grunnstilla tungumál…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Um forritið" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Um KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Eyða" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Endurnefna" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Færa í ruslið" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Styrkja" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Sýna/fela faldar skrár" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Búa til möppu" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Opna aðalvalmynd" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Opna samhengisvalmynd" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE-verkfæri til að uppfæra grunnstillingaskrár notenda" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Halda niðurstöðu úr úttaki frá skriftum" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Til einingaprófunar eingöngu: ekki skrifa loknu færslurnar, þannig að við " +"hverju endurkeyrslu verði skrifturnar keyrðar aftur" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Athuga hvort grunnstillingaskráin þarfnist uppfærslu" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Skrá(r) sem uppfærsluleiðbeiningar eru lesnar úr" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Mappa þar sem á að búa til skrár [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "mappa" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Birta notkunarleyfi hugbúnaðar" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Nota í stað altækra grunnstillinga" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Hópur sem á að leita í. Notaðu \"\" fyrir rótarhópinn eða notaðu " +"endurtekið fyrir faldaða hópa." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Lykill sem á að leita að" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Sjálfgefið gildi" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Tegund breytu" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Heiti hóps getur ekki verið autt, notaðu \"\" fyrir rótarhópinn" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Tegund breytu. Notaðu \"bool\" fyrir satt/ósatt, að öðrum kosti er farið með " +"breytuna sem streng" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Eyða tilgreindum lykli ef virkt" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Gildið sem á að skrifa. Í skeljum verður að nota '' ef það er tómt" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Vísbending dagsins" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Einungis fyrir prófanir: nota prófunarmöppur til að forðast skrár " +#~ "notandans" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Valkostir vistunar" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Skipta um tungumál forrits" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Kjörstillingar" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Skrifa KConfig færslur - til afnota fyrir skeljaforrit" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "skrifaði kreadconfig sem þetta forrit byggir á" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/it/kconfig6_qt.po b/poqm/it/kconfig6_qt.po new file mode 100644 index 0000000..df1f77f --- /dev/null +++ b/poqm/it/kconfig6_qt.po @@ -0,0 +1,1101 @@ +# translation of kwriteconfig.po to Italian +# Copyright (C) 2003, 2007, 2008 Free Software Foundation, Inc. +# Andrea Rizzi , 2003. +# Andrea Rizzi , 2007. +# Luca Bellonda , 2008. +# SPDX-FileCopyrightText: 2014, 2016, 2018, 2019, 2020, 2021, 2022, 2023, 2024 Vincenzo Reale +# +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-05-23 02:27+0200\n" +"Last-Translator: Vincenzo Reale \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Lokalize 24.02.2\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Contatta il tuo amministratore di sistema." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Il file di configurazione «%1» non è scrivibile.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Predefinito" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Indietro" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Avanti" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Home" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Nuovo" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Crea un nuovo documento" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Apri…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Apri un documento esistente" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Apri &recenti" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Apri un documento che è stato aperto di recente" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Salva" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Salva documento" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "S&alva come…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Salva il documento con un nuovo nome" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Ann&ulla" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Annulla le modifiche non salvate fatte al documento" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Chiudi" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Chiudi documento" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Stam&pa…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Stampa documento" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Antepri&ma di stampa" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Mostra un'anteprima di stampa del documento" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Posta…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Invia documento tramite posta" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Esci" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Esci dall'applicazione" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Ann&ulla" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Annulla l'ultima azione" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Ri&fai" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Rifai l'ultima azione annullata" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "&Taglia" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Taglia la selezione negli appunti" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Copia" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Copia la selezione negli appunti" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Incolla" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Incolla il contenuto degli appunti" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Pu&lisci" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Seleziona t&utto" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Dese&leziona" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Trova…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Trova &successivo" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Trova &precedente" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Sostituisci…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Ingr&andimento alla dimensione effettiva" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Mostra il documento nelle sue dimensioni effettive" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "A&datta alla pagina" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Adatta le dimensioni della pagina alla finestra" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Adatta alla &larghezza della pagina" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Adatta la larghezza della pagina alla finestra" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Adatta all'&altezza della pagina" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Adatta l'altezza della pagina alla finestra" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "&Ingrandisci" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "&Riduci" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Ingrandimento…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Seleziona il livello di ingrandimento" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "Aggio&rna" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Aggiorna il documento" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "S&u" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Vai su" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "Pagina &precedente" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Vai alla pagina precedente" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Pagina &successiva" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Vai alla pagina successiva" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "Va&i a..." + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Va&i alla pagina…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Va&i alla riga…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Prima pagina" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Vai alla prima pagina" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "U<ima pagina" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Vai all'ultima pagina" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Indietro" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Indietro nel documento" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Avanti" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Avanti nel documento" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Aggiungi segnalibro" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Modifica i s&egnalibri" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Controllo ortografico…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Controlla l'ortografia nel documento" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Mostra la barra dei &menu" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Mostra o nascondi la barra dei menu" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Mostra la barra degli &strumenti" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Mostra o nascondi la barra degli strumenti" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Mostra la barra di st&ato" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Mostra o nascondi la barra di stato" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Mo&dalità a schermo intero" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Confi&gura le scorciatoie da tastiera" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Configura %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Configura le &barre degli strumenti…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Configura le ¬ifiche" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "&Manuale di %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Che &cos'è?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Segnala &bug…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Configura la &lingua…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Inform&azioni su %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Informazioni su &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Elimina" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Rinomina…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Cestina" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Donazione" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Apri &menu" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Apri" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Nuovo" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Chiudi" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Salva" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Stampa" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Esci" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Annulla" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Rifai" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Taglia" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Copia" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Incolla" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Incolla la selezione" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Seleziona tutto" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Deseleziona" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Cancella parola all'indietro" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Cancella parola in avanti" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Trova" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Trova succ." + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Trova prec." + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Sostituisci" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Home" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Inizio" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Fine" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Precedente" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Avanti" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Su" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Indietro" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Inoltra" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Ricarica" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Inizio della riga" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Fine della riga" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Vai alla riga" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Parola precedente" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Parola successiva" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Aggiungi segnalibro" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Ingrandisci" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Rimpicciolisci" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Modalità a schermo intero" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Mostra la barra dei menu" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Attiva la scheda successiva" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Attiva la scheda precedente" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Aiuto" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Cos'è" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Completamento del testo" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Corrispondenza di completamento precedente" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Corrispondenza di completamento successiva" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Completamento sottostringa" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Elemento precedente in elenco" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Elemento successivo in elenco" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Apri recenti" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Salva come" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Ripristina" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Anteprima di stampa" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Posta" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Cancella" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Ingrandimento all dimensione effettiva" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Adatta alla pagina" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Adatta alla larghezza" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Adatta all'altezza" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Ingrandimento" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Vai a" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Vai alla pagina" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Indietro di un documento" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Avanti di un documento" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Modifica i segnalibri" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Ortografia" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Mostra la barra degli strumenti" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Mostra la barra di stato" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Associazioni dei tasti" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Configura applicazione" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Configura le barre degli strumenti" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Configura le notifiche" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Segnala un bug" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Configura la lingua…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Informazioni sull'applicazione" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Informazioni su KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Elimina" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Rinomina" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Cestina" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Donazione" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Mostra/nascondi i file nascosti" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Crea cartella" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Apri il menu principale" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Apri menu contestuale" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Strumento di KDE per aggiornare i file di configurazione dell'utente" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Tieni i risultati di uscita degli script" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Solo per le unità di prova: non scrivere le voci completate, in modo che a " +"ogni nuova esecuzione, gli script vengono eseguiti di nuovo" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Verifica se il file di configurazione richiede un aggiornamento" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "File dai quali leggere le istruzioni di aggiornamento" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Cartella in cui generare i file [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "cartella" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Visualizza la licenza del software." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Utilizza invece della configurazione globale" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Gruppo in cui cercare. Utilizza \"\" per il gruppo radice, o " +"ripetutamente in caso di gruppi nidificati." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Chiave da cercare" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Valore predefinito" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Tipo di variabile" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Il nome del gruppo non può essere vuoto, usa \"\" per il gruppo " +"radice" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Tipo di variabile. Utilizza «bool» per un booleano, altrimenti viene " +"trattato come una stringa" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Elimina il tasto designato se abilitato" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Il valore da scrivere. Obbligatorio, sulla shell utilizzare '' per lasciare " +"vuoto" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Suggerimento del giorno" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Solo per le unità di prova: utilizza le cartelle di prova per evitare i " +#~ "file veri degli utenti" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Opzioni di salvataggio" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Cambia la lingua dell'applicazione" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Preferenze" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Scrive voci di KConfig - da utilizzare in script della shell" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. e Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Ha scritto kreadconfig su cui si basa questo programma" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/ja/kconfig6_qt.po b/poqm/ja/kconfig6_qt.po new file mode 100644 index 0000000..b7069c1 --- /dev/null +++ b/poqm/ja/kconfig6_qt.po @@ -0,0 +1,1193 @@ +# Ryuichi Yamada , 2023. +msgid "" +msgstr "" +"Project-Id-Version: kconfig5_qt\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2023-02-23 18:21+0900\n" +"Last-Translator: Ryuichi Yamada \n" +"Language-Team: Japanese \n" +"Language: ja\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Accelerator-Marker: &\n" +"X-Text-Markup: qtrich\n" +"X-Qt-Contexts: true\n" +"X-Generator: Lokalize 22.12.2\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "システム管理者に連絡してください。" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "設定ファイル \"%1\" は書き込み可能ではありません。\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "デフォルト" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "戻る" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "進む" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "開く" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "保存" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "名前を付けて保存" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "元に戻す" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "閉じる" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "印刷" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "印刷プレビュー" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "メール" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "終了" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "アプリケーションについて" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "元に戻す" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "コピー" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "貼り付け" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "クリア" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "すべて選択" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "選択解除" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom to Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "実際のサイズに拡大" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "ページに合わせる" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "幅に合わせる" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "高さに合わせる" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "拡大" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "縮小" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "拡大" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "すべて選択" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "上へ" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "ページに合わせる" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "戻る" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "進む" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "メニューバーを表示" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "メニューバーを表示" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "フルスクリーンモード" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "言語を設定..." + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "言語を設定..." + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "言語を設定..." + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "これは何" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "バグを報告" + +#: gui/kstandardactions_p.h:135 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "言語を設定..." + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "KDE について" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "KDE について" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "削除" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "名前変更" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "ごみ箱に移動" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "寄付" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "開く" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "新規" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "閉じる" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "保存" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "印刷" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "終了" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "元に戻す" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "やり直す" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "切り取り" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "コピー" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "貼り付け" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "選択を貼り付け" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "すべて選択" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "選択解除" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "前" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "次へ" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "上へ" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "戻る" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "進む" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "再読み込み" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "拡大" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "縮小" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "フルスクリーンモード" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "メニューバーを表示" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "次のタブをアクティベート" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "前のタブをアクティベート" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "ヘルプ" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "これは何" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "名前を付けて保存" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "元に戻す" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "印刷プレビュー" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "メール" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "クリア" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "実際のサイズに拡大" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "ページに合わせる" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "幅に合わせる" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "高さに合わせる" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "拡大" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "バグを報告" + +#: gui/kstandardshortcut.cpp:373 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "言語を設定..." + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "アプリケーションについて" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "KDE について" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "削除" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "名前変更" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "ごみ箱に移動" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "寄付" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "隠しファイルを表示/隠す" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "フォルダを作成" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr " をグローバル設定の代わりに使用" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "参照するキー" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"変数のタイプ。ブーリアンの場合は “bool” を使います。そうでない場合は、文字列" +"として扱われます。" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "書き込む値。シェルから使う場合、空の値には '' を使います。" diff --git a/poqm/ka/kconfig6_qt.po b/poqm/ka/kconfig6_qt.po new file mode 100644 index 0000000..a7c734a --- /dev/null +++ b/poqm/ka/kconfig6_qt.po @@ -0,0 +1,1064 @@ +msgid "" +msgstr "" +"Project-Id-Version: \n" +"POT-Creation-Date: \n" +"PO-Revision-Date: \n" +"Last-Translator: Temuri Doghonadze \n" +"Language-Team: \n" +"Language: ka\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Qt-Contexts: true\n" +"X-Generator: Poedit 3.3.2\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "დაუკავშირდით თქვენს სისტემურ ადმინისტრატორს." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "%1: კონფიგურაციის ფაილი ჩაწერადი არაა.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "ნაგულისხმები" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&უკან" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&წინ" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&საწყისი" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&ახალი" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "ახალი დოკუმენტის შექმნა" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&გახსნა…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "არსებული დოკუმენტის გახსნა" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "ბოლოს გახსნილი ფაილების გახსნა" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "ახლახანს გახსნილი დოკუმენტის გახსნა" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&შენახვა" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "დოკუმენტის შენახვა" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "შეინახვა &როგორც…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "დოკუმენტის ახალი სახელით შენახვა" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "&დაბრუნება" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "დოკუმენტზე განხორციელებული ცვლილებების გაუქმება" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&დახურვა" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "დოკუმენტის დახურვა" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&ბეჭდვა…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "დოკუმენტის დაბეჭდვა" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "&დასაბეჭდის მინიატურა" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "მიმდინარე დოკუმენტების დაბეჭდვისწინა გადახედვის ჩვენება" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&ელფოსტა…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "დოკუმენტის ელფოსტით გაგზავნა" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&გასვლა" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "აპლიკაციიდან გასვლა" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&დაბრუნება" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "ბოლო ქმედების გაუქმება" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "&გამეორება" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "ბოლო დაბრუნებული ქმედების გამეორება" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "ამ&ოჭრა" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "მონიშნულის ბუფერში ამოჭრა" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&კოპირება" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "მონიშნულის ბუფერში კოპირება" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&ჩასმა" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "გაცვლის ბუფერიდან ჩასმა" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "გასუ&ფთავება" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "ყველაფრის &მონიშვნა" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "&მონიშვნის მოხსნა" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&ძებნა…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "&მომდევნოს მოძებნა" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "&წინას მოძებნა" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&ჩანაცვლება…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "&რეალური ზომამდე გადიდება" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "დოკუმენტის რეალური ზომებით ნახვა" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&გვერდში ჩატევა" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "გვერდში ჩატევამდე გადიდება" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "გვერდის &სიგანეში ჩატევა" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "გვერდის სიგანეში ჩატევამდე გადიდება" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "გვერდის &სიმაღლეში ჩატევა" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "გვერდის სიმაღლეში ჩატევამდე გადიდება" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "&გადიდება" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "&დაპატარავება" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&გადიდება…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "აირჩიეთ გადიდების დონე" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&განახლება" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "დოკუმენტის განახლება" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&მაღლა" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "მაღლა ასვლა" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&წინა გვერდი" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "გადასვლა წინა გვერდზე" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&შემდეგი გვერდი" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "შემდეგ გვერდზე გადასვლა" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&გადასვლა…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&გვერდზე გადასვლა…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&ხაზზე გადასვლა…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&პირველი გვერდი" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "გადასვლა პირველ გვერდზე" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "&ბოლო გვერდი" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "გადასვლა ბოლო გვერდზე" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&უკან" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "დოკუმენტში უკან გადასვლა" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&წინ" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "დოკუმენტში წინ გადასვლა" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "სანიშნეს &დამატება" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&სანიშნეების ჩასწორება…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&მართლწერა…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "დოკუმენტის მართლწერის შემოწმება" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "&მენიუს ზოლის ჩვენება" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "მენიუს ზოლის ჩვენება/დამალვა" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "&პანელის ჩვენება" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "ხელსაწყოთა ზოლის ჩვენება/დამალვა" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "სტატუსის &ზოლის ჩვენება" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "სტატუსის ზოლის ჩვენება/დამალვა" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "&სრულ-ეკრანზე" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "კლავიატურის &მალსახმობების მორგება…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "%1-ის &მორგება…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "ხელსაწყოთა ზოლები&ს გამართვა…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "&შეტყობინებების მორგება…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1-ის &სახელმძღვანელო" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "რა არის &ეს?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&შეცდომის ანგარიში…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "&ენის მორგება…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "%1-ის &შესახებ" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "&KDE-ის შესახებ" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&წაშლა" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&სახელის გადარქმევა…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&სანაგვე ყუთში გადატანა" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&შეწირვა" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "&მენიუს გახსნა" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "გახსნა" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "ახალი" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "დახურვა" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "შენახვა" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "ამობეჭდვა" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "გამოსვლა" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "დაბრუნება" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "ბრძანების აღდგენა" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "ამოჭრა" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "კოპირება" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "ჩასმა" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "მონიშნულის ჩასმა" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "ყველას მონიშვნა" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "მონიშვნის მოხსნა" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "წინა სიტყვის წაშლა" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "შემდეგი სიტყვის წაშლა" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "მოძებნა" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "მომდევნოს მოძებნა" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "წინას პოვნა" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "ჩანაცვლება" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "საწყისი" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "დაწყება" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "დასრულება" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "პრიორიტეტი" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "შემდეგი" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "მაღლა" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "უკან" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "წინ" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "თავიდან ჩატვირთვა" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "ხაზის დასაწყისი" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "ხაზის დასასრული" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "ხაზზე გადასვლა" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "წინა სიტყვა" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "შემდეგი სიტყვა" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "სანიშნის დამატება" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "გადიდება" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "გადიდება" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "სრულეკრანი რეჟიმი" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "მენიუს ზოლის ჩვენება" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "შემდეგი ჩანართის გააქტიურება" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "წინა ჩანართის გააქტიურება" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "დახმარება" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "რა არის ეს" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "ტექსტის დასრულება" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "წინა დასრულებაზე გადასვლა" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "შემდეგ დასრულებაზე გადასვლა" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "ქვესტრიქონის დასრულება" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "სიის წინა ჩანაწერი" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "სიის შემდეგი ჩანაწერი" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "ბოლოს გახსნილი ფაილების გახსნა" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "შენახვა როგორც" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "დაბრუნება" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "დასაბეჭდის გადახედვა" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "წერილი" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "სუფთა ცა" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "რეალური ზომამდე გადიდება" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "გვერდში ჩატევა" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "სიგანეში ჩატევა" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "სიმაღლეში ჩატევა" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "გადიდება" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "გადასვლა" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "გვერდზე გადასვლა" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "წინა დოკუმენტი" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "შემდეგი დოკუმენტი" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "სანიშნების ჩასწორება" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "მართლწერა" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "პანელის ჩვენება" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "სტატუსის ზოლის ჩვენება" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "კლავიატურის ბმები" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "აპლიკაციის მორგება" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "ხელსაწყოთა ზოლების გამართვა" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "შეტყობინებების მორგება" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "შეცდომის ანგარიში" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "ენის მორგება…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "ინფორმაცია ამ აპლიკაციის შესახებ" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "KDE-ს შესახებ" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "წაშლა" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "სახელის გადარქმევა" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "ფაილის ნაგავში გადატანა" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "შემოწირულობა" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "დამალული ფაილების ჩვენება/დამალვა" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "საქაღალდის შექმნა" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "მთავარი მენიუს გახსნა" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "კონტექსტური მენიუს გახსნა" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE-ის პროგრამა მომხმარებლის კონფიგურაციის ფაილების განახლებისთვის" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "გამოტანილი შედეგების სკრიპტებისგან დამალვა" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"მხოლოდ ტესტირებისთვის: ნუ დაწერთ დასრულების ჩანაწერებს, რადგან ყოველი " +"თავიდან გაშვებისას სკრიპტები თავიდან სრულდება" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "შემოწმება, კონფიგურაციის ფაილი თვითონ ხომ არ ითხოვს განახლებას" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "განახლების ინსტრუქციების ფაილი" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "ფაილების დასაგენერირებელი საქაღალდე [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "საქაღალდე" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "სალიცენზიო შეთანხმების ჩვენება." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "გლობალური კონფიგურაციის მაგიერ -ის გამოყენება" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"მოსაძებნი ჯგუფი. გამოიყენეთ\"\" საწყისი ჯგუფისთვის ან გამოიყენეთ " +"გამეორებით, ჩალაგებული ჯგუფებისთვის." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "მოსაძებნი გასაღები" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "ნაგულისხმები მნიშვნელობა" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "ცვლადის ტიპი" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"ჯგუფის სახელი ცარიელი ვერ იქნება. საწყისი ჯგუფისთვის გამოიყენეთ \"\"" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"ცვლადის ტიპი. გამოიყენეთ \"bool\" ლოგიკური მნიშვნელობისთვის. წინააღმდეგ " +"შემთხვევაში ის სტრიქონად აღიქმება" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "გამოყოფილი გასაღების წაშლა, თუ ჩართულია" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "ჩასაწერი მნიშვნელობა. გარსში, ცარიელისთვის გამოიყენეთ ''" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "დღის მინიშნება" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "მხოლოდ ერთეულის ტესტირებისთვის: გამოიყენეთ სატესტო საქაღალდეები, რათა " +#~ "მომხმარებლის რეალურ ფაილებს არ შეეხოთ" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "პარამეტრების შენახვა" diff --git a/poqm/kab/kconfig6_qt.po b/poqm/kab/kconfig6_qt.po new file mode 100644 index 0000000..61120ab --- /dev/null +++ b/poqm/kab/kconfig6_qt.po @@ -0,0 +1,1241 @@ +# translation of kwriteconfig.po to British English +# Copyright (C) 2003, 2008 Free Software Foundation, Inc. +# +# Malcolm Hunter , 2003, 2008. +# Andrew Coles , 2009. +# Steve Allewell , 2014, 2015, 2016, 2017, 2018, 2019, 2020. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2021-05-23 17:08+0100\n" +"Last-Translator: Slimane Selyan Amiri \n" +"Language-Team: British English \n" +"Language: kab\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Generator: Poedit 2.4.2\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Ttxil-k·m nermes anedbal-ik·im n unagraw." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Afaylu n uswel \"%1\" ur yelli ara i tira.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Amezwar" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Ɣer deffir" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Ɣer zdat" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Agejdan" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Ldi" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Ldi ineggura" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Sekles" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Sekles am" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Erred" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Mdel" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Siggez" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Siggez taskant" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Imayl" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "FfeÉ£" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Γef usnas" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Err-d" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Nγel" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Sená¹­eḍ" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Sfeḍ" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Fren akk" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Kkes tafrayt" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Af" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Nadi uḍfir" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Nadi uzwir" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Semselsi" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Teγzi tamirant" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Ddu É£er usebter" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "SemÉ£eṛ" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Simẓi" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "SemÉ£eṛ" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Fren akk" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Asawen" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Ddu É£er usebter" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Ddu É£er izirig" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Ddu É£er usebter" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Ddu É£er izirig" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Ddu É£er izirig" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Ddu É£er usebter" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Ɣer deffir" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Ɣer zdat" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Rnu tacreḍt n usebter" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Modifier les signets" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Taγdira" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Sken afeggag n wumuγ" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Sken afeggag n wumuγ" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Sken tafeggagt n ifecka" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Sken tafeggagt n ifecka" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Swel ifeggagen n yifecka" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "D acu wa" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Azen abug" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Γef KDE" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Γef KDE" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Kkes" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Beddel isem" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Err É£er tqecwalt" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Mudd tawsa" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Ldi ineggura" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Ldi" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Amynut" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Mdel" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Sekles" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Siggez" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "FfeÉ£" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Err-d" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Err-d" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Gzem" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Nγel" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Sená¹­eḍ" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Sená¹­eḍ tafrant" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Fren akk" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Kkes tafrayt" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Af" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Nadi uḍfir" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Nadi uzwir" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Semselsi" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Agejdan" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Bdu" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Tagara" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Γer zdat" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Asawen" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Ɣer deffir" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Ɣer zdat" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Smiren" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Tazwara n yizirig" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Taggara n yizirig" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Ddu É£er izirig" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Rnu tacreḍt n usebter" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "SemÉ£eṛ" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Simẓi" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Sken afeggag n wumuγ" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Rmed iccer d-iteddun" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Rmed iccer yezrin" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Tallalt" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "D acu wa" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Akemmel n uḍris" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Ldi ineggura" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Sekles am" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Erred" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Siggez taskant" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Imayl" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Sfeḍ" + +#: gui/kstandardshortcut.cpp:299 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Teγzi tamirant" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "SemÉ£eṛ" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Ddu É£er" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Ddu É£er usebter" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Modifier les signets" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Taγdira" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Sken tafeggagt n ifecka" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Swel ifeggagen n yifecka" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Azen abug" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Γef usnas" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Γef KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Kkes" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Beddel isem" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Err É£er tqecwalt" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Mudd tawsa" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Rnu akaram" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Afecku KDE i uleqqem n yifuyla n twila n useqdac" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Eǧǧ igmaḍ n tffÉ£a n yisekripten" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Senqed ma yella afaylu n uswel yesra aleqqem" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "akaram" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Valeur par défaut" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Sekles iÉ£ewwaṛen" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Beddel tutlayt n usnas" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Ismenyifen" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "Ismawen-inek·inem" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "Imaylen-inek.inem" diff --git a/poqm/kk/kconfig6_qt.po b/poqm/kk/kconfig6_qt.po new file mode 100644 index 0000000..d7e452e --- /dev/null +++ b/poqm/kk/kconfig6_qt.po @@ -0,0 +1,1077 @@ +# translation of kwriteconfig.po to Kazakh +# +# Sairan Kikkarin , 2005, 2007, 2008. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2008-11-01 10:21-0400\n" +"Last-Translator: Sairan Kikkarin \n" +"Language-Team: Kazakh\n" +"Language: kk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Жалпы баптау орнына қолданылсын" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "Ішінде іздейтін топ. Ішіндегі топтар үшін қайта қолданыңыз." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Кілті" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Айнымалының түрі. Бульдік үшін \"bool\" деңіз, әйтпесе мәтін жолы деп " +"саналады" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Жазылатын мән. Міндетті түрде болу керек, бос болса '' деп жазыңыз" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "KConfig жазулары - қоршау-орта скрипттері үшін" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "kreadconfig-ті негіздеген және жазылған" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/km/kconfig6_qt.po b/poqm/km/kconfig6_qt.po new file mode 100644 index 0000000..75a3540 --- /dev/null +++ b/poqm/km/kconfig6_qt.po @@ -0,0 +1,1076 @@ +# translation of kwriteconfig.po to Khmer +# auk piseth , 2006. +# Khoem Sokhem , 2007, 2008. +# Eng Vannak , 2007. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2008-06-24 10:38+0700\n" +"Last-Translator: Khoem Sokhem \n" +"Language-Team: Khmer \n" +"Language: km\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: KBabel 1.11.4\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "ប្រើ ជំនួស​ឲ្យ​ការ​កំណត់​ជា​សកល" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "ក្រុម​ត្រូវ​រក​មើល ។ ប្រើ​ដដែលៗ​សម្រាប់​ក្រុម​ខាង​ក្នុង ។" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "ពាក្យ​គន្លឹះ​ដែល​ត្រូវ​ស្វែងរក" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "ប្រភេទ​អថេរ ។ ប្រើ \"bool\" សម្រាប់​ប៊ូលីន បើ​ពុំ​នោះ​សោត វា​ត្រូវ​បាន​ចាត់​ទុក​ជា​ខ្សែ​អក្សរ ។" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "តម្លៃ​ដែល​ត្រូវ​សរសេរ ។ ដែល​ចាំបាច់ នៅ​លើ​សែល '' សម្រាប់​ទទេ" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "សរសេរធាតុ KConfig - សម្រាប់​ប្រើ​ក្នុង​ស្គ្រីប​សែល" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "រក្សា​សិទ្ធិ​ឆ្នាំ ២០០១ ដោយ Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "បាន​សរសេរ kreadconfig នៅ​លើ​មូលដ្ឋាន​នេះ" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/kn/kconfig6_qt.po b/poqm/kn/kconfig6_qt.po new file mode 100644 index 0000000..57861a9 --- /dev/null +++ b/poqm/kn/kconfig6_qt.po @@ -0,0 +1,1063 @@ +# translation of kwriteconfig.po to Kannada +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# Shankar Prasad , 2009. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2009-01-07 16:11+0530\n" +"Last-Translator: Shankar Prasad \n" +"Language-Team: Kannada \n" +"Language: kn\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "ಸಾರ್ವತ್ರಿಕ ಸಂರಚನೆಯ ಬದಲು ಅನ್ನು ಉಪಯೋಗಿಸು" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "ನೋಡಬೇಕಾದ ಪದ" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/ko/kconfig6_qt.po b/poqm/ko/kconfig6_qt.po new file mode 100644 index 0000000..3524893 --- /dev/null +++ b/poqm/ko/kconfig6_qt.po @@ -0,0 +1,1098 @@ +# Translation of kwriteconfig to Korean. +# Copyright (C) 2007 This_file_is_part_of_KDE +# This file is distributed under the same license as the 2007 package. +# SPDX-FileCopyrightText: 2007, 2014, 2015, 2016, 2017, 2018, 2020, 2021, 2022, 2023, 2024 Shinjo Park +# +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-08-20 23:33+0200\n" +"Last-Translator: Shinjo Park \n" +"Language-Team: Korean \n" +"Language: ko\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Lokalize 23.08.5\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "시스템 관리자에게 연락하십시오." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "설정 파일 \"%1\"에 기록할 수 없습니다.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "기본값" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "뒤로(&B)" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "앞으로(&F)" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "홈(&H)" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "새로 만들기(&N)" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "새 문서 만들기" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "열기(&O)…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "기존 문서 열기" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "최근에 연 파일(&R)" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "최근에 열었던 문서 열기" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "저장(&S)" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "문서 저장" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "다른 이름으로 저장(&A)…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "다른 이름으로 문서 저장" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "되돌리기(&V)" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "저장되지 않은 문서의 변경 사항 되돌리기" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "닫기(&C)" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "문서 닫기" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "인쇄(&P)…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "문서 인쇄" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "인쇄 미리 보기(&W)" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "문서의 인쇄 미리 보기 표시" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "메일 전송(&M)…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "이메일로 문서 전송" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "끝내기(&Q)" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "앱 끝내기" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "실행 취소(&U)" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "마지막 동작 실행 취소" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "다시 실행(&D)" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "마지막으로 취소한 동작 다시 실행" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "잘라내기(&T)" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "선택 항목을 클립보드로 잘라내기" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "복사(&C)" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "선택 항목을 클립보드에 복사" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "붙여넣기(&P)" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "클립보드 내용 붙여넣기" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "지우기(&L)" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "모두 선택(&A)" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "선택 해제(&L)" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "찾기(&F)…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "다음 찾기(&N)" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "이전 찾기(&V)" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "바꾸기(&R)…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "실제 크기로 조정(&A)" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "문서를 실제 크기로 보기" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "쪽에 맞추기(&F)" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "쪽 크기를 ì°½ 크기에 맞게 조정" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "쪽 너비에 맞추기(&W)" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "쪽 너비를 ì°½ 너비에 맞게 조정" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "쪽 높이에 맞추기(&H)" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "쪽 높이를 ì°½ 높이에 맞게 조정" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "확대(&I)" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "축소(&O)" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "확대/축소(&Z)…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "확대/축소 단계 선택" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "새로 고침(&R)" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "문서 새로 고침" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "위로(&U)" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "위로 이동" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "이전 쪽(&P)" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "이전 쪽으로 이동" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "다음 쪽(&N)" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "다음 쪽으로 이동" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "이동(&G)…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "쪽으로 이동(&G)…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "줄로 이동(&G)…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "첫 쪽(&F)" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "첫 번째 쪽으로 이동" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "마지막 쪽(&L)" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "마지막 쪽으로 이동" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "뒤로(&B)" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "문서에서 뒤로 이동" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "앞으로(&F)" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "문서에서 앞으로 이동" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "책갈피 추가(&A)" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "책갈피 편집(&E)…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "맞춤법 검사(&S)…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "문서의 맞춤법 검사" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "메뉴 표시줄 표시(&M)" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "메뉴 표시줄 표시 또는 숨기기" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "도구 모음 표시(&T)" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "도구 모음 표시 또는 숨기기" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "상태 표시줄 표시(&A)" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "상태 표시줄 표시 또는 숨기기" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "전체 화면 모드(&U)" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "키보드 단축키 설정(&H)…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "%1 설정(&C)…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "도구 모음 설정(&B)…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "알림 설정(&N)…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1 도움말(&H)" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "이것에 대한 설명(&T)" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "버그 ë³´ê³ (&R)…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "언어 설정(&L)…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "%1 정보(&A)" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "KDE 정보(&K)" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "삭제(&D)" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "이름 바꾸기(&R)…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "휴지통으로 이동(&M)" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "기부하기(&D)" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "메뉴 열기(&M)" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "열기" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "새로 만들기" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "닫기" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "저장" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "인쇄" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "끝내기" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "실행 취소" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "다시 실행" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "잘라내기" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "복사" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "붙여넣기" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "선택 붙여넣기" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "모두 선택" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "선택 해제" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "이전 단어 삭제" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "다음 단어 삭제" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "찾기" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "다음 찾기" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "이전 찾기" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "바꾸기" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "홈" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "시작" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "끝" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "이전" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "다음" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "위로" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "뒤로" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "앞으로" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "새로 고침" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "줄 시작" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "줄 끝" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "줄로 이동" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "이전 단어" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "다음 단어" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "책갈피 추가" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "확대" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "축소" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "전체 화면 모드" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "메뉴 표시줄 표시" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "다음 탭 활성화" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "이전 탭 활성화" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "도움말" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "이것에 대한 설명" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "텍스트 완성" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "이전 완성 일치" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "다음 완성 일치" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "하위 문자열 완성" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "목록의 이전 항목" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "목록의 다음 항목" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "최근 항목 열기" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "다른 이름으로 저장" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "되돌리기" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "인쇄 미리 보기" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "메일" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "지우기" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "실제 크기로 조정" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "쪽 맞춤" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "폭 맞춤" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "높이 맞춤" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "확대/축소" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "이동" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "쪽으로 이동" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "문서 뒤로" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "문서 앞으로" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "책갈피 편집" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "맞춤법 검사" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "도구 모음 표시" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "상태 표시줄 표시" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "키 바인딩" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "앱 설정" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "도구 모음 설정" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "알림 설정" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "버그 ë³´ê³ " + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "언어 설정…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "앱 정보" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "KDE 정보" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "삭제" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "이름 바꾸기" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "휴지통으로 이동" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "기부하기" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "숨김 파일 표시/숨기기" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "폴더 만들기" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "주 메뉴 열기" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "상황에 맞는 메뉴 열기" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "사용자 설정 파일을 업데이트하는 KDE 도구" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "스크립트 출력 ê²°ê³¼ 저장" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"단위 테스트 전용입니다. 완료된 항목을 기록하지 않으며 재실행 시 매번 스크립트" +"를 다시 실행함" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "설정 파일이 업데이트가 필요한 지 여부 확인" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "업데이트 동작을 읽을 파일" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "파일을 생성할 디렉터리 [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "디렉터리" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "소프트웨어 라이선스를 표시합니다." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "전역 설정 대신 사용하기" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"찾아볼 그룹. 루트 그룹을 지정하려면 \"\", 그룹 안의 그룹에서는 재귀" +"적으로 사용하십시오." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "찾을 키" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "기본값" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "변수 형식" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"그룹 이름은 비어 있을 수 없습니다. 루트 그룹을 지정하려면 \"\"를 사" +"용하십시오" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"변수의 형식입니다. ì°¸/거짓에 대해서는 \"bool\"을 사용해야 하며, 그렇지 않으" +"ë©´ 문자열로 취급합니다" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "활성화된 경우 지정한 키 삭제" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"기록할 값입니다. 필수적이며, 셸에서 빈 값을 사용하려면 ''을 사용하십시오" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "오늘의 팁" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "유닛 테스트 전용: 사용자의 실제 파일에 접근하지 않도록 테스트 디렉터리 사" +#~ "용" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "저장 옵션" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "프로그램 언어 변경" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "설정" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "KConfig 항목을 작성합니다 - 셸 스크립트에 사용합니다" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "기반이 되는 kreadconfig을 작성했습니다" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/ku/kconfig6_qt.po b/poqm/ku/kconfig6_qt.po new file mode 100644 index 0000000..1fffbb3 --- /dev/null +++ b/poqm/ku/kconfig6_qt.po @@ -0,0 +1,1082 @@ +# translation of kwriteconfig.po to Kurdish +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# Erdal Ronahi , 2007, 2008. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2009-01-03 06:30+0200\n" +"Last-Translator: Omer Ensari \n" +"Language-Team: Kurdish \n" +"Language: ku\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-Language: Kurdish\n" +"X-Poedit-SourceCharset: utf8\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Şûna veavakirina giştî bi kar bîne" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "Kom ji bo nêrînê. Ji bo komên hertim xera dibin bi kar bîne." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Mifte ji bo nêrînê" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Teşeyê nirxandinê. Ji bo boolean \"bool\" bi kar bîne, wekî din ev tê mîna " +"hevok bê nasîn" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Nirx ji bo nivîsînê. Pêwist e, di termînal de ji bo yê vala \" bi kar bîne " + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Têketinên KConfig binivîse - ji bo bi kar anîna skrîptên shell" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "kreadconfig di bingeha vê de nivîsî" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/lb/kconfig6_qt.po b/poqm/lb/kconfig6_qt.po new file mode 100644 index 0000000..428d056 --- /dev/null +++ b/poqm/lb/kconfig6_qt.po @@ -0,0 +1,1082 @@ +# translation of kwriteconfig.po to Luxembourgish +# Michel Ludwig , 2005. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2005-12-24 11:51+0100\n" +"Last-Translator: Michel Ludwig \n" +"Language-Team: Luxembourgish \n" +"Language: lb\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Grupp an där gekuckt soll ginn" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Grupp an där gekuckt soll ginn" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Grupp an där gekuckt soll ginn" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Grupp an där gekuckt soll ginn" + +#: gui/kstandardshortcut.cpp:181 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Grupp an där gekuckt soll ginn" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Benotz amplaz vun der globaler Configuratiounsdatei" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Schlëssel no deem gesicht soll ginn" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Typ vun der Variabel. Benotzt \"bool\" fir de Boolschen Typ, anerefalls gëtt " +"se als eng Zeechekette behandelt" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"De Wäert dee geschriwwe soll ginn, obligatoresch. Bei enger Shell benotzt \" " +"fir en eidele Wäert unzeginn" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Schreift KConfig-Entréen - zur Benotzung a Shellskripter" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "Michel Ludwig" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "michel.ludwig@kdemail.net" diff --git a/poqm/lt/kconfig6_qt.po b/poqm/lt/kconfig6_qt.po new file mode 100644 index 0000000..8bb21a6 --- /dev/null +++ b/poqm/lt/kconfig6_qt.po @@ -0,0 +1,1078 @@ +# translation of kwriteconfig.po to +# Donatas Glodenis , 2005. +# Liudas AliÅ¡auskas , 2014. +# Mindaugas Baranauskas , 2016, 2019. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-07-10 03:03+0300\n" +"Last-Translator: Moo\n" +"Language-Team: Lithuanian \n" +"Language: lt\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : n%10>=2 && (n%100<10 || n" +"%100>=20) ? 1 : n%10==0 || (n%100>10 && n%100<20) ? 2 : 3);\n" +"X-Qt-Contexts: true\n" +"X-Generator: Poedit 3.4.2\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Susisiekite su sistemos administratoriumi." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "KonfigÅ«racijos failas „%1“ nėra skirtas raÅ¡ymui.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Numatytasis" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Atgal" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Pirmyn" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Pradinis puslapis" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Naujas" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Sukurti naują dokumentą" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "At&verti…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Atverti esamą dokumentą" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Atverti &paskiausiai naudotą" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Atverti paskiausiai atvertą dokumentą" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Ä®&raÅ¡yti" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Ä®raÅ¡yti dokumentą" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Ä®raÅ¡yti &kaip…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Ä®raÅ¡yti dokumentą nauju pavadinimu" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Su&grąžinti" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Sugrąžinti neįraÅ¡ytus dokumente atliktus pakeitimus" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Užverti" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Užverti dokumentą" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "S&pausdinti…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Spausdinti dokumentą" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "&Spaudinio peržiÅ«ra" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Rodyti dokumento spaudinio peržiÅ«rą" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Siųsti paÅ¡tu…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Siųsti dokumentą paÅ¡tu" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&IÅ¡jungti" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "IÅ¡jungti programą" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&AtÅ¡aukti" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "AtÅ¡aukti paskutinį veiksmą" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "G&rąžinti" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Grąžinti paskutinį atÅ¡auktą veiksmą" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "IÅ¡kirp&ti" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "IÅ¡kirpti žymėjimą į iÅ¡karpinę" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Kopijuoti" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Kopijuoti žymėjimą į iÅ¡karpinę" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Ä®&dėti" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Ä®dėti iÅ¡karpinės turinį" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "IÅ¡va&lyti" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Pažymėti &viską" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "&Panaikinti žymėjimą" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&IeÅ¡koti…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "IeÅ¡koti &kito" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "IeÅ¡koti &ankstesnio" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Pa&keisti…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Keisti mastelį į &faktinį dydį" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Rodyti dokumentą faktiniu dydžiu" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Talpinti į puslapį" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Mastelis toks, kad puslapis tilptų lange" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Talpinti į puslapio &plotį" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Mastelis toks, kad puslapio plotis tilptų lange" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Talpinti į puslapio &aukÅ¡tį" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Mastelis toks, kad puslapio aukÅ¡tis tilptų lange" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "D&idinti" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "&Mažinti" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Mastelis…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Pasirinkite mastelio lygį" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "Ä®&kelti iÅ¡ naujo" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Ä®kelti dokumentą iÅ¡ naujo" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&AukÅ¡tyn" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Eiti aukÅ¡tyn" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "Ankstesnis &puslapis" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "PerÅ¡okti į ankstesnį puslapį" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Kitas puslapis" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "PerÅ¡okti į kitą puslapį" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Eiti į…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Eiti į puslapį…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Eiti į eilutę…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Pirmas puslapis" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "PerÅ¡okti į pirmą puslapį" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "P&askutinis puslapis" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "PerÅ¡okti į paskutinį puslapį" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Atgal" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Eiti dokumente atgal" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Pirmyn" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Eiti dokumente pirmyn" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Pridėti žymelę" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Taisyti žymeles…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&RaÅ¡ybos tikrinimas…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Tikrinti raÅ¡ybą dokumente" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Rodyti &meniu juostą" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Rodyti arba slėpti meniu juostą" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Rodyti į&rankių juostą" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Rodyti arba slėpti įrankių juostą" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Rodyti &bÅ«senos juostą" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Rodyti arba slėpti bÅ«senos juostą" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Rodyti &visame ekrane" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "KonfigÅ«ruoti &sparčiuosius klaviÅ¡us…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&KonfigÅ«ruoti %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "KonfigÅ«ruoti įrankių &juostas…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "KonfigÅ«ruoti pra&neÅ¡imus…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1 &vadovas" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Kas &tai yra?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "P&raneÅ¡ti apie programos klaidą…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "KonfigÅ«ruoti ka&lbą…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&Apie %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Apie &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "IÅ¡&trinti" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Pe&rvadinti…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Per&kelti į Å¡iukÅ¡linę" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Pa&remti" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Atverti &meniu" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Atverti" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Naujas" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Užverti" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Ä®raÅ¡yti" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Spausdinti" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "IÅ¡eiti" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "AtÅ¡aukti" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Grąžinti" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "IÅ¡kirpti" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopijuoti" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Ä®dėti" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Ä®dėti žymėjimą" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Pažymėti viską" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Nuimti žymėjimą" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "IÅ¡trinti žodį atgal" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "IÅ¡trinti žodį pirmyn" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Rasti" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Rasti kitą" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Rasti ankstesnį" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Pakeisti" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Ä® pradžią" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Pradžia" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Pabaiga" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Ankstesnis" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Kitas" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "AukÅ¡tyn" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Atgal" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Pirmyn" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Ä®kelti iÅ¡ naujo" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Eilutės pradžia" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Eilutės pabaiga" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Eiti į eilutę" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Žodis atgal" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Žodis pirmyn" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Pridėti žymelę" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Didinti" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Mažinti" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Viso ekrano veiksena" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Rodyti meniu juostą" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Aktyvuoti kitą kortelę" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Aktyvuoti ankstesnę kortelę" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Pagalba" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Kas tai" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Teksto baigimas" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Ankstesnis baigimo atitikmuo" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Kitas baigimo atitikmuo" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Poeilučio baigimas" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Ankstesnis elementas sąraÅ¡e" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Kitas elementas sąraÅ¡e" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Atverti paskiausiai naudotą" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Ä®raÅ¡yti kaip" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Sugrąžinti" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Spaudinio peržiÅ«ra" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "PaÅ¡tas" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "IÅ¡valyti" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Keisti mastelį į faktinį dydį" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Talpinti į puslapį" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Talpinti į puslapio plotį" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Talpinti į puslapio aukÅ¡tį" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Mastelis" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Eiti į" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Eiti į puslapį" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Dokumentas atgal" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Dokumentas pirmyn" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Taisyti žymeles" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "RaÅ¡yba" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Rodyti įrankių juostą" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Rodyti bÅ«senos juostą" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Klavišų susiejimai" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "KonfigÅ«ruoti programą" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "KonfigÅ«ruoti įrankių juostas" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "KonfigÅ«ruoti praneÅ¡imus" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "PraneÅ¡ti apie klaidą" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "KonfigÅ«ruoti kalbą…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Apie programą" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Apie KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "IÅ¡trinti" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Pervadinti" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Perkelti į Å¡iukÅ¡linę" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Paremti" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Rodyti/Slėpti paslėptus failus" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Sukurti aplanką" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Atverti pagrindinį meniu" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Atverti kontekstinį meniu" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE įrankis, skirtas atnaujinti naudotojo konfigÅ«racijos failus" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Saugoti iÅ¡vesties rezultatus nuo scenarijų" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Tik vienetų iÅ¡bandymams: neraÅ¡yti atliktus įraÅ¡us, kad tokiu bÅ«du su " +"kiekvienu paleidimu iÅ¡ naujo, scenarijai bÅ«tų vėl vykdomi" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Tikrinti, ar pačiam konfigÅ«racijos failui reikia atnaujinimo" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Failas(-ai) iÅ¡ kurio skaityti atnaujinimo instrukcijas" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Katalogas, į kurį generuoti failus [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "katalogas" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Rodyti programinės įrangos licenciją." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Naudoti vietoje visuotines konfigÅ«racijos" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Grupė, kurioje ieÅ¡koti. Naudokite „“ Å¡aknies grupei arba naudokite " +"pakartotinai kelis kartus įdėtinėms grupėms." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Raktas, kurio ieÅ¡koti" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Numatytoji reikÅ¡mė" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Kintamojo tipas" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Grupės pavadinimas negali bÅ«ti tuščias, Å¡aknies grupei naudokite „“" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Kintamojo tipas. Naudokite „bool“ loginiam tipui, prieÅ¡ingu atveju su juo " +"bus elgiamasi kaip su eilute" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Jei įjungta, iÅ¡trinti paskirtąjį klavišą" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "ReikÅ¡mė, kurią įraÅ¡yti. Privaloma, apvalkale naudokite '' jei tuščia" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Dienos patarimas" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Tik įtaisų testavimams: naudokite testavimo katalogus, kad laikytumėtės " +#~ "atokiau nuo tikrų naudotojo failų" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Ä®raÅ¡yti parinktis" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Pakeisti programos kalbą" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Nuostatos" diff --git a/poqm/lv/kconfig6_qt.po b/poqm/lv/kconfig6_qt.po new file mode 100644 index 0000000..d17a169 --- /dev/null +++ b/poqm/lv/kconfig6_qt.po @@ -0,0 +1,1076 @@ +# translation of kwriteconfig.po to Latvian +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# Aleksejs Zosims , 2007. +# Maris Nartiss , 2007, 2008. +# SPDX-FileCopyrightText: 2024 Toms Trasuns +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-05-28 13:36+0300\n" +"Last-Translator: Toms Trasuns \n" +"Language-Team: Latvian \n" +"Language: lv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 24.02.2\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : " +"2);\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "LÅ«dzu, sazinieties ar savu sistēmas administratoru." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Konfigurācijas datne „%1“ nav rakstāma.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Noklusējums" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Atpakaļ" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Uz priekÅ¡u" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Mājas" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Jauns" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Izveidot jaunu dokumentu" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "A&tvērt…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Atvērt pastāvoÅ¡u dokumentu" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Atvērt &pastāvoÅ¡u" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Atvērt dokumentu, kas jau nesen bija atvērts" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Saglabāt" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Saglabāt dokumentu" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Saglabāt &kā…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Saglabāt dokumentu ar citu nosaukumu" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "At&saukt" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Atsaukt nesaglabātās dokumenta izmaiņas" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Aizvērt" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Aizvērt dokumentu" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Drukāt..." + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Drukāt dokumentu" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Drukas priekÅ¡&skatÄ«jums" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "RādÄ«t, kā izskatÄ«sies izdrukāts dokuments" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Pasts…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "NosÅ«tÄ«t dokumentu pa pastu" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Iziet" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Iziet no programmas" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Atsaukt" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Atsaukt pēdējo darbÄ«bu" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "A&tatsaukt" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Atatsaukt pēdējo atsaukto darbÄ«bu" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "I&zgreizt" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Izgriezt atlasi un ievietot starpliktuvē" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Kopēt" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Kopēt atlasi uz starpliktuvi" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&IelÄ«mēt" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "IelÄ«mēt starpliktuves saturu" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "N&otÄ«rÄ«t" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "AtlasÄ«t &visu" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "&Noņemt atlasi" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Meklēt…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Atrast &nākamo" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Atrast &iepriekšējo" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Aizvietot…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Tuvināt lÄ«dz &faktiskajam izmēram" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "SkatÄ«t dokumentu tā faktiskajā izmērā" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Ietilpināt lapu" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Tuvināt, lai logā ietilpinātu lapu" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Ietilpināt lapu &platumā" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Tuvināt, lai logā ietilpinātu lapas platumu" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Ietilpināt lapas &augstumu" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Tuvināt, lai logā ietilpinātu lapas augstumu" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "&Tuvināt" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Tā&lināt" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Tālummaiņa…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "AtlasÄ«t tālummaiņas lÄ«meni" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Pārlādēt" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Pārlādēt dokumentu" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&AugÅ¡up" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Iet augÅ¡up" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Iepriekšējā lapa" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Iet uz iepriekšējo lapu" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Nākamā lapa" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Iet uz nākamo lapu" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Iet uz…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Iet uz lapu…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Iet uz rindu…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Pirmā lapa" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Iet uz pirmo lapu" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "&Pēdējā lapa" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Iet uz pēdējo lapu" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Atpakaļ" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Iet atpakaļ dokumentā" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Uz priekÅ¡u" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Iet uz priekÅ¡u dokumentā" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Pievienot grāmatzÄ«mi" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Rediģēt grāmatzÄ«mes..." + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&PareizrakstÄ«ba…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "PārbaudÄ«t dokumentā pareizrakstÄ«bu" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "RādÄ«t &izvēļņu joslu" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "RādÄ«t vai paslēpt izvēļņu joslu" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "RādÄ«t &rÄ«kjoslu" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "RādÄ«t vai slēpt rÄ«kjoslu" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "RādÄ«t s&tatusa joslu" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "RādÄ«t vai slēpt statusa joslu" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Pilnekrāna &režīms" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Konfigurēt &tastatÅ«ras saÄ«snes…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Konfigurēt „%1“…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Konfigurēt rÄ«k&joslas..." + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Konfigurēt &paziņojumus…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1 &rokasgrāmata" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Kas &tas ir?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Ziņot par kļūdu..." + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Konfigurēt &valodu…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&Par „%1“" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Par &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Dzēst" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Pārdēvēt…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Pārvietot &uz atkritni" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Zie&dot" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Atvērt &izvēlni" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Atvērt" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Jauns" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Aizvērt" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Saglabāt" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Drukāt" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Iziet" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Atsaukt" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Atatsaukt" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Izgriezt" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopēt" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "IelÄ«mēt" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "IelÄ«mēt atlasi" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "AtlasÄ«t visu" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Noņemt atlasi" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Dzēst vārdu uz aizmuguri" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Dzēst vārdu uz priekÅ¡u" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Atrast" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Atrast nākamo" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Atrast iepriekšējo" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Aizvietot" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Mājas" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Sākt" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Beigt" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Iepriekšējais" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Nākamais" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "AugÅ¡up" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Atpakaļ" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Uz priekÅ¡u" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Pārlādēt" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Rindas sākums" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Rindas beigas" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Iet uz rindu" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Atpakaļ vārds" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Uz priekÅ¡u vārds" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Pievienot grāmatzÄ«mi" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Tuvināt" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Tālināt" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Pilnekrāna režīms" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "RādÄ«t izvēļņu joslu" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Aktivizēt jaunu cilni" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Aktivizēt iepriekšējo cilni" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "PalÄ«dzÄ«ba" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Kas tas ir" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Teksta pabeigÅ¡ana" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Iepriekšējā pabeigÅ¡anas atbilsme" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Nākamā pabeigÅ¡anas atbilsme" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "ApakÅ¡virknes pabeigÅ¡ana" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Iepriekšējais vienums sarakstā" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Nākamais vienums sarakstā" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Atvērt neseno" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Saglabāt kā" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Atsaukt" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Drukas priekÅ¡iestatÄ«jums" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Pasts" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "NotÄ«rÄ«t" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Tuvināt lÄ«dz faktiskajam izmēram" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Ietilpināt lapu" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Ietilpināt platumā" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Ietilpināt augstumā" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Tālummaiņa" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Iet uz" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Iet uz lapu" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Dokuments atpakaļ" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Dokuments uz priekÅ¡u" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Rediģēt grāmatzÄ«mes" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "PareizrakstÄ«ba" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "RādÄ«t rÄ«kjoslu" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "RādÄ«t statusa joslu" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "TastatÅ«ras saÄ«sinājumi" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Konfigurēt programmu" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Konfigurēt rÄ«kjoslas" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Konfigurēt paziņojumus" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Ziņot par kļūdu" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Konfigurēt valodu…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Par programmu" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Par KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Dzēst" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Pārdēvēt" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Pārvietot uz atkritni" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Ziedot" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "RādÄ«t/slēpt slēptas datnes" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Izveidot mapi" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Atvērt galveno izvēlni" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Atvērt konteksta izvēlni" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE rīkos lietotāja konfigurācijas datņu atjaunināšanai" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Paturēt skriptu izvades rezultātus" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Tikai vienību testiem: nerakstīt pabeigtos ierakstus, lai ar katru atkārtotu " +"palaišanu, skripti tiktu izpildīti no jauna" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Pārbaudīt, vai konfigurācijas datnei pašai nepieciešams atjauninājums" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Datne(-es), no kura(-ām) nolasīt atjauninājuma instrukcijas" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Mape, kurā ģenerēt datnes [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "mape" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Parādīt programmatūras licenci." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Lietot globālās konfigurācijas vietā" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Grupa, kurā ielūkoties. Izmantojiet „“ saknes grupai vai " +"izmantojiet atkārtoti iegultām grupām." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Meklējamā atslēga" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Noklusējuma vērtība" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Mainīgā tips" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Grupas nosaukums nevar būt tukšs. Saknes grupai izmantojiet „“." + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Mainīgā tips. Lietojiet „bool“ loģiskajiem mainīgajiem, citādi tie tiek " +"uztverti kā rindiņas mainīgie" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Ja ieslēgts dzēst paredzēto atslēgu" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Vērtība, ko rakstīt. Obligāta, čaulā izmantojiet '', ja vajag tukšu vērtību." + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Rakstiet KConfig ierakstus izmantošanai čaulas skriptos" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luiss Pedro Koeljū (Luís Pedro Coelho)" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Uzrakstīja kreadconfig, uz kā viss šis balstās" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luiss Pedro Koeljū (Luís Pedro Coelho)" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhards Rozenkrencers (Bernhard Rosenkraenzer)" diff --git a/poqm/mai/kconfig6_qt.po b/poqm/mai/kconfig6_qt.po new file mode 100644 index 0000000..5475bdd --- /dev/null +++ b/poqm/mai/kconfig6_qt.po @@ -0,0 +1,1077 @@ +# translation of kwriteconfig.po to maithili +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# Sangeeta Kumari , 2008. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2009-01-12 20:08+0530\n" +"Last-Translator: \n" +"Language-Team: maithili \n" +"Language: mai\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=2; plural=(n!=1);\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "इस्तेमाल करू बजाए वैश्विक कान्फिग केर" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "कुँजी जकरा देखल जएनाइ अछि" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"चर क' प्रकार. इस्तेमाल करू \"bool\" बूलिये केर लेल, अन्यथा ई एकटा स्ट्रिंग जहिना बुझल " +"जएताह" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "मूल्य जे लिखल जएनाइ अछि. अनिवार्य, शेलमे खाली क' लेल इस्तेमाल करू '' क'" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "राइट के-कान्फिग प्रविष्टि - शेल स्क्रिप्ट केर उपयोगमे" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 रेड हैट इंक. तथा लुइस पेद्रो कोएल्हो" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "केडीईकान्फिग लिखलक जकरा पर ई आधारित अछि" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "लुइस पेद्रो कोएल्हो" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "बर्नहार्ड रोजेनक्रेन्जेर" diff --git a/poqm/mk/kconfig6_qt.po b/poqm/mk/kconfig6_qt.po new file mode 100644 index 0000000..7383736 --- /dev/null +++ b/poqm/mk/kconfig6_qt.po @@ -0,0 +1,1078 @@ +# Copyright (C) 2006, 2007, 2008 Free Software Foundation, Inc. +# Bozidar Proevski , 2004, 2007, 2008. +# translation of kwriteconfig.po to Macedonian +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2008-07-08 11:36+0200\n" +"Last-Translator: Bozidar Proevski \n" +"Language-Team: Macedonian \n" +"Language: mk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: Plural-Forms: nplurals=3; plural=n%10==1 ? 0 : n%10==2 ? 1 : " +"2;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Користи <датотека> наместо глобалната конфигурација" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "Група кај што ќе се бара. Повторувајте за вгнездени групи." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Клуч кој се бара" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Тип на променлива. Користете „bool“ за логичка, инаку ќе биде земена како " +"низа" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Вредноста за запис. Задолжително, во школка користете '' за празно" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Запиши ги ставките од KConfig - за користење во скрипти за школка" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. и Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Го напиша kreadconfig врз кој е базирано ова" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/ml/kconfig6_qt.po b/poqm/ml/kconfig6_qt.po new file mode 100644 index 0000000..ae26795 --- /dev/null +++ b/poqm/ml/kconfig6_qt.po @@ -0,0 +1,1072 @@ +# translation of kwriteconfig.po to +# Copyright (C) 2008 This_file_is_part_of_KDE +# This file is distributed under the same license as the kdebase package. +# ANI PETER|അനി പീറ്റര്‍ , 2008. +# Hari|ഹരി Vishnu | വിഷ്ണു , 2008. +# Praveen Arimbrathodiyil , 2008. +msgid "" +msgstr "" +"Project-Id-Version: kdebase\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2008-11-29 01:50-0800\n" +"Last-Translator: Praveen Arimbrathodiyil \n" +"Language-Team: SMC \n" +"Language: ml\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +msgctxt "main|" +msgid "Use instead of global config" +msgstr "ഗ്ലോബല്‍ കോണ്‍ഫിഗിനു് പകരം ഉപയോഗിക്കുക" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "ഉള്ളില്‍ തിരയേണ്ട കൂട്ടങ്ങള്‍. നെസ്ടഡ് കൂട്ടങ്ങള്‍ക്കായ് വീണ്ടും വീണ്ടും ഉപയോഗിക്കുക." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +msgctxt "main|" +msgid "Key to look for" +msgstr "തിരയേണ്ട സൂചന" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"വേരിയബിള്‍ തരം. ബൂലിയെന്‍ ആണെങ്കില്‍ \"bool\" ഉപയോഗിക്കുക, അല്ലെങ്കില്‍ അതൊരു സ്ട്രിങ്ങ് ആയി " +"എടുക്കപെടും" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "എഴുതേണ്ട വില (അക്കം). നിര്‍ബന്ധമാണു്‌, ഷെല്ലില്‍ ശൂന്യത്തിനു് '' ഉപയോഗിയ്ക്കുക" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "കെ-കോണ്‍ഫിഗ് എണ്ട്രികള്‍ എഴുതുക - ഷെല്‍ സ്ക്രിപ്ടുകളില്‍ ഉപയോഗിക്കാനായ്" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 റെഡ് ഹാറ്റ്, ഇന്‍കും ലൂയി പെഡ്രോ കോലോയും" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "ഇതു അടിസ്ഥാനപെടുത്തുന്ന കെ-റീഡ്-കോണ്‍ഫിഗ് എഴുതി" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "ലൂയി പെഡ്രോ കോലോ" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "ബെര്‍നാഡ് റോസന്‍ക്രെന്‍സര്‍" diff --git a/poqm/mr/kconfig6_qt.po b/poqm/mr/kconfig6_qt.po new file mode 100644 index 0000000..d284378 --- /dev/null +++ b/poqm/mr/kconfig6_qt.po @@ -0,0 +1,1080 @@ +# translation of kwriteconfig.po to marathi +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# Sandeep Shedmake , 2009. +# Chetan Khona , 2012, 2013. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2013-02-18 13:00+0530\n" +"Last-Translator: Chetan Khona \n" +"Language-Team: Marathi \n" +"Language: mr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 1.5\n" +"Plural-Forms: nplurals=2; plural=(n!=1);\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "जागतिक संयोजना ऐवजी चा वापर करा" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "शोधण्याचा समूह. आंतरीक समूह करिता पुन्हा पुन्हा वापरा." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "शोधण्याची कळ" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"परिवर्तनीयाचा प्रकार. boolean प्रकार असल्यास \"bool\" वापरा, अन्यथा string प्रकार " +"गृहीत धरला जाईल." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "लिहिण्याकरिताचे पाठ्य. दाखल करणे अनिवार्य. रिकामे असल्यास '' वापरा." + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "KConfig नोंद लिहा - शेल स्क्रिप्ट्स मध्ये वापरासाठी" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "ज्यावर हे आधारित आहे ते kreadconfig लिहीले" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/ms/kconfig6_qt.po b/poqm/ms/kconfig6_qt.po new file mode 100644 index 0000000..bc64575 --- /dev/null +++ b/poqm/ms/kconfig6_qt.po @@ -0,0 +1,1079 @@ +# kwriteconfig Bahasa Melayu (Malay) (ms) +# Copyright (C) K Desktop Environment +# +# Muhammad Najmi bin Ahmad Zabidi , 2003. +# Sharuzzaman Ahmat Raslan , 2004, 2008. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2008-08-28 00:17+0800\n" +"Last-Translator: Sharuzzaman Ahmat Raslan \n" +"Language-Team: Malay \n" +"Language: ms\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=2; plural=1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Guna dan bukan tetapan global" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "Kumpulan untuk dicari. Guna berulang untuk kumpulan bersarang." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Kekunci untuk carian" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Jenis pembolehubah. Guna \"bool\" untuk boolean, jika tidak cara " +"pengendalian akan menggunakan rentetan (string)" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Nilai untuk ditulis. Wajib, pada shell gunakan '' untuk kosong" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Tulis input KConfig -- untuk kegunaan skrip cengkerang" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Menulis kreadconfig dimana ini diasaskan" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/nb/kconfig6_qt.po b/poqm/nb/kconfig6_qt.po new file mode 100644 index 0000000..5a759cb --- /dev/null +++ b/poqm/nb/kconfig6_qt.po @@ -0,0 +1,1111 @@ +# Translation of kconfig6_qt to Norwegian Bokmål +# +# Knut Yrvin , 2003. +# Bjørn Kvisli , 2007. +# Bjørn Steensrud , 2008, 2014. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2014-09-25 18:02+0200\n" +"Last-Translator: Bjørn Steensrud \n" +"Language-Team: Norwegian Bokmål \n" +"Language: nb\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 1.5\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Environment: kde\n" +"X-Accelerator-Marker: &\n" +"X-Text-Markup: qtrich\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Kontakt systemadministratoren din." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Oppsettsfila «%1» er ikke skrivbar.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Standard" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +msgctxt "go back|" +msgid "&Back" +msgstr "Tilbake" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +msgctxt "go forward|" +msgid "&Forward" +msgstr "Forover" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +msgctxt "home page|" +msgid "&Home" +msgstr "Hjem" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Åpne" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Åpne nylig brukt" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Lagre" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Lagre som" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Tilbakestill" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Lukk" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Skriv ut" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Forhåndsvisning av utskrift" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "E-post" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Avslutt" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Om programmet" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Angre" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Kopier" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Lim inn" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Tøm" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Velg alt" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Fravelg" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Finn" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Finn neste" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Finn forrige" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Erstatt" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Tilpass til side" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Tilpass til bredden" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Tilpass til høyden" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Forstørr" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Forminsk" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Forstørre/-minske" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Velg alt" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Opp" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Gå til side" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Gå til linje" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Gå til side" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Gå til linje" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Tilpass til side" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Gå til linje" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Gå til side" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Tilbake" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Forover" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Legg til bokmerke" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Rediger bokmerker" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Stavekontroll" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Vis menylinje" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Vis menylinje" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Vis verktøylinje" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Vis verktøylinje" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Vis statuslinja" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Vis statuslinja" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Fullskjermskjøring" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Sett opp verktøylinjer" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Sett opp varslinger" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Hva er dette" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Rapporter feil" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Om KDE" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Om KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Åpne nylig brukt" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Åpne" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Ny" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Lukk" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Lagre" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Skriv ut" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Avslutt" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Angre" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Gjør om" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Klipp ut" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopier" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Lim inn" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Lim inn utvalg" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Velg alt" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Fravelg" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Slett ord bakover" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Slett ord framover" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Finn" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Finn neste" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Finn forrige" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Erstatt" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Hjem" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Begynnelse" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Slutt" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Forrige" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Neste" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Opp" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Tilbake" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Forover" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Last på nytt" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Begynnelsen av linja" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Slutten på linja" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Gå til linje" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Et ord bakover" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Et ord forover" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Legg til bokmerke" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Forstørr" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Forminsk" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Fullskjermskjøring" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Vis menylinje" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Gå til neste fane" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Gå til forrige fane" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Hjelp" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Hva er dette" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Tekstfullføring" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Forrige fullføringstreff" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Neste fullføringstreff" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Delstrengfullføring" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Forrige element i lista" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Neste element i lista" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Åpne nylig brukt" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Lagre som" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Tilbakestill" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Forhåndsvisning av utskrift" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "E-post" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Tøm" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Tilpass til side" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Tilpass til bredden" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Tilpass til høyden" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Forstørre/-minske" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Gå til" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Gå til side" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Dokument bakover" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Dokument forover" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Rediger bokmerker" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Stavekontroll" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Vis verktøylinje" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Vis statuslinja" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Tastebindinger" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Sett opp verktøylinjer" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Sett opp varslinger" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Rapporter feil" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Om programmet" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Om KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE-verktøy for å oppdatere brukerens oppsettsfiler" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Behold sluttresultatet fra skript" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Sjekk om oppsettsfila selv trenger oppdatering" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Mappe der filer skal genereres [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "mappe" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Vis programvarelisens." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Bruk istedenfor globalt oppsett" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Nøkkel å se etter" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Standardverdi" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Variabeltype" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Variabeltype. Bruk \"bool\" for bolske verdier, ellers blir det behandlet " +"som en tekststreng" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Verdien som skal skrives. Obligatorisk, i et skall må du bruke '' for tomme " +"verdier" diff --git a/poqm/nds/kconfig6_qt.po b/poqm/nds/kconfig6_qt.po new file mode 100644 index 0000000..5e541ca --- /dev/null +++ b/poqm/nds/kconfig6_qt.po @@ -0,0 +1,1267 @@ +# Sönke Dibbern , 2014. +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2014-08-13 00:11+0200\n" +"Last-Translator: Sönke Dibbern \n" +"Language-Team: Low Saxon \n" +"Language: nds\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Lokalize 1.5\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Snack bitte Dien Systeempleger an." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "De Instellen-Datei „%1“ lett sik nich schrieven.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Standard" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Torüch" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Vörut" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Tohuus" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Opmaken" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Verleden opmaken" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Sekern" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Sekern as" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Torüchdreihen" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Tomaken" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Drucken" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Druckvöransicht" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Nettpost" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Utmaken" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Wat över't Programm vertellen" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Torüchnehmen" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Koperen" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Infögen" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Leddig maken" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "All utsöken" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Köör torüchnehmen" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Söken" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Nakamen söken" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Verleden söken" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Utwesseln" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Redig Grött" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Op Siet topassen" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Op Breed topassen" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Op Hööchde topassen" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Grötter maken" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Lütter maken" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Ansichtgrött" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "All utsöken" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Na baven" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Na Siet gahn" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Na Reeg gahn" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Na Siet gahn" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Na Reeg gahn" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Op Siet topassen" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Na Reeg gahn" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Na Siet gahn" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Torüch" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Vörut" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Leesteken tofögen" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Leestekens bewerken" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Klookschriever" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Menübalken wiesen" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Menübalken wiesen" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Warktüüchbalken wiesen" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Warktüüchbalken wiesen" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Statusbalken wiesen" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Statusbalken wiesen" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Heelschirmbedrief" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Warktüüchbalkens instellen" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Bescheden instellen" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Wat is dat" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Fehler künnig maken" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Över KDE" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Över KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Verleden opmaken" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Opmaken" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Nieg" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Tomaken" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Sekern" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Drucken" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Utmaken" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Torüchnehmen" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Wedderhalen" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Knippen" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Koperen" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Infögen" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Köör infögen" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "All utsöken" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Köör torüchnehmen" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Verleden Woort wegdoon" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Nakamen Woort wegdoon" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Söken" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Nakamen söken" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Verleden söken" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Utwesseln" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Tohuus" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Anfang" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Enn" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Verleden" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Nakamen" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Na baven" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Torüch" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Vörut" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Nieg laden" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Reeganfang" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Reegenn" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Na Reeg gahn" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Een Woort torüch" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Een Woort vörut" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Leesteken tofögen" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Grötter maken" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Lütter maken" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Heelschirmbedrief" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Menübalken wiesen" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Nakamen Paneel anmaken" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Verleden Paneel anmaken" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Hülp" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Wat is dat" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Text kompletteren" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Verleden Kompletteren" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Nakamen Kompletteren" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Ünnertext kompletteren" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Verleden Listindrag" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Nakamen Listindrag" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Verleden opmaken" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Sekern as" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Torüchdreihen" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Druckvöransicht" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Nettpost" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Leddig maken" + +#: gui/kstandardshortcut.cpp:299 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Redig Grött" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Op Siet topassen" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Op Breed topassen" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Op Hööchde topassen" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Ansichtgrött" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Gahn" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Na Siet gahn" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Dokment torüch" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Dokment vörut" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Leestekens bewerken" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Klookschriever" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Warktüüchbalken wiesen" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Statusbalken wiesen" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Tasttoornen" + +#: gui/kstandardshortcut.cpp:348 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Bescheden instellen" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Warktüüchbalkens instellen" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Bescheden instellen" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Fehler künnig maken" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Wat över't Programm vertellen" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Över KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE-Warktüüch för't Opfrischen vun Bruker-Instellendateien" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Skriptutgaven wohren" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Kiek bitte na, wat de Instellendatei sülven opfrischt warrn mutt" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Orner, binnen den Dateien opstellt warrt [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "Orner" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Verlööfnis wiesen" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr " ansteed de globalen Instellen bruken" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgctxt "main|" +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Koppel, binnen den Du kieken wullt. Bi inbett Koppeln mehrmaalig bruken." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Slötel, de söcht warrt" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Standardweert" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Typ vun de Variable" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Typ vun de Variable. Bruuk „bool“ för'n boolsche, anners warrt se as en " +"Tekenkeed behannelt" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"De Weert, den Du schrieven wullt. Mutt angeven warrn. Op'n Konsool tweemaal " +"Apostrof ('') bruken, wenn Du en leddig Weert angeven wullt." + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Tipp för Vundaag" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Instellen sekern" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Programmspraak wesseln" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Instellen" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "KConfig-Indrääg schrieven - för Bruuk in Befehlsreegskripten" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "© 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Hett kreadconfig schreven, wat de Grundlaag för dit Programm weer" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/ne/kconfig6_qt.po b/poqm/ne/kconfig6_qt.po new file mode 100644 index 0000000..1df8d3b --- /dev/null +++ b/poqm/ne/kconfig6_qt.po @@ -0,0 +1,1087 @@ +# translation of kwriteconfig.po to Nepali +# Nabin Gautam , 2006, 2007. +# Kapil Timilsina , 2006. +# Mahesh Subedi , 2007. +# shyam krishna bal , 2007. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2007-08-20 11:57+0545\n" +"Last-Translator: Nabin Gautam \n" +"Language-Team: Nepali \n" +"Language: ne\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n !=1\n" +"X-Generator: KBabel 1.11.4\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "खोजीका लागि समूह" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "खोजीका लागि समूह" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "खोजीका लागि समूह" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "खोजीका लागि समूह" + +#: gui/kstandardshortcut.cpp:181 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "खोजीका लागि समूह" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "विश्वव्यापी कन्फिगको सट्टा प्रयोग गर्नुहोस्" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "खोजीका लागि कुञ्जी" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"चलको प्रकार । बुलियनका लागि \"bool\" प्रयोग गर्नुहोस् अन्यथा यसलाई स्ट्रिङको रूपमा " +"व्यवहार गरिन्छ ।" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "लेख्ने मान । रित्तोका लागि '' शेल प्रयोगमा अनिवार्य" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "शेल स्क्रिप्ट प्रयोग गर्नका लागि केडीई कन्फिग प्रविष्टि लेख्नुहोस्" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 रेड ह्याट, संस्था र लुइस पेड्रो कोइलहो" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "यसमा आधारित केडीई पढ्ने कन्फिग लेखियो" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "लुइस पेड्रो कोइलहो" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "बर्नान्ड रोजेनक्राएन्जर" diff --git a/poqm/nl/kconfig6_qt.po b/poqm/nl/kconfig6_qt.po new file mode 100644 index 0000000..9ed6211 --- /dev/null +++ b/poqm/nl/kconfig6_qt.po @@ -0,0 +1,1073 @@ +# SPDX-FileCopyrightText: 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024 Freek de Kruijf +msgid "" +msgstr "" +"Project-Id-Version: \n" +"PO-Revision-Date: 2024-05-22 13:48+0200\n" +"Last-Translator: Freek de Kruijf \n" +"Language-Team: \n" +"Language: nl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Qt-Contexts: true\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Lokalize 24.02.2\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Neem contact op met uw systeembeheerder." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Configuratiebestand \"%1\" is niet schrijfbaar.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Standaard" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Terug" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Vooruit" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Home" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Nieuw" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Nieuw document aanmaken" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Openen…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Open een bestaand document" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "&Recent openen" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Een recent geopend document openen" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Op&slaan" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Document opslaan" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Opslaan &als…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Document opslaan onder een nieuwe naam" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Beginwaar&de" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Niet opslagen wijzigingen in document terugdraaien" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Sl&uiten" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Document sluiten" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Afdrukken…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Document afdrukken" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Afdruk&voorbeeld" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Een afdrukvoorbeeld van het document tonen" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&E-mail…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Document per e-mail verzenden" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "A&fsluiten" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Toepassing afsluiten" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Ongedaan maken" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Laatste actie ongedaan maken" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Opnie&uw" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Laatste ongedaan gemaakte actie opnieuw uitvoeren" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "Kni&ppen" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Selectie knippen naar het klembord " + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Kopiëren" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Selectie kopiëren naar het klembord" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "P&lakken" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Inhoud klembord plakken" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "W&issen" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "&Alles selecteren" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Dese&lecteren" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Zoeken…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Vol&gende zoeken" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Vo&rige zoeken" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Ve&rvangen…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Zoomen naar &actuele grootte" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Document in zijn actuele grootte bekijken" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Passend in pagina" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Zoomen naar passend maken in het venster" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Passend in pagina&breedte" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Zoomen naar breedte passend maken in het venster" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Passend in pagina&hoogte" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Zoomen naar hoogte passend maken in het venster" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "&Inzoomen" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "&Uitzoomen" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Zoomen…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Zoomniveau selecteren" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "Ve&rnieuwen" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Document vernieuwen" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Omhoog" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Omhoog" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Vorige pagina" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Naar vorige pagina gaan" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "V&olgende pagina" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Naar volgende pagina gaan" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Ga naar…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Ga naar pagina…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Ga naar regel…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Eerste pagina" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Naar eerste pagina gaan" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "&Laatste pagina" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Naar laatste pagina gaan" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Terug" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Terug gaan in het document" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Vooruit" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Vooruit gaan in het document" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Bladwijzer &toevoegen" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Bladwijzers &bewerken…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Spellingcontrole…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Spelling controleren in het document" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "&Menubalk tonen" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Menubalk tonen of verbergen" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "&Werkbalk tonen" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Werkbalk tonen of verbergen" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "St&atusbalk tonen" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Statusbalk tonen of verbergen" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Modus V&olledig scherm" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Sne<oetsen configureren…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "%1 &configureren %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Werk&balken configureren…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "&Meldingen configureren…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1 &handboek" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Wat is di&t?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Bug &rapporteren…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Taa&l configureren…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&Info over %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Over &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Verwij&deren" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "He&rnoemen…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Naar prullenbak verplaatsen" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Doneren" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "&Menu openen" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Openen" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Nieuw" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Sluiten" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Opslaan" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Afdrukken" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Afsluiten" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Ongedaan maken" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Opnieuw" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Knippen" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopiëren" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Plakken" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Selectie plakken" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Alles selecteren" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Selectie opheffen" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Woord achterwaarts verwijderen" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Woord voorwaarts verwijderen" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Zoeken" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Volgende zoeken" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Zoek vorige" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Vervangen" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Home" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Begin" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Einde" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Vorige" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Volgende" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Omhoog" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Terug" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Vooruit" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Herladen" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Begin van regel" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Einde van regel" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Ga naar regel" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Woord achterwaarts" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Woord voorwaarts" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Bladwijzer toevoegen" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Inzoomen" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Uitzoomen" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Volledig schermmodus" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Menubalk tonen" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Volgend tabblad activeren" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Vorig tabblad activeren" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Help" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Wat is dit" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Tekst aanvullen" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Vorige overeenkomende aanvulling" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Volgende overeenkomende aanvulling" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Subtekstaanvulling" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Vorig item in de lijst" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Volgend item in de lijst" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Recent openen" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Opslaan als" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Terugdraaien" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Afdrukvoorbeeld" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "E-mail" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Wissen" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Zoomen naar actuele grootte" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Passend in pagina" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Passend in breedte" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Passend in hoogte" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Zoomen" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Ga naar" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Ga naar pagina" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Document teruggaan" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Document vooruitgaan" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Bladwijzers bewerken" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Spelling" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Werkbalk tonen" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Statusbalk tonen" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Toetsenbindingen" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Toepassingen configureren" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Werkbalken instellen" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Meldingen instellen" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Bug rapporteren" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Taal configureren…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Info over programma" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Over KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Verwijderen" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Hernoemen" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Naar prullenbak verplaatsen" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Doneren" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Verborgen bestanden tonen/verbergen" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Map aanmaken" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Hoofdmenu openen" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Contextmenu openen" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" +"KDE-programma voor het bijwerken van de gebruikers' configuratiebestanden" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Uitvoerresultaten van scripts behouden" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Alleen voor testen met eenheden: de gedane items niet schrijven, zodat met " +"elke keer opnieuw uitvoeren, de scripts opnieuw worden uitgevoerd" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Controleren of het configuratiebestand zelf bijgewerkt dient te worden" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Bestand(en) met instructies voor bijwerken" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Map om bestanden in te genereren [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "map" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Softwarelicentie tonen." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr " gebruiken in plaats van globale configuratie" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Groep om in te zoeken. Gebruik \"\" voor de groep root of " +"herhaaldelijk voor geneste groepen." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Term om naar te zoeken" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Standaardwaarde" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Variabeletype" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Groepsnaam kan niet leeg zijn, gebruik \"\" voor de groep root" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Variabeletype. Gebruik \"bool\" voor een boleaanse waarde, anders wordt dit " +"behandeld als een tekenreeks." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "De aangeduide sleutel verwijderen indien ingeschakeld" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "De waarde om te schrijven. Gebruik op een shell altijd '' voor leeg." + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Tip van de dag" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Alleen voor testen van units: gebruik testmappen om weg te blijven van de " +#~ "echte bestanden van gebruikers" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Opties opslaan" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Taal van programma wijzigen" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Voorkeuren" diff --git a/poqm/nn/kconfig6_qt.po b/poqm/nn/kconfig6_qt.po new file mode 100644 index 0000000..b77e396 --- /dev/null +++ b/poqm/nn/kconfig6_qt.po @@ -0,0 +1,1055 @@ +# Translation of kconfig6_qt to Norwegian Nynorsk +# +# Håvard Korsvoll , 2004. +# Eirik U. Birkeland , 2008. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-09-26 19:21+0200\n" +"Last-Translator: Karl Ove Hufthammer \n" +"Language-Team: Norwegian Nynorsk \n" +"Language: nn\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 24.11.70\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Environment: kde\n" +"X-Accelerator-Marker: &\n" +"X-Text-Markup: qtrich\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Ta kontakt med systemansvarleg." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Oppsettfila «%1» er ikkje skrivbar.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Standard" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Tilbake" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Fram" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Heim" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Ny" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Lag nytt dokument" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Opna …" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Opna eit gammalt dokument" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "N&yleg opna" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Opna eit nyleg opna dokument" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Lagra" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Lagra dokumentet" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Lagra &som …" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Lagra dokumentet med nytt namn" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "&Tilbakestill" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Tilbakestill ulagra endringar i dokumentet" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Lu&kk" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Lukk dokumentet" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Skriv &ut …" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Skriv ut dokumentet" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "&Førehandsvising" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Vis ei førehandsvising av dokumentet" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "S&end på e-post …" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Send dokumentet via e-post" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Avslutt" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Avslutt programmet" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Angra" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Angra siste handling" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "&Gjer om" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Gjer om siste angra handling" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "Klipp &ut" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Klipp ut utvalet til utklippstavla" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Kopier" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Kopierer utvalet til utklippstavla" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Lim inn" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Lim inn frå utklippstavla" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "&Tøm" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Merk &alt" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "&Fjern merking" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Finn …" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Finn &neste" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Finn &førre" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Byt ut …" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Vis &verkeleg storleik" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Vis dokumentet med faktisk storleik" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Tilpass til sidestorleik" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Vis dokumentet slik at heile får plass i vindauget" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Tilpass til side&breidd" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Vis dokumentet slik at heile breidda får plass i vindauget" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Tilpass til side&høgd" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Vis dokumentet slik at heile høgda får plass i vindauget" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "For&størr" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "For&minsk" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Vis større/mindre …" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Vel forstørring" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Oppdater" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Oppdater dokumentet" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Opp" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Gå opp" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Førre side" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Gå til førre side" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Neste side" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Gå til neste side" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Gå til …" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Gå til side …" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "G&å til linje …" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Første side" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Gå til første side" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "&Siste side" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Gå til siste side" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Tilbake" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Gå bakover i dokumentet" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Fram" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Gå framover i dokumentet" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Legg til bokmerke" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Rediger bokmerke …" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Stavekontroll …" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Køyr stavekontroll på dokumentet" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Vis &menylinje" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Vis eller gøym menylinja" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Vis &verktøylinje" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Vis eller gøym verktøylinja" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Vis st&atuslinje" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Vis eller gøym statuslinja" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "F&ullskjermsmodus" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Set opp &snøggtastar …" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Set opp %1 …" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Set opp verktøy&linjer …" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Set opp &varslingar …" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1-&handbok" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Kva er de&tte?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Meld frå om feil …" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Set opp &språk …" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&Om %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Om &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Slett" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Endra namn …" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Flytt til papirkorga" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Gje pengegåve" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Opna &meny" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Opna" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Ny" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Lukk" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Lagra" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Skriv ut" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Avslutt" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Angra" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Gjer om" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Klipp ut" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopier" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Lim inn" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Lim inn utval" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Merk alt" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Fjern merking" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Slett ord bakover" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Slett ord framover" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Finn" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Finn neste" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Finn førre" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Byt ut" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Heim" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Start" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Slutt" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Førre" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Neste" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Opp" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Tilbake" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Fram" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Last om att" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Starten på linja" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Slutten på linja" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Gå til linje" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Gå eitt ord bak" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Gå eitt ord fram" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Legg til bokmerke" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Vis større" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Vis mindre" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Fullskjermsmodus" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Vis menylinje" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Gå til neste fane" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Gå til førre fane" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Hjelp" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Kva er dette" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Tekstfullføring" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Førre fullføringstreff" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Neste fullføringstreff" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Delstrengfullføring" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Førre element i lista" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Neste element i lista" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Nyleg brukt" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Lagra som" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Tilbakestill" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Førehandsvising" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "E-post" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Tøm" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Vis verkeleg storleik" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Tilpass til side" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Tilpass til sidebreidd" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Tilpass til sidehøgd" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Forstørr/forminsk" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Gå til" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Gå til side" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Førre dokument" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Neste dokument" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Rediger bokmerke" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Stavekontroll" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Vis verktøylinje" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Vis statuslinje" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Tastebindingar" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Set opp program" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Set opp verktøylinjer" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Set opp varslingar" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Meld frå om feil" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Set opp språk …" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Om programmet" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Om KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Slett" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Endra namn" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Flytt til papirkorga" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Gje pengegåve" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Vis/gøym gøymde filer" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Lag mappe" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Opna hovudmeny" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Opna kontekstmeny" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE-verktøy for oppdatering av brukaroppsett" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Ta vare på utdata frå skript" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Berre for einingstestar: Ikkje skriv «fullført»-oppføringar. Dette gjer at " +"skripta vert køyrde på nytt ved kvar køyring." + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Sjekk om oppsettfila treng oppdatering" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Fil(er) å lesa oppdateringsinstruksjonar frå" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Mappa som dei genererte filene skal lagrast i [.]." + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "mappe" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Vis programvarelisens." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Bruk i staden for standardoppsett" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Gruppa det skal leitast i. Bruk «» for rotgruppa eller fleire " +"gongar for nøsta grupper." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Nøkkel å sjå etter" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Standardverdi" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Variabeltype" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "Gruppenamnet kan ikkje vera tomt (bruk «» for rotgruppa)" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Variabeltype. Bruk «bool» for boolske verdiar; elles vert det handsama som " +"ein tekststreng." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Fjern den valde nøkkelen" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Verdien som skal skrivast. I eit skal må du bruka '' for tomme verdiar" diff --git a/poqm/or/kconfig6_qt.po b/poqm/or/kconfig6_qt.po new file mode 100644 index 0000000..6f3fba4 --- /dev/null +++ b/poqm/or/kconfig6_qt.po @@ -0,0 +1,1047 @@ +# translation of kwriteconfig.po to Oriya +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# Manoj Kumar Giri , 2009. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2009-01-02 11:49+0530\n" +"Last-Translator: Manoj Kumar Giri \n" +"Language-Team: Oriya \n" +"Language: or\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=2; plural=(n!=1);\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" diff --git a/poqm/pa/kconfig6_qt.po b/poqm/pa/kconfig6_qt.po new file mode 100644 index 0000000..53461ed --- /dev/null +++ b/poqm/pa/kconfig6_qt.po @@ -0,0 +1,1276 @@ +# translation of kwriteconfig.po to Punjabi +# Amanpreet Singh Alam , 2004, 2005. +# Amanpreet Singh Brar , 2005. +# SPDX-FileCopyrightText: 2007, 2009, 2010, 2014, 2018, 2024 A S Alam +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-01-29 22:39-0600\n" +"Last-Translator: A S Alam \n" +"Language-Team: Punjabi \n" +"Language: pa\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 23.08.4\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "ਆਪਣੇ ਸਿਸਟਮ ਐਡਮਿਨਸਟੇਟਰ ਨਾਲ ਸੰਪਰਕ ਕਰੋ ਜੀ।" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "ਸੰਰਚਨਾ ਫਾਇਲ \"%1\" ਲਿਖਣਯੋਗ ਨਹੀਂ ਹੈ।\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "ਡਿਫਾਲਟ" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "ਪਿੱਛੇ" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "ਅੱਗੇ" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "ਘਰ" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "ਖੋਲ੍ਹੋ" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "ਸੱਜਰੇ ਖੋਲ੍ਹੋ" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "ਸੰਭਾਲੋ" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "ਇੰਝ ਸੰਭਾਲੋ" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "ਪਰਤਾਓ" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "ਬੰਦ ਕਰੋ" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "ਪਰਿੰਟ ਕਰੋ" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "ਪਰਿੰਟ ਝਲਕ" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "ਮੇਲ" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "ਬਾਹਰ" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "ਐਪਲੀਕੇਸ਼ਨ ਬਾਰੇ" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "ਵਾਪਿਸ" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "ਕਾਪੀ ਕਰੋ" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "ਚੇਪੋ" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "ਸਾਫ਼ ਕਰੋ" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "ਸਭ ਚੁਣੋ" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "ਅਣ-ਚੁਣੇ ਕਰੋ" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "ਖੋਜੋ" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "ਅੱਗੇ ਖੋਜੋ" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "ਪਿੱਛੇ ਖੋਜੋ" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "ਤਬਦੀਲ ਕਰੋ" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom to Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "ਅਸਲੀ ਆਕਾਰ ਲਈ ਜ਼ੂਮ ਕਰੋ" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "ਸਫ਼ੇ ਲਈ ਫਿੱਟ ਕਰੋ" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "ਚੌੜਾਈ ਲਈ ਫਿੱਟ" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "ਉਚਾਈ ਲਈ ਫਿੱਟ" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "ਜ਼ੂਮ ਇਨ" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "ਜ਼ੂਮ ਆਉਟ" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "ਜ਼ੂਮ" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "ਸਭ ਚੁਣੋ" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "ਉੱਤੇ" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "ਸਫ਼ੇ ਉੱਤੇ ਜਾਓ" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "ਲਾਈਨ ਉੱਤੇ ਜਾਓ" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "ਸਫ਼ੇ ਉੱਤੇ ਜਾਓ" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "ਲਾਈਨ ਉੱਤੇ ਜਾਓ" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "ਸਫ਼ੇ ਲਈ ਫਿੱਟ ਕਰੋ" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "ਲਾਈਨ ਉੱਤੇ ਜਾਓ" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "ਸਫ਼ੇ ਉੱਤੇ ਜਾਓ" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "ਪਿੱਛੇ" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "ਅੱਗੇ" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "ਬੁੱਕਮਾਰਕ ਜੋੜੋ" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "ਬੁੱਕਮਾਰਕ ਨੂੰ ਸੋਧੋ" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "ਸ਼ਬਦ-ਜੋੜ" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "ਮੇਨੂ ਪੱਟੀ ਵੇਖਾਓ" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "ਮੇਨੂ ਪੱਟੀ ਵੇਖਾਓ" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "ਟੂਲਬਾਰ ਵੇਖਾਓ" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "ਟੂਲਬਾਰ ਵੇਖਾਓ" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "ਹਾਲਤ-ਪੱਟੀ ਵੇਖਾਓ" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "ਹਾਲਤ-ਪੱਟੀ ਵੇਖਾਓ" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "ਪੂਰੀ ਸਕਰੀਨ ਮੋਡ" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "ਭਾਸ਼ਾ ਦੀ ਸੰਰਚਨਾ…" + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "ਟੂਲਬਾਰਾਂ ਦੀ ਸੰਰਚਨਾ" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "ਨੋਟੀਫਿਕੇਸ਼ਨਾਂ ਦੀ ਸੰਰਚਨਾ" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "ਇਹ ਕੀ ਹੈ" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "ਬੱਗ ਰਿਪੋਰਟ ਦਿਓ" + +#: gui/kstandardactions_p.h:135 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "ਭਾਸ਼ਾ ਦੀ ਸੰਰਚਨਾ…" + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "ਕੇਡੀਈ ਬਾਰੇ" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "ਕੇਡੀਈ ਬਾਰੇ" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "ਹਟਾਓ" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "ਨਾਂ ਬਦਲੋ" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "ਰੱਦੀ ਵਿੱਚ ਭੇਜੋ" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "ਦਾਨ ਕਰੋ" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "" +#| "KStandardShortcut|@action referring to the menu bar or a hamburger menu" +#| msgid "Open Main Menu" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "ਮੁੱਖ ਮੇਨੂ ਖੋਲ੍ਹੋ" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "ਖੋਲ੍ਹੋ" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "ਨਵਾਂ" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "ਬੰਦ ਕਰੋ" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "ਸੰਭਾਲੋ" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "ਪਰਿੰਟ ਕਰੋ" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "ਬਾਹਰ" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "ਵਾਪਿਸ" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "ਪਰਤਾਓ" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "ਕੱਟੋ" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "ਕਾਪੀ ਕਰੋ" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "ਚੇਪੋ" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "ਚੋਣ ਕੀਤੀ ਨੂੰ ਚੇਪੋ" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "ਸਭ ਚੁਣੋ" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "ਅਣ-ਚੁਣੇ ਕਰੋ" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "ਅੱਖਰ ਪਿੱਛੇ ਵੱਲ ਹਟਾਓ" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "ਅੱਖਰ ਅੱਗੇ ਵੱਲ ਹਟਾਓ" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "ਖੋਜੋ" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "ਅੱਗੇ ਖੋਜੋ" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "ਪਿੱਛੇ ਖੋਜੋ" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "ਤਬਦੀਲ ਕਰੋ" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "ਘਰ" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "ਸ਼ੁਰੂ" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "ਅੰਤ" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "ਦਰਜਾ" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "ਅੱਗੇ" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "ਉੱਤੇ" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "ਪਿੱਛੇ" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "ਅੱਗੇ" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "ਮੁੜ-ਲੋਡ ਕਰੋ" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "ਲਾਈਨ ਦੇ ਸ਼ੁਰੂ ਉੱਤੇ" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "ਲਾਈਨ ਦੇ ਅੰਤ ਉੱਤੇ" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "ਲਾਈਨ ਉੱਤੇ ਜਾਓ" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "ਸ਼ਬਦ ਪਿੱਛੇ" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "ਸ਼ਬਦ ਅੱਗੇ" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "ਬੁੱਕਮਾਰਕ ਜੋੜੋ" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "ਜ਼ੂਮ ਇਨ" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "ਜ਼ੂਮ ਆਉਟ" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "ਪੂਰੀ ਸਕਰੀਨ ਮੋਡ" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "ਮੇਨੂ ਪੱਟੀ ਵੇਖਾਓ" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "ਅਗਲੀ ਟੈਬ ਨੂੰ ਸਰਗਰਮ ਕਰੋ" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "ਪਿਛਲੀ ਟੈਬ ਨੂੰ ਸਰਗਰਮ ਕਰੋ" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "ਮਦਦ" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "ਇਹ ਕੀ ਹੈ" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "ਲਿਖਤ ਪੂਰਤੀ" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "ਸੂਚੀ ਵਿੱਚ ਪਿਛਲੀ ਆਈਟਮ" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "ਸੂਚੀ ਵਿੱਚ ਅਗਲੀ ਆਈਟਮ" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "ਸੱਜਰੇ ਖੋਲ੍ਹੋ" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "ਇੰਝ ਸੰਭਾਲੋ" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "ਪਰਤਾਓ" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "ਪਰਿੰਟ ਝਲਕ" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "ਮੇਲ" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "ਸਾਫ਼ ਕਰੋ" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "ਅਸਲੀ ਆਕਾਰ ਲਈ ਜ਼ੂਮ ਕਰੋ" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "ਸਫ਼ੇ ਲਈ ਫਿੱਟ ਕਰੋ" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "ਚੌੜਾਈ ਲਈ ਫਿੱਟ" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "ਉਚਾਈ ਲਈ ਫਿੱਟ" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "ਜ਼ੂਮ" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "ਜਾਓ" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "ਸਫ਼ੇ ਉੱਤੇ ਜਾਓ" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "ਡੌਕੂਮੈਂਟ ਪਿੱਛੇ" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "ਡੌਕੂਮੈਂਟ ਅੱਗੇ" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "ਬੁੱਕਮਾਰਕ ਨੂੰ ਸੋਧੋ" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "ਸ਼ਬਦ-ਜੋੜ" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "ਟੂਲਬਾਰ ਵੇਖਾਓ" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "ਹਾਲਤ-ਪੱਟੀ ਵੇਖਾਓ" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "ਸਵਿੱਚ ਬਾਈਡਿੰਗ" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "ਐਪਲੀਕੇਸ਼ਨ ਦੀ ਸੰਰਚਨਾ" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "ਟੂਲਬਾਰਾਂ ਦੀ ਸੰਰਚਨਾ" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "ਨੋਟੀਫਿਕੇਸ਼ਨਾਂ ਦੀ ਸੰਰਚਨਾ" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "ਬੱਗ ਰਿਪੋਰਟ ਦਿਓ" + +#: gui/kstandardshortcut.cpp:373 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "ਭਾਸ਼ਾ ਦੀ ਸੰਰਚਨਾ…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "ਐਪਲੀਕੇਸ਼ਨ ਬਾਰੇ" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "ਕੇਡੀਈ ਬਾਰੇ" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "ਹਟਾਓ" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "ਨਾਂ ਬਦਲੋ" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "ਰੱਦੀ ਵਿੱਚ ਭੇਜੋ" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "ਦਾਨ ਕਰੋ" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "ਲੁਕਵੀਆਂ ਫਾਇਲਾਂ ਨੂੰ ਵੇਖਾਓ/ਓਹਲੇ" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "ਫੋਲਡਰ ਬਣਾਓ" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "ਮੁੱਖ ਮੇਨੂ ਖੋਲ੍ਹੋ" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "ਪਰਸੰਗ ਮੇਨੂ ਖੋਲ੍ਹੋ" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "ਵਰਤੋਂਕਾਰ ਸੰਰਚਨਾ ਫਾਇਲਾਂ ਦੇ ਅੱਪਡੇਟ ਲਈ KDE ਟੂਲ" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "ਸਕ੍ਰਿਪਟਾਂ ਤੋਂ ਪ੍ਰਾਪਤ ਨਤੀਜੇ ਰੱਖੋ" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "ਜਾਂਚ ਕਰੋ ਕਿ config ਫਾਇਲ ਨੂੰ ਅੱਪਡੇਟ ਦੀ ਲੋੜ ਹੈ।" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "ਡਾਇਰੈਕਟਰੀ" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "ਸਾਫਟਵੇਅਰ ਲਸੰਸ ਵੇਖੋ।" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "ਗਲੋਬਲ ਸੰਰਚਨਾ ਦੀ ਬਜਾਏ ਵਰਤੋਂ" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgctxt "main|" +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "ਲੱਭਣ ਲਈ ਗਰੁੱਪ। ਅੰਦਰੂਨੀ ਗਰੁੱਪਾਂ ਲਈ ਲਗਾਤਾਰ ਵਰਤੋਂ।" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "ਖੋਜ ਲਈ ਕੁੰਜੀ" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "ਡਿਫਾਲਟ ਮੁੱਲ" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "ਵੇਰੀਬਲ ਦੀ ਟਾਈਪ" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "ਵੇਰੀਬਲ ਦੀ ਕਿਸਮ। ਬੁਲੀਅਨ ਲਈ \"bool\" ਵਰਤੋਂ, ਨਹੀਂ ਤਾਂ ਇਸ ਨੂੰ ਸਤਰ ਹੀ ਮੰਨਿਆ ਜਾਵੇਗਾ।" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "ਲਿਖਣ ਲਈ ਮੁੱਲ। ਲਾਜ਼ਮੀ ਰੂਪ ਵਿੱਚ ਸੈੱਲ ਉੱਤੇ ਖਾਲੀ ਲਈ '' ਵਰਤੋਂ" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "ਚੋਣਾਂ ਸੰਭਾਲੋ" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "ਐਪਲੀਕੇਸ਼ਨ ਭਾਸ਼ਾ ਬਦਲੋ" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "ਮੇਰੀ ਪਸੰਦ" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "KConfig ਇੰਦਰਾਜ਼ ਲਿਖੋ - ਸੈੱਲ ਸਕਰਿਪਟ ਵਿੱਚ ਵਰਤਣ ਲਈ" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "kreadconfig ਲਿਖੋ, ਜਿਸ ਉੱਤੇ ਇਹ ਅਧਾਰਿਤ ਹੈ" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "ਲਿਊਸ ਪੀਡਰੋ ਕੋਈਲਹੋ" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/pl/kconfig6_qt.po b/poqm/pl/kconfig6_qt.po new file mode 100644 index 0000000..6916149 --- /dev/null +++ b/poqm/pl/kconfig6_qt.po @@ -0,0 +1,1098 @@ +# translation of kwriteconfig.po to Polish +# Copyright (C) 2003, 2008 Free Software Foundation, Inc. +# +# Michal Rudolf , 2003, 2008. +# SPDX-FileCopyrightText: 2014, 2015, 2016, 2017, 2018, 2020, 2021, 2022, 2023, 2024 Łukasz Wojniłowicz +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-05-30 11:19+0200\n" +"Last-Translator: Łukasz Wojniłowicz \n" +"Language-Team: Polish \n" +"Language: pl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " +"|| n%100>=20) ? 1 : 2);\n" +"X-Generator: Lokalize 23.08.5\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Proszę skontaktować się z administratorem systemu." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Plik ustawień \"%1\" nie jest dostępny do zapisu.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Domyślne" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Wstecz" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Naprzód" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Strona domowa" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Nowy" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Utwórz nowy dokument" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Otwórz…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Otwórz istniejący dokument" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Otwó&rz ostatni" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Otwórz dokument, który był ostatnio otwierany" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Zapi&sz" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Zapisz dokument" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Zapisz j&ako…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Zapisz dokument pod nową nazwą" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Przyw&róć" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Przywróć niezapisane zmiany dokonane w dokumencie" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Zamknij" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Zamknij dokument" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Wy&drukuj…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Wydrukuj dokument" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Podgląd &wydruku" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Pokaż podgląd wydruk dokumentu" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Poczta…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Wyślij dokument pocztą" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Za&kończ" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Zakończ program" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Cofnij" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Cofnij ostatnie działanie" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "&Przywróć" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Przywróć ostatnio cofnięte działanie" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "Wy&tnij" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Wytnij zaznaczenie do schowka" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "S&kopiuj" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Skopiuj zaznaczenie do schowka" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Wklej" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Wklej zawartość schowka" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "&Wyczyść" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Z&aznacz wszystko" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "O&dznacz wszystko" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Poszukaj…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Poszukaj &następnego" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Poszukaj &poprzedniego" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Zastąp…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "&Powiększ do rozmiaru rzeczywistego" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Obejrzyj dokument w jego rzeczywistym rozmiarze" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Zmieść na stronie" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Powiększ, tak aby zmieścić stronę w oknie" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Zmieść na sze&rokości strony" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Powiększ, tak aby zmieścić stronę na szerokość w oknie" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Zmieść na wy&sokości strony" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Powiększ, tak aby zmieścić stronę na wysokość w oknie" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Pow&iększ" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "P&omniejsz" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Powięks&zenie…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Wybierz poziom powiększenia" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Odśwież" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Odśwież dokument" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "W &górę" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Przejdź do góry" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Poprzednia strona" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Przejdź do poprzedniej strony" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Następna strona" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Przejdź do następnej strony" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Przejdź do…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Przejdź do strony…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Przejdź do wiersza…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Pi&erwsza strona" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Przejdź do pierwszej strony" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "&Ostatnia strona" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Przejdź do ostatniej strony" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Wstecz" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Idź wstecz w dokumencie" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Naprzód" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Idź do przodu w dokumencie" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Dodaj z&akładkę" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Edytuj zakładki…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Pi&sownia…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Sprawdź pisownię w dokumencie" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Pokaż pasek &menu" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Pokaż lub ukryj pasek menu" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Pokaż pasek &narzędzi" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Pokaż lub ukryj pasek narzędzi" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Pokaż pasek st&anu" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Pokaż lub ukryj pasek stanu" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Tryb pełno&ekranowy" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Ustawienia skrótów klawiszowyc&h…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "U&stawienia %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "&Ustawienia pasków narzędzi…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Ustawie&nia powiadomień…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "Podrę&cznik %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Co to jes&t?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Zgłoś błąd…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Ustawienia &języka…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "O progr&amie %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "O &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Usuń" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "P&rzemianuj…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Wyrzuć do &kosza" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Darowizna" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Otwórz &menu" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Otwórz" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Nowy" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Zamknij" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Zapisz" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Drukuj" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Zakończ" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Cofnij" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Przywróć" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Wytnij" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Skopiuj" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Wklej" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Wklej zaznaczenie" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Zaznacz wszystko" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Odznacz" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Usuń słowo przed kursorem" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Usuń słowo za kursorem" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Znajdź" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Znajdź następne" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Znajdź poprzednie" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Zastąp" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Katalog domowy" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Początek" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Koniec" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Poprzedni" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Następny" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "W górę" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Wstecz" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Naprzód" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Wczytaj ponownie" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Początek wiersza" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Koniec wiersza" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Przejdź do wiersza" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Słowo wstecz" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Słowo naprzód" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Dodaj zakładkę" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Powiększ" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Pomniejsz" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Tryb pełnoekranowy" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Pokaż pasek menu" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Uaktywnij następną kartę" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Uaktywnij poprzednią kartę" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Pomoc" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Co to jest?" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Uzupełnianie tekstu" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Poprzedni wynik uzupełniania" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Następny wynik uzupełniania" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Uzupełnienie podciągu znaków" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Poprzedni wpis na wykazie" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Następny wpis na wykazie" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Otwórz poprzedni" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Zapisz jako" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Przywróć" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Podejrzyj wydruk" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Poczta" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Wyczyść" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Powiększ do rozmiaru rzeczywistego" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Zmieść stronę" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Zmieść na szerokość" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Zmieść na wysokość" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Powiększenie" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Przejdź do" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Przejdź do strony" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Przewiń wstecz" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Przewiń naprzód" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Edytuj zakładki" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Pisownia" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Pokaż pasek narzędzi" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Pokaż pasek stanu" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Skróty klawiszowe" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Ustawienia aplikacji" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Ustawienia pasków narzędzi" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Ustawienia powiadomień" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Zgłoś błąd" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Ustawienia języka…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "O programie" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "O KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Usuń" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Zmień nazwę" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Wyrzuć do kosza" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Darowizna" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Pokaż/ukryj ukryte pliki" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Utwórz katalog" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Otwórz menu główne" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Otwórz menu podręczne" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Narzędzie KDE do uaktualniania plików ustawień użytkownika" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Zachowaj wynik wykonania skryptów" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Tylko dla testów jednostkowych: nie pisz wykonanych wpisów, tak żeby za " +"każdym ponownym uruchomieniem, skrypty były wykonywane ponownie" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Sprawdź, czy nie należy uaktualnić samego pliku ustawień." + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Plik(i), z którego oczytać instrukcję uaktualnienia" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Katalog do tworzenia plików w [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "katalog" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Wyświetl licencję oprogramowania." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Użyj zamiast ustawień globalnych" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Przeszukiwana grupa. Użyj \"\" dla grupy głównej lub użyj tego " +"wielokrotnie dla zagnieżdżonych grup." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Szukany klucz" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Domyślna wartość" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Rodzaj zmiennej" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "Nazwa grupy nie może być pusta, użyj \"\" dla głównej grupy" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Rodzaj zmiennej. Dla wartości logicznej jest to \"bool\", w przeciwnym razie " +"zmienna będzie traktowana jak ciąg znaków" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Usuń przeznaczony klucz, jeśli włączone" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Wartość do zapisania. Niezbędna, w skryptach można użyć '' dla wartości " +"pustej" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Porada dnia" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Tylko dla testów jednostkowych: użyj katalogów testowych, aby trzymać się " +#~ "z dala od prawdziwych plików użytkownika" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Zapisz ustawienia" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Zmień język programu" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Ustawienia" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Zapisywanie pozycji KConfig - do stosowania w skryptach" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Autor kreadconfig, na którym oparty jest ten program" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/pt/kconfig6_qt.po b/poqm/pt/kconfig6_qt.po new file mode 100644 index 0000000..c0c3eb5 --- /dev/null +++ b/poqm/pt/kconfig6_qt.po @@ -0,0 +1,1265 @@ +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2022-06-03 18:00+0100\n" +"Last-Translator: Pedro Morais \n" +"Language-Team: pt \n" +"Language: pt\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POFile-SpellExtra: bool KConfig KWriteConfig Rosenkraenzer Bernhard\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-POFile-SpellExtra: kreadconfig Hat Red Inc\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Contacte por favor o seu administrador do sistema." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Não é possível escrever no ficheiro de configuração \"%1\".\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Predefinição" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Recuar" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Avançar" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Pasta Pessoal" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Abrir" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Abrir um Recente" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Gravar" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Gravar Como" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Reverter" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Fechar" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Imprimir" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Antevisão da Impressão" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Enviar um E-Mail" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Sair" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Acerca da Aplicação" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Desfazer" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Copiar" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Colar" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Limpar" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Seleccionar Tudo" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Deseleccionar" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Procurar" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Procurar o Seguinte" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Procurar o Anterior" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Substituir" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom to Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Ampliar para o Tamanho Actual" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Ajustar à Página" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Ajustar à Largura" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Ajustar à Altura" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Ampliar" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Reduzir" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Ampliação" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Seleccionar Tudo" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Subir" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Ir Para a Página" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Ir para a Linha" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Ir Para a Página" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Ir para a Linha" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Ajustar à Página" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Ir para a Linha" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Ir Para a Página" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Recuar" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Avançar" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Adicionar aos Favoritos" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Editar os Favoritos" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Ortografia" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Mostrar o Menu" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Mostrar o Menu" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Mostrar a Barra de Ferramentas" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Mostrar a Barra de Ferramentas" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Mostrar a Barra de Estado" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Mostrar a Barra de Estado" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Modo de Ecrã Completo" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "Configurar a Língua..." + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Configurar as Barras de Ferramentas" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Configurar as Notificações" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "O Que é Isto" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Comunicar um Erro" + +#: gui/kstandardactions_p.h:135 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Configurar a Língua..." + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Acerca do KDE" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Acerca do KDE" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Apagar" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Mudar o Nome" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Enviar para o Lixo" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Doar" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Abrir um Recente" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Abrir" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Novo" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Fechar" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Gravar" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Imprimir" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Sair" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Desfazer" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Refazer" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Cortar" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Copiar" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Colar" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Colar a Selecção" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Seleccionar Tudo" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Deseleccionar" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Apagar a Palavra Atrás" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Apagar a Palavra à Frente" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Procurar" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Procurar o Seguinte" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Procurar o Anterior" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Substituir" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Pasta Pessoal" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Início" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Fim" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Anterior" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Seguinte" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Subir" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Recuar" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Avançar" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Recarregar" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Início da Linha" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Fim da Linha" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Ir para a Linha" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Recuar uma Palavra" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Avançar uma Palavra" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Adicionar aos Favoritos" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Ampliar" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Reduzir" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Modo de Ecrã Completo" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Mostrar o Menu" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Activar a Página Seguinte" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Activar a Página Anterior" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Ajuda" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "O Que é Isto" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Completação de Texto" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Correspondência Anterior" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Correspondência Seguinte" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Completação de Sub-Textos" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Item Anterior na Lista" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Item Seguinte na Lista" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Abrir um Recente" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Gravar Como" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Reverter" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Antevisão da Impressão" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Enviar um E-Mail" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Limpar" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Ampliar para o Tamanho Actual" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Ajustar à Página" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Ajustar à Largura" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Ajustar à Altura" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Ampliação" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Ir Para" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Ir Para a Página" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Recuar no Documento" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Avançar no Documento" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Editar os Favoritos" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Ortografia" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Mostrar a Barra de Ferramentas" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Mostrar a Barra de Estado" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Atalhos de Teclado" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Configurar a Aplicação" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Configurar as Barras de Ferramentas" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Configurar as Notificações" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Comunicar um Erro" + +#: gui/kstandardshortcut.cpp:373 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Configurar a Língua..." + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Acerca da Aplicação" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Acerca do KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Apagar" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Mudar o Nome" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Enviar para o Lixo" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Doar" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Mostrar/Esconder os Ficheiros Escondidos" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Criar a Pasta" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" +"Uma ferramenta do KDE para actualizar os ficheiros de configuração do " +"utilizador" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Manter os resultados à saída dos programas" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" +"Verificar se o ficheiro de configuração em si necessita de actualização" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Ficheiros de onde ler as instruções de actualização" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "A pasta onde gerar os ficheiros [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "pasta" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Mostra a licença da aplicação." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Utilizar em vez da configuração global" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"O grupo onde procurar. Use o \"\" para o grupo de raiz, ou use de " +"forma repetida para grupos encadeados." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Chave a procurar" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Valor por omissão" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Tipo de variável" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"O nome do grupo não pode estar vazio; use o \"\" para o grupo de " +"raiz" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Tipo da variável. Utilize \"bool\" para um booleano, em caso contrário é " +"tratado como uma cadeia de caracteres" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Apaga a chave designada, caso esteja activa" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"O valor a escrever. Obrigatório, numa linha de comandos utilize '' para vazio" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Dica do Dia" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Apenas para testes unitários: usar as pastas de testes para separar dos " +#~ "ficheiros originais do utilizador" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Gravar as Opções" diff --git a/poqm/pt_BR/kconfig6_qt.po b/poqm/pt_BR/kconfig6_qt.po new file mode 100644 index 0000000..d6037f0 --- /dev/null +++ b/poqm/pt_BR/kconfig6_qt.po @@ -0,0 +1,1276 @@ +# Translation of kconfig5_qt.po to Brazilian Portuguese +# Copyright (C) 2003, 2007, 2008, 2009, 2014, 2015, 2019 Free Software Foundation, Inc. +# +# Lisiane Sztoltz , 2003. +# Henrique Pinto , 2003. +# Diniz Bortolotto , 2007. +# Fernando Boaglio , 2008. +# Luiz Fernando Ranghetti , 2009, 2016, 2017, 2018, 2020, 2021, 2022, 2023. +# André Marcelo Alvarenga , 2009, 2014, 2015, 2019. +msgid "" +msgstr "" +"Project-Id-Version: kconfig5_qt\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2023-11-14 13:16-0300\n" +"Last-Translator: Luiz Fernando Ranghetti \n" +"Language-Team: Brazilian Portuguese \n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Generator: Lokalize 22.12.3\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Contate o administrador do seu sistema." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Arquivo de configuração \"%1\" não gravável.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Padrão" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Voltar" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Avançar" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Home" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Abrir" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Abrir recente" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Salvar" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Salvar como" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Reverter" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Fechar" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Imprimir" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Visualizar impressão" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "E-mail" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Sair" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Sobre o aplicativo" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Desfazer" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Copiar" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Colar" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Limpar" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Selecionar tudo" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Desmarcar" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Localizar" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Localizar próxima" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Localizar anterior" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Substituir" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom to Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Zoom para o tamanho atual" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Ajustar à página" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Ajustar à largura" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Ajustar à altura" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Ampliar" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Reduzir" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Zoom" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Selecionar tudo" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Acima" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Ir para a página" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Ir para a linha" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Ir para a página" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Ir para a linha" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Ajustar à página" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Ir para a linha" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Ir para a página" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Voltar" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Avançar" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Adicionar favorito" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Editar favoritos" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Ortografia" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Mostrar barra de menus" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Mostrar barra de menus" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Mostrar barra de ferramentas" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Mostrar barra de ferramentas" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Mostrar barra de status" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Mostrar barra de status" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Modo de tela inteira" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "Configurar idioma..." + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Configurar barras de ferramentas" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Configurar notificações" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "O que é isto" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Relatar erro" + +#: gui/kstandardactions_p.h:135 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Configurar idioma..." + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Sobre o KDE" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Sobre o KDE" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Excluir" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Renomear" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Mover para a Lixeira" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Doar" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "" +#| "KStandardShortcut|@action referring to the menu bar or a hamburger menu" +#| msgid "Open Main Menu" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Abrir menu principal" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Abrir" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Novo" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Fechar" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Salvar" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Imprimir" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Sair" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Desfazer" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Refazer" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Recortar" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Copiar" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Colar" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Colar seleção" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Selecionar tudo" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Desmarcar" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Excluir palavras anteriores" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Excluir palavras posteriores" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Localizar" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Localizar próxima" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Localizar anterior" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Substituir" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Home" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Início" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Fim" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Anterior" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Próximo" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Acima" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Voltar" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Avançar" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Recarregar" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Início da linha" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Fim da linha" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Ir para a linha" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Palavra anterior" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Palavra posterior" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Adicionar favorito" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Ampliar" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Reduzir" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Modo de tela inteira" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Mostrar barra de menus" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Ativar a próxima aba" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Ativar a aba anterior" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Ajuda" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "O que é isto" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Complementação de texto" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Coincidência de complementação anterior" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Coincidência de complementação seguinte" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Complementação de substring" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Item anterior na lista" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Próximo item na lista" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Abrir recente" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Salvar como" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Reverter" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Visualizar impressão" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "E-mail" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Limpar" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Zoom para o tamanho atual" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Ajustar à página" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Ajustar à largura" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Ajustar à altura" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Zoom" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Ir para" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Ir para a página" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Recuar no documento" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Avançar no documento" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Editar favoritos" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Ortografia" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Mostrar barra de ferramentas" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Mostrar barra de status" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Combinação de teclas" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Configurar aplicativo" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Configurar barras de ferramentas" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Configurar notificações" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Relatar erro" + +#: gui/kstandardshortcut.cpp:373 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Configurar idioma..." + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Sobre o aplicativo" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Sobre o KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Excluir" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Renomear" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Mover para a Lixeira" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Doar" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Mostrar/ocultar arquivos ocultos" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Criar pasta" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Abrir menu principal" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Abrir menu de contexto" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" +"Ferramenta do KDE para atualização de arquivos de configuração de usuário" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Manter resultados da saída dos scripts" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Somente para testes de unidade: não escreva as entradas concluídas, para " +"que, a cada nova execução, os scripts sejam executados novamente" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Verificar se o próprio arquivo de configuração requer atualização" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Arquivo(s) para ler instruções de atualização" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "A pasta para onde gerar os arquivos [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "pasta" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Exibir a licença do software." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Usar em vez da configuração global" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Grupo para procurar. Use \"\" para o grupo raiz ou use repetidamente " +"para grupos aninhados." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Chave para procurar" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Valor padrão" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Tipo de variável" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"O nome do grupo não pode estar vazio, use \"\" for the root group" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Tipo de variável. Use \"bool\" para booleana, caso contrário, será tratado " +"como uma string" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Excluir a chave designada, caso esteja ativa" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "O valor a ser escrito. Use, no shell, '' para vazio" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Dica do dia" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Apenas para testes unitários: Use as pastas de teste para se afastar dos " +#~ "arquivos reais do usuário" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Salvar opções" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Mudar o idioma do aplicativo" diff --git a/poqm/ro/kconfig6_qt.po b/poqm/ro/kconfig6_qt.po new file mode 100644 index 0000000..b3d6b3f --- /dev/null +++ b/poqm/ro/kconfig6_qt.po @@ -0,0 +1,1290 @@ +# Copyright (C) 2003, 2004, 2008 Free Software Foundation, Inc. +# Claudiu Costin , 2003, 2004. +# Sergiu Bivol , 2008, 2020, 2022, 2024. +# +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-01-07 14:10+0000\n" +"Last-Translator: Sergiu Bivol \n" +"Language-Team: Romanian \n" +"Language: ro\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " +"20)) ? 1 : 2;\n" +"X-Generator: Lokalize 21.12.3\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Contactați administratorul de sistem." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Fișierul de configurare „%1” nu poate fi scris.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Implicit" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Înapoi" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Înainte" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Acasă" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Deschide" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Deschide recent" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Salvează" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Salvează ca" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Revenire" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Închide" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Tipărește" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Previzualizare tipărire" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Poștă" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Termină" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Despre aplicație" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Desfă" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Copiază" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Lipește" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Curăță" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Selectează tot" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Deselectează" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Caută" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Caută urm." + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Caută prec." + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Înlocuiește" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom to Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Apropie la dimensiunea reală" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Încadrează în pagină" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Încadrează pe lățime" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Încadrează pe înălțime" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Apropie" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Depărtează" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Apropiere" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Selectează tot" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Sus" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Mergi la pagină" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Mergi la linie" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Mergi la pagină" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Mergi la linie" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Încadrează în pagină" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Mergi la linie" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Mergi la pagină" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Înapoi" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Înainte" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Adaugă semn de carte" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Redactează semne de carte" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Ortografie" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Arată bara de meniu" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Arată bara de meniu" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Arată bara de unelte" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Arată bara de unelte" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Arată bara de stare" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Arată bara de stare" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Regim ecran complet" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "Configurează limba" + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Configurează barele de unelte" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Configurează notificările" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Ce înseamnă aceasta" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Raportează defect" + +#: gui/kstandardactions_p.h:135 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Configurează limba" + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Despre KDE" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Despre KDE" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Șterge" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Redenumește" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Mută la gunoi" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Donează" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "" +#| "KStandardShortcut|@action referring to the menu bar or a hamburger menu" +#| msgid "Open Main Menu" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Deschide meniul principal" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Deschide" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Nouă" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Închide" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Salvează" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Tipărește" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Termină" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Desfă" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Refă" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Taie" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Copiază" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Lipește" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Lipește selecția" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Selectează tot" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Deselectează" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Șterge cuvânt înapoi" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Șterge cuvânt înainte" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Caută" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Caută urm." + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Caută prec." + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Înlocuiește" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Acasă" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Început" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Sfârșit" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Precedent" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Următor" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Sus" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Înapoi" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Înainte" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Reîncarcă" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Începutul liniei" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Sfârșit de linie" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Mergi la linie" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Cuvânt înapoi" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Cuvânt înainte" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Adaugă semn de carte" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Apropie" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Depărtează" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Regim ecran complet" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Arată bara de meniu" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Activează fila următoare" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Activează fila precedentă" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Ajutor" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Ce înseamnă aceasta" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Completare text" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Precedenta potrivire de completare" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Următoarea potrivire de completare" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Completare subșir" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Precedentul element în listă" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Următorul element în listă" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Deschide recent" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Salvează ca" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Revenire" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Previzualizare tipărire" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Poștă" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Curăță" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Apropie la dimensiunea reală" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Încadrează în pagină" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Încadrează pe lățime" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Încadrează pe înălțime" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Apropiere" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Mergi la" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Mergi la pagină" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Document înapoi" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Document înainte" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Redactează semne de carte" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Ortografie" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Arată bara de unelte" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Arată bara de stare" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Asocieri de taste" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Configurează aplicația" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Configurează barele de unelte" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Configurează notificările" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Raportează defect" + +#: gui/kstandardshortcut.cpp:373 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Configurează limba" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Despre aplicație" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Despre KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Șterge" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Redenumește" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Mută la gunoi" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Donează" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Arată/ascunde fișierele ascunse" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Creează dosar" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Deschide meniul principal" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Deschide meniul contextual" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" +"Unealtă KDE pentru actualizarea fișierelor de configurare ale utilizatorului" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Păstrează rezultatele de ieșire din scripturi" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Doar pentru teste unitare: nu scrie înregistrările încheiate, astfel încât " +"scripturile să fie re-executate la fiecare rulare" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Verifică dacă însuși fișierul de configurare necesită actualizat" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Fișier(e) din care să fie citite instrucțiuni de actualizare" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Dosar în care să fie generate fișierele [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "dosar" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Afișează licența programului." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Utilizează în loc de configurația globală" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Grupul de cercetat. Folosiți „” pentru grupul-rădăcină, sau " +"folosiți repetat pentru grupuri imbricate." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Cheie de căutat" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Valoarea implicită" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Tipul variabilei" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Denumirea grupului nu poate fi goală. folosiți „” pentru grupul-" +"rădăcină" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Tipul de variabilă. Utilizați „bool” pentru valoare logică, altfel este " +"tratată ca șir textual" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Șterge cheia desemnată dacă e activată" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Valoarea de scris. Obligatorie. În linia de comandă folosiți '' pentru șir " +"gol" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Sfatul zilei" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Doar pentru teste de unitate: folosește dosare de test pentru a nu atinge " +#~ "fișierele reale ale utilizatorului" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Salvează opțiunile" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "" +#~ "Scrie înregistrări KConfig - de utilizat în scripturi de interpretor" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Am scris kreadconfig pe care este bazat acesta" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/ru/kconfig6_qt.po b/poqm/ru/kconfig6_qt.po new file mode 100644 index 0000000..96dd599 --- /dev/null +++ b/poqm/ru/kconfig6_qt.po @@ -0,0 +1,1118 @@ +# translation of kwriteconfig.po into Russian +# +# SPDX-FileCopyrightText: 2019, 2020, 2021, 2022, 2024 Alexander Yavorsky +# Denis Perchine , 2000. +# Gregory Mokhin , 2005. +# Andrey Cherepanov , 2009. +# Alexander Potashev , 2014, 2015, 2016, 2017, 2018, 2020. +# Alexander Yavorsky , 2024. +# SPDX-FileCopyrightText: 2024 Olesya Gerasimenko +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-09-05 14:41+0300\n" +"Last-Translator: Olesya Gerasimenko \n" +"Language-Team: Basealt Translation Team\n" +"Language: ru\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 23.08.5\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"X-Environment: kde\n" +"X-Accelerator-Marker: &\n" +"X-Text-Markup: kde4\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Обратитесь к системному администратору." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Файл конфигурации «%1» защищён от записи.\n" + +# BUGME: change to "Стандартный"? --aspotashev +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "По умолчанию" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Назад" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Вперёд" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Основная страница" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Создать" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Создать новый документ" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Открыть…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Открыть существующий документ" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Последние &файлы" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Открыть недавно открытый документ" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Сохранить" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Сохранить документ" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Сохранить &как…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Сохранить документ с новым именем" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "&Восстановить" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Отбросить несохранённые изменения в документе" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Закрыть" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Закрыть документ" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Печать…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Напечатать документ" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "&Предварительный просмотр" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Выполнить предварительный просмотр документа" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Отправить по почте…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Отправить документ по почте" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Выход" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Выйти из приложения" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Отменить" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Отменить последнее действие" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "&Повторить" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Повторить последнее отменённое действие" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "&Вырезать" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Вырезать выделенное в буфер обмена" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Копировать" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Копировать выделенное в буфер обмена" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Вставить" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Вставить содержимое буфера обмена" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "О&чистить" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Выделить &все" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "&Снять выделение" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Найти…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Найти &следующее вхождение" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Найти &предыдущее вхождение" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Заменить…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Масштабировать по &фактическому размеру" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Показать документ в соответствии с его фактическим размером" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Вместить в страницу" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Масштабировать по размеру страницы в окне" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Вместить по &ширине страницы" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Масштабировать по ширине страницы в окне" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Вместить по &высоте страницы" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Масштабировать по высоте страницы в окне" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "&Увеличить масштаб" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "&Уменьшить масштаб" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Масштаб…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Выбрать уровень масштабирования" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Обновить" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Обновить документ" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Вверх" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Перейти выше" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Предыдущая страница" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Перейти на предыдущую страницу" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Следующая страница" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Перейти на следующую страницу" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "П&ерейти…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Перейти &на страницу…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Перейти к строке…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Первая страница" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Перейти на первую страницу" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Последняя &страница" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Перейти на последнюю страницу" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Назад" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Перейти назад в документе" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Вперед" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Перейти вперёд в документе" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Добавить закладку" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Изменить закладки…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Проверка орфографии…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Проверить орфографию в документе" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Показать &меню" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Показать или скрыть меню" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Показать &панель инструментов" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Показать или скрыть панель инструментов" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Показать &строку состояния" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Показать или скрыть строку состояния" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Полно&экранный режим" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Настроить комбинации &клавиш…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Настроить %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Настроить &панели инструментов…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Настроить &уведомления…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "Руководство пользователя %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "&Что это?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Сообщить об ошибке…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Сменить &язык интерфейса приложения…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&О %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "О &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Удалить" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Переименовать…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Удалить в &корзину" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Сделать пожертвование" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Открыть &меню" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Открыть" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Создать" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Закрыть" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Сохранить" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Печать" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Выход" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Отменить действие" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Повторить отменённое действие" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Вырезать" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Копировать" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Вставить" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Вставить выделение" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Выделить все" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Снять выделение" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Удалить слово перед курсором" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Удалить слово после курсора" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Найти" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Найти далее" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Найти предыдущее" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Заменить" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Основная страница" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Начало документа" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Конец документа" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Предыдущий" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Далее" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Вверх" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Назад" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Вперёд" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Открыть заново" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Начало строки" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Конец строки" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Перейти к строке" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "На слово назад" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "На слово вперёд" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Добавить закладку" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Увеличить масштаб" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Уменьшить масштаб" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Полноэкранный режим" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Показать меню" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Перейти на следующую вкладку" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Перейти на предыдущую вкладку" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Справка" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Что это?" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Автодополнение текста" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Предыдущий вариант автодополнения" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Следующий вариант автодополнения" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Автодополнение подстроки" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Предыдущий элемент в списке" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Следующий элемент в списке" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Последние файлы" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Сохранить как" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Восстановить" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Предварительный просмотр" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Отправить по почте" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Очистить" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Фактический размер" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Вместить" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Вместить по ширине" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Вместить по высоте" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Масштаб" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Перейти" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Перейти на страницу" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Назад" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Вперёд" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Изменить закладки" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Проверка орфографии" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Показать панель инструментов" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Показать строку состояния" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Комбинации клавиш" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Настроить приложение" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Настроить панели инструментов" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Настроить уведомления" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Сообщить об ошибке" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Сменить язык интерфейса приложения…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "О приложении" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "О KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Удалить" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Переименовать" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Удалить в корзину" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Сделать пожертвование" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Скрыть или показать скрытые файлы" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Создать папку" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Открыть главное меню" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Открыть контекстное меню" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Утилита KDE для обновления пользовательских конфигурационных файлов" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Сохранять вывод из запущенных сценариев." + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Только для тестирования модулей: запись завершённых операций не выполняется, " +"при каждом повторном запуске сценарии снова будут выполнены" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Проверить, требует ли обновления сам файл конфигурации." + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Файлы с инструкциями для обновления." + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Каталог, где будут созданы файлы [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "каталог" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Показать сведения о лицензии" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Использовать <файл> вместо глобального файла конфигурации" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Искать в выбранной группе. Можно использовать несколько раз для выбора " +"вложенных групп или «» для поиска в группе верхнего уровня." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Искать указанный ключ" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Значение по умолчанию" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Тип переменной" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Название группы не может быть пустым, для группы верхнего уровня используйте " +"название «»" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Тип переменной. Для логического типа укажите «bool», в остальных случаях " +"переменная будет воспринята как строка." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Удаление заданного ключа." + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Значение для записи. Обязательно указывается. Для задания пустого значения " +"при использовании в командной оболочке укажите пустые одинарные кавычки ''." + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Совет дня" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Только для модульного тестирования: использовать отдельный тестовый " +#~ "каталог, чтобы не работать с настоящими файлами пользователя." + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Сохранить параметры" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Сменить язык интерфейса приложения" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Настроить" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Изменение параметров KConfig из командной строки" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "© Red Hat, Inc. и Luís Pedro Coelho, 2001" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Автор программы kreadconfig, на котором основано данное приложение" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" + +#~ msgid "" +#~ "_: NAME OF TRANSLATORS\n" +#~ "Your names" +#~ msgstr "Григорий Мохин" + +#~ msgid "" +#~ "_: EMAIL OF TRANSLATORS\n" +#~ "Your emails" +#~ msgstr "mok@kde.ru" diff --git a/poqm/se/kconfig6_qt.po b/poqm/se/kconfig6_qt.po new file mode 100644 index 0000000..d284c42 --- /dev/null +++ b/poqm/se/kconfig6_qt.po @@ -0,0 +1,1054 @@ +# Translation of kconfig6_qt to Northern Sami +# +# Børre Gaup , 2004, 2005. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2005-10-28 15:26+0200\n" +"Last-Translator: Børre Gaup \n" +"Language-Team: Northern Sami \n" +"Language: se\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Environment: kde\n" +"X-Accelerator-Marker: &\n" +"X-Text-Markup: qtrich\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Geavat oppalaš heivehusfiilla sajis" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +msgctxt "main|" +msgid "Key to look for" +msgstr "Oza čoavdaga" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Variábelšládja. Geavat «bool» boolalaš árvvuid várás, muđuid dat geađahallo " +"teakstastreŋgan." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Árvu maid cállit. Škálžžus fertet geavahit '' guorus árvvuid sajis" diff --git a/poqm/si/kconfig6_qt.po b/poqm/si/kconfig6_qt.po new file mode 100644 index 0000000..1074560 --- /dev/null +++ b/poqm/si/kconfig6_qt.po @@ -0,0 +1,1047 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2009-11-02 17:48+0530\n" +"Last-Translator: Danishka Navin \n" +"Language-Team: Sinhala \n" +"Language: si\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 1.0\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" diff --git a/poqm/sk/kconfig6_qt.po b/poqm/sk/kconfig6_qt.po new file mode 100644 index 0000000..e4838e8 --- /dev/null +++ b/poqm/sk/kconfig6_qt.po @@ -0,0 +1,1284 @@ +# translation of kwriteconfig.po to Slovak +# Michal Sulek , 2009. +# Roman Paholík , 2014, 2015, 2016, 2022, 2023. +# Mthw , 2019. +# SPDX-FileCopyrightText: 2019, 2020, 2024 Matej Mrenica +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-04-14 10:31+0200\n" +"Last-Translator: Matej Mrenica \n" +"Language-Team: Slovak \n" +"Language: sk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 24.02.2\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Prosím, kontaktujte svojho správcu systému." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Konfiguračný súbor \"%1\" nie je zapisovateľný.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Predvolené" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Späť" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Dopredu" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Domov" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Otvoriť" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Otvoriť nedávne" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Uložiť" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Uložiť ako" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Vrátiť" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Zavrieť" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Tlačiť" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Náhľad tlače" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Pošta" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Ukončiť" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "O aplikácii" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Späť" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Kopírovať" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Vložiť" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Vyčistiť" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Vybrať všetko" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Zrušiť výber" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Nájsť" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Nájsť nasledujúci" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Nájsť predchádzajúci" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Nahradiť" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom to Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Priblížiť na aktuálnu veľkosť" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Prispôsobiť stránke" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Prispôsobiť šírke" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Prispôsobiť výške" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Priblížiť" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Oddialiť" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Lupa" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Vybrať všetko" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Hore" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Prejsť na stránku" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Prejsť na riadok" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Prejsť na stránku" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Prejsť na riadok" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Prispôsobiť stránke" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Prejsť na riadok" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Prejsť na stránku" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Späť" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Dopredu" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Pridať záložku" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Upraviť záložky" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Pravopis" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Zobraziť ponuku" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Zobraziť ponuku" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Zobraziť panel nástrojov" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Zobraziť panel nástrojov" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Zobraziť stavový riadok" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Zobraziť stavový riadok" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Režim celej obrazovky" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "Nastaviť jazyk..." + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Nastaviť panely nástrojov" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Nastaviť upozornenia" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Čo je to" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Nahlásiť chybu" + +#: gui/kstandardactions_p.h:135 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Nastaviť jazyk..." + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Informácie o KDE" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Informácie o KDE" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Vymazať" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Premenovať" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Presunúť do koša" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Venovať peniaze" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "" +#| "KStandardShortcut|@action referring to the menu bar or a hamburger menu" +#| msgid "Open Main Menu" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Otvoriť hlavnú ponuku" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Otvoriť" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Nový" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Zavrieť" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Uložiť" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Tlačiť" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Ukončiť" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Späť" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Znovu" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Vystrihnúť" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopírovať" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Vložiť" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Vložiť výber" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Vybrať všetko" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Zrušiť výber" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Odstrániť slovo naspäť" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Odstrániť slovo dopredu" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Nájsť" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Nájsť nasledujúci" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Nájsť predchádzajúci" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Nahradiť" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Domov" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Začiatok" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Koniec" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Predchádzajúci" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Nasledujúci" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Hore" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Späť" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Dopredu" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Znovu načítať" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Začiatok riadku" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Koniec riadku" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Prejsť na riadok" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Späť o slovo" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Dopredu o slovo" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Pridať záložku" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Priblížiť" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Oddialiť" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Režim celej obrazovky" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Zobraziť ponuku" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Aktivovať nasledujúcu kartu" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Aktivovať predchádzajúcu kartu" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Pomocník" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Čo je to" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Dopĺňanie textu" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Predchádzajúca zhoda" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Nasledujúca zhoda" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Dopĺňanie časti textu" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Predchádzajúca položka v zozname" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Nasledujúca položka v zozname" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Otvoriť nedávne" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Uložiť ako" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Vrátiť" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Náhľad tlače" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Pošta" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Vyčistiť" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Priblížiť na aktuálnu veľkosť" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Prispôsobiť stránke" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Prispôsobiť šírke" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Prispôsobiť výške" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Lupa" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Prejsť na" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Prejsť na stránku" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Dozadu v dokumente" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Dopredu v dokumente" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Upraviť záložky" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Pravopis" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Zobraziť panel nástrojov" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Zobraziť stavový riadok" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Klávesové skratky" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Nastaviť aplikáciu" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Nastaviť panely nástrojov" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Nastaviť upozornenia" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Nahlásiť chybu" + +#: gui/kstandardshortcut.cpp:373 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Nastaviť jazyk..." + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "O aplikácii" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Informácie o KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Vymazať" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Premenovať" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Presunúť do koša" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Venovať peniaze" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Zobraziť/Skryť skryté súbory" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Vytvoriť priečinok" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Otvoriť hlavnú ponuku" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Otvoriť kontextovú ponuku" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE nástroj na aktualizáciu konfiguračných súborov používateľa" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Ponechať výstupné výsledky zo skriptov" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Skontrolovať, či samotný konfiguračný súbor potrebuje aktualizáciu" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Súbor(y) na čítanie inštrukcií aktualizácie z nich" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Adresár na vygenerovanie súborov [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "adresár" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Zobraziť softvérovú licenciu." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Použiť namiesto globálneho konfiguračného súboru" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Skupina k prehľadávaniu. Použite pre koreňovú skupinu alebo " +"použite opakovane pre vnorené skupiny." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Hľadať kľúč" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Predvolená hodnota" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Typ premennej" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Názov skupiny nemôže byť prázdny, použite pre koreňovú skupinu" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Typ premennej. Použite \"bool\" pre boolean, inak je považovaný za reťazec" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Ak je povolené, vymazať určený kľúč" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Hodnota pre zápis. Povinná, v shelli použite '' ako prázdnu hodnotu" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Tip dňa" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Len pre unit testy: použite adresáre testov na oddelenie od reálnych " +#~ "súborov používateľa" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Uložiť voľby" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Prepnúť jazyk aplikácie" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Nastavenia" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Zápis KConfig položiek - pre použitie v shell skriptoch" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Napísal kreadconfig, na ktorom je toto založené" diff --git a/poqm/sl/kconfig6_qt.po b/poqm/sl/kconfig6_qt.po new file mode 100644 index 0000000..c1e88f1 --- /dev/null +++ b/poqm/sl/kconfig6_qt.po @@ -0,0 +1,1100 @@ +# Translation of kwriteconfig.po to Slovenian +# Copyright (C) 2003 Free Software Foundation, Inc. +# +# Gregor Rakar , 2003. +# Gregor Rakar , 2003. +# Jure Repinc , 2007, 2008. +# Andrej Mernik , 2013, 2014, 2015, 2016, 2018. +# Matjaž Jeran , 2020, 2021, 2022. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-05-22 10:18+0200\n" +"Last-Translator: Matjaž Jeran \n" +"Language-Team: Slovenian \n" +"Language: sl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100>=3 && n" +"%100<=4 ? 2 : 3);\n" +"Translator: Andrej Mernik \n" +"X-Generator: Poedit 3.4.4\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Obvestite vašega sistemskega skrbnika." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Nastavitvena datoteka \"%1\" ni zapisljiva.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Privzeto" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "Nazaj" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "Naprej" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "Domov" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "Novo" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Ustvari nov dokument" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Odpri…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Odpri obstoječi dokument" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Odpri nedavno" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Odpri dokument, ki je bil nedavno odprt" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Shrani" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Shrani dokument" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Shrani kot…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Shrani dokument pod novim imenom" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Povrni" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Razveljavi neshranjene spremembe v dokumentu" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Zapri" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Zapri dokument" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Natisni…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Natisni dokument" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Predogled tiskanja" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Prikaži predogled tiska dokumenta" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "E-pošta…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Pošlji dokument po pošti" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Končaj" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Zapusti aplikacijo" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Razveljavi" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Razveljavi zadnjo dejavnost" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "Uveljavi" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Uveljavi zadnjo razveljavljeno dejavnost" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "Izreži" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Izreži izbiro na odložišče" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Kopiraj" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Kopiraj izbiro na odložišče" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Prilepi" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Prilepi vsebino odložišča" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Počisti" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Izberi vse" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Odizberi" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Najdi…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Najdi naslednje" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Najdi prejšnje" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Zamenjaj" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Prilagodi na dejansko velikost" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Ogled dokumenta v njegovi dejanski velikosti" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Prilagodi strani" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Povečaj, da se stran prilega oknu" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Prilagodi stran širini" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Povečaj, da se stran prilagodi širini okna" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Prilagodi stran višini" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Povečaj, da se stran prilagodi višini okna" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Približaj" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Oddalji" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Približaj…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Izberite stopnjo povečave" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "Osveži" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Osveži dokument" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Gor" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Pojdi gor" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Prejšnja stran" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Pojdi na prejšnjo stran" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Naslednja stran" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Pojdi na naslednjo stran" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "Pojdi na…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Pojdi na stran…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Pojdi v vrstico…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Prva stran" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Pojdi na prvo stran" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Na zadnjo stran" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Pojdi na zadnjo stran" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Nazaj" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Pojdi nazaj na dokument" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Naprej" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Pojdi naprej v dokumentu" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Dod&aj zaznamek" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Uredi zaznamke…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Črkovanje…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Preveri črkovanje v dokumentu" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Pokaži &menijsko vrstico" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Pokaži ali skrij menijsko vrstico" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Pokaži orodno vrstico" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Pokaži ali skrij orodno vrstico" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Pokaži vrstico stanja" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Pokaži ali skrij vrstico stanja" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Celozaslonski način" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Konfiguriraj bližnjice na tipkovnici…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "Konfiguriraj %1 …" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Nastavi orodne vrstice…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Nastavi obvestila…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1 Priročnik" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Kaj je to?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Poročaj o hrošču…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Nastavi jezik…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "O %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "O &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Izbriši" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Preimenuj…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Premakni v Smeti" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Doniraj" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Odpri &meni" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Odpri" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Novo" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Zapri" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Shrani" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Natisni" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Končaj" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Razveljavi" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Uveljavi" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Izreži" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopiraj" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Prilepi" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Prilepi izbor" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Izberi vse" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Odstrani izbiro" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Izbriši besedo vzvratno" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Izbriši besedo naprej" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Najdi" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Najdi naslednje" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Najdi prejšnje" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Zamenjaj" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Domov" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Začni" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Končaj" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Prejšnji" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Naslednji" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Gor" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Nazaj" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Naprej" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Znova naloži" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Začetek vrstice" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Konec vrstice" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Pojdi v vrstico" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Eno besedo nazaj" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Eno besedo naprej" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Dodaj zaznamek" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Približaj" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Oddalji" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Celozaslonski način" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Pokaži menijsko vrstico" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Omogoči naslednji zavihek" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Omogoči predhodni zavihek" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Pomoč" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Kaj je to" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Dopolnjevanje besedila" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Predhodni zadetek pri dopolnjevanju" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Naslednji zadetek pri dopolnjevanju" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Dopolnjevanje podniza" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Predhodni predmet seznama" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Naslednji predmet seznama" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Odpri nedavno" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Shrani kot" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Povrni" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Predogled tiskanja" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "E-pošta" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Počisti" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Prilagodi na dejansko velikost" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Prilagodi strani" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Prilagodi širini" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Prilagodi višini" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Približanje" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Pojdi na" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Pojdi na stran" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "En dokument nazaj" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "En dokument naprej" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Uredi zaznamke" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Črkovanje" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Pokaži orodno vrstico" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Pokaži vrstico stanja" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Tipkovne bližnjice" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Nastavi program" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Nastavi orodne vrstice" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Nastavi obvestila" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Poročaj o hrošču" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Nastavi jezik…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "O programu" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "O KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Izbriši" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Preimenuj" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Premakni v Smeti" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Donacija" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Prikaži/Skrij skrite datoteke" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Ustvari mapo" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Odpri glavni meni" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Odpri kontekstni meni" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Orodje KDE za posodabljanje uporabniških nastavitvenih datotek" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Ohrani rezultate izpisa skriptov" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Samo za preizkus enot: ne zapisujte vnosov kot dokončanih, tako da se ob " +"vsaki ponovitvi skripti ponovno izvajajo" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Preveri, če nastavitvena datoteka potrebuje posodobitev" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Datoteke, iz katerih bodo prebrana navodila za posodobitev" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Direktorij kjer bodo ustvarjene datoteke [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "direktorij" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Prikaži licenco programske opreme." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Uporabi namesto splošnih nastavitev" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"V kateri skupini naj se išče. Uporabite \"\" za za korensko " +"skupino ali ponovno za gnezdene skupine." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Iskani ključ" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Privzeta vrednost" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Vrsta spremenljivke" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Ime skupine ne more biti prazna, uporabite \"\" za korensko skupino" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Vrsta spremenljivke. Uporabite »bool« za Boolovo, sicer se obravnava kot niz" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Izbriši označen ključ, če je omogočeno" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Vrednost za zapis. V lupini obvezno uporabite '' za prazno" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Nasvet dneva" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Samo za preizkuse enot: uporabite preizkusne mape, da ne vplivate na " +#~ "uporabnikove datoteke" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Shrani možnosti" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Preklopi jezik programa" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Možnosti" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Zapiši vnose KConfig - za uporabo v lupinskih skriptih" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "© 2001 Red Hat, Inc. in Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Napisal je kreadconfig, na katerem temelji ta program" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/sq/kconfig6_qt.po b/poqm/sq/kconfig6_qt.po new file mode 100644 index 0000000..96064ff --- /dev/null +++ b/poqm/sq/kconfig6_qt.po @@ -0,0 +1,1066 @@ +# Albanian translation for kdebase-runtime +# Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 +# This file is distributed under the same license as the kdebase-runtime package. +# FIRST AUTHOR , 2009. +# +msgid "" +msgstr "" +"Project-Id-Version: kdebase-runtime\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2009-07-29 03:59+0000\n" +"Last-Translator: Vilson Gjeci \n" +"Language-Team: Albanian \n" +"Language: sq\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-04-22 15:52+0000\n" +"X-Generator: Launchpad (build 12883)\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Përdor në vend të global config" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "Grupi u bllokua. Përdore shpesh për grupet fole." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Çelësi që duhet kërkuar" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/sr/kconfig6_qt.po b/poqm/sr/kconfig6_qt.po new file mode 100644 index 0000000..50cff3a --- /dev/null +++ b/poqm/sr/kconfig6_qt.po @@ -0,0 +1,1267 @@ +# Translation of kconfig5_qt.po into Serbian. +# Chusslove Illich , 2014, 2015, 2016, 2017. +msgid "" +msgstr "" +"Project-Id-Version: kconfig5_qt\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2017-08-21 22:33+0200\n" +"Last-Translator: Chusslove Illich \n" +"Language-Team: Serbian \n" +"Language: sr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"X-Accelerator-Marker: &\n" +"X-Text-Markup: qtrich\n" +"X-Environment: kde\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Обратите се систем-администратору." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Не може се писати у поставни фајл „%1“.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Подразумевано" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Назад" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Напред" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Домаће" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Отвори" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Отвори недавни" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Сачувај" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Сачувај као" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Врати" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Затвори" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Штампај" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Преглед пред штампање" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Пошта" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Напусти" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "О програму" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Опозови" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Копирај" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Налепи" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Очисти" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Изабери све" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Поништи избор" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Нађи" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Нађи следеће" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Нађи претходно" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Замени" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Стварна величина" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Уклопи у страницу" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Уклопи у ширину" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Уклопи у висину" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Увеличај" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Умањи" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Увеличај" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Изабери све" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Горе" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Иди на страницу" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Иди на ред" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Иди на страницу" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Иди на ред" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Уклопи у страницу" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Иди на ред" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Иди на страницу" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Назад" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Напред" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Додај обележивач" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Уреди обележиваче" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Правопис" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Прикажи траку менија" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Прикажи траку менија" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Прикажи траку алатки" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Прикажи траку алатки" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Прикажи траку стања" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Прикажи траку стања" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Режим целог екрана" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Подеси траке алатки" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Подеси обавештења" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Шта је ово" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Пријави грешку" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "О КДЕ‑у" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "О КДЕ‑у" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Обриши" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Преименуј" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Премести у смеће" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Донација" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Отвори недавни" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Отвори" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Ново" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Затвори" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Сачувај" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Штампај" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Напусти" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Опозови" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Понови" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Исеци" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Копирај" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Налепи" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Налепи избор" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Изабери све" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Поништи избор" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Обриши реч уназад" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Обриши реч унапред" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Нађи" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Нађи следеће" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Нађи претходно" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Замени" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Домаће" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Почетак" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Крај" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Претходно" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Следеће" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Горе" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Назад" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Напред" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Учитај поново" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Почетак реда" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Крај реда" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Иди на ред" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Реч уназад" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Реч унапред" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Додај обележивач" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Увеличај" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Умањи" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Режим целог екрана" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Прикажи траку менија" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Активирај следећи језичак" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Активирај претходни језичак" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Помоћ" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Шта је ово" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Допуна текста" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Претходно поклапање за допуну" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Следеће поклапање за допуну" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Допуна подниске" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Претходна ставка на списку" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Следећа ставка на списку" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Отвори недавни" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Сачувај као" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Врати" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Преглед пред штампање" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Пошта" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Очисти" + +#: gui/kstandardshortcut.cpp:299 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Стварна величина" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Уклопи у страницу" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Уклопи у ширину" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Уклопи у висину" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Увеличај" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Иди на" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Иди на страницу" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Документ назад" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Документ напред" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Уреди обележиваче" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Правопис" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Прикажи траку алатки" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Прикажи траку стања" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Свезе тастера" + +#: gui/kstandardshortcut.cpp:348 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Подеси обавештења" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Подеси траке алатки" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Подеси обавештења" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Пријави грешку" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "О програму" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "О КДЕ‑у" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Обриши" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Преименуј" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Премести у смеће" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Донација" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "КДЕ‑ова алатка за ажурирање корисничких поставних фајлова" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Задржи излазне резултате из скрипти" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Провери да ли са̑м поставни фајл захтева ажурирање" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Фајлови из којих се читају инструкције за ажурирање" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Фасцикла у којој се стварају фајлови [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "фасцикла" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Прикажи лиценцу софтвера" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Користи овај фајл уместо глобалне поставе" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgctxt "main|" +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "Група у којој се тражи. Понављајте за угнежђене групе." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Кључ који треба потражити" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Подразумевана вредност" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Тип променљиве" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Тип променљиве. Задајте „bool“ за логичке, у супротном се узима као " +"„string“ (ниска)" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +# rewrite-msgid: /on a shell// +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Вредност која се уписује. Обавезно, задајте '' за празну" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Савет дана" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Само за јединичне пробе: користи пробне фасцикле да не би дирао " +#~ "корисникове праве фајлове" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Сачувај опције" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Промени језик програма" diff --git a/poqm/sr@ijekavian/kconfig6_qt.po b/poqm/sr@ijekavian/kconfig6_qt.po new file mode 100644 index 0000000..17ef63b --- /dev/null +++ b/poqm/sr@ijekavian/kconfig6_qt.po @@ -0,0 +1,1267 @@ +# Translation of kconfig5_qt.po into Serbian. +# Chusslove Illich , 2014, 2015, 2016, 2017. +msgid "" +msgstr "" +"Project-Id-Version: kconfig5_qt\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2017-08-21 22:33+0200\n" +"Last-Translator: Chusslove Illich \n" +"Language-Team: Serbian \n" +"Language: sr@ijekavian\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"X-Accelerator-Marker: &\n" +"X-Text-Markup: qtrich\n" +"X-Environment: kde\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Обратите се систем-администратору." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Не може се писати у поставни фајл „%1“.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Подразумевано" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Назад" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Напријед" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Домаће" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Отвори" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Отвори недавни" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Сачувај" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Сачувај као" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Врати" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Затвори" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Штампај" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Преглед пред штампање" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Пошта" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Напусти" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "О програму" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Опозови" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Копирај" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Налијепи" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Очисти" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Изабери све" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Поништи избор" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Нађи" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Нађи сљедеће" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Нађи претходно" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Замијени" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Стварна величина" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Уклопи у страницу" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Уклопи у ширину" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Уклопи у висину" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Увеличај" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Умањи" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Увеличај" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Изабери све" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Горе" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Иди на страницу" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Иди на ред" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Иди на страницу" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Иди на ред" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Уклопи у страницу" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Иди на ред" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Иди на страницу" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Назад" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Напријед" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Додај обиљеживач" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Уреди обиљеживаче" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Правопис" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Прикажи траку менија" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Прикажи траку менија" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Прикажи траку алатки" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Прикажи траку алатки" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Прикажи траку стања" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Прикажи траку стања" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Режим целог екрана" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Подеси траке алатки" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Подеси обавјештења" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Шта је ово" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Пријави грешку" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "О КДЕ‑у" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "О КДЕ‑у" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Обриши" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Преименуј" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Премести у смеће" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Донација" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Отвори недавни" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Отвори" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Ново" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Затвори" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Сачувај" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Штампај" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Напусти" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Опозови" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Понови" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Исијеци" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Копирај" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Налијепи" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Налијепи избор" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Изабери све" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Поништи избор" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Обриши ријеч уназад" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Обриши ријеч унапријед" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Нађи" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Нађи сљедеће" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Нађи претходно" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Замијени" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Домаће" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Почетак" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Крај" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Претходно" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Сљедеће" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Горе" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Назад" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Напријед" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Учитај поново" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Почетак реда" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Крај реда" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Иди на ред" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Ријеч уназад" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Ријеч унапријед" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Додај обиљеживач" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Увеличај" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Умањи" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Режим целог екрана" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Прикажи траку менија" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Активирај сљедећи језичак" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Активирај претходни језичак" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Помоћ" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Шта је ово" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Допуна текста" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Претходно поклапање за допуну" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Сљедеће поклапање за допуну" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Допуна подниске" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Претходна ставка на списку" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Сљедећа ставка на списку" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Отвори недавни" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Сачувај као" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Врати" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Преглед пред штампање" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Пошта" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Очисти" + +#: gui/kstandardshortcut.cpp:299 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Стварна величина" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Уклопи у страницу" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Уклопи у ширину" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Уклопи у висину" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Увеличај" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Иди на" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Иди на страницу" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Документ назад" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Документ напријед" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Уреди обиљеживаче" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Правопис" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Прикажи траку алатки" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Прикажи траку стања" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Свезе тастера" + +#: gui/kstandardshortcut.cpp:348 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Подеси обавјештења" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Подеси траке алатки" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Подеси обавјештења" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Пријави грешку" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "О програму" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "О КДЕ‑у" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Обриши" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Преименуј" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Премести у смеће" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Донација" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "КДЕ‑ова алатка за ажурирање корисничких поставних фајлова" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Задржи излазне резултате из скрипти" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Провјери да ли са̑м поставни фајл захтијева ажурирање" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Фајлови из којих се читају инструкције за ажурирање" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Фасцикла у којој се стварају фајлови [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "фасцикла" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Прикажи лиценцу софтвера" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Користи овај фајл умјесто глобалне поставе" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgctxt "main|" +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "Група у којој се тражи. Понављајте за угнијежђене групе." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Кључ који треба потражити" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Подразумијевана вредност" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Тип промјенљиве" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Тип промјенљиве. Задајте „bool“ за логичке, у супротном се узима као " +"„string“ (ниска)" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +# rewrite-msgid: /on a shell// +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Вриједност која се уписује. Обавезно, задајте '' за празну" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Савјет дана" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Само за јединичне пробе: користи пробне фасцикле да не би дирао " +#~ "корисникове праве фајлове" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Сачувај опције" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Промијени језик програма" diff --git a/poqm/sr@ijekavianlatin/kconfig6_qt.po b/poqm/sr@ijekavianlatin/kconfig6_qt.po new file mode 100644 index 0000000..278d708 --- /dev/null +++ b/poqm/sr@ijekavianlatin/kconfig6_qt.po @@ -0,0 +1,1267 @@ +# Translation of kconfig5_qt.po into Serbian. +# Chusslove Illich , 2014, 2015, 2016, 2017. +msgid "" +msgstr "" +"Project-Id-Version: kconfig5_qt\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2017-08-21 22:33+0200\n" +"Last-Translator: Chusslove Illich \n" +"Language-Team: Serbian \n" +"Language: sr@ijekavianlatin\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"X-Accelerator-Marker: &\n" +"X-Text-Markup: qtrich\n" +"X-Environment: kde\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Obratite se sistem-administratoru." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Ne može se pisati u postavni fajl „%1“.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Podrazumevano" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Nazad" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Naprijed" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Domaće" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Otvori" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Otvori nedavni" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Sačuvaj" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Sačuvaj kao" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Vrati" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Zatvori" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Štampaj" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Pregled pred štampanje" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Pošta" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Napusti" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "O programu" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Opozovi" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Kopiraj" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Nalijepi" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Očisti" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Izaberi sve" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Poništi izbor" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Nađi" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Nađi sljedeće" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Nađi prethodno" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Zamijeni" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Stvarna veličina" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Uklopi u stranicu" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Uklopi u širinu" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Uklopi u visinu" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Uveličaj" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Umanji" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Uveličaj" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Izaberi sve" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Gore" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Idi na stranicu" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Idi na red" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Idi na stranicu" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Idi na red" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Uklopi u stranicu" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Idi na red" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Idi na stranicu" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Nazad" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Naprijed" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Dodaj obilježivač" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Uredi obilježivače" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Pravopis" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Prikaži traku menija" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Prikaži traku menija" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Prikaži traku alatki" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Prikaži traku alatki" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Prikaži traku stanja" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Prikaži traku stanja" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Režim celog ekrana" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Podesi trake alatki" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Podesi obavještenja" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Šta je ovo" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Prijavi grešku" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "O KDE‑u" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "O KDE‑u" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Obriši" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Preimenuj" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Premesti u smeće" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Donacija" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Otvori nedavni" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Otvori" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Novo" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Zatvori" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Sačuvaj" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Štampaj" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Napusti" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Opozovi" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Ponovi" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Isijeci" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopiraj" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Nalijepi" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Nalijepi izbor" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Izaberi sve" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Poništi izbor" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Obriši riječ unazad" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Obriši riječ unaprijed" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Nađi" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Nađi sljedeće" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Nađi prethodno" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Zamijeni" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Domaće" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Početak" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Kraj" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Prethodno" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Sljedeće" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Gore" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Nazad" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Naprijed" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Učitaj ponovo" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Početak reda" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Kraj reda" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Idi na red" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Riječ unazad" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Riječ unaprijed" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Dodaj obilježivač" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Uveličaj" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Umanji" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Režim celog ekrana" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Prikaži traku menija" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Aktiviraj sljedeći jezičak" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Aktiviraj prethodni jezičak" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Pomoć" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Šta je ovo" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Dopuna teksta" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Prethodno poklapanje za dopunu" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Sljedeće poklapanje za dopunu" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Dopuna podniske" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Prethodna stavka na spisku" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Sljedeća stavka na spisku" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Otvori nedavni" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Sačuvaj kao" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Vrati" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Pregled pred štampanje" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Pošta" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Očisti" + +#: gui/kstandardshortcut.cpp:299 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Stvarna veličina" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Uklopi u stranicu" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Uklopi u širinu" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Uklopi u visinu" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Uveličaj" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Idi na" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Idi na stranicu" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Dokument nazad" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Dokument naprijed" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Uredi obilježivače" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Pravopis" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Prikaži traku alatki" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Prikaži traku stanja" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Sveze tastera" + +#: gui/kstandardshortcut.cpp:348 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Podesi obavještenja" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Podesi trake alatki" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Podesi obavještenja" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Prijavi grešku" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "O programu" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "O KDE‑u" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Obriši" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Preimenuj" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Premesti u smeće" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Donacija" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE‑ova alatka za ažuriranje korisničkih postavnih fajlova" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Zadrži izlazne rezultate iz skripti" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Provjeri da li sȃ̑m postavni fajl zahtijeva ažuriranje" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Fajlovi iz kojih se čitaju instrukcije za ažuriranje" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Fascikla u kojoj se stvaraju fajlovi [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "fascikla" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Prikaži licencu softvera" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Koristi ovaj fajl umjesto globalne postave" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgctxt "main|" +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "Grupa u kojoj se traži. Ponavljajte za ugniježđene grupe." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Ključ koji treba potražiti" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Podrazumijevana vrednost" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Tip promjenljive" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Tip promjenljive. Zadajte „bool“ za logičke, u suprotnom se uzima kao " +"„string“ (niska)" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +# rewrite-msgid: /on a shell// +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Vrijednost koja se upisuje. Obavezno, zadajte '' za praznu" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Savjet dana" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Samo za jedinične probe: koristi probne fascikle da ne bi dirao " +#~ "korisnikove prave fajlove" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Sačuvaj opcije" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Promijeni jezik programa" diff --git a/poqm/sr@latin/kconfig6_qt.po b/poqm/sr@latin/kconfig6_qt.po new file mode 100644 index 0000000..9950f3a --- /dev/null +++ b/poqm/sr@latin/kconfig6_qt.po @@ -0,0 +1,1267 @@ +# Translation of kconfig5_qt.po into Serbian. +# Chusslove Illich , 2014, 2015, 2016, 2017. +msgid "" +msgstr "" +"Project-Id-Version: kconfig5_qt\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2017-08-21 22:33+0200\n" +"Last-Translator: Chusslove Illich \n" +"Language-Team: Serbian \n" +"Language: sr@latin\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"X-Accelerator-Marker: &\n" +"X-Text-Markup: qtrich\n" +"X-Environment: kde\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Obratite se sistem-administratoru." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Ne može se pisati u postavni fajl „%1“.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Podrazumevano" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Nazad" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Napred" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Domaće" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Otvori" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Otvori nedavni" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Sačuvaj" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Sačuvaj kao" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Vrati" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Zatvori" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Štampaj" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Pregled pred štampanje" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Pošta" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Napusti" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "O programu" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Opozovi" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Kopiraj" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Nalepi" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Očisti" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Izaberi sve" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Poništi izbor" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Nađi" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Nađi sledeće" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Nađi prethodno" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Zameni" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Stvarna veličina" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Uklopi u stranicu" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Uklopi u širinu" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Uklopi u visinu" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Uveličaj" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Umanji" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Uveličaj" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Izaberi sve" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Gore" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Idi na stranicu" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Idi na red" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Idi na stranicu" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Idi na red" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Uklopi u stranicu" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Idi na red" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Idi na stranicu" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Nazad" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Napred" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Dodaj obeleživač" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Uredi obeleživače" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Pravopis" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Prikaži traku menija" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Prikaži traku menija" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Prikaži traku alatki" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Prikaži traku alatki" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Prikaži traku stanja" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Prikaži traku stanja" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Režim celog ekrana" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Podesi trake alatki" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Podesi obaveštenja" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Šta je ovo" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Prijavi grešku" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "O KDE‑u" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "O KDE‑u" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Obriši" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Preimenuj" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Premesti u smeće" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Donacija" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Otvori nedavni" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Otvori" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Novo" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Zatvori" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Sačuvaj" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Štampaj" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Napusti" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Opozovi" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Ponovi" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Iseci" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopiraj" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Nalepi" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Nalepi izbor" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Izaberi sve" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Poništi izbor" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Obriši reč unazad" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Obriši reč unapred" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Nađi" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Nađi sledeće" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Nađi prethodno" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Zameni" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Domaće" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Početak" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Kraj" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Prethodno" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Sledeće" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Gore" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Nazad" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Napred" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Učitaj ponovo" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Početak reda" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Kraj reda" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Idi na red" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Reč unazad" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Reč unapred" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Dodaj obeleživač" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Uveličaj" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Umanji" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Režim celog ekrana" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Prikaži traku menija" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Aktiviraj sledeći jezičak" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Aktiviraj prethodni jezičak" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Pomoć" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Šta je ovo" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Dopuna teksta" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Prethodno poklapanje za dopunu" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Sledeće poklapanje za dopunu" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Dopuna podniske" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Prethodna stavka na spisku" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Sledeća stavka na spisku" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Otvori nedavni" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Sačuvaj kao" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Vrati" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Pregled pred štampanje" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Pošta" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Očisti" + +#: gui/kstandardshortcut.cpp:299 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Stvarna veličina" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Uklopi u stranicu" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Uklopi u širinu" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Uklopi u visinu" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Uveličaj" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Idi na" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Idi na stranicu" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Dokument nazad" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Dokument napred" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Uredi obeleživače" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Pravopis" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Prikaži traku alatki" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Prikaži traku stanja" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Sveze tastera" + +#: gui/kstandardshortcut.cpp:348 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Podesi obaveštenja" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Podesi trake alatki" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Podesi obaveštenja" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Prijavi grešku" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "O programu" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "O KDE‑u" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Obriši" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Preimenuj" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Premesti u smeće" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Donacija" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE‑ova alatka za ažuriranje korisničkih postavnih fajlova" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Zadrži izlazne rezultate iz skripti" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Proveri da li sȃ̑m postavni fajl zahteva ažuriranje" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Fajlovi iz kojih se čitaju instrukcije za ažuriranje" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Fascikla u kojoj se stvaraju fajlovi [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "fascikla" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Prikaži licencu softvera" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Koristi ovaj fajl umesto globalne postave" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgctxt "main|" +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "Grupa u kojoj se traži. Ponavljajte za ugnežđene grupe." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Ključ koji treba potražiti" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Podrazumevana vrednost" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Tip promenljive" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Tip promenljive. Zadajte „bool“ za logičke, u suprotnom se uzima kao " +"„string“ (niska)" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +# rewrite-msgid: /on a shell// +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Vrednost koja se upisuje. Obavezno, zadajte '' za praznu" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Savet dana" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Samo za jedinične probe: koristi probne fascikle da ne bi dirao " +#~ "korisnikove prave fajlove" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Sačuvaj opcije" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Promeni jezik programa" diff --git a/poqm/sv/kconfig6_qt.po b/poqm/sv/kconfig6_qt.po new file mode 100644 index 0000000..86f4f1c --- /dev/null +++ b/poqm/sv/kconfig6_qt.po @@ -0,0 +1,1096 @@ +# translation of kwriteconfig.po to Swedish +# Översättning av kwriteconfig.po till svenska +# Copyright (C). +# +# Mattias Newzella , 2003. +# SPDX-FileCopyrightText: 2007, 2008, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2024 Stefan Asserhäll +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-06-19 20:28+0200\n" +"Last-Translator: Stefan Asserhäll \n" +"Language-Team: Swedish \n" +"Language: sv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 23.08.5\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr " Kontakta systemadministratören." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Inställningsfilen \"%1\" är inte skrivbar.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Förval" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "Till&baka" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Framåt" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Hem" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Ny" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Skapa nytt dokument" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Ö&ppna…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Öppna ett befintligt dokument" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Öppna s&enaste" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Öppna ett dokument som nyligen öppnades" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Spara" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Spara dokument" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Spara s&om…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Spara aktuellt dokument med nytt namn" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Å&terställ" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Ångra osparade ändringar gjorda i dokumentet" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Stäng" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Stäng dokument" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Skriv &ut…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Skriv ut dokument" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "&Förhandsgranska utskrift" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Visa en förhandsgranskning av dokumentutskrift" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&E-post…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Skicka dokument med e-post" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "&Avsluta" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Avsluta program" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Å&ngra" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Ångra senaste åtgärden" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "&Gör om" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Gör om senast ångrade åtgärd" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "Klipp u&t" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Klipp ut markering till klippbordet" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "K&opiera" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Kopiera markering till klippbordet" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "K&listra in" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Klistra in klippbordets innehåll" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Re&nsa" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Markera &alla" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "A&vmarkera" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Sök…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Sök &igen" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Sök &föregående" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Ersätt…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Zooma till &verklig storlek" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Visa dokumentet med verklig storlek" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Fyll sidan" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Zooma för att anpassa sidan till fönstret" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Fyll sidans &bredd" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Zooma för att anpassa sidans bredd till fönstret" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Fyll sidans &höjd" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Zooma för att anpassa sidans höjd till fönstret" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Zooma &in" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Zooma &ut" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Zooma…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Välj zoomnivå" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Uppdatera" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Uppdatera dokumentet" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Uppåt" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Gå uppåt" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Föregående sida" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Gå till föregående sida" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Nästa sida" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Gå till nästa sida" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "&Gå till…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "&Gå till sida…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "&Gå till rad…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "&Första sidan" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Gå till första sidan" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "&Sista sidan" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Gå till sista sidan" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Till&baka" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Gå bakåt i dokumentet" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Framåt" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Gå framåt i dokumentet" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Lägg till bokmärke" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "R&edigera bokmärken…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "&Stavning…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Kontrollera dokumentets stavning" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Visa &menyrad" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Visa eller dölj menyrad" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Visa verk&tygsrad" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Visa eller dölj verktygsrad" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Visa st&atusrad" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Visa eller dölj statusrad" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "F&ullskärmsläge" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Anpassa snabbtan&genter…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "A&npassa %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Anpassa &verktygsrader…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Anpassa u&nderrättelser…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "&Handbok %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Vad är &det här?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Rapportera fel…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Anpassa s&pråk…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&Om %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Om &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Ta bort" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "&Byt namn…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Flytta till papperskorgen" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Ge bidrag" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Visa &meny" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Öppna" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Ny" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Stäng" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Spara" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Skriv ut" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Avsluta" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Ångra" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Gör om" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Klipp ut" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopiera" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Klistra in" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Klistra in markering" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Markera alla" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Avmarkera" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Ta bort ord bakåt" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Ta bort ord framåt" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Sök" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Sök igen" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Sök föregående" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Ersätt" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Hem" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Början" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Slutet" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Föregående" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Nästa" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Uppåt" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Tillbaka" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Framåt" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Uppdatera" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Början på raden" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Slutet på raden" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Gå till rad" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Bakåt ett ord" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Framåt ett ord" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Lägg till bokmärke" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Zooma in" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Zooma ut" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Fullskärmsläge" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Visa menyrad" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Aktivera nästa flik" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Aktivera föregående flik" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Hjälp" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Vad är det här" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Textkomplettering" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Föregående kompletteringsträff" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Nästa kompletteringsträff" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Delsträngskomplettering" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Föregående post i listan" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Nästa post i listan" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Öppna senaste" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Spara som" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Återställ" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Förhandsgranskning av utskrift" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "E-post" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Rensa" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Zooma till verklig storlek" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Fyll sidan" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Fyll sidans bredd" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Fyll sidans höjd" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Zooma" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Gå till" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Gå till sida" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Dokument bakåt" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Dokument framåt" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Redigera bokmärken" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Stavning" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Visa verktygsrad" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Visa statusrad" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Tangentbindningar" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Anpassa program" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Anpassa verktygsrader" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Anpassa underrättelser" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Rapportera fel" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Anpassa språk…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Om programmet" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Om KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Ta bort" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Byt namn" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Flytta till papperskorgen" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Ge bidrag" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Visa eller dölj dolda filer" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Skapa katalog" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Visa huvudmeny" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Visa sammanhangsberoende meny" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE-verktyg för uppdatering av användarinställningsfiler" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Behåll utmatade resultat från skript" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Enbart för enhetstester: skriv inte de färdiga posterna, så att skripten " +"exekveras igen vid varje omkörning" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Kontrollera om inställningsfilen själv kräver uppdatering" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Fil(er) att läsa uppdaterade instruktioner från" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Katalog att skapa filer i [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "katalog" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Visa programvarulicens." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Använd istället för globala inställningar" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Grupp att titta i. Använd \"\" för rotgruppen, eller använd " +"upprepade gånger för nästlade grupper." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Nyckel att söka efter" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Förvalt värde" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Typ av variabel" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "Gruppnamn kan inte vara tomt, använd \"\" för rotgruppen" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Typ av variabel. Använd \"bool\" för ett Booleskt värde, annars behandlas " +"det som en sträng." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Ta bort den designerade nyckeln om aktiverad" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Värdet att skriva. Krävs, använd '' för tomt värde i ett skal." + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Dagens tips" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Bara för enhetstester: Använd testkataloger för att undvika användarens " +#~ "riktiga filer" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Spara alternativ" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Ändra programmets språk" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Inställningar" + +#~ msgid "KWriteConfig" +#~ msgstr "Inställningsskrivare" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Skriv poster till Kconfig, för användning i skalskript" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "© 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Skrev kreadconfig som det här är baserat på" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/ta/kconfig6_qt.po b/poqm/ta/kconfig6_qt.po new file mode 100644 index 0000000..69772f2 --- /dev/null +++ b/poqm/ta/kconfig6_qt.po @@ -0,0 +1,1205 @@ +# translation of kwriteconfig.po to +# translation of kwriteconfig.po to Tamil +# Copyright (C) 2004 Free Software Foundation, Inc. +# +# Vasee Vaseeharan , 2004. +# Ambalam , 2004. +# SPDX-FileCopyrightText: 2021, 2022, 2023, 2024 Kishore G +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-06-16 19:31+0530\n" +"Last-Translator: Kishore G \n" +"Language-Team: Tamil \n" +"Language: ta\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" +"X-Generator: Lokalize 24.05.1\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "உங்கள் கணினி நிர்வாகியை தொடர்பு கொள்ளுங்கள்." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "\"%1\" எனும் விருப்பத்தேர்வு கோப்பிற்கு எழுத முடியவில்லை.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "இயல்பிருப்பு" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&பின்னே" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "மு&ன்னே" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "மு&கப்பு" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "பு&தியது" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "புதிய ஆவணத்தை உருவாக்கும்" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "தி&ற…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "ஏற்கனவே உள்ள ஆவணத்தை திறக்கும்" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "சமீபமானவ&ற்றை திற" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "சமீபத்தில் திறக்கப்பட்ட ஆவணத்தை திறக்கும்" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&சேமி" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "ஆவணத்தை சேமிக்கம்" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "வேறு பெ&யரில் சேமி…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "ஆவணத்தை வேறு பெயரில் சேமிக்கும்" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "மீ&ட்டமை" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "சேமிக்கப்படாத மாற்றங்களை செயல்நீக்கும்" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&மூடு" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "ஆவணத்தை மூடும்" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&அச்சிடு…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "ஆவணத்தை அச்சிடும்" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "அச்சு முன்னோட்டம்" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "ஆவணம் அச்சிடப்பட்டால் எப்படி இருக்கும் என ஒரு மூன்னோட்டத்தை காட்டும்" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "அ&ஞ்சலிடு…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "ஆவணத்தை மின்னஞ்சல் மூலம் அனுப்பும்" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "வெ&ளியேறு" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "செயலியிலிருந்து வெளியேறும்" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&செயல்நீக்கு" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "கடைசியாக செய்ததை செயல்நீக்கும்" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "&மீளச்செய்" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "கடைசியாக செயல்நீக்கியதை மீளச்செய்யும்" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "&வெட்டு" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "தேர்ந்தெடுத்ததை வெட்டி பிடிப்புப்பலகையில் இடும்" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&நகலெடு" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "தேர்ந்தெடுத்ததை பிடிப்புப்பலகைக்கு நகலெடுக்கும்" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&ஒட்டு" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "பிடிப்புப்பலகையில் உள்ளதை ஒட்டும்" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "&காலியாக்கு" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "அ&னைத்தையும் தேர்வு செய்" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "தே&ர்வை நிராகரி" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&கண்டுபிடி…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "அ&டுத்ததை கண்டுபிடி" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "மு&ந்தையதை கண்டுபிடி" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&மாற்று…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "&உண்மையான அளவில் காட்டு" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "ஆவணத்தை அதன் உண்மையான அளவில் காட்டும்" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&பக்கத்துடன் பொருத்து" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "ஒரு பக்கத்தை முழுமையாக காட்டும்படி உருப்பெருக்கத்தை அமைக்கும்" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "பக்க அகலத்துடன் பொருத்து" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "பக்க உயரத்துடன் பொருத்து" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "பெரிதாக்கு" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "சிறிதாக்கு" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "உருப்பெருக்கம்" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "அனைத்தையும் தேர்ந்தெடு" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "மேலே" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "பக்கத்திற்கு செல்" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "வரிக்கு செல்" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "பக்கத்திற்கு செல்" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "வரிக்கு செல்" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "பக்கத்துடன் பொருத்து" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "வரிக்கு செல்" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "பக்கத்திற்கு செல்" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "பின்னே" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "முன்னே" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "நினைவுக்குறியை சேர்" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "நினைவுக்குறிகளை திருத்து" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "எழுத்தாக்கம்" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "பட்டிப் பட்டையை காட்டு" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "பட்டிப் பட்டையை காட்டு" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "கருவிப்பட்டையை காட்டு" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "கருவிப்பட்டையை காட்டு" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "நிலைப்பட்டையை காட்டு" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "நிலைப்பட்டையை காட்டு" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "முழுத்திரை பயன்முறை" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language…" +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "மொழியை அமை…" + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "கருவிப்பட்டைகளை அமை" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "அறிவிப்புகளை அமை" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "இது என்ன" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "பிழையை தெரிவி" + +#: gui/kstandardactions_p.h:135 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language…" +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "மொழியை அமை…" + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "கே.டீ.யீ. பற்றி" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "கே.டீ.யீ. பற்றி" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "நீக்கு" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "மறுபெயரிடு" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "அகற்றிடத்துக்கு நகர்த்து" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "நன்கொடை அளியுங்கள்" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "" +#| "KStandardShortcut|@action referring to the menu bar or a hamburger menu" +#| msgid "Open Main Menu" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "பிரதானப் பட்டியைத் திற" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "திற" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "புதியது" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "மூடு" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "சேமி" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "அச்சிடு" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "வெளியேறு" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "செயல்நீக்கு" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "மீளச்செய்" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "வெட்டு" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "நகலெடு" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "ஒட்டு" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "தேர்வை ஒட்டு" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "அனைத்தையும் தேர்ந்தெடு" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "தேர்வை நிராகரி" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "பின்னோக்கி சொல்லை நீக்கு" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "முன்னோக்கி சொல்லை நீக்கு" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "தேடு" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "அடுத்ததை தேடு" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "முந்தையதை தேடு" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "மாற்று" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "முகப்பு" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "தொடக்கம்" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "முடிவு" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "முந்தையது" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "அடுத்தது" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "மேலே" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "பின்னே" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "முன்னே" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "மீளேற்று" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "வரியின் தொடக்கம்" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "வரியின் முடிவு" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "வரிக்கு செல்" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "ஒரு சொல் பின்செல்" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "ஒரு சொல் முன்செல்" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "நினைவுக்குறியை சேர்" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "பெரிதாக்கு" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "சிறிதாக்கு" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "முழுத்திரை பயன்முறை" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "பட்டிப் பட்டையை காட்டு" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "அடுத்த கீற்றை செயல்படுத்து" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "முந்தைய கீற்றை செயல்படுத்து" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "உதவி" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "இது என்ன" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "உரையை நிரப்புதல்" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "முந்தைய பொருத்தமான நிறைவு" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "அடுத்த பொருத்தமான நிறைவு" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "துணைச்சரத்தை நிரப்புதல்" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "பட்டியலில் முந்தைய உருப்படி" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "பட்டியலில் அடுத்த உருப்படி" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "சமீபமானவற்றை திற" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "இவ்வாறு சேமி" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "மீட்டமை" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "அச்சின் முன்னோட்டம்" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "அஞ்சலிடு" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "காலியாக்கு" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "உண்மையான அளவில் காட்டு" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "பக்கத்துடன் பொருத்து" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "பக்க அகலத்துடன் பொருத்து" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "பக்க உயரத்துடன் பொருத்து" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "உருப்பெருக்கம்" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "வரிக்கு செல்" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "பக்கத்திற்கு செல்" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "ஆவணத்தில் பின்செல்" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "ஆவணத்தில் முன்செல்" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "நினைவுக்குறிகளை திருத்து" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "எழுத்தாக்கம்" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "கருவிப்பட்டையை காட்டு" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "நிலைப்பட்டையை காட்டு" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "விசைச்சுருக்குவழிகள்" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "செயலியை அமை" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "கருவிப்பட்டைகளை அமை" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "அறிவிப்புகளை அமை" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "பிழையை தெரிவி" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "மொழியை அமை…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "செயலியை பற்றி" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "கே.டீ.யீ. பற்றி" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "நீக்கு" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "மறுபெயரிடு" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "அகற்றிடத்துக்கு நகர்த்து" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "நன்கொடை அளியுங்கள்" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "மறைந்துள்ள கோப்புகளை காட்டு/மறை" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "அடைவை உருவாக்கு" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "பிரதானப் பட்டியைத் திற" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "வலது-க்ளிக் பட்டியை திற" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "பயனரின் விருப்பத்தேர்வு கோப்புகளை புதுப்பிக்கும் கே.டீ.யீ. நிரல்" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "சிறுநிரல்கள் தரும் வெளியீட்டை காட்டு" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"சோதனைக்கு மட்டும்: முடித்தபின் பதிவுகளை எழுதாதே. இவ்வாறு இருந்தால், ஒவ்வொரு முறையும் " +"இந்நிரல் இயக்கப்படும்போது உரிய சிறுநிரல்கள் இயக்கப்படும்." + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "விருப்பத்தேர்வு கோப்பை புதுப்பிக்க வேண்டுமா என்று பார்" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "புதுப்பிப்பதற்கான வழிமுறைகளை எந்த கோப்பு(கள்)-இலிருந்து படிக்க வேண்டும்" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "எந்த அடைவில் கோப்புகளை உருவாக்க வேண்டும் [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "அடைவு" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "நிரலின் உரிமத்தை காட்டு." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "பொதுவான அமைப்புகளுக்கு பதிலாக என்பதை பயன்படுத்து" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"எந்த தொகுப்பில் தேட வேண்டும். அடிப்படை தொகுப்புக்கு \"\" என்பதை " +"பயன்படுத்துங்கள். சார் தொகுப்புகளை சுட்ட இதை பலமுறை பயன்படுத்தலாம்." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "கண்டுபிடிக்க வேண்டிய பதிவு" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "இயல்பிருப்பு மதிப்பு" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "மாறி வகை" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"தொகுப்பின் பெயர் காலியாக இருக்கக்கூடாது. அடிப்படை தொகுப்புக்கு \"\" என்பதை " +"பயன்படுத்துங்கள்" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"மாறியின் வகை. பூலியனுக்கு \"bool\" என்பதை பயன்படுத்த வேண்டும், இல்லையேல் சரமாக " +"கருதப்படும்." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "இது இயக்கப்பட்டால் குறிப்பிட்ட பதிவை நீக்கு" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"எழுத வேண்டிய மதிப்பு. முனையத்தில் பயன்படுத்தும்போது காலியான மதிப்பை இட '' என்பதை " +"பயன்படுத்துங்கள்" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "இன்றைய தகவல்" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "சோதனைகளுக்கு மட்டும்: பயனரின் உண்மையான கோப்புகளை தொடாமல், சோதனைக்கென தனிப்பட்ட " +#~ "அடைவுகளை பயன்படுத்தும்." + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "விருப்பங்களை சேமி" + +#~ msgid "KWriteConfig" +#~ msgstr "கேஎழுதுவடிவமைப்பு" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "கேவடிவமைப்பு உள்ளீடுகளை எழுது - உறையகம் ஸ்கிரிப்ட்டில் பயண்படுத்த. " + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "zhateam" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "tamilpc@ambalam.com" diff --git a/poqm/te/kconfig6_qt.po b/poqm/te/kconfig6_qt.po new file mode 100644 index 0000000..dd5d657 --- /dev/null +++ b/poqm/te/kconfig6_qt.po @@ -0,0 +1,1265 @@ +# translation of kwriteconfig.po to Telugu +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# Krishna Babu K , 2009. +# Sripath Roy Koganti , 2019. +# B.Poojitha , 2019. +# +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2019-03-01 22:44+0530\n" +"Last-Translator: B.Poojitha \n" +"Language-Team: Telugu \n" +"Language: te\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Gtranslator 2.91.7\n" +"Plural-Forms: nplurals=2; plural=(n != 1)\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "దయచేసి మీ సిస్టమ్ నిర్వాహకుడిని సంప్రదించండి." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "ఆకృతీకరణ ఫైలు \"%1\" వ్రాయదగినది కాదు.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "అప్రమేయం" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "వెనక్కి" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "మునుముందుకు" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "నివాసం" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "తెరువు" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "ఇటీవల తెరువు" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "సేవ్" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "ఇలా సేవ్ చేయండి" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "తిరిగి వెళ్లు" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "మూత" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "ముద్రణ" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "ముద్రణా పరిదృశ్యం" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "తపాల" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "త్యజించు" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "అప్లికేషన్ గురించి" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "చేసింది రద్దు" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "నకలు" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "అతికించు" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "మూలం" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "అన్ని ఎంచుకోండి" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "యెంపికను తీసివేయుము" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "కనుగొనండి" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "తదుపరిది కనుగొనండి" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "మునుపటి కనుగొను" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "పునఃస్థాపించుము" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "అసలైన కొలత" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "పేజీకి సరిపడు" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "వెడల్పు సరిపరుచు " + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "పొడవు సరిపరచు " + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "పెద్దదిగా చూపు" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "చిన్నగా చేయుము " + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "జూమ్" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "అన్ని ఎంచుకోండి" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "పైన " + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "పేజీకి వేళ్ళు " + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "వరుస వెళ్లండి" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "పేజీకి వేళ్ళు " + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "వరుస వెళ్లండి" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "పేజీకి సరిపడు" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "వరుస వెళ్లండి" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "పేజీకి వేళ్ళు " + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "వెనక్కి" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "మునుముందుకు" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "బుక్మార్క్ జోడించు" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "బుక్మార్క్లను సవరించండి" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "అక్షరక్రమం" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "జాబితా బార్ను చూపు" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "జాబితా బార్ను చూపు" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "ఉపకరణపట్టీని చూపు" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "ఉపకరణపట్టీని చూపు" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "స్థితి బార్ చూపించు" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "స్థితి బార్ చూపించు" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "పూర్తి స్క్రీన్ విధం" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "టూల్బార్లు ఆకృతీకరించు" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "నోటిఫికేషన్లను ఆకృతీకరించు" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "ఇది ఏమిటి" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "బగ్ను నివేదించు" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "KDE గురించి" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "KDE గురించి" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "తొలగించు" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "పేరుమార్చు" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "చెత్తలో వేయి" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "దానం" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "ఇటీవల తెరువు" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "తెరువు" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "కొత్త" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "మూత" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "సేవ్" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "ముద్రణ" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "త్యజించు" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "చేసింది రద్దు" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "మళ్ళీచేయు" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "కోయు" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "నకలు" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "అతికించు" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "ఎంపికను అతికించండి" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "అన్ని ఎంచుకోండి" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "యెంపికను తీసివేయుము" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "పదం వెనుకకు తొలగించు" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "ముందు పదమును తొలగించుము" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "కనుగొనండి" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "తదుపరిది కనుగొనండి" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "మునుపటి కనుగొను" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "పునఃస్థాపించుము" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "నివాసం" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "ప్రారంభం" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "ముగింపు" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "ముందు" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "తరువాత" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "పైన " + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "వెనక్కి" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "మునుముందుకు" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "తిరిగి ప్రారంభించు " + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "వరుస మొదలు " + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "వరుస ముగింపు" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "వరుస వెళ్లండి" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "వెనుక పదం" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "ముందు పదం " + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "బుక్మార్క్ జోడించు" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "పెద్దదిగా చూపు" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "చిన్నగా చేయుము " + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "పూర్తి స్క్రీన్ విధం" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "జాబితా బార్ను చూపు" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "తదుపరి టాబ్ని సక్రియం చేయండి" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "మునుపటి ట్యాబ్ను సక్రియం చేయండి" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "సహాయం" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "ఇది ఏమిటి" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "పాఠం పూర్తి" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "మునుపటి పూర్తి మ్యాచ్" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "తదుపరి పూర్తి మ్యాచ్" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "ఉపశీర్షిక పూర్తి" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "జాబితాలోని మునుపటి అంశం" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "జాబితాలో తదుపరి అంశం" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "ఇటీవల తెరువు" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "ఇలా సేవ్ చేయండి" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "తిరిగి వెళ్లు" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "ముద్రణా పరిదృశ్యం" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "తపాల" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "మూలం" + +#: gui/kstandardshortcut.cpp:299 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "అసలైన కొలత" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "పేజీకి సరిపడు" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "వెడల్పు సరిపరుచు " + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "పొడవు సరిపరచు " + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "జూమ్" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "వెళ్ళు" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "పేజీకి వేళ్ళు " + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "పత్రం వెనుకకు" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "పత్రం ముందు" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "బుక్మార్క్లను సవరించండి" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "అక్షరక్రమం" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "ఉపకరణపట్టీని చూపు" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "స్థితి బార్ చూపించు" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "కీ బైండింగ్స్" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "అప్లికేషన్ను ఆకృతీకరించు" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "టూల్బార్లు ఆకృతీకరించు" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "నోటిఫికేషన్లను ఆకృతీకరించు" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "బగ్ను నివేదించు" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "అప్లికేషన్ గురించి" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "KDE గురించి" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "తొలగించు" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "పేరుమార్చు" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "చెత్తలో వేయి" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "దానం" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "యూజర్ ఆకృతీకరణ ఫైళ్ళను నవీకరించుటకు KDE సాధనం" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "స్క్రిప్ట్ల నుండి అవుట్పుట్ ఫలితాలను ఉంచండి" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Config file దానికి అప్డేట్ కావాలో లేదో తనిఖీ చేయండి" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "నవీకరణ సూచనలను చదవడానికి ఫైల్ (లు)" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "[.] లో ఫైళ్ళను సృష్టించుటకు మూలవివరం" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "మూలవివరం" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "సాఫ్ట్వేర్ లైసెన్స్ను ప్రదర్శించు." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "ప్రపంచ కాన్ఫిగరేషన్కు బదులుగా ఉపయోగించండి" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgctxt "main|" +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "సమూహ సమూహాల కోసం పదేపదే ఉపయోగించండి." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "శోధించడానికి కీ" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "డిఫాల్ట్ విలువ" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "వేరియబుల్ రకం" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"వేరియబుల్ రకం. ఒక బూలియన్ కోసం \"bool\" ఉపయోగించండి, లేకుంటే అది స్ట్రింగ్గా పరిగణించబడుతుంది" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "వ్రాయడానికి విలువ. తప్పనిసరిగా షెల్ ఉపయోగంలో '' ఖాళీగా ఉంచండి" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "రోజు చిట్కా" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "యూనిట్ పరీక్షల కోసం మాత్రమే: టెస్టిమోనియల్ డైరెక్టరీలు యూజర్ రియల్ ఫైల్స్ నుండి దూరంగా ఉండటానికి " +#~ "ఉపయోగించుకోండి" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "ఎంపికలను సేవ్ చేయు " + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "అప్లికేషన్ భాషని మార్చండి" diff --git a/poqm/tg/kconfig6_qt.po b/poqm/tg/kconfig6_qt.po new file mode 100644 index 0000000..775777d --- /dev/null +++ b/poqm/tg/kconfig6_qt.po @@ -0,0 +1,1291 @@ +# translation of kwriteconfig.po to Tajik +# copyright (c) 2004 +# infoDev, a World Bank organization +# Khujand Computer Technologies, Inc., 2004. +# Victor Ibragimov , 2004, 2019. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2019-09-15 21:24+0500\n" +"Last-Translator: Victor Ibragimov \n" +"Language-Team: English \n" +"Language: tg\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 19.04.3\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Лутфан, бо маъмури низоми худ дар тамос шавед." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Файли танзимии \"%1\" навишташаванда намебошад.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Стандартӣ" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Ба қафо" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Ба пеш" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Асосӣ" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Кушодан" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Кушодани маводи охирин" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Нигоҳ доштан" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Нигоҳ доштан ҳамчун" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Бозгаштан" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Пӯшидан" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "Чоп кардан" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Пешнамоиши чоп" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Почта" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Баромадан" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Дар бораи барнома" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Ботил сохтан" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Нусха бардоштан" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Гузоштан" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Пок кардан" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Ҳамаро интихоб кардан" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Интихобро бекор кардан" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Ёфтан" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Ёфтани навбатӣ" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Ёфтани пешакӣ" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Ҷойгузин кардан" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Андозаи ҳақиқӣ" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Ба саҳифа ғунҷидан" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Ба паҳноӣ ғунҷидан" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Ба баландӣ ғунҷидан" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Бузург кардани андоза" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Хурд кардани андоза" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Интихоби андоза" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Ҳамаро интихоб кардан" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Ба боло" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Гузариш ба саҳифа" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Гузариш ба сатр" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Гузариш ба саҳифа" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Гузариш ба сатр" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Ба саҳифа ғунҷидан" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Гузариш ба сатр" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Гузариш ба саҳифа" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Ба қафо" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Ба пеш" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Илова кардани хатчӯб" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Таҳрир кардани хатчӯб" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Санҷиши имло" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Нишон додани навори феҳрист" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Нишон додани навори феҳрист" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Нишон додани навори абзорҳо" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Нишон додани навори абзорҳо" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Нишон додани навори вазъият" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Нишон додани навори вазъият" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Реҷаи экрани пурра" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Танзимоти навори абзорҳо" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Танзимоти огоҳиномаҳо" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Ин чист" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Гузориш дар бораи хато" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Дар бораи KDE" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Дар бораи KDE" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Нест кардан" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Номро иваз кардан" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Интиқол додан ба сабад" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Дастгирии молӣ" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Кушодани маводи охирин" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Кушодан" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Нав" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Пӯшидан" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Нигоҳ доштан" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Чоп кардан" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Баромадан" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Ботил сохтан" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Дубора анҷом додан" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Буридан" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Нусха бардоштан" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Гузоштан" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Гузоштани интихоб" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Ҳамаро интихоб кардан" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Интихобро бекор кардан" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Нест кардани калима ба ақиб" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Нест кардани калима ба пеш" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Ёфтан" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Ёфтани навбатӣ" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Ёфтани пешакӣ" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Ҷойгузин кардан" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Асосӣ" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Оғоз" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Поён" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Пешакӣ" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Навбатӣ" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Ба боло" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Ба қафо" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Ба пеш" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Боркунии дубора" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Оғози сатр" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Анҷоми сатр" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Гузариш ба сатр" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Калима ба қафо" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Калима ба пеш" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Илова кардани хатчӯб" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Бузург кардани андоза" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Хурд кардани андоза" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Реҷаи экрани пурра" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Нишон додани навори феҳрист" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Фаъол кардани варақаи навбатӣ" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Фаъол кардани варақаи қаблӣ" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Кумак" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Ин чист" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Пуркунии матн" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Мувофиқати пуркунии матни қаблӣ" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Мувофиқати пуркунии матни навбатӣ" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Пуркунии зерсатр" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Маводи қаблӣ дар рӯйхат" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Маводи навбатӣ дар рӯйхат" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Кушодани маводи охирин" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Нигоҳ доштан ҳамчун" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Бозгаштан" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Пешнамоиши чоп" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Почта" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Пок кардан" + +#: gui/kstandardshortcut.cpp:299 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Actual Size" +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Андозаи ҳақиқӣ" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Ба саҳифа ғунҷидан" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Ба паҳноӣ ғунҷидан" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Ба баландӣ ғунҷидан" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Интихоби андоза" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Гузариш ба" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Гузариш ба саҳифа" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Санади қаблӣ" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Санади навбатӣ" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Таҳрир кардани хатчӯб" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Санҷиши имло" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Нишон додани навори абзорҳо" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Нишон додани навори вазъият" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Иртиботи тугмаҳо" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Танзимоти барнома" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Танзимоти навори абзорҳо" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Танзимоти огоҳиномаҳо" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Гузориш дар бораи хато" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Дар бораи барнома" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Дар бораи KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Нест кардан" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Номро иваз кардан" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Интиқол додан ба сабад" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Дастгирии молӣ" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Абзори KDE барои навсозии файлҳои танзимии корбар" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Нигоҳ доштани натиҷаҳои барориши нақшҳо (скриптҳо)" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Ниёзи навсозӣ намудани худи файли танзимиро санҷед" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Файл(ҳо)е ки дастурамали навсозӣ аз он(ҳо) иҷро мешаванд" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Ҷузвадон барои эҷодкунии файлҳо дар [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "ҷузвадон" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Намоиш додани иҷозатномаи нармафзор." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Ба ҷои танзими умум аз истифода баред" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgctxt "main|" +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Гурӯҳбандӣ барои ҷустуҷӯ. Барои гурӯҳҳои доимӣ такроран истифода баред." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Калид барои ҷустуҷӯ" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Қимати стандартӣ" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Навъи тағйиpёбанда" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Навъи тағйиpёбанда. Барои воҳиди матниқӣ \"мантиқ\"-ро истифода баред, дар " +"дигар ҳолат он ҳамчун сатр маънидод карда мешавад" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Қимат барои навиштан. Ҳатман, дар ҷилд аз '' барои ҷои холӣ истифода баред" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Маслиҳати рӯз" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Танҳо барои санҷишҳои воҳидӣ: барои гузаронидани санҷишҳо дур аз файлҳои " +#~ "ҳақиқии корбар аз ҷузвадонҳои санҷишӣ истифода баред" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Имконоти нигоҳдорӣ" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Иваз кардани забони барнома" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "KConfig - барои истифода дар ҷилди дастнависҳо" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Дар асоси kreadconfig навишта шуд" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "Абророва Хиромон" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "H_Abrorova@rambler.ru" diff --git a/poqm/th/kconfig6_qt.po b/poqm/th/kconfig6_qt.po new file mode 100644 index 0000000..2af530c --- /dev/null +++ b/poqm/th/kconfig6_qt.po @@ -0,0 +1,1088 @@ +# translation of kwriteconfig.po to Thai +# Copyright (C) 2003, 2007 Free Software Foundation, Inc. +# +# Thanomsub Noppaburana , 2003. +# Sahachart Anukulkitch , 2007. +# Thanomsub Noppaburana , 2008. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2008-07-17 16:28+0700\n" +"Last-Translator: Thanomsub Noppaburana \n" +"Language-Team: Thai \n" +"Language: th\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 0.2\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "กลุ่มที่จะค้นหา" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "กลุ่มที่จะค้นหา" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "กลุ่มที่จะค้นหา" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "กลุ่มที่จะค้นหา" + +#: gui/kstandardshortcut.cpp:181 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "กลุ่มที่จะค้นหา" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "ใช้ <แฟ้ม> แทนค่าปรับแต่งทั่วไป" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "กลุ่มที่จะค้นหาภายใน โดยปรับใช้กับกลุ่มย่อยภายในมันด้วย" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "คำสำหรับค้นหา" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "ชนิดของตัวแปร ใช้ \"bool\" สำหรับตัวแปรตรรกะ มิฉะนั้น ตัวแปรนั้นจะถูกตีค่าเป็น สตริง" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "ค่าที่จะเขียน จำเป็นต้องใส่ หากเป็นค่าว่างจะใช้ ''" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "เขียนส่วน KConfig - สำหรับใช้ในสคริปต์ของเชลล์" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "เขียน kreadconfig ซึ่งเป็นฐานสำหรับโปรแกรมนี้" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/tr/kconfig6_qt.po b/poqm/tr/kconfig6_qt.po new file mode 100644 index 0000000..59e7906 --- /dev/null +++ b/poqm/tr/kconfig6_qt.po @@ -0,0 +1,1099 @@ +# translation of kwriteconfig.po to +# translation of kwriteconfig.po to Turkish +# Copyright (C) 2003, 2008 Free Software Foundation, Inc. +# +# Görkem Çetin , 2003. +# Serdar Soytetir , 2008. +# Volkan Gezer , 2014, 2017. +# Kaan Ozdincer , 2014. +# SPDX-FileCopyrightText: 2022, 2023, 2024 Emir SARI +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-10-25 19:04+0300\n" +"Last-Translator: Emir SARI \n" +"Language-Team: Turkish \n" +"Language: tr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Generator: Lokalize 24.08.2\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Lütfen sistem yöneticinize başvurun." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Yapılandırma dosyası “%1” yazılabilir değil.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Öntanımlı" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Geri" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "İ&leri" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Ana Sayfa" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "&Yeni" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Yeni belge oluştur" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Aç…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Var olan bir belgeyi aç" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "&Son Kullanılanı Aç" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Yakın zamanda açılan bir belgeyi aç" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Kaydet" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Belgeyi kaydet" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "&Farklı Kaydet…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Belgeyi yeni bir adla kaydet" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "G&eriye Al" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Belgeye yapılan kaydedilmemiş değişiklikleri geri al" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "&Kapat" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Belgeyi kapat" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Yazdır…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Belgeyi yazdır" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Yazdırma &Önizlemesi" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Belgenin yazdırma önizlemesini göster" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Postala…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Belgeyi posta ile gönder" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Çı&k" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Uygulamadan çık" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Geri Al" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Son eylemi geri al" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "&Yinele" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Son geri alınan eylemi yinele" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "&Kes" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Seçimi panoya kes" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "K&opyala" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Seçimi panoya kopyala" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Ya&pıştır" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Pano içeriğini yapıştır" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Te&mizle" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "&Tümünü Seç" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Seçimi Ka&ldır" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Bul…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "&Sonrakini Bul" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Ö&ncekini Bul" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "&Değiştir…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "&Gerçek Boyuta Yakınlaştır" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Belgeyi gerçek boyutunda görüntüle" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Sayfaya &Sığdır" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Sayfayı pencereye sığdıracak biçimde yakınlaştır" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Sayfa &Genişliğine Sığdır" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Penceredeki sayfa genişliğine sığdıracak biçimde yakınlaştır" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Sayfa &Yüksekliğine Sığdır" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Penceredeki sayfa yüksekliğine sığdıracak biçimde yakınlaştır" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "&Yakınlaştır" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "&Uzaklaştır" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Yakınlaştır…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Yakınlaştırma düzeyini seç" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Yenile" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Belgeyi yenile" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Y&ukarı" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Yukarı git" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "Ö&nceki Sayfa" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Önceki sayfaya git" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Sonraki Sayfa" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Sonraki sayfaya git" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "G&it…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Sayfaya G&it…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Satıra G&it…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "İ&lk Sayfa" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "İlk sayfaya git" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "So&n Sayfa" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Son sayfaya git" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Geri" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Belgede geri git" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "İ&leri" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Belgede ileri git" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Yer İmi &Koy" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Yer İmlerini Dü&zenle…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Yazım &Denetimi…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Belgedeki yazımı denetle" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "&Menü Çubuğunu Göster" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Menü çubuğunu göster veya gizle" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "&Araç Çubuğunu Göster" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Araç çubuğunu göster veya gizle" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "&Durum Çubuğunu Göster" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Durum çubuğunu göster veya gizle" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Ta&m Ekran Kipi" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "&Klavye Kısayollarını Yapılandır…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "%1 Uygulamasını &Yapılandır…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "&Araç Çubuklarını Yapılandır…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "&Bildirimleri Yapılandır…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1 &El Kitabı" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "&Bu Nedir?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Hata Bildir…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "&Dili Yapılandır…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "%1 &Hakkında" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "&KDE Hakkında" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "&Sil" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Yeniden &Adlandır…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Çöp Kutusuna &Taşı" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "&Bağış Yap" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "&Menüyü Aç" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Aç" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Yeni" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Kapat" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Kaydet" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Yazdır" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Çık" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Geri Al" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Yinele" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Kes" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Kopyala" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Yapıştır" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Seçimi Yapıştır" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Tümünü Seç" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Seçimi Kaldır" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Geriye Doğru Sözcük Sil" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "İleriye Doğru Sözcük Sil" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Bul" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Sonrakini Bul" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Öncekini Bul" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Değiştir" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Ana Sayfa" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Başlangıç" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Son" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Önceki" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Sonraki" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Yukarı" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Geri" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "İleri" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Yeniden Yükle" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Satır Başı" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Satır Sonu" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Satıra Git" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Önceki Sözcük" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Sonraki Sözcük" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Yer İmi Koy" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Yakınlaştır" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Uzaklaştır" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Tam Ekran Kipi" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Menü Çubuğunu Göster" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Sonraki Sekmeyi Etkinleştir" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Önceki Sekmeyi Etkinleştir" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Yardım" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Bu Nedir" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Metin Tamamlama" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Önceki Tamamlama Eşleşmesi" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Sonraki Tamamlama Eşleşmesi" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Alt İfade Tamamlama" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Listedeki Önceki Öge" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Listedeki Sonraki Öge" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Son Kullanılanı Aç" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Farklı Kaydet" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Geriye Al" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Yazdırma Önizlemesi" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Posta" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Temizle" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Gerçek Boyuta Yakınlaştır" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Sayfaya Sığdır" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Genişliğe Sığdır" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Yüksekliğe Sığdır" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Yakınlaştır" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Git" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Sayfaya Git" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Belge Geri" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Belge İleri" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Yer İmlerini Düzenle" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Yazım Denetimi" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Araç Çubuğunu Göster" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Durum Çubuğunu Göster" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Düğme Bağıntıları" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Uygulamayı Yapılandır" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Araç Çubuklarını Yapılandır" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Bildirimleri Yapılandır" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Hata Bildir" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Dili Yapılandır…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Uygulama Hakkında" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "KDE Hakkında" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Sil" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Yeniden Adlandır" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Çöp Kutusuna Taşı" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Bağış Yap" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Gizli Dosyaları Göster/Gizle" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Klasör Oluştur" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Ana Menüyü Aç" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Bağlam Menüsünü Aç" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Kullanıcı yapılandırma dosyalarını güncellemek için KDE aracı." + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Betiklerin çıktılarını sakla" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Yalnızca birim sınamaları için: Bitmiş girdileri yazma; böylelikle her " +"yeniden çalıştırmada betikler yeniden yürütülür" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Yapılandırma dosyasının güncelleme gerektirip gerektirmediğini denetle" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Güncelleme bilgilerinin okunacağı dosya" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Dosyaların oluşturulacağı dizin [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "dizin" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Yazılım lisansını görüntüleyin." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Genel yapılandırma yerine kullanın." + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"İçine bakılacak grup. Kök grup veya iç içe geçmiş gruplar için yineleyerek " +"“” kullanın." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Aranacak anahtar" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Öntanımlı değer" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Değişken türü" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "Grup adı boş olamaz; kök grup için “” kullanın" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Değişkenin türü. Mantıksal değişkenler için “bool” kullanın, aksi halde " +"metin olarak ele alınır" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Etkinleştirilmişse ilgili anahtarı sil" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Yazdırılacak değer. Zorunlu, boş değer için kabukta '' kullanın" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Günün İpucu" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Yalnızca birim sınamaları için: Sınama dizinlerini kullanıcının gerçek " +#~ "dosyalarından ayrı tut" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Seçenekleri Kaydet" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Uygulama Dilini Değiştir" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Tercihler" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "KConfig girdilerini yaz (kabuk programlarında kullanmak için)" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Kreadconfig bu temel alınarak yazıldı" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/ug/kconfig6_qt.po b/poqm/ug/kconfig6_qt.po new file mode 100644 index 0000000..6529d45 --- /dev/null +++ b/poqm/ug/kconfig6_qt.po @@ -0,0 +1,1079 @@ +# Uyghur translation for kwriteconfig. +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# Sahran , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2013-09-08 07:05+0900\n" +"Last-Translator: Gheyret Kenji \n" +"Language-Team: Uyghur Computer Science Association \n" +"Language: ug\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "ئومۇمىي سەپلىمە ئورنىغا <ھۆججەت> نى ئىشلەت" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"كۆرمەكچى بولغان گۇرۇپپا. قەۋەتلەنگەن گۇرۇپپىلارغا قايتا-قايتا ئىشلىتىڭ." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "ئىزدەيدىغان ئاچقۇچلۇق سۆز" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"ئۆزگەرگۈچى تىپى. \"bool\" نى بۇلېئان قىممىتى قىلىپ ئىشلىتىدۇ ئۇنداق بولمىسا " +"ھەرپ تىزىقى سۈپىتىدە ئىشلىتىدۇ." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "يازىدىغان قىممەت. shell دا بوشلۇقنى چوقۇم ئىشلىتىدۇ" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "KConfig تۈرلىرىنى يازىدۇ - shell قوليازما ئۈچۈن" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "(c) 2001 Red Hat، Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "بۇ پروگراممىنىڭ ئاساسىي kreadconfig نى يازغان" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/uk/kconfig6_qt.po b/poqm/uk/kconfig6_qt.po new file mode 100644 index 0000000..595babd --- /dev/null +++ b/poqm/uk/kconfig6_qt.po @@ -0,0 +1,1082 @@ +# Translation of kconfig5_qt.po to Ukrainian +# Copyright (C) 2018-2020 This_file_is_part_of_KDE +# This file is distributed under the license LGPL version 2.1 or +# version 3 or later versions approved by the membership of KDE e.V. +# +# Yuri Chornoivan , 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024. +msgid "" +msgstr "" +"Project-Id-Version: kconfig5_qt\n" +"PO-Revision-Date: 2024-05-22 09:06+0300\n" +"Last-Translator: Yuri Chornoivan \n" +"Language-Team: Ukrainian\n" +"Language: uk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Qt-Contexts: true\n" +"X-Qt-Contexts: true\n" +"Plural-Forms: nplurals=4; plural=n==1 ? 3 : n%10==1 && n%100!=11 ? 0 : n" +"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"X-Generator: Lokalize 23.04.3\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Будь ласка, зверніться до системного адміністратора." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Запис до файла налаштувань «%1» неможливий.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Типові значення" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "&Назад" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "&Вперед" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "&Домівка" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "С&творити" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "Створити новий документ" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "&Відкрити…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "Відкрити наявний документ" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Відкрити &недавні" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "Відкрити документ, який вже було нещодавно відкрито" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "&Зберегти" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "Зберегти документ" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Зберегти &як…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "Зберегти документ під іншою назвою" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "&Відновити" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "Скасувати незбережені зміни у документі" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "За&крити" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "Закрити документ" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "&Надрукувати…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "Надрукувати документ" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Перегляд др&уку" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "Показати попередній перегляд результатів друку документа" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "&Надіслати листа…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "Надіслати документ електронною поштою" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Ви&йти" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Вийти з програми" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "&Вернути" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "Скасувати останню дію" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "П&овторити" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "Повернути результат останньої скасованої дії" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "Виріза&ти" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "Вирізати позначені об’єкти до буфера обміну даними" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "&Копіювати" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "Копіювати позначений фрагмент до буфера обміну даними" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "&Вставити" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "Вставити вміст буфера обміну даними" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "О&чистити" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Позна&чити все" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Скасувати ви&бір" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "&Знайти…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Знайти &далі" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Знайти &позаду" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "З&амінити…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "&Фактичний розмір" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "Переглянути документ з використанням його справжніх розмірів" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "&Влаштувати в сторінку" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "Змінити масштаб, щоб розмістити сторінку цілком" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Влаштувати в &ширину сторінки" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "Змінити масштаб, щоб розмістити всю ширину сторінки документа" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Влаштувати в &висоту сторінки" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "Змінити масштаб, щоб розмістити всю висоту сторінки документа" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "З&більшити" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "З&меншити" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "&Масштабувати…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Вибрати масштаб" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "&Оновити" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "Оновити документ" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "&Вгору" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "Перейти вище" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "&Попередня" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "Перейти до попередньої сторінки" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "&Наступна" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Перейти до наступної сторінки" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "П&ерейти…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "П&ерейти до сторінки…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Пе&рейти до рядка…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Пе&рша" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Перейти до першої сторінки" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "&Остання" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "Перейти до останньої сторінки" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "&Назад" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "Перейти назад документом" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "&Вперед" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "Перейти вперед документом" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "&Додати закладку" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "&Редагувати закладки…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Пр&авопис…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "Перевірити правопис у документі" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Показати смужку &меню" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Показати або приховати смужку меню" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Показати панель &інструментів" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Показати або приховати панель інструментів" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Пок&азувати смужку стану" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Показати або приховати смужку стану" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Повноекранний &режим" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "Налаштовування &клавіатурних скорочень…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "&Налаштувати %1…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Налаштувати п&анелі…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Налаштувати спові&щення…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "П&ідручник з %1" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "&Що це?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "&Повідомити про ваду…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Нала&штувати мову…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "&Про %1" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "П&ро KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Ви&лучити" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Пере&йменувати…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "&Пересунути до смітника" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Підтримати &фінансово" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Відкрити &меню" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Відкрити" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Створити" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Закрити" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Зберегти" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "Надрукувати" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Вийти" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Вернути" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Повторити" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Вирізати" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Скопіювати" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Вставити" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Вставити позначене" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Позначити все" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Скасувати позначення" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Вилучити слово позаду" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Вилучити слово попереду" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Пошук" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Знайти далі" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Знайти позаду" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Замінити" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Домівка" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Початок" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Кінець" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Назад" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Далі" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Вгору" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Назад" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Вперед" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Перезавантажити" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Початок рядка" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Кінець рядка" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Перейти до рядка" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Слово назад" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Слово вперед" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Додати закладку" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Збільшити" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Зменшити" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Повноекранний режим" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Показувати смужку меню" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Активувати наступну вкладку" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Активувати попередню вкладку" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Довідка" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Що це?" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Завершення тексту" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Попередній варіант завершення" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Наступний варіант завершення" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Завершення підрядка" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Попередній елемент у списку" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Наступний елемент у списку" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Відкрити недавні" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Зберегти як" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Відновити" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Перегляд друку" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Надіслати листа" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Спорожнити" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Масштабувати до фактичного розміру" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Влаштувати в сторінку" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Влаштувати за шириною" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Влаштувати за висотою" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Масштабувати" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Перейти" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Перейти до сторінки" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Назад документом" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Вперед документом" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Редагувати закладки" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Перевірка правопису" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Показати панель інструментів" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Показати смужку стану" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Прив'язка до клавіш" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Налаштувати програму" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Налаштувати панелі" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Налаштувати сповіщення" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Надіслати звіт про помилку" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Налаштувати мову…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Про програму" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Про KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Вилучити" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Перейменувати" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Пересунути до смітника" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Допомогти фінансово" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Показати/Приховати приховані файли" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Створити теку" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "Відкрити головне меню" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "Відкрити контекстне меню" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Засіб KDE для оновлення файлів налаштування користувача" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Залишати результати виводу з скриптів" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"Лише для тестування модулів: не записувати виконані записи, щоб із кожним " +"повторним запуском скрипти виконувалися знову" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Перевірити, чи потребує поновлення сам файл налаштування" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "Файли, з яких слід зчитувати інструкції щодо оновлення" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Каталог, у якому слід створити файли [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "каталог" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Показати дані щодо ліцензування програмного забезпечення." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Використовувати замість загального файла налаштувань" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Група, у якій слід вести пошук. Скористайтеся «» для кореневої " +"групи або використовуйте ітеративно для вкладених груп." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Ключ, який слід шукати" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Типове значення" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Тип змінної" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" +"Назва групи не може бути порожньою. Скористайтеся «» для створення " +"кореневої групи" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Тип змінної. Для логічної змінної скористайтеся типом «bool», інакше змінна " +"вважається рядком." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Вилучити визначений ключ, якщо увімкнено" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Значення для запису. Обов'язкове, для порожнього значення в оболонці " +"скористайтеся ''." + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Порада дня" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Лише для тестування модулів: використовувати тестові каталоги, щоб не " +#~ "чіпати файлів користувача" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Зберегти параметри" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "Перемкнути мову програми" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Preferences" +#~ msgstr "Параметри" diff --git a/poqm/uz/kconfig6_qt.po b/poqm/uz/kconfig6_qt.po new file mode 100644 index 0000000..617cb28 --- /dev/null +++ b/poqm/uz/kconfig6_qt.po @@ -0,0 +1,1057 @@ +# translation of kwriteconfig.po to Uzbek +# Copyright (C) 2003 Free Software Foundation, Inc. +# Mashrab Kuvatov , 2003. +# +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2003-12-07 22:02+0000\n" +"Last-Translator: Mashrab Kuvatov \n" +"Language-Team: Uzbek \n" +"Language: uz\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.0.2\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "Mashrab Quvatov" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "kmashrab@uni-bremen.de" diff --git a/poqm/uz@cyrillic/kconfig6_qt.po b/poqm/uz@cyrillic/kconfig6_qt.po new file mode 100644 index 0000000..f601fbd --- /dev/null +++ b/poqm/uz@cyrillic/kconfig6_qt.po @@ -0,0 +1,1057 @@ +# translation of kwriteconfig.po to Uzbek +# Copyright (C) 2003 Free Software Foundation, Inc. +# Mashrab Kuvatov , 2003. +# +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2003-12-07 22:02+0000\n" +"Last-Translator: Mashrab Kuvatov \n" +"Language-Team: Uzbek \n" +"Language: uz@cyrillic\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.0.2\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "Машраб Қуватов" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "kmashrab@uni-bremen.de" diff --git a/poqm/vi/kconfig6_qt.po b/poqm/vi/kconfig6_qt.po new file mode 100644 index 0000000..d515a19 --- /dev/null +++ b/poqm/vi/kconfig6_qt.po @@ -0,0 +1,1264 @@ +# Vietnamese translation for kwriteconfig. +# Copyright © 2006 Free Software Foundation, Inc. +# +# Phan VÄ©nh Thịnh , 2006. +# Lê Hoàng Phương , 2012. +# Phu Hung Nguyen , 2020, 2021, 2022. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2022-05-31 10:57+0200\n" +"Last-Translator: Phu Hung Nguyen \n" +"Language-Team: Vietnamese \n" +"Language: vi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 21.12.2\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "Vui lòng liên hệ với quản trị viên hệ thống cá»§a bạn." + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "Tệp cấu hình \"%1\" không ghi được.\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Mặc định" + +#: gui/kstandardactions.cpp:49 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "go back|" +msgid "&Back" +msgstr "Lùi" + +#: gui/kstandardactions.cpp:56 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "go forward|" +msgid "&Forward" +msgstr "Tiến" + +#: gui/kstandardactions.cpp:63 +#, fuzzy +#| msgctxt "KStandardShortcut|@action Go to main page" +#| msgid "Home" +msgctxt "home page|" +msgid "&Home" +msgstr "Nhà" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open" +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "Mở" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "Mở gần đây" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save" +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "Lưu" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Save As" +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "Lưu thành" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Revert" +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "Hoàn nguyên" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Close" +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "Đóng" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print" +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "In" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Print Preview" +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "Xem thá»­ bản in" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Mail" +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "Thư" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Quit" +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "Thoát" + +#: gui/kstandardactions_p.h:77 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About Application" +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "Về ứng dụng" + +#: gui/kstandardactions_p.h:79 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Undo" +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "Đảo ngược" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Copy" +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "Chép" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Paste" +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "Dán" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Clear" +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "Làm trống" + +#: gui/kstandardactions_p.h:85 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "Chọn tất cả" + +#: gui/kstandardactions_p.h:86 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Deselect" +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "Bỏ chọn" + +#: gui/kstandardactions_p.h:87 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find" +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "Tìm" + +#: gui/kstandardactions_p.h:88 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Next" +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "Tìm về sau" + +#: gui/kstandardactions_p.h:89 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Find Prev" +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "Tìm về trước" + +#: gui/kstandardactions_p.h:90 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Replace" +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "Thay thế" + +#: gui/kstandardactions_p.h:92 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom to Actual Size" +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "Thu phóng về kích cỡ thật" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "Vừa trang" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Width" +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "Vừa bề rộng" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Height" +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "Vừa bề cao" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom In" +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "Phóng to" + +#: gui/kstandardactions_p.h:97 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom Out" +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "Thu nhỏ" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Zoom" +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "Thu phóng" + +#: gui/kstandardactions_p.h:98 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Select All" +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "Chọn tất cả" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Up" +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "Lên" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "Đi đến trang" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Đi đến dòng" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "Đi đến trang" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Đi đến dòng" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Fit To Page" +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "Vừa trang" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Go to Line" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Đi đến dòng" + +#: gui/kstandardactions_p.h:112 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Goto Page" +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "Đi đến trang" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Back" +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "Lùi" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Forward" +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "Tiến" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Add Bookmark" +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "Thêm dấu nhớ" + +#: gui/kstandardactions_p.h:117 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Edit Bookmarks" +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "Sá»­a dấu nhớ" + +#: gui/kstandardactions_p.h:119 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Spelling" +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "Đánh vần" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "Hiện thanh trình đơn" + +#: gui/kstandardactions_p.h:121 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Menu Bar" +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "Hiện thanh trình đơn" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "Hiện thanh công cụ" + +#: gui/kstandardactions_p.h:122 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Toolbar" +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "Hiện thanh công cụ" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "Hiện thanh trạng thái" + +#: gui/kstandardactions_p.h:123 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Show Statusbar" +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "Hiện thanh trạng thái" + +#: gui/kstandardactions_p.h:124 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Full Screen Mode" +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "Chế độ toàn màn hình" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "Cấu hình ngôn ngữ..." + +#: gui/kstandardactions_p.h:127 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Toolbars" +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "Cấu hình thanh công cụ" + +#: gui/kstandardactions_p.h:128 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Notifications" +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "Cấu hình thông báo" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "What's This" +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "Đây là cái gì" + +#: gui/kstandardactions_p.h:134 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Report Bug" +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "Báo lỗi" + +#: gui/kstandardactions_p.h:135 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "Cấu hình ngôn ngữ..." + +#: gui/kstandardactions_p.h:136 +#, fuzzy, qt-format +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "Về KDE" + +#: gui/kstandardactions_p.h:137 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "About KDE" +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "Về KDE" + +#: gui/kstandardactions_p.h:138 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Delete" +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "Xoá" + +#: gui/kstandardactions_p.h:139 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Rename" +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "Đổi tên" + +#: gui/kstandardactions_p.h:140 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Move to Trash" +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "Chuyển vào thùng rác" + +#: gui/kstandardactions_p.h:141 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Donate" +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "Quyên góp" + +#: gui/kstandardactions_p.h:142 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Open Recent" +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "Mở gần đây" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "Mở" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "Tạo" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "Đóng" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "Lưu" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "In" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "Thoát" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "Đảo ngược" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "Làm lại" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "Cắt" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "Chép" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "Dán" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "Dán phần chọn" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "Chọn tất cả" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "Bỏ chọn" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "Xoá từ lùi" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "Xoá từ tiến" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "Tìm" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "Tìm về sau" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "Tìm về trước" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "Thay thế" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "Nhà" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "Đầu" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "Cuối" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "Trước" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "Sau" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "Lên" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "Lùi" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "Tiến" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "Tải lại" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "Đầu dòng" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Cuối dòng" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Đi đến dòng" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "Lùi từng từ" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "Tiến từng từ" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "Thêm dấu nhớ" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "Phóng to" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "Thu nhỏ" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "Chế độ toàn màn hình" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "Hiện thanh trình đơn" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "Kích hoạt thẻ sau" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "Kích hoạt thẻ trước" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "Trợ giúp" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "Đây là cái gì" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "Hoàn tất văn bản" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "Phần khớp hoàn tất trước" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "Phần khớp hoàn tất sau" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "Hoàn tất chuỗi con" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "Mục trước trong danh sách" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "Mục sau trong danh sách" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "Mở gần đây" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "Lưu thành" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "Hoàn nguyên" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "Xem thá»­ bản in" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "Thư" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "Làm trống" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "Thu phóng về kích cỡ thật" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "Vừa trang" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "Vừa bề rộng" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "Vừa bề cao" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "Thu phóng" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "Đi đến" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "Đi đến trang" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "Tài liệu trước" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "Tài liệu sau" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "Sá»­a dấu nhớ" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "Đánh vần" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "Hiện thanh công cụ" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "Hiện thanh trạng thái" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "Kết buộc phím" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "Cấu hình ứng dụng" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "Cấu hình thanh công cụ" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "Cấu hình thông báo" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "Báo lỗi" + +#: gui/kstandardshortcut.cpp:373 +#, fuzzy +#| msgctxt "KStandardShortcut|@action" +#| msgid "Configure Language..." +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "Cấu hình ngôn ngữ..." + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "Về ứng dụng" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "Về KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "Xoá" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "Đổi tên" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "Chuyển vào thùng rác" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "Quyên góp" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "Hiện/ẩn tệp ẩn" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "Tạo thư mục" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "Công cụ KDE để cập nhật các tệp cấu hình cá»§a người dùng" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "Giữ lại các kết quả đầu ra từ các kịch bản" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "Kiểm tra liệu chính tệp cấu hình có cần cập nhật không" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "(Các) tệp để từ đó đọc ra hướng dẫn cập nhật" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "Thư mục để tạo tệp ở trong [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "thư mục" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "Hiển thị giấy phép phần mềm." + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Dùng thay cho cấu hình toàn cục" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Tìm trong nhóm nào. Dùng \"\" cho nhóm gốc, hoặc dùng lặp lại để " +"được các nhóm lồng nhau." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "Khoá cần tìm" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "Giá trị mặc định" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "Kiểu biến" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "Tên nhóm không được trống, dùng \"\" cho nhóm gốc" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Kiểu biến. Dùng \"bool\" cho một biến luận lí, ngược lại nó sẽ được coi là " +"một chuỗi." + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "Nếu bật, xoá khoá được chỉ định" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "Giá trị để ghi. Bắt buộc, trên một hệ vỏ dùng '' cho giá trị rỗng" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "Mẹo cá»§a ngày" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "" +#~ "Chỉ dành cho kiểm thá»­ đơn vị: dùng các thư mục kiểm thá»­ để không động đến " +#~ "các tệp thá»±c tế cá»§a người dùng" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "Lưu các lá»±a chọn" diff --git a/poqm/wa/kconfig6_qt.po b/poqm/wa/kconfig6_qt.po new file mode 100644 index 0000000..6ae6e85 --- /dev/null +++ b/poqm/wa/kconfig6_qt.po @@ -0,0 +1,1092 @@ +# translation of kwriteconfig.po to Walloon +# Ratournaedje e walon des messaedjes di KDE. +# +# Pablo Saratxaga , 2004, 2007. +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2009-12-17 21:56+0100\n" +"Last-Translator: Jean Cayron \n" +"Language-Team: Walloon \n" +"Language: wa\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.0.2\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Groupe a cweri dvins" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Groupe a cweri dvins" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Groupe a cweri dvins" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Groupe a cweri dvins" + +#: gui/kstandardshortcut.cpp:181 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Groupe a cweri dvins" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +#, fuzzy +#| msgid "Use instead of global config" +msgctxt "main|" +msgid "Use instead of global config" +msgstr "Eployî purade ki l' apontiaedje globÃ¥" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +#, fuzzy +#| msgid "Group to look in. Use repeatedly for nested groups." +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" +"Groupe k' on rwaite divins. L' eployî sacwants côpd po les groupes metous n-" +"onk dins l' ôte." + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Clé a cweri après" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +#, fuzzy +#| msgid "" +#| "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as " +#| "a string" +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" +"Sôre di variÃ¥ve. Eployîz «bool» po on bouleyin, ôtrumint c' est consideré " +"come ene tchinne di tecse" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +#, fuzzy +#| msgid "The value to write. Mandatory, on a shell use '' for empty" +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" +"Li valixhance a scrire. Obligatwere, so ene roye di cmande eployîz " +"« '' » (deus croles ki s' shuvèt) po ene tchinne vude" + +#~ msgid "KWriteConfig" +#~ msgstr "KWriteConfig" + +#~ msgid "Write KConfig entries - for use in shell scripts" +#~ msgstr "Sicrire des intrêyes KConfig - po-z eployî dins des scripes shell" + +#~ msgid "(c) 2001 Red Hat, Inc. & Luís Pedro Coelho" +#~ msgstr "© 2001 Red Hat, Inc. & Luís Pedro Coelho" + +#~ msgid "Wrote kreadconfig on which this is based" +#~ msgstr "Sicrijha kreadconfig ki c' est l'bÃ¥ze di ç' programe ci" + +#~ msgid "Luís Pedro Coelho" +#~ msgstr "Luís Pedro Coelho" + +#~ msgid "Bernhard Rosenkraenzer" +#~ msgstr "Bernhard Rosenkraenzer" diff --git a/poqm/xh/kconfig6_qt.po b/poqm/xh/kconfig6_qt.po new file mode 100644 index 0000000..868ffee --- /dev/null +++ b/poqm/xh/kconfig6_qt.po @@ -0,0 +1,1082 @@ +# translation of kreadconfig.po to Xhosa +# K Desktop Environment - kreadconfig +# Copyright (C) 2001 translate.org.za +# Antoinette Dekeni , 2001. +# Lwandle Mgidlana , 2002 +# +msgid "" +msgstr "" +"Project-Id-Version: kreadconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2002-10-26 10:38SAST\n" +"Last-Translator: Lwandle Mgidlana \n" +"Language-Team: Xhosa \n" +"Language: xh\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.0beta2\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +#, fuzzy +#| msgid "Default value" +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "Ixabiso lendalo" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "" + +#: gui/kstandardactions_p.h:107 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "Iqela emakujongwe kulo" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "" + +#: gui/kstandardactions_p.h:110 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "Iqela emakujongwe kulo" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "" + +#: gui/kstandardactions_p.h:111 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "Iqela emakujongwe kulo" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "" + +#: gui/kstandardshortcut.cpp:175 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "Iqela emakujongwe kulo" + +#: gui/kstandardshortcut.cpp:181 +#, fuzzy +#| msgid "Group to look in" +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "Iqela emakujongwe kulo" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +#, fuzzy +#| msgid "Key to look for" +msgctxt "main|" +msgid "Key to look for" +msgstr "Isitshixo emasikhangelwe" + +#: kreadconfig/kreadconfig.cpp:53 +#, fuzzy +#| msgid "Default value" +msgctxt "main|" +msgid "Default value" +msgstr "Ixabiso lendalo" + +#: kreadconfig/kreadconfig.cpp:54 +#, fuzzy +#| msgid "Type of variable" +msgctxt "main|" +msgid "Type of variable" +msgstr "Udidi lomahluko" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "" + +#~ msgid "KReadConfig" +#~ msgstr "KReadConfig" + +#, fuzzy +#~ msgid "Read KConfig entries - for use in shell scripts" +#~ msgstr "" +#~ "Funda KGlobal::config() amangeno - okusetyenziswa kwizishicilelo zeqokobhe" + +#~ msgctxt "NAME OF TRANSLATORS" +#~ msgid "Your names" +#~ msgstr "Lwandle Mgidlana" + +#~ msgctxt "EMAIL OF TRANSLATORS" +#~ msgid "Your emails" +#~ msgstr "lwandle@translate.org.za" diff --git a/poqm/zh_CN/kconfig6_qt.po b/poqm/zh_CN/kconfig6_qt.po new file mode 100644 index 0000000..a64651a --- /dev/null +++ b/poqm/zh_CN/kconfig6_qt.po @@ -0,0 +1,1044 @@ +msgid "" +msgstr "" +"Project-Id-Version: kdeorg\n" +"PO-Revision-Date: 2024-04-22 15:58\n" +"Language-Team: Chinese Simplified\n" +"Language: zh_CN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Qt-Contexts: true\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Crowdin-Project: kdeorg\n" +"X-Crowdin-Project-ID: 269464\n" +"X-Crowdin-Language: zh-CN\n" +"X-Crowdin-File: /kf6-trunk/messages/kconfig/kconfig6_qt.pot\n" +"X-Crowdin-File-ID: 43047\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "请联系您的系统管理员。" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "配置文件“%1”不可写入。\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "默认" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "后退(&B)" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "前进(&F)" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "主页(&H)" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "新建(&N)" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "创建新文档" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "打开(&O)…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "打开已有文档" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "打开最近(&R)" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "打开最近使用过的文档" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "保存(&S)" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "保存文档" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "另存为(&A)…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "用新文件名保存文档" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "还原(&V)" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "还原文档中未保存的更改" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "关闭(&C)" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "关闭文档" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "打印(&P)…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "打印文档" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "打印预览(&W)" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "显示文档的打印预览" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "电子邮件(&M)…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "通过电子邮件发送文档" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "退出(&Q)" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "退出应用程序" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "撤销(&U)" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "撤销上一步操作" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "重做(&D)" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "重做上一次撤销的操作" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "剪切(&T)" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "剪切所选内容到剪贴板" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "复制(&C)" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "复制所选内容到剪贴板" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "粘贴(&P)" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "粘贴剪贴板内容" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "清除(&l)" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "全部选择(&A)" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "取消选择(&L)" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "查找(&F)…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "查找下一个(&N)" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "查找上一个(&V)" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "替换(&R)…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "缩放为实际大小(&A)" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "缩放到文档的实际大小" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "适合整个页面(&F)" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "缩放到整个页面适合窗口大小" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "适合页面宽度(&W)" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "缩放到页面宽度适合窗口大小" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "适合页面高度(&H)" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "缩放到页面高度适合窗口大小" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "放大(&I)" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "缩小(&O)" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "缩放(&Z)…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "选择缩放级别" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "刷新(&R)" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "刷新" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "上一级(&U)" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "跳转到上一级" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "上一页(&P)" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "跳转到上一页" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "下一页(&N)" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "跳转到下一页" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "跳转到(&G)…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "跳转到页面(&G)…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "跳转到行(&G)…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "第一页(&F)" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "跳转到第一页" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "最后一页(&L)" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "跳转到最后一页" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "后退(&B)" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "在文档中后退" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "前进(&F)" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "在文档中前进" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "添加书签(&A)" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "编辑书签(&E)…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "拼写检查(&S)…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "检查文档中的拼写错误" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "显示菜单栏(&M)" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "显示或者隐藏菜单栏" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "显示工具栏(&T)" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "显示或者隐藏工具栏" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "显示状态栏(&A)" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "显示或者隐藏状态栏" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "全屏模式(&U)" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "配置键盘快捷键(&H)…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "配置 %1(&C)…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "配置工具栏(&B)..." + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "配置通知(&N)…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1 使用手册(&H)" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "这是什么(&T)?" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "报告程序缺陷(&R)…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "配置语言(&L)…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "关于 %1(&A)" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "关于 &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "删除(&D)" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "重命名(&R)…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "移动到回收站(&M)" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "捐款(&D)" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "打开菜单(&M)" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "打开" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "新建" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "关闭" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "保存" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "打印" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "退出" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "撤销" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "重做" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "剪切" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "复制" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "粘贴" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "粘贴选中内容" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "选择全部" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "取消选择" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "删除前一个单词" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "删除后一个单词" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "查找" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "查找下一个" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "查找上一个" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "替换" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "主页" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "开头" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "结尾" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "之前" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "之后" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "向上" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "后退" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "前进" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "重新加载" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "行首" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "行尾" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "跳转到行" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "上一单词" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "下一单词" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "添加书签" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "放大" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "缩小" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "全屏模式" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "显示菜单栏" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "激活下一标签页" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "激活上一标签页" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "帮助" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "这是什么" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "文本补全" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "上一条补全匹配" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "下一条补全匹配" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "子串补全" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "列表中的前一项" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "列表中的后一项" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "打开最近项目" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "另存为" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "还原" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "打印预览" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "发送电子邮件" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "清除" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "缩放为实际大小" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "适合整个页面" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "适合页面宽度" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "适合页面高度" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "缩放" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "跳转到" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "跳转到页面" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "文档后退" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "文档前进" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "编辑书签" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "拼写" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "显示工具栏" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "显示状态栏" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "键位绑定" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "配置应用程序" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "配置工具栏" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "配置通知" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "报告程序缺陷" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "配置语言…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "关于应用程序" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "关于 KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "删除" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "重命名" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "移动到回收站" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "捐款" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "显示/隐藏隐藏文件" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "创建文件夹" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "打开主菜单" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "打开右键菜单" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "KDE 的用户配置文件更新工具" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "保留脚本的输出结果" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"仅针对单元测试:不要写入已完成的条目,于是每次重新运行时,脚本将被重新执行" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "检查配置文件本身是否需要更新" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "要读取更新指令的文件" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "用于生成文件的目录,格式为 [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "目录" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "显示软件许可证。" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "使用 代替全局设置" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "要查看的组。根组使用“”,嵌套组可重复使用。" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "要查询的键" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "默认值" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "变量类型" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "组名称不能为空,根组应使用“”" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "变量类型。布尔值应选择“bool”,否则它将被视作字符串。" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "启用时删除指定项" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "要写入的值。此为必填项。在 shell 中应使用 \" 代表空值。" diff --git a/poqm/zh_TW/kconfig6_qt.po b/poqm/zh_TW/kconfig6_qt.po new file mode 100644 index 0000000..198eadf --- /dev/null +++ b/poqm/zh_TW/kconfig6_qt.po @@ -0,0 +1,1068 @@ +# translation of kwriteconfig.po to Chinese Traditional +# +# Frank Weng (a.k.a. Franklin) , 2006, 2008. +# Franklin Weng , 2007, 2014, 2015. +# Jeff Huang , 2016, 2017, 2018, 2020. +# pan93412 , 2019, 2020. +# SPDX-FileCopyrightText: 2022, 2023, 2024 Kisaragi Hiu +msgid "" +msgstr "" +"Project-Id-Version: kwriteconfig\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2014-04-11 02:17+0000\n" +"PO-Revision-Date: 2024-05-26 16:01+0900\n" +"Last-Translator: Kisaragi Hiu \n" +"Language-Team: Traditional Chinese \n" +"Language: zh_TW\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Lokalize 24.04.70\n" +"X-Qt-Contexts: true\n" + +#: core/kconfig.cpp:940 +msgctxt "KConfig|" +msgid "Please contact your system administrator." +msgstr "請聯絡您的系統管理員。" + +#: core/kconfigini.cpp:565 +#, qt-format +msgctxt "KConfigIniBackend|" +msgid "Configuration file \"%1\" not writable.\n" +msgstr "設定檔 %1 無法寫入。\n" + +#: core/kemailsettings.cpp:128 core/kemailsettings.cpp:131 +#: core/kemailsettings.cpp:139 +msgctxt "KEMailSettings|" +msgid "Default" +msgstr "預設" + +#: gui/kstandardactions.cpp:49 +msgctxt "go back|" +msgid "&Back" +msgstr "返回(&B)" + +#: gui/kstandardactions.cpp:56 +msgctxt "go forward|" +msgid "&Forward" +msgstr "往前(&F)" + +#: gui/kstandardactions.cpp:63 +msgctxt "home page|" +msgid "&Home" +msgstr "首頁(&H)" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "&New" +msgstr "新增(&N)" + +#: gui/kstandardactions_p.h:67 +msgctxt "KStandardActions|" +msgid "Create new document" +msgstr "建立新文件" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "&Open…" +msgstr "開啟(&O)…" + +#: gui/kstandardactions_p.h:68 +msgctxt "KStandardActions|" +msgid "Open an existing document" +msgstr "開啟現有的文件" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open &Recent" +msgstr "開啟最近的(&R)" + +#: gui/kstandardactions_p.h:69 +msgctxt "KStandardActions|" +msgid "Open a document which was recently opened" +msgstr "開啟最近使用的文件" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "&Save" +msgstr "儲存(&S)" + +#: gui/kstandardactions_p.h:70 +msgctxt "KStandardActions|" +msgid "Save document" +msgstr "儲存文件" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save &As…" +msgstr "另存為(&A)…" + +#: gui/kstandardactions_p.h:71 +msgctxt "KStandardActions|" +msgid "Save document under a new name" +msgstr "以新名稱儲存文件" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Re&vert" +msgstr "回復(&V)" + +#: gui/kstandardactions_p.h:72 +msgctxt "KStandardActions|" +msgid "Revert unsaved changes made to document" +msgstr "回復文件的變更" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "&Close" +msgstr "關閉(&C)" + +#: gui/kstandardactions_p.h:73 +msgctxt "KStandardActions|" +msgid "Close document" +msgstr "關閉文件" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "&Print…" +msgstr "列印(&P)…" + +#: gui/kstandardactions_p.h:74 +msgctxt "KStandardActions|" +msgid "Print document" +msgstr "列印文件" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Print Previe&w" +msgstr "預覽列印(&W)" + +#: gui/kstandardactions_p.h:75 +msgctxt "KStandardActions|" +msgid "Show a print preview of document" +msgstr "顯示文件的預覽列印" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "&Mail…" +msgstr "郵寄(&M)…" + +#: gui/kstandardactions_p.h:76 +msgctxt "KStandardActions|" +msgid "Send document by mail" +msgstr "以郵件傳送文件" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "&Quit" +msgstr "離開(&Q)" + +#: gui/kstandardactions_p.h:77 +msgctxt "KStandardActions|" +msgid "Quit application" +msgstr "離開應用程式" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "&Undo" +msgstr "復原(&U)" + +#: gui/kstandardactions_p.h:79 +msgctxt "KStandardActions|" +msgid "Undo last action" +msgstr "復原上一次動作" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Re&do" +msgstr "重做(&D)" + +#: gui/kstandardactions_p.h:80 +msgctxt "KStandardActions|" +msgid "Redo last undone action" +msgstr "重做上一次的動作" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cu&t" +msgstr "剪下(&T)" + +#: gui/kstandardactions_p.h:81 +msgctxt "KStandardActions|" +msgid "Cut selection to clipboard" +msgstr "將選取內容剪下到剪貼簿" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "&Copy" +msgstr "複製(&C)" + +#: gui/kstandardactions_p.h:82 +msgctxt "KStandardActions|" +msgid "Copy selection to clipboard" +msgstr "將選取內容複製到剪貼簿" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "&Paste" +msgstr "貼上(&P)" + +#: gui/kstandardactions_p.h:83 +msgctxt "KStandardActions|" +msgid "Paste clipboard content" +msgstr "貼上剪貼簿內容" + +#: gui/kstandardactions_p.h:84 +msgctxt "KStandardActions|" +msgid "C&lear" +msgstr "清除(&L)" + +#: gui/kstandardactions_p.h:85 +msgctxt "KStandardActions|" +msgid "Select &All" +msgstr "全部選取(&A)" + +#: gui/kstandardactions_p.h:86 +msgctxt "KStandardActions|" +msgid "Dese&lect" +msgstr "取消選擇(&L)" + +#: gui/kstandardactions_p.h:87 +msgctxt "KStandardActions|" +msgid "&Find…" +msgstr "尋找(&F)…" + +#: gui/kstandardactions_p.h:88 +msgctxt "KStandardActions|" +msgid "Find &Next" +msgstr "尋找下一個(&N)" + +#: gui/kstandardactions_p.h:89 +msgctxt "KStandardActions|" +msgid "Find Pre&vious" +msgstr "尋找上一個(&V)" + +#: gui/kstandardactions_p.h:90 +msgctxt "KStandardActions|" +msgid "&Replace…" +msgstr "取代(&R)…" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "Zoom to &Actual Size" +msgstr "縮放到實際大小(&A)" + +#: gui/kstandardactions_p.h:92 +msgctxt "KStandardActions|" +msgid "View document at its actual size" +msgstr "以實際大小檢視文件" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "&Fit to Page" +msgstr "調整成適合頁面大小(&F)" + +#: gui/kstandardactions_p.h:93 +msgctxt "KStandardActions|" +msgid "Zoom to fit page in window" +msgstr "縮放到適合視窗內頁面" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Fit to Page &Width" +msgstr "調整成適合頁面寬度(&W)" + +#: gui/kstandardactions_p.h:94 +msgctxt "KStandardActions|" +msgid "Zoom to fit page width in window" +msgstr "縮放到頁面寬度適合視窗" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Fit to Page &Height" +msgstr "調整成適合頁面高度(&H)" + +#: gui/kstandardactions_p.h:95 +msgctxt "KStandardActions|" +msgid "Zoom to fit page height in window" +msgstr "縮放到頁面高度適合視窗" + +#: gui/kstandardactions_p.h:96 +msgctxt "KStandardActions|" +msgid "Zoom &In" +msgstr "放大(&I)" + +#: gui/kstandardactions_p.h:97 +msgctxt "KStandardActions|" +msgid "Zoom &Out" +msgstr "縮小(&O)" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "&Zoom…" +msgstr "縮放(&Z)…" + +#: gui/kstandardactions_p.h:98 +msgctxt "KStandardActions|" +msgid "Select zoom level" +msgstr "選擇縮放等級" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "&Refresh" +msgstr "重新整理(&R)" + +#: gui/kstandardactions_p.h:99 +msgctxt "KStandardActions|" +msgid "Refresh document" +msgstr "重新整理文件" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "&Up" +msgstr "向上(&U)" + +#: gui/kstandardactions_p.h:101 +msgctxt "KStandardActions|" +msgid "Go up" +msgstr "往上" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "&Previous Page" +msgstr "上一頁(&P)" + +#: gui/kstandardactions_p.h:106 +msgctxt "KStandardActions|" +msgid "Go to previous page" +msgstr "回到上一頁" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "&Next Page" +msgstr "下一頁(&N)" + +#: gui/kstandardactions_p.h:107 +msgctxt "KStandardActions|" +msgid "Go to next page" +msgstr "前往下一頁" + +#: gui/kstandardactions_p.h:108 +msgctxt "KStandardActions|" +msgid "&Go To…" +msgstr "前往(&G)…" + +#: gui/kstandardactions_p.h:109 +msgctxt "KStandardActions|" +msgid "&Go to Page…" +msgstr "移至頁面(&G)…" + +#: gui/kstandardactions_p.h:110 +msgctxt "KStandardActions|" +msgid "&Go to Line…" +msgstr "跳至行號(&G)…" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "&First Page" +msgstr "第一頁(&F)" + +#: gui/kstandardactions_p.h:111 +msgctxt "KStandardActions|" +msgid "Go to first page" +msgstr "前往第一頁" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "&Last Page" +msgstr "最後一頁(&L)" + +#: gui/kstandardactions_p.h:112 +msgctxt "KStandardActions|" +msgid "Go to last page" +msgstr "前往最後一頁" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "&Back" +msgstr "返回(&B)" + +#: gui/kstandardactions_p.h:113 +msgctxt "KStandardActions|" +msgid "Go back in document" +msgstr "在文件內返回" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "&Forward" +msgstr "往前(&F)" + +#: gui/kstandardactions_p.h:114 +msgctxt "KStandardActions|" +msgid "Go forward in document" +msgstr "在文件內往前" + +#: gui/kstandardactions_p.h:116 +msgctxt "KStandardActions|" +msgid "&Add Bookmark" +msgstr "新增書籤(&A)" + +#: gui/kstandardactions_p.h:117 +msgctxt "KStandardActions|" +msgid "&Edit Bookmarks…" +msgstr "編輯書籤(&E)…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "&Spelling…" +msgstr "拼字(&S)…" + +#: gui/kstandardactions_p.h:119 +msgctxt "KStandardActions|" +msgid "Check spelling in document" +msgstr "檢查文件內的拼字" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show &Menubar" +msgstr "顯示選單列(&M)" + +#: gui/kstandardactions_p.h:121 +msgctxt "KStandardActions|" +msgid "Show or hide menubar" +msgstr "顯示或隱藏選單列" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show &Toolbar" +msgstr "顯示工具列(&T)" + +#: gui/kstandardactions_p.h:122 +msgctxt "KStandardActions|" +msgid "Show or hide toolbar" +msgstr "顯示或隱藏工具列" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show St&atusbar" +msgstr "顯示狀態列(&A)" + +#: gui/kstandardactions_p.h:123 +msgctxt "KStandardActions|" +msgid "Show or hide statusbar" +msgstr "顯示或隱藏狀態列" + +#: gui/kstandardactions_p.h:124 +msgctxt "KStandardActions|" +msgid "F&ull Screen Mode" +msgstr "全螢幕模式(&U)" + +#: gui/kstandardactions_p.h:125 +msgctxt "KStandardActions|" +msgid "Configure Keyboard S&hortcuts…" +msgstr "設定鍵盤快捷鍵(&H)…" + +#: gui/kstandardactions_p.h:126 +#, qt-format +msgctxt "KStandardActions|" +msgid "&Configure %1…" +msgstr "設定 %1(&C)…" + +#: gui/kstandardactions_p.h:127 +msgctxt "KStandardActions|" +msgid "Configure Tool&bars…" +msgstr "設定工具列(&B)…" + +#: gui/kstandardactions_p.h:128 +msgctxt "KStandardActions|" +msgid "Configure &Notifications…" +msgstr "設定通知(&N)…" + +#: gui/kstandardactions_p.h:132 +#, qt-format +msgctxt "KStandardActions|" +msgid "%1 &Handbook" +msgstr "%1 手冊(&H)" + +#: gui/kstandardactions_p.h:133 +msgctxt "KStandardActions|" +msgid "What's &This?" +msgstr "這是什麼?(&T)" + +#: gui/kstandardactions_p.h:134 +msgctxt "KStandardActions|" +msgid "&Report Bug…" +msgstr "回報問題(&R)…" + +#: gui/kstandardactions_p.h:135 +msgctxt "KStandardActions|" +msgid "Configure &Language…" +msgstr "設定語言(&L)…" + +#: gui/kstandardactions_p.h:136 +#, qt-format +msgctxt "KStandardActions|" +msgid "&About %1" +msgstr "關於 %1(&A)" + +#: gui/kstandardactions_p.h:137 +msgctxt "KStandardActions|" +msgid "About &KDE" +msgstr "關於 &KDE" + +#: gui/kstandardactions_p.h:138 +msgctxt "KStandardActions|" +msgid "&Delete" +msgstr "刪除(&D)" + +#: gui/kstandardactions_p.h:139 +msgctxt "KStandardActions|" +msgid "&Rename…" +msgstr "重新命名(&R)…" + +#: gui/kstandardactions_p.h:140 +msgctxt "KStandardActions|" +msgid "&Move to Trash" +msgstr "移到垃圾桶(&M)" + +#: gui/kstandardactions_p.h:141 +msgctxt "KStandardActions|" +msgid "&Donate" +msgstr "捐獻(&D)" + +#: gui/kstandardactions_p.h:142 +msgctxt "KStandardActions|" +msgid "Open &Menu" +msgstr "開啟選單(&M)" + +#: gui/kstandardshortcut.cpp:70 +msgctxt "KStandardShortcut|@action" +msgid "Open" +msgstr "開啟" + +#: gui/kstandardshortcut.cpp:71 +msgctxt "KStandardShortcut|@action" +msgid "New" +msgstr "新增" + +#: gui/kstandardshortcut.cpp:72 +msgctxt "KStandardShortcut|@action" +msgid "Close" +msgstr "關閉" + +#: gui/kstandardshortcut.cpp:73 +msgctxt "KStandardShortcut|@action" +msgid "Save" +msgstr "儲存" + +#: gui/kstandardshortcut.cpp:74 +msgctxt "KStandardShortcut|@action" +msgid "Print" +msgstr "列印" + +#: gui/kstandardshortcut.cpp:75 +msgctxt "KStandardShortcut|@action" +msgid "Quit" +msgstr "離開" + +#: gui/kstandardshortcut.cpp:78 +msgctxt "KStandardShortcut|@action" +msgid "Undo" +msgstr "復原" + +#: gui/kstandardshortcut.cpp:79 +msgctxt "KStandardShortcut|@action" +msgid "Redo" +msgstr "重做" + +#: gui/kstandardshortcut.cpp:82 +msgctxt "KStandardShortcut|@action" +msgid "Cut" +msgstr "剪下" + +#: gui/kstandardshortcut.cpp:83 +msgctxt "KStandardShortcut|@action" +msgid "Copy" +msgstr "複製" + +#: gui/kstandardshortcut.cpp:84 +msgctxt "KStandardShortcut|@action" +msgid "Paste" +msgstr "貼上" + +#: gui/kstandardshortcut.cpp:87 +msgctxt "KStandardShortcut|@action" +msgid "Paste Selection" +msgstr "貼上選擇區" + +#: gui/kstandardshortcut.cpp:94 +msgctxt "KStandardShortcut|@action" +msgid "Select All" +msgstr "全部選取" + +#: gui/kstandardshortcut.cpp:95 +msgctxt "KStandardShortcut|@action" +msgid "Deselect" +msgstr "取消選擇" + +#: gui/kstandardshortcut.cpp:98 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Backwards" +msgstr "向後刪字" + +#: gui/kstandardshortcut.cpp:106 +msgctxt "KStandardShortcut|@action" +msgid "Delete Word Forward" +msgstr "向前刪字" + +#: gui/kstandardshortcut.cpp:113 +msgctxt "KStandardShortcut|@action" +msgid "Find" +msgstr "尋找" + +#: gui/kstandardshortcut.cpp:114 +msgctxt "KStandardShortcut|@action" +msgid "Find Next" +msgstr "尋找下一個" + +#: gui/kstandardshortcut.cpp:115 +msgctxt "KStandardShortcut|@action" +msgid "Find Prev" +msgstr "尋找上一個" + +#: gui/kstandardshortcut.cpp:116 +msgctxt "KStandardShortcut|@action" +msgid "Replace" +msgstr "取代" + +#: gui/kstandardshortcut.cpp:121 +msgctxt "KStandardShortcut|@action Go to main page" +msgid "Home" +msgstr "首頁" + +#: gui/kstandardshortcut.cpp:129 +msgctxt "KStandardShortcut|@action Beginning of document" +msgid "Begin" +msgstr "開始" + +#: gui/kstandardshortcut.cpp:135 +msgctxt "KStandardShortcut|@action End of document" +msgid "End" +msgstr "結束" + +#: gui/kstandardshortcut.cpp:136 +msgctxt "KStandardShortcut|@action" +msgid "Prior" +msgstr "上一個" + +#: gui/kstandardshortcut.cpp:139 +msgctxt "KStandardShortcut|@action Opposite to Prior" +msgid "Next" +msgstr "下一個" + +#: gui/kstandardshortcut.cpp:146 +msgctxt "KStandardShortcut|@action" +msgid "Up" +msgstr "向上" + +#: gui/kstandardshortcut.cpp:147 +msgctxt "KStandardShortcut|@action" +msgid "Back" +msgstr "返回" + +#: gui/kstandardshortcut.cpp:150 +msgctxt "KStandardShortcut|@action" +msgid "Forward" +msgstr "往前" + +#: gui/kstandardshortcut.cpp:158 +msgctxt "KStandardShortcut|@action" +msgid "Reload" +msgstr "重新載入" + +#: gui/kstandardshortcut.cpp:167 +msgctxt "KStandardShortcut|@action" +msgid "Beginning of Line" +msgstr "行開頭" + +#: gui/kstandardshortcut.cpp:175 +msgctxt "KStandardShortcut|@action" +msgid "End of Line" +msgstr "行結尾" + +#: gui/kstandardshortcut.cpp:181 +msgctxt "KStandardShortcut|@action" +msgid "Go to Line" +msgstr "跳至行號" + +#: gui/kstandardshortcut.cpp:184 +msgctxt "KStandardShortcut|@action" +msgid "Backward Word" +msgstr "返回一個詞語" + +#: gui/kstandardshortcut.cpp:192 +msgctxt "KStandardShortcut|@action" +msgid "Forward Word" +msgstr "往前一個詞語" + +#: gui/kstandardshortcut.cpp:201 +msgctxt "KStandardShortcut|@action" +msgid "Add Bookmark" +msgstr "加入書籤" + +#: gui/kstandardshortcut.cpp:207 +msgctxt "KStandardShortcut|@action" +msgid "Zoom In" +msgstr "放大" + +#: gui/kstandardshortcut.cpp:208 +msgctxt "KStandardShortcut|@action" +msgid "Zoom Out" +msgstr "縮小" + +#: gui/kstandardshortcut.cpp:211 +msgctxt "KStandardShortcut|@action" +msgid "Full Screen Mode" +msgstr "全螢幕模式" + +#: gui/kstandardshortcut.cpp:218 +msgctxt "KStandardShortcut|@action" +msgid "Show Menu Bar" +msgstr "顯示選單列" + +#: gui/kstandardshortcut.cpp:221 +msgctxt "KStandardShortcut|@action" +msgid "Activate Next Tab" +msgstr "跳到下一個分頁" + +#: gui/kstandardshortcut.cpp:229 +msgctxt "KStandardShortcut|@action" +msgid "Activate Previous Tab" +msgstr "跳到前一個分頁" + +#: gui/kstandardshortcut.cpp:237 +msgctxt "KStandardShortcut|@action" +msgid "Help" +msgstr "說明" + +#: gui/kstandardshortcut.cpp:238 +msgctxt "KStandardShortcut|@action" +msgid "What's This" +msgstr "這是什麼" + +#: gui/kstandardshortcut.cpp:243 +msgctxt "KStandardShortcut|@action" +msgid "Text Completion" +msgstr "文字補完" + +#: gui/kstandardshortcut.cpp:251 +msgctxt "KStandardShortcut|@action" +msgid "Previous Completion Match" +msgstr "上一個完成符合" + +#: gui/kstandardshortcut.cpp:259 +msgctxt "KStandardShortcut|@action" +msgid "Next Completion Match" +msgstr "下一個完成符合" + +#: gui/kstandardshortcut.cpp:267 +msgctxt "KStandardShortcut|@action" +msgid "Substring Completion" +msgstr "子字串完成" + +#: gui/kstandardshortcut.cpp:276 +msgctxt "KStandardShortcut|@action" +msgid "Previous Item in List" +msgstr "上一個清單中的項目" + +#: gui/kstandardshortcut.cpp:284 +msgctxt "KStandardShortcut|@action" +msgid "Next Item in List" +msgstr "下一個清單中的項目" + +#: gui/kstandardshortcut.cpp:291 +msgctxt "KStandardShortcut|@action" +msgid "Open Recent" +msgstr "開啟最近的" + +#: gui/kstandardshortcut.cpp:292 +msgctxt "KStandardShortcut|@action" +msgid "Save As" +msgstr "另存為" + +#: gui/kstandardshortcut.cpp:293 +msgctxt "KStandardShortcut|@action" +msgid "Revert" +msgstr "回復" + +#: gui/kstandardshortcut.cpp:294 +msgctxt "KStandardShortcut|@action" +msgid "Print Preview" +msgstr "預覽列印" + +#: gui/kstandardshortcut.cpp:295 +msgctxt "KStandardShortcut|@action" +msgid "Mail" +msgstr "郵件" + +#: gui/kstandardshortcut.cpp:296 +msgctxt "KStandardShortcut|@action" +msgid "Clear" +msgstr "清除" + +#: gui/kstandardshortcut.cpp:299 +msgctxt "KStandardShortcut|@action" +msgid "Zoom to Actual Size" +msgstr "縮放到實際大小" + +#: gui/kstandardshortcut.cpp:305 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Page" +msgstr "調整成適合頁面大小" + +#: gui/kstandardshortcut.cpp:306 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Width" +msgstr "調整成適合頁面寬度" + +#: gui/kstandardshortcut.cpp:307 +msgctxt "KStandardShortcut|@action" +msgid "Fit To Height" +msgstr "調整成適合頁面高度" + +#: gui/kstandardshortcut.cpp:308 +msgctxt "KStandardShortcut|@action" +msgid "Zoom" +msgstr "縮放" + +#: gui/kstandardshortcut.cpp:309 +msgctxt "KStandardShortcut|@action" +msgid "Goto" +msgstr "跳至" + +#: gui/kstandardshortcut.cpp:310 +msgctxt "KStandardShortcut|@action" +msgid "Goto Page" +msgstr "移至頁面" + +#: gui/kstandardshortcut.cpp:313 +msgctxt "KStandardShortcut|@action" +msgid "Document Back" +msgstr "文件返回" + +#: gui/kstandardshortcut.cpp:321 +msgctxt "KStandardShortcut|@action" +msgid "Document Forward" +msgstr "文件向前" + +#: gui/kstandardshortcut.cpp:329 +msgctxt "KStandardShortcut|@action" +msgid "Edit Bookmarks" +msgstr "編輯書籤" + +#: gui/kstandardshortcut.cpp:335 +msgctxt "KStandardShortcut|@action" +msgid "Spelling" +msgstr "拼字" + +#: gui/kstandardshortcut.cpp:336 +msgctxt "KStandardShortcut|@action" +msgid "Show Toolbar" +msgstr "顯示工具列" + +#: gui/kstandardshortcut.cpp:337 +msgctxt "KStandardShortcut|@action" +msgid "Show Statusbar" +msgstr "顯示狀態列" + +#: gui/kstandardshortcut.cpp:340 +msgctxt "KStandardShortcut|@action" +msgid "Key Bindings" +msgstr "按鍵組合" + +#: gui/kstandardshortcut.cpp:348 +msgctxt "KStandardShortcut|@action" +msgid "Configure Application" +msgstr "設定應用程式" + +#: gui/kstandardshortcut.cpp:356 +msgctxt "KStandardShortcut|@action" +msgid "Configure Toolbars" +msgstr "設定工具列" + +#: gui/kstandardshortcut.cpp:364 +msgctxt "KStandardShortcut|@action" +msgid "Configure Notifications" +msgstr "設定通知" + +#: gui/kstandardshortcut.cpp:370 +msgctxt "KStandardShortcut|@action" +msgid "Report Bug" +msgstr "回報問題" + +#: gui/kstandardshortcut.cpp:373 +msgctxt "KStandardShortcut|@action" +msgid "Configure Language…" +msgstr "設定語言…" + +#: gui/kstandardshortcut.cpp:379 +msgctxt "KStandardShortcut|@action" +msgid "About Application" +msgstr "關於應用程式" + +#: gui/kstandardshortcut.cpp:380 +msgctxt "KStandardShortcut|@action" +msgid "About KDE" +msgstr "關於 KDE" + +#: gui/kstandardshortcut.cpp:383 +msgctxt "KStandardShortcut|@action" +msgid "Delete" +msgstr "刪除" + +#: gui/kstandardshortcut.cpp:384 +msgctxt "KStandardShortcut|@action" +msgid "Rename" +msgstr "重新命名" + +#: gui/kstandardshortcut.cpp:387 +msgctxt "KStandardShortcut|@action" +msgid "Move to Trash" +msgstr "移到垃圾桶" + +#: gui/kstandardshortcut.cpp:393 +msgctxt "KStandardShortcut|@action" +msgid "Donate" +msgstr "捐獻" + +#: gui/kstandardshortcut.cpp:396 +msgctxt "KStandardShortcut|@action" +msgid "Show/Hide Hidden Files" +msgstr "顯示/隱藏已隱藏的檔案" + +#: gui/kstandardshortcut.cpp:404 +msgctxt "KStandardShortcut|@action" +msgid "Create Folder" +msgstr "建立資料夾" + +#: gui/kstandardshortcut.cpp:412 +msgctxt "" +"KStandardShortcut|@action referring to the menu bar or a hamburger menu" +msgid "Open Main Menu" +msgstr "開啟主選單" + +#: gui/kstandardshortcut.cpp:420 +msgctxt "KStandardShortcut|@action" +msgid "Open Context Menu" +msgstr "開啟內文選單" + +#: kconf_update/kconf_update.cpp:368 +msgctxt "main|" +msgid "KDE Tool for updating user configuration files" +msgstr "用來更新使用者設定檔案的 KDE 工具" + +#: kconf_update/kconf_update.cpp:370 +msgctxt "main|" +msgid "Keep output results from scripts" +msgstr "保留文稿的輸出結果" + +#: kconf_update/kconf_update.cpp:373 +msgctxt "main|" +msgid "" +"For unit tests only: do not write the done entries, so that with every re-" +"run, the scripts are executed again" +msgstr "" +"僅單元測試:不要寫出完成的項目,這樣每次重新執行的時候腳本才會一起重新執行" + +#: kconf_update/kconf_update.cpp:375 +msgctxt "main|" +msgid "Check whether config file itself requires updating" +msgstr "檢查設定檔是否需要更新" + +#: kconf_update/kconf_update.cpp:378 +msgctxt "main|" +msgid "File(s) to read update instructions from" +msgstr "要讀入更新說明指令的檔案" + +#: kconfig_compiler/kconfig_compiler.cpp:726 +msgctxt "main|" +msgid "Directory to generate files in [.]" +msgstr "產生檔案的目錄 [.]" + +#: kconfig_compiler/kconfig_compiler.cpp:727 +msgctxt "main|" +msgid "directory" +msgstr "目錄" + +#: kconfig_compiler/kconfig_compiler.cpp:731 +msgctxt "main|" +msgid "Display software license." +msgstr "顯示軟體授權。" + +#: kreadconfig/kreadconfig.cpp:46 kreadconfig/kwriteconfig.cpp:25 +msgctxt "main|" +msgid "Use instead of global config" +msgstr "使用 代替全域設定" + +#: kreadconfig/kreadconfig.cpp:49 kreadconfig/kwriteconfig.cpp:28 +msgctxt "main|" +msgid "" +"Group to look in. Use \"\" for the root group, or use repeatedly " +"for nested groups." +msgstr "要檢閱的群組。root 群組請使用 ,或重複使用以檢視巢狀群組。" + +#: kreadconfig/kreadconfig.cpp:52 kreadconfig/kwriteconfig.cpp:31 +msgctxt "main|" +msgid "Key to look for" +msgstr "要檢視的鍵值" + +#: kreadconfig/kreadconfig.cpp:53 +msgctxt "main|" +msgid "Default value" +msgstr "預設數值" + +#: kreadconfig/kreadconfig.cpp:54 +msgctxt "main|" +msgid "Type of variable" +msgstr "變數類別" + +#: kreadconfig/kreadconfig.cpp:84 kreadconfig/kwriteconfig.cpp:69 +msgctxt "main|" +msgid "Group name cannot be empty, use \"\" for the root group" +msgstr "群組名稱不能為空,請為 root 使用者群組使用「」設定" + +#: kreadconfig/kwriteconfig.cpp:34 +msgctxt "main|" +msgid "" +"Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a " +"string" +msgstr "變數型別。用 bool 表示布林(真假)值,其他型別都將被視為字串" + +#: kreadconfig/kwriteconfig.cpp:36 +msgctxt "main|" +msgid "Delete the designated key if enabled" +msgstr "啟用時刪除指定鍵" + +#: kreadconfig/kwriteconfig.cpp:37 +msgctxt "main|" +msgid "The value to write. Mandatory, on a shell use '' for empty" +msgstr "要寫入的值。在 shell 中空的值使用 ''" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Tip Of Day" +#~ msgstr "每日小祕訣" + +#~ msgctxt "main|" +#~ msgid "" +#~ "For unit tests only: use test directories to stay away from the user's " +#~ "real files" +#~ msgstr "單元測試用:用測試目錄以避免動到使用者真正的檔案" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Save Options" +#~ msgstr "儲存選項" + +#~ msgctxt "KStandardShortcut|@action" +#~ msgid "Switch Application Language" +#~ msgstr "切換應用程式語言" diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt new file mode 100644 index 0000000..bb61a4a --- /dev/null +++ b/src/CMakeLists.txt @@ -0,0 +1,57 @@ +add_subdirectory(core) +if(TARGET Qt6::Gui) + add_subdirectory(gui) +endif() +if(KCONFIG_USE_QML) + add_subdirectory(qml) +endif() +add_subdirectory(kconfig_compiler) +add_subdirectory(kconf_update) +add_subdirectory(kreadconfig) + +ecm_qt_install_logging_categories( + EXPORT KCONFIG + FILE kconfig.categories + DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR} +) + +if(BUILD_QCH) + ecm_add_qch( + KF6Config_QCH + NAME KConfig + BASE_NAME KF6Config + VERSION ${KF_VERSION} + ORG_DOMAIN org.kde + SOURCES # using only public headers, to cover only public API + ${KConfigCore_APIDOX_SRCS} + ${KConfigGui_APIDOX_SRCS} + "${CMAKE_CURRENT_SOURCE_DIR}/kconfig_compiler/README.dox" + "${CMAKE_SOURCE_DIR}/docs/options.md" + MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md" + LINK_QCHS + Qt6Core_QCH + Qt6Xml_QCH + Qt6Gui_QCH + INCLUDE_DIRS + ${KConfigCore_APIDOX_INCLUDE_DIRS} + ${KConfigGui_APIDOX_INCLUDE_DIRS} + BLANK_MACROS + KCONFIGCORE_EXPORT + KCONFIGCORE_DEPRECATED_EXPORT + KCONFIGCORE_DEPRECATED + "KCONFIGCORE_DEPRECATED_VERSION(x, y, t)" + "KCONFIGCORE_DEPRECATED_VERSION_BELATED(x, y, xt, yt, t)" + "KCONFIGCORE_ENUMERATOR_DEPRECATED_VERSION(x, y, t)" + "KCONFIGCORE_ENUMERATOR_DEPRECATED_VERSION_BELATED(x, y, xt, yt, t)" + KCONFIGGUI_EXPORT + KCONFIGGUI_DEPRECATED_EXPORT + KCONFIGGUI_DEPRECATED + "KCONFIGGUI_DEPRECATED_VERSION(x, y, t)" + "KCONFIGGUI_DEPRECATED_VERSION_BELATED(x, y, xt, yt, t)" + "KCONFIGGUI_ENUMERATOR_DEPRECATED_VERSION(x, y, t)" + "KCONFIGGUI_ENUMERATOR_DEPRECATED_VERSION_BELATED(x, y, xt, yt, t)" + TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} + QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} + COMPONENT Devel + ) +endif() diff --git a/src/Messages.sh b/src/Messages.sh new file mode 100755 index 0000000..4a30c8c --- /dev/null +++ b/src/Messages.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +# Extract strings from all source files. +# EXTRACT_TR_STRINGS extracts strings with lupdate and convert them to .pot with +# lconvert. +$EXTRACT_TR_STRINGS `find . -name \*.cpp -o -name \*.h -o -name \*.ui -o -name \*.qml` -o $podir/kconfig6_qt.pot diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt new file mode 100644 index 0000000..b2e312e --- /dev/null +++ b/src/core/CMakeLists.txt @@ -0,0 +1,95 @@ +add_library(KF6ConfigCore) +add_library(KF6::ConfigCore ALIAS KF6ConfigCore) + +qt_extract_metatypes(KF6ConfigCore) + +set_target_properties(KF6ConfigCore PROPERTIES + VERSION ${KCONFIG_VERSION} + SOVERSION ${KCONFIG_SOVERSION} + EXPORT_NAME ConfigCore +) + +target_sources(KF6ConfigCore PRIVATE + kconfig.cpp + kconfigbase.cpp + kconfigdata.cpp + kconfiggroup.cpp + kconfigini.cpp + kdesktopfile.cpp + kdesktopfileaction.cpp + ksharedconfig.cpp + kcoreconfigskeleton.cpp + kauthorized.cpp + kemailsettings.cpp + kconfigwatcher.cpp +) + +ecm_qt_declare_logging_category(KF6ConfigCore + HEADER kconfig_core_log_settings.h + IDENTIFIER KCONFIG_CORE_LOG + CATEGORY_NAME kf.config.core + OLD_CATEGORY_NAMES kf5.kconfig.core + DESCRIPTION "KConfig Core" + EXPORT KCONFIG +) + +configure_file(config-kconfig.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-kconfig.h ) + +ecm_generate_export_header(KF6ConfigCore + BASE_NAME KConfigCore + GROUP_BASE_NAME KF + VERSION ${KF_VERSION} + USE_VERSION_HEADER + VERSION_BASE_NAME KConfig + DEPRECATED_BASE_VERSION 0 + DEPRECATION_VERSIONS 6.3 + EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT} +) + +target_compile_definitions(KF6ConfigCore + PRIVATE + KCONF_UPDATE_INSTALL_LOCATION="${KDE_INSTALL_FULL_LIBEXECDIR_KF}/$" +) + +target_include_directories(KF6ConfigCore + INTERFACE "$" +) + +target_link_libraries(KF6ConfigCore PUBLIC Qt6::Core) + +if(KCONFIG_USE_DBUS) + target_link_libraries(KF6ConfigCore PRIVATE Qt6::DBus) +endif() + +ecm_generate_headers(KConfigCore_HEADERS + HEADER_NAMES + KAuthorized + KConfig + KConfigBase + KConfigGroup + KDesktopFile + KDesktopFileAction + KSharedConfig + KCoreConfigSkeleton + KEMailSettings + KConfigWatcher + + REQUIRED_HEADERS KConfigCore_HEADERS +) + +list(APPEND KConfigCore_HEADERS + ${CMAKE_CURRENT_SOURCE_DIR}/kconfigconversioncheck_p.h # helper header included by kconfiggroup.h +) + +install(TARGETS KF6ConfigCore EXPORT KF6ConfigTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS}) + +install(FILES + ${CMAKE_CURRENT_BINARY_DIR}/kconfigcore_export.h + ${KConfigCore_HEADERS} + DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KConfigCore COMPONENT Devel +) + +# make available to ecm_add_qch in parent folder +set(KConfigCore_APIDOX_SRCS ${KConfigCore_HEADERS} PARENT_SCOPE) +set(KConfigCore_APIDOX_INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR} PARENT_SCOPE) + diff --git a/src/core/bufferfragment_p.h b/src/core/bufferfragment_p.h new file mode 100644 index 0000000..629e5e8 --- /dev/null +++ b/src/core/bufferfragment_p.h @@ -0,0 +1,198 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2008 Jakub Stachowski + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef BUFFERFRAGMENT_H +#define BUFFERFRAGMENT_H + +#include "kconfigini_p.h" + +#define bf_isspace(str) ((str == ' ') || (str == '\t') || (str == '\r')) + +// This class provides wrapper around fragment of existing buffer (array of bytes). +// If underlying buffer gets deleted, all BufferFragment objects referencing it become invalid. +// Use toByteArray() to make deep copy of the buffer fragment. +// +// API is designed to subset of QByteArray methods with some changes: +// - trim() is like QByteArray.trimmed(), but it modifies current object +// - truncateLeft() provides way to cut off beginning of the buffer +// - split() works more like strtok_r than QByteArray.split() +// - truncateLeft() and mid() require position argument to be valid + +class KConfigIniBackend::BufferFragment +{ +public: + BufferFragment() + : d(nullptr) + , len(0) + { + } + + BufferFragment(char *buf, int size) + : d(buf) + , len(size) + { + } + + int length() const + { + return len; + } + + char at(unsigned int i) const + { + Q_ASSERT(i < len); + return d[i]; + } + + void clear() + { + len = 0; + } + + const char *constData() const + { + return d; + } + + char *data() const + { + return d; + } + + void trim() + { + while (bf_isspace(*d) && len > 0) { + ++d; + --len; + } + while (len > 0 && bf_isspace(d[len - 1])) { + --len; + } + } + + // similar to strtok_r . On first call variable pointed by start should be set to 0. + // Each call will update *start to new starting position. + BufferFragment split(char c, unsigned int *start) + { + if (*start < len) { + int end = indexOf(c, *start); + if (end == -1) { + end = len; + } + BufferFragment line(d + (*start), end - (*start)); + *start = end + 1; + return line; + } + return BufferFragment(); + } + + bool isEmpty() const + { + return !len; + } + + BufferFragment left(unsigned int size) const + { + return BufferFragment(d, qMin(size, len)); + } + + void truncateLeft(unsigned int size) + { + Q_ASSERT(size <= len); + d += size; + len -= size; + } + + void truncate(unsigned int pos) + { + if (pos < len) { + len = pos; + } + } + + bool isNull() const + { + return !d; + } + + BufferFragment mid(unsigned int pos, int length = -1) const + { + Q_ASSERT(pos < len); + int size = length; + if (length == -1 || (pos + length) > len) { + size = len - pos; + } + return BufferFragment(d + pos, size); + } + + bool operator==(const QByteArray &other) const + { + return (other.size() == (int)len && memcmp(d, other.constData(), len) == 0); + } + + bool operator!=(const QByteArray &other) const + { + return (other.size() != (int)len || memcmp(d, other.constData(), len) != 0); + } + + bool operator==(const BufferFragment other) const + { + return other.len == len && !memcmp(d, other.d, len); + } + + int indexOf(char c, unsigned int from = 0) const + { + const char *cursor = d + from - 1; + const char *end = d + len; + while (++cursor < end) + if (*cursor == c) { + return cursor - d; + } + return -1; + } + + int lastIndexOf(char c) const + { + int from = len - 1; + while (from >= 0) + if (d[from] == c) { + return from; + } else { + --from; + } + return -1; + } + + QByteArray toByteArray() const + { + return QByteArray(d, len); + } + + // this is faster than toByteArray, but returned QByteArray becomes invalid + // when buffer for this BufferFragment disappears + QByteArray toVolatileByteArray() const + { + return QByteArray::fromRawData(d, len); + } + +private: + char *d; + unsigned int len; +}; + +size_t qHash(const KConfigIniBackend::BufferFragment fragment, size_t seed = 0) +{ + const uchar *p = reinterpret_cast(fragment.constData()); + const int len = fragment.length(); + + if (len == 0) { + return seed; + } + return qHashBits(p, len, seed); +} + +#endif diff --git a/src/core/config-kconfig.h.cmake b/src/core/config-kconfig.h.cmake new file mode 100644 index 0000000..a4a7519 --- /dev/null +++ b/src/core/config-kconfig.h.cmake @@ -0,0 +1 @@ +#cmakedefine01 KCONFIG_USE_DBUS diff --git a/src/core/dbussanitizer_p.h b/src/core/dbussanitizer_p.h new file mode 100644 index 0000000..a90d744 --- /dev/null +++ b/src/core/dbussanitizer_p.h @@ -0,0 +1,27 @@ +// SPDX-License-Identifier: LGPL-2.0-or-later +// SPDX-FileCopyrightText: 2023 Harald Sitter + +#pragma once + +#include +#include + +#include + +inline QString kconfigDBusSanitizePath(QString path) +{ + for (auto &character : path) { + if ((std::isalnum(character.toLatin1(), std::locale::classic()) == 0) && character != QLatin1Char('_') && character != QLatin1Char('/')) { + character = QLatin1Char('_'); + } + } + // KConfig notifying or watching on / makes no sense + Q_ASSERT_X(path.length() > 1, Q_FUNC_INFO, qUtf8Printable(path)); + // As per spec the path must start with a slash + Q_ASSERT_X(path.at(0) == QLatin1Char('/'), Q_FUNC_INFO, qUtf8Printable(path)); + // ...but not end with a slash + Q_ASSERT_X(path.at(path.size() - 1) != QLatin1Char('/'), Q_FUNC_INFO, qUtf8Printable(path)); + // ...it also must not contain multiple slashes in sequence + Q_ASSERT_X(!path.contains(QLatin1String("//")), Q_FUNC_INFO, qUtf8Printable(path)); + return path; +} diff --git a/src/core/kauthorized.cpp b/src/core/kauthorized.cpp new file mode 100644 index 0000000..5cae2ce --- /dev/null +++ b/src/core/kauthorized.cpp @@ -0,0 +1,406 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 1997 Matthias Kalle Dalheimer + SPDX-FileCopyrightText: 1998, 1999, 2000 Waldo Bastian + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kauthorized.h" + +#include +#include +#include +#include + +#include "kconfig_core_log_settings.h" +#include +#include +#include // srand(), rand() +#ifndef Q_OS_WIN +#include +#include +#endif + +#include + +#include +#include + +extern bool kde_kiosk_exception; + +class URLActionRule +{ +public: +#define checkExactMatch(s, b) \ + if (s.isEmpty()) \ + b = true; \ + else if (s[s.length() - 1] == QLatin1Char('!')) { \ + b = false; \ + s.chop(1); \ + } else \ + b = true; +#define checkStartWildCard(s, b) \ + if (s.isEmpty()) \ + b = true; \ + else if (s[0] == QLatin1Char('*')) { \ + b = true; \ + s.remove(0, 1); \ + } else \ + b = false; +#define checkEqual(s, b) b = (s == QLatin1String("=")); + + URLActionRule(const QByteArray &act, + const QString &bProt, + const QString &bHost, + const QString &bPath, + const QString &dProt, + const QString &dHost, + const QString &dPath, + bool perm) + : action(act) + , baseProt(bProt) + , baseHost(bHost) + , basePath(bPath) + , destProt(dProt) + , destHost(dHost) + , destPath(dPath) + , permission(perm) + { + checkExactMatch(baseProt, baseProtWildCard); + checkStartWildCard(baseHost, baseHostWildCard); + checkExactMatch(basePath, basePathWildCard); + checkExactMatch(destProt, destProtWildCard); + checkStartWildCard(destHost, destHostWildCard); + checkExactMatch(destPath, destPathWildCard); + checkEqual(destProt, destProtEqual); + checkEqual(destHost, destHostEqual); + } + + bool baseMatch(const QUrl &url, const QString &protClass) const + { + if (baseProtWildCard) { + if (!baseProt.isEmpty() // + && !url.scheme().startsWith(baseProt) // + && (protClass.isEmpty() || (protClass != baseProt))) { + return false; + } + } else { + if (url.scheme() != baseProt // + && (protClass.isEmpty() || (protClass != baseProt))) { + return false; + } + } + if (baseHostWildCard) { + if (!baseHost.isEmpty() && !url.host().endsWith(baseHost)) { + return false; + } + } else { + if (url.host() != baseHost) { + return false; + } + } + if (basePathWildCard) { + if (!basePath.isEmpty() && !url.path().startsWith(basePath)) { + return false; + } + } else { + if (url.path() != basePath) { + return false; + } + } + return true; + } + + bool destMatch(const QUrl &url, const QString &protClass, const QUrl &base, const QString &baseClass) const + { + if (destProtEqual) { + if (url.scheme() != base.scheme() // + && (protClass.isEmpty() || baseClass.isEmpty() || protClass != baseClass)) { + return false; + } + } else if (destProtWildCard) { + if (!destProt.isEmpty() // + && !url.scheme().startsWith(destProt) // + && (protClass.isEmpty() || (protClass != destProt))) { + return false; + } + } else { + if (url.scheme() != destProt // + && (protClass.isEmpty() || (protClass != destProt))) { + return false; + } + } + if (destHostWildCard) { + if (!destHost.isEmpty() && !url.host().endsWith(destHost)) { + return false; + } + } else if (destHostEqual) { + if (url.host() != base.host()) { + return false; + } + } else { + if (url.host() != destHost) { + return false; + } + } + if (destPathWildCard) { + if (!destPath.isEmpty() && !url.path().startsWith(destPath)) { + return false; + } + } else { + if (url.path() != destPath) { + return false; + } + } + return true; + } + + QByteArray action; + QString baseProt; + QString baseHost; + QString basePath; + QString destProt; + QString destHost; + QString destPath; + bool baseProtWildCard : 1; + bool baseHostWildCard : 1; + bool basePathWildCard : 1; + bool destProtWildCard : 1; + bool destHostWildCard : 1; + bool destPathWildCard : 1; + bool destProtEqual : 1; + bool destHostEqual : 1; + bool permission; +}; + +Q_DECLARE_TYPEINFO(URLActionRule, Q_RELOCATABLE_TYPE); + +class KAuthorizedPrivate +{ +public: + KAuthorizedPrivate() + : actionRestrictions(false) + , blockEverything(false) + { + Q_ASSERT_X(QCoreApplication::instance(), "KAuthorizedPrivate()", "There has to be an existing QCoreApplication::instance() pointer"); + + KSharedConfig::Ptr config = KSharedConfig::openConfig(); + + Q_ASSERT_X(config, "KAuthorizedPrivate()", "There has to be an existing KSharedConfig::openConfig() pointer"); + if (!config) { + blockEverything = true; + return; + } + actionRestrictions = config->hasGroup(QStringLiteral("KDE Action Restrictions")) && !kde_kiosk_exception; + } + + ~KAuthorizedPrivate() + { + } + + bool actionRestrictions : 1; + bool blockEverything : 1; + QList urlActionRestrictions; + QRecursiveMutex mutex; +}; + +Q_GLOBAL_STATIC(KAuthorizedPrivate, authPrivate) +#define KAUTHORIZED_D KAuthorizedPrivate *d = authPrivate() + +KAuthorized::KAuthorized() + : QObject(nullptr) +{ +} + +bool KAuthorized::authorize(const QString &genericAction) +{ + KAUTHORIZED_D; + if (d->blockEverything) { + return false; + } + + if (!d->actionRestrictions) { + return true; + } + + KConfigGroup cg(KSharedConfig::openConfig(), QStringLiteral("KDE Action Restrictions")); + return cg.readEntry(genericAction, true); +} + +bool KAuthorized::authorize(KAuthorized::GenericRestriction action) +{ + const QMetaEnum metaEnum = QMetaEnum::fromType(); + + if (metaEnum.isValid() && action != 0) { + return KAuthorized::authorize(QString::fromLatin1(metaEnum.valueToKey(action)).toLower()); + } + qCWarning(KCONFIG_CORE_LOG) << "Invalid GenericRestriction requested" << action; + return false; +} + +bool KAuthorized::authorizeAction(const QString &action) +{ + KAUTHORIZED_D; + if (d->blockEverything) { + return false; + } + if (!d->actionRestrictions || action.isEmpty()) { + return true; + } + + return authorize(QLatin1String("action/") + action); +} + +bool KAuthorized::authorizeAction(KAuthorized::GenericAction action) +{ + const QMetaEnum metaEnum = QMetaEnum::fromType(); + if (metaEnum.isValid() && action != 0) { + return KAuthorized::authorizeAction(QString::fromLatin1(metaEnum.valueToKey(action)).toLower()); + } + qCWarning(KCONFIG_CORE_LOG) << "Invalid GenericAction requested" << action; + return false; +} + +bool KAuthorized::authorizeControlModule(const QString &menuId) +{ + if (menuId.isEmpty() || kde_kiosk_exception) { + return true; + } + KConfigGroup cg(KSharedConfig::openConfig(), QStringLiteral("KDE Control Module Restrictions")); + return cg.readEntry(menuId, true); +} + +// Exported for unittests (e.g. in KIO, we're missing tests for this in kconfig) +KCONFIGCORE_EXPORT void loadUrlActionRestrictions(const KConfigGroup &cg) +{ + KAUTHORIZED_D; + const QString Any; + + d->urlActionRestrictions.clear(); + d->urlActionRestrictions.append(URLActionRule("open", Any, Any, Any, Any, Any, Any, true)); + d->urlActionRestrictions.append(URLActionRule("list", Any, Any, Any, Any, Any, Any, true)); + // TEST: + // d->urlActionRestrictions.append( + // URLActionRule("list", Any, Any, Any, Any, Any, Any, false)); + // d->urlActionRestrictions.append( + // URLActionRule("list", Any, Any, Any, "file", Any, QDir::homePath(), true)); + d->urlActionRestrictions.append(URLActionRule("link", Any, Any, Any, QStringLiteral(":internet"), Any, Any, true)); + d->urlActionRestrictions.append(URLActionRule("redirect", Any, Any, Any, QStringLiteral(":internet"), Any, Any, true)); + + // We allow redirections to file: but not from internet protocols, redirecting to file: + // is very popular among KIO workers and we don't want to break them + d->urlActionRestrictions.append(URLActionRule("redirect", Any, Any, Any, QStringLiteral("file"), Any, Any, true)); + d->urlActionRestrictions.append(URLActionRule("redirect", QStringLiteral(":internet"), Any, Any, QStringLiteral("file"), Any, Any, false)); + + // local protocols may redirect everywhere + d->urlActionRestrictions.append(URLActionRule("redirect", QStringLiteral(":local"), Any, Any, Any, Any, Any, true)); + + // Anyone may redirect to about: + d->urlActionRestrictions.append(URLActionRule("redirect", Any, Any, Any, QStringLiteral("about"), Any, Any, true)); + + // Anyone may redirect to mailto: + d->urlActionRestrictions.append(URLActionRule("redirect", Any, Any, Any, QStringLiteral("mailto"), Any, Any, true)); + + // Anyone may redirect to itself, cq. within it's own group + d->urlActionRestrictions.append(URLActionRule("redirect", Any, Any, Any, QStringLiteral("="), Any, Any, true)); + + d->urlActionRestrictions.append(URLActionRule("redirect", QStringLiteral("about"), Any, Any, Any, Any, Any, true)); + + int count = cg.readEntry("rule_count", 0); + QString keyFormat = QStringLiteral("rule_%1"); + for (int i = 1; i <= count; i++) { + QString key = keyFormat.arg(i); + const QStringList rule = cg.readEntry(key, QStringList()); + if (rule.count() != 8) { + continue; + } + const QByteArray action = rule[0].toLatin1(); + const QString refProt = rule[1]; + const QString refHost = rule[2]; + QString refPath = rule[3]; + const QString urlProt = rule[4]; + const QString urlHost = rule[5]; + QString urlPath = rule[6]; + const bool bEnabled = (rule[7].compare(QLatin1String("true"), Qt::CaseInsensitive) == 0); + + if (refPath.startsWith(QLatin1String("$HOME"))) { + refPath.replace(0, 5, QDir::homePath()); + } else if (refPath.startsWith(QLatin1Char('~'))) { + refPath.replace(0, 1, QDir::homePath()); + } + if (urlPath.startsWith(QLatin1String("$HOME"))) { + urlPath.replace(0, 5, QDir::homePath()); + } else if (urlPath.startsWith(QLatin1Char('~'))) { + urlPath.replace(0, 1, QDir::homePath()); + } + + if (refPath.startsWith(QLatin1String("$TMP"))) { + refPath.replace(0, 4, QDir::tempPath()); + } + if (urlPath.startsWith(QLatin1String("$TMP"))) { + urlPath.replace(0, 4, QDir::tempPath()); + } + + d->urlActionRestrictions.append(URLActionRule(action, refProt, refHost, refPath, urlProt, urlHost, urlPath, bEnabled)); + } +} + +namespace KAuthorizedInternal +{ +/** + * Helper for KAuthorized::allowUrlAction in KIO + * @private + */ +KCONFIGCORE_EXPORT void allowUrlAction(const QString &action, const QUrl &_baseURL, const QUrl &_destURL) +{ + KAUTHORIZED_D; + QMutexLocker locker((&d->mutex)); + + const QString basePath = _baseURL.adjusted(QUrl::StripTrailingSlash).path(); + const QString destPath = _destURL.adjusted(QUrl::StripTrailingSlash).path(); + + d->urlActionRestrictions.append( + URLActionRule(action.toLatin1(), _baseURL.scheme(), _baseURL.host(), basePath, _destURL.scheme(), _destURL.host(), destPath, true)); +} + +/** + * Helper for KAuthorized::authorizeUrlAction in KIO + * @private + */ +KCONFIGCORE_EXPORT bool +authorizeUrlAction(const QString &action, const QUrl &_baseURL, const QUrl &_destURL, const QString &baseClass, const QString &destClass) +{ + KAUTHORIZED_D; + QMutexLocker locker(&(d->mutex)); + if (d->blockEverything) { + return false; + } + + if (_destURL.isEmpty()) { + return true; + } + + bool result = false; + if (d->urlActionRestrictions.isEmpty()) { + KConfigGroup cg(KSharedConfig::openConfig(), QStringLiteral("KDE URL Restrictions")); + loadUrlActionRestrictions(cg); + } + + QUrl baseURL(_baseURL); + baseURL.setPath(QDir::cleanPath(baseURL.path())); + + QUrl destURL(_destURL); + destURL.setPath(QDir::cleanPath(destURL.path())); + + for (const URLActionRule &rule : std::as_const(d->urlActionRestrictions)) { + if ((result != rule.permission) && // No need to check if it doesn't make a difference + (action == QLatin1String(rule.action.constData())) && rule.baseMatch(baseURL, baseClass) + && rule.destMatch(destURL, destClass, baseURL, baseClass)) { + result = rule.permission; + } + } + return result; +} +} // namespace + +#include "moc_kauthorized.cpp" diff --git a/src/core/kauthorized.h b/src/core/kauthorized.h new file mode 100644 index 0000000..851f71e --- /dev/null +++ b/src/core/kauthorized.h @@ -0,0 +1,174 @@ +/* This file is part of the KDE libraries + SPDX-FileCopyrightText: 1997 Matthias Kalle Dalheimer + SPDX-FileCopyrightText: 1998, 1999 Waldo Bastian + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KAUTHORIZED_H +#define KAUTHORIZED_H + +#include + +#include +#include +#include +#include + +class QUrl; +class QString; +class QQmlEngine; +class QJSEngine; + +/** + * The functions in this namespace provide the core of the Kiosk action + * restriction system; the KIO and KXMLGui frameworks build on this. + * + * The relevant settings are read from the application's KSharedConfig + * instance, so actions can be disabled on a per-application or global + * basis (by using the kdeglobals file). + */ +class KCONFIGCORE_EXPORT KAuthorized : public QObject +{ + Q_OBJECT +public: + /** + * The enum values lower cased represent the action that is authorized + * For example the SHELL_ACCESS value is converted to the "shell_access" string. + * + * @since 5.88 + */ + enum GenericRestriction { + SHELL_ACCESS = 1, // if the user is authorized to open a shell or execute shell commands + GHNS, /// if the collaborative data sharing framework KNewStuff is authorized + // GUI behavior + LINEEDIT_REVEAL_PASSWORD, /// if typed characters in password fields can be made visible + LINEEDIT_TEXT_COMPLETION, /// if line edits should be allowed to display completions + MOVABLE_TOOLBARS, /// if toolbars of apps should be movable + RUN_DESKTOP_FILES, /// if .desktop files should be run as executables when clicked + }; + Q_ENUM(GenericRestriction) + + /** + * + * @since 5.88 + */ + enum GenericAction { + OPEN_WITH = 1, /// if the open-with menu should be shown for files etc. + EDITFILETYPE, /// if mime-type accociations are allowed to be configured + + OPTIONS_SHOW_TOOLBAR, /// if the toolbar should be displayed in apps + SWITCH_APPLICATION_LANGUAGE, /// if an action to switch the app language should be shown + BOOKMARKS, /// saving bookmarks is allowed + }; + Q_ENUM(GenericAction) + + /** + * Returns whether the user is permitted to perform a certain action. + * + * All settings are read from the "[KDE Action Restrictions]" group. + * For example, if kdeglobals contains + * @verbatim + [KDE Action Restrictions][$i] + shell_access=false + @endverbatim + * then + * @code + * KAuthorized::authorize("shell_access"); + * @endcode + * will return @c false. + * + * This method is intended for actions that do not necessarily have a + * one-to-one correspondence with a menu or toolbar item (ie: a QAction + * in a KXMLGui application). "shell_access" is an example of such a + * "generic" action. + * + * The convention for actions like "File->New" is to prepend the action + * name with "action/", for example "action/file_new". This is what + * authorizeAction() does. + * + * @param action The name of the action. + * @return @c true if the action is authorized, @c false + * otherwise. + * + * @see authorizeAction() + */ + Q_INVOKABLE static bool authorize(const QString &action); + + /** + * Returns whether the user is permitted to perform a common action. + * The enum values lower cased represent the action that is + * passed in to @p authorize(QString) + * + * @overload + * @since 5.88 + */ + Q_INVOKABLE static bool authorize(GenericRestriction action); + + /** + * Returns whether the user is permitted to perform a certain action. + * + * This behaves like authorize(), except that "action/" is prepended to + * @p action. So if kdeglobals contains + * @verbatim + [KDE Action Restrictions][$i] + action/file_new=false + @endverbatim + * then + * @code + * KAuthorized::authorizeAction("file_new"); + * @endcode + * will return @c false. + * + * KXMLGui-based applications should not normally need to call this + * function, as KActionCollection will do it automatically. + * + * @param action The name of a QAction action. + * @return @c true if the QAction is authorized, @c false + * otherwise. + * @since 5.24 + * + * @see authorize() + */ + Q_INVOKABLE static bool authorizeAction(const QString &action); + + /** + * Overload to authorize common actions. + * + * @overload + * @since 5.88 + */ + Q_INVOKABLE static bool authorizeAction(GenericAction action); + + /** + * Returns whether the user is permitted to use a certain control module. + * + * All settings are read from the "[KDE Control Module Restrictions]" + * group. For example, if kdeglobals contains + * @verbatim + [KDE Control Module Restrictions][$i] + kcm_desktop-settings=false + @endverbatim + * then + * @code + * KAuthorized::authorizeControlModule("kcm_desktop-settings"); + * @endcode + * will return @c false. + * + * @param pluginId The desktop menu ID for the control module. + * @return @c true if access to the module is authorized, @c false otherwise. + * + */ + Q_INVOKABLE static bool authorizeControlModule(const QString &pluginId); + + static KAuthorized *create(QQmlEngine *, QJSEngine *) + { + return new KAuthorized; + } + +private: + friend class KConfigQmlPlugin; + explicit KAuthorized(); +}; + +#endif diff --git a/src/core/kconfig.cpp b/src/core/kconfig.cpp new file mode 100644 index 0000000..c7e8a23 --- /dev/null +++ b/src/core/kconfig.cpp @@ -0,0 +1,1035 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2006, 2007 Thomas Braxton + SPDX-FileCopyrightText: 1999 Preston Brown + SPDX-FileCopyrightText: 1997-1999 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kconfig.h" +#include "kconfig_p.h" + +#include "config-kconfig.h" +#include "dbussanitizer_p.h" +#include "kconfig_core_log_settings.h" + +#include + +#include "kconfiggroup.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#if KCONFIG_USE_DBUS +#include +#include +#include +#endif + +bool KConfigPrivate::mappingsRegistered = false; + +// For caching purposes +static bool s_wasTestModeEnabled = false; + +Q_GLOBAL_STATIC(QStringList, s_globalFiles) // For caching purposes. +static QBasicMutex s_globalFilesMutex; +Q_GLOBAL_STATIC_WITH_ARGS(QString, sGlobalFileName, (QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation) + QLatin1String("/kdeglobals"))) + +using ParseCacheKey = std::pair; +struct ParseCacheValue { + KEntryMap entries; + QDateTime parseTime; +}; +using ParseCache = QThreadStorage>; +Q_GLOBAL_STATIC(ParseCache, sGlobalParse) + +#ifndef Q_OS_WIN +static const Qt::CaseSensitivity sPathCaseSensitivity = Qt::CaseSensitive; +#else +static const Qt::CaseSensitivity sPathCaseSensitivity = Qt::CaseInsensitive; +#endif + +KConfigPrivate::KConfigPrivate(KConfig::OpenFlags flags, QStandardPaths::StandardLocation resourceType) + : openFlags(flags) + , resourceType(resourceType) + , mBackend(new KConfigIniBackend) + , bDirty(false) + , bReadDefaults(false) + , bFileImmutable(false) + , bForceGlobal(false) + , bSuppressGlobal(false) + , configState(KConfigBase::NoAccess) +{ + const bool isTestMode = QStandardPaths::isTestModeEnabled(); + // If sGlobalFileName was initialised and testMode has been toggled, + // sGlobalFileName may need to be updated to point to the correct kdeglobals file + if (sGlobalFileName.exists() && s_wasTestModeEnabled != isTestMode) { + s_wasTestModeEnabled = isTestMode; + *sGlobalFileName = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation) + QLatin1String("/kdeglobals"); + } + + static QBasicAtomicInt use_etc_kderc = Q_BASIC_ATOMIC_INITIALIZER(-1); + if (use_etc_kderc.loadRelaxed() < 0) { + use_etc_kderc.storeRelaxed(!qEnvironmentVariableIsSet("KDE_SKIP_KDERC")); // for unit tests + } + if (use_etc_kderc.loadRelaxed()) { + etc_kderc = +#ifdef Q_OS_WIN + QFile::decodeName(qgetenv("WINDIR") + "/kde5rc"); +#else + QStringLiteral("/etc/kde5rc"); +#endif + if (!QFileInfo(etc_kderc).isReadable()) { + use_etc_kderc.storeRelaxed(false); + etc_kderc.clear(); + } + } + + // if (!mappingsRegistered) { + // KEntryMap tmp; + // if (!etc_kderc.isEmpty()) { + // QExplicitlySharedDataPointer backend = KConfigBackend::create(etc_kderc, QLatin1String("INI")); + // backend->parseConfig( "en_US", tmp, KConfigBackend::ParseDefaults); + // } + // const QString kde5rc(QDir::home().filePath(".kde5rc")); + // if (KStandardDirs::checkAccess(kde5rc, R_OK)) { + // QExplicitlySharedDataPointer backend = KConfigBackend::create(kde5rc, QLatin1String("INI")); + // backend->parseConfig( "en_US", tmp, KConfigBackend::ParseOptions()); + // } + // KConfigBackend::registerMappings(tmp); + // mappingsRegistered = true; + // } + + setLocale(QLocale().name()); +} + +bool KConfigPrivate::lockLocal() +{ + return mBackend->lock(); +} + +static bool isGroupOrSubGroupMatch(KEntryMapConstIterator entryMapIt, const QString &group) +{ + const QString &entryGroup = entryMapIt->first.mGroup; + Q_ASSERT_X(entryGroup.startsWith(group), Q_FUNC_INFO, "Precondition"); + return entryGroup.size() == group.size() || entryGroup[group.size()] == QLatin1Char('\x1d'); +} + +void KConfigPrivate::copyGroup(const QString &source, const QString &destination, KConfigGroup *otherGroup, KConfigBase::WriteConfigFlags flags) const +{ + KEntryMap &otherMap = otherGroup->config()->d_ptr->entryMap; + const bool sameName = (destination == source); + + // we keep this bool outside the for loop so that if + // the group is empty, we don't end up marking the other config + // as dirty erroneously + bool dirtied = false; + + entryMap.forEachEntryWhoseGroupStartsWith(source, [&source, &destination, flags, &otherMap, sameName, &dirtied](KEntryMapConstIterator entryMapIt) { + // don't copy groups that start with the same prefix, but are not sub-groups + if (!isGroupOrSubGroupMatch(entryMapIt, source)) { + return; + } + + KEntryKey newKey = entryMapIt->first; + + if (flags & KConfigBase::Localized) { + newKey.bLocal = true; + } + + if (!sameName) { + newKey.mGroup.replace(0, source.size(), destination); + } + + KEntry entry = entryMapIt->second; + dirtied = entry.bDirty = flags & KConfigBase::Persistent; + + if (flags & KConfigBase::Global) { + entry.bGlobal = true; + } + + if (flags & KConfigBase::Notify) { + entry.bNotify = true; + } + + otherMap[newKey] = entry; + }); + + if (dirtied) { + otherGroup->config()->d_ptr->bDirty = true; + } +} + +QString KConfigPrivate::expandString(const QString &value) +{ + QString aValue = value; + + // check for environment variables and make necessary translations + int nDollarPos = aValue.indexOf(QLatin1Char('$')); + while (nDollarPos != -1 && nDollarPos + 1 < aValue.length()) { + // there is at least one $ + if (aValue.at(nDollarPos + 1) != QLatin1Char('$')) { + int nEndPos = nDollarPos + 1; + // the next character is not $ + QStringView aVarName; + if (aValue.at(nEndPos) == QLatin1Char('{')) { + while ((nEndPos <= aValue.length()) && (aValue[nEndPos] != QLatin1Char('}'))) { + ++nEndPos; + } + ++nEndPos; + aVarName = QStringView(aValue).mid(nDollarPos + 2, nEndPos - nDollarPos - 3); + } else { + while (nEndPos < aValue.length() && (aValue[nEndPos].isNumber() || aValue[nEndPos].isLetter() || aValue[nEndPos] == QLatin1Char('_'))) { + ++nEndPos; + } + aVarName = QStringView(aValue).mid(nDollarPos + 1, nEndPos - nDollarPos - 1); + } + QString env; + if (!aVarName.isEmpty()) { +#ifdef Q_OS_WIN + if (aVarName == QLatin1String("HOME")) { + env = QDir::homePath(); + } else +#endif + { + QByteArray pEnv = qgetenv(aVarName.toLatin1().constData()); + if (!pEnv.isEmpty()) { + env = QString::fromLocal8Bit(pEnv.constData()); + } else { + if (aVarName == QLatin1String("QT_DATA_HOME")) { + env = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation); + } else if (aVarName == QLatin1String("QT_CONFIG_HOME")) { + env = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation); + } else if (aVarName == QLatin1String("QT_CACHE_HOME")) { + env = QStandardPaths::writableLocation(QStandardPaths::GenericCacheLocation); + } + } + } + aValue.replace(nDollarPos, nEndPos - nDollarPos, env); + nDollarPos += env.length(); + } else { + aValue.remove(nDollarPos, nEndPos - nDollarPos); + } + } else { + // remove one of the dollar signs + aValue.remove(nDollarPos, 1); + ++nDollarPos; + } + nDollarPos = aValue.indexOf(QLatin1Char('$'), nDollarPos); + } + + return aValue; +} + +KConfig::KConfig(const QString &file, OpenFlags mode, QStandardPaths::StandardLocation resourceType) + : d_ptr(new KConfigPrivate(mode, resourceType)) +{ + d_ptr->changeFileName(file); // set the local file name + + // read initial information off disk + reparseConfiguration(); +} + +#if KCONFIGCORE_BUILD_DEPRECATED_SINCE(6, 3) +KConfig::KConfig(const QString &file, const QString &backend, QStandardPaths::StandardLocation resourceType) + : d_ptr(new KConfigPrivate(SimpleConfig, resourceType)) +{ + Q_UNUSED(backend); + d_ptr->changeFileName(file); // set the local file name + + // read initial information off disk + reparseConfiguration(); +} +#endif + +KConfig::KConfig(KConfigPrivate &d) + : d_ptr(&d) +{ +} + +KConfig::~KConfig() +{ + Q_D(KConfig); + if (d->bDirty && d->mBackend->ref.loadRelaxed() == 1) { + sync(); + } + delete d; +} + +static bool isNonDeletedKey(KEntryMapConstIterator entryMapIt) +{ + return !entryMapIt->first.mKey.isNull() && !entryMapIt->second.bDeleted; +} +// is a key without default values and not deleted +static bool isSetKey(KEntryMapConstIterator entryMapIt) +{ + return !entryMapIt->first.bDefault && !entryMapIt->second.bDeleted; +} + +static int findFirstGroupEndPos(const QString &groupFullName, int from = 0) +{ + const auto index = groupFullName.indexOf(QLatin1Char('\x1d'), from); + return index == -1 ? groupFullName.size() : index; +} + +static QStringList stringListFromStringViewCollection(const QSet &source) +{ + QStringList list; + list.reserve(source.size()); + std::transform(source.cbegin(), source.cend(), std::back_inserter(list), [](QStringView view) { + return view.toString(); + }); + return list; +} + +QStringList KConfig::groupList() const +{ + Q_D(const KConfig); + QSet groups; + + for (auto entryMapIt = d->entryMap.cbegin(); entryMapIt != d->entryMap.cend(); ++entryMapIt) { + const QString &group = entryMapIt->first.mGroup; + if (isNonDeletedKey(entryMapIt) && !group.isEmpty() && group != QStringLiteral("") && group != QStringLiteral("$Version")) { + groups.insert(QStringView(group).left(findFirstGroupEndPos(group))); + } + } + + return stringListFromStringViewCollection(groups); +} + +QStringList KConfigPrivate::groupList(const QString &groupName) const +{ + const QString theGroup = groupName + QLatin1Char('\x1d'); + QSet groups; + + entryMap.forEachEntryWhoseGroupStartsWith(theGroup, [&theGroup, &groups](KEntryMapConstIterator entryMapIt) { + if (isNonDeletedKey(entryMapIt)) { + const QString &entryGroup = entryMapIt->first.mGroup; + const auto subgroupStartPos = theGroup.size(); + const auto subgroupEndPos = findFirstGroupEndPos(entryGroup, subgroupStartPos); + groups.insert(QStringView(entryGroup).mid(subgroupStartPos, subgroupEndPos - subgroupStartPos)); + } + }); + + return stringListFromStringViewCollection(groups); +} + +/// Returns @p parentGroup itself, all its subgroups, subsubgroups, and so on, including deleted groups. +QSet KConfigPrivate::allSubGroups(const QString &parentGroup) const +{ + QSet groups; + + entryMap.forEachEntryWhoseGroupStartsWith(parentGroup, [&parentGroup, &groups](KEntryMapConstIterator entryMapIt) { + const KEntryKey &key = entryMapIt->first; + if (key.mKey.isNull() && isGroupOrSubGroupMatch(entryMapIt, parentGroup)) { + groups << key.mGroup; + } + }); + + return groups; +} + +bool KConfigPrivate::hasNonDeletedEntries(const QString &group) const +{ + return entryMap.anyEntryWhoseGroupStartsWith(group, [&group](KEntryMapConstIterator entryMapIt) { + return isGroupOrSubGroupMatch(entryMapIt, group) && isNonDeletedKey(entryMapIt); + }); +} + +QList KConfigPrivate::keyListImpl(const QString &theGroup) const +{ + std::set tmp; // unique set, sorted for unittests + + entryMap.forEachEntryOfGroup(theGroup, [&tmp](KEntryMapConstIterator it) { + if (isNonDeletedKey(it)) { + tmp.insert(it->first.mKey); + } + }); + + return QList(tmp.begin(), tmp.end()); +} + +QStringList KConfigPrivate::usedKeyList(const QString &theGroup) const +{ + std::set tmp; // unique set, sorting as side-effect + + entryMap.forEachEntryOfGroup(theGroup, [&tmp](KEntryMapConstIterator it) { + // leave the default values and deleted entries out, same as KConfig::entryMap() + if (isSetKey(it)) { + const QString key = QString::fromUtf8(it->first.mKey); + tmp.insert(key); + } + }); + + return QStringList(tmp.begin(), tmp.end()); +} + +QMap KConfig::entryMap(const QString &aGroup) const +{ + Q_D(const KConfig); + QMap theMap; + const QString theGroup = aGroup.isEmpty() ? QStringLiteral("") : aGroup; + + d->entryMap.forEachEntryOfGroup(theGroup, [&theMap](KEntryMapConstIterator it) { + // leave the default values and deleted entries out + if (isSetKey(it)) { + const QString key = QString::fromUtf8(it->first.mKey.constData()); + // the localized entry should come first, so don't overwrite it + // with the non-localized entry + if (!theMap.contains(key)) { + if (it->second.bExpand) { + theMap.insert(key, KConfigPrivate::expandString(QString::fromUtf8(it->second.mValue.constData()))); + } else { + theMap.insert(key, QString::fromUtf8(it->second.mValue.constData())); + } + } + } + }); + + return theMap; +} + +bool KConfig::sync() +{ + Q_D(KConfig); + + if (isImmutable() || name().isEmpty()) { + // can't write to an immutable or anonymous file. + return false; + } + + QHash notifyGroupsLocal; + QHash notifyGroupsGlobal; + + if (d->bDirty) { + const QByteArray utf8Locale(locale().toUtf8()); + + // Create the containing dir, maybe it wasn't there + d->mBackend->createEnclosing(); + + // lock the local file + if (d->configState == ReadWrite && !d->lockLocal()) { + qCWarning(KCONFIG_CORE_LOG) << "couldn't lock local file"; + return false; + } + + // Rewrite global/local config only if there is a dirty entry in it. + bool writeGlobals = false; + bool writeLocals = false; + + for (const auto &[key, e] : d->entryMap) { + if (e.bDirty) { + if (e.bGlobal) { + writeGlobals = true; + if (e.bNotify) { + notifyGroupsGlobal[key.mGroup] << key.mKey; + } + } else { + writeLocals = true; + if (e.bNotify) { + notifyGroupsLocal[key.mGroup] << key.mKey; + } + } + } + } + + d->bDirty = false; // will revert to true if a config write fails + + if (d->wantGlobals() && writeGlobals) { + QExplicitlySharedDataPointer tmp(new KConfigIniBackend()); + tmp->setFilePath(*sGlobalFileName); + if (d->configState == ReadWrite && !tmp->lock()) { + qCWarning(KCONFIG_CORE_LOG) << "couldn't lock global file"; + + // unlock the local config if we're returning early + if (d->mBackend->isLocked()) { + d->mBackend->unlock(); + } + + d->bDirty = true; + return false; + } + if (!tmp->writeConfig(utf8Locale, d->entryMap, KConfigIniBackend::WriteGlobal)) { + d->bDirty = true; + } + if (tmp->isLocked()) { + tmp->unlock(); + } + } + + if (writeLocals) { + if (!d->mBackend->writeConfig(utf8Locale, d->entryMap, KConfigIniBackend::WriteOptions())) { + d->bDirty = true; + } + } + if (d->mBackend->isLocked()) { + d->mBackend->unlock(); + } + } + + // Notifying absolute paths is not supported and also makes no sense. + const bool isAbsolutePath = name().at(0) == QLatin1Char('/'); + if (!notifyGroupsLocal.isEmpty() && !isAbsolutePath) { + d->notifyClients(notifyGroupsLocal, kconfigDBusSanitizePath(QLatin1Char('/') + name())); + } + if (!notifyGroupsGlobal.isEmpty()) { + d->notifyClients(notifyGroupsGlobal, QStringLiteral("/kdeglobals")); + } + + return !d->bDirty; +} + +void KConfigPrivate::notifyClients(const QHash &changes, const QString &path) +{ +#if KCONFIG_USE_DBUS + qDBusRegisterMetaType(); + + qDBusRegisterMetaType>(); + + QDBusMessage message = QDBusMessage::createSignal(path, QStringLiteral("org.kde.kconfig.notify"), QStringLiteral("ConfigChanged")); + message.setArguments({QVariant::fromValue(changes)}); + QDBusConnection::sessionBus().send(message); +#else + Q_UNUSED(changes) + Q_UNUSED(path) +#endif +} + +void KConfig::markAsClean() +{ + Q_D(KConfig); + d->bDirty = false; + + // clear any dirty flags that entries might have set + for (auto &[_, entry] : d->entryMap) { + entry.bDirty = false; + entry.bNotify = false; + } +} + +bool KConfig::isDirty() const +{ + Q_D(const KConfig); + return d->bDirty; +} + +void KConfig::checkUpdate(const QString &id, const QString &updateFile) +{ + const KConfigGroup cg(this, QStringLiteral("$Version")); + const QString cfg_id = updateFile + QLatin1Char(':') + id; + const QStringList ids = cg.readEntry("update_info", QStringList()); + if (!ids.contains(cfg_id)) { + QProcess::execute(QStringLiteral(KCONF_UPDATE_INSTALL_LOCATION), QStringList{QStringLiteral("--check"), updateFile}); + reparseConfiguration(); + } +} + +KConfig *KConfig::copyTo(const QString &file, KConfig *config) const +{ + Q_D(const KConfig); + if (!config) { + config = new KConfig(QString(), SimpleConfig, d->resourceType); + } + config->d_func()->changeFileName(file); + config->d_func()->entryMap = d->entryMap; + config->d_func()->bFileImmutable = false; + + for (auto &[_, entry] : config->d_func()->entryMap) { + entry.bDirty = true; + } + config->d_ptr->bDirty = true; + + return config; +} + +QString KConfig::name() const +{ + Q_D(const KConfig); + return d->fileName; +} + +KConfig::OpenFlags KConfig::openFlags() const +{ + Q_D(const KConfig); + return d->openFlags; +} + +struct KConfigStaticData { + QString globalMainConfigName; + // Keep a copy so we can use it in global dtors, after qApp is gone + QStringList appArgs; +}; +Q_GLOBAL_STATIC(KConfigStaticData, globalData) +static QBasicMutex s_globalDataMutex; + +void KConfig::setMainConfigName(const QString &str) +{ + QMutexLocker locker(&s_globalDataMutex); + globalData()->globalMainConfigName = str; +} + +QString KConfig::mainConfigName() +{ + QMutexLocker locker(&s_globalDataMutex); + KConfigStaticData *data = globalData(); + if (data->appArgs.isEmpty()) { + data->appArgs = QCoreApplication::arguments(); + } + + // --config on the command line overrides everything else + const QStringList args = data->appArgs; + for (int i = 1; i < args.count(); ++i) { + if (args.at(i) == QLatin1String("--config") && i < args.count() - 1) { + return args.at(i + 1); + } + } + const QString globalName = data->globalMainConfigName; + if (!globalName.isEmpty()) { + return globalName; + } + + QString appName = QCoreApplication::applicationName(); + return appName + QLatin1String("rc"); +} + +void KConfigPrivate::changeFileName(const QString &name) +{ + fileName = name; + + QString file; + if (name.isEmpty()) { + if (wantDefaults()) { // accessing default app-specific config "appnamerc" + fileName = KConfig::mainConfigName(); + file = QStandardPaths::writableLocation(resourceType) + QLatin1Char('/') + fileName; + } else if (wantGlobals()) { // accessing "kdeglobals" by specifying no filename and NoCascade - XXX used anywhere? + resourceType = QStandardPaths::GenericConfigLocation; + fileName = QStringLiteral("kdeglobals"); + file = *sGlobalFileName; + } else { + // anonymous config + openFlags = KConfig::SimpleConfig; + return; + } + } else if (QDir::isAbsolutePath(fileName)) { + fileName = QFileInfo(fileName).canonicalFilePath(); + if (fileName.isEmpty()) { // file doesn't exist (yet) + fileName = name; + } + file = fileName; + } else { + file = QStandardPaths::writableLocation(resourceType) + QLatin1Char('/') + fileName; + } + + Q_ASSERT(!file.isEmpty()); + + bSuppressGlobal = (file.compare(*sGlobalFileName, sPathCaseSensitivity) == 0); + + mBackend->setFilePath(file); + + configState = mBackend->accessMode(); +} + +void KConfig::reparseConfiguration() +{ + Q_D(KConfig); + if (d->fileName.isEmpty()) { + return; + } + + // Don't lose pending changes + if (!d->isReadOnly() && d->bDirty) { + sync(); + } + + d->entryMap.clear(); + + d->bFileImmutable = false; + + { + QMutexLocker locker(&s_globalFilesMutex); + s_globalFiles()->clear(); + } + + // Parse all desired files from the least to the most specific. + if (d->wantGlobals()) { + d->parseGlobalFiles(); + } + + d->parseConfigFiles(); +} + +QStringList KConfigPrivate::getGlobalFiles() const +{ + QMutexLocker locker(&s_globalFilesMutex); + if (s_globalFiles()->isEmpty()) { + const QStringList paths1 = QStandardPaths::locateAll(QStandardPaths::GenericConfigLocation, QStringLiteral("kdeglobals")); + const QStringList paths2 = QStandardPaths::locateAll(QStandardPaths::GenericConfigLocation, QStringLiteral("system.kdeglobals")); + + const bool useEtcKderc = !etc_kderc.isEmpty(); + s_globalFiles()->reserve(paths1.size() + paths2.size() + (useEtcKderc ? 1 : 0)); + + for (const QString &dir1 : paths1) { + s_globalFiles()->push_front(dir1); + } + for (const QString &dir2 : paths2) { + s_globalFiles()->push_front(dir2); + } + + if (useEtcKderc) { + s_globalFiles()->push_front(etc_kderc); + } + } + + return *s_globalFiles(); +} + +void KConfigPrivate::parseGlobalFiles() +{ + const QStringList globalFiles = getGlobalFiles(); + // qDebug() << "parsing global files" << globalFiles; + + Q_ASSERT(entryMap.empty()); + const ParseCacheKey key = {globalFiles, locale}; + auto data = sGlobalParse->localData().object(key); + QDateTime newest; + for (const auto &file : globalFiles) { +#if QT_VERSION >= QT_VERSION_CHECK(6, 6, 0) + const auto fileDate = QFileInfo(file).lastModified(QTimeZone::UTC); +#else + const auto fileDate = QFileInfo(file).lastModified(); +#endif + if (fileDate > newest) { + newest = fileDate; + } + } + if (data) { + if (data->parseTime < newest) { + data = nullptr; + } else { + entryMap = data->entries; + return; + } + } + + const QByteArray utf8Locale = locale.toUtf8(); + for (const QString &file : globalFiles) { + KConfigIniBackend::ParseOptions parseOpts = KConfigIniBackend::ParseGlobal | KConfigIniBackend::ParseExpansions; + + if (file.compare(*sGlobalFileName, sPathCaseSensitivity) != 0) { + parseOpts |= KConfigIniBackend::ParseDefaults; + } + + QExplicitlySharedDataPointer backend(new KConfigIniBackend); + backend->setFilePath(file); + if (backend->parseConfig(utf8Locale, entryMap, parseOpts) == KConfigIniBackend::ParseImmutable) { + break; + } + } + sGlobalParse->localData().insert(key, new ParseCacheValue({entryMap, newest})); +} + +void KConfigPrivate::parseConfigFiles() +{ + // can only read the file if there is a backend and a file name + if (!fileName.isEmpty()) { + bFileImmutable = false; + + QList files; + if (wantDefaults()) { + if (bSuppressGlobal) { + files = getGlobalFiles(); + } else { + if (QDir::isAbsolutePath(fileName)) { + const QString canonicalFile = QFileInfo(fileName).canonicalFilePath(); + if (!canonicalFile.isEmpty()) { // empty if it doesn't exist + files << canonicalFile; + } + } else { + const QStringList localFilesPath = QStandardPaths::locateAll(resourceType, fileName); + for (const QString &f : localFilesPath) { + files.prepend(QFileInfo(f).canonicalFilePath()); + } + + // allow fallback to config files bundled in resources + const QString resourceFile(QStringLiteral(":/kconfig/") + fileName); + if (QFile::exists(resourceFile)) { + files.prepend(resourceFile); + } + } + } + } else { + files << mBackend->filePath(); + } + if (!isSimple()) { + files = QList(extraFiles.cbegin(), extraFiles.cend()) + files; + } + + // qDebug() << "parsing local files" << files; + + const QByteArray utf8Locale = locale.toUtf8(); + for (const QString &file : std::as_const(files)) { + if (file.compare(mBackend->filePath(), sPathCaseSensitivity) == 0) { + switch (mBackend->parseConfig(utf8Locale, entryMap, KConfigIniBackend::ParseExpansions)) { + case KConfigIniBackend::ParseOk: + break; + case KConfigIniBackend::ParseImmutable: + bFileImmutable = true; + break; + case KConfigIniBackend::ParseOpenError: + configState = KConfigBase::NoAccess; + break; + } + } else { + QExplicitlySharedDataPointer backend(new KConfigIniBackend); + backend->setFilePath(file); + constexpr auto parseOpts = KConfigIniBackend::ParseDefaults | KConfigIniBackend::ParseExpansions; + bFileImmutable = backend->parseConfig(utf8Locale, entryMap, parseOpts) == KConfigIniBackend::ParseImmutable; + } + + if (bFileImmutable) { + break; + } + } + } +} + +KConfig::AccessMode KConfig::accessMode() const +{ + Q_D(const KConfig); + return d->configState; +} + +void KConfig::addConfigSources(const QStringList &files) +{ + Q_D(KConfig); + for (const QString &file : files) { + d->extraFiles.push(file); + } + + if (!files.isEmpty()) { + reparseConfiguration(); + } +} + +QStringList KConfig::additionalConfigSources() const +{ + Q_D(const KConfig); + return d->extraFiles.toList(); +} + +QString KConfig::locale() const +{ + Q_D(const KConfig); + return d->locale; +} + +bool KConfigPrivate::setLocale(const QString &aLocale) +{ + if (aLocale != locale) { + locale = aLocale; + return true; + } + return false; +} + +bool KConfig::setLocale(const QString &locale) +{ + Q_D(KConfig); + if (d->setLocale(locale)) { + reparseConfiguration(); + return true; + } + return false; +} + +void KConfig::setReadDefaults(bool b) +{ + Q_D(KConfig); + d->bReadDefaults = b; +} + +bool KConfig::readDefaults() const +{ + Q_D(const KConfig); + return d->bReadDefaults; +} + +bool KConfig::isImmutable() const +{ + Q_D(const KConfig); + return d->bFileImmutable; +} + +bool KConfig::isGroupImmutableImpl(const QString &aGroup) const +{ + Q_D(const KConfig); + return isImmutable() || d->entryMap.getEntryOption(aGroup, {}, {}, KEntryMap::EntryImmutable); +} + +KConfigGroup KConfig::groupImpl(const QString &group) +{ + return KConfigGroup(this, group); +} + +const KConfigGroup KConfig::groupImpl(const QString &group) const +{ + return KConfigGroup(this, group); +} + +KEntryMap::EntryOptions convertToOptions(KConfig::WriteConfigFlags flags) +{ + KEntryMap::EntryOptions options = {}; + + if (flags & KConfig::Persistent) { + options |= KEntryMap::EntryDirty; + } + if (flags & KConfig::Global) { + options |= KEntryMap::EntryGlobal; + } + if (flags & KConfig::Localized) { + options |= KEntryMap::EntryLocalized; + } + if (flags.testFlag(KConfig::Notify)) { + options |= KEntryMap::EntryNotify; + } + return options; +} + +void KConfig::deleteGroupImpl(const QString &aGroup, WriteConfigFlags flags) +{ + Q_D(KConfig); + KEntryMap::EntryOptions options = convertToOptions(flags) | KEntryMap::EntryDeleted; + + const QSet groups = d->allSubGroups(aGroup); + for (const QString &group : groups) { + const QList keys = d->keyListImpl(group); + for (const QByteArray &key : keys) { + if (d->canWriteEntry(group, key)) { + d->entryMap.setEntry(group, key, QByteArray(), options); + d->bDirty = true; + } + } + } +} + +bool KConfig::isConfigWritable(bool warnUser) +{ + Q_D(KConfig); + bool allWritable = d->mBackend->isWritable(); + + if (warnUser && !allWritable) { + QString errorMsg; + errorMsg = d->mBackend->nonWritableErrorMessage(); + + // Note: We don't ask the user if we should not ask this question again because we can't save the answer. + errorMsg += QCoreApplication::translate("KConfig", "Please contact your system administrator."); + QString cmdToExec = QStandardPaths::findExecutable(QStringLiteral("kdialog")); + if (!cmdToExec.isEmpty()) { + QProcess::execute(cmdToExec, QStringList{QStringLiteral("--title"), QCoreApplication::applicationName(), QStringLiteral("--msgbox"), errorMsg}); + } + } + + d->configState = allWritable ? ReadWrite : ReadOnly; // update the read/write status + + return allWritable; +} + +bool KConfig::hasGroupImpl(const QString &aGroup) const +{ + Q_D(const KConfig); + + // No need to look for the actual group entry anymore, or for subgroups: + // a group exists if it contains any non-deleted entry. + + return d->hasNonDeletedEntries(aGroup); +} + +bool KConfigPrivate::canWriteEntry(const QString &group, QAnyStringView key, bool isDefault) const +{ + if (bFileImmutable || entryMap.getEntryOption(group, key, KEntryMap::SearchLocalized, KEntryMap::EntryImmutable)) { + return isDefault; + } + return true; +} + +void KConfigPrivate::putData(const QString &group, const char *key, const QByteArray &value, KConfigBase::WriteConfigFlags flags, bool expand) +{ + KEntryMap::EntryOptions options = convertToOptions(flags); + + if (bForceGlobal) { + options |= KEntryMap::EntryGlobal; + } + if (expand) { + options |= KEntryMap::EntryExpansion; + } + + if (value.isNull()) { // deleting entry + options |= KEntryMap::EntryDeleted; + } + + bool dirtied = entryMap.setEntry(group, key, value, options); + if (dirtied && (flags & KConfigBase::Persistent)) { + bDirty = true; + } +} + +void KConfigPrivate::revertEntry(const QString &group, QAnyStringView key, KConfigBase::WriteConfigFlags flags) +{ + KEntryMap::EntryOptions options = convertToOptions(flags); + + bool dirtied = entryMap.revertEntry(group, key, options); + if (dirtied) { + bDirty = true; + } +} + +QByteArray KConfigPrivate::lookupData(const QString &group, QAnyStringView key, KEntryMap::SearchFlags flags) const +{ + return lookupInternalEntry(group, key, flags).mValue; +} + +KEntry KConfigPrivate::lookupInternalEntry(const QString &group, QAnyStringView key, KEntryMap::SearchFlags flags) const +{ + if (bReadDefaults) { + flags |= KEntryMap::SearchDefaults; + } + const auto it = entryMap.constFindEntry(group, key, flags); + if (it == entryMap.cend()) { + return {}; + } + return it->second; +} + +QString KConfigPrivate::lookupData(const QString &group, QAnyStringView key, KEntryMap::SearchFlags flags, bool *expand) const +{ + if (bReadDefaults) { + flags |= KEntryMap::SearchDefaults; + } + return entryMap.getEntry(group, key, QString(), flags, expand); +} + +QStandardPaths::StandardLocation KConfig::locationType() const +{ + Q_D(const KConfig); + return d->resourceType; +} + +void KConfig::virtual_hook(int /*id*/, void * /*data*/) +{ + /* nothing */ +} diff --git a/src/core/kconfig.h b/src/core/kconfig.h new file mode 100644 index 0000000..25fa44f --- /dev/null +++ b/src/core/kconfig.h @@ -0,0 +1,381 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2006, 2007 Thomas Braxton + SPDX-FileCopyrightText: 2001 Waldo Bastian + SPDX-FileCopyrightText: 1999 Preston Brown + SPDX-FileCopyrightText: 1997 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIG_H +#define KCONFIG_H + +#include "kconfigbase.h" + +#include + +#include +#include +#include +#include +#include + +class KConfigGroup; +class KConfigPrivate; + +/** + * \class KConfig kconfig.h + * + * \brief The central class of the KDE configuration data system. + * + * Quickstart: + * + * Get the default application config object via KSharedConfig::openConfig(). + * + * Load a specific configuration file: + * \code + * KConfig config("/etc/kderc", KConfig::SimpleConfig); + * \endcode + * + * Load the configuration of a specific component: + * \code + * KConfig config("pluginrc"); + * \endcode + * + * In general it is recommended to use KSharedConfig instead of + * creating multiple instances of KConfig to avoid the overhead of + * separate objects or concerns about synchronizing writes to disk + * even if the configuration object is updated from multiple code paths. + * KSharedConfig provides a set of open methods as counterparts for the + * KConfig constructors. + * + * \sa KSharedConfig, KConfigGroup, the techbase HOWTO on KConfig. + */ +class KCONFIGCORE_EXPORT KConfig : public KConfigBase +{ +public: + /** + * Determines how the system-wide and user's global settings will affect + * the reading of the configuration. + * + * If CascadeConfig is selected, system-wide configuration sources are used + * to provide defaults for the settings accessed through this object, or + * possibly to override those settings in certain cases. + * + * If IncludeGlobals is selected, the kdeglobals configuration is used + * as additional configuration sources to provide defaults. Additionally + * selecting CascadeConfig will result in the system-wide kdeglobals sources + * also getting included. + * + * Note that the main configuration source overrides the cascaded sources, + * which override those provided to addConfigSources(), which override the + * global sources. The exception is that if a key or group is marked as + * being immutable, it will not be overridden. + * + * Note that all values other than IncludeGlobals and CascadeConfig are + * convenience definitions for the basic mode. + * Do @em not combine them with anything. + * @see OpenFlags + */ + enum OpenFlag { + IncludeGlobals = 0x01, ///< Blend kdeglobals into the config object. + CascadeConfig = 0x02, ///< Cascade to system-wide config files. + + SimpleConfig = 0x00, ///< Just a single config file. + NoCascade = IncludeGlobals, ///< Include user's globals, but omit system settings. + NoGlobals = CascadeConfig, ///< Cascade to system settings, but omit user's globals. + FullConfig = IncludeGlobals | CascadeConfig, ///< Fully-fledged config, including globals and cascading to system settings + }; + /** + * Stores a combination of #OpenFlag values. + */ + Q_DECLARE_FLAGS(OpenFlags, OpenFlag) + + /** + * Creates a KConfig object to manipulate a configuration file for the + * current application. + * + * If an absolute path is specified for @p file, that file will be used + * as the store for the configuration settings. If a non-absolute path + * is provided, the file will be looked for in the standard directory + * specified by type. If no path is provided, a default + * configuration file will be used based on the name of the main + * application component. + * + * @p mode determines whether the user or global settings will be allowed + * to influence the values returned by this object. See OpenFlags for + * more details. + * + * @note You probably want to use KSharedConfig::openConfig instead. + * + * @param file the name of the file. If an empty string is passed in + * and SimpleConfig is passed in for the OpenFlags, then an in-memory + * KConfig object is created which will not write out to file nor which + * requires any file in the filesystem at all. + * @param mode how global settings should affect the configuration + * options exposed by this KConfig object + * @param type The standard directory to look for the configuration + * file in + * + * @sa KSharedConfig::openConfig(const QString&, OpenFlags, QStandardPaths::StandardLocation) + */ + explicit KConfig(const QString &file = QString(), + OpenFlags mode = FullConfig, + QStandardPaths::StandardLocation type = QStandardPaths::GenericConfigLocation); + +#if KCONFIGCORE_ENABLE_DEPRECATED_SINCE(6, 3) + /** + * @internal + * + * Creates a KConfig object using the specified backend. If the backend can not + * be found or loaded, then the standard configuration parser is used as a fallback. + * + * @param file the file to be parsed + * @param backend the backend to load + * @param type where to look for the file if an absolute path is not provided + * + * @since 4.1 + * + * @deprecated since 6.3, use other constructor + */ + KCONFIGCORE_DEPRECATED_VERSION(6, 3, "Use other constructor") + KConfig(const QString &file, const QString &backend, QStandardPaths::StandardLocation type = QStandardPaths::GenericConfigLocation); +#endif + + ~KConfig() override; + + /** + * Returns the standard location enum passed to the constructor. + * Used by KSharedConfig. + * @since 5.0 + */ + QStandardPaths::StandardLocation locationType() const; + + /** + * Returns the filename used to store the configuration. + */ + QString name() const; + + /** + * @return the flags this object was opened with + * @since 5.3 + */ + OpenFlags openFlags() const; + + /// @reimp + bool sync() override; + + /// Returns true if sync has any changes to write out. + /// @since 4.12 + bool isDirty() const; + + /// @reimp + void markAsClean() override; + + /// @{ configuration object state + /// @reimp + AccessMode accessMode() const override; + + /** + * Whether the configuration can be written to. + * + * If @p warnUser is true and the configuration cannot be + * written to (ie: this method returns @c false), a warning + * message box will be shown to the user telling them to + * contact their system administrator to get the problem fixed. + * + * The most likely cause for this method returning @c false + * is that the user does not have write permission for the + * configuration file. + * + * @param warnUser whether to show a warning message to the user + * if the configuration cannot be written to + * + * @returns true if the configuration can be written to, false + * if the configuration cannot be written to + */ + bool isConfigWritable(bool warnUser); + /// @} + + /** + * Copies all entries from this config object to a new config + * object that will save itself to @p file. + * + * The configuration will not actually be saved to @p file + * until the returned object is destroyed, or sync() is called + * on it. + * + * Do not forget to delete the returned KConfig object if + * @p config was 0. + * + * @param file the new config object will save itself to + * @param config if not 0, copy to the given KConfig object rather + * than creating a new one + * + * @return @p config if it was set, otherwise a new KConfig object + */ + KConfig *copyTo(const QString &file, KConfig *config = nullptr) const; + + /** + * Ensures that the configuration file contains a certain update. + * + * If the configuration file does not contain the update @p id + * as contained in @p updateFile, kconf_update is run to update + * the configuration file. + * + * If you install config update files with critical fixes + * you may wish to use this method to verify that a critical + * update has indeed been performed to catch the case where + * a user restores an old config file from backup that has + * not been updated yet. + * + * @param id the update to check + * @param updateFile the file containing the update + */ + void checkUpdate(const QString &id, const QString &updateFile); + + /** + * Updates the state of this object to match the persistent storage. + * Note that if this object has pending changes, this method will + * call sync() first so as not to lose those changes. + */ + void reparseConfiguration(); + + /// @{ extra config files + /** + * Adds the list of configuration sources to the merge stack. + * + * Currently only files are accepted as configuration sources. + * + * The first entry in @p sources is treated as the most general and will + * be overridden by the second entry. The settings in the final entry + * in @p sources will override all the other sources provided in the list. + * + * The settings in @p sources will also be overridden by the sources + * provided by any previous calls to addConfigSources(). + * + * The settings in the global configuration sources will be overridden by + * the sources provided to this method (@see IncludeGlobals). + * All the sources provided to any call to this method will be overridden + * by any files that cascade from the source provided to the constructor + * (@see CascadeConfig), which will in turn be + * overridden by the source provided to the constructor. + * + * Note that only the most specific file, ie: the file provided to the + * constructor, will be written to by this object. + * + * The state is automatically updated by this method, so there is no need to call + * reparseConfiguration(). + * + * @param sources A list of extra config sources. + */ + void addConfigSources(const QStringList &sources); + + /** + * Returns a list of the additional configuration sources used in this object + */ + QStringList additionalConfigSources() const; + + /// @} + /// @{ locales + /** + * Returns the current locale. + */ + QString locale() const; + /** + * Sets the locale to @p aLocale. + * + * The global locale is used by default. + * + * @note If set to the empty string, @b no locale will be matched. This effectively disables + * reading translated entries. + * + * @return @c true if locale was changed, @c false if the call had no + * effect (eg: @p aLocale was already the current locale for this + * object) + */ + bool setLocale(const QString &aLocale); + /// @} + + /// @{ defaults + /** + * When set, all readEntry calls return the system-wide (default) values + * instead of the user's settings. + * + * This is off by default. + * + * @param b whether to read the system-wide defaults instead of the + * user's settings + */ + void setReadDefaults(bool b); + /** + * @returns @c true if the system-wide defaults will be read instead of the + * user's settings + */ + bool readDefaults() const; + /// @} + + /// @{ immutability + /// @reimp + bool isImmutable() const override; + /// @} + + /// @reimp + QStringList groupList() const override; + + /** + * Returns a map (tree) of entries in a particular group. + * + * The entries are all returned as strings. + * + * @param aGroup The group to get entries from. + * + * @return A map of entries in the group specified, indexed by key. + * The returned map may be empty if the group is empty, or not found. + * @see QMap + */ + QMap entryMap(const QString &aGroup = QString()) const; + + /** + * Sets the name of the application config file. + * @since 5.0 + */ + static void setMainConfigName(const QString &str); + + /** + * Get the name of application config file. + * @since 5.93 + */ + static QString mainConfigName(); + +protected: + bool hasGroupImpl(const QString &groupName) const override; + KConfigGroup groupImpl(const QString &groupName) override; + const KConfigGroup groupImpl(const QString &groupName) const override; + void deleteGroupImpl(const QString &groupName, WriteConfigFlags flags = Normal) override; + bool isGroupImmutableImpl(const QString &groupName) const override; + + friend class KConfigGroup; + friend class KConfigGroupPrivate; + friend class KSharedConfig; + + /** Virtual hook, used to add new "virtual" functions while maintaining + * binary compatibility. Unused in this class. + */ + void virtual_hook(int id, void *data) override; + + KConfigPrivate *const d_ptr; + + KCONFIGCORE_NO_EXPORT explicit KConfig(KConfigPrivate &d); + +private: + friend class KConfigTest; + + Q_DISABLE_COPY(KConfig) + + Q_DECLARE_PRIVATE(KConfig) +}; +Q_DECLARE_OPERATORS_FOR_FLAGS(KConfig::OpenFlags) + +#endif // KCONFIG_H diff --git a/src/core/kconfig_p.h b/src/core/kconfig_p.h new file mode 100644 index 0000000..64fa00b --- /dev/null +++ b/src/core/kconfig_p.h @@ -0,0 +1,122 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2006, 2007 Thomas Braxton + SPDX-FileCopyrightText: 2001 Waldo Bastian + SPDX-FileCopyrightText: 1999 Preston Brown + SPDX-FileCopyrightText: 1997 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIG_P_H +#define KCONFIG_P_H + +#include "kconfig.h" +#include "kconfigdata_p.h" +#include "kconfiggroup.h" +#include "kconfigini_p.h" + +#include +#include +#include +#include + +class KConfigPrivate +{ + friend class KConfig; + +public: + KConfig::OpenFlags openFlags; + QStandardPaths::StandardLocation resourceType; + + void changeFileName(const QString &fileName); + + // functions for KConfigGroup + bool canWriteEntry(const QString &group, QAnyStringView key, bool isDefault = false) const; + QString lookupData(const QString &group, QAnyStringView key, KEntryMap::SearchFlags flags, bool *expand) const; + QByteArray lookupData(const QString &group, QAnyStringView key, KEntryMap::SearchFlags flags) const; + KEntry lookupInternalEntry(const QString &group, QAnyStringView key, KEntryMap::SearchFlags flags) const; + + void putData(const QString &groupName, const char *key, const QByteArray &value, KConfigBase::WriteConfigFlags flags, bool expand = false); + void setEntryData(const QString &groupName, const char *key, const QByteArray &value, KEntryMap::EntryOptions flags) + { + if (entryMap.setEntry(groupName, key, value, flags)) { + bDirty = true; + } + } + void revertEntry(const QString &group, QAnyStringView key, KConfigBase::WriteConfigFlags flags); + /** + * Returns a list of keys used with entries in a particular group. + * + * This does not include keys of deleted entries or those with default values. + * I.e. all the keys for which there will be also entries in KConfig::entryMap(). + * + * @return A sorted list of keys in the group specified. + * The returned list may be empty if the group is empty, or not found. + */ + QStringList usedKeyList(const QString &theGroup) const; + QStringList groupList(const QString &groupName) const; + // copies the entries from @p source to @p otherGroup changing all occurrences + // of @p source with @p destination + void copyGroup(const QString &source, const QString &destination, KConfigGroup *otherGroup, KConfigBase::WriteConfigFlags flags) const; + QList keyListImpl(const QString &groupName) const; + QSet allSubGroups(const QString &parentGroupName) const; + bool hasNonDeletedEntries(const QString &groupName) const; + + void notifyClients(const QHash &changes, const QString &path); + + static QString expandString(const QString &value); + +protected: + QExplicitlySharedDataPointer mBackend; + + KConfigPrivate(KConfig::OpenFlags flags, QStandardPaths::StandardLocation type); + + virtual ~KConfigPrivate() + { + } + +private: + bool bDirty : 1; + bool bReadDefaults : 1; + bool bFileImmutable : 1; + bool bForceGlobal : 1; + bool bSuppressGlobal : 1; + + static bool mappingsRegistered; + + KEntryMap entryMap; + QString backendType; + QStack extraFiles; + + QString locale; + QString fileName; + QString etc_kderc; + KConfigBase::AccessMode configState; + + bool wantGlobals() const + { + return openFlags & KConfig::IncludeGlobals && !bSuppressGlobal; + } + bool wantDefaults() const + { + return openFlags & KConfig::CascadeConfig; + } + bool isSimple() const + { + return openFlags == KConfig::SimpleConfig; + } + bool isReadOnly() const + { + return configState == KConfig::ReadOnly; + } + + bool setLocale(const QString &aLocale); + QStringList getGlobalFiles() const; + void parseGlobalFiles(); + void parseConfigFiles(); + void initCustomized(KConfig *); + bool lockLocal(); +}; + +#endif // KCONFIG_P_H diff --git a/src/core/kconfigbase.cpp b/src/core/kconfigbase.cpp new file mode 100644 index 0000000..4d027ee --- /dev/null +++ b/src/core/kconfigbase.cpp @@ -0,0 +1,51 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2006, 2007 Thomas Braxton + SPDX-FileCopyrightText: 1999 Preston Brown + SPDX-FileCopyrightText: 1997-1999 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kconfigbase.h" + +#include "kconfiggroup.h" + +#include + +bool KConfigBase::hasGroup(const QString &group) const +{ + return hasGroupImpl(group); +} + +KConfigGroup KConfigBase::group(const QString &str) +{ + return groupImpl(str); +} + +const KConfigGroup KConfigBase::group(const QString &s) const +{ + return groupImpl(s); +} + +void KConfigBase::deleteGroup(const QString &group, WriteConfigFlags flags) +{ + deleteGroupImpl(group, flags); +} + +bool KConfigBase::isGroupImmutable(const QString &aGroup) const +{ + return isGroupImmutableImpl(aGroup); +} + +KConfigBase::~KConfigBase() +{ +} + +KConfigBase::KConfigBase() +{ +} + +void KConfigBase::virtual_hook(int, void *) +{ +} diff --git a/src/core/kconfigbase.h b/src/core/kconfigbase.h new file mode 100644 index 0000000..3d2271c --- /dev/null +++ b/src/core/kconfigbase.h @@ -0,0 +1,183 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2006, 2007 Thomas Braxton + SPDX-FileCopyrightText: 2001 Waldo Bastian + SPDX-FileCopyrightText: 1999 Preston Brown + SPDX-FileCopyrightText: 1997 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGBASE_H +#define KCONFIGBASE_H + +#include + +#include +#include + +class KConfigGroup; +class KConfigBasePrivate; + +/** + * \class KConfigBase kconfigbase.h + * \brief Interface to interact with configuration. + * + * KConfigBase allows a component of an application to persists its configuration + * without the component knowing if it is storing the configuration into a top + * level KConfig or a KConfigGroup inside a KConfig instance. + */ +class KCONFIGCORE_EXPORT KConfigBase +{ +public: + /** + * Flags to control write entry + * @see WriteConfigFlags + */ + enum WriteConfigFlag { + Persistent = 0x01, + /**< + * Save this entry when saving the config object. + */ + Global = 0x02, + /**< + * Save the entry to the global %KDE config file instead of the + * application specific config file. + */ + Localized = 0x04, + /**< + * Add the locale tag to the key when writing it. + */ + Notify = 0x08 | Persistent, + /**< + * Notify remote KConfigWatchers of changes (requires DBus support) + * Implied persistent + * @since 5.51 + */ + Normal = Persistent, + /**< + * Save the entry to the application specific config file without + * a locale tag. This is the default. + */ + + }; + /** + * Stores a combination of #WriteConfigFlag values. + */ + Q_DECLARE_FLAGS(WriteConfigFlags, WriteConfigFlag) + + /** + * Destructs the KConfigBase object. + */ + virtual ~KConfigBase(); + + /** + * Returns a list of groups that are known about. + * + * @return The list of groups. + **/ + virtual QStringList groupList() const = 0; + + /** + * Returns true if the specified group is known about. + * + * @param group name of group to search for + * @return true if the group exists. + */ + bool hasGroup(const QString &group) const; + + /** + * Returns an object for the named subgroup. + * + * @param group the group to open. Pass an empty string here to the KConfig + * object to obtain a handle on the root group. + * @return config group object for the given group name. + */ + KConfigGroup group(const QString &group); + + /** + * Const overload for group(const QString&) + */ + const KConfigGroup group(const QString &group) const; + + /** + * Delete @p group. + * This marks @p group as @em deleted in the config object. This effectively + * removes any cascaded values from config files earlier in the stack. + */ + void deleteGroup(const QString &group, WriteConfigFlags flags = Normal); + + /** + * Syncs the configuration object that this group belongs to. + * Unrelated concurrent changes to the same file are merged and thus + * not overwritten. Note however, that this object is @em not automatically + * updated with those changes. + */ + virtual bool sync() = 0; + + /** + * Reset the dirty flags of all entries in the entry map, so the + * values will not be written to disk on a later call to sync(). + */ + virtual void markAsClean() = 0; + + /** + * Possible return values for accessMode(). + */ + enum AccessMode { + NoAccess, + ReadOnly, + ReadWrite, + }; + + /** + * Returns the access mode of the app-config object. + * + * Possible return values + * are NoAccess (the application-specific config file could not be + * opened neither read-write nor read-only), ReadOnly (the + * application-specific config file is opened read-only, but not + * read-write) and ReadWrite (the application-specific config + * file is opened read-write). + * + * @return the access mode of the app-config object + */ + virtual AccessMode accessMode() const = 0; + + /** + * Checks whether this configuration object can be modified. + * @return whether changes may be made to this configuration object. + */ + virtual bool isImmutable() const = 0; + + /** + * Can changes be made to the entries in @p group? + * + * @param group The group to check for immutability. + * @return @c false if the entries in @p group can be modified, otherwise @c true + */ + bool isGroupImmutable(const QString &group) const; + +protected: + KConfigBase(); + + /// @param groupName name of group + virtual bool hasGroupImpl(const QString &groupName) const = 0; + /// @param groupName name of group + virtual KConfigGroup groupImpl(const QString &groupName) = 0; + /// @param groupName name of group + virtual const KConfigGroup groupImpl(const QString &groupName) const = 0; + /// @param groupName name of group + virtual void deleteGroupImpl(const QString &groupName, WriteConfigFlags flags = Normal) = 0; + /// @param groupName name of group + virtual bool isGroupImmutableImpl(const QString &groupName) const = 0; + + /** Virtual hook, used to add new "virtual" functions while maintaining + * binary compatibility. Unused in this class. + */ + virtual void virtual_hook(int id, void *data); +}; + +Q_DECLARE_OPERATORS_FOR_FLAGS(KConfigBase::WriteConfigFlags) + +#endif // KCONFIG_H diff --git a/src/core/kconfigbase_p.h b/src/core/kconfigbase_p.h new file mode 100644 index 0000000..97ee1df --- /dev/null +++ b/src/core/kconfigbase_p.h @@ -0,0 +1,17 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 1999 Preston Brown + SPDX-FileCopyrightText: 1997 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGBASE_P_H +#define KCONFIGBASE_P_H + +#include + +class KConfigBasePrivate : public QSharedData +{ +}; +#endif diff --git a/src/core/kconfigconversioncheck_p.h b/src/core/kconfigconversioncheck_p.h new file mode 100644 index 0000000..5d07ea4 --- /dev/null +++ b/src/core/kconfigconversioncheck_p.h @@ -0,0 +1,114 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2006 Thomas Braxton + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIG_CONVERSION_CHECK_P_H +#define KCONFIG_CONVERSION_CHECK_P_H + +#include +#include +#include +#include +#include +#include +#include + +class QColor; +class QFont; + +namespace KConfigConversionCheck +{ +// used to distinguish between supported/unsupported types +struct supported { +}; +struct unsupported { +}; + +// traits type class to define support for constraints +template +struct QVconvertible { + typedef unsupported toQString; + typedef unsupported toQVariant; +}; + +// constraint classes +template +struct type_toQString { + void constraint() + { + supported x = y; + Q_UNUSED(x); + } + typename QVconvertible::toQString y; +}; + +template +struct type_toQVariant { + void constraint() + { + supported x = y; + Q_UNUSED(x); + } + typename QVconvertible::toQVariant y; +}; + +// check if T is convertible to QString thru QVariant +// if not supported can't be used in QList functions +template +inline void to_QString() +{ + void (type_toQString::*x)() = &type_toQString::constraint; + Q_UNUSED(x); +} + +// check if T is convertible to QVariant & supported in readEntry/writeEntry +template +inline void to_QVariant() +{ + void (type_toQVariant::*x)() = &type_toQVariant::constraint; + Q_UNUSED(x); +} + +// define for all types handled in readEntry/writeEntry +// string_support - is supported by QVariant(type).toString(), +// can be used in QList functions +// variant_support - has a QVariant constructor +#define QVConversions(type, string_support, variant_support) \ + template<> \ + struct QVconvertible { \ + typedef string_support toQString; \ + typedef variant_support toQVariant; \ + } + +// The only types needed here are the types handled in readEntry/writeEntry +// the default QVconvertible will take care of the rest. +QVConversions(bool, supported, supported); +QVConversions(int, supported, supported); +QVConversions(unsigned int, supported, supported); +QVConversions(long long, supported, supported); +QVConversions(unsigned long long, supported, supported); +QVConversions(float, supported, supported); +QVConversions(double, supported, supported); +QVConversions(QString, supported, supported); +QVConversions(QColor, unsupported, supported); +QVConversions(QFont, supported, supported); +QVConversions(QDateTime, unsupported, supported); +QVConversions(QDate, unsupported, supported); +QVConversions(QSize, unsupported, supported); +QVConversions(QRect, unsupported, supported); +QVConversions(QPoint, unsupported, supported); +QVConversions(QSizeF, unsupported, supported); +QVConversions(QRectF, unsupported, supported); +QVConversions(QPointF, unsupported, supported); +QVConversions(QByteArray, supported, supported); +QVConversions(QStringList, unsupported, supported); +QVConversions(QVariantList, unsupported, supported); +QVConversions(QUrl, supported, supported); +QVConversions(QList, unsupported, supported); +QVConversions(QUuid, supported, supported); +} + +#endif diff --git a/src/core/kconfigdata.cpp b/src/core/kconfigdata.cpp new file mode 100644 index 0000000..2478ac9 --- /dev/null +++ b/src/core/kconfigdata.cpp @@ -0,0 +1,337 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2006, 2007 Thomas Braxton + SPDX-FileCopyrightText: 1999-2000 Preston Brown + SPDX-FileCopyrightText: 1996-2000 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kconfigdata_p.h" + +QDebug operator<<(QDebug dbg, const KEntryKey &key) +{ + dbg.nospace() << "[" << key.mGroup << ", " << key.mKey << (key.bLocal ? " localized" : "") << (key.bDefault ? " default" : "") << (key.bRaw ? " raw" : "") + << "]"; + return dbg.space(); +} + +QDebug operator<<(QDebug dbg, const KEntry &entry) +{ + dbg.nospace() << "[" << entry.mValue << (entry.bDirty ? " dirty" : "") << (entry.bGlobal ? " global" : "") + << (entry.bOverridesGlobal ? " overrides global" : "") << (entry.bImmutable ? " immutable" : "") << (entry.bDeleted ? " deleted" : "") + << (entry.bReverted ? " reverted" : "") << (entry.bExpand ? " expand" : "") << "]"; + + return dbg.space(); +} + +KEntryMapIterator KEntryMap::findExactEntry(const QString &group, QAnyStringView key, KEntryMap::SearchFlags flags) +{ + const KEntryKeyView theKey(group, key, bool(flags & SearchLocalized), bool(flags & SearchDefaults)); + return find(theKey); +} + +KEntryMapIterator KEntryMap::findEntry(const QString &group, QAnyStringView key, KEntryMap::SearchFlags flags) +{ + KEntryKeyView theKey(group, key, false, bool(flags & SearchDefaults)); + + // try the localized key first + if (flags & SearchLocalized) { + theKey.bLocal = true; + + iterator it = find(theKey); + if (it != end()) { + return it; + } + + theKey.bLocal = false; + } + return find(theKey); +} + +KEntryMapConstIterator KEntryMap::constFindEntry(const QString &group, QAnyStringView key, SearchFlags flags) const +{ + KEntryKeyView theKey(group, key, false, bool(flags & SearchDefaults)); + + // try the localized key first + if (flags & SearchLocalized) { + theKey.bLocal = true; + + auto it = find(theKey); + if (it != cend()) { + return it; + } + + theKey.bLocal = false; + } + + return find(theKey); +} + +bool KEntryMap::setEntry(const QString &group, const QByteArray &key, const QByteArray &value, KEntryMap::EntryOptions options) +{ + KEntryKey k; + KEntry e; + bool newKey = false; + + const iterator it = findExactEntry(group, key, SearchFlags(options >> 16)); + + if (key.isEmpty()) { // inserting a group marker + k.mGroup = group; + e.bImmutable = (options & EntryImmutable); + if (options & EntryDeleted) { + qWarning("Internal KConfig error: cannot mark groups as deleted"); + } + if (it == end()) { + insert_or_assign(k, e); + return true; + } else if (it->second == e) { + return false; + } + + it->second = e; + return true; + } + + if (it != end()) { + if (it->second.bImmutable) { + return false; // we cannot change this entry. Inherits group immutability. + } + k = it->first; + e = it->second; + // qDebug() << "found existing entry for key" << k; + // If overridden entry is global and not default. And it's overridden by a non global + if (e.bGlobal && !(options & EntryGlobal) && !k.bDefault) { + e.bOverridesGlobal = true; + } + } else { + // make sure the group marker is in the map + KEntryMap const *that = this; + auto cit = that->constFindEntry(group); + if (cit == cend()) { + insert_or_assign(KEntryKey(group), KEntry()); + } else if (cit->second.bImmutable) { + return false; // this group is immutable, so we cannot change this entry. + } + + k = KEntryKey(group, key); + newKey = true; + } + + // set these here, since we may be changing the type of key from the one we found + k.bLocal = (options & EntryLocalized); + k.bDefault = (options & EntryDefault); + k.bRaw = (options & EntryRawKey); + + e.mValue = value; + e.bDirty = e.bDirty || (options & EntryDirty); + e.bNotify = e.bNotify || (options & EntryNotify); + + e.bGlobal = (options & EntryGlobal); // we can't use || here, because changes to entries in + // kdeglobals would be written to kdeglobals instead + // of the local config file, regardless of the globals flag + e.bImmutable = e.bImmutable || (options & EntryImmutable); + if (value.isNull()) { + e.bDeleted = e.bDeleted || (options & EntryDeleted); + } else { + e.bDeleted = false; // setting a value to a previously deleted entry + } + e.bExpand = (options & EntryExpansion); + e.bReverted = false; + if (options & EntryLocalized) { + e.bLocalizedCountry = (options & EntryLocalizedCountry); + } else { + e.bLocalizedCountry = false; + } + + if (newKey) { + // qDebug() << "inserting" << k << "=" << value; + insert_or_assign(k, e); + if (k.bDefault) { + k.bDefault = false; + // qDebug() << "also inserting" << k << "=" << value; + insert_or_assign(k, e); + } + // TODO check for presence of unlocalized key + return true; + } + + // KEntry e2 = it->second; + if (options & EntryLocalized) { + // fast exit checks for cases where the existing entry is more specific + const KEntry &e2 = it->second; + if (e2.bLocalizedCountry && !e.bLocalizedCountry) { + // lang_COUNTRY > lang + return false; + } + } + + if (it->second != e) { + // qDebug() << "changing" << k << "from" << it->second.mValue << "to" << value << e; + it->second = e; + if (k.bDefault) { + KEntryKey nonDefaultKey(k); + nonDefaultKey.bDefault = false; + insert_or_assign(nonDefaultKey, e); + } + if (!(options & EntryLocalized)) { + KEntryKey theKey(group, key, true, false); + // qDebug() << "non-localized entry, remove localized one:" << theKey; + erase(theKey); + if (k.bDefault) { + theKey.bDefault = true; + erase(theKey); + } + } + return true; + } + + // qDebug() << k << "was already set to" << e.mValue; + if (!(options & EntryLocalized)) { + // qDebug() << "unchanged non-localized entry, remove localized one."; + KEntryKey theKey(group, key, true, false); + bool ret = false; + iterator cit = find(theKey); + if (cit != end()) { + erase(cit); + ret = true; + } + if (k.bDefault) { + theKey.bDefault = true; + iterator cit = find(theKey); + if (cit != end()) { + erase(cit); + return true; + } + } + return ret; + } + + // qDebug() << "localized entry, unchanged, return false"; + // When we are writing a default, we know that the non- + // default is the same as the default, so we can simply + // use the same branch. + return false; +} + +QString KEntryMap::getEntry(const QString &group, QAnyStringView key, const QString &defaultValue, KEntryMap::SearchFlags flags, bool *expand) const +{ + const auto it = constFindEntry(group, key, flags); + QString theValue = defaultValue; + + if (it != cend() && !it->second.bDeleted) { + if (!it->second.mValue.isNull()) { + const QByteArray data = it->second.mValue; + theValue = QString::fromUtf8(data.constData(), data.length()); + if (expand) { + *expand = it->second.bExpand; + } + } + } + + return theValue; +} + +bool KEntryMap::hasEntry(const QString &group, QAnyStringView key, KEntryMap::SearchFlags flags) const +{ + const auto it = constFindEntry(group, key, flags); + if (it == cend()) { + return false; + } + if (it->second.bDeleted) { + return false; + } + if (key.isNull()) { // looking for group marker + return it->second.mValue.isNull(); + } + // if it->bReverted, we'll just return true; the real answer depends on lookup up with SearchDefaults, though. + return true; +} + +bool KEntryMap::getEntryOption(const KEntryMapConstIterator &it, KEntryMap::EntryOption option) const +{ + if (it == cend()) { + return false; + } + + switch (option) { + case EntryDirty: + return it->second.bDirty; + case EntryLocalized: + return it->first.bLocal; + case EntryGlobal: + return it->second.bGlobal; + case EntryImmutable: + return it->second.bImmutable; + case EntryDeleted: + return it->second.bDeleted; + case EntryExpansion: + return it->second.bExpand; + case EntryNotify: + return it->second.bNotify; + default: + return false; + } +} + +void KEntryMap::setEntryOption(KEntryMapIterator it, KEntryMap::EntryOption option, bool bf) +{ + if (it == end()) { + return; + } + + switch (option) { + case EntryDirty: + it->second.bDirty = bf; + return; + case EntryGlobal: + it->second.bGlobal = bf; + return; + case EntryImmutable: + it->second.bImmutable = bf; + return; + case EntryDeleted: + it->second.bDeleted = bf; + return; + case EntryExpansion: + it->second.bExpand = bf; + return; + case EntryNotify: + it->second.bNotify = bf; + return; + default: + return; // fall through + } +} + +bool KEntryMap::revertEntry(const QString &group, QAnyStringView key, KEntryMap::EntryOptions options, KEntryMap::SearchFlags flags) +{ + Q_ASSERT((flags & KEntryMap::SearchDefaults) == 0); + iterator entry = findEntry(group, key, flags); + if (entry == end()) { + return false; + } + + // qDebug() << "reverting" << entry->first << " = " << entry->mValue; + if (entry->second.bReverted) { // already done before + return false; + } + + KEntryKey defaultKey(entry->first); + defaultKey.bDefault = true; + // qDebug() << "looking up default entry with key=" << defaultKey; + const auto defaultEntry = find(defaultKey); + if (defaultEntry != cend()) { + Q_ASSERT(defaultEntry->first.bDefault); + // qDebug() << "found, update entry"; + entry->second = defaultEntry->second; // copy default value, for subsequent lookups + } else { + entry->second.mValue = QByteArray(); + } + entry->second.bNotify = entry->second.bNotify || (options & EntryNotify); + entry->second.bDirty = true; + entry->second.bReverted = true; // skip it when writing out to disk + + // qDebug() << "Here's what we have now:" << *this; + return true; +} diff --git a/src/core/kconfigdata_p.h b/src/core/kconfigdata_p.h new file mode 100644 index 0000000..8f52bdb --- /dev/null +++ b/src/core/kconfigdata_p.h @@ -0,0 +1,386 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2006, 2007 Thomas Braxton + SPDX-FileCopyrightText: 1999-2000 Preston Brown + SPDX-FileCopyrightText: 1996-2000 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGDATA_P_H +#define KCONFIGDATA_P_H + +#include +#include +#include +#include + +/** + * map/dict/list config node entry. + * @internal + */ +struct KEntry { + /** Constructor. @internal */ + KEntry() + : mValue() + , bDirty(false) + , bGlobal(false) + , bImmutable(false) + , bDeleted(false) + , bExpand(false) + , bReverted(false) + , bLocalizedCountry(false) + , bNotify(false) + , bOverridesGlobal(false) + { + } + /** @internal */ + QByteArray mValue; + /** + * Must the entry be written back to disk? + */ + bool bDirty : 1; + /** + * Entry should be written to the global config file + */ + bool bGlobal : 1; + /** + * Entry can not be modified. + */ + bool bImmutable : 1; + /** + * Entry has been deleted. + */ + bool bDeleted : 1; + /** + * Whether to apply dollar expansion or not. + */ + bool bExpand : 1; + /** + * Entry has been reverted to its default value (from a more global file). + */ + bool bReverted : 1; + /** + * Entry is for a localized key. If @c false the value references just language e.g. "de", + * if @c true the value references language and country, e.g. "de_DE". + **/ + bool bLocalizedCountry : 1; + + bool bNotify : 1; + + /** + * Entry will need to be written on a non global file even if it matches default value + */ + bool bOverridesGlobal : 1; +}; + +Q_DECLARE_TYPEINFO(KEntry, Q_RELOCATABLE_TYPE); + +// These operators are used to check whether an entry which is about +// to be written equals the previous value. As such, this intentionally +// omits the dirty/notify flag from the comparison. +inline bool operator==(const KEntry &k1, const KEntry &k2) +{ + /* clang-format off */ + return k1.bGlobal == k2.bGlobal + && k1.bImmutable == k2.bImmutable + && k1.bDeleted == k2.bDeleted + && k1.bExpand == k2.bExpand + && k1.mValue == k2.mValue; + /* clang-format on */ +} + +inline bool operator!=(const KEntry &k1, const KEntry &k2) +{ + return !(k1 == k2); +} + +/** + * key structure holding both the actual key and the group + * to which it belongs. + * @internal + */ +struct KEntryKey { + /** Constructor. @internal */ + KEntryKey(const QString &_group = QString(), const QByteArray &_key = QByteArray(), bool isLocalized = false, bool isDefault = false) + : mGroup(_group) + , mKey(_key) + , bLocal(isLocalized) + , bDefault(isDefault) + , bRaw(false) + { + } + /** + * The "group" to which this EntryKey belongs + */ + QString mGroup; + /** + * The _actual_ key of the entry in question + */ + QByteArray mKey; + /** + * Entry is localised or not + */ + bool bLocal : 1; + /** + * Entry indicates if this is a default value. + */ + bool bDefault : 1; + /** @internal + * Key is a raw unprocessed key. + * @warning this should only be set during merging, never for normal use. + */ + bool bRaw : 1; +}; + +Q_DECLARE_TYPEINFO(KEntryKey, Q_RELOCATABLE_TYPE); + +/** + * Compares two KEntryKeys (needed for std::map). The order is localized, localized-default, + * non-localized, non-localized-default + * @internal + */ +inline bool operator<(const KEntryKey &k1, const KEntryKey &k2) +{ + int result = k1.mGroup.compare(k2.mGroup); + if (result != 0) { + return result < 0; + } + + result = k1.mKey.compare(k2.mKey); + if (result != 0) { + return result < 0; + } + + if (k1.bLocal != k2.bLocal) { + return k1.bLocal; + } + return (!k1.bDefault && k2.bDefault); +} + +/** + * Light-weight view variant of KEntryKey. + * Used for look-up in the map. + * @internal + */ +struct KEntryKeyView { + /** Constructor. @internal */ + KEntryKeyView(QStringView _group, QAnyStringView _key, bool isLocalized = false, bool isDefault = false) + : mGroup(_group) + , mKey(_key) + , bLocal(isLocalized) + , bDefault(isDefault) + { + } + /** + * The "group" to which this EntryKey belongs + */ + const QStringView mGroup; + /** + * The _actual_ key of the entry in question + */ + const QAnyStringView mKey; + /** + * Entry is localised or not + */ + bool bLocal : 1; + /** + * Entry indicates if this is a default value. + */ + bool bDefault : 1; +}; + +template +bool compareEntryKeyViews(const TEntryKey1 &k1, const TEntryKey2 &k2) +{ + int result = k1.mGroup.compare(k2.mGroup); + if (result != 0) { + return result < 0; + } + + result = QAnyStringView::compare(k1.mKey, k2.mKey); + if (result != 0) { + return result < 0; + } + + if (k1.bLocal != k2.bLocal) { + return k1.bLocal; + } + return (!k1.bDefault && k2.bDefault); +} + +inline bool operator<(const KEntryKeyView &k1, const KEntryKey &k2) +{ + return compareEntryKeyViews(k1, k2); +} + +inline bool operator<(const KEntryKey &k1, const KEntryKeyView &k2) +{ + return compareEntryKeyViews(k1, k2); +} + +/** + * Struct to use as Compare type with std::map. + * To enable usage of KEntryKeyView for look-up in the map + * via the template find() overloads. + * @internal + */ +struct KEntryKeyCompare { + using is_transparent = void; + + bool operator()(const KEntryKey &k1, const KEntryKey &k2) const + { + return (k1 < k2); + } + + bool operator()(const KEntryKeyView &k1, const KEntryKey &k2) const + { + return (k1 < k2); + } + + bool operator()(const KEntryKey &k1, const KEntryKeyView &k2) const + { + return (k1 < k2); + } +}; + +/** + * Returns the minimum key that has @a mGroup == @p group. + * + * @note The returned "minimum key" is consistent with KEntryKey's operator<(). + * The return value of this function can be passed to KEntryMap::lowerBound(). + */ +inline KEntryKeyView minimumGroupKeyView(const QString &group) +{ + return KEntryKeyView(group, QAnyStringView{}, true, false); +} + +QDebug operator<<(QDebug dbg, const KEntryKey &key); +QDebug operator<<(QDebug dbg, const KEntry &entry); + +/** + * \relates KEntry + * type specifying a map of entries (key,value pairs). + * The keys are actually a key in a particular config file group together + * with the group name. + * @internal + */ +class KEntryMap : public std::map +{ +public: + enum SearchFlag { + SearchDefaults = 1, + SearchLocalized = 2, + }; + Q_DECLARE_FLAGS(SearchFlags, SearchFlag) + + enum EntryOption { + EntryDirty = 1, + EntryGlobal = 2, + EntryImmutable = 4, + EntryDeleted = 8, + EntryExpansion = 16, + EntryRawKey = 32, + EntryLocalizedCountry = 64, + EntryNotify = 128, + EntryDefault = (SearchDefaults << 16), + EntryLocalized = (SearchLocalized << 16), + }; + Q_DECLARE_FLAGS(EntryOptions, EntryOption) + + iterator findExactEntry(const QString &group, QAnyStringView key = QAnyStringView(), SearchFlags flags = SearchFlags()); + + iterator findEntry(const QString &group, QAnyStringView key = QAnyStringView(), SearchFlags flags = SearchFlags()); + + const_iterator findEntry(const QString &group, QAnyStringView key = QAnyStringView(), SearchFlags flags = SearchFlags()) const + { + return constFindEntry(group, key, flags); + } + + const_iterator constFindEntry(const QString &group, QAnyStringView key = QAnyStringView(), SearchFlags flags = SearchFlags()) const; + + /** + * Returns true if the entry gets dirtied or false in other case + */ + bool setEntry(const QString &group, const QByteArray &key, const QByteArray &value, EntryOptions options); + + void setEntry(const QString &group, const QByteArray &key, const QString &value, EntryOptions options) + { + setEntry(group, key, value.toUtf8(), options); + } + + QString getEntry(const QString &group, + QAnyStringView key, + const QString &defaultValue = QString(), + SearchFlags flags = SearchFlags(), + bool *expand = nullptr) const; + + bool hasEntry(const QString &group, QAnyStringView key = QAnyStringView(), SearchFlags flags = SearchFlags()) const; + + bool getEntryOption(const const_iterator &it, EntryOption option) const; + bool getEntryOption(const QString &group, QAnyStringView key, SearchFlags flags, EntryOption option) const + { + return getEntryOption(findEntry(group, key, flags), option); + } + + void setEntryOption(iterator it, EntryOption option, bool bf); + void setEntryOption(const QString &group, QAnyStringView key, SearchFlags flags, EntryOption option, bool bf) + { + setEntryOption(findEntry(group, key, flags), option, bf); + } + + bool revertEntry(const QString &group, QAnyStringView key, EntryOptions options, SearchFlags flags = SearchFlags()); + + template + void forEachEntryWhoseGroupStartsWith(const QString &groupPrefix, ConstIteratorUser callback) const + { + for (auto it = lower_bound(minimumGroupKeyView(groupPrefix)), end = cend(); it != end && it->first.mGroup.startsWith(groupPrefix); ++it) { + callback(it); + } + } + + template + bool anyEntryWhoseGroupStartsWith(const QString &groupPrefix, ConstIteratorPredicate predicate) const + { + for (auto it = lower_bound(minimumGroupKeyView(groupPrefix)), end = cend(); it != end && it->first.mGroup.startsWith(groupPrefix); ++it) { + if (predicate(it)) { + return true; + } + } + return false; + } + + template + void forEachEntryOfGroup(const QString &theGroup, ConstIteratorUser callback) const + { + const auto theEnd = cend(); + auto it = constFindEntry(theGroup); + if (it != theEnd) { + ++it; // advance past the special group entry marker + + for (; (it != theEnd) && (it->first.mGroup == theGroup); ++it) { + callback(it); + } + } + } +}; +Q_DECLARE_OPERATORS_FOR_FLAGS(KEntryMap::SearchFlags) +Q_DECLARE_OPERATORS_FOR_FLAGS(KEntryMap::EntryOptions) + +/** + * \relates KEntry + * type for iterating over keys in a KEntryMap in sorted order. + * @internal + */ +typedef KEntryMap::iterator KEntryMapIterator; + +/** + * \relates KEntry + * type for iterating over keys in a KEntryMap in sorted order. + * It is const, thus you cannot change the entries in the iterator, + * only examine them. + * @internal + */ +typedef KEntryMap::const_iterator KEntryMapConstIterator; + +#endif diff --git a/src/core/kconfiggroup.cpp b/src/core/kconfiggroup.cpp new file mode 100644 index 0000000..76767f8 --- /dev/null +++ b/src/core/kconfiggroup.cpp @@ -0,0 +1,1266 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2006, 2007 Thomas Braxton + SPDX-FileCopyrightText: 1999 Preston Brown + SPDX-FileCopyrightText: 1997 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kconfiggroup.h" +#include "kconfiggroup_p.h" + +#include "kconfig.h" +#include "kconfig_core_log_settings.h" +#include "kconfig_p.h" +#include "kconfigdata_p.h" +#include "ksharedconfig.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +class KConfigGroupPrivate : public QSharedData +{ +public: + KConfigGroupPrivate(KConfig *owner, bool isImmutable, bool isConst, const QString &name) + : mOwner(owner) + , mName(name) + , bImmutable(isImmutable) + , bConst(isConst) + { + if (Q_UNLIKELY(!mOwner->name().isEmpty() && mOwner->accessMode() == KConfigBase::NoAccess)) { + qCWarning(KCONFIG_CORE_LOG) << "Created a KConfigGroup on an inaccessible config location" << mOwner->name() << name; + } + } + + KConfigGroupPrivate(const KSharedConfigPtr &owner, const QString &name) + : sOwner(owner) + , mOwner(sOwner.data()) + , mName(name) + , bImmutable(name.isEmpty() ? owner->isImmutable() : owner->isGroupImmutable(name)) + , bConst(false) + { + if (Q_UNLIKELY(!mOwner->name().isEmpty() && mOwner->accessMode() == KConfigBase::NoAccess)) { + qCWarning(KCONFIG_CORE_LOG) << "Created a KConfigGroup on an inaccessible config location" << mOwner->name() << name; + } + } + + KConfigGroupPrivate(KConfigGroup *parent, bool isImmutable, bool isConst, const QString &name) + : sOwner(parent->d->sOwner) + , mOwner(parent->d->mOwner) + , mName(name) + , bImmutable(isImmutable) + , bConst(isConst) + { + if (!parent->d->mName.isEmpty()) { + mParent = parent->d; + } + } + + KConfigGroupPrivate(const KConfigGroupPrivate *other, bool isImmutable, const QString &name) + : sOwner(other->sOwner) + , mOwner(other->mOwner) + , mName(name) + , bImmutable(isImmutable) + , bConst(other->bConst) + { + if (!other->mName.isEmpty()) { + mParent = const_cast(other); + } + } + + KSharedConfig::Ptr sOwner; + KConfig *mOwner; + QExplicitlySharedDataPointer mParent; + QString mName; + + /* bitfield */ + const bool bImmutable : 1; // is this group immutable? + const bool bConst : 1; // is this group read-only? + + QString fullName() const + { + if (!mParent) { + return name(); + } + return mParent->fullName(mName); + } + + QString name() const + { + if (mName.isEmpty()) { + return QStringLiteral(""); + } + return mName; + } + + QString fullName(const QString &aGroup) const + { + if (mName.isEmpty()) { + return aGroup; + } + return fullName() + QLatin1Char('\x1d') + aGroup; + } + + static QExplicitlySharedDataPointer create(KConfigBase *master, const QString &name, bool isImmutable, bool isConst) + { + QExplicitlySharedDataPointer data; + if (dynamic_cast(master)) { + data = new KConfigGroupPrivate(static_cast(master), isImmutable, isConst, name); + } else { + data = new KConfigGroupPrivate(dynamic_cast(master), isImmutable, isConst, name); + } + return data; + } + + static QByteArray serializeList(const QList &list); + static QStringList deserializeList(const QString &data); +}; + +QByteArray KConfigGroupPrivate::serializeList(const QList &list) +{ + QByteArray value; + + if (!list.isEmpty()) { + auto it = list.cbegin(); + const auto end = list.cend(); + + value = QByteArray(*it).replace('\\', QByteArrayLiteral("\\\\")).replace(',', QByteArrayLiteral("\\,")); + + while (++it != end) { + // In the loop, so it is not done when there is only one element. + // Doing it repeatedly is a pretty cheap operation. + value.reserve(4096); + + value += ','; + value += QByteArray(*it).replace('\\', QByteArrayLiteral("\\\\")).replace(',', QByteArrayLiteral("\\,")); + } + + // To be able to distinguish an empty list from a list with one empty element. + if (value.isEmpty()) { + value = QByteArrayLiteral("\\0"); + } + } + + return value; +} + +QStringList KConfigGroupPrivate::deserializeList(const QString &data) +{ + if (data.isEmpty()) { + return QStringList(); + } + if (data == QLatin1String("\\0")) { + return QStringList(QString()); + } + QStringList value; + QString val; + val.reserve(data.size()); + bool quoted = false; + for (int p = 0; p < data.length(); p++) { + if (quoted) { + val += data[p]; + quoted = false; + } else if (data[p].unicode() == '\\') { + quoted = true; + } else if (data[p].unicode() == ',') { + val.squeeze(); // release any unused memory + value.append(val); + val.clear(); + val.reserve(data.size() - p); + } else { + val += data[p]; + } + } + value.append(val); + return value; +} + +static QVarLengthArray asIntList(QByteArrayView string) +{ + int start = 0; + int next = start; + QVarLengthArray ret; + while ((next = string.indexOf(',', start)) != -1) { + ret.push_back(string.sliced(start, next - start).toInt()); + start = next + 1; + } + ret.push_back(string.sliced(start, string.size() - start).toInt()); + return ret; +} + +static QVarLengthArray asRealList(QByteArrayView string) +{ + int start = 0; + int next = start; + QVarLengthArray ret; + while ((next = string.indexOf(',', start)) != -1) { + ret.push_back(string.sliced(start, next - start).toDouble()); + start = next + 1; + } + ret.push_back(string.sliced(start, string.size() - start).toDouble()); + return ret; +} + +static QString errString(const char *pKey, const QByteArray &value, const QVariant &aDefault) +{ + return QStringLiteral("\"%1\" - conversion of \"%3\" to %2 failed") + .arg(QString::fromLatin1(pKey), QString::fromLatin1(aDefault.typeName()), QString::fromLatin1(value)); +} + +static QString formatError(int expected, int got) +{ + return QStringLiteral(" (wrong format: expected %1 items, got %2)").arg(expected).arg(got); +} + +QVariant KConfigGroup::convertToQVariant(const char *pKey, const QByteArray &value, const QVariant &aDefault) +{ + // if a type handler is added here you must add a QVConversions definition + // to kconfigconversioncheck_p.h, or KConfigConversionCheck::to_QVariant will not allow + // readEntry to convert to QVariant. + switch (static_cast(aDefault.userType())) { + case QMetaType::UnknownType: + return QVariant(); + case QMetaType::QString: + // this should return the raw string not the dollar expanded string. + // imho if processed string is wanted should call + // readEntry(key, QString) not readEntry(key, QVariant) + return QString::fromUtf8(value); + case QMetaType::QUuid: + return QUuid::fromString(value); + case QMetaType::QVariantList: + case QMetaType::QStringList: + return KConfigGroupPrivate::deserializeList(QString::fromUtf8(value)); + case QMetaType::QByteArray: + return value; + case QMetaType::Bool: { + static const std::array negatives = {"false", "no", "off", "0"}; + + return std::all_of(negatives.begin(), negatives.end(), [value](const char *negativeString) { + return value.compare(negativeString, Qt::CaseInsensitive) != 0; + }); + } + case QMetaType::Double: + case QMetaType::Float: + case QMetaType::Int: + case QMetaType::UInt: + case QMetaType::LongLong: + case QMetaType::ULongLong: { + QVariant tmp = value; + if (!tmp.convert(aDefault.metaType())) { + tmp = aDefault; + } + return tmp; + } + case QMetaType::QPoint: { + const auto list = asIntList(value); + + if (list.count() != 2) { + qCWarning(KCONFIG_CORE_LOG) << errString(pKey, value, aDefault) << formatError(2, list.count()); + return aDefault; + } + return QPoint(list.at(0), list.at(1)); + } + case QMetaType::QPointF: { + const auto list = asRealList(value); + + if (list.count() != 2) { + qCWarning(KCONFIG_CORE_LOG) << errString(pKey, value, aDefault) << formatError(2, list.count()); + return aDefault; + } + return QPointF(list.at(0), list.at(1)); + } + case QMetaType::QRect: { + const auto list = asIntList(value); + + if (list.count() != 4) { + qCWarning(KCONFIG_CORE_LOG) << errString(pKey, value, aDefault) << formatError(4, list.count()); + return aDefault; + } + const QRect rect(list.at(0), list.at(1), list.at(2), list.at(3)); + if (!rect.isValid()) { + qCWarning(KCONFIG_CORE_LOG) << errString(pKey, value, aDefault); + return aDefault; + } + return rect; + } + case QMetaType::QRectF: { + const auto list = asRealList(value); + + if (list.count() != 4) { + qCWarning(KCONFIG_CORE_LOG) << errString(pKey, value, aDefault) << formatError(4, list.count()); + return aDefault; + } + const QRectF rect(list.at(0), list.at(1), list.at(2), list.at(3)); + if (!rect.isValid()) { + qCWarning(KCONFIG_CORE_LOG) << errString(pKey, value, aDefault); + return aDefault; + } + return rect; + } + case QMetaType::QSize: { + const auto list = asIntList(value); + + if (list.count() != 2) { + qCWarning(KCONFIG_CORE_LOG) << errString(pKey, value, aDefault) << formatError(2, list.count()); + return aDefault; + } + const QSize size(list.at(0), list.at(1)); + if (!size.isValid()) { + qCWarning(KCONFIG_CORE_LOG) << errString(pKey, value, aDefault); + return aDefault; + } + return size; + } + case QMetaType::QSizeF: { + const auto list = asRealList(value); + + if (list.count() != 2) { + qCWarning(KCONFIG_CORE_LOG) << errString(pKey, value, aDefault) << formatError(2, list.count()); + return aDefault; + } + const QSizeF size(list.at(0), list.at(1)); + if (!size.isValid()) { + qCWarning(KCONFIG_CORE_LOG) << errString(pKey, value, aDefault); + return aDefault; + } + return size; + } + case QMetaType::QDateTime: { + const auto list = asRealList(value); + if (list.count() < 6) { + qCWarning(KCONFIG_CORE_LOG) << errString(pKey, value, aDefault) << formatError(6, list.count()); + return aDefault; + } + const QDate date(list.at(0), list.at(1), list.at(2)); + const qreal totalSeconds = list.at(5); + qreal seconds; + const qreal fractional = modf(totalSeconds, &seconds); + const qreal milliseconds = round(fractional * 1000.0); + const QTime time(list.at(3), list.at(4), seconds, milliseconds); + const QDateTime dt(date, time); + if (!dt.isValid()) { + qCWarning(KCONFIG_CORE_LOG) << errString(pKey, value, aDefault); + return aDefault; + } + return dt; + } + case QMetaType::QDate: { + auto list = asIntList(value); + // list.count == 6 -> don't break config files that stored QDate as QDateTime + if (list.count() != 3 && list.count() != 6) { + qCWarning(KCONFIG_CORE_LOG) << errString(pKey, value, aDefault) << formatError(3, list.count()); + return aDefault; + } + const QDate date(list.at(0), list.at(1), list.at(2)); + if (!date.isValid()) { + qCWarning(KCONFIG_CORE_LOG) << errString(pKey, value, aDefault); + return aDefault; + } + return date; + } + case QMetaType::QColor: + case QMetaType::QFont: + qCWarning(KCONFIG_CORE_LOG) << "KConfigGroup::readEntry was passed GUI type '" << aDefault.typeName() + << "' but KConfigGui isn't linked! If it is linked to your program, " + "this is a platform bug. Please inform the KDE developers"; + break; + case QMetaType::QUrl: + return QUrl(QString::fromUtf8(value)); + + default: + break; + } + + qCWarning(KCONFIG_CORE_LOG) << "unhandled type " << aDefault.typeName(); + return QVariant(); +} + +static bool cleanHomeDirPath(QString &path, const QString &homeDir) +{ +#ifdef Q_OS_WIN // safer + if (!QDir::toNativeSeparators(path).startsWith(QDir::toNativeSeparators(homeDir))) { + return false; + } +#else + if (!path.startsWith(homeDir)) { + return false; + } +#endif + + int len = homeDir.length(); + // replace by "$HOME" if possible + if (len && (path.length() == len || path[len] == QLatin1Char('/'))) { + path.replace(0, len, QStringLiteral("$HOME")); + return true; + } + + return false; +} + +static QString translatePath(QString path) // krazy:exclude=passbyvalue +{ + if (path.isEmpty()) { + return path; + } + + // only "our" $HOME should be interpreted + path.replace(QLatin1Char('$'), QLatin1String("$$")); + + const bool startsWithFile = path.startsWith(QLatin1String("file:"), Qt::CaseInsensitive); + path = startsWithFile ? QUrl(path).toLocalFile() : path; + + if (QDir::isRelativePath(path)) { + return path; + } + + // Use the same thing as what expandString() will do, to keep data intact +#ifdef Q_OS_WIN + const QString homeDir = QDir::homePath(); +#else + const QString homeDir = QFile::decodeName(qgetenv("HOME")); +#endif + (void)cleanHomeDirPath(path, homeDir); + + if (startsWithFile) { + path = QUrl::fromLocalFile(path).toString(); + } + + return path; +} + +KConfigGroup::KConfigGroup() + : d() +{ +} + +bool KConfigGroup::isValid() const +{ + return bool(d); +} + +KConfigGroupGui _kde_internal_KConfigGroupGui; +static inline bool readEntryGui(const QByteArray &data, const char *key, const QVariant &input, QVariant &output) +{ + if (_kde_internal_KConfigGroupGui.readEntryGui) { + return _kde_internal_KConfigGroupGui.readEntryGui(data, key, input, output); + } + return false; +} + +static inline bool writeEntryGui(KConfigGroup *cg, const char *key, const QVariant &input, KConfigGroup::WriteConfigFlags flags) +{ + if (_kde_internal_KConfigGroupGui.writeEntryGui) { + return _kde_internal_KConfigGroupGui.writeEntryGui(cg, key, input, flags); + } + return false; +} + +KConfigGroup::KConfigGroup(KConfigBase *master, const QString &_group) + : d(KConfigGroupPrivate::create(master, _group, master->isGroupImmutable(_group), false)) +{ +} + +KConfigGroup::KConfigGroup(const KConfigBase *master, const QString &_group) + : d(KConfigGroupPrivate::create(const_cast(master), _group, master->isGroupImmutable(_group), true)) +{ +} + +KConfigGroup::KConfigGroup(const KSharedConfigPtr &master, const QString &_group) + : d(new KConfigGroupPrivate(master, _group)) +{ +} + +KConfigGroup &KConfigGroup::operator=(const KConfigGroup &rhs) +{ + d = rhs.d; + return *this; +} + +KConfigGroup::KConfigGroup(const KConfigGroup &rhs) + : d(rhs.d) +{ +} + +KConfigGroup::~KConfigGroup() +{ + d.reset(); +} + +KConfigGroup KConfigGroup::groupImpl(const QString &aGroup) +{ + Q_ASSERT_X(isValid(), "KConfigGroup::groupImpl", "accessing an invalid group"); + Q_ASSERT_X(!aGroup.isEmpty(), "KConfigGroup::groupImpl", "can not have an unnamed child group"); + + KConfigGroup newGroup; + + newGroup.d = new KConfigGroupPrivate(this, isGroupImmutableImpl(aGroup), d->bConst, aGroup); + + return newGroup; +} + +const KConfigGroup KConfigGroup::groupImpl(const QString &aGroup) const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::groupImpl", "accessing an invalid group"); + Q_ASSERT_X(!aGroup.isEmpty(), "KConfigGroup::groupImpl", "can not have an unnamed child group"); + + KConfigGroup newGroup; + + newGroup.d = new KConfigGroupPrivate(const_cast(this), isGroupImmutableImpl(aGroup), true, aGroup); + + return newGroup; +} + +KConfigGroup KConfigGroup::parent() const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::parent", "accessing an invalid group"); + + KConfigGroup parentGroup; + + if (d->mParent) { + parentGroup.d = d->mParent; + } else { + parentGroup.d = new KConfigGroupPrivate(d->mOwner, d->mOwner->isImmutable(), d->bConst, QString()); + // make sure we keep the refcount up on the KConfig object + parentGroup.d->sOwner = d->sOwner; + } + + return parentGroup; +} + +void KConfigGroup::deleteGroup(WriteConfigFlags flags) +{ + Q_ASSERT_X(isValid(), "KConfigGroup::deleteGroup", "accessing an invalid group"); + Q_ASSERT_X(!d->bConst, "KConfigGroup::deleteGroup", "deleting a read-only group"); + + config()->deleteGroup(d->fullName(), flags); +} + +QString KConfigGroup::name() const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::name", "accessing an invalid group"); + + return d->name(); +} + +bool KConfigGroup::exists() const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::exists", "accessing an invalid group"); + + return config()->hasGroup(d->fullName()); +} + +bool KConfigGroup::sync() +{ + Q_ASSERT_X(isValid(), "KConfigGroup::sync", "accessing an invalid group"); + + if (!d->bConst) { + return config()->sync(); + } + + return false; +} + +QMap KConfigGroup::entryMap() const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::entryMap", "accessing an invalid group"); + + return config()->entryMap(d->fullName()); +} + +KConfig *KConfigGroup::config() +{ + Q_ASSERT_X(isValid(), "KConfigGroup::config", "accessing an invalid group"); + + return d->mOwner; +} + +const KConfig *KConfigGroup::config() const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::config", "accessing an invalid group"); + + return d->mOwner; +} + +bool KConfigGroup::isEntryImmutable(const char *key) const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::isEntryImmutable", "accessing an invalid group"); + + return (isImmutable() || !config()->d_func()->canWriteEntry(d->fullName(), key, config()->readDefaults())); +} + +bool KConfigGroup::isEntryImmutable(const QString &key) const +{ + return isEntryImmutable(key.toUtf8().constData()); +} + +QString KConfigGroup::readEntryUntranslated(const QString &pKey, const QString &aDefault) const +{ + return readEntryUntranslated(pKey.toUtf8().constData(), aDefault); +} + +QString KConfigGroup::readEntryUntranslated(const char *key, const QString &aDefault) const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::readEntryUntranslated", "accessing an invalid group"); + + QString result = config()->d_func()->lookupData(d->fullName(), key, KEntryMap::SearchFlags(), nullptr); + if (result.isNull()) { + return aDefault; + } + return result; +} + +QString KConfigGroup::readEntry(const char *key, const char *aDefault) const +{ + return readEntry(key, QString::fromUtf8(aDefault)); +} + +QString KConfigGroup::readEntry(const QString &key, const char *aDefault) const +{ + return readEntry(key.toUtf8().constData(), aDefault); +} + +QString KConfigGroup::readEntry(const char *key, const QString &aDefault) const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::readEntry", "accessing an invalid group"); + + bool expand = false; + + // read value from the entry map + QString aValue = config()->d_func()->lookupData(d->fullName(), key, KEntryMap::SearchLocalized, &expand); + if (aValue.isNull()) { + aValue = aDefault; + } + + if (expand) { + return KConfigPrivate::expandString(aValue); + } + + return aValue; +} + +QString KConfigGroup::readEntry(const QString &key, const QString &aDefault) const +{ + return readEntry(key.toUtf8().constData(), aDefault); +} + +QStringList KConfigGroup::readEntry(const char *key, const QStringList &aDefault) const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::readEntry", "accessing an invalid group"); + + const QString data = readEntry(key, QString()); + if (data.isNull()) { + return aDefault; + } + + return KConfigGroupPrivate::deserializeList(data); +} + +QStringList KConfigGroup::readEntry(const QString &key, const QStringList &aDefault) const +{ + return readEntry(key.toUtf8().constData(), aDefault); +} + +QVariant KConfigGroup::readEntry(const char *key, const QVariant &aDefault) const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::readEntry", "accessing an invalid group"); + + const QByteArray data = config()->d_func()->lookupData(d->fullName(), key, KEntryMap::SearchLocalized); + if (data.isNull()) { + return aDefault; + } + + QVariant value; + if (!readEntryGui(data, key, aDefault, value)) { + return convertToQVariant(key, data, aDefault); + } + + return value; +} + +QVariant KConfigGroup::readEntry(const QString &key, const QVariant &aDefault) const +{ + return readEntry(key.toUtf8().constData(), aDefault); +} + +QVariantList KConfigGroup::readEntry(const char *key, const QVariantList &aDefault) const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::readEntry", "accessing an invalid group"); + + const QString data = readEntry(key, QString()); + if (data.isNull()) { + return aDefault; + } + + const auto &list = KConfigGroupPrivate::deserializeList(data); + + QVariantList value; + value.reserve(list.count()); + for (const QString &v : list) { + value << v; + } + + return value; +} + +QVariantList KConfigGroup::readEntry(const QString &key, const QVariantList &aDefault) const +{ + return readEntry(key.toUtf8().constData(), aDefault); +} + +QStringList KConfigGroup::readXdgListEntry(const QString &key, const QStringList &aDefault) const +{ + return readXdgListEntry(key.toUtf8().constData(), aDefault); +} + +QStringList KConfigGroup::readXdgListEntry(const char *key, const QStringList &aDefault) const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::readXdgListEntry", "accessing an invalid group"); + + const QString data = readEntry(key, QString()); + if (data.isNull()) { + return aDefault; + } + + QStringList value; + QString val; + val.reserve(data.size()); + // XXX List serialization being a separate layer from low-level parsing is + // probably a bug. No affected entries are defined, though. + bool quoted = false; + for (int p = 0; p < data.length(); p++) { + if (quoted) { + val += data[p]; + quoted = false; + } else if (data[p] == QLatin1Char('\\')) { + quoted = true; + } else if (data[p] == QLatin1Char(';')) { + value.append(val); + val.clear(); + val.reserve(data.size() - p); + } else { + val += data[p]; + } + } + if (!val.isEmpty()) { + value.append(val); + } + return value; +} + +QString KConfigGroup::readPathEntry(const QString &pKey, const QString &aDefault) const +{ + return readPathEntry(pKey.toUtf8().constData(), aDefault); +} + +QString KConfigGroup::readPathEntry(const char *key, const QString &aDefault) const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::readPathEntry", "accessing an invalid group"); + + bool expand = false; + + QString aValue = config()->d_func()->lookupData(d->fullName(), key, KEntryMap::SearchLocalized, &expand); + if (aValue.isNull()) { + aValue = aDefault; + } + + return KConfigPrivate::expandString(aValue); +} + +QStringList KConfigGroup::readPathEntry(const QString &pKey, const QStringList &aDefault) const +{ + return readPathEntry(pKey.toUtf8().constData(), aDefault); +} + +QStringList KConfigGroup::readPathEntry(const char *key, const QStringList &aDefault) const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::readPathEntry", "accessing an invalid group"); + + const QString data = readPathEntry(key, QString()); + if (data.isNull()) { + return aDefault; + } + + return KConfigGroupPrivate::deserializeList(data); +} + +void KConfigGroup::writeEntry(const char *key, const QString &value, WriteConfigFlags flags) +{ + Q_ASSERT_X(isValid(), "KConfigGroup::writeEntry", "accessing an invalid group"); + Q_ASSERT_X(!d->bConst, "KConfigGroup::writeEntry", "writing to a read-only group"); + + writeEntry(key, value.toUtf8(), flags); +} + +void KConfigGroup::writeEntry(const QString &key, const QString &value, WriteConfigFlags flags) +{ + writeEntry(key.toUtf8().constData(), value, flags); +} + +void KConfigGroup::writeEntry(const QString &key, const char *value, WriteConfigFlags pFlags) +{ + Q_ASSERT_X(isValid(), "KConfigGroup::writeEntry", "accessing an invalid group"); + Q_ASSERT_X(!d->bConst, "KConfigGroup::writeEntry", "writing to a read-only group"); + + writeEntry(key.toUtf8().constData(), QVariant(QString::fromLatin1(value)), pFlags); +} + +void KConfigGroup::writeEntry(const char *key, const char *value, WriteConfigFlags pFlags) +{ + writeEntry(key, QVariant(QString::fromLatin1(value)), pFlags); +} + +void KConfigGroup::writeEntry(const char *key, const QByteArray &value, WriteConfigFlags flags) +{ + Q_ASSERT_X(isValid(), "KConfigGroup::writeEntry", "accessing an invalid group"); + Q_ASSERT_X(!d->bConst, "KConfigGroup::writeEntry", "writing to a read-only group"); + + config()->d_func()->putData(d->fullName(), key, value.isNull() ? QByteArray("") : value, flags); +} + +void KConfigGroup::writeEntry(const QString &key, const QByteArray &value, WriteConfigFlags pFlags) +{ + writeEntry(key.toUtf8().constData(), value, pFlags); +} + +void KConfigGroup::writeEntry(const char *key, const QStringList &list, WriteConfigFlags flags) +{ + Q_ASSERT_X(isValid(), "KConfigGroup::writeEntry", "accessing an invalid group"); + Q_ASSERT_X(!d->bConst, "KConfigGroup::writeEntry", "writing to a read-only group"); + + QList balist; + balist.reserve(list.count()); + + for (const QString &entry : list) { + balist.append(entry.toUtf8()); + } + + writeEntry(key, KConfigGroupPrivate::serializeList(balist), flags); +} + +void KConfigGroup::writeEntry(const QString &key, const QStringList &list, WriteConfigFlags flags) +{ + writeEntry(key.toUtf8().constData(), list, flags); +} + +void KConfigGroup::writeEntry(const char *key, const QVariantList &list, WriteConfigFlags flags) +{ + Q_ASSERT_X(isValid(), "KConfigGroup::writeEntry", "accessing an invalid group"); + Q_ASSERT_X(!d->bConst, "KConfigGroup::writeEntry", "writing to a read-only group"); + + QList data; + data.reserve(list.count()); + + for (const QVariant &v : list) { + if (v.userType() == QMetaType::QByteArray) { + data << v.toByteArray(); + } else { + data << v.toString().toUtf8(); + } + } + + writeEntry(key, KConfigGroupPrivate::serializeList(data), flags); +} + +void KConfigGroup::writeEntry(const char *key, const QVariant &value, WriteConfigFlags flags) +{ + Q_ASSERT_X(isValid(), "KConfigGroup::writeEntry", "accessing an invalid group"); + Q_ASSERT_X(!d->bConst, "KConfigGroup::writeEntry", "writing to a read-only group"); + + if (writeEntryGui(this, key, value, flags)) { + return; // GUI type that was handled + } + + QByteArray data; + // if a type handler is added here you must add a QVConversions definition + // to kconfigconversioncheck_p.h, or KConfigConversionCheck::to_QVariant will not allow + // writeEntry to convert to QVariant. + switch (static_cast(value.userType())) { + case QMetaType::UnknownType: + data = ""; + break; + case QMetaType::QByteArray: + data = value.toByteArray(); + break; + case QMetaType::QString: + case QMetaType::Int: + case QMetaType::UInt: + case QMetaType::Double: + case QMetaType::Float: + case QMetaType::Bool: + case QMetaType::LongLong: + case QMetaType::ULongLong: + data = value.toString().toUtf8(); + break; + case QMetaType::QVariantList: + if (!value.canConvert()) { + qCWarning(KCONFIG_CORE_LOG) << "not all types in \"" << key + << "\" can convert to QString," + " information will be lost"; + } + Q_FALLTHROUGH(); + case QMetaType::QStringList: + writeEntry(key, value.toList(), flags); + return; + case QMetaType::QPoint: { + const QPoint rPoint = value.toPoint(); + + const QVariantList list{rPoint.x(), rPoint.y()}; + + writeEntry(key, list, flags); + return; + } + case QMetaType::QPointF: { + const QPointF point = value.toPointF(); + + const QVariantList list{point.x(), point.y()}; + + writeEntry(key, list, flags); + return; + } + case QMetaType::QRect: { + const QRect rRect = value.toRect(); + + const QVariantList list{rRect.left(), rRect.top(), rRect.width(), rRect.height()}; + + writeEntry(key, list, flags); + return; + } + case QMetaType::QRectF: { + const QRectF rRectF = value.toRectF(); + + const QVariantList list{rRectF.left(), rRectF.top(), rRectF.width(), rRectF.height()}; + + writeEntry(key, list, flags); + return; + } + case QMetaType::QSize: { + const QSize rSize = value.toSize(); + + const QVariantList list{rSize.width(), rSize.height()}; + + writeEntry(key, list, flags); + return; + } + case QMetaType::QUuid: { + writeEntry(key, value.toString(), flags); + return; + } + case QMetaType::QSizeF: { + const QSizeF rSizeF = value.toSizeF(); + + const QVariantList list{rSizeF.width(), rSizeF.height()}; + + writeEntry(key, list, flags); + return; + } + case QMetaType::QDate: { + const QDate date = value.toDate(); + + const QVariantList list{date.year(), date.month(), date.day()}; + + writeEntry(key, list, flags); + return; + } + case QMetaType::QDateTime: { + const QDateTime rDateTime = value.toDateTime(); + + const QTime time = rDateTime.time(); + const QDate date = rDateTime.date(); + + const QVariantList list{ + date.year(), + date.month(), + date.day(), + + time.hour(), + time.minute(), + time.second() + time.msec() / 1000.0, + }; + + writeEntry(key, list, flags); + return; + } + + case QMetaType::QColor: + case QMetaType::QFont: + qCWarning(KCONFIG_CORE_LOG) << "KConfigGroup::writeEntry was passed GUI type '" << value.typeName() + << "' but KConfigGui isn't linked! If it is linked to your program, this is a platform bug. " + "Please inform the KDE developers"; + break; + case QMetaType::QUrl: + data = QUrl(value.toUrl()).toString().toUtf8(); + break; + default: + qCWarning(KCONFIG_CORE_LOG) << "KConfigGroup::writeEntry - unhandled type" << value.typeName() << "in group" << name(); + } + + writeEntry(key, data, flags); +} + +void KConfigGroup::writeEntry(const QString &key, const QVariant &value, WriteConfigFlags flags) +{ + writeEntry(key.toUtf8().constData(), value, flags); +} + +void KConfigGroup::writeEntry(const QString &key, const QVariantList &list, WriteConfigFlags flags) +{ + writeEntry(key.toUtf8().constData(), list, flags); +} + +void KConfigGroup::writeXdgListEntry(const QString &key, const QStringList &value, WriteConfigFlags pFlags) +{ + writeXdgListEntry(key.toUtf8().constData(), value, pFlags); +} + +void KConfigGroup::writeXdgListEntry(const char *key, const QStringList &list, WriteConfigFlags flags) +{ + Q_ASSERT_X(isValid(), "KConfigGroup::writeXdgListEntry", "accessing an invalid group"); + Q_ASSERT_X(!d->bConst, "KConfigGroup::writeXdgListEntry", "writing to a read-only group"); + + QString value; + value.reserve(4096); + + // XXX List serialization being a separate layer from low-level escaping is + // probably a bug. No affected entries are defined, though. + for (QString val : list) { // clazy:exclude=range-loop + val.replace(QLatin1Char('\\'), QLatin1String("\\\\")).replace(QLatin1Char(';'), QLatin1String("\\;")); + value += val + QLatin1Char(';'); + } + + writeEntry(key, value, flags); +} + +void KConfigGroup::writePathEntry(const QString &pKey, const QString &path, WriteConfigFlags pFlags) +{ + writePathEntry(pKey.toUtf8().constData(), path, pFlags); +} + +void KConfigGroup::writePathEntry(const char *pKey, const QString &path, WriteConfigFlags pFlags) +{ + Q_ASSERT_X(isValid(), "KConfigGroup::writePathEntry", "accessing an invalid group"); + Q_ASSERT_X(!d->bConst, "KConfigGroup::writePathEntry", "writing to a read-only group"); + + config()->d_func()->putData(d->fullName(), pKey, translatePath(path).toUtf8(), pFlags, true); +} + +void KConfigGroup::writePathEntry(const QString &pKey, const QStringList &value, WriteConfigFlags pFlags) +{ + writePathEntry(pKey.toUtf8().constData(), value, pFlags); +} + +void KConfigGroup::writePathEntry(const char *pKey, const QStringList &value, WriteConfigFlags pFlags) +{ + Q_ASSERT_X(isValid(), "KConfigGroup::writePathEntry", "accessing an invalid group"); + Q_ASSERT_X(!d->bConst, "KConfigGroup::writePathEntry", "writing to a read-only group"); + + QList list; + list.reserve(value.length()); + for (const QString &path : value) { + list << translatePath(path).toUtf8(); + } + + config()->d_func()->putData(d->fullName(), pKey, KConfigGroupPrivate::serializeList(list), pFlags, true); +} + +void KConfigGroup::deleteEntry(const char *key, WriteConfigFlags flags) +{ + Q_ASSERT_X(isValid(), "KConfigGroup::deleteEntry", "accessing an invalid group"); + Q_ASSERT_X(!d->bConst, "KConfigGroup::deleteEntry", "deleting from a read-only group"); + + config()->d_func()->putData(d->fullName(), key, QByteArray(), flags); +} + +void KConfigGroup::deleteEntry(const QString &key, WriteConfigFlags flags) +{ + deleteEntry(key.toUtf8().constData(), flags); +} + +void KConfigGroup::revertToDefault(const char *key, WriteConfigFlags flags) +{ + Q_ASSERT_X(isValid(), "KConfigGroup::revertToDefault", "accessing an invalid group"); + Q_ASSERT_X(!d->bConst, "KConfigGroup::revertToDefault", "writing to a read-only group"); + + config()->d_func()->revertEntry(d->fullName(), key, flags); +} + +void KConfigGroup::revertToDefault(const QString &key, WriteConfigFlags flags) +{ + revertToDefault(key.toUtf8().constData(), flags); +} + +bool KConfigGroup::hasDefault(const char *key) const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::hasDefault", "accessing an invalid group"); + + KEntryMap::SearchFlags flags = KEntryMap::SearchDefaults | KEntryMap::SearchLocalized; + + return !config()->d_func()->lookupData(d->fullName(), key, flags).isNull(); +} + +bool KConfigGroup::hasDefault(const QString &key) const +{ + return hasDefault(key.toUtf8().constData()); +} + +bool KConfigGroup::hasKey(const char *key) const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::hasKey", "accessing an invalid group"); + + KEntryMap::SearchFlags flags = KEntryMap::SearchLocalized; + if (config()->readDefaults()) { + flags |= KEntryMap::SearchDefaults; + } + + return !config()->d_func()->lookupData(d->fullName(), key, flags).isNull(); +} + +bool KConfigGroup::hasKey(const QString &key) const +{ + return hasKey(key.toUtf8().constData()); +} + +bool KConfigGroup::isImmutable() const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::isImmutable", "accessing an invalid group"); + + return d->bImmutable; +} + +QStringList KConfigGroup::groupList() const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::groupList", "accessing an invalid group"); + + return config()->d_func()->groupList(d->fullName()); +} + +QStringList KConfigGroup::keyList() const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::keyList", "accessing an invalid group"); + + return config()->d_func()->usedKeyList(d->fullName()); +} + +void KConfigGroup::markAsClean() +{ + Q_ASSERT_X(isValid(), "KConfigGroup::markAsClean", "accessing an invalid group"); + + config()->markAsClean(); +} + +KConfigGroup::AccessMode KConfigGroup::accessMode() const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::accessMode", "accessing an invalid group"); + + return config()->accessMode(); +} + +bool KConfigGroup::hasGroupImpl(const QString &b) const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::hasGroupImpl", "accessing an invalid group"); + + return config()->hasGroup(d->fullName(b)); +} + +void KConfigGroup::deleteGroupImpl(const QString &b, WriteConfigFlags flags) +{ + Q_ASSERT_X(isValid(), "KConfigGroup::deleteGroupImpl", "accessing an invalid group"); + Q_ASSERT_X(!d->bConst, "KConfigGroup::deleteGroupImpl", "deleting from a read-only group"); + + config()->deleteGroup(d->fullName(b), flags); +} + +bool KConfigGroup::isGroupImmutableImpl(const QString &groupName) const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::isGroupImmutableImpl", "accessing an invalid group"); + + if (!hasGroupImpl(groupName)) { // group doesn't exist yet + return d->bImmutable; // child groups are immutable if the parent is immutable. + } + + return config()->isGroupImmutable(d->fullName(groupName)); +} + +void KConfigGroup::copyTo(KConfigBase *other, WriteConfigFlags pFlags) const +{ + Q_ASSERT_X(isValid(), "KConfigGroup::copyTo", "accessing an invalid group"); + Q_ASSERT(other != nullptr); + + if (KConfigGroup *otherGroup = dynamic_cast(other)) { + config()->d_func()->copyGroup(d->fullName(), otherGroup->d->fullName(), otherGroup, pFlags); + } else if (KConfig *otherConfig = dynamic_cast(other)) { + KConfigGroup newGroup = otherConfig->group(d->fullName()); + otherConfig->d_func()->copyGroup(d->fullName(), d->fullName(), &newGroup, pFlags); + } else { + Q_ASSERT_X(false, "KConfigGroup::copyTo", "unknown type of KConfigBase"); + } +} + +void KConfigGroup::reparent(KConfigBase *parent, WriteConfigFlags pFlags) +{ + Q_ASSERT_X(isValid(), "KConfigGroup::reparent", "accessing an invalid group"); + Q_ASSERT_X(!d->bConst, "KConfigGroup::reparent", "reparenting a read-only group"); + Q_ASSERT_X(!d->bImmutable, "KConfigGroup::reparent", "reparenting an immutable group"); + Q_ASSERT(parent != nullptr); + + KConfigGroup oldGroup(*this); + + d = KConfigGroupPrivate::create(parent, d->mName, false, false); + oldGroup.copyTo(this, pFlags); + oldGroup.deleteGroup(); // so that the entries with the old group name are deleted on sync +} + +void KConfigGroup::moveValue(const char *key, KConfigGroup &other, WriteConfigFlags pFlags) +{ + const QString groupName = name(); + const auto entry = config()->d_ptr->lookupInternalEntry(groupName, key, KEntryMap::SearchLocalized); + + // Only write the entry if it is not null, if it is a global enry there is no point in moving it + if (!entry.mValue.isNull() && !entry.bGlobal) { + deleteEntry(key, pFlags); + KEntryMap::EntryOptions options = KEntryMap::EntryOption::EntryDirty; + if (entry.bDeleted) { + options |= KEntryMap::EntryDeleted; + } + + if (entry.bExpand) { + options |= KEntryMap::EntryExpansion; + } + + other.config()->d_ptr->setEntryData(other.name(), key, entry.mValue, options); + } +} + +void KConfigGroup::moveValuesTo(const QList &keys, KConfigGroup &other, WriteConfigFlags pFlags) +{ + Q_ASSERT(isValid()); + Q_ASSERT(other.isValid()); + + for (const auto key : keys) { + moveValue(key, other, pFlags); + } +} + +void KConfigGroup::moveValuesTo(KConfigGroup &other, WriteConfigFlags pFlags) +{ + Q_ASSERT(isValid()); + Q_ASSERT(other.isValid()); + + const QStringList keys = keyList(); + for (const QString &key : keys) { + moveValue(key.toUtf8().constData(), other, pFlags); + } +} diff --git a/src/core/kconfiggroup.h b/src/core/kconfiggroup.h new file mode 100644 index 0000000..b2455d2 --- /dev/null +++ b/src/core/kconfiggroup.h @@ -0,0 +1,810 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2006, 2007 Thomas Braxton + SPDX-FileCopyrightText: 1999 Preston Brown + SPDX-FileCopyrightText: 1997 Matthias Kalle Dalheimer + SPDX-FileCopyrightText: 2001 Waldo Bastian + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGGROUP_H +#define KCONFIGGROUP_H + +#include "kconfigbase.h" + +#include + +#include +#include +#include + +class KConfig; +class KConfigGroupPrivate; +class KSharedConfig; + +/** + * \class KConfigGroup kconfiggroup.h + * + * A class for one specific group in a KConfig object. + * + * If you want to access the top-level entries of a KConfig + * object, which are not associated with any group, use an + * empty group name. + * + * A KConfigGroup will be read-only if it is constructed from a + * const config object or from another read-only group. + */ +class KCONFIGCORE_EXPORT KConfigGroup : public KConfigBase +{ +public: + /** + * Constructs an invalid group. + * + * \see isValid + */ + KConfigGroup(); + + /** + * Construct a config group corresponding to @p group in @p master. + * + * This allows the creation of subgroups by passing another + * group as @p master. + * + * @param group name of group + */ + KConfigGroup(KConfigBase *master, const QString &group); + + /** + * Construct a read-only config group. + * + * A read-only group will silently ignore any attempts to write to it. + * + * This allows the creation of subgroups by passing an existing group + * as @p master. + */ + KConfigGroup(const KConfigBase *master, const QString &group); + + /** Overload for KConfigGroup(const KConfigBase*,const QString&) */ + KConfigGroup(const QExplicitlySharedDataPointer &master, const QString &group); + + /** + * Creates a copy of a group. + */ + KConfigGroup(const KConfigGroup &); + KConfigGroup &operator=(const KConfigGroup &); + + ~KConfigGroup() override; + + /** + * Whether the group is valid. + * + * A group is invalid if it was constructed without arguments. + * + * You should not call any functions on an invalid group. + * + * @return @c true if the group is valid, @c false if it is invalid. + */ + bool isValid() const; + + /** + * The name of this group. + * + * The root group is named "". + */ + QString name() const; + + /** + * Check whether the containing KConfig object actually contains a + * group with this name. + */ + bool exists() const; + + /** + * @reimp + * + * Syncs the parent config. + */ + bool sync() override; + + /// @reimp + void markAsClean() override; + + /// @reimp + AccessMode accessMode() const override; + + /** + * Return the config object that this group belongs to + */ + KConfig *config(); + /** + * Return the config object that this group belongs to + */ + const KConfig *config() const; + + /** + * Copies the entries in this group to another configuration object + * + * @note @p other can be either another group or a different file. + * + * @param other the configuration object to copy this group's entries to + * @param pFlags the flags to use when writing the entries to the + * other configuration object + * + * @since 4.1 + */ + void copyTo(KConfigBase *other, WriteConfigFlags pFlags = Normal) const; + + /** + * Changes the configuration object that this group belongs to + * + * @note @p other can be another group, the top-level KConfig object or + * a different KConfig object entirely. + * + * If @p parent is already the parent of this group, this method will have + * no effect. + * + * @param parent the config object to place this group under + * @param pFlags the flags to use in determining which storage source to + * write the data to + * + * @since 4.1 + */ + void reparent(KConfigBase *parent, WriteConfigFlags pFlags = Normal); + + /** + * Moves the key-value pairs from one config group to the other. + * In case the entries do not exist the key is ignored. + * + * @since 5.88 + */ + void moveValuesTo(const QList &keys, KConfigGroup &other, WriteConfigFlags pFlags = Normal); + + /** + * Moves the key-value pairs from one config group to the other. + * + * @since 6.3 + */ + void moveValuesTo(KConfigGroup &other, WriteConfigFlags pFlags = Normal); + + /** + * Returns the group that this group belongs to + * + * @return the parent group, or an invalid group if this is a top-level + * group + * + * @since 4.1 + */ + KConfigGroup parent() const; + + /** + * @reimp + */ + QStringList groupList() const override; + + /** + * Returns a list of keys this group contains + */ + QStringList keyList() const; + + /** + * Delete all entries in the entire group + * + * @param pFlags flags passed to KConfig::deleteGroup + * + * @see deleteEntry() + */ + void deleteGroup(WriteConfigFlags pFlags = Normal); + using KConfigBase::deleteGroup; + + /** + * Reads the value of an entry specified by @p pKey in the current group + * + * This template method makes it possible to write + * QString foo = readEntry("...", QString("default")); + * and the same with all other types supported by QVariant. + * + * The return type of the method is simply the same as the type of the default value. + * + * @note readEntry("...", Qt::white) will not compile because Qt::white is an enum. + * You must turn it into readEntry("...", QColor(Qt::white)). + * + * @note Only the following QVariant types are allowed : String, + * StringList, List, Font, Point, PointF, Rect, RectF, Size, SizeF, Color, Int, UInt, Bool, + * Double, LongLong, ULongLong, DateTime and Date. + * + * @param key The key to search for + * @param aDefault A default value returned if the key was not found + * @return The value for this key, or @p aDefault. + * + * @see writeEntry(), deleteEntry(), hasKey() + */ + template + T readEntry(const QString &key, const T &aDefault) const + { + return readEntry(key.toUtf8().constData(), aDefault); + } + /** + * Overload for readEntry(const QString&, const T&) const + * @param key name of key, encoded in UTF-8 + */ + template + T readEntry(const char *key, const T &aDefault) const; + + /** + * Reads the value of an entry specified by @p key in the current group + * + * @param key the key to search for + * @param aDefault a default value returned if the key was not found + * @return the value for this key, or @p aDefault if the key was not found + * + * @see writeEntry(), deleteEntry(), hasKey() + */ + QVariant readEntry(const QString &key, const QVariant &aDefault) const; + /** + * Overload for readEntry(const QString&, const QVariant&) const + * @param key name of key, encoded in UTF-8 + */ + QVariant readEntry(const char *key, const QVariant &aDefault) const; + + /** + * Reads the string value of an entry specified by @p key in the current group + * + * If you want to read a path, please use readPathEntry(). + * + * @param key the key to search for + * @param aDefault a default value returned if the key was not found + * @return the value for this key, or @p aDefault if the key was not found + * + * @see readPathEntry(), writeEntry(), deleteEntry(), hasKey() + */ + QString readEntry(const QString &key, const QString &aDefault) const; + /** + * Overload for readEntry(const QString&, const QString&) const + * @param key name of key, encoded in UTF-8 + */ + QString readEntry(const char *key, const QString &aDefault) const; + + /** Overload for readEntry(const QString&, const QString&) const */ + QString readEntry(const QString &key, const char *aDefault = nullptr) const; + /** + * Overload for readEntry(const QString&, const QString&) const + * @param key name of key, encoded in UTF-8 + */ + QString readEntry(const char *key, const char *aDefault = nullptr) const; + + /** + * @copydoc readEntry(const char*, const QStringList&) const + * + * @warning This function doesn't convert the items returned + * to any type. It's actually a list of QVariant::String's. If you + * want the items converted to a specific type use + * readEntry(const char*, const QList&) const + */ + QVariantList readEntry(const QString &key, const QVariantList &aDefault) const; + /** + * Overload for readEntry(const QString&, const QVariantList&) const + * @param key name of key, encoded in UTF-8 + */ + QVariantList readEntry(const char *key, const QVariantList &aDefault) const; + + /** + * Reads a list of strings from the config object + * + * @param key The key to search for + * @param aDefault The default value to use if the key does not exist + * @return The list, or @p aDefault if @p key does not exist + * + * @see readXdgListEntry(), writeEntry(), deleteEntry(), hasKey() + */ + QStringList readEntry(const QString &key, const QStringList &aDefault) const; + /** + * Overload for readEntry(const QString&, const QStringList&) const + * @param key name of key, encoded in UTF-8 + */ + QStringList readEntry(const char *key, const QStringList &aDefault) const; + + /** + * Reads a list of values from the config object + * + * @param key the key to search for + * @param aDefault the default value to use if the key does not exist + * @return the list, or @p aDefault if @p key does not exist + * + * @see readXdgListEntry(), writeEntry(), deleteEntry(), hasKey() + */ + template + QList readEntry(const QString &key, const QList &aDefault) const + { + return readEntry(key.toUtf8().constData(), aDefault); + } + /** + * Overload for readEntry(const QString&, const QList&) const + * @param key name of key, encoded in UTF-8 + */ + template + QList readEntry(const char *key, const QList &aDefault) const; + + /** + * Reads a list of strings from the config object with semicolons separating + * them (i.e. following desktop entry spec separator semantics). + * + * @param pKey the key to search for + * @param aDefault the default value to use if the key does not exist + * @return the list, or @p aDefault if @p pKey does not exist + * + * @see readEntry(const QString&, const QStringList&) const + */ + QStringList readXdgListEntry(const QString &pKey, const QStringList &aDefault = QStringList()) const; + /** + * Overload for readXdgListEntry(const QString&, const QStringList&) const + * @param key name of key, encoded in UTF-8 + */ + QStringList readXdgListEntry(const char *key, const QStringList &aDefault = QStringList()) const; + + /** + * Reads a path + * + * Read the value of an entry specified by @p pKey in the current group + * and interpret it as a path. This means, dollar expansion is activated + * for this value, so that e.g. $HOME gets expanded. + * + * @param pKey The key to search for. + * @param aDefault A default value returned if the key was not found. + * @return The value for this key. Can be QString() if @p aDefault is null. + */ + QString readPathEntry(const QString &pKey, const QString &aDefault) const; + /** + * Overload for readPathEntry(const QString&, const QString&) const + * @param key name of key, encoded in UTF-8 + */ + QString readPathEntry(const char *key, const QString &aDefault) const; + + /** + * Reads a list of paths + * + * Read the value of an entry specified by @p pKey in the current group + * and interpret it as a list of paths. This means, dollar expansion is activated + * for this value, so that e.g. $HOME gets expanded. + * + * @param pKey the key to search for + * @param aDefault a default value returned if the key was not found + * @return the list, or @p aDefault if the key does not exist + */ + QStringList readPathEntry(const QString &pKey, const QStringList &aDefault) const; + /** + * Overload for readPathEntry(const QString&, const QStringList&) const + * @param key name of key, encoded in UTF-8 + */ + QStringList readPathEntry(const char *key, const QStringList &aDefault) const; + + /** + * Reads an untranslated string entry + * + * You should not normally need to use this. + * + * @param pKey the key to search for + * @param aDefault a default value returned if the key was not found + * @return the value for this key, or @p aDefault if the key does not exist + */ + QString readEntryUntranslated(const QString &pKey, const QString &aDefault = QString()) const; + /** + * Overload for readEntryUntranslated(const QString&, const QString&) const + * @param key name of key, encoded in UTF-8 + */ + QString readEntryUntranslated(const char *key, const QString &aDefault = QString()) const; + + /** + * Writes a value to the configuration object. + * + * @param key the key to write to + * @param value the value to write + * @param pFlags the flags to use when writing this entry + * + * @see readEntry(), writeXdgListEntry(), deleteEntry() + */ + void writeEntry(const QString &key, const QVariant &value, WriteConfigFlags pFlags = Normal); + /** + * Overload for writeEntry(const QString&, const QVariant&, WriteConfigFlags) + * @param key name of key, encoded in UTF-8 + */ + void writeEntry(const char *key, const QVariant &value, WriteConfigFlags pFlags = Normal); + + /** Overload for writeEntry(const QString&, const QVariant&, WriteConfigFlags) */ + void writeEntry(const QString &key, const QString &value, WriteConfigFlags pFlags = Normal); + /** + * Overload for writeEntry(const QString&, const QVariant&, WriteConfigFlags) + * @param key name of key, encoded in UTF-8 + */ + void writeEntry(const char *key, const QString &value, WriteConfigFlags pFlags = Normal); + + /** Overload for writeEntry(const QString&, const QVariant&, WriteConfigFlags) */ + void writeEntry(const QString &key, const QByteArray &value, WriteConfigFlags pFlags = Normal); + /** + * Overload for writeEntry(const QString&, const QVariant&, WriteConfigFlags) + * @param key name of key, encoded in UTF-8 + */ + void writeEntry(const char *key, const QByteArray &value, WriteConfigFlags pFlags = Normal); + + /** Overload for writeEntry(const QString&, const QVariant&, WriteConfigFlags) */ + void writeEntry(const QString &key, const char *value, WriteConfigFlags pFlags = Normal); + /** + * Overload for writeEntry(const QString&, const QVariant&, WriteConfigFlags) + * @param key name of key, encoded in UTF-8 + */ + void writeEntry(const char *key, const char *value, WriteConfigFlags pFlags = Normal); + + /** + * Overload for writeEntry(const QString&, const QVariant&, WriteConfigFlags) + * @param key name of key, encoded in UTF-8 + */ + template + void writeEntry(const char *key, const T &value, WriteConfigFlags pFlags = Normal); + /** Overload for writeEntry(const QString&, const QVariant&, WriteConfigFlags) */ + template + void writeEntry(const QString &key, const T &value, WriteConfigFlags pFlags = Normal) + { + writeEntry(key.toUtf8().constData(), value, pFlags); + } + + /** Overload for writeEntry(const QString&, const QVariant&, WriteConfigFlags) */ + void writeEntry(const QString &key, const QStringList &value, WriteConfigFlags pFlags = Normal); + /** + * Overload for writeEntry(const QString&, const QVariant&, WriteConfigFlags) + * @param key name of key, encoded in UTF-8 + */ + void writeEntry(const char *key, const QStringList &value, WriteConfigFlags pFlags = Normal); + + /** Overload for writeEntry(const QString&, const QVariant&, WriteConfigFlags) */ + void writeEntry(const QString &key, const QVariantList &value, WriteConfigFlags pFlags = Normal); + /** + * Overload for writeEntry(const QString&, const QVariant&, WriteConfigFlags) + * @param key name of key, encoded in UTF-8 + */ + void writeEntry(const char *key, const QVariantList &value, WriteConfigFlags pFlags = Normal); + + /** Overload for writeEntry(const QString&, const QVariant&, WriteConfigFlags) */ + template + void writeEntry(const QString &key, const QList &value, WriteConfigFlags pFlags = Normal) + { + writeEntry(key.toUtf8().constData(), value, pFlags); + } + /** + * Overload for writeEntry(const QString&, const QVariant&, WriteConfigFlags) + * @param key name of key, encoded in UTF-8 + */ + template + void writeEntry(const char *key, const QList &value, WriteConfigFlags pFlags = Normal); + + /** + * Writes a list of strings to the config object, following XDG + * desktop entry spec separator semantics + * + * @param pKey the key to write to + * @param value the list to write + * @param pFlags the flags to use when writing this entry + * + * @see writeEntry(), readXdgListEntry() + */ + void writeXdgListEntry(const QString &pKey, const QStringList &value, WriteConfigFlags pFlags = Normal); + /** + * Overload for writeXdgListEntry(const QString&, const QStringList&, WriteConfigFlags) + * @param key name of key, encoded in UTF-8 + */ + void writeXdgListEntry(const char *key, const QStringList &value, WriteConfigFlags pFlags = Normal); + + /** + * Writes a file path to the configuration + * + * If the path is located under $HOME, the user's home directory + * is replaced with $HOME in the persistent storage. + * The path should therefore be read back with readPathEntry() + * + * @param pKey the key to write to + * @param path the path to write + * @param pFlags the flags to use when writing this entry + * + * @see writeEntry(), readPathEntry() + */ + void writePathEntry(const QString &pKey, const QString &path, WriteConfigFlags pFlags = Normal); + /** + * Overload for writePathEntry(const QString&, const QString&, WriteConfigFlags) + * @param key name of key, encoded in UTF-8 + */ + void writePathEntry(const char *Key, const QString &path, WriteConfigFlags pFlags = Normal); + + /** + * Writes a list of paths to the configuration + * + * If any of the paths are located under $HOME, the user's home directory + * is replaced with $HOME in the persistent storage. + * The paths should therefore be read back with readPathEntry() + * + * @param pKey the key to write to + * @param value the list to write + * @param pFlags the flags to use when writing this entry + * + * @see writeEntry(), readPathEntry() + */ + void writePathEntry(const QString &pKey, const QStringList &value, WriteConfigFlags pFlags = Normal); + /** + * Overload for writePathEntry(const QString&, const QStringList&, WriteConfigFlags) + * @param key name of key, encoded in UTF-8 + */ + void writePathEntry(const char *key, const QStringList &value, WriteConfigFlags pFlags = Normal); + + /** + * Deletes the entry specified by @p pKey in the current group + * + * This also hides system wide defaults. + * + * @param pKey the key to delete + * @param pFlags the flags to use when deleting this entry + * + * @see deleteGroup(), readEntry(), writeEntry() + */ + void deleteEntry(const QString &pKey, WriteConfigFlags pFlags = Normal); + /** + * Overload for deleteEntry(const QString&, WriteConfigFlags) + * @param key name of key, encoded in UTF-8 + */ + void deleteEntry(const char *key, WriteConfigFlags pFlags = Normal); + + /** + * Checks whether the key has an entry in this group + * + * Use this to determine if a key is not specified for the current + * group (hasKey() returns false). + * + * If this returns @c false for a key, readEntry() (and its variants) + * will return the default value passed to them. + * + * @param key the key to search for + * @return @c true if the key is defined in this group by any of the + * configuration sources, @c false otherwise + * + * @see readEntry() + */ + bool hasKey(const QString &key) const; + /** + * Overload for hasKey(const QString&) const + * @param key name of key, encoded in UTF-8 + */ + bool hasKey(const char *key) const; + + /** + * Whether this group may be changed + * + * @return @c false if the group may be changed, @c true otherwise + */ + bool isImmutable() const override; + + /** + * Checks if it is possible to change the given entry + * + * If isImmutable() returns @c true, then this method will return + * @c true for all inputs. + * + * @param key the key to check + * @return @c false if the key may be changed using this configuration + * group object, @c true otherwise + */ + bool isEntryImmutable(const QString &key) const; + /** + * Overload for isEntryImmutable(const QString&) const + * @param key name of key, encoded in UTF-8 + */ + bool isEntryImmutable(const char *key) const; + + /** + * Reverts an entry to the default settings. + * + * Reverts the entry with key @p key in the current group in the + * application specific config file to either the system wide (default) + * value or the value specified in the global KDE config file. + * + * To revert entries in the global KDE config file, the global KDE config + * file should be opened explicitly in a separate config object. + * + * @note This is @em not the same as deleting the key, as instead the + * global setting will be copied to the configuration file that this + * object manipulates. + * + * @param key The key of the entry to revert. + */ + void revertToDefault(const QString &key, WriteConfigFlags pFlag = WriteConfigFlags()); + + /** + * Overload for revertToDefault(const QString&, WriteConfigFlags) + * @param key name of key, encoded in UTF-8 + */ + void revertToDefault(const char *key, WriteConfigFlags pFlag = WriteConfigFlags()); + + /** + * Whether a default is specified for an entry in either the + * system wide configuration file or the global KDE config file + * + * If an application computes a default value at runtime for + * a certain entry, e.g. like: + * \code + * QColor computedDefault = qApp->palette().color(QPalette::Active, QPalette::Text); + * QColor color = group.readEntry(key, computedDefault); + * \endcode + * then it may wish to make the following check before + * writing back changes: + * \code + * if ( (value == computedDefault) && !group.hasDefault(key) ) + * group.revertToDefault(key); + * else + * group.writeEntry(key, value); + * \endcode + * + * This ensures that as long as the entry is not modified to differ from + * the computed default, the application will keep using the computed default + * and will follow changes the computed default makes over time. + * + * @param key the key of the entry to check + * @return @c true if the global or system settings files specify a default + * for @p key in this group, @c false otherwise + */ + bool hasDefault(const QString &key) const; + /** + * Overload for hasDefault(const QString&) const + * @param key name of key, encoded in UTF-8 + */ + bool hasDefault(const char *key) const; + + /** + * Returns a map (tree) of entries for all entries in this group + * + * Only the actual entry string is returned, none of the + * other internal data should be included. + * + * @return a map of entries in this group, indexed by key + */ + QMap entryMap() const; + +protected: + bool hasGroupImpl(const QString &groupName) const override; + KConfigGroup groupImpl(const QString &groupName) override; + const KConfigGroup groupImpl(const QString &groupName) const override; + void deleteGroupImpl(const QString &groupName, WriteConfigFlags flags) override; + bool isGroupImmutableImpl(const QString &groupName) const override; + +private: + QExplicitlySharedDataPointer d; + + friend class KConfigGroupPrivate; + + /** + * Return the data in @p value converted to a QVariant + * + * @param pKey the name of the entry being converted, this is only used for error + * reporting + * @param value the UTF-8 data to be converted + * @param aDefault the default value if @p pKey is not found + * @return @p value converted to QVariant, or @p aDefault if @p value is invalid or cannot be converted. + */ + static QVariant convertToQVariant(const char *pKey, const QByteArray &value, const QVariant &aDefault); + + KCONFIGCORE_NO_EXPORT void moveValue(const char *key, KConfigGroup &other, WriteConfigFlags pFlags); + + // exported for usage by KServices' KService & KServiceAction + friend class KServicePrivate; // XXX yeah, ugly^5 + friend class KServiceAction; +}; + +Q_DECLARE_TYPEINFO(KConfigGroup, Q_RELOCATABLE_TYPE); + +#define KCONFIGGROUP_ENUMERATOR_ERROR(ENUM) "The Qt MetaObject system does not seem to know about \"" ENUM "\" please use Q_ENUM or Q_FLAG to register it." + +/** + * To add support for your own enums in KConfig, you can declare them with Q_ENUM() + * in a QObject subclass (which will make moc generate the code to turn the + * enum into a string and vice-versa), and then (in the cpp code) + * use the macro + * KCONFIGGROUP_DECLARE_ENUM_QOBJECT(MyClass, MyEnum) + * + */ +#define KCONFIGGROUP_DECLARE_ENUM_QOBJECT(Class, Enum) \ + template<> \ + Class::Enum KConfigGroup::readEntry(const char *key, const Class::Enum &def) const \ + { \ + const QMetaObject *M_obj = &Class::staticMetaObject; \ + const int M_index = M_obj->indexOfEnumerator(#Enum); \ + if (M_index == -1) \ + qFatal(KCONFIGGROUP_ENUMERATOR_ERROR(#Enum)); \ + const QMetaEnum M_enum = M_obj->enumerator(M_index); \ + const QByteArray M_data = readEntry(key, QByteArray(M_enum.valueToKey(def))); \ + return static_cast(M_enum.keyToValue(M_data.constData())); \ + } \ + template<> \ + void KConfigGroup::writeEntry(const char *key, const Class::Enum &value, KConfigBase::WriteConfigFlags flags) \ + { \ + const QMetaObject *M_obj = &Class::staticMetaObject; \ + const int M_index = M_obj->indexOfEnumerator(#Enum); \ + if (M_index == -1) \ + qFatal(KCONFIGGROUP_ENUMERATOR_ERROR(#Enum)); \ + const QMetaEnum M_enum = M_obj->enumerator(M_index); \ + writeEntry(key, QByteArray(M_enum.valueToKey(value)), flags); \ + } + +/** + * Similar to KCONFIGGROUP_DECLARE_ENUM_QOBJECT but for flags declared with Q_FLAG() + * (where multiple values can be set at the same time) + */ +#define KCONFIGGROUP_DECLARE_FLAGS_QOBJECT(Class, Flags) \ + template<> \ + Class::Flags KConfigGroup::readEntry(const char *key, const Class::Flags &def) const \ + { \ + const QMetaObject *M_obj = &Class::staticMetaObject; \ + const int M_index = M_obj->indexOfEnumerator(#Flags); \ + if (M_index == -1) \ + qFatal(KCONFIGGROUP_ENUMERATOR_ERROR(#Flags)); \ + const QMetaEnum M_enum = M_obj->enumerator(M_index); \ + const QByteArray M_data = readEntry(key, QByteArray(M_enum.valueToKeys(def))); \ + return static_cast(M_enum.keysToValue(M_data.constData())); \ + } \ + template<> \ + void KConfigGroup::writeEntry(const char *key, const Class::Flags &value, KConfigBase::WriteConfigFlags flags) \ + { \ + const QMetaObject *M_obj = &Class::staticMetaObject; \ + const int M_index = M_obj->indexOfEnumerator(#Flags); \ + if (M_index == -1) \ + qFatal(KCONFIGGROUP_ENUMERATOR_ERROR(#Flags)); \ + const QMetaEnum M_enum = M_obj->enumerator(M_index); \ + writeEntry(key, QByteArray(M_enum.valueToKeys(value)), flags); \ + } + +#include "kconfigconversioncheck_p.h" + +template +T KConfigGroup::readEntry(const char *key, const T &defaultValue) const +{ + KConfigConversionCheck::to_QVariant(); + return qvariant_cast(readEntry(key, QVariant::fromValue(defaultValue))); +} + +template +QList KConfigGroup::readEntry(const char *key, const QList &defaultValue) const +{ + KConfigConversionCheck::to_QVariant(); + KConfigConversionCheck::to_QString(); + + QVariantList data; + + for (const T &value : defaultValue) { + data.append(QVariant::fromValue(value)); + } + + QList list; + const auto variantList = readEntry(key, data); + for (const QVariant &value : variantList) { + Q_ASSERT(value.canConvert()); + list.append(qvariant_cast(value)); + } + + return list; +} + +template +void KConfigGroup::writeEntry(const char *key, const T &value, WriteConfigFlags pFlags) +{ + KConfigConversionCheck::to_QVariant(); + writeEntry(key, QVariant::fromValue(value), pFlags); +} + +template +void KConfigGroup::writeEntry(const char *key, const QList &list, WriteConfigFlags pFlags) +{ + KConfigConversionCheck::to_QVariant(); + KConfigConversionCheck::to_QString(); + QVariantList data; + for (const T &value : list) { + data.append(QVariant::fromValue(value)); + } + + writeEntry(key, data, pFlags); +} + +#endif // KCONFIGGROUP_H diff --git a/src/core/kconfiggroup_p.h b/src/core/kconfiggroup_p.h new file mode 100644 index 0000000..2744c15 --- /dev/null +++ b/src/core/kconfiggroup_p.h @@ -0,0 +1,26 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2007 Thiago Macieira + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGGROUP_P_H +#define KCONFIGGROUP_P_H + +#include "kconfiggroup.h" +#include + +class KConfigGroup; + +struct KConfigGroupGui { + typedef bool (*kReadEntryGui)(const QByteArray &data, const char *key, const QVariant &input, QVariant &output); + typedef bool (*kWriteEntryGui)(KConfigGroup *, const char *key, const QVariant &input, KConfigGroup::WriteConfigFlags flags); + + kReadEntryGui readEntryGui; + kWriteEntryGui writeEntryGui; +}; + +extern KCONFIGCORE_EXPORT KConfigGroupGui _kde_internal_KConfigGroupGui; + +#endif diff --git a/src/core/kconfigini.cpp b/src/core/kconfigini.cpp new file mode 100644 index 0000000..56e752e --- /dev/null +++ b/src/core/kconfigini.cpp @@ -0,0 +1,957 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2006, 2007 Thomas Braxton + SPDX-FileCopyrightText: 1999 Preston Brown + SPDX-FileCopyrightText: 1997-1999 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kconfigini_p.h" + +#include "bufferfragment_p.h" +#include "kconfig_core_log_settings.h" +#include "kconfigdata_p.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#ifndef Q_OS_WIN +#include // getuid, close +#endif +#include // open +#include // uid_t + +using namespace Qt::StringLiterals; + +KCONFIGCORE_EXPORT bool kde_kiosk_exception = false; // flag to disable kiosk restrictions + +static QByteArray lookup(const KConfigIniBackend::BufferFragment fragment, QHash *cache) +{ + auto it = cache->constFind(fragment); + if (it != cache->constEnd()) { + return it.value(); + } + + return cache->insert(fragment, fragment.toByteArray()).value(); +} + +QString KConfigIniBackend::warningProlog(const QFile &file, int line) +{ + // %2 then %1 i.e. int before QString, so that the QString is last + // This avoids a wrong substitution if the fileName itself contains %1 + return QStringLiteral("KConfigIni: In file %2, line %1:").arg(line).arg(file.fileName()); +} + +KConfigIniBackend::KConfigIniBackend() + : lockFile(nullptr) +{ +} + +KConfigIniBackend::ParseInfo KConfigIniBackend::parseConfig(const QByteArray ¤tLocale, KEntryMap &entryMap, ParseOptions options) +{ + return parseConfig(currentLocale, entryMap, options, false); +} + +// merging==true is the merging that happens at the beginning of writeConfig: +// merge changes in the on-disk file with the changes in the KConfig object. +KConfigIniBackend::ParseInfo KConfigIniBackend::parseConfig(const QByteArray ¤tLocale, KEntryMap &entryMap, ParseOptions options, bool merging) +{ + if (filePath().isEmpty()) { + return ParseOk; + } + + QFile file(filePath()); + if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) { + return file.exists() ? ParseOpenError : ParseOk; + } + + QList immutableGroups; + + bool fileOptionImmutable = false; + bool groupOptionImmutable = false; + bool groupSkip = false; + + int lineNo = 0; + // on systems using \r\n as end of line, \r will be taken care of by + // trim() below + QByteArray buffer = file.readAll(); + BufferFragment contents(buffer.data(), buffer.size()); + unsigned int len = contents.length(); + unsigned int startOfLine = 0; + + const int langIdx = currentLocale.indexOf('_'); + const QByteArray currentLanguage = langIdx >= 0 ? currentLocale.left(langIdx) : currentLocale; + + QString currentGroup = QStringLiteral(""); + bool bDefault = options & ParseDefaults; + bool allowExecutableValues = options & ParseExpansions; + + // Reduce memory overhead by making use of implicit sharing + // This assumes that config files contain only a small amount of + // different fragments which are repeated often. + // This is often the case, especially sub groups will all have + // the same list of keys and similar values as well. + QHash cache; + cache.reserve(4096); + + while (startOfLine < len) { + BufferFragment line = contents.split('\n', &startOfLine); + line.trim(); + ++lineNo; + + // skip empty lines and lines beginning with '#' + if (line.isEmpty() || line.at(0) == '#') { + continue; + } + + if (line.at(0) == '[') { // found a group + groupOptionImmutable = fileOptionImmutable; + + QByteArray newGroup; + int start = 1; + int end = 0; + do { + end = start; + for (;;) { + if (end == line.length()) { + qCWarning(KCONFIG_CORE_LOG) << warningProlog(file, lineNo) << "Invalid group header."; + // XXX maybe reset the current group here? + goto next_line; + } + if (line.at(end) == ']') { + break; + } + ++end; + } + /* clang-format off */ + if (end + 1 == line.length() + && start + 2 == end + && line.at(start) == '$' + && line.at(start + 1) == 'i') { /* clang-format on */ + if (newGroup.isEmpty()) { + fileOptionImmutable = !kde_kiosk_exception; + } else { + groupOptionImmutable = !kde_kiosk_exception; + } + } else { + if (!newGroup.isEmpty()) { + newGroup += '\x1d'; + } + BufferFragment namePart = line.mid(start, end - start); + printableToString(&namePart, file, lineNo); + newGroup += namePart.toByteArray(); + } + } while ((start = end + 2) <= line.length() && line.at(end + 1) == '['); + currentGroup = QString::fromUtf8(newGroup); + + groupSkip = entryMap.getEntryOption(currentGroup, {}, {}, KEntryMap::EntryImmutable); + + if (groupSkip && !bDefault) { + continue; + } + + if (groupOptionImmutable) + // Do not make the groups immutable until the entries from + // this file have been added. + { + immutableGroups.append(currentGroup); + } + } else { + if (groupSkip && !bDefault) { + continue; // skip entry + } + + BufferFragment aKey; + int eqpos = line.indexOf('='); + if (eqpos < 0) { + aKey = line; + line.clear(); + } else { + BufferFragment temp = line.left(eqpos); + temp.trim(); + aKey = temp; + line.truncateLeft(eqpos + 1); + line.trim(); + } + if (aKey.isEmpty()) { + qCWarning(KCONFIG_CORE_LOG) << warningProlog(file, lineNo) << "Invalid entry (empty key)"; + continue; + } + + KEntryMap::EntryOptions entryOptions = {}; + if (groupOptionImmutable) { + entryOptions |= KEntryMap::EntryImmutable; + } + + BufferFragment locale; + int start; + while ((start = aKey.lastIndexOf('[')) >= 0) { + int end = aKey.indexOf(']', start); + if (end < 0) { + qCWarning(KCONFIG_CORE_LOG) << warningProlog(file, lineNo) << "Invalid entry (missing ']')"; + goto next_line; + } else if (end > start + 1 && aKey.at(start + 1) == '$') { // found option(s) + int i = start + 2; + while (i < end) { + switch (aKey.at(i)) { + case 'i': + if (!kde_kiosk_exception) { + entryOptions |= KEntryMap::EntryImmutable; + } + break; + case 'e': + if (allowExecutableValues) { + entryOptions |= KEntryMap::EntryExpansion; + } + break; + case 'd': + entryOptions |= KEntryMap::EntryDeleted; + aKey.truncate(start); + printableToString(&aKey, file, lineNo); + entryMap.setEntry(currentGroup, aKey.toByteArray(), QByteArray(), entryOptions); + goto next_line; + default: + break; + } + ++i; + } + } else { // found a locale + if (!locale.isNull()) { + qCWarning(KCONFIG_CORE_LOG) << warningProlog(file, lineNo) << "Invalid entry (second locale!?)"; + goto next_line; + } + + locale = aKey.mid(start + 1, end - start - 1); + } + aKey.truncate(start); + } + if (eqpos < 0) { // Do this here after [$d] was checked + qCWarning(KCONFIG_CORE_LOG) << warningProlog(file, lineNo) << "Invalid entry (missing '=')"; + continue; + } + printableToString(&aKey, file, lineNo); + if (!locale.isEmpty()) { + if (locale != currentLocale && locale != currentLanguage) { + // backward compatibility. C == en_US + if (locale.at(0) != 'C' || currentLocale != "en_US") { + if (merging) { + entryOptions |= KEntryMap::EntryRawKey; + } else { + goto next_line; // skip this entry if we're not merging + } + } + } + } + + if (!(entryOptions & KEntryMap::EntryRawKey)) { + printableToString(&aKey, file, lineNo); + } + + if (options & ParseGlobal) { + entryOptions |= KEntryMap::EntryGlobal; + } + if (bDefault) { + entryOptions |= KEntryMap::EntryDefault; + } + if (!locale.isNull()) { + entryOptions |= KEntryMap::EntryLocalized; + if (locale.indexOf('_') != -1) { + entryOptions |= KEntryMap::EntryLocalizedCountry; + } + } + printableToString(&line, file, lineNo); + if (entryOptions & KEntryMap::EntryRawKey) { + QByteArray rawKey; + rawKey.reserve(aKey.length() + locale.length() + 2); + rawKey.append(aKey.toVolatileByteArray()); + rawKey.append('[').append(locale.toVolatileByteArray()).append(']'); + entryMap.setEntry(currentGroup, rawKey, lookup(line, &cache), entryOptions); + } else { + entryMap.setEntry(currentGroup, lookup(aKey, &cache), lookup(line, &cache), entryOptions); + } + } + next_line: + continue; + } + + // now make sure immutable groups are marked immutable + for (const QString &group : std::as_const(immutableGroups)) { + entryMap.setEntry(group, QByteArray(), QByteArray(), KEntryMap::EntryImmutable); + } + + return fileOptionImmutable ? ParseImmutable : ParseOk; +} + +void KConfigIniBackend::writeEntries(const QByteArray &locale, QIODevice &file, const KEntryMap &map, bool defaultGroup, bool &firstEntry) +{ + QString currentGroup; + bool groupIsImmutable = false; + for (const auto &[key, entry] : map) { + // Either process the default group or all others + if ((key.mGroup != QStringLiteral("")) == defaultGroup) { + continue; // skip + } + + // the only thing we care about groups is, is it immutable? + if (key.mKey.isNull()) { + groupIsImmutable = entry.bImmutable; + continue; // skip + } + + const KEntry ¤tEntry = entry; + if (!defaultGroup && currentGroup != key.mGroup) { + if (!firstEntry) { + file.putChar('\n'); + } + currentGroup = key.mGroup; + for (int start = 0, end;; start = end + 1) { + file.putChar('['); + end = currentGroup.indexOf(QLatin1Char('\x1d'), start); + if (end < 0) { + int cgl = currentGroup.length(); + if (currentGroup.at(start) == QLatin1Char('$') && cgl - start <= 10) { + for (int i = start + 1; i < cgl; i++) { + const QChar c = currentGroup.at(i); + if (c < QLatin1Char('a') || c > QLatin1Char('z')) { + goto nope; + } + } + file.write("\\x24"); + ++start; + } + nope: + // TODO: make stringToPrintable also process QString, to save the conversion here and below + file.write(stringToPrintable(QStringView(currentGroup).mid(start).toUtf8(), GroupString)); + file.putChar(']'); + if (groupIsImmutable) { + file.write("[$i]", 4); + } + file.putChar('\n'); + break; + } else { + file.write(stringToPrintable(QStringView(currentGroup).mid(start, end - start).toUtf8(), GroupString)); + file.putChar(']'); + } + } + } + + firstEntry = false; + // it is data for a group + + if (key.bRaw) { // unprocessed key with attached locale from merge + file.write(key.mKey); + } else { + file.write(stringToPrintable(key.mKey, KeyString)); // Key + if (key.bLocal && locale != "C") { // 'C' locale == untranslated + file.putChar('['); + file.write(locale); // locale tag + file.putChar(']'); + } + } + if (currentEntry.bDeleted) { + if (currentEntry.bImmutable) { + file.write("[$di]", 5); // Deleted + immutable + } else { + file.write("[$d]", 4); // Deleted + } + } else { + if (currentEntry.bImmutable || currentEntry.bExpand) { + file.write("[$", 2); + if (currentEntry.bImmutable) { + file.putChar('i'); + } + if (currentEntry.bExpand) { + file.putChar('e'); + } + file.putChar(']'); + } + file.putChar('='); + file.write(stringToPrintable(currentEntry.mValue, ValueString)); + } + file.putChar('\n'); + } +} + +void KConfigIniBackend::writeEntries(const QByteArray &locale, QIODevice &file, const KEntryMap &map) +{ + bool firstEntry = true; + + // write default group + writeEntries(locale, file, map, true, firstEntry); + + // write all other groups + writeEntries(locale, file, map, false, firstEntry); +} + +bool KConfigIniBackend::writeConfig(const QByteArray &locale, KEntryMap &entryMap, WriteOptions options) +{ + Q_ASSERT(!filePath().isEmpty()); + + KEntryMap writeMap; + const bool bGlobal = options & WriteGlobal; + + // First, reparse the file on disk, to merge our changes with the ones done by other apps + // Store the result into writeMap. + { + ParseOptions opts = ParseExpansions; + if (bGlobal) { + opts |= ParseGlobal; + } + ParseInfo info = parseConfig(locale, writeMap, opts, true); + if (info != ParseOk) { // either there was an error or the file became immutable + return false; + } + } + + for (auto &[key, entry] : entryMap) { + if (!key.mKey.isEmpty() && !entry.bDirty) { // not dirty, doesn't overwrite entry in writeMap. skips default entries, too. + continue; + } + + // only write entries that have the same "globality" as the file + if (entry.bGlobal == bGlobal) { + if (entry.bReverted && entry.bOverridesGlobal) { + entry.bDeleted = true; + writeMap[key] = entry; + } else if (entry.bReverted) { + writeMap.erase(key); + } else if (!entry.bDeleted) { + writeMap[key] = entry; + } else { + KEntryKey defaultKey = key; + defaultKey.bDefault = true; + if (entryMap.find(defaultKey) == entryMap.end() && !entry.bOverridesGlobal) { + writeMap.erase(key); // remove the deleted entry if there is no default + // qDebug() << "Detected as deleted=>removed:" << key.mGroup << key.mKey << "global=" << bGlobal; + } else { + writeMap[key] = entry; // otherwise write an explicitly deleted entry + // qDebug() << "Detected as deleted=>[$d]:" << key.mGroup << key.mKey << "global=" << bGlobal; + } + } + entry.bDirty = false; + } + } + + // now writeMap should contain only entries to be written + // so write it out to disk + + // check if file exists + QFile::Permissions fileMode = filePath().startsWith(u"/etc/xdg/"_s) ? QFile::ReadUser | QFile::WriteUser | QFile::ReadGroup | QFile::ReadOther // + : QFile::ReadUser | QFile::WriteUser; + + bool createNew = true; + + QFileInfo fi(filePath()); + if (fi.exists()) { +#ifdef Q_OS_WIN + // TODO: getuid does not exist on windows, use GetSecurityInfo and GetTokenInformation instead + createNew = false; +#else + if (fi.ownerId() == ::getuid()) { + // Preserve file mode if file exists and is owned by user. + fileMode = fi.permissions(); + } else { + // File is not owned by user: + // Don't create new file but write to existing file instead. + createNew = false; + } +#endif + } + + if (createNew) { + QSaveFile file(filePath()); + if (!file.open(QIODevice::WriteOnly)) { +#ifdef Q_OS_ANDROID + // HACK: when we are dealing with content:// URIs, QSaveFile has to rely on DirectWrite. + // Otherwise this method returns a false and we're done. + file.setDirectWriteFallback(true); + if (!file.open(QIODevice::WriteOnly)) { + qWarning(KCONFIG_CORE_LOG) << "Couldn't create a new file:" << filePath() << ". Error:" << file.errorString(); + return false; + } +#else + qWarning(KCONFIG_CORE_LOG) << "Couldn't create a new file:" << filePath() << ". Error:" << file.errorString(); + return false; +#endif + } + + file.setTextModeEnabled(true); // to get eol translation + writeEntries(locale, file, writeMap); + + if (!file.size() && (fileMode == (QFile::ReadUser | QFile::WriteUser))) { + // File is empty and doesn't have special permissions: delete it. + file.cancelWriting(); + + if (fi.exists()) { + // also remove the old file in case it existed. this can happen + // when we delete all the entries in an existing config file. + // if we don't do this, then deletions and revertToDefault's + // will mysteriously fail + QFile::remove(filePath()); + } + } else { + // Normal case: Close the file + if (file.commit()) { + QFile::setPermissions(filePath(), fileMode); + return true; + } + // Couldn't write. Disk full? + qCWarning(KCONFIG_CORE_LOG) << "Couldn't write" << filePath() << ". Disk full?"; + return false; + } + } else { + // Open existing file. *DON'T* create it if it suddenly does not exist! +#if defined(Q_OS_UNIX) && !defined(Q_OS_ANDROID) + int fd = QT_OPEN(QFile::encodeName(filePath()).constData(), O_WRONLY | O_TRUNC); + if (fd < 0) { + return false; + } + QFile f; + if (!f.open(fd, QIODevice::WriteOnly)) { + QT_CLOSE(fd); + return false; + } + writeEntries(locale, f, writeMap); + f.close(); + QT_CLOSE(fd); +#else + QFile f(filePath()); + // XXX This is broken - it DOES create the file if it is suddenly gone. + if (!f.open(QIODevice::WriteOnly | QIODevice::Truncate)) { + return false; + } + f.setTextModeEnabled(true); + writeEntries(locale, f, writeMap); +#endif + } + return true; +} + +bool KConfigIniBackend::isWritable() const +{ + const QString filePath = this->filePath(); + if (filePath.isEmpty()) { + return false; + } + + QFileInfo file(filePath); + if (file.exists()) { + return file.isWritable(); + } + + // If the file does not exist, check if the deepest existing dir is writable + QFileInfo dir(file.absolutePath()); + while (!dir.exists()) { + QString parent = dir.absolutePath(); // Go up. Can't use cdUp() on non-existing dirs. + if (parent == dir.filePath()) { + // no parent + return false; + } + dir.setFile(parent); + } + return dir.isDir() && dir.isWritable(); +} + +QString KConfigIniBackend::nonWritableErrorMessage() const +{ + return tr("Configuration file \"%1\" not writable.\n").arg(filePath()); +} + +void KConfigIniBackend::createEnclosing() +{ + const QString file = filePath(); + if (file.isEmpty()) { + return; // nothing to do + } + + // Create the containing dir, maybe it wasn't there + QDir().mkpath(QFileInfo(file).absolutePath()); +} + +void KConfigIniBackend::setFilePath(const QString &path) +{ + if (path.isEmpty()) { + return; + } + + Q_ASSERT(QDir::isAbsolutePath(path)); + + const QFileInfo info(path); + if (info.exists()) { + setLocalFilePath(info.canonicalFilePath()); + return; + } + + if (QString filePath = info.dir().canonicalPath(); !filePath.isEmpty()) { + filePath += QLatin1Char('/') + info.fileName(); + setLocalFilePath(filePath); + } else { + setLocalFilePath(path); + } +} + +KConfigBase::AccessMode KConfigIniBackend::accessMode() const +{ + if (filePath().isEmpty()) { + return KConfigBase::NoAccess; + } + + if (isWritable()) { + return KConfigBase::ReadWrite; + } + + return KConfigBase::ReadOnly; +} + +bool KConfigIniBackend::lock() +{ + Q_ASSERT(!filePath().isEmpty()); + + m_mutex.lock(); +#ifdef Q_OS_ANDROID + if (!lockFile) { + // handle content Uris properly + if (filePath().startsWith(QLatin1String("content://"))) { + // we can't create file at an arbitrary location, so use internal storage to create one + + // NOTE: filename can be the same, but because this lock is short lived we may never have a collision + lockFile = new QLockFile(QStandardPaths::writableLocation(QStandardPaths::GenericCacheLocation) + QLatin1String("/") + + QFileInfo(filePath()).fileName() + QLatin1String(".lock")); + } else { + lockFile = new QLockFile(filePath() + QLatin1String(".lock")); + } + } +#else + if (!lockFile) { + lockFile = new QLockFile(filePath() + QLatin1String(".lock")); + } +#endif + + if (!lockFile->lock()) { + m_mutex.unlock(); + } + + return lockFile->isLocked(); +} + +void KConfigIniBackend::unlock() +{ + lockFile->unlock(); + delete lockFile; + lockFile = nullptr; + m_mutex.unlock(); +} + +bool KConfigIniBackend::isLocked() const +{ + return lockFile && lockFile->isLocked(); +} + +namespace +{ +// serialize an escaped byte at the end of @param data +// @param data should have room for 4 bytes +char *escapeByte(char *data, unsigned char s) +{ + static const char nibbleLookup[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}; + *data++ = '\\'; + *data++ = 'x'; + *data++ = nibbleLookup[s >> 4]; + *data++ = nibbleLookup[s & 0x0f]; + return data; +} + +// Struct that represents a multi-byte UTF-8 character. +// This struct is used to keep track of bytes that seem to be valid +// UTF-8. +struct Utf8Char { +public: + unsigned char bytes[4]; + unsigned char count; + unsigned char charLength; + + Utf8Char() + { + clear(); + charLength = 0; + } + void clear() + { + count = 0; + } + // Add a byte to the UTF8 character. + // When an additional byte leads to an invalid character, return false. + bool addByte(unsigned char b) + { + if (count == 0) { + if (b > 0xc1 && (b & 0xe0) == 0xc0) { + charLength = 2; + } else if ((b & 0xf0) == 0xe0) { + charLength = 3; + } else if (b < 0xf5 && (b & 0xf8) == 0xf0) { + charLength = 4; + } else { + return false; + } + bytes[0] = b; + count = 1; + } else if (count < 4 && (b & 0xc0) == 0x80) { + if (count == 1) { + if (charLength == 3 && bytes[0] == 0xe0 && b < 0xa0) { + return false; // overlong 3 byte sequence + } + if (charLength == 4) { + if (bytes[0] == 0xf0 && b < 0x90) { + return false; // overlong 4 byte sequence + } + if (bytes[0] == 0xf4 && b > 0x8f) { + return false; // Unicode value larger than U+10FFFF + } + } + } + bytes[count++] = b; + } else { + return false; + } + return true; + } + // Return true if Utf8Char contains one valid character. + bool isComplete() const + { + return count > 0 && count == charLength; + } + // Add the bytes in this UTF8 character in escaped form to data. + char *escapeBytes(char *data) + { + for (unsigned char i = 0; i < count; ++i) { + data = escapeByte(data, bytes[i]); + } + clear(); + return data; + } + // Add the bytes of the UTF8 character to a buffer. + // Only call this if isComplete() returns true. + char *writeUtf8(char *data) + { + for (unsigned char i = 0; i < count; ++i) { + *data++ = bytes[i]; + } + clear(); + return data; + } + // Write the bytes in the UTF8 character literally, or, if the + // character is not complete, write the escaped bytes. + // This is useful to handle the state that remains after handling + // all bytes in a buffer. + char *write(char *data) + { + if (isComplete()) { + data = writeUtf8(data); + } else { + data = escapeBytes(data); + } + return data; + } +}; +} + +QByteArray KConfigIniBackend::stringToPrintable(const QByteArray &aString, StringType type) +{ + const int len = aString.size(); + if (len == 0) { + return aString; + } + + QByteArray result; // Guesstimated that it's good to avoid data() initialization for a length of len*4 + result.resize(len * 4); // Maximum 4x as long as source string due to \x escape sequences + const char *s = aString.constData(); + int i = 0; + char *data = result.data(); + char *start = data; + + // Protect leading space + if (s[0] == ' ' && type != GroupString) { + *data++ = '\\'; + *data++ = 's'; + ++i; + } + Utf8Char utf8; + + for (; i < len; ++i) { + switch (s[i]) { + default: + if (utf8.addByte(s[i])) { + break; + } else { + data = utf8.escapeBytes(data); + } + // The \n, \t, \r cases (all < 32) are handled below; we can ignore them here + if (((unsigned char)s[i]) < 32) { + goto doEscape; + } + // GroupString and KeyString should be valid UTF-8, but ValueString + // can be a bytearray with non-UTF-8 bytes that should be escaped. + if (type == ValueString && ((unsigned char)s[i]) >= 127) { + goto doEscape; + } + *data++ = s[i]; + break; + case '\n': + *data++ = '\\'; + *data++ = 'n'; + break; + case '\t': + *data++ = '\\'; + *data++ = 't'; + break; + case '\r': + *data++ = '\\'; + *data++ = 'r'; + break; + case '\\': + *data++ = '\\'; + *data++ = '\\'; + break; + case '=': + if (type != KeyString) { + *data++ = s[i]; + break; + } + goto doEscape; + case '[': + case ']': + // Above chars are OK to put in *value* strings as plaintext + if (type == ValueString) { + *data++ = s[i]; + break; + } + doEscape: + data = escapeByte(data, s[i]); + break; + } + if (utf8.isComplete()) { + data = utf8.writeUtf8(data); + } + } + data = utf8.write(data); + *data = 0; + result.resize(data - start); + + // Protect trailing space + if (result.endsWith(' ') && type != GroupString) { + result.replace(result.length() - 1, 1, "\\s"); + } + + return result; +} + +char KConfigIniBackend::charFromHex(const char *str, const QFile &file, int line) +{ + unsigned char ret = 0; + for (int i = 0; i < 2; i++) { + ret <<= 4; + quint8 c = quint8(str[i]); + + if (c >= '0' && c <= '9') { + ret |= c - '0'; + } else if (c >= 'a' && c <= 'f') { + ret |= c - 'a' + 0x0a; + } else if (c >= 'A' && c <= 'F') { + ret |= c - 'A' + 0x0a; + } else { + QByteArray e(str, 2); + e.prepend("\\x"); + qCWarning(KCONFIG_CORE_LOG) << warningProlog(file, line) << "Invalid hex character " << c << " in \\x-type escape sequence \"" << e.constData() + << "\"."; + return 'x'; + } + } + return char(ret); +} + +void KConfigIniBackend::printableToString(BufferFragment *aString, const QFile &file, int line) +{ + if (aString->isEmpty() || aString->indexOf('\\') == -1) { + return; + } + aString->trim(); + int l = aString->length(); + char *r = aString->data(); + char *str = r; + + for (int i = 0; i < l; i++, r++) { + if (str[i] != '\\') { + *r = str[i]; + } else { + // Probable escape sequence + ++i; + if (i >= l) { // Line ends after backslash - stop. + *r = '\\'; + break; + } + + switch (str[i]) { + case 's': + *r = ' '; + break; + case 't': + *r = '\t'; + break; + case 'n': + *r = '\n'; + break; + case 'r': + *r = '\r'; + break; + case '\\': + *r = '\\'; + break; + case ';': + // not really an escape sequence, but allowed in .desktop files, don't strip '\;' from the string + *r = '\\'; + ++r; + *r = ';'; + break; + case ',': + // not really an escape sequence, but allowed in .desktop files, don't strip '\,' from the string + *r = '\\'; + ++r; + *r = ','; + break; + case 'x': + if (i + 2 < l) { + *r = charFromHex(str + i + 1, file, line); + i += 2; + } else { + *r = 'x'; + i = l - 1; + } + break; + default: + *r = '\\'; + qCWarning(KCONFIG_CORE_LOG).noquote() << warningProlog(file, line) << QStringLiteral("Invalid escape sequence: «\\%1»").arg(str[i]); + } + } + } + aString->truncate(r - aString->constData()); +} + +QString KConfigIniBackend::filePath() const +{ + return mLocalFilePath; +} + +void KConfigIniBackend::setLocalFilePath(const QString &file) +{ + mLocalFilePath = file; +} + +#include "moc_kconfigini_p.cpp" diff --git a/src/core/kconfigini_p.h b/src/core/kconfigini_p.h new file mode 100644 index 0000000..6c7a87f --- /dev/null +++ b/src/core/kconfigini_p.h @@ -0,0 +1,103 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2006, 2007 Thomas Braxton + SPDX-FileCopyrightText: 1999 Preston Brown + SPDX-FileCopyrightText: 1997 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGINI_P_H +#define KCONFIGINI_P_H + +#include +#include +#include +#include +#include +#include + +class QLockFile; +class QIODevice; +class KEntryMap; + +class KConfigIniBackend : public QSharedData +{ + Q_GADGET + Q_DECLARE_TR_FUNCTIONS(KConfigIniBackend) + +private: + QLockFile *lockFile; + QMutex m_mutex; + +public: + class BufferFragment; + + KConfigIniBackend(); + + /** Allows the behaviour of parseConfig() to be tuned */ + enum ParseOption { + ParseGlobal = 1, /// entries should be marked as @em global + ParseDefaults = 2, /// entries should be marked as @em default + ParseExpansions = 4, /// entries are allowed to be marked as @em expandable + }; + Q_FLAG(ParseOption) + /// @typedef typedef QFlags ParseOptions + Q_DECLARE_FLAGS(ParseOptions, ParseOption) + + /** Allows the behaviour of writeConfig() to be tuned */ + enum WriteOption { + WriteGlobal = 1 /// only write entries marked as "global" + }; + Q_FLAG(WriteOption) + /// @typedef typedef QFlags WriteOptions + Q_DECLARE_FLAGS(WriteOptions, WriteOption) + + /** Return value from parseConfig() */ + enum ParseInfo { + ParseOk, /// the configuration was opened read/write + ParseImmutable, /// the configuration is @em immutable + ParseOpenError, /// the configuration could not be opened + }; + + ParseInfo parseConfig(const QByteArray &locale, KEntryMap &entryMap, ParseOptions options); + ParseInfo parseConfig(const QByteArray &locale, KEntryMap &entryMap, ParseOptions options, bool merging); + bool writeConfig(const QByteArray &locale, KEntryMap &entryMap, WriteOptions options); + + bool isWritable() const; + QString nonWritableErrorMessage() const; + KConfigBase::AccessMode accessMode() const; + void createEnclosing(); + void setFilePath(const QString &path); + bool lock(); + void unlock(); + bool isLocked() const; + + /** @return the absolute path to the object */ + QString filePath() const; + +private: + enum StringType { + GroupString = 0, + KeyString = 1, + ValueString = 2, + }; + // Warning: this modifies data in-place. Other BufferFragment objects referencing the same buffer + // fragment will get their data modified too. + static void printableToString(BufferFragment *aString, const QFile &file, int line); + static QByteArray stringToPrintable(const QByteArray &aString, StringType type); + static char charFromHex(const char *str, const QFile &file, int line); + static QString warningProlog(const QFile &file, int line); + + void writeEntries(const QByteArray &locale, QIODevice &file, const KEntryMap &map); + void writeEntries(const QByteArray &locale, QIODevice &file, const KEntryMap &map, bool defaultGroup, bool &firstEntry); + + void setLocalFilePath(const QString &file); + + QString mLocalFilePath; +}; + +Q_DECLARE_OPERATORS_FOR_FLAGS(KConfigIniBackend::ParseOptions) +Q_DECLARE_OPERATORS_FOR_FLAGS(KConfigIniBackend::WriteOptions) + +#endif // KCONFIGINI_P_H diff --git a/src/core/kconfigwatcher.cpp b/src/core/kconfigwatcher.cpp new file mode 100644 index 0000000..4feb9b5 --- /dev/null +++ b/src/core/kconfigwatcher.cpp @@ -0,0 +1,118 @@ +/* + SPDX-FileCopyrightText: 2018 David Edmundson + SPDX-FileCopyrightText: 2023 Harald Sitter + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kconfigwatcher.h" + +#include "config-kconfig.h" +#include "kconfig_core_log_settings.h" + +#if KCONFIG_USE_DBUS +#include +#include +#include + +#include "dbussanitizer_p.h" +#endif + +#include +#include +#include + +class KConfigWatcherPrivate +{ +public: + KSharedConfig::Ptr m_config; +}; + +KConfigWatcher::Ptr KConfigWatcher::create(const KSharedConfig::Ptr &config) +{ + static QThreadStorage>> watcherList; + + auto c = config.data(); + KConfigWatcher::Ptr watcher; + + if (!watcherList.localData().contains(c)) { + watcher = KConfigWatcher::Ptr(new KConfigWatcher(config)); + + watcherList.localData().insert(c, watcher.toWeakRef()); + + QObject::connect(watcher.data(), &QObject::destroyed, [c]() { + watcherList.localData().remove(c); + }); + } + return watcherList.localData().value(c).toStrongRef(); +} + +KConfigWatcher::KConfigWatcher(const KSharedConfig::Ptr &config) + : QObject(nullptr) + , d(new KConfigWatcherPrivate) +{ + Q_ASSERT(config); + d->m_config = config; + if (config->name().isEmpty()) { + return; + } + + // Watching absolute paths is not supported and also makes no sense. + const bool isAbsolutePath = config->name().at(0) == QLatin1Char('/'); + if (isAbsolutePath) { + qCWarning(KCONFIG_CORE_LOG) << "Watching absolute paths is not supported" << config->name(); + return; + } + +#if KCONFIG_USE_DBUS + qDBusRegisterMetaType(); + qDBusRegisterMetaType>(); + + QStringList watchedPaths = d->m_config->additionalConfigSources(); + for (QString &file : watchedPaths) { + file.prepend(QLatin1Char('/')); + } + watchedPaths.prepend(kconfigDBusSanitizePath(QLatin1Char('/') + d->m_config->name())); + + if (d->m_config->openFlags() & KConfig::IncludeGlobals) { + watchedPaths << QStringLiteral("/kdeglobals"); + } + + for (const QString &path : std::as_const(watchedPaths)) { + QDBusConnection::sessionBus().connect(QString(), + path, + QStringLiteral("org.kde.kconfig.notify"), + QStringLiteral("ConfigChanged"), + this, + // clang-format off + SLOT(onConfigChangeNotification(QHash)) + // clang-format on + ); + } +#endif +} + +KConfigWatcher::~KConfigWatcher() = default; + +KSharedConfig::Ptr KConfigWatcher::config() const +{ + return d->m_config; +} + +void KConfigWatcher::onConfigChangeNotification(const QHash &changes) +{ + // should we ever need it we can determine the file changed with QDbusContext::message().path(), but it doesn't seem too useful + + d->m_config->reparseConfiguration(); + + for (auto it = changes.constBegin(); it != changes.constEnd(); it++) { + KConfigGroup group = d->m_config->group(QString()); // top level group + const auto parts = it.key().split(QLatin1Char('\x1d')); // magic char, see KConfig + for (const QString &groupName : parts) { + group = group.group(groupName); + } + Q_EMIT configChanged(group, it.value()); + } +} + +#include "moc_kconfigwatcher.cpp" diff --git a/src/core/kconfigwatcher.h b/src/core/kconfigwatcher.h new file mode 100644 index 0000000..d811440 --- /dev/null +++ b/src/core/kconfigwatcher.h @@ -0,0 +1,66 @@ +/* + SPDX-FileCopyrightText: 2018 David Edmundson + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGWATCHER_H +#define KCONFIGWATCHER_H + +#include +#include + +#include +#include + +#include + +class KConfigWatcherPrivate; + +/** + * \class KConfigWatcher kconfigwatcher.h + * + * Notifies when another client has updated this config file with the Notify flag set. + * @since 5.51 + */ +class KCONFIGCORE_EXPORT KConfigWatcher : public QObject +{ + Q_OBJECT +public: + typedef QSharedPointer Ptr; + + /** + * Instantiate a ConfigWatcher for a given config + * + * @note any additional config sources should be set before this point. + */ + static Ptr create(const KSharedConfig::Ptr &config); + + ~KConfigWatcher() override; + + /** + * Returns the config being watched + * @since 5.66 + */ + KSharedConfig::Ptr config() const; + +Q_SIGNALS: + /** + * Emitted when a config group has changed + * The config will be reloaded before this signal is emitted + * + * @arg group the config group that has changed + * @arg names a list of entries that have changed within that group (UTF-8 encoded) + */ + void configChanged(const KConfigGroup &group, const QByteArrayList &names); + +private Q_SLOTS: + KCONFIGCORE_NO_EXPORT void onConfigChangeNotification(const QHash &changes); + +private: + KCONFIGCORE_NO_EXPORT explicit KConfigWatcher(const KSharedConfig::Ptr &config); + Q_DISABLE_COPY(KConfigWatcher) + const QScopedPointer d; +}; + +#endif diff --git a/src/core/kcoreconfigskeleton.cpp b/src/core/kcoreconfigskeleton.cpp new file mode 100644 index 0000000..6dac0d1 --- /dev/null +++ b/src/core/kcoreconfigskeleton.cpp @@ -0,0 +1,1683 @@ +/* + This file is part of KOrganizer. + SPDX-FileCopyrightText: 2000, 2001 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kcoreconfigskeleton.h" +#include "kcoreconfigskeleton_p.h" + +#include + +#include + +static QString obscuredString(const QString &str) +{ + QString result; + const QChar *unicode = str.unicode(); + for (int i = 0; i < str.length(); ++i) { + // yes, no typo. can't encode ' ' or '!' because + // they're the unicode BOM. stupid scrambling. stupid. + result += (unicode[i].unicode() <= 0x21) ? unicode[i] : QChar(0x1001F - unicode[i].unicode()); + } + + return result; +} + +KConfigSkeletonItemPrivate::~KConfigSkeletonItemPrivate() = default; + +KConfigSkeletonItem::KConfigSkeletonItem(const QString &_group, const QString &_key) + : mGroup(_group) + , mKey(_key) + , d_ptr(new KConfigSkeletonItemPrivate) +{ +} + +KConfigSkeletonItem::KConfigSkeletonItem(KConfigSkeletonItemPrivate &dd, const QString &_group, const QString &_key) + : mGroup(_group) + , mKey(_key) + , d_ptr(&dd) +{ +} + +KConfigSkeletonItem::~KConfigSkeletonItem() +{ + delete d_ptr; +} + +void KConfigSkeletonItem::setGroup(const QString &_group) +{ + mGroup = _group; +} + +void KConfigSkeletonItem::setGroup(const KConfigGroup &cg) +{ + Q_D(KConfigSkeletonItem); + d->mConfigGroup = cg; +} + +KConfigGroup KConfigSkeletonItem::configGroup(KConfig *config) const +{ + Q_D(const KConfigSkeletonItem); + if (d->mConfigGroup.isValid()) { + return d->mConfigGroup; + } + return KConfigGroup(config, mGroup); +} + +QString KConfigSkeletonItem::group() const +{ + return mGroup; +} + +void KConfigSkeletonItem::setKey(const QString &_key) +{ + mKey = _key; +} + +QString KConfigSkeletonItem::key() const +{ + return mKey; +} + +void KConfigSkeletonItem::setName(const QString &_name) +{ + mName = _name; +} + +QString KConfigSkeletonItem::name() const +{ + return mName; +} + +void KConfigSkeletonItem::setLabel(const QString &l) +{ + Q_D(KConfigSkeletonItem); + d->mLabel = l; +} + +QString KConfigSkeletonItem::label() const +{ + Q_D(const KConfigSkeletonItem); + return d->mLabel; +} + +void KConfigSkeletonItem::setToolTip(const QString &t) +{ + Q_D(KConfigSkeletonItem); + d->mToolTip = t; +} + +QString KConfigSkeletonItem::toolTip() const +{ + Q_D(const KConfigSkeletonItem); + return d->mToolTip; +} + +void KConfigSkeletonItem::setWhatsThis(const QString &w) +{ + Q_D(KConfigSkeletonItem); + d->mWhatsThis = w; +} + +QString KConfigSkeletonItem::whatsThis() const +{ + Q_D(const KConfigSkeletonItem); + return d->mWhatsThis; +} + +void KConfigSkeletonItem::setWriteFlags(KConfigBase::WriteConfigFlags flags) +{ + Q_D(KConfigSkeletonItem); + d->mWriteFlags = flags; +} + +KConfigBase::WriteConfigFlags KConfigSkeletonItem::writeFlags() const +{ + Q_D(const KConfigSkeletonItem); + return d->mWriteFlags; +} + +QVariant KConfigSkeletonItem::minValue() const +{ + return QVariant(); +} + +QVariant KConfigSkeletonItem::maxValue() const +{ + return QVariant(); +} + +bool KConfigSkeletonItem::isImmutable() const +{ + Q_D(const KConfigSkeletonItem); + return d->mIsImmutable; +} + +bool KConfigSkeletonItem::isDefault() const +{ + Q_D(const KConfigSkeletonItem); + return d->mIsDefaultImpl(); +} + +bool KConfigSkeletonItem::isSaveNeeded() const +{ + Q_D(const KConfigSkeletonItem); + return d->mIsSaveNeededImpl(); +} + +QVariant KConfigSkeletonItem::getDefault() const +{ + Q_D(const KConfigSkeletonItem); + return d->mGetDefaultImpl(); +} + +void KConfigSkeletonItem::readImmutability(const KConfigGroup &group) +{ + Q_D(KConfigSkeletonItem); + d->mIsImmutable = group.isEntryImmutable(mKey); +} + +void KConfigSkeletonItem::setIsDefaultImpl(const std::function &impl) +{ + Q_D(KConfigSkeletonItem); + d->mIsDefaultImpl = impl; +} + +void KConfigSkeletonItem::setIsSaveNeededImpl(const std::function &impl) +{ + Q_D(KConfigSkeletonItem); + d->mIsSaveNeededImpl = impl; +} + +void KConfigSkeletonItem::setGetDefaultImpl(const std::function &impl) +{ + Q_D(KConfigSkeletonItem); + d->mGetDefaultImpl = impl; +} + +KPropertySkeletonItem::KPropertySkeletonItem(QObject *object, const QByteArray &propertyName, const QVariant &defaultValue) + : KConfigSkeletonItem(*new KPropertySkeletonItemPrivate(object, propertyName, defaultValue), {}, {}) +{ + setIsDefaultImpl([this] { + Q_D(const KPropertySkeletonItem); + return d->mReference == d->mDefaultValue; + }); + setIsSaveNeededImpl([this] { + Q_D(const KPropertySkeletonItem); + return d->mReference != d->mLoadedValue; + }); + setGetDefaultImpl([this] { + Q_D(const KPropertySkeletonItem); + return d->mDefaultValue; + }); +} + +QVariant KPropertySkeletonItem::property() const +{ + Q_D(const KPropertySkeletonItem); + return d->mReference; +} + +void KPropertySkeletonItem::setProperty(const QVariant &p) +{ + Q_D(KPropertySkeletonItem); + if (d->mReference == p) { + return; + } + d->mReference = p; + if (d->mNotifyFunction) { + d->mNotifyFunction(); + } +} + +bool KPropertySkeletonItem::isEqual(const QVariant &p) const +{ + Q_D(const KPropertySkeletonItem); + return d->mReference == p; +} + +void KPropertySkeletonItem::readConfig(KConfig *) +{ + Q_D(KPropertySkeletonItem); + setProperty(d->mObject->property(d->mPropertyName.constData())); + d->mLoadedValue = d->mReference; +} + +void KPropertySkeletonItem::writeConfig(KConfig *) +{ + Q_D(KPropertySkeletonItem); + d->mObject->setProperty(d->mPropertyName.constData(), d->mReference); + d->mLoadedValue = d->mReference; +} + +void KPropertySkeletonItem::readDefault(KConfig *) +{ + Q_D(KPropertySkeletonItem); + setProperty(d->mConstDefaultValue); +} + +void KPropertySkeletonItem::setDefault() +{ + Q_D(KPropertySkeletonItem); + setProperty(d->mDefaultValue); +} + +void KPropertySkeletonItem::swapDefault() +{ + Q_D(KPropertySkeletonItem); + if (d->mReference == d->mDefaultValue) { + return; + } + std::swap(d->mReference, d->mDefaultValue); + if (d->mNotifyFunction) { + d->mNotifyFunction(); + } +} + +void KPropertySkeletonItem::setNotifyFunction(const std::function &impl) +{ + Q_D(KPropertySkeletonItem); + d->mNotifyFunction = impl; +} + +KCoreConfigSkeleton::ItemString::ItemString(const QString &_group, const QString &_key, QString &reference, const QString &defaultValue, Type type) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) + , mType(type) +{ +} + +void KCoreConfigSkeleton::ItemString::writeConfig(KConfig *config) +{ + if (mReference != mLoadedValue) { // WABA: Is this test needed? + KConfigGroup cg = configGroup(config); + if ((mDefault == mReference) && !cg.hasDefault(mKey)) { + cg.revertToDefault(mKey, writeFlags()); + } else if (mType == Path) { + cg.writePathEntry(mKey, mReference, writeFlags()); + } else if (mType == Password) { + cg.writeEntry(mKey, obscuredString(mReference), writeFlags()); + } else { + cg.writeEntry(mKey, mReference, writeFlags()); + } + mLoadedValue = mReference; + } +} + +void KCoreConfigSkeleton::ItemString::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + + if (mType == Path) { + mReference = cg.readPathEntry(mKey, mDefault); + } else if (mType == Password) { + QString val = cg.readEntry(mKey, obscuredString(mDefault)); + mReference = obscuredString(val); + } else { + mReference = cg.readEntry(mKey, mDefault); + } + + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemString::setProperty(const QVariant &p) +{ + mReference = p.toString(); +} + +bool KCoreConfigSkeleton::ItemString::isEqual(const QVariant &v) const +{ + return mReference == v.toString(); +} + +QVariant KCoreConfigSkeleton::ItemString::property() const +{ + return QVariant(mReference); +} + +KCoreConfigSkeleton::ItemPassword::ItemPassword(const QString &_group, const QString &_key, QString &reference, const QString &defaultValue) + : ItemString(_group, _key, reference, defaultValue, Password) +{ +} + +KCoreConfigSkeleton::ItemPath::ItemPath(const QString &_group, const QString &_key, QString &reference, const QString &defaultValue) + : ItemString(_group, _key, reference, defaultValue, Path) +{ +} + +KCoreConfigSkeleton::ItemUrl::ItemUrl(const QString &_group, const QString &_key, QUrl &reference, const QUrl &defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) +{ +} + +void KCoreConfigSkeleton::ItemUrl::writeConfig(KConfig *config) +{ + if (mReference != mLoadedValue) { // WABA: Is this test needed? + KConfigGroup cg = configGroup(config); + if ((mDefault == mReference) && !cg.hasDefault(mKey)) { + cg.revertToDefault(mKey, writeFlags()); + } else { + cg.writeEntry(mKey, mReference.toString(), writeFlags()); + } + mLoadedValue = mReference; + } +} + +void KCoreConfigSkeleton::ItemUrl::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + + mReference = QUrl(cg.readEntry(mKey, mDefault.toString())); + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemUrl::setProperty(const QVariant &p) +{ + mReference = qvariant_cast(p); +} + +bool KCoreConfigSkeleton::ItemUrl::isEqual(const QVariant &v) const +{ + return mReference == qvariant_cast(v); +} + +QVariant KCoreConfigSkeleton::ItemUrl::property() const +{ + return QVariant::fromValue(mReference); +} + +KCoreConfigSkeleton::ItemProperty::ItemProperty(const QString &_group, const QString &_key, QVariant &reference, const QVariant &defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) +{ +} + +void KCoreConfigSkeleton::ItemProperty::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + mReference = cg.readEntry(mKey, mDefault); + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemProperty::setProperty(const QVariant &p) +{ + mReference = p; +} + +bool KCoreConfigSkeleton::ItemProperty::isEqual(const QVariant &v) const +{ + // this might cause problems if the QVariants are not of default types + return mReference == v; +} + +QVariant KCoreConfigSkeleton::ItemProperty::property() const +{ + return mReference; +} + +KCoreConfigSkeleton::ItemBool::ItemBool(const QString &_group, const QString &_key, bool &reference, bool defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) +{ +} + +void KCoreConfigSkeleton::ItemBool::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + mReference = cg.readEntry(mKey, mDefault); + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemBool::setProperty(const QVariant &p) +{ + mReference = p.toBool(); +} + +bool KCoreConfigSkeleton::ItemBool::isEqual(const QVariant &v) const +{ + return mReference == v.toBool(); +} + +QVariant KCoreConfigSkeleton::ItemBool::property() const +{ + return QVariant(mReference); +} + +KCoreConfigSkeleton::ItemInt::ItemInt(const QString &_group, const QString &_key, qint32 &reference, qint32 defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) + , mHasMin(false) + , mHasMax(false) +{ +} + +void KCoreConfigSkeleton::ItemInt::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + mReference = cg.readEntry(mKey, mDefault); + if (mHasMin) { + mReference = qMax(mReference, mMin); + } + if (mHasMax) { + mReference = qMin(mReference, mMax); + } + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemInt::setProperty(const QVariant &p) +{ + mReference = p.toInt(); +} + +bool KCoreConfigSkeleton::ItemInt::isEqual(const QVariant &v) const +{ + return mReference == v.toInt(); +} + +QVariant KCoreConfigSkeleton::ItemInt::property() const +{ + return QVariant(mReference); +} + +QVariant KCoreConfigSkeleton::ItemInt::minValue() const +{ + if (mHasMin) { + return QVariant(mMin); + } + return QVariant(); +} + +QVariant KCoreConfigSkeleton::ItemInt::maxValue() const +{ + if (mHasMax) { + return QVariant(mMax); + } + return QVariant(); +} + +void KCoreConfigSkeleton::ItemInt::setMinValue(qint32 v) +{ + mHasMin = true; + mMin = v; +} + +void KCoreConfigSkeleton::ItemInt::setMaxValue(qint32 v) +{ + mHasMax = true; + mMax = v; +} + +KCoreConfigSkeleton::ItemLongLong::ItemLongLong(const QString &_group, const QString &_key, qint64 &reference, qint64 defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) + , mHasMin(false) + , mHasMax(false) +{ +} + +void KCoreConfigSkeleton::ItemLongLong::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + mReference = cg.readEntry(mKey, mDefault); + if (mHasMin) { + mReference = qMax(mReference, mMin); + } + if (mHasMax) { + mReference = qMin(mReference, mMax); + } + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemLongLong::setProperty(const QVariant &p) +{ + mReference = p.toLongLong(); +} + +bool KCoreConfigSkeleton::ItemLongLong::isEqual(const QVariant &v) const +{ + return mReference == v.toLongLong(); +} + +QVariant KCoreConfigSkeleton::ItemLongLong::property() const +{ + return QVariant(mReference); +} + +QVariant KCoreConfigSkeleton::ItemLongLong::minValue() const +{ + if (mHasMin) { + return QVariant(mMin); + } + return QVariant(); +} + +QVariant KCoreConfigSkeleton::ItemLongLong::maxValue() const +{ + if (mHasMax) { + return QVariant(mMax); + } + return QVariant(); +} + +void KCoreConfigSkeleton::ItemLongLong::setMinValue(qint64 v) +{ + mHasMin = true; + mMin = v; +} + +void KCoreConfigSkeleton::ItemLongLong::setMaxValue(qint64 v) +{ + mHasMax = true; + mMax = v; +} + +QString KCoreConfigSkeleton::ItemEnum::valueForChoice(const QString &name) const +{ + for (auto it = mChoices.cbegin(); it != mChoices.cend(); ++it) { + if (it->name == name) { + return it->value.isEmpty() ? it->name : it->value; + } + } + return name; +} + +void KCoreConfigSkeleton::ItemEnum::setValueForChoice(const QString &name, const QString &value) +{ + for (auto it = mChoices.begin(); it != mChoices.end(); ++it) { + if (it->name == name) { + it->value = value; + return; + } + } +} + +KCoreConfigSkeleton::ItemEnum::ItemEnum(const QString &_group, const QString &_key, qint32 &reference, const QList &choices, qint32 defaultValue) + : ItemInt(_group, _key, reference, defaultValue) + , mChoices(choices) +{ +} + +void KCoreConfigSkeleton::ItemEnum::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + if (!cg.hasKey(mKey)) { + mReference = mDefault; + } else { + int i = 0; + mReference = -1; + const QString entryString = cg.readEntry(mKey, QString()); + for (auto it = mChoices.cbegin(); it != mChoices.cend(); ++it, ++i) { + QString choiceName = (*it).name; + if (valueForChoice(choiceName).compare(entryString, Qt::CaseInsensitive) == 0) { + mReference = i; + break; + } + } + if (mReference == -1) { + mReference = cg.readEntry(mKey, mDefault); + } + } + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemEnum::writeConfig(KConfig *config) +{ + if (mReference != mLoadedValue) { // WABA: Is this test needed? + KConfigGroup cg = configGroup(config); + if ((mDefault == mReference) && !cg.hasDefault(mKey)) { + cg.revertToDefault(mKey, writeFlags()); + } else if ((mReference >= 0) && (mReference < mChoices.count())) { + cg.writeEntry(mKey, valueForChoice(mChoices.at(mReference).name), writeFlags()); + } else { + cg.writeEntry(mKey, mReference, writeFlags()); + } + mLoadedValue = mReference; + } +} + +QList KCoreConfigSkeleton::ItemEnum::choices() const +{ + return mChoices; +} + +KCoreConfigSkeleton::ItemUInt::ItemUInt(const QString &_group, const QString &_key, quint32 &reference, quint32 defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) + , mHasMin(false) + , mHasMax(false) +{ +} + +void KCoreConfigSkeleton::ItemUInt::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + mReference = cg.readEntry(mKey, mDefault); + if (mHasMin) { + mReference = qMax(mReference, mMin); + } + if (mHasMax) { + mReference = qMin(mReference, mMax); + } + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemUInt::setProperty(const QVariant &p) +{ + mReference = p.toUInt(); +} + +bool KCoreConfigSkeleton::ItemUInt::isEqual(const QVariant &v) const +{ + return mReference == v.toUInt(); +} + +QVariant KCoreConfigSkeleton::ItemUInt::property() const +{ + return QVariant(mReference); +} + +QVariant KCoreConfigSkeleton::ItemUInt::minValue() const +{ + if (mHasMin) { + return QVariant(mMin); + } + return QVariant(); +} + +QVariant KCoreConfigSkeleton::ItemUInt::maxValue() const +{ + if (mHasMax) { + return QVariant(mMax); + } + return QVariant(); +} + +void KCoreConfigSkeleton::ItemUInt::setMinValue(quint32 v) +{ + mHasMin = true; + mMin = v; +} + +void KCoreConfigSkeleton::ItemUInt::setMaxValue(quint32 v) +{ + mHasMax = true; + mMax = v; +} + +KCoreConfigSkeleton::ItemULongLong::ItemULongLong(const QString &_group, const QString &_key, quint64 &reference, quint64 defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) + , mHasMin(false) + , mHasMax(false) +{ +} + +void KCoreConfigSkeleton::ItemULongLong::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + mReference = cg.readEntry(mKey, mDefault); + if (mHasMin) { + mReference = qMax(mReference, mMin); + } + if (mHasMax) { + mReference = qMin(mReference, mMax); + } + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemULongLong::setProperty(const QVariant &p) +{ + mReference = p.toULongLong(); +} + +bool KCoreConfigSkeleton::ItemULongLong::isEqual(const QVariant &v) const +{ + return mReference == v.toULongLong(); +} + +QVariant KCoreConfigSkeleton::ItemULongLong::property() const +{ + return QVariant(mReference); +} + +QVariant KCoreConfigSkeleton::ItemULongLong::minValue() const +{ + if (mHasMin) { + return QVariant(mMin); + } + return QVariant(); +} + +QVariant KCoreConfigSkeleton::ItemULongLong::maxValue() const +{ + if (mHasMax) { + return QVariant(mMax); + } + return QVariant(); +} + +void KCoreConfigSkeleton::ItemULongLong::setMinValue(quint64 v) +{ + mHasMin = true; + mMin = v; +} + +void KCoreConfigSkeleton::ItemULongLong::setMaxValue(quint64 v) +{ + mHasMax = true; + mMax = v; +} + +KCoreConfigSkeleton::ItemDouble::ItemDouble(const QString &_group, const QString &_key, double &reference, double defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) + , mHasMin(false) + , mHasMax(false) +{ +} + +void KCoreConfigSkeleton::ItemDouble::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + mReference = cg.readEntry(mKey, mDefault); + if (mHasMin) { + mReference = qMax(mReference, mMin); + } + if (mHasMax) { + mReference = qMin(mReference, mMax); + } + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemDouble::setProperty(const QVariant &p) +{ + mReference = p.toDouble(); +} + +bool KCoreConfigSkeleton::ItemDouble::isEqual(const QVariant &v) const +{ + return mReference == v.toDouble(); +} + +QVariant KCoreConfigSkeleton::ItemDouble::property() const +{ + return QVariant(mReference); +} + +QVariant KCoreConfigSkeleton::ItemDouble::minValue() const +{ + if (mHasMin) { + return QVariant(mMin); + } + return QVariant(); +} + +QVariant KCoreConfigSkeleton::ItemDouble::maxValue() const +{ + if (mHasMax) { + return QVariant(mMax); + } + return QVariant(); +} + +void KCoreConfigSkeleton::ItemDouble::setMinValue(double v) +{ + mHasMin = true; + mMin = v; +} + +void KCoreConfigSkeleton::ItemDouble::setMaxValue(double v) +{ + mHasMax = true; + mMax = v; +} + +KCoreConfigSkeleton::ItemRect::ItemRect(const QString &_group, const QString &_key, QRect &reference, const QRect &defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) +{ +} + +void KCoreConfigSkeleton::ItemRect::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + mReference = cg.readEntry(mKey, mDefault); + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemRect::setProperty(const QVariant &p) +{ + mReference = p.toRect(); +} + +bool KCoreConfigSkeleton::ItemRect::isEqual(const QVariant &v) const +{ + return mReference == v.toRect(); +} + +QVariant KCoreConfigSkeleton::ItemRect::property() const +{ + return QVariant(mReference); +} + +KCoreConfigSkeleton::ItemRectF::ItemRectF(const QString &_group, const QString &_key, QRectF &reference, const QRectF &defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) +{ +} + +void KCoreConfigSkeleton::ItemRectF::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + mReference = cg.readEntry(mKey, mDefault); + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemRectF::setProperty(const QVariant &p) +{ + mReference = p.toRectF(); +} + +bool KCoreConfigSkeleton::ItemRectF::isEqual(const QVariant &v) const +{ + return mReference == v.toRectF(); +} + +QVariant KCoreConfigSkeleton::ItemRectF::property() const +{ + return QVariant(mReference); +} + +KCoreConfigSkeleton::ItemPoint::ItemPoint(const QString &_group, const QString &_key, QPoint &reference, const QPoint &defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) +{ +} + +void KCoreConfigSkeleton::ItemPoint::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + mReference = cg.readEntry(mKey, mDefault); + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemPoint::setProperty(const QVariant &p) +{ + mReference = p.toPoint(); +} + +bool KCoreConfigSkeleton::ItemPoint::isEqual(const QVariant &v) const +{ + return mReference == v.toPoint(); +} + +QVariant KCoreConfigSkeleton::ItemPoint::property() const +{ + return QVariant(mReference); +} + +KCoreConfigSkeleton::ItemPointF::ItemPointF(const QString &_group, const QString &_key, QPointF &reference, const QPointF &defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) +{ +} + +void KCoreConfigSkeleton::ItemPointF::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + mReference = cg.readEntry(mKey, mDefault); + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemPointF::setProperty(const QVariant &p) +{ + mReference = p.toPointF(); +} + +bool KCoreConfigSkeleton::ItemPointF::isEqual(const QVariant &v) const +{ + return mReference == v.toPointF(); +} + +QVariant KCoreConfigSkeleton::ItemPointF::property() const +{ + return QVariant(mReference); +} + +KCoreConfigSkeleton::ItemSize::ItemSize(const QString &_group, const QString &_key, QSize &reference, const QSize &defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) +{ +} + +void KCoreConfigSkeleton::ItemSize::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + mReference = cg.readEntry(mKey, mDefault); + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemSize::setProperty(const QVariant &p) +{ + mReference = p.toSize(); +} + +bool KCoreConfigSkeleton::ItemSize::isEqual(const QVariant &v) const +{ + return mReference == v.toSize(); +} + +QVariant KCoreConfigSkeleton::ItemSize::property() const +{ + return QVariant(mReference); +} + +KCoreConfigSkeleton::ItemSizeF::ItemSizeF(const QString &_group, const QString &_key, QSizeF &reference, const QSizeF &defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) +{ +} + +void KCoreConfigSkeleton::ItemSizeF::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + mReference = cg.readEntry(mKey, mDefault); + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemSizeF::setProperty(const QVariant &p) +{ + mReference = p.toSizeF(); +} + +bool KCoreConfigSkeleton::ItemSizeF::isEqual(const QVariant &v) const +{ + return mReference == v.toSizeF(); +} + +QVariant KCoreConfigSkeleton::ItemSizeF::property() const +{ + return QVariant(mReference); +} + +KCoreConfigSkeleton::ItemDateTime::ItemDateTime(const QString &_group, const QString &_key, QDateTime &reference, const QDateTime &defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) +{ +} + +void KCoreConfigSkeleton::ItemDateTime::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + mReference = cg.readEntry(mKey, mDefault); + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemDateTime::setProperty(const QVariant &p) +{ + mReference = p.toDateTime(); +} + +bool KCoreConfigSkeleton::ItemDateTime::isEqual(const QVariant &v) const +{ + return mReference == v.toDateTime(); +} + +QVariant KCoreConfigSkeleton::ItemDateTime::property() const +{ + return QVariant(mReference); +} + +KCoreConfigSkeleton::ItemStringList::ItemStringList(const QString &_group, const QString &_key, QStringList &reference, const QStringList &defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) +{ +} + +void KCoreConfigSkeleton::ItemStringList::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + if (!cg.hasKey(mKey)) { + mReference = mDefault; + } else { + mReference = cg.readEntry(mKey, mDefault); + } + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemStringList::setProperty(const QVariant &p) +{ + mReference = p.toStringList(); +} + +bool KCoreConfigSkeleton::ItemStringList::isEqual(const QVariant &v) const +{ + return mReference == v.toStringList(); +} + +QVariant KCoreConfigSkeleton::ItemStringList::property() const +{ + return QVariant(mReference); +} + +KCoreConfigSkeleton::ItemPathList::ItemPathList(const QString &_group, const QString &_key, QStringList &reference, const QStringList &defaultValue) + : ItemStringList(_group, _key, reference, defaultValue) +{ +} + +void KCoreConfigSkeleton::ItemPathList::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + if (!cg.hasKey(mKey)) { + mReference = mDefault; + } else { + mReference = cg.readPathEntry(mKey, QStringList()); + } + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemPathList::writeConfig(KConfig *config) +{ + if (mReference != mLoadedValue) { // WABA: Is this test needed? + KConfigGroup cg = configGroup(config); + if ((mDefault == mReference) && !cg.hasDefault(mKey)) { + cg.revertToDefault(mKey, writeFlags()); + } else { + QStringList sl = mReference; + cg.writePathEntry(mKey, sl, writeFlags()); + } + mLoadedValue = mReference; + } +} + +KCoreConfigSkeleton::ItemUrlList::ItemUrlList(const QString &_group, const QString &_key, QList &reference, const QList &defaultValue) + : KConfigSkeletonGenericItem>(_group, _key, reference, defaultValue) +{ +} + +void KCoreConfigSkeleton::ItemUrlList::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + if (!cg.hasKey(mKey)) { + mReference = mDefault; + } else { + QStringList strList; + for (const QUrl &url : std::as_const(mDefault)) { + strList.append(url.toString()); + } + mReference.clear(); + const QStringList readList = cg.readEntry(mKey, strList); + for (const QString &str : readList) { + mReference.append(QUrl(str)); + } + } + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemUrlList::writeConfig(KConfig *config) +{ + if (mReference != mLoadedValue) { // WABA: Is this test needed? + KConfigGroup cg = configGroup(config); + if ((mDefault == mReference) && !cg.hasDefault(mKey)) { + cg.revertToDefault(mKey, writeFlags()); + } else { + QStringList strList; + for (const QUrl &url : std::as_const(mReference)) { + strList.append(url.toString()); + } + cg.writeEntry(mKey, strList, writeFlags()); + } + mLoadedValue = mReference; + } +} + +void KCoreConfigSkeleton::ItemUrlList::setProperty(const QVariant &p) +{ + mReference = qvariant_cast>(p); +} + +bool KCoreConfigSkeleton::ItemUrlList::isEqual(const QVariant &v) const +{ + return mReference == qvariant_cast>(v); +} + +QVariant KCoreConfigSkeleton::ItemUrlList::property() const +{ + return QVariant::fromValue>(mReference); +} + +KCoreConfigSkeleton::ItemIntList::ItemIntList(const QString &_group, const QString &_key, QList &reference, const QList &defaultValue) + : KConfigSkeletonGenericItem>(_group, _key, reference, defaultValue) +{ +} + +void KCoreConfigSkeleton::ItemIntList::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + if (!cg.hasKey(mKey)) { + mReference = mDefault; + } else { + mReference = cg.readEntry(mKey, mDefault); + } + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KCoreConfigSkeleton::ItemIntList::setProperty(const QVariant &p) +{ + mReference = qvariant_cast>(p); +} + +bool KCoreConfigSkeleton::ItemIntList::isEqual(const QVariant &v) const +{ + return mReference == qvariant_cast>(v); +} + +QVariant KCoreConfigSkeleton::ItemIntList::property() const +{ + return QVariant::fromValue>(mReference); +} + +// static int kCoreConfigSkeletionDebugArea() { static int s_area = KDebug::registerArea("kdecore (KConfigSkeleton)"); return s_area; } + +KCoreConfigSkeleton::KCoreConfigSkeleton(const QString &configname, QObject *parent) + : QObject(parent) + , d(new KCoreConfigSkeletonPrivate) +{ + // qDebug() << "Creating KCoreConfigSkeleton (" << (void *)this << ")"; + + d->mConfig = KSharedConfig::openConfig(configname, KConfig::FullConfig); +} + +KCoreConfigSkeleton::KCoreConfigSkeleton(KSharedConfig::Ptr pConfig, QObject *parent) + : QObject(parent) + , d(new KCoreConfigSkeletonPrivate) +{ + // qDebug() << "Creating KCoreConfigSkeleton (" << (void *)this << ")"; + d->mConfig = std::move(pConfig); +} + +KCoreConfigSkeleton::~KCoreConfigSkeleton() +{ + delete d; +} + +void KCoreConfigSkeleton::setCurrentGroup(const QString &group) +{ + d->mCurrentGroup = group; +} + +QString KCoreConfigSkeleton::currentGroup() const +{ + return d->mCurrentGroup; +} + +KConfig *KCoreConfigSkeleton::config() +{ + return d->mConfig.data(); +} + +const KConfig *KCoreConfigSkeleton::config() const +{ + return d->mConfig.data(); +} + +KSharedConfig::Ptr KCoreConfigSkeleton::sharedConfig() const +{ + return d->mConfig; +} + +void KCoreConfigSkeleton::setSharedConfig(KSharedConfig::Ptr pConfig) +{ + d->mConfig = std::move(pConfig); +} + +KConfigSkeletonItem::List KCoreConfigSkeleton::items() const +{ + return d->mItems; +} + +bool KCoreConfigSkeleton::useDefaults(bool b) +{ + if (b == d->mUseDefaults) { + return d->mUseDefaults; + } + + d->mUseDefaults = b; + for (auto *skelItem : std::as_const(d->mItems)) { + skelItem->swapDefault(); + } + + usrUseDefaults(b); + return !d->mUseDefaults; +} + +void KCoreConfigSkeleton::setDefaults() +{ + for (auto *skelItem : std::as_const(d->mItems)) { + skelItem->setDefault(); + } + usrSetDefaults(); +} + +void KCoreConfigSkeleton::load() +{ + d->mConfig->reparseConfiguration(); + read(); +} + +void KCoreConfigSkeleton::read() +{ + for (auto *skelItem : std::as_const(d->mItems)) { + skelItem->readConfig(d->mConfig.data()); + } + usrRead(); +} + +bool KCoreConfigSkeleton::isDefaults() const +{ + return std::all_of(d->mItems.cbegin(), d->mItems.cend(), [](KConfigSkeletonItem *skelItem) { + return skelItem->isDefault(); + }); +} + +bool KCoreConfigSkeleton::isSaveNeeded() const +{ + return std::any_of(d->mItems.cbegin(), d->mItems.cend(), [](KConfigSkeletonItem *skelItem) { + return skelItem->isSaveNeeded(); + }); +} + +bool KCoreConfigSkeleton::save() +{ + // qDebug(); + for (auto *skelItem : std::as_const(d->mItems)) { + skelItem->writeConfig(d->mConfig.data()); + } + + if (!usrSave()) { + return false; + } + + if (d->mConfig->isDirty()) { + if (!d->mConfig->sync()) { + return false; + } + Q_EMIT configChanged(); + } + return true; +} + +bool KCoreConfigSkeleton::usrUseDefaults(bool) +{ + return false; +} + +void KCoreConfigSkeleton::usrSetDefaults() +{ +} + +void KCoreConfigSkeleton::usrRead() +{ +} + +bool KCoreConfigSkeleton::usrSave() +{ + return true; +} + +void KCoreConfigSkeleton::addItem(KConfigSkeletonItem *item, const QString &name) +{ + if (d->mItems.contains(item)) { + if (item->name() == name || (name.isEmpty() && item->name() == item->key())) { + // nothing to do -> it is already in our collection + // and the name isn't changing + return; + } + + d->mItemDict.remove(item->name()); + } else { + d->mItems.append(item); + } + + item->setName(name.isEmpty() ? item->key() : name); + d->mItemDict.insert(item->name(), item); + item->readDefault(d->mConfig.data()); + item->readConfig(d->mConfig.data()); +} + +void KCoreConfigSkeleton::removeItem(const QString &name) +{ + KConfigSkeletonItem *item = d->mItemDict.value(name); + if (item) { + d->mItems.removeAll(item); + d->mItemDict.remove(item->name()); + delete item; + } +} + +void KCoreConfigSkeleton::clearItems() +{ + KConfigSkeletonItem::List items = d->mItems; + d->mItems.clear(); + d->mItemDict.clear(); + qDeleteAll(items); +} + +KCoreConfigSkeleton::ItemString *KCoreConfigSkeleton::addItemString(const QString &name, QString &reference, const QString &defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemString *item; + item = new KCoreConfigSkeleton::ItemString(d->mCurrentGroup, key.isEmpty() ? name : key, reference, defaultValue, KCoreConfigSkeleton::ItemString::Normal); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemPassword * +KCoreConfigSkeleton::addItemPassword(const QString &name, QString &reference, const QString &defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemPassword *item; + item = new KCoreConfigSkeleton::ItemPassword(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemPath *KCoreConfigSkeleton::addItemPath(const QString &name, QString &reference, const QString &defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemPath *item; + item = new KCoreConfigSkeleton::ItemPath(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemProperty * +KCoreConfigSkeleton::addItemProperty(const QString &name, QVariant &reference, const QVariant &defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemProperty *item; + item = new KCoreConfigSkeleton::ItemProperty(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemBool *KCoreConfigSkeleton::addItemBool(const QString &name, bool &reference, bool defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemBool *item; + item = new KCoreConfigSkeleton::ItemBool(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemInt *KCoreConfigSkeleton::addItemInt(const QString &name, qint32 &reference, qint32 defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemInt *item; + item = new KCoreConfigSkeleton::ItemInt(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemUInt *KCoreConfigSkeleton::addItemUInt(const QString &name, quint32 &reference, quint32 defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemUInt *item; + item = new KCoreConfigSkeleton::ItemUInt(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemLongLong *KCoreConfigSkeleton::addItemLongLong(const QString &name, qint64 &reference, qint64 defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemLongLong *item; + item = new KCoreConfigSkeleton::ItemLongLong(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemULongLong *KCoreConfigSkeleton::addItemULongLong(const QString &name, quint64 &reference, quint64 defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemULongLong *item; + item = new KCoreConfigSkeleton::ItemULongLong(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemDouble *KCoreConfigSkeleton::addItemDouble(const QString &name, double &reference, double defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemDouble *item; + item = new KCoreConfigSkeleton::ItemDouble(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemRect *KCoreConfigSkeleton::addItemRect(const QString &name, QRect &reference, const QRect &defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemRect *item; + item = new KCoreConfigSkeleton::ItemRect(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemRectF *KCoreConfigSkeleton::addItemRectF(const QString &name, QRectF &reference, const QRectF &defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemRectF *item; + item = new KCoreConfigSkeleton::ItemRectF(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemPoint *KCoreConfigSkeleton::addItemPoint(const QString &name, QPoint &reference, const QPoint &defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemPoint *item; + item = new KCoreConfigSkeleton::ItemPoint(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemPointF *KCoreConfigSkeleton::addItemPointF(const QString &name, QPointF &reference, const QPointF &defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemPointF *item; + item = new KCoreConfigSkeleton::ItemPointF(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemSize *KCoreConfigSkeleton::addItemSize(const QString &name, QSize &reference, const QSize &defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemSize *item; + item = new KCoreConfigSkeleton::ItemSize(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemSizeF *KCoreConfigSkeleton::addItemSizeF(const QString &name, QSizeF &reference, const QSizeF &defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemSizeF *item; + item = new KCoreConfigSkeleton::ItemSizeF(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemDateTime * +KCoreConfigSkeleton::addItemDateTime(const QString &name, QDateTime &reference, const QDateTime &defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemDateTime *item; + item = new KCoreConfigSkeleton::ItemDateTime(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemStringList * +KCoreConfigSkeleton::addItemStringList(const QString &name, QStringList &reference, const QStringList &defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemStringList *item; + item = new KCoreConfigSkeleton::ItemStringList(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KCoreConfigSkeleton::ItemIntList * +KCoreConfigSkeleton::addItemIntList(const QString &name, QList &reference, const QList &defaultValue, const QString &key) +{ + KCoreConfigSkeleton::ItemIntList *item; + item = new KCoreConfigSkeleton::ItemIntList(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +bool KCoreConfigSkeleton::isImmutable(const QString &name) const +{ + KConfigSkeletonItem *item = findItem(name); + return !item || item->isImmutable(); +} + +KConfigSkeletonItem *KCoreConfigSkeleton::findItem(const QString &name) const +{ + return d->mItemDict.value(name); +} + +KConfigCompilerSignallingItem::KConfigCompilerSignallingItem(KConfigSkeletonItem *item, + QObject *object, + KConfigCompilerSignallingItem::NotifyFunction targetFunction, + quint64 userData) + : KConfigSkeletonItem(item->group(), item->key()) + , mItem(item) + , mTargetFunction(targetFunction) + , mObject(object) + , mUserData(userData) +{ + Q_ASSERT(mTargetFunction); + Q_ASSERT(mItem); + Q_ASSERT(mObject); + + setIsDefaultImpl([this] { + return mItem->isDefault(); + }); + setIsSaveNeededImpl([this] { + return mItem->isSaveNeeded(); + }); + setGetDefaultImpl([this] { + return mItem->getDefault(); + }); +} + +KConfigCompilerSignallingItem::~KConfigCompilerSignallingItem() +{ +} + +bool KConfigCompilerSignallingItem::isEqual(const QVariant &p) const +{ + return mItem->isEqual(p); +} + +QVariant KConfigCompilerSignallingItem::property() const +{ + return mItem->property(); +} + +QVariant KConfigCompilerSignallingItem::minValue() const +{ + return mItem->minValue(); +} + +QVariant KConfigCompilerSignallingItem::maxValue() const +{ + return mItem->maxValue(); +} + +void KConfigCompilerSignallingItem::readConfig(KConfig *c) +{ + QVariant oldValue = mItem->property(); + mItem->readConfig(c); + // readConfig() changes mIsImmutable, update it here as well + KConfigGroup cg = configGroup(c); + readImmutability(cg); + if (!mItem->isEqual(oldValue)) { + invokeNotifyFunction(); + } +} + +void KConfigCompilerSignallingItem::readDefault(KConfig *c) +{ + mItem->readDefault(c); + // readDefault() changes mIsImmutable, update it here as well + KConfigGroup cg = configGroup(c); + readImmutability(cg); +} + +void KConfigCompilerSignallingItem::writeConfig(KConfig *c) +{ + mItem->writeConfig(c); +} + +void KConfigCompilerSignallingItem::setDefault() +{ + QVariant oldValue = mItem->property(); + mItem->setDefault(); + if (!mItem->isEqual(oldValue)) { + invokeNotifyFunction(); + } +} + +void KConfigCompilerSignallingItem::setProperty(const QVariant &p) +{ + if (!mItem->isEqual(p)) { + mItem->setProperty(p); + invokeNotifyFunction(); + } +} + +void KConfigCompilerSignallingItem::swapDefault() +{ + QVariant oldValue = mItem->property(); + mItem->swapDefault(); + if (!mItem->isEqual(oldValue)) { + invokeNotifyFunction(); + } +} + +void KConfigCompilerSignallingItem::setWriteFlags(KConfigBase::WriteConfigFlags flags) +{ + mItem->setWriteFlags(flags); +} + +KConfigBase::WriteConfigFlags KConfigCompilerSignallingItem::writeFlags() const +{ + return mItem->writeFlags(); +} + +void KConfigCompilerSignallingItem::setGroup(const KConfigGroup &cg) +{ + mItem->setGroup(cg); +} + +KConfigGroup KConfigCompilerSignallingItem::configGroup(KConfig *config) const +{ + return mItem->configGroup(config); +} + +#include "moc_kcoreconfigskeleton.cpp" diff --git a/src/core/kcoreconfigskeleton.h b/src/core/kcoreconfigskeleton.h new file mode 100644 index 0000000..0148160 --- /dev/null +++ b/src/core/kcoreconfigskeleton.h @@ -0,0 +1,1639 @@ +/* + This file is part of KDE. + + SPDX-FileCopyrightText: 2001, 2002, 2003 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCORECONFIGSKELETON_H +#define KCORECONFIGSKELETON_H + +#include + +#include +#include + +#include +#include +#include +#include +#include +#include + +class KCoreConfigSkeletonPrivate; + +class KConfigSkeletonItemPrivate; +/** + * \class KConfigSkeletonItem kcoreconfigskeleton.h + * + * @short Class for storing a preferences setting + * @author Cornelius Schumacher + * @see KCoreConfigSkeleton + * + * This class represents one preferences setting as used by @ref KCoreConfigSkeleton. + * Subclasses of KConfigSkeletonItem implement storage functions for a certain type of + * setting. Normally you don't have to use this class directly. Use the special + * addItem() functions of KCoreConfigSkeleton instead. If you subclass this class you will + * have to register instances with the function KCoreConfigSkeleton::addItem(). + */ +class KCONFIGCORE_EXPORT KConfigSkeletonItem +{ + Q_DECLARE_PRIVATE(KConfigSkeletonItem) +public: + typedef QList List; + typedef QHash Dict; + typedef QHash::Iterator DictIterator; + + /** + * Constructor. + * + * @param _group Config file group. + * @param _key Config file key. + */ + KConfigSkeletonItem(const QString &_group, const QString &_key); + + /** + * Destructor. + */ + virtual ~KConfigSkeletonItem(); + + /** + * Set config file group. + */ + void setGroup(const QString &_group); + + /** + * Return name of config file group. + */ + QString group() const; + + /** + * Set config file group but giving the KConfigGroup. + * Allow the item to be in nested groups. + * @since 5.68 + */ + void setGroup(const KConfigGroup &cg); + + /** + * Return a KConfigGroup, the one provided by setGroup(const KConfigGroup&) if it's valid, + * or make one from @p config and item's group. + * @see setGroup(const QString &_group) + * @see setGroup(KConfigGroup cg) + * @since 5.68 + */ + KConfigGroup configGroup(KConfig *config) const; + + /** + * Set config file key. + */ + void setKey(const QString &_key); + + /** + * Return config file key. + */ + QString key() const; + + /** + * Set internal name of entry. + */ + void setName(const QString &_name); + + /** + * Return internal name of entry. + */ + QString name() const; + + /** + * Set label providing a translated one-line description of the item. + */ + void setLabel(const QString &l); + + /** + * Return the label of the item. + * @see setLabel() + */ + QString label() const; + + /** + * Set ToolTip description of item. + * @since 4.2 + */ + void setToolTip(const QString &t); + + /** + * Return ToolTip description of item. + * @see setToolTip() + * @since 4.2 + */ + QString toolTip() const; + + /** + * Set WhatsThis description of item. + */ + void setWhatsThis(const QString &w); + + /** + * Return WhatsThis description of item. + * @see setWhatsThis() + */ + QString whatsThis() const; + + /** + * The write flags to be used when writing configuration. + * @since 5.58 + */ + void setWriteFlags(KConfigBase::WriteConfigFlags flags); + + /** + * Return write flags to be used when writing configuration. + * They should be passed to every call of KConfigGroup::writeEntry() and KConfigGroup::revertToDefault(). + * @since 5.58 + */ + KConfigBase::WriteConfigFlags writeFlags() const; + + /** + * This function is called by @ref KCoreConfigSkeleton to read the value for this setting + * from a config file. + */ + virtual void readConfig(KConfig *) = 0; + + /** + * This function is called by @ref KCoreConfigSkeleton to write the value of this setting + * to a config file. + * Make sure to pass writeFlags() to every call of KConfigGroup::writeEntry() and KConfigGroup::revertToDefault(). + */ + virtual void writeConfig(KConfig *) = 0; + + /** + * Read global default value. + */ + virtual void readDefault(KConfig *) = 0; + + /** + * Set item to @p p + */ + virtual void setProperty(const QVariant &p) = 0; + + /** + * Check whether the item is equal to @p p. + * + * Use this function to compare items that use custom types, + * because QVariant::operator== will not work for those. + * + * @param p QVariant to compare to + * @return @c true if the item is equal to @p p, @c false otherwise + */ + virtual bool isEqual(const QVariant &p) const = 0; + + /** + * Return item as property + */ + virtual QVariant property() const = 0; + + /** + * Return minimum value of item or invalid if not specified + */ + virtual QVariant minValue() const; + + /** + * Return maximum value of item or invalid if not specified + */ + virtual QVariant maxValue() const; + + /** + * Sets the current value to the default value. + */ + virtual void setDefault() = 0; + + /** + * Exchanges the current value with the default value + * Used by KCoreConfigSkeleton::useDefaults(bool); + */ + virtual void swapDefault() = 0; + + /** + * Return if the entry can be modified. + */ + bool isImmutable() const; + + /** + * Indicates if the item is set to its default value. + * + * @since 5.64 + */ + bool isDefault() const; + + /** + * Indicates if the item has a different value than the + * previously loaded value. + * + * @since 5.64 + */ + bool isSaveNeeded() const; + + /** + * Returns the default value + * @since 5.74 + */ + QVariant getDefault() const; + +protected: + KCONFIGCORE_NO_EXPORT explicit KConfigSkeletonItem(KConfigSkeletonItemPrivate &dd, const QString &_group, const QString &_key); + + /** + * Sets mIsImmutable to @c true if mKey in config is immutable. + * @param group KConfigGroup to check if mKey is immutable in + */ + void readImmutability(const KConfigGroup &group); + + QString mGroup; ///< The group name for this item + QString mKey; ///< The config key for this item + QString mName; ///< The name of this item + + // HACK: Necessary to avoid introducing new virtuals in KConfigSkeletonItem + // KF7 TODO: Use proper pure virtuals in KConfigSkeletonItem + void setIsDefaultImpl(const std::function &impl); + void setIsSaveNeededImpl(const std::function &impl); + void setGetDefaultImpl(const std::function &impl); + + KConfigSkeletonItemPrivate *const d_ptr; +}; + +class KPropertySkeletonItemPrivate; + +/** + * \class KPropertySkeletonItem kcoreconfigskeleton.h + * + * @short Class for proxying a QObject property as a preferences setting + * @author Kevin Ottens + * @see KConfigSkeletonItem + * + * This class represents one preferences setting as used by @ref KCoreConfigSkeleton. + * Unlike other @ref KConfigSkeletonItem subclasses, this one won't store the preference + * in KConfig but will use a QObject property as storage. + * You will have to register instances of this class with the function KCoreConfigSkeleton::addItem(). + * + * @since 5.65 + */ +class KCONFIGCORE_EXPORT KPropertySkeletonItem : public KConfigSkeletonItem +{ + Q_DECLARE_PRIVATE(KPropertySkeletonItem) +public: + /** + * Constructor + * + * @param object The QObject instance which we'll manage the property of + * @param propertyName The name of the property in @p object which we'll manage + * @param defaultValue The default value of the property + */ + KPropertySkeletonItem(QObject *object, const QByteArray &propertyName, const QVariant &defaultValue); + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant &) */ + void setProperty(const QVariant &p) override; + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig *) */ + void readConfig(KConfig *) override; + /** @copydoc KConfigSkeletonItem::writeConfig(KConfig *) */ + void writeConfig(KConfig *) override; + + /** @copydoc KConfigSkeletonItem::readDefault(KConfig *) */ + void readDefault(KConfig *) override; + /** @copydoc KConfigSkeletonItem::setDefault() */ + void setDefault() override; + /** @copydoc KConfigSkeletonItem::swapDefault() */ + void swapDefault() override; + + /** + * Set a notify function, it will be invoked when the value of the property changes. + * @since 5.68 + */ + void setNotifyFunction(const std::function &impl); +}; + +/** + * \class KConfigSkeletonGenericItem kcoreconfigskeleton.h + * + * @short Base class for storing a preferences setting of type @p T. + */ +template +class KConfigSkeletonGenericItem : public KConfigSkeletonItem +{ +public: + /** + * @copydoc KConfigSkeletonItem(const QString&, const QString&) + * @param reference The initial value to hold in the item + * @param defaultValue The default value for the item + */ + KConfigSkeletonGenericItem(const QString &_group, const QString &_key, T &reference, T defaultValue) + : KConfigSkeletonItem(_group, _key) + , mReference(reference) + , mDefault(defaultValue) + , mLoadedValue(defaultValue) + { + setIsDefaultImpl([this] { + return mReference == mDefault; + }); + setIsSaveNeededImpl([this] { + return mReference != mLoadedValue; + }); + setGetDefaultImpl([this] { + return QVariant::fromValue(mDefault); + }); + } + + /** + * Set value of this KConfigSkeletonItem. + */ + void setValue(const T &v) + { + mReference = v; + } + + /** + * Return value of this KConfigSkeletonItem. + */ + T &value() + { + return mReference; + } + + /** + * Return const value of this KConfigSkeletonItem. + */ + const T &value() const + { + return mReference; + } + + /** + * Set default value for this item. + */ + virtual void setDefaultValue(const T &v) + { + mDefault = v; + } + + /** + * Set the value for this item to the default value + */ + void setDefault() override + { + mReference = mDefault; + } + + /** @copydoc KConfigSkeletonItem::writeConfig(KConfig *) */ + void writeConfig(KConfig *config) override + { + if (mReference != mLoadedValue) { // Is this needed? + KConfigGroup cg = configGroup(config); + if ((mDefault == mReference) && !cg.hasDefault(mKey)) { + cg.revertToDefault(mKey, writeFlags()); + } else { + cg.writeEntry(mKey, mReference, writeFlags()); + } + mLoadedValue = mReference; + } + } + + /** @copydoc KConfigSkeletonItem::readDefault(KConfig*) */ + void readDefault(KConfig *config) override + { + config->setReadDefaults(true); + readConfig(config); + config->setReadDefaults(false); + mDefault = mReference; + } + + /** @copydoc KConfigSkeletonItem::swapDefault() */ + void swapDefault() override + { + T tmp = mReference; + mReference = mDefault; + mDefault = tmp; + } + +protected: + T &mReference; ///< Stores the value for this item + T mDefault; ///< The default value for this item + T mLoadedValue; +}; + +/** + * \class KConfigCompilerSignallingItem kcoreconfigskeleton.h + * + * @author Alex Richardson + * + * This class wraps a @ref KConfigSkeletonItem and invokes a function whenever the value changes. + * That function must take one quint64 parameter. Whenever the property value of the wrapped KConfigSkeletonItem + * changes this function will be invoked with the stored user data passed in the constructor. + * It does not call a function with the new value since this class is designed solely for the \ref kconfig_compiler generated + * code and is therefore probably not suited for any other usecases. + * + * @see KConfigSkeletonItem + */ +class KCONFIGCORE_EXPORT KConfigCompilerSignallingItem : public KConfigSkeletonItem +{ +public: + typedef void (QObject::*NotifyFunction)(quint64 arg); + /** + * Constructor. + * + * @param item the KConfigSkeletonItem to wrap + * @param targetFunction the method to invoke whenever the value of @p item changes + * @param object The object on which the method is invoked. + * @param userData This data will be passed to @p targetFunction on every property change + */ + KConfigCompilerSignallingItem(KConfigSkeletonItem *item, QObject *object, NotifyFunction targetFunction, quint64 userData); + ~KConfigCompilerSignallingItem() override; + + void readConfig(KConfig *) override; + void writeConfig(KConfig *) override; + void readDefault(KConfig *) override; + void setProperty(const QVariant &p) override; + bool isEqual(const QVariant &p) const override; + QVariant property() const override; + QVariant minValue() const override; + QVariant maxValue() const override; + void setDefault() override; + void swapDefault() override; + // KF7 TODO - fix this + // Ideally we would do this in an overload of KConfigSkeletonItem, but + // given we can't, I've shadowed the method. This isn't pretty, but given + // the docs say it should generally only be used from auto generated code, + // should be fine. + void setWriteFlags(KConfigBase::WriteConfigFlags flags); + KConfigBase::WriteConfigFlags writeFlags() const; + void setGroup(const KConfigGroup &cg); + KConfigGroup configGroup(KConfig *config) const; + // END TODO + +private: + inline void invokeNotifyFunction() + { + // call the pointer to member function using the strange ->* operator + (mObject->*mTargetFunction)(mUserData); + } + +private: + QScopedPointer mItem; + NotifyFunction mTargetFunction; + QObject *mObject; + quint64 mUserData; +}; + +/** + * \class KCoreConfigSkeleton kcoreconfigskeleton.h + * + * @short Class for handling preferences settings for an application. + * @author Cornelius Schumacher + * + * This class provides an interface to preferences settings. Preferences items + * can be registered by the addItem() function corresponding to the data type of + * the setting. KCoreConfigSkeleton then handles reading and writing of config files and + * setting of default values. + * + * Normally you will subclass KCoreConfigSkeleton, add data members for the preferences + * settings and register the members in the constructor of the subclass. + * + * Example: + * \code + * class MyPrefs : public KCoreConfigSkeleton + * { + * public: + * MyPrefs() + * { + * setCurrentGroup("MyGroup"); + * addItemBool("MySetting1", mMyBool, false); + * addItemPoint("MySetting2", mMyPoint, QPoint(100, 200)); + * + * setCurrentGroup("MyOtherGroup"); + * addItemDouble("MySetting3", mMyDouble, 3.14); + * } + * + * bool mMyBool; + * QPoint mMyPoint; + * double mMyDouble; + * } + * \endcode + * + * It might be convenient in many cases to make this subclass of KCoreConfigSkeleton a + * singleton for global access from all over the application without passing + * references to the KCoreConfigSkeleton object around. + * + * You can write the data to the configuration file by calling @ref save() + * and read the data from the configuration file by calling @ref readConfig(). + * If you want to watch for config changes, use @ref configChanged() signal. + * + * If you have items, which are not covered by the existing addItem() functions + * you can add customized code for reading, writing and default setting by + * implementing the functions @ref usrUseDefaults(), @ref usrRead() and + * @ref usrSave(). + * + * Internally preferences settings are stored in instances of subclasses of + * @ref KConfigSkeletonItem. You can also add KConfigSkeletonItem subclasses + * for your own types and call the generic @ref addItem() to register them. + * + * In many cases you don't have to write the specific KCoreConfigSkeleton + * subclasses yourself, but you can use \ref kconfig_compiler to automatically + * generate the C++ code from an XML description of the configuration options. + * + * Use KConfigSkeleton if you need GUI types as well. + * + * @see KConfigSkeletonItem + */ +class KCONFIGCORE_EXPORT KCoreConfigSkeleton : public QObject +{ + Q_OBJECT +public: + /** + * Class for handling a string preferences item. + */ + class KCONFIGCORE_EXPORT ItemString : public KConfigSkeletonGenericItem + { + public: + /** The type of string that is held in this item */ + enum Type { + Normal, ///< A normal string + Password, ///< A password string + Path, ///< A path to a file or directory + }; + + /** + * @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem + * @param type The type of string held by the item + */ + ItemString(const QString &_group, + const QString &_key, + QString &reference, + const QString &defaultValue = QLatin1String(""), // NOT QString() !! + Type type = Normal); + + /** @copydoc KConfigSkeletonItem::writeConfig(KConfig*) */ + void writeConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() const */ + QVariant property() const override; + + private: + Type mType; + }; + + /** + * Class for handling a password preferences item. + */ + class KCONFIGCORE_EXPORT ItemPassword : public ItemString + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemPassword(const QString &_group, const QString &_key, QString &reference, + const QString &defaultValue = QLatin1String("")); // NOT QString() !! + }; + + /** + * Class for handling a path preferences item. + */ + class KCONFIGCORE_EXPORT ItemPath : public ItemString + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemPath(const QString &_group, const QString &_key, QString &reference, const QString &defaultValue = QString()); + }; + + /** + * Class for handling a url preferences item. + */ + class KCONFIGCORE_EXPORT ItemUrl : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemUrl(const QString &_group, const QString &_key, QUrl &reference, const QUrl &defaultValue = QUrl()); + + /** @copydoc KConfigSkeletonItem::writeConfig(KConfig*) */ + void writeConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() const */ + QVariant property() const override; + }; + + /** + * Class for handling a QVariant preferences item. + */ + class KCONFIGCORE_EXPORT ItemProperty : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemProperty(const QString &_group, const QString &_key, QVariant &reference, const QVariant &defaultValue = QVariant()); + + void readConfig(KConfig *config) override; + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() const */ + QVariant property() const override; + }; + + /** + * Class for handling a bool preferences item. + */ + class KCONFIGCORE_EXPORT ItemBool : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemBool(const QString &_group, const QString &_key, bool &reference, bool defaultValue = true); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() const */ + QVariant property() const override; + }; + + /** + * Class for handling a 32-bit integer preferences item. + */ + class KCONFIGCORE_EXPORT ItemInt : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemInt(const QString &_group, const QString &_key, qint32 &reference, qint32 defaultValue = 0); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + + /** Get the minimum value that is allowed to be stored in this item */ + QVariant minValue() const override; + + /** Get the maximum value this is allowed to be stored in this item */ + QVariant maxValue() const override; + + /** + * Set the minimum value for the item. + * @see minValue() + */ + void setMinValue(qint32); + + /** + * Set the maximum value for the item. + * @see maxValue + */ + void setMaxValue(qint32); + + private: + bool mHasMin : 1; + bool mHasMax : 1; + qint32 mMin; + qint32 mMax; + }; + + /** + * Class for handling a 64-bit integer preferences item. + */ + class KCONFIGCORE_EXPORT ItemLongLong : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemLongLong(const QString &_group, const QString &_key, qint64 &reference, qint64 defaultValue = 0); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + + /** @copydoc ItemInt::minValue() */ + QVariant minValue() const override; + + /** @copydoc ItemInt::maxValue() */ + QVariant maxValue() const override; + + /** @copydoc ItemInt::setMinValue(qint32) */ + void setMinValue(qint64); + + /** @copydoc ItemInt::setMaxValue(qint32) */ + void setMaxValue(qint64); + + private: + bool mHasMin : 1; + bool mHasMax : 1; + qint64 mMin; + qint64 mMax; + }; + + /** + * Class for handling enums. + */ + class KCONFIGCORE_EXPORT ItemEnum : public ItemInt + { + public: + struct Choice { + QString name; + QString label; + QString toolTip; + QString whatsThis; + QString value; + }; + + /** + * @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem + * @param choices The list of enums that can be stored in this item + */ + ItemEnum(const QString &_group, const QString &_key, qint32 &reference, const QList &choices, qint32 defaultValue = 0); + + QList choices() const; + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::writeConfig(KConfig*) */ + void writeConfig(KConfig *config) override; + + /** + * Returns the value for the choice with the given @p name + */ + QString valueForChoice(const QString &name) const; + + /** + * Stores a choice value for @p name + */ + void setValueForChoice(const QString &name, const QString &valueForChoice); + + private: + QList mChoices; + }; + + /** + * Class for handling an unsigned 32-bit integer preferences item. + */ + class KCONFIGCORE_EXPORT ItemUInt : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemUInt(const QString &_group, const QString &_key, quint32 &reference, quint32 defaultValue = 0); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + + /** @copydoc ItemInt::minValue() */ + QVariant minValue() const override; + + /** @copydoc ItemInt::maxValue() */ + QVariant maxValue() const override; + + /** @copydoc ItemInt::setMinValue(qint32) */ + void setMinValue(quint32); + + /** @copydoc ItemInt::setMaxValue(qint32) */ + void setMaxValue(quint32); + + private: + bool mHasMin : 1; + bool mHasMax : 1; + quint32 mMin; + quint32 mMax; + }; + + /** + * Class for handling unsigned 64-bit integer preferences item. + */ + class KCONFIGCORE_EXPORT ItemULongLong : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemULongLong(const QString &_group, const QString &_key, quint64 &reference, quint64 defaultValue = 0); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + + /** @copydoc ItemInt::minValue() */ + QVariant minValue() const override; + + /** @copydoc ItemInt::maxValue() */ + QVariant maxValue() const override; + + /** @copydoc ItemInt::setMinValue(qint32) */ + void setMinValue(quint64); + + /** @copydoc ItemInt::setMaxValue(qint32) */ + void setMaxValue(quint64); + + private: + bool mHasMin : 1; + bool mHasMax : 1; + quint64 mMin; + quint64 mMax; + }; + + /** + * Class for handling a floating point preference item. + */ + class KCONFIGCORE_EXPORT ItemDouble : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemDouble(const QString &_group, const QString &_key, double &reference, double defaultValue = 0); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + + /** @copydoc ItemInt::minValue() */ + QVariant minValue() const override; + + /** @copydoc ItemInt::maxValue() */ + QVariant maxValue() const override; + + /** @copydoc ItemInt::setMinValue() */ + void setMinValue(double); + + /** @copydoc ItemInt::setMaxValue() */ + void setMaxValue(double); + + private: + bool mHasMin : 1; + bool mHasMax : 1; + double mMin; + double mMax; + }; + + /** + * Class for handling a QRect preferences item. + */ + class KCONFIGCORE_EXPORT ItemRect : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemRect(const QString &_group, const QString &_key, QRect &reference, const QRect &defaultValue = QRect()); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + }; + + /** + * Class for handling a QRectF preferences item. + */ + class KCONFIGCORE_EXPORT ItemRectF : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemRectF(const QString &_group, const QString &_key, QRectF &reference, const QRectF &defaultValue = QRectF()); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + }; + + /** + * Class for handling a QPoint preferences item. + */ + class KCONFIGCORE_EXPORT ItemPoint : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemPoint(const QString &_group, const QString &_key, QPoint &reference, const QPoint &defaultValue = QPoint()); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + }; + + /** + * Class for handling a QPointF preferences item. + */ + class KCONFIGCORE_EXPORT ItemPointF : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemPointF(const QString &_group, const QString &_key, QPointF &reference, const QPointF &defaultValue = QPointF()); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + }; + + /** + * Class for handling a QSize preferences item. + */ + class KCONFIGCORE_EXPORT ItemSize : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemSize(const QString &_group, const QString &_key, QSize &reference, const QSize &defaultValue = QSize()); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + }; + + /** + * Class for handling a QSizeF preferences item. + */ + class KCONFIGCORE_EXPORT ItemSizeF : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemSizeF(const QString &_group, const QString &_key, QSizeF &reference, const QSizeF &defaultValue = QSizeF()); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + }; + + /** + * Class for handling a QDateTime preferences item. + */ + class KCONFIGCORE_EXPORT ItemDateTime : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemDateTime(const QString &_group, const QString &_key, QDateTime &reference, const QDateTime &defaultValue = QDateTime()); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + }; + + /** + * Class for handling a string list preferences item. + */ + class KCONFIGCORE_EXPORT ItemStringList : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemStringList(const QString &_group, const QString &_key, QStringList &reference, const QStringList &defaultValue = QStringList()); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + }; + + /** + * Class for handling a path list preferences item. + */ + class KCONFIGCORE_EXPORT ItemPathList : public ItemStringList + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemPathList(const QString &_group, const QString &_key, QStringList &reference, const QStringList &defaultValue = QStringList()); + + /** @copydoc KConfigSkeletonItem::readConfig */ + void readConfig(KConfig *config) override; + /** @copydoc KConfigSkeletonItem::writeConfig */ + void writeConfig(KConfig *config) override; + }; + + /** + * Class for handling a url list preferences item. + */ + class KCONFIGCORE_EXPORT ItemUrlList : public KConfigSkeletonGenericItem> + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemUrlList(const QString &_group, const QString &_key, QList &reference, const QList &defaultValue = QList()); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::writeConfig(KConfig*) */ + void writeConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + }; + + /** + * Class for handling an integer list preferences item. + */ + class KCONFIGCORE_EXPORT ItemIntList : public KConfigSkeletonGenericItem> + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemIntList(const QString &_group, const QString &_key, QList &reference, const QList &defaultValue = QList()); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) const */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + }; + +public: + /** + * Constructor. + * + * @param configname name of config file. If no name is given, the default + * config file as returned by KSharedConfig::openConfig() is used + * @param parent the parent object (see QObject documentation) + */ + explicit KCoreConfigSkeleton(const QString &configname = QString(), QObject *parent = nullptr); + + /** + * Constructor. + * + * @param config configuration object to use + * @param parent the parent object (see QObject documentation) + */ + explicit KCoreConfigSkeleton(KSharedConfig::Ptr config, QObject *parent = nullptr); + + /** + * Destructor + */ + ~KCoreConfigSkeleton() override; + + /** + * Set all registered items to their default values. + * This method calls usrSetDefaults() after setting the defaults for the + * registered items. You can override usrSetDefaults() in derived classes + * if you have special requirements. + * If you need more fine-grained control of setting the default values of + * the registered items you can override setDefaults() in a derived class. + */ + virtual void setDefaults(); + + /** + * Read preferences from config file. All registered items are set to the + * values read from disk. + * This method calls usrRead() after reading the settings of the + * registered items from the KConfig. You can override usrRead() + * in derived classes if you have special requirements. + */ + void load(); + + /** + * Read preferences from the KConfig object. + * This method assumes that the KConfig object was previously loaded, + * i.e. it uses the in-memory values from KConfig without reloading from disk. + * + * This method calls usrRead() after reading the settings of the + * registered items from the KConfig. You can override usrRead() + * in derived classes if you have special requirements. + * @since 5.0 + */ + void read(); + + /** + * Indicates if all the registered items are set to their default value. + * + * @since 5.64 + */ + bool isDefaults() const; + + /** + * Indicates if any registered item has a different value than the + * previously loaded value. + * + * @since 5.64 + */ + bool isSaveNeeded() const; + + /** + * Set the config file group for subsequent addItem() calls. It is valid + * until setCurrentGroup() is called with a new argument. Call this before + * you add any items. The default value is "No Group". + */ + void setCurrentGroup(const QString &group); + + /** + * Returns the current group used for addItem() calls. + */ + QString currentGroup() const; + + /** + * Register a custom @ref KConfigSkeletonItem @p item with a given @p name. + * + * If @p name is a null string, take the name from KConfigSkeletonItem::key(). + * + * @note All names must be unique but multiple entries can have + * the same key if they reside in different groups. + * + * KCoreConfigSkeleton takes ownership of @p item. + */ + void addItem(KConfigSkeletonItem *item, const QString &name = QString()); + + /** + * Register an item of type QString. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemString *addItemString(const QString &name, + QString &reference, + const QString &defaultValue = QLatin1String(""), // NOT QString() !! + const QString &key = QString()); + + /** + * Register a password item of type QString. The string value is written + * encrypted to the config file. + * + * @note The current encryption scheme is very weak. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemPassword *addItemPassword(const QString &name, QString &reference, const QString &defaultValue = QLatin1String(""), const QString &key = QString()); + + /** + * Register a path item of type QString. The string value is interpreted + * as a path. This means, dollar expansion is activated for this value, so + * that e.g. @c $HOME gets expanded. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemPath *addItemPath(const QString &name, QString &reference, const QString &defaultValue = QLatin1String(""), const QString &key = QString()); + + /** + * Register a property item of type QVariant. + * + * @note The following QVariant types are allowed: + * String, StringList, Font, Point, PointF, Rect, RectF, Size, SizeF, + * Color, Int, UInt, Bool, Double, DateTime and Date. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemProperty *addItemProperty(const QString &name, QVariant &reference, const QVariant &defaultValue = QVariant(), const QString &key = QString()); + /** + * Register an item of type @c bool. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemBool *addItemBool(const QString &name, bool &reference, bool defaultValue = false, const QString &key = QString()); + + /** + * Register an item of type @c qint32. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemInt *addItemInt(const QString &name, qint32 &reference, qint32 defaultValue = 0, const QString &key = QString()); + + /** + * Register an item of type @c quint32. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemUInt *addItemUInt(const QString &name, quint32 &reference, quint32 defaultValue = 0, const QString &key = QString()); + + /** + * Register an item of type @c qint64. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemLongLong *addItemLongLong(const QString &name, qint64 &reference, qint64 defaultValue = 0, const QString &key = QString()); + + /** + * Register an item of type @c quint64. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemULongLong *addItemULongLong(const QString &name, quint64 &reference, quint64 defaultValue = 0, const QString &key = QString()); + + /** + * Register an item of type @c double. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemDouble *addItemDouble(const QString &name, double &reference, double defaultValue = 0.0, const QString &key = QString()); + + /** + * Register an item of type QRect. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemRect *addItemRect(const QString &name, QRect &reference, const QRect &defaultValue = QRect(), const QString &key = QString()); + + /** + * Register an item of type QRectF. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemRectF *addItemRectF(const QString &name, QRectF &reference, const QRectF &defaultValue = QRectF(), const QString &key = QString()); + + /** + * Register an item of type QPoint. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemPoint *addItemPoint(const QString &name, QPoint &reference, const QPoint &defaultValue = QPoint(), const QString &key = QString()); + + /** + * Register an item of type QPointF. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemPointF *addItemPointF(const QString &name, QPointF &reference, const QPointF &defaultValue = QPointF(), const QString &key = QString()); + + /** + * Register an item of type QSize. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemSize *addItemSize(const QString &name, QSize &reference, const QSize &defaultValue = QSize(), const QString &key = QString()); + + /** + * Register an item of type QSizeF. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemSizeF *addItemSizeF(const QString &name, QSizeF &reference, const QSizeF &defaultValue = QSizeF(), const QString &key = QString()); + + /** + * Register an item of type QDateTime. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemDateTime *addItemDateTime(const QString &name, QDateTime &reference, const QDateTime &defaultValue = QDateTime(), const QString &key = QString()); + + /** + * Register an item of type QStringList. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemStringList * + addItemStringList(const QString &name, QStringList &reference, const QStringList &defaultValue = QStringList(), const QString &key = QString()); + + /** + * Register an item of type QList. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by readConfig() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemIntList *addItemIntList(const QString &name, QList &reference, const QList &defaultValue = QList(), const QString &key = QString()); + + /** + * Return the @ref KConfig object used for reading and writing the settings. + */ + KConfig *config(); + + /** + * Return the @ref KConfig object used for reading and writing the settings. + */ + const KConfig *config() const; + + /** + * Return the @ref KConfig object used for reading and writing the settings. + * @since 5.0 + */ + KSharedConfig::Ptr sharedConfig() const; + + /** + * Set the @ref KSharedConfig object used for reading and writing the settings. + */ + void setSharedConfig(KSharedConfig::Ptr pConfig); + + /** + * Return list of items managed by this KCoreConfigSkeleton object. + */ + KConfigSkeletonItem::List items() const; + + /** + * Removes and deletes an item by name + * @param name the name of the item to remove + */ + void removeItem(const QString &name); + + /** + * Removes and deletes all items + */ + void clearItems(); + + /** + * Return whether a certain item is immutable + * @since 4.4 + */ + Q_INVOKABLE bool isImmutable(const QString &name) const; + + /** + * Lookup item by name + * @since 4.4 + */ + KConfigSkeletonItem *findItem(const QString &name) const; + + /** + * Specify whether this object should reflect the actual values or the + * default values. + * This method is implemented by usrUseDefaults(), which can be overridden + * in derived classes if you have special requirements and can call + * usrUseDefaults() directly. + * If you don't have control whether useDefaults() or usrUseDefaults() is + * called override useDefaults() directly. + * @param b @c true to make this object reflect the default values, + * @c false to make it reflect the actual values. + * @return The state prior to this call + */ + virtual bool useDefaults(bool b); + +public Q_SLOTS: + /** + * Write preferences to config file. The values of all registered items are + * written to disk. + * This method calls usrSave() after writing the settings from the + * registered items to the KConfig. You can override usrSave() + * in derived classes if you have special requirements. + */ + bool save(); + +Q_SIGNALS: + /** + * This signal is emitted when the configuration change. + */ + void configChanged(); + +protected: + /** + * Implemented by subclasses that use special defaults. + * It replaces the default values with the actual values and + * vice versa. Called from @ref useDefaults() + * @param b @c true to make this object reflect the default values, + * @c false to make it reflect the actual values. + * @return The state prior to this call + */ + virtual bool usrUseDefaults(bool b); + + /** + * Perform the actual setting of default values. + * Override in derived classes to set special default values. + * Called from @ref setDefaults() + */ + virtual void usrSetDefaults(); + + /** + * Perform the actual reading of the configuration file. + * Override in derived classes to read special config values. + * Called from @ref read() + */ + virtual void usrRead(); + + /** + * Perform the actual writing of the configuration file. + * Override in derived classes to write special config values. + * Called from @ref save() + */ + virtual bool usrSave(); + +private: + KCoreConfigSkeletonPrivate *const d; + friend class KConfigSkeleton; +}; + +Q_DECLARE_TYPEINFO(KCoreConfigSkeleton::ItemEnum::Choice, Q_RELOCATABLE_TYPE); + +#endif diff --git a/src/core/kcoreconfigskeleton_p.h b/src/core/kcoreconfigskeleton_p.h new file mode 100644 index 0000000..d0851d9 --- /dev/null +++ b/src/core/kcoreconfigskeleton_p.h @@ -0,0 +1,81 @@ +/* + This file is part of KOrganizer. + SPDX-FileCopyrightText: 2000, 2001 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCORECONFIGSKELETON_P_H +#define KCORECONFIGSKELETON_P_H + +#include "kcoreconfigskeleton.h" + +class KCoreConfigSkeletonPrivate +{ +public: + KCoreConfigSkeletonPrivate() + : mCurrentGroup(QStringLiteral("No Group")) + , mUseDefaults(false) + { + } + ~KCoreConfigSkeletonPrivate() + { + qDeleteAll(mItems); + } + QString mCurrentGroup; + + KSharedConfig::Ptr mConfig; // pointer to KConfig object + + KConfigSkeletonItem::List mItems; + KConfigSkeletonItem::Dict mItemDict; + + bool mUseDefaults; +}; + +class KConfigSkeletonItemPrivate +{ +public: + KConfigSkeletonItemPrivate() + : mIsImmutable(true) + , mWriteFlags(KConfigBase::Normal) + { + } + virtual ~KConfigSkeletonItemPrivate(); + bool mIsImmutable; ///< Indicates this item is immutable + KConfigBase::WriteConfigFlags mWriteFlags; ///< The flags to pass to calls of writeEntry() and revertToDefault() + + QString mLabel; ///< The label for this item + QString mToolTip; ///< The ToolTip text for this item + QString mWhatsThis; ///< The What's This text for this item + KConfigGroup mConfigGroup; ///< KConfigGroup, allow to read/write item in nested groups + + // HACK: Necessary to avoid introducing new virtuals in KConfigSkeletonItem + std::function mIsDefaultImpl; + std::function mIsSaveNeededImpl; + std::function mGetDefaultImpl; +}; + +class KPropertySkeletonItemPrivate : public KConfigSkeletonItemPrivate +{ +public: + KPropertySkeletonItemPrivate(QObject *object, const QByteArray &propertyName, const QVariant &defaultValue) + : KConfigSkeletonItemPrivate() + , mObject(object) + , mPropertyName(propertyName) + , mDefaultValue(defaultValue) + , mConstDefaultValue(defaultValue) + { + mIsImmutable = false; + } + + QObject *mObject; + const QByteArray mPropertyName; + QVariant mDefaultValue; + const QVariant mConstDefaultValue; + QVariant mReference; + QVariant mLoadedValue; + std::function mNotifyFunction; +}; + +#endif diff --git a/src/core/kdesktopfile.cpp b/src/core/kdesktopfile.cpp new file mode 100644 index 0000000..f28c8b7 --- /dev/null +++ b/src/core/kdesktopfile.cpp @@ -0,0 +1,319 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 1999 Pietro Iglio + SPDX-FileCopyrightText: 1999 Preston Brown + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kdesktopfile.h" + +#include "kauthorized.h" +#include "kconfig_core_log_settings.h" +#include "kconfig_p.h" +#include "kconfiggroup.h" +#include "kconfigini_p.h" +#include "kdesktopfileaction.h" + +#include +#include +#include +#include + +#ifndef Q_OS_WIN +#include +#endif + +#include + +class KDesktopFilePrivate : public KConfigPrivate +{ +public: + KDesktopFilePrivate(QStandardPaths::StandardLocation resourceType, const QString &fileName) + : KConfigPrivate(KConfig::NoGlobals, resourceType) + { + changeFileName(fileName); + } + KConfigGroup desktopGroup; +}; + +KDesktopFile::KDesktopFile(QStandardPaths::StandardLocation resourceType, const QString &fileName) + : KConfig(*new KDesktopFilePrivate(resourceType, fileName)) +{ + Q_D(KDesktopFile); + reparseConfiguration(); + d->desktopGroup = KConfigGroup(this, QStringLiteral("Desktop Entry")); +} + +KDesktopFile::KDesktopFile(const QString &fileName) + : KDesktopFile(QStandardPaths::ApplicationsLocation, fileName) +{ +} + +KDesktopFile::~KDesktopFile() = default; + +KConfigGroup KDesktopFile::desktopGroup() const +{ + Q_D(const KDesktopFile); + return d->desktopGroup; +} + +QString KDesktopFile::locateLocal(const QString &path) +{ + static const QLatin1Char slash('/'); + + // Relative to config? (e.g. for autostart) + const QStringList genericConfig = QStandardPaths::standardLocations(QStandardPaths::GenericConfigLocation); + // Iterate from the last item since some items may be subfolders of others. + auto it = std::find_if(genericConfig.crbegin(), genericConfig.crend(), [&path](const QString &dir) { + return path.startsWith(dir + slash); + }); + if (it != genericConfig.crend()) { + return QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation) + slash + QStringView(path).mid(it->size() + 1); + } + + QString relativePath; + // Relative to xdg data dir? (much more common) + const QStringList lstGenericDataLocation = QStandardPaths::standardLocations(QStandardPaths::GenericDataLocation); + for (const QString &dir : lstGenericDataLocation) { + if (path.startsWith(dir + slash)) { + relativePath = path.mid(dir.length() + 1); + } + } + if (relativePath.isEmpty()) { + // What now? The desktop file doesn't come from XDG_DATA_DIRS. Use filename only and hope for the best. + relativePath = path.mid(path.lastIndexOf(slash) + 1); + } + return QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation) + slash + relativePath; +} + +bool KDesktopFile::isDesktopFile(const QString &path) +{ + return path.endsWith(QLatin1String(".desktop")); +} + +bool KDesktopFile::isAuthorizedDesktopFile(const QString &path) +{ + if (path.isEmpty()) { + return false; // Empty paths are not ok. + } + + if (QDir::isRelativePath(path)) { + return true; // Relative paths are ok. + } + + const QString realPath = QFileInfo(path).canonicalFilePath(); + if (realPath.isEmpty()) { + return false; // File doesn't exist. + } + +#ifndef Q_OS_WIN + static constexpr Qt::CaseSensitivity sensitivity = Qt::CaseSensitive; +#else + static constexpr Qt::CaseSensitivity sensitivity = Qt::CaseInsensitive; +#endif + + // Check if the .desktop file is installed as part of KDE or XDG. + const QStringList appsDirs = QStandardPaths::standardLocations(QStandardPaths::ApplicationsLocation); + auto it = std::find_if(appsDirs.cbegin(), appsDirs.cend(), [&realPath, &path](const QString &prefix) { + QFileInfo info(prefix); + return info.exists() && info.isDir() && (realPath.startsWith(info.canonicalFilePath(), sensitivity) || path.startsWith(info.canonicalFilePath())); + }); + if (it != appsDirs.cend()) { + return true; + } + + const QString autostartDir = QStringLiteral("autostart/"); + const QStringList lstConfigPath = QStandardPaths::standardLocations(QStandardPaths::GenericConfigLocation); + auto configIt = std::find_if(lstConfigPath.cbegin(), lstConfigPath.cend(), [&realPath, &autostartDir](const QString &xdgDataPrefix) { + QFileInfo info(xdgDataPrefix); + if (info.exists() && info.isDir()) { + const QString prefix = info.canonicalFilePath(); + return realPath.startsWith(prefix + QLatin1Char('/') + autostartDir, sensitivity); + } + return false; + }); + if (configIt != lstConfigPath.cend()) { + return true; + } + + // Forbid desktop files outside of standard locations if kiosk is set so + if (!KAuthorized::authorize(QStringLiteral("run_desktop_files"))) { + qCWarning(KCONFIG_CORE_LOG) << "Access to" << path << "denied because of 'run_desktop_files' restriction."; + return false; + } + + // Not otherwise permitted, so only allow if the file is executable, or if + // owned by root (uid == 0) + QFileInfo entryInfo(path); + if (entryInfo.isExecutable() || entryInfo.ownerId() == 0) { + return true; + } + + qCInfo(KCONFIG_CORE_LOG) << "Access to" << path << "denied, not owned by root and executable flag not set."; + return false; +} + +QString KDesktopFile::readType() const +{ + Q_D(const KDesktopFile); + return d->desktopGroup.readEntry("Type", QString()); +} + +QString KDesktopFile::readIcon() const +{ + Q_D(const KDesktopFile); + return d->desktopGroup.readEntry("Icon", QString()); +} + +QString KDesktopFile::readName() const +{ + Q_D(const KDesktopFile); + return d->desktopGroup.readEntry("Name", QString()); +} + +QString KDesktopFile::readComment() const +{ + Q_D(const KDesktopFile); + return d->desktopGroup.readEntry("Comment", QString()); +} + +QString KDesktopFile::readGenericName() const +{ + Q_D(const KDesktopFile); + return d->desktopGroup.readEntry("GenericName", QString()); +} + +QString KDesktopFile::readPath() const +{ + Q_D(const KDesktopFile); + // NOT readPathEntry, it is not XDG-compliant: it performs + // various expansions, like $HOME. Note that the expansion + // behaviour still happens if the "e" flag is set, maintaining + // backwards compatibility. + return d->desktopGroup.readEntry("Path", QString()); +} + +QString KDesktopFile::readUrl() const +{ + Q_D(const KDesktopFile); + if (hasDeviceType()) { + return d->desktopGroup.readEntry("MountPoint", QString()); + } else { + // NOT readPathEntry (see readPath()) + QString url = d->desktopGroup.readEntry("URL", QString()); + if (!url.isEmpty() && !QDir::isRelativePath(url)) { + // Handle absolute paths as such (i.e. we need to escape them) + return QUrl::fromLocalFile(url).toString(); + } + return url; + } +} + +QStringList KDesktopFile::readActions() const +{ + Q_D(const KDesktopFile); + return d->desktopGroup.readXdgListEntry("Actions"); +} + +QStringList KDesktopFile::readMimeTypes() const +{ + Q_D(const KDesktopFile); + return d->desktopGroup.readXdgListEntry("MimeType"); +} + +KConfigGroup KDesktopFile::actionGroup(const QString &group) +{ + return KConfigGroup(this, QLatin1String("Desktop Action ") + group); +} + +KConfigGroup KDesktopFile::actionGroup(const QString &group) const +{ + return const_cast(this)->actionGroup(group); +} + +bool KDesktopFile::hasActionGroup(const QString &group) const +{ + return hasGroup(QString(QLatin1String("Desktop Action ") + group)); +} + +bool KDesktopFile::hasLinkType() const +{ + return readType() == QLatin1String("Link"); +} + +bool KDesktopFile::hasApplicationType() const +{ + return readType() == QLatin1String("Application"); +} + +bool KDesktopFile::hasDeviceType() const +{ + return readType() == QLatin1String("FSDevice"); +} + +bool KDesktopFile::tryExec() const +{ + Q_D(const KDesktopFile); + // Test for TryExec and "X-KDE-AuthorizeAction" + // NOT readPathEntry (see readPath()) + const QString te = d->desktopGroup.readEntry("TryExec", QString()); + if (!te.isEmpty() && QStandardPaths::findExecutable(te).isEmpty()) { + return false; + } + const QStringList list = d->desktopGroup.readEntry("X-KDE-AuthorizeAction", QStringList()); + const auto isNotAuthorized = std::any_of(list.cbegin(), list.cend(), [](const QString &action) { + return !KAuthorized::authorize(action.trimmed()); + }); + if (isNotAuthorized) { + return false; + } + + // See also KService::username() + if (d->desktopGroup.readEntry("X-KDE-SubstituteUID", false)) { + QString user = d->desktopGroup.readEntry("X-KDE-Username", QString()); + if (user.isEmpty()) { + user = qEnvironmentVariable("ADMIN_ACCOUNT"), QStringLiteral("root"); + } + if (!KAuthorized::authorize(QLatin1String("user/") + user)) { + return false; + } + } + + return true; +} + +QString KDesktopFile::readDocPath() const +{ + Q_D(const KDesktopFile); + return d->desktopGroup.readPathEntry("X-DocPath", QString()); +} + +KDesktopFile *KDesktopFile::copyTo(const QString &file) const +{ + KDesktopFile *config = new KDesktopFile(QString()); + this->KConfig::copyTo(file, config); + return config; +} + +QString KDesktopFile::fileName() const +{ + return name(); +} + +bool KDesktopFile::noDisplay() const +{ + Q_D(const KDesktopFile); + return d->desktopGroup.readEntry("NoDisplay", false); +} + +QList KDesktopFile::actions() const +{ + QList desktopFileActions; + const QStringList actionKeys = readActions(); + for (const QString &actionKey : actionKeys) { + const KConfigGroup grp = actionGroup(actionKey); + desktopFileActions << KDesktopFileAction(actionKey, grp.readEntry("Name"), grp.readEntry("Icon"), grp.readEntry("Exec"), fileName()); + } + return desktopFileActions; +} diff --git a/src/core/kdesktopfile.h b/src/core/kdesktopfile.h new file mode 100644 index 0000000..be53cd2 --- /dev/null +++ b/src/core/kdesktopfile.h @@ -0,0 +1,238 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 1999 Pietro Iglio + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ +#ifndef KDESKTOPFILE_H +#define KDESKTOPFILE_H + +#include + +class KConfigGroup; +class KDesktopFileAction; +class KDesktopFilePrivate; + +/** + * \class KDesktopFile kdesktopfile.h + * + * %KDE Desktop File Management. + * This class implements %KDE's support for the freedesktop.org + * Desktop Entry Spec. + * + * @author Pietro Iglio + * @see KConfigBase KConfig + * @see Desktop Entry Spec + */ +class KCONFIGCORE_EXPORT KDesktopFile : public KConfig +{ +public: + /** + * Constructs a KDesktopFile object. + * + * See QStandardPaths for more information on resources. + * + * @param resourceType Allows you to change what sort of resource + * to search for if @p fileName is not absolute. + * For instance, you might want to specify GenericConfigLocation. + * @param fileName The name or path of the desktop file. If it + * is not absolute, it will be located + * using the resource type @p resType. + */ + explicit KDesktopFile(QStandardPaths::StandardLocation resourceType, const QString &fileName); + + /** + * Constructs a KDesktopFile object. + * + * See QStandardPaths for more information on resources. + * + * @param fileName The name or path of the desktop file. If it + * is not absolute, it will be located + * using the resource type ApplicationsLocation + */ + explicit KDesktopFile(const QString &fileName); + + /** + * Destructs the KDesktopFile object. + * + * Writes back any changed configuration entries. + */ + ~KDesktopFile() override; + + /** + * Checks whether this is really a desktop file. + * + * The check is performed looking at the file extension (the file is not + * opened). + * Currently, the only valid extension is ".desktop". + * @param path the path of the file to check + * @return true if the file appears to be a desktop file. + */ + static bool isDesktopFile(const QString &path); + + /** + * Checks whether the user is authorized to run this desktop file. + * By default users are authorized to run all desktop files but + * the KIOSK framework can be used to activate certain restrictions. + * See README.kiosk for more information. + * + * Note that desktop files that are not in a standard location (as + * specified by XDG_DATA_DIRS) must have their executable bit set + * to be authorized, regardless of KIOSK settings, to prevent users + * from inadvertently running trojan desktop files. + * + * @param path the file to check + * @return true if the user is authorized to run the file + */ + static bool isAuthorizedDesktopFile(const QString &path); + + /** + * Returns the location where changes for the .desktop file @p path + * should be written to. + */ + static QString locateLocal(const QString &path); + + /** + * Returns the main config group (named "Desktop Entry") in a .desktop file. + */ + KConfigGroup desktopGroup() const; + + /** + * Returns the value of the "Type=" entry. + * @return the type or QString() if not specified + */ + QString readType() const; + + /** + * Returns the value of the "Icon=" entry. + * @return the icon or QString() if not specified + */ + QString readIcon() const; + + /** + * Returns the value of the "Name=" entry. + * @return the name or QString() if not specified + */ + QString readName() const; + + /** + * Returns the value of the "Comment=" entry. + * @return the comment or QString() if not specified + */ + QString readComment() const; + + /** + * Returns the value of the "GenericName=" entry. + * @return the generic name or QString() if not specified + */ + QString readGenericName() const; + + /** + * Returns the value of the "Path=" entry. + * @return the path or QString() if not specified + */ + QString readPath() const; + + /** + * Returns the value of the "URL=" entry. + * @return the URL or QString() if not specified + */ + QString readUrl() const; + + /** + * Returns a list of the "Actions=" entries. + * @return the list of actions + */ + QStringList readActions() const; + + /** + * Returns a list of the "MimeType=" entries. + * @return the list of mime types + * @since 5.15 + */ + QStringList readMimeTypes() const; + + /** + * Sets the desktop action group. + * @param group the new action group + */ + KConfigGroup actionGroup(const QString &group); + KConfigGroup actionGroup(const QString &group) const; + + /** + * Returns true if the action group exists, false otherwise + * @param group the action group to test + * @return true if the action group exists + */ + bool hasActionGroup(const QString &group) const; + + /** + * Checks whether there is a "Type=Link" entry. + * + * The link points to the "URL=" entry. + * @return true if there is a "Type=Link" entry + */ + bool hasLinkType() const; + + /** + * Checks whether there is an entry "Type=Application". + * @return true if there is a "Type=Application" entry + */ + bool hasApplicationType() const; + + /** + * Checks whether there is an entry "Type=FSDevice". + * @return true if there is a "Type=FSDevice" entry + */ + bool hasDeviceType() const; + + /** + * Checks whether the TryExec field contains a binary + * which is found on the local system. + * @return true if TryExec contains an existing binary + */ + bool tryExec() const; + + /** + * Returns the value of the "X-DocPath=" Or "DocPath=" entry. + * @return The value of the "X-DocPath=" Or "DocPath=" entry. + */ + QString readDocPath() const; + + /** + * Whether the entry should be suppressed in menus. + * This handles the NoDisplay key + * @return true to suppress this desktop file + * @since 4.1 + */ + bool noDisplay() const; + + /** + * Copies all entries from this config object to a new + * KDesktopFile object that will save itself to @p file. + * + * Actual saving to @p file happens when the returned object is + * destructed or when sync() is called upon it. + * + * @param file the new KDesktopFile object it will save itself to. + */ + KDesktopFile *copyTo(const QString &file) const; + + /** + * Returns the name of the .desktop file that was used to construct this KDesktopFile. + */ + QString fileName() const; + + /** + * + * @since 6.0 + */ + QList actions() const; + +private: + Q_DISABLE_COPY(KDesktopFile) + + Q_DECLARE_PRIVATE(KDesktopFile) +}; + +#endif diff --git a/src/core/kdesktopfileaction.cpp b/src/core/kdesktopfileaction.cpp new file mode 100644 index 0000000..e2c9b1a --- /dev/null +++ b/src/core/kdesktopfileaction.cpp @@ -0,0 +1,72 @@ +/* + SPDX-FileCopyrightText: 2023 Alexander Lohnau + SPDX-License-Identifier: LGPL-2.0-or-later +*/ +#include "kdesktopfileaction.h" +#include + +class KDesktopFileActionPrivate : public QSharedData +{ +public: + QString m_internalActionKey; + QString m_name; + QString m_icon; + QString m_exec; + QString m_desktopFilePath; + + KDesktopFileActionPrivate(const QString &name, const QString &text, const QString &icon, const QString &exec, const QString &desktopFilePath) + : m_internalActionKey(name) + , m_name(text) + , m_icon(icon) + , m_exec(exec) + , m_desktopFilePath(desktopFilePath) + { + } + KDesktopFileActionPrivate() = default; +}; + +KDesktopFileAction::KDesktopFileAction(const QString &name, const QString &text, const QString &icon, const QString &exec, const QString &desktopFilePath) + : d(new KDesktopFileActionPrivate(name, text, icon, exec, desktopFilePath)) +{ +} + +KDesktopFileAction::KDesktopFileAction() + : d(new KDesktopFileActionPrivate()) +{ +} + +KDesktopFileAction::KDesktopFileAction(const KDesktopFileAction &other) = default; +KDesktopFileAction &KDesktopFileAction::operator=(const KDesktopFileAction &other) = default; +KDesktopFileAction::KDesktopFileAction(KDesktopFileAction &&other) = default; +KDesktopFileAction &KDesktopFileAction::operator=(KDesktopFileAction &&other) = default; +KDesktopFileAction::~KDesktopFileAction() = default; + +QString KDesktopFileAction::actionsKey() const +{ + return d->m_internalActionKey; +} + +QString KDesktopFileAction::desktopFilePath() const +{ + return d->m_desktopFilePath; +} + +QString KDesktopFileAction::name() const +{ + return d->m_name; +} + +QString KDesktopFileAction::icon() const +{ + return d->m_icon; +} + +QString KDesktopFileAction::exec() const +{ + return d->m_exec; +} + +bool KDesktopFileAction::isSeparator() const +{ + return d->m_internalActionKey == QLatin1String("_SEPARATOR_"); +} diff --git a/src/core/kdesktopfileaction.h b/src/core/kdesktopfileaction.h new file mode 100644 index 0000000..e6dc071 --- /dev/null +++ b/src/core/kdesktopfileaction.h @@ -0,0 +1,75 @@ +/* + SPDX-FileCopyrightText: 2023 Alexander Lohnau + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KDESKTOPFILEACTION_H +#define KDESKTOPFILEACTION_H +#include + +#include +#include + +class KDesktopFileActionPrivate; + +/** + * Class for representing an Action of a desktop file + * + * @since 6.0 + */ +class KCONFIGCORE_EXPORT KDesktopFileAction +{ +public: + /** + * Construct an empty KDesktopFileAction. Needed so the Action can be stored in containers that require type T to be + * default constructible (e.g. QVariant). + */ + explicit KDesktopFileAction(); + /** + * Construct a KDesktopFileAction with all required properties + */ + explicit KDesktopFileAction(const QString &name, const QString &text, const QString &icon, const QString &exec, const QString &desktopFilePath); + + KDesktopFileAction(const KDesktopFileAction &other); + KDesktopFileAction &operator=(const KDesktopFileAction &other); + KDesktopFileAction(KDesktopFileAction &&other); + KDesktopFileAction &operator=(KDesktopFileAction &&other); + ~KDesktopFileAction(); + + /** + * @return the action's internal name + * For instance Actions=Setup;... and the group [Desktop Action Setup] + * define an action with the name "Setup". + */ + QString actionsKey() const; + + /** + * @return Path of the desktop file this action was loaded from + */ + QString desktopFilePath() const; + + /** + * @return the action's Name, as defined by the Name key in the desktop action group + */ + QString name() const; + + /** + * @return the action's icon, as defined by the Icon key in the desktop action group + */ + QString icon() const; + + /** + * @return the action's exec command, as defined by the Exec key in the desktop action group + */ + QString exec() const; + + /** + * Returns whether the action is a separator. + * This is true when the Actions key contains "_SEPARATOR_". + */ + bool isSeparator() const; + +private: + QSharedDataPointer d; +}; +#endif diff --git a/src/core/kemailsettings.cpp b/src/core/kemailsettings.cpp new file mode 100644 index 0000000..9f529da --- /dev/null +++ b/src/core/kemailsettings.cpp @@ -0,0 +1,148 @@ +/* + SPDX-FileCopyrightText: 2000 Alex Zepeda + + SPDX-License-Identifier: BSD-2-Clause +*/ + +#include "kemailsettings.h" + +#include +#include + +class KEMailSettingsPrivate +{ +public: + KEMailSettingsPrivate() + : m_pConfig(nullptr) + { + } + ~KEMailSettingsPrivate() + { + delete m_pConfig; + } + KConfig *m_pConfig; + QStringList profiles; + QString m_sDefaultProfile, m_sCurrentProfile; +}; + +QString KEMailSettings::defaultProfileName() const +{ + return p->m_sDefaultProfile; +} + +QString KEMailSettings::getSetting(KEMailSettings::Setting s) const +{ + KConfigGroup cg(p->m_pConfig, QLatin1String("PROFILE_") + p->m_sCurrentProfile); + switch (s) { + case ClientProgram: { + return cg.readEntry("EmailClient"); + } + case ClientTerminal: { + return cg.readEntry("TerminalClient", QVariant(false)).toString(); + } + case RealName: { + return cg.readEntry("FullName"); + } + case EmailAddress: { + return cg.readEntry("EmailAddress"); + } + case ReplyToAddress: { + return cg.readEntry("ReplyAddr"); + } + case Organization: { + return cg.readEntry("Organization"); + } + }; + return QString(); +} +void KEMailSettings::setSetting(KEMailSettings::Setting s, const QString &v) +{ + KConfigGroup cg(p->m_pConfig, QLatin1String("PROFILE_") + p->m_sCurrentProfile); + switch (s) { + case ClientProgram: { + cg.writePathEntry("EmailClient", v); + break; + } + case ClientTerminal: { + cg.writeEntry("TerminalClient", (v == QLatin1String("true"))); + break; + } + case RealName: { + cg.writeEntry("FullName", v); + break; + } + case EmailAddress: { + cg.writeEntry("EmailAddress", v); + break; + } + case ReplyToAddress: { + cg.writeEntry("ReplyAddr", v); + break; + } + case Organization: { + cg.writeEntry("Organization", v); + break; + } + }; + cg.sync(); +} + +void KEMailSettings::setDefault(const QString &s) +{ + p->m_pConfig->group(QStringLiteral("Defaults")).writeEntry("Profile", s); + p->m_pConfig->sync(); + p->m_sDefaultProfile = s; +} + +void KEMailSettings::setProfile(const QString &s) +{ + const QString groupname = QLatin1String("PROFILE_") + s; + p->m_sCurrentProfile = s; + if (!p->m_pConfig->hasGroup(groupname)) { // Create a group if it doesn't exist + KConfigGroup cg(p->m_pConfig, groupname); + cg.writeEntry("ServerType", QString()); + p->profiles += s; + } +} + +QStringList KEMailSettings::profiles() const +{ + return p->profiles; +} + +KEMailSettings::KEMailSettings() + : p(new KEMailSettingsPrivate()) +{ + p->m_sCurrentProfile.clear(); + + p->m_pConfig = new KConfig(QStringLiteral("emaildefaults")); + + const QStringList groups = p->m_pConfig->groupList(); + for (const auto &grp : groups) { + if (grp.startsWith(QLatin1String("PROFILE_"))) { + p->profiles += grp.mid(8 /* length of "PROFILE_" */); + } + } + + KConfigGroup cg(p->m_pConfig, QStringLiteral("Defaults")); + p->m_sDefaultProfile = cg.readEntry("Profile", tr("Default")); + if (!p->m_sDefaultProfile.isNull()) { + if (!p->m_pConfig->hasGroup(QLatin1String("PROFILE_") + p->m_sDefaultProfile)) { + setDefault(tr("Default")); + } else { + setDefault(p->m_sDefaultProfile); + } + } else { + if (!p->profiles.isEmpty()) { + setDefault(p->profiles[0]); + } else { + setDefault(tr("Default")); + } + } + setProfile(defaultProfileName()); +} + +KEMailSettings::~KEMailSettings() +{ + delete p; +} diff --git a/src/core/kemailsettings.h b/src/core/kemailsettings.h new file mode 100644 index 0000000..07ad3aa --- /dev/null +++ b/src/core/kemailsettings.h @@ -0,0 +1,105 @@ +/* + SPDX-FileCopyrightText: 2000 Alex Zepeda + + SPDX-License-Identifier: BSD-2-Clause +*/ + +#ifndef _KEMAILSETTINGS_H +#define _KEMAILSETTINGS_H + +#include // Q_DECLARE_TR_FUNCTIONS +#include + +#include + +class KEMailSettingsPrivate; + +/** + * \class KEMailSettings kemailsettings.h + * + * This is just a small class to facilitate accessing e-mail settings in + * a sane way, and allowing any program to manage multiple e-mail + * profiles effortlessly + * + * The default profile is automatically selected in the constructor. + * + * @author Alex Zepeda zipzippy@sonic.net + **/ +class KCONFIGCORE_EXPORT KEMailSettings +{ + Q_DECLARE_TR_FUNCTIONS(KEMailSettings) +public: + /** + * The list of settings that I thought of when I wrote this + * class. + * @see getSetting() + * @see setSetting() + **/ + enum Setting { + ClientProgram, + ClientTerminal, + RealName, + EmailAddress, + ReplyToAddress, + Organization, + }; + + /** + * Default constructor, just sets things up and sets the default profile + * as the current profile + **/ + KEMailSettings(); + + KEMailSettings(const KEMailSettings &) = delete; + KEMailSettings &operator=(const KEMailSettings &) = delete; + + /** + * Default destructor, nothing to see here. + **/ + ~KEMailSettings(); + + /** + * List of profiles available. + * @return the list of profiles + **/ + QStringList profiles() const; + + /** + * Change the current profile. + * @param s the name of the new profile + **/ + void setProfile(const QString &s); + + /** + * Returns the name of the default profile. + * @returns the name of the one that's currently default QString() if none + **/ + QString defaultProfileName() const; + + /** + * Sets a new default. + * @param def the new default + **/ + void setDefault(const QString &def); + + /** + * Get one of the predefined "basic" settings. + * @param s the setting to get + * @return the value of the setting, or QString() if not + * set + **/ + QString getSetting(KEMailSettings::Setting s) const; + + /** + * Set one of the predefined "basic" settings. + * @param s the setting to set + * @param v the new value of the setting, or QString() to + * unset + **/ + void setSetting(KEMailSettings::Setting s, const QString &v); + +private: + KEMailSettingsPrivate *const p; +}; + +#endif diff --git a/src/core/ksharedconfig.cpp b/src/core/ksharedconfig.cpp new file mode 100644 index 0000000..3689613 --- /dev/null +++ b/src/core/ksharedconfig.cpp @@ -0,0 +1,202 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 1999 Preston Brown + SPDX-FileCopyrightText: 1997-1999 Matthias Kalle Dalheimer + SPDX-FileCopyrightText: 2024 Harald Sitter + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "ksharedconfig.h" +#include "kconfig_core_log_settings.h" +#include "kconfig_p.h" +#include "kconfiggroup.h" +#include +#include +#include + +using namespace Qt::StringLiterals; + +void _k_globalMainConfigSync(); + +using SharedConfigList = QList; + +class GlobalSharedConfig +{ +public: + GlobalSharedConfig() + : wasTestModeEnabled(false) + { + if (!qApp || QThread::currentThread() == qApp->thread()) { + // We want to force the sync() before the QCoreApplication + // instance is gone. Otherwise we trigger a QLockFile::lock() + // after QCoreApplication is gone, calling qAppName() for a non + // existent app... + qAddPostRoutine(&_k_globalMainConfigSync); + } + // In other threads, QThreadStorage takes care of deleting the GlobalSharedConfigList when + // the thread exits. + } + + SharedConfigList configList; + // in addition to the list, we need to hold the main config, + // so that it's not created and destroyed all the time. + KSharedConfigPtr mainConfig; + bool wasTestModeEnabled; +}; + +static QThreadStorage s_storage; +template +T *perThreadGlobalStatic() +{ + if (!s_storage.hasLocalData()) { + s_storage.setLocalData(new T); + } + return s_storage.localData(); +} + +// Q_GLOBAL_STATIC(GlobalSharedConfigList, globalSharedConfigList), but per thread: +static GlobalSharedConfig *globalSharedConfig() +{ + return perThreadGlobalStatic(); +} + +namespace +{ +[[nodiscard]] QString migrateStateRc(const QString &fileName) +{ + // Migrate from an old legacy path to new spec compliant ~/.local/state/ + // https://gitlab.freedesktop.org/xdg/xdg-specs/-/blob/master/basedir/basedir-spec.xml + // TODO KF7: refactor openStateConfig so it always opens from XDG_STATE_HOME instead of the legacy when on an XDG platform + +#if !defined(Q_OS_WINDOWS) && !defined(Q_OS_ANDROID) && !defined(Q_OS_MACOS) + if (QFileInfo(fileName).isAbsolute()) { + return fileName; + } + + static auto xdgStateHome = qEnvironmentVariable("XDG_STATE_HOME", QDir::homePath() + "/.local/state"_L1); + if (fileName.startsWith(xdgStateHome)) [[unlikely]] { + return fileName; + } + + QString newPath = xdgStateHome + "/"_L1 + fileName; // intentionally not const so it can be move returned + QString oldPath = QStandardPaths::locate(QStandardPaths::AppDataLocation, fileName); + if (oldPath.isEmpty()) { // nothing to migrate + return newPath; + } + if (QFile::exists(oldPath) && QFile::exists(newPath)) { + qCDebug(KCONFIG_CORE_LOG) << "Old staterc and new staterc found. Not migrating! Using new path" << newPath; + return newPath; + } + + if (QFile::exists(newPath)) { // already migrated + return newPath; + } + + // Migrate legacy files. + // On failure we return the new path because we want higher level technology to surface the new path for read/write errors. + if (!QDir().exists(xdgStateHome)) { + if (!QDir().mkpath(xdgStateHome)) { + qCWarning(KCONFIG_CORE_LOG) << "Failed to make state directory" << xdgStateHome; + return newPath; + } + } + qCInfo(KCONFIG_CORE_LOG) << "Migrating old staterc" << oldPath << "->" << newPath; + if (!QFile::rename(oldPath, newPath)) { + qCWarning(KCONFIG_CORE_LOG) << "Failed to migrate" << oldPath << "->" << newPath; + return newPath; + } + + return newPath; +#else + return fileName; +#endif +} +} // namespace + +void _k_globalMainConfigSync() +{ + if (KSharedConfigPtr mainConfig = globalSharedConfig()->mainConfig) { + mainConfig->sync(); + } +} + +KSharedConfigPtr KSharedConfig::openConfig(const QString &_fileName, OpenFlags flags, QStandardPaths::StandardLocation resType) +{ + QString fileName(_fileName); + GlobalSharedConfig *global = globalSharedConfig(); + if (fileName.isEmpty() && !flags.testFlag(KConfig::SimpleConfig)) { + // Determine the config file name that KConfig will make up (see KConfigPrivate::changeFileName) + fileName = KConfig::mainConfigName(); + } + + if (!global->wasTestModeEnabled && QStandardPaths::isTestModeEnabled()) { + global->wasTestModeEnabled = true; + global->configList.clear(); + global->mainConfig = nullptr; + } + + for (auto *cfg : std::as_const(global->configList)) { + if (cfg->name() == fileName && cfg->d_ptr->openFlags == flags && cfg->locationType() == resType) { + return KSharedConfigPtr(cfg); + } + } + + KSharedConfigPtr ptr(new KSharedConfig(fileName, flags, resType)); + + if (_fileName.isEmpty() && flags == FullConfig && resType == QStandardPaths::GenericConfigLocation) { + global->mainConfig = ptr; + + const bool isMainThread = !qApp || QThread::currentThread() == qApp->thread(); + static bool userWarned = false; + if (isMainThread && !userWarned) { + userWarned = true; + const bool isReadOnly = qEnvironmentVariableIsEmpty("KDE_HOME_READONLY"); + if (isReadOnly && QCoreApplication::applicationName() != QLatin1String("kdialog")) { + if (ptr->group(QStringLiteral("General")).readEntry(QStringLiteral("warn_unwritable_config"), true)) { + ptr->isConfigWritable(true); + } + } + } + } + + return ptr; +} + +KSharedConfig::Ptr KSharedConfig::openStateConfig(const QString &_fileName) +{ + QString fileName(_fileName); + + if (fileName.isEmpty()) { + fileName = QCoreApplication::applicationName() + QLatin1String("staterc"); + } + + return openConfig(migrateStateRc(fileName), + SimpleConfig, + QStandardPaths::AppDataLocation /* only used on !XDG platform, on XDG we resolve an absolute path (unless there are problems) */); +} + +KSharedConfig::KSharedConfig(const QString &fileName, OpenFlags flags, QStandardPaths::StandardLocation resType) + : KConfig(fileName, flags, resType) +{ + globalSharedConfig()->configList.append(this); +} + +KSharedConfig::~KSharedConfig() +{ + if (s_storage.hasLocalData()) { + globalSharedConfig()->configList.removeAll(this); + } +} + +KConfigGroup KSharedConfig::groupImpl(const QString &groupName) +{ + KSharedConfigPtr ptr(this); + return KConfigGroup(ptr, groupName); +} + +const KConfigGroup KSharedConfig::groupImpl(const QString &groupName) const +{ + const KSharedConfigPtr ptr(const_cast(this)); + return KConfigGroup(ptr, groupName); +} diff --git a/src/core/ksharedconfig.h b/src/core/ksharedconfig.h new file mode 100644 index 0000000..13881fa --- /dev/null +++ b/src/core/ksharedconfig.h @@ -0,0 +1,98 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 1999 Preston Brown + SPDX-FileCopyrightText: 1997-1999 Matthias Kalle Dalheimer + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KSHAREDCONFIG_H +#define KSHAREDCONFIG_H + +#include +#include + +/** + * \class KSharedConfig ksharedconfig.h + * + * KConfig variant using shared memory + * + * KSharedConfig provides a shared (reference counted) variant + * of KConfig. This allows you to use/manipulate the same configuration + * files from different places in your code without worrying about + * accidentally overwriting changes. + * + * The openConfig() method is threadsafe: every thread gets a separate repository + * of shared KConfig objects. This means, however, that you'll be responsible for + * synchronizing the instances of KConfig for the same filename between threads, + * using KConfig::reparseConfiguration() after a manual change notification, just like you have + * to do between processes. + */ +class KCONFIGCORE_EXPORT KSharedConfig : public KConfig, public QSharedData // krazy:exclude=dpointer (only for refcounting) +{ +public: + typedef QExplicitlySharedDataPointer Ptr; + +public: + /** + * Creates a KSharedConfig object to manipulate a configuration file + * + * If an absolute path is specified for @p fileName, that file will be used + * as the store for the configuration settings. If a non-absolute path + * is provided, the file will be looked for in the standard directory + * specified by @p type. If no path is provided, a default + * configuration file will be used based on the name of the main + * application component. + * + * @p mode determines whether the user or global settings will be allowed + * to influence the values returned by this object. See KConfig::OpenFlags for + * more details. + * + * @param fileName the configuration file to open. If empty, it will be determined + * automatically (from --config on the command line, otherwise + * from the application name + "rc") + * @param mode how global settings should affect the configuration + * options exposed by this KConfig object + * @param type The standard directory to look for the configuration + * file in (see QStandardPaths) + * + * @sa KConfig + */ + static KSharedConfig::Ptr + openConfig(const QString &fileName = QString(), OpenFlags mode = FullConfig, QStandardPaths::StandardLocation type = QStandardPaths::GenericConfigLocation); + + /** + * Creates a KSharedConfig object to manipulate a configuration file suitable + * for storing state information. Use this for storing information that is + * changing frequently and should not be saved by configuration backup + * utilities. + * + * If an absolute path is specified for @p fileName, that file will be used + * as the store for the configuration settings. If a non-absolute path + * is provided, the file will be looked for in the standard data directory + * (QStandardPaths::AppDataLocation). If no path is provided, a default + * configuration file will be used based on the name of the main + * application component. + * + * @param fileName the configuration file to open. If empty, it will be determined + * automatically from the application name + "staterc" + * + * @since 5.67 + * + * @sa KConfig + */ + static KSharedConfig::Ptr openStateConfig(const QString &fileName = QString()); + + ~KSharedConfig() override; + +private: + Q_DISABLE_COPY(KSharedConfig) + KConfigGroup groupImpl(const QString &groupName) override; + const KConfigGroup groupImpl(const QString &groupName) const override; + + KCONFIGCORE_NO_EXPORT KSharedConfig(const QString &file, OpenFlags mode, QStandardPaths::StandardLocation resourceType); +}; + +typedef KSharedConfig::Ptr KSharedConfigPtr; + +#endif // multiple inclusion guard diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt new file mode 100644 index 0000000..eb50062 --- /dev/null +++ b/src/gui/CMakeLists.txt @@ -0,0 +1,84 @@ +add_library(KF6ConfigGui) +add_library(KF6::ConfigGui ALIAS KF6ConfigGui) + +qt_extract_metatypes(KF6ConfigGui) + +set_target_properties(KF6ConfigGui PROPERTIES + VERSION ${KCONFIG_VERSION} + SOVERSION ${KCONFIG_SOVERSION} + EXPORT_NAME ConfigGui +) + +ecm_create_qm_loader(KF6ConfigGui kconfig6_qt) + +target_sources(KF6ConfigGui PRIVATE + kconfiggui.cpp + kconfiggroupgui.cpp + kconfigloader.cpp + kconfigskeleton.cpp + kstandardshortcut.cpp + kstandardshortcutwatcher.cpp + kwindowconfig.cpp + kwindowstatesaver.cpp + kstandardactions.cpp +) + +ecm_qt_declare_logging_category(KF6ConfigGui + HEADER kconfig_gui_log_settings.h + IDENTIFIER KCONFIG_GUI_LOG + CATEGORY_NAME kf.config.gui + DESCRIPTION "KConfig Gui" + EXPORT KCONFIG +) + +ecm_generate_export_header(KF6ConfigGui + BASE_NAME KConfigGui + GROUP_BASE_NAME KF + VERSION ${KF_VERSION} + USE_VERSION_HEADER + VERSION_BASE_NAME KConfig + DEPRECATED_BASE_VERSION 0 + DEPRECATION_VERSIONS + EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT} +) + +target_include_directories(KF6ConfigGui + INTERFACE "$") + +target_link_libraries(KF6ConfigGui PUBLIC Qt6::Gui KF6::ConfigCore) + +ecm_generate_headers(KConfigGui_HEADERS + HEADER_NAMES + KConfigGui + KConfigLoader + KConfigSkeleton + KStandardShortcut + KStandardShortcutWatcher + KWindowConfig + KWindowStateSaver + KStandardActions + + REQUIRED_HEADERS KConfigGui_HEADERS +) + +if(NOT BUILD_SHARED_LIBS) + target_sources(KF6ConfigGui PUBLIC + $ + $ + ) +endif() + +install(TARGETS KF6ConfigGui EXPORT KF6ConfigTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS}) + +install(FILES + ${CMAKE_CURRENT_BINARY_DIR}/kconfiggui_export.h + kstandardactions_p.h + ${KConfigGui_HEADERS} + kconfigguistaticinitializer.cpp + DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KConfigGui COMPONENT Devel +) + +# make available to ecm_add_qch in parent folder +set(KConfigGui_APIDOX_SRCS ${KConfigGui_HEADERS} PARENT_SCOPE) +set(KConfigGui_APIDOX_INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR} PARENT_SCOPE) + diff --git a/src/gui/kconfiggroupgui.cpp b/src/gui/kconfiggroupgui.cpp new file mode 100644 index 0000000..fbbe888 --- /dev/null +++ b/src/gui/kconfiggroupgui.cpp @@ -0,0 +1,207 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2007 Thiago Macieira + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kconfiggui_export.h" +#include + +#include +#include +#include + +#include + +/** + * Try to read a GUI type from config group @p cg at key @p key. + * @p input is the default value and also indicates the type to be read. + * @p output is to be set with the value that has been read. + * + * @returns true if something was handled (even if output was set to clear or default) + * or false if nothing was handled (e.g., Core type) + */ +static bool readEntryGui(const QByteArray &data, const char *key, const QVariant &input, QVariant &output) +{ + const auto errString = [&]() { + return QStringLiteral("\"%1\" - conversion from \"%3\" to %2 failed") + .arg(QLatin1String(key), QLatin1String(input.typeName()), QLatin1String(data.constData())); + }; + + // set in case of failure + output = input; + + switch (static_cast(input.userType())) { + case QMetaType::QColor: { + if (data.isEmpty() || data == "invalid") { + output = QColor(); // return what was stored + return true; + } else if (data.at(0) == '#') { + QColor col = QColor::fromString(QUtf8StringView(data.constData(), data.length())); + if (!col.isValid()) { + qCritical() << qPrintable(errString()); + } + output = col; + return true; + } else if (!data.contains(',')) { + QColor col = QColor::fromString(QUtf8StringView(data.constData(), data.length())); + if (!col.isValid()) { + qCritical() << qPrintable(errString()); + } + output = col; + return true; + } else { + const QList list = data.split(','); + const int count = list.count(); + + if (count != 3 && count != 4) { + qCritical() // + << qPrintable(errString()) // + << qPrintable(QStringLiteral(" (wrong format: expected '%1' items, read '%2')").arg(QStringLiteral("3' or '4")).arg(count)); + return true; // return default + } + + int temp[4]; + // bounds check components + for (int i = 0; i < count; i++) { + bool ok; + const int j = temp[i] = list.at(i).toInt(&ok); + if (!ok) { // failed to convert to int + qCritical() << qPrintable(errString()) << " (integer conversion failed)"; + return true; // return default + } + if (j < 0 || j > 255) { + static const char *const components[] = {"red", "green", "blue", "alpha"}; + qCritical() << qPrintable(errString()) + << qPrintable(QStringLiteral(" (bounds error: %1 component %2)") + .arg(QLatin1String(components[i]), // + j < 0 ? QStringLiteral("< 0") : QStringLiteral("> 255"))); + return true; // return default + } + } + QColor aColor(temp[0], temp[1], temp[2]); + if (count == 4) { + aColor.setAlpha(temp[3]); + } + + if (aColor.isValid()) { + output = aColor; + } else { + qCritical() << qPrintable(errString()); + } + return true; + } + } + + case QMetaType::QFont: { + QVariant tmp = QString::fromUtf8(data.constData(), data.length()); + if (tmp.canConvert()) { + output = tmp; + } else { + qCritical() << qPrintable(errString()); + } + return true; + } + case QMetaType::QPixmap: + case QMetaType::QImage: + case QMetaType::QBrush: + case QMetaType::QPalette: + case QMetaType::QIcon: + case QMetaType::QRegion: + case QMetaType::QBitmap: + case QMetaType::QCursor: + case QMetaType::QSizePolicy: + case QMetaType::QPen: + // we may want to handle these in the future + + default: + break; + } + + return false; // not handled +} + +/** + * Try to write a GUI type @p prop to config group @p cg at key @p key. + * + * @returns true if something was handled (even if an empty value was written) + * or false if nothing was handled (e.g., Core type) + */ +static bool writeEntryGui(KConfigGroup *cg, const char *key, const QVariant &prop, KConfigGroup::WriteConfigFlags pFlags) +{ + switch (static_cast(prop.userType())) { + case QMetaType::QColor: { + const QColor rColor = prop.value(); + + if (!rColor.isValid()) { + cg->writeEntry(key, "invalid", pFlags); + return true; + } + + QList list; + list.insert(0, rColor.red()); + list.insert(1, rColor.green()); + list.insert(2, rColor.blue()); + if (rColor.alpha() != 255) { + list.insert(3, rColor.alpha()); + } + + cg->writeEntry(key, list, pFlags); + return true; + } + case QMetaType::QFont: { + QFont f = prop.value(); + // If the styleName property is set for a QFont, using setBold(true) would + // lead to Qt using an "emboldended"/synthetic font style instead of using + // the bold style provided by the font itself; the latter looks much better + // than the former. For more details see: + // https://bugreports.qt.io/browse/QTBUG-63792 + // https://bugs.kde.org/show_bug.cgi?id=378523 + /* clang-format off */ + if (f.weight() == QFont::Normal + && (f.styleName() == QLatin1String("Regular") + || f.styleName() == QLatin1String("Normal") + || f.styleName() == QLatin1String("Book") + || f.styleName() == QLatin1String("Roman"))) { /* clang-format on */ + f.setStyleName(QString()); + } + cg->writeEntry(key, f.toString().toUtf8(), pFlags); + return true; + } + case QMetaType::QPixmap: + case QMetaType::QImage: + case QMetaType::QBrush: + case QMetaType::QPalette: + case QMetaType::QIcon: + case QMetaType::QRegion: + case QMetaType::QBitmap: + case QMetaType::QCursor: + case QMetaType::QSizePolicy: + case QMetaType::QPen: + // we may want to handle one of these in the future + break; + + default: + break; + } + + return false; +} + +// Not static, because for static builds we use it in the kconfigguistaticinitializer.cpp file +// Exported as we need this to force linking in consumers that read GUI types from KConfig, but +// which are otherwise not using this library (and thus linking with --as-needed or MSVC would +// break things) +KCONFIGGUI_EXPORT int initKConfigGroupGui() +{ + _kde_internal_KConfigGroupGui.readEntryGui = readEntryGui; + _kde_internal_KConfigGroupGui.writeEntryGui = writeEntryGui; + return 42; // because 42 is nicer than 1 or 0 +} + +#ifdef Q_CONSTRUCTOR_FUNCTION +Q_CONSTRUCTOR_FUNCTION(initKConfigGroupGui) +#else +static int dummyKConfigGroupGui = initKConfigGroupGui(); +#endif diff --git a/src/gui/kconfiggui.cpp b/src/gui/kconfiggui.cpp new file mode 100644 index 0000000..b119bdb --- /dev/null +++ b/src/gui/kconfiggui.cpp @@ -0,0 +1,51 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 1999 Matthias Ettrich + + SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL +*/ + +#include "kconfiggui.h" +#include "kconfig_gui_log_settings.h" + +#include + +#include + +static QString configName(const QString &id, const QString &key) +{ + return QLatin1String("session/%1_%2_%3").arg(QGuiApplication::applicationName(), id, key); +} + +static KConfig *s_sessionConfig = nullptr; + +KConfig *KConfigGui::sessionConfig() +{ +#ifdef QT_NO_SESSIONMANAGER + qCWarning(KCONFIG_GUI_LOG) << "Qt is built without session manager support"; +#else + if (!hasSessionConfig() && qApp->isSessionRestored()) { + // create the default instance specific config object + // from applications' -session command line parameter + s_sessionConfig = new KConfig(configName(qApp->sessionId(), qApp->sessionKey()), KConfig::SimpleConfig); + } +#endif + + return s_sessionConfig; +} + +void KConfigGui::setSessionConfig(const QString &id, const QString &key) +{ + if (hasSessionConfig()) { + delete s_sessionConfig; + s_sessionConfig = nullptr; + } + + // create a new instance specific config object from supplied id & key + s_sessionConfig = new KConfig(configName(id, key), KConfig::SimpleConfig); +} + +bool KConfigGui::hasSessionConfig() +{ + return s_sessionConfig != nullptr; +} diff --git a/src/gui/kconfiggui.h b/src/gui/kconfiggui.h new file mode 100644 index 0000000..3d7be34 --- /dev/null +++ b/src/gui/kconfiggui.h @@ -0,0 +1,55 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 1999 Matthias Ettrich + + SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL +*/ + +#ifndef KCONFIGGUI_H +#define KCONFIGGUI_H + +#include + +#include + +class KConfig; + +/** + * Interface-related functions. + */ +namespace KConfigGui +{ +/** + * Returns the current application session config object. + * + * @note If Qt is built without session manager support, i.e. + * QT_NO_SESSIONMANAGER is defined, this by default will return + * nullptr, unless a custom config has been set via + * @c setSessionConfig. + * + * @return A pointer to the application's instance specific + * KConfig object. + * @see KConfig + */ +KCONFIGGUI_EXPORT KConfig *sessionConfig(); + +/** + * Replaces the current application session config object. + * + * @param id new session id + * @param key new session key + * + * @since 5.11 + */ +KCONFIGGUI_EXPORT void setSessionConfig(const QString &id, const QString &key); + +/** + * Indicates if a session config has been created for that application + * (i.e.\ if sessionConfig() got called at least once) + * + * @return @c true if a sessionConfig object was created, @c false otherwise + */ +KCONFIGGUI_EXPORT bool hasSessionConfig(); +} + +#endif // KCONFIGGUI_H diff --git a/src/gui/kconfigguistaticinitializer.cpp b/src/gui/kconfigguistaticinitializer.cpp new file mode 100644 index 0000000..f15444c --- /dev/null +++ b/src/gui/kconfigguistaticinitializer.cpp @@ -0,0 +1,6 @@ +// SPDX-FileCopyrightText: 2022 Alexander Lohnau +// SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL + +extern int initKConfigGroupGui(); + +static int myInit = initKConfigGroupGui(); diff --git a/src/gui/kconfigloader.cpp b/src/gui/kconfigloader.cpp new file mode 100644 index 0000000..4367855 --- /dev/null +++ b/src/gui/kconfigloader.cpp @@ -0,0 +1,430 @@ +/* + SPDX-FileCopyrightText: 2007 Aaron Seigo + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kconfigloader.h" +#include "kconfigloader_p.h" +#include "kconfigloaderhandler_p.h" + +#include +#include +#include +#include + +#include + +void ConfigLoaderPrivate::parse(KConfigLoader *loader, QIODevice *xml) +{ + clearData(); + loader->clearItems(); + + if (xml) { + ConfigLoaderHandler handler(loader, this); + handler.parse(xml); + } +} + +ConfigLoaderHandler::ConfigLoaderHandler(KConfigLoader *config, ConfigLoaderPrivate *d) + : m_config(config) + , d(d) +{ + resetState(); +} + +bool ConfigLoaderHandler::parse(QIODevice *input) +{ + if (!input->open(QIODevice::ReadOnly)) { + qWarning() << "Impossible to open device"; + return false; + } + QXmlStreamReader reader(input); + + while (!reader.atEnd()) { + reader.readNext(); + if (reader.hasError()) { + return false; + } + + switch (reader.tokenType()) { + case QXmlStreamReader::StartElement: + startElement(reader.name(), reader.attributes()); + break; + case QXmlStreamReader::EndElement: + endElement(reader.name()); + break; + case QXmlStreamReader::Characters: + if (!reader.isWhitespace() && !reader.text().trimmed().isEmpty()) { + m_cdata.append(reader.text()); + } + break; + default: + break; + } + } + + if (!reader.isEndDocument()) { + return false; + } + + return true; +} + +static bool caseInsensitiveCompare(const QStringView a, const QLatin1String b) +{ + return a.compare(b, Qt::CaseInsensitive) == 0; +} + +void ConfigLoaderHandler::startElement(const QStringView localName, const QXmlStreamAttributes &attrs) +{ + // qDebug() << "ConfigLoaderHandler::startElement(" << localName << qName; + if (caseInsensitiveCompare(localName, QLatin1String("group"))) { + QString group; + for (const auto &attr : attrs) { + const auto attrName = attr.name(); + if (caseInsensitiveCompare(attrName, QLatin1String("name"))) { + // qDebug() << "set group to" << attrs.value(i); + group = attr.value().toString(); + } + } + if (group.isEmpty()) { + group = d->baseGroup; + } else { + d->groups.append(group); + if (!d->baseGroup.isEmpty()) { + group = d->baseGroup + QLatin1Char('\x1d') + group; + } + } + + if (m_config) { + m_config->setCurrentGroup(group); + } + } else if (caseInsensitiveCompare(localName, QLatin1String("entry"))) { + for (const auto &attr : attrs) { + const auto attrName = attr.name(); + if (caseInsensitiveCompare(attrName, QLatin1String("name"))) { + m_name = attr.value().trimmed().toString(); + } else if (caseInsensitiveCompare(attrName, QLatin1String("type"))) { + m_type = attr.value().toString().toLower(); + } else if (caseInsensitiveCompare(attrName, QLatin1String("key"))) { + m_key = attr.value().trimmed().toString(); + } + } + } else if (caseInsensitiveCompare(localName, QLatin1String("choice"))) { + m_choice.name.clear(); + m_choice.label.clear(); + m_choice.whatsThis.clear(); + for (const auto &attr : attrs) { + const auto attrName = attr.name(); + if (caseInsensitiveCompare(attrName, QLatin1String("name"))) { + m_choice.name = attr.value().toString(); + } + } + m_inChoice = true; + } +} + +void ConfigLoaderHandler::endElement(const QStringView localName) +{ + // qDebug() << "ConfigLoaderHandler::endElement(" << localName << qName; + if (caseInsensitiveCompare(localName, QLatin1String("entry"))) { + addItem(); + resetState(); + } else if (caseInsensitiveCompare(localName, QLatin1String("label"))) { + if (m_inChoice) { + m_choice.label = std::move(m_cdata).trimmed(); + } else { + m_label = std::move(m_cdata).trimmed(); + } + } else if (caseInsensitiveCompare(localName, QLatin1String("whatsthis"))) { + if (m_inChoice) { + m_choice.whatsThis = std::move(m_cdata).trimmed(); + } else { + m_whatsThis = std::move(m_cdata).trimmed(); + } + } else if (caseInsensitiveCompare(localName, QLatin1String("default"))) { + m_default = std::move(m_cdata).trimmed(); + } else if (caseInsensitiveCompare(localName, QLatin1String("min"))) { + m_min = m_cdata.toInt(&m_haveMin); + } else if (caseInsensitiveCompare(localName, QLatin1String("max"))) { + m_max = m_cdata.toInt(&m_haveMax); + } else if (caseInsensitiveCompare(localName, QLatin1String("choice"))) { + m_enumChoices.append(m_choice); + m_inChoice = false; + } + + m_cdata.clear(); +} + +void ConfigLoaderHandler::addItem() +{ + if (m_name.isEmpty()) { + if (m_key.isEmpty()) { + return; + } + + m_name = m_key; + } + + m_name.remove(QLatin1Char(' ')); + + KConfigSkeletonItem *item = nullptr; + + if (m_type == QLatin1String("bool")) { + const bool defaultValue = caseInsensitiveCompare(m_default, QLatin1String("true")); + item = m_config->addItemBool(m_name, *d->newBool(), defaultValue, m_key); + } else if (m_type == QLatin1String("color")) { + item = m_config->addItemColor(m_name, *d->newColor(), QColor(m_default), m_key); + } else if (m_type == QLatin1String("datetime")) { + item = m_config->addItemDateTime(m_name, *d->newDateTime(), QDateTime::fromString(m_default), m_key); + } else if (m_type == QLatin1String("enum")) { + m_key = (m_key.isEmpty()) ? m_name : m_key; + + bool ok = false; + int defaultValue = m_default.toInt(&ok); + if (!ok) { + for (int i = 0; i < m_enumChoices.size(); i++) { + if (m_default == m_enumChoices[i].name) { + defaultValue = i; + break; + } + } + } + + KConfigSkeleton::ItemEnum *enumItem = new KConfigSkeleton::ItemEnum(m_config->currentGroup(), m_key, *d->newInt(), m_enumChoices, defaultValue); + m_config->addItem(enumItem, m_name); + item = enumItem; + } else if (m_type == QLatin1String("font")) { + item = m_config->addItemFont(m_name, *d->newFont(), QFont(m_default), m_key); + } else if (m_type == QLatin1String("int")) { + KConfigSkeleton::ItemInt *intItem = m_config->addItemInt(m_name, *d->newInt(), m_default.toInt(), m_key); + + if (m_haveMin) { + intItem->setMinValue(m_min); + } + + if (m_haveMax) { + intItem->setMaxValue(m_max); + } + + item = intItem; + } else if (m_type == QLatin1String("password")) { + item = m_config->addItemPassword(m_name, *d->newString(), m_default, m_key); + } else if (m_type == QLatin1String("path")) { + item = m_config->addItemPath(m_name, *d->newString(), m_default, m_key); + } else if (m_type == QLatin1String("string")) { + item = m_config->addItemString(m_name, *d->newString(), m_default, m_key); + } else if (m_type == QLatin1String("stringlist")) { + // FIXME: the split() is naive and will break on lists with ,'s in them + // empty parts are not wanted in this case + item = m_config->addItemStringList(m_name, *d->newStringList(), m_default.split(QLatin1Char(','), Qt::SkipEmptyParts), m_key); + } else if (m_type == QLatin1String("uint")) { + KConfigSkeleton::ItemUInt *uintItem = m_config->addItemUInt(m_name, *d->newUint(), m_default.toUInt(), m_key); + if (m_haveMin) { + uintItem->setMinValue(m_min); + } + if (m_haveMax) { + uintItem->setMaxValue(m_max); + } + item = uintItem; + } else if (m_type == QLatin1String("url")) { + m_key = (m_key.isEmpty()) ? m_name : m_key; + KConfigSkeleton::ItemUrl *urlItem = new KConfigSkeleton::ItemUrl(m_config->currentGroup(), m_key, *d->newUrl(), QUrl::fromUserInput(m_default)); + m_config->addItem(urlItem, m_name); + item = urlItem; + } else if (m_type == QLatin1String("double")) { + KConfigSkeleton::ItemDouble *doubleItem = m_config->addItemDouble(m_name, *d->newDouble(), m_default.toDouble(), m_key); + if (m_haveMin) { + doubleItem->setMinValue(m_min); + } + if (m_haveMax) { + doubleItem->setMaxValue(m_max); + } + item = doubleItem; + } else if (m_type == QLatin1String("intlist")) { + QList defaultList; + const QList tmpList = QStringView(m_default).split(QLatin1Char(','), Qt::SkipEmptyParts); + for (const QStringView tmp : tmpList) { + defaultList.append(tmp.toInt()); + } + item = m_config->addItemIntList(m_name, *d->newIntList(), defaultList, m_key); + } else if (m_type == QLatin1String("longlong")) { + KConfigSkeleton::ItemLongLong *longlongItem = m_config->addItemLongLong(m_name, *d->newLongLong(), m_default.toLongLong(), m_key); + if (m_haveMin) { + longlongItem->setMinValue(m_min); + } + if (m_haveMax) { + longlongItem->setMaxValue(m_max); + } + item = longlongItem; + /* No addItemPathList in KConfigSkeleton ? + } else if (m_type == "PathList") { + //FIXME: the split() is naive and will break on lists with ,'s in them + item = m_config->addItemPathList(m_name, *d->newStringList(), m_default.split(","), m_key); + */ + } else if (m_type == QLatin1String("point")) { + QPoint defaultPoint; + const QList tmpList = QStringView(m_default).split(QLatin1Char(',')); + if (tmpList.size() >= 2) { + defaultPoint.setX(tmpList[0].toInt()); + defaultPoint.setY(tmpList[1].toInt()); + } + item = m_config->addItemPoint(m_name, *d->newPoint(), defaultPoint, m_key); + } else if (m_type == QLatin1String("pointf")) { + QPointF defaultPointF; + const auto tmpList = QStringView(m_default).split(u','); + if (tmpList.size() >= 2) { + defaultPointF.setX(tmpList[0].toDouble()); + defaultPointF.setY(tmpList[1].toDouble()); + } + item = m_config->addItemPointF(m_name, *d->newPointF(), defaultPointF, m_key); + } else if (m_type == QLatin1String("rect")) { + QRect defaultRect; + const QList tmpList = QStringView(m_default).split(QLatin1Char(',')); + if (tmpList.size() >= 4) { + defaultRect.setCoords(tmpList[0].toInt(), tmpList[1].toInt(), tmpList[2].toInt(), tmpList[3].toInt()); + } + item = m_config->addItemRect(m_name, *d->newRect(), defaultRect, m_key); + } else if (m_type == QLatin1String("rectf")) { + QRectF defaultRectF; + const auto tmpList = QStringView(m_default).split(u','); + if (tmpList.size() >= 4) { + defaultRectF.setCoords(tmpList[0].toDouble(), tmpList[1].toDouble(), tmpList[2].toDouble(), tmpList[3].toDouble()); + } + item = m_config->addItemRectF(m_name, *d->newRectF(), defaultRectF, m_key); + } else if (m_type == QLatin1String("size")) { + QSize defaultSize; + const QList tmpList = QStringView(m_default).split(QLatin1Char(',')); + if (tmpList.size() >= 2) { + defaultSize.setWidth(tmpList[0].toInt()); + defaultSize.setHeight(tmpList[1].toInt()); + } + item = m_config->addItemSize(m_name, *d->newSize(), defaultSize, m_key); + } else if (m_type == QLatin1String("sizef")) { + QSizeF defaultSizeF; + const auto tmpList = QStringView(m_default).split(u','); + if (tmpList.size() >= 2) { + defaultSizeF.setWidth(tmpList[0].toDouble()); + defaultSizeF.setHeight(tmpList[1].toDouble()); + } + item = m_config->addItemSizeF(m_name, *d->newSizeF(), defaultSizeF, m_key); + } else if (m_type == QLatin1String("ulonglong")) { + KConfigSkeleton::ItemULongLong *ulonglongItem = m_config->addItemULongLong(m_name, *d->newULongLong(), m_default.toULongLong(), m_key); + if (m_haveMin) { + ulonglongItem->setMinValue(m_min); + } + if (m_haveMax) { + ulonglongItem->setMaxValue(m_max); + } + item = ulonglongItem; + /* No addItemUrlList in KConfigSkeleton ? + } else if (m_type == "urllist") { + //FIXME: the split() is naive and will break on lists with ,'s in them + QStringList tmpList = m_default.split(","); + QList defaultList; + foreach (const QString& tmp, tmpList) { + defaultList.append(QUrl(tmp)); + } + item = m_config->addItemUrlList(m_name, *d->newUrlList(), defaultList, m_key);*/ + } + + if (item) { + item->setLabel(m_label); + item->setWhatsThis(m_whatsThis); + d->keysToNames.insert(item->group() + item->key(), item->name()); + } +} + +void ConfigLoaderHandler::resetState() +{ + m_haveMin = false; + m_min = 0; + m_haveMax = false; + m_max = 0; + m_name.clear(); + m_type.clear(); + m_label.clear(); + m_default.clear(); + m_key.clear(); + m_whatsThis.clear(); + m_enumChoices.clear(); + m_inChoice = false; +} + +KConfigLoader::KConfigLoader(const QString &configFile, QIODevice *xml, QObject *parent) + : KConfigSkeleton(configFile, parent) + , d(new ConfigLoaderPrivate) +{ + d->parse(this, xml); +} + +KConfigLoader::KConfigLoader(KSharedConfigPtr config, QIODevice *xml, QObject *parent) + : KConfigSkeleton(std::move(config), parent) + , d(new ConfigLoaderPrivate) +{ + d->parse(this, xml); +} + +// FIXME: obviously this is broken and should be using the group as the root, +// but KConfigSkeleton does not currently support this. it will eventually though, +// at which point this can be addressed properly +KConfigLoader::KConfigLoader(const KConfigGroup &config, QIODevice *xml, QObject *parent) + : KConfigSkeleton(KSharedConfig::openConfig(config.config()->name(), config.config()->openFlags(), config.config()->locationType()), parent) + , d(new ConfigLoaderPrivate) +{ + KConfigGroup group = config.parent(); + d->baseGroup = config.name(); + while (group.isValid() && group.name() != QLatin1String("")) { + d->baseGroup = group.name() + QLatin1Char('\x1d') + d->baseGroup; + group = group.parent(); + } + d->parse(this, xml); +} + +KConfigLoader::~KConfigLoader() +{ + delete d; +} + +KConfigSkeletonItem *KConfigLoader::findItem(const QString &group, const QString &key) const +{ + return KConfigSkeleton::findItem(d->keysToNames[group + key]); +} + +KConfigSkeletonItem *KConfigLoader::findItemByName(const QString &name) const +{ + return KConfigSkeleton::findItem(name); +} + +QVariant KConfigLoader::property(const QString &name) const +{ + KConfigSkeletonItem *item = KConfigSkeleton::findItem(name); + + if (item) { + return item->property(); + } + + return QVariant(); +} + +bool KConfigLoader::hasGroup(const QString &group) const +{ + return d->groups.contains(group); +} + +QStringList KConfigLoader::groupList() const +{ + return d->groups; +} + +bool KConfigLoader::usrSave() +{ + if (d->saveDefaults) { + const auto listItems = items(); + for (const auto &item : listItems) { + config()->group(item->group()).writeEntry(item->key(), ""); + } + } + return true; +} diff --git a/src/gui/kconfigloader.h b/src/gui/kconfigloader.h new file mode 100644 index 0000000..d2e3a2c --- /dev/null +++ b/src/gui/kconfigloader.h @@ -0,0 +1,165 @@ +/* + SPDX-FileCopyrightText: 2007 Aaron Seigo + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGLOADER_H +#define KCONFIGLOADER_H + +#include + +#include +#include +#include + +#include + +class ConfigLoaderPrivate; + +/** + * @class KConfigLoader kconfigloader.h + * + * @short A KConfigSkeleton that populates itself based on KConfigXT XML + * + * This class allows one to ship an XML file and reconstitute it into a + * KConfigSkeleton object at runtime. Common usage might look like this: + * + * \code + * QFile file(xmlFilePath); + * KConfigLoader appletConfig(configFilePath, &file); + * \endcode + * + * Alternatively, any QIODevice may be used in place of QFile in the + * example above. + * + * KConfigLoader is useful if it is not possible to use compiled code + * and by that the kconfig compiler cannot be used. Common examples are + * scripted plugins which want to provide a configuration interface. + * With the help of KConfigLoader a dynamically loaded ui file can be + * populated with the stored values and also stored back to the config + * file. + * + * An example for populating a QDialog with a dynamically populated UI + * with the help of a KConfigDialogManager: + * \code + * QDialog *dialog = new QDialog(); + * QFile xmlFile("path/to/kconfigxt.xml"); + * KConfigGroup cg = KSharedConfig::openConfig()->group(QString()); + * KConfigLoader *configLoader = new KConfigLoader(cg, &xmlFile, this); + * + * // load the ui file + * QUiLoader *loader = new QUiLoader(this); + * QFile uiFile("path/to/userinterface.ui"); + * uiFile.open(QFile::ReadOnly); + * QWidget *customConfigForm = loader->load(&uiFile, dialog); + * uiFile.close(); + * + * KConfigDialogManager *manager = new KConfigDialogManager(customConfigForm, configLoader); + * if (dialog->exec() == QDialog::Accepted) { + * manager->updateSettings(); + * } + * \endcode + * + * Currently the following data types are supported: + * + * @li bools + * @li colors + * @li datetimes + * @li enumerations + * @li fonts + * @li ints + * @li passwords + * @li paths + * @li strings + * @li stringlists + * @li uints + * @li urls + * @li doubles + * @li int lists + * @li longlongs + * @li path lists + * @li points + * @li pointfs + * @li rects + * @li rectfs + * @li sizes + * @li sizefs + * @li ulonglongs + * @li url lists + **/ +class KCONFIGGUI_EXPORT KConfigLoader : public KConfigSkeleton +{ +public: + /** + * Creates a KConfigSkeleton populated using the definition found in + * the XML data passed in. + * + * @param configFile path to the configuration file to use + * @param xml the xml data; must be valid KConfigXT data + * @param parent optional QObject parent + **/ + KConfigLoader(const QString &configFile, QIODevice *xml, QObject *parent = nullptr); + + /** + * Creates a KConfigSkeleton populated using the definition found in + * the XML data passed in. + * + * @param config the configuration object to use + * @param xml the xml data; must be valid KConfigXT data + * @param parent optional QObject parent + **/ + KConfigLoader(KSharedConfigPtr config, QIODevice *xml, QObject *parent = nullptr); + + /** + * Creates a KConfigSkeleton populated using the definition found in + * the XML data passed in. + * + * @param config the group to use as the root for configuration items + * @param xml the xml data; must be valid KConfigXT data + * @param parent optional QObject parent + **/ + KConfigLoader(const KConfigGroup &config, QIODevice *xml, QObject *parent = nullptr); + + ~KConfigLoader() override; + + /** + * Finds the item for the given group and key. + * + * @param group the group in the config file to look in + * @param key the configuration key to find + * @return the associated KConfigSkeletonItem, or @c nullptr if none + */ + KConfigSkeletonItem *findItem(const QString &group, const QString &key) const; + + /** + * Finds an item by its name + */ + KConfigSkeletonItem *findItemByName(const QString &name) const; + + /** + * Returns the property (variantized value) of the named item + */ + QVariant property(const QString &name) const; + + /** + * Check to see if a group exists + * + * @param group the name of the group to check for + * @return true if the group exists, or false if it does not + */ + bool hasGroup(const QString &group) const; + + /** + * @return the list of groups defined by the XML + */ + QStringList groupList() const; + +protected: + bool usrSave() override; + +private: + ConfigLoaderPrivate *const d; +}; + +#endif // multiple inclusion guard diff --git a/src/gui/kconfigloader_p.h b/src/gui/kconfigloader_p.h new file mode 100644 index 0000000..55021ff --- /dev/null +++ b/src/gui/kconfigloader_p.h @@ -0,0 +1,235 @@ +/* + SPDX-FileCopyrightText: 2007-2008 Aaron Seigo + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGLOADER_P_H +#define KCONFIGLOADER_P_H + +#include + +class ConfigLoaderPrivate +{ +public: + ConfigLoaderPrivate() + : saveDefaults(false) + { + } + + ~ConfigLoaderPrivate() + { + clearData(); + } + + void clearData() + { + qDeleteAll(bools); + qDeleteAll(strings); + qDeleteAll(stringlists); + qDeleteAll(colors); + qDeleteAll(fonts); + qDeleteAll(ints); + qDeleteAll(uints); + qDeleteAll(urls); + qDeleteAll(dateTimes); + qDeleteAll(doubles); + qDeleteAll(intlists); + qDeleteAll(longlongs); + qDeleteAll(points); + qDeleteAll(pointfs); + qDeleteAll(rects); + qDeleteAll(rectfs); + qDeleteAll(sizes); + qDeleteAll(sizefs); + qDeleteAll(ulonglongs); + qDeleteAll(urllists); + } + + bool *newBool() + { + bool *v = new bool; + bools.append(v); + return v; + } + + QString *newString() + { + QString *v = new QString; + strings.append(v); + return v; + } + + QStringList *newStringList() + { + QStringList *v = new QStringList; + stringlists.append(v); + return v; + } + + QColor *newColor() + { + QColor *v = new QColor; + colors.append(v); + return v; + } + + QFont *newFont() + { + QFont *v = new QFont; + fonts.append(v); + return v; + } + + qint32 *newInt() + { + qint32 *v = new qint32; + ints.append(v); + return v; + } + + quint32 *newUint() + { + quint32 *v = new quint32; + uints.append(v); + return v; + } + + QUrl *newUrl() + { + QUrl *v = new QUrl; + urls.append(v); + return v; + } + + QDateTime *newDateTime() + { + QDateTime *v = new QDateTime; + dateTimes.append(v); + return v; + } + + double *newDouble() + { + double *v = new double; + doubles.append(v); + return v; + } + + QList *newIntList() + { + QList *v = new QList; + intlists.append(v); + return v; + } + + qint64 *newLongLong() + { + qint64 *v = new qint64; + longlongs.append(v); + return v; + } + + QPoint *newPoint() + { + QPoint *v = new QPoint; + points.append(v); + return v; + } + + QPointF *newPointF() + { + QPointF *v = new QPointF; + pointfs.append(v); + return v; + } + + QRect *newRect() + { + QRect *v = new QRect; + rects.append(v); + return v; + } + + QRectF *newRectF() + { + QRectF *v = new QRectF; + rectfs.append(v); + return v; + } + + QSize *newSize() + { + QSize *v = new QSize; + sizes.append(v); + return v; + } + + QSizeF *newSizeF() + { + QSizeF *v = new QSizeF; + sizefs.append(v); + return v; + } + + quint64 *newULongLong() + { + quint64 *v = new quint64; + ulonglongs.append(v); + return v; + } + + QList *newUrlList() + { + QList *v = new QList(); + urllists.append(v); + return v; + } + + void parse(KConfigLoader *loader, QIODevice *xml); + + /** + * Whether or not to write out default values. + * + * @param writeDefaults true if defaults should be written out + */ + void setWriteDefaults(bool writeDefaults) + { + saveDefaults = writeDefaults; + } + + /** + * @return true if default values will also be written out + */ + bool writeDefaults() const + { + return saveDefaults; + } + + QList bools; + QList strings; + QList stringlists; + QList colors; + QList fonts; + QList ints; + QList uints; + QList urls; + QList dateTimes; + QList doubles; + QList *> intlists; + QList longlongs; + QList points; + QList pointfs; + QList rects; + QList rectfs; + QList sizes; + QList sizefs; + QList ulonglongs; + QList *> urllists; + QString baseGroup; + QStringList groups; + QHash keysToNames; + bool saveDefaults; +}; + +#endif diff --git a/src/gui/kconfigloaderhandler_p.h b/src/gui/kconfigloaderhandler_p.h new file mode 100644 index 0000000..297e546 --- /dev/null +++ b/src/gui/kconfigloaderhandler_p.h @@ -0,0 +1,45 @@ +/* + SPDX-FileCopyrightText: 2007-2008 Aaron Seigo + SPDX-FileCopyrightText: 2013 Marco Martin + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGLOADERHANDLER_P_H +#define KCONFIGLOADERHANDLER_P_H + +#include + +class ConfigLoaderHandler +{ +public: + ConfigLoaderHandler(KConfigLoader *config, ConfigLoaderPrivate *d); + + bool parse(QIODevice *input); + + void startElement(const QStringView localName, const QXmlStreamAttributes &attrs); + void endElement(const QStringView localName); + +private: + void addItem(); + void resetState(); + + KConfigLoader *m_config; + ConfigLoaderPrivate *d; + int m_min; + int m_max; + QString m_name; + QString m_key; + QString m_type; + QString m_label; + QString m_default; + QString m_cdata; + QString m_whatsThis; + KConfigSkeleton::ItemEnum::Choice m_choice; + QList m_enumChoices; + bool m_haveMin; + bool m_haveMax; + bool m_inChoice; +}; + +#endif diff --git a/src/gui/kconfigskeleton.cpp b/src/gui/kconfigskeleton.cpp new file mode 100644 index 0000000..b258214 --- /dev/null +++ b/src/gui/kconfigskeleton.cpp @@ -0,0 +1,99 @@ +/* + This file is part of KOrganizer. + SPDX-FileCopyrightText: 2000, 2001 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kconfigskeleton.h" + +#include + +KConfigSkeleton::KConfigSkeleton(const QString &configname, QObject *parent) + : KCoreConfigSkeleton(configname, parent) +{ +} + +KConfigSkeleton::KConfigSkeleton(KSharedConfig::Ptr pConfig, QObject *parent) + : KCoreConfigSkeleton(std::move(pConfig), parent) +{ +} + +KConfigSkeleton::ItemColor::ItemColor(const QString &_group, const QString &_key, QColor &reference, const QColor &defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) +{ +} + +void KConfigSkeleton::ItemColor::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + + mReference = cg.readEntry(mKey, mDefault); + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KConfigSkeleton::ItemColor::setProperty(const QVariant &p) +{ + mReference = qvariant_cast(p); +} + +bool KConfigSkeleton::ItemColor::isEqual(const QVariant &v) const +{ + return mReference == qvariant_cast(v); +} + +QVariant KConfigSkeleton::ItemColor::property() const +{ + return QVariant(mReference); +} + +KConfigSkeleton::ItemFont::ItemFont(const QString &_group, const QString &_key, QFont &reference, const QFont &defaultValue) + : KConfigSkeletonGenericItem(_group, _key, reference, defaultValue) +{ +} + +void KConfigSkeleton::ItemFont::readConfig(KConfig *config) +{ + KConfigGroup cg = configGroup(config); + + mReference = cg.readEntry(mKey, mDefault); + mLoadedValue = mReference; + + readImmutability(cg); +} + +void KConfigSkeleton::ItemFont::setProperty(const QVariant &p) +{ + mReference = qvariant_cast(p); +} + +bool KConfigSkeleton::ItemFont::isEqual(const QVariant &v) const +{ + return mReference == qvariant_cast(v); +} + +QVariant KConfigSkeleton::ItemFont::property() const +{ + return QVariant(mReference); +} + +KConfigSkeleton::ItemColor *KConfigSkeleton::addItemColor(const QString &name, QColor &reference, const QColor &defaultValue, const QString &key) +{ + KConfigSkeleton::ItemColor *item; + item = new KConfigSkeleton::ItemColor(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +KConfigSkeleton::ItemFont *KConfigSkeleton::addItemFont(const QString &name, QFont &reference, const QFont &defaultValue, const QString &key) +{ + KConfigSkeleton::ItemFont *item; + item = new KConfigSkeleton::ItemFont(d->mCurrentGroup, key.isNull() ? name : key, reference, defaultValue); + addItem(item, name); + return item; +} + +#include "moc_kconfigskeleton.cpp" diff --git a/src/gui/kconfigskeleton.h b/src/gui/kconfigskeleton.h new file mode 100644 index 0000000..fbf59bf --- /dev/null +++ b/src/gui/kconfigskeleton.h @@ -0,0 +1,118 @@ +/* + This file is part of KDE. + SPDX-FileCopyrightText: 2001, 2002, 2003 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGSKELETON_H +#define KCONFIGSKELETON_H + +#include + +#include + +#include +#include + +/** + * @class KConfigSkeleton kconfigskeleton.h + * + * @short Class for handling preferences settings for an application. + * @author Cornelius Schumacher + * + * This class extends KCoreConfigSkeleton by support for GUI types. + */ +class KCONFIGGUI_EXPORT KConfigSkeleton : public KCoreConfigSkeleton +{ + Q_OBJECT +public: + /** + * Class for handling a color preferences item. + */ + class KCONFIGGUI_EXPORT ItemColor : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemColor(const QString &_group, const QString &_key, QColor &reference, const QColor &defaultValue = QColor(128, 128, 128)); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + }; + + /** + * Class for handling a font preferences item. + */ + class KCONFIGGUI_EXPORT ItemFont : public KConfigSkeletonGenericItem + { + public: + /** @copydoc KConfigSkeletonGenericItem::KConfigSkeletonGenericItem */ + ItemFont(const QString &_group, const QString &_key, QFont &reference, const QFont &defaultValue = QFont()); + + /** @copydoc KConfigSkeletonItem::readConfig(KConfig*) */ + void readConfig(KConfig *config) override; + + /** @copydoc KConfigSkeletonItem::setProperty(const QVariant&) */ + void setProperty(const QVariant &p) override; + + /** @copydoc KConfigSkeletonItem::isEqual(const QVariant &) */ + bool isEqual(const QVariant &p) const override; + + /** @copydoc KConfigSkeletonItem::property() */ + QVariant property() const override; + }; + +public: + /** + * Constructor. + * + * @param configname name of config file. If no name is given, the default + * config file as returned by KSharedConfig::openConfig() is used. + */ + explicit KConfigSkeleton(const QString &configname = QString(), QObject *parent = nullptr); + + /** + * Constructor. + * + * @param config configuration object to use. + */ + explicit KConfigSkeleton(KSharedConfig::Ptr config, QObject *parent = nullptr); + + /** + * Register an item of type QColor. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by read() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemColor *addItemColor(const QString &name, QColor &reference, const QColor &defaultValue = QColor(128, 128, 128), const QString &key = QString()); + + /** + * Register an item of type QFont. + * + * @param name Name used to identify this setting. Names must be unique. + * @param reference Pointer to the variable, which is set by read() + * calls and read by save() calls. + * @param defaultValue Default value, which is used when the config file + * does not yet contain the key of this item. + * @param key Key used in config file. If @p key is a null string, @p name is used as key. + * @return The created item + */ + ItemFont *addItemFont(const QString &name, QFont &reference, const QFont &defaultValue = QFont(), const QString &key = QString()); +}; + +#endif diff --git a/src/gui/kstandardactions.cpp b/src/gui/kstandardactions.cpp new file mode 100644 index 0000000..402c6da --- /dev/null +++ b/src/gui/kstandardactions.cpp @@ -0,0 +1,175 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 1999, 2000 Kurt Granroth + + SPDX-License-Identifier: LGPL-2.0-only +*/ + +#include "kstandardactions.h" +#include "kstandardactions_p.h" +#include "moc_kstandardactions_p.cpp" + +#include +#include + +namespace KStandardActions +{ + +QList actionIds() +{ + QList result; + + for (uint i = 0; g_rgActionInfo[i].id != ActionNone; i++) { + result.append(g_rgActionInfo[i].id); + } + + return result; +} + +KStandardShortcut::StandardShortcut shortcutForActionId(StandardAction id) +{ + const KStandardActionsInfo *pInfo = infoPtr(id); + return (pInfo) ? pInfo->idAccel : KStandardShortcut::AccelNone; +} + +QAction *_kgui_createInternal(StandardAction id, QObject *parent) +{ + QAction *pAction = new QAction(parent); + const KStandardActionsInfo *pInfo = infoPtr(id); + + // qCDebug(KCONFIG_WIDGETS_LOG) << "KStandardActions::create( " << id << "=" << (pInfo ? pInfo->psName : (const char*)0) << ", " << parent << " )"; // + // ellis + + if (pInfo) { + QString sLabel; + QString iconName = pInfo->psIconName.toString(); + + switch (id) { + case Back: + sLabel = QCoreApplication::translate("go back", "&Back"); + if (QGuiApplication::isRightToLeft()) { + iconName = QStringLiteral("go-next"); + } + break; + + case Forward: + sLabel = QCoreApplication::translate("go forward", "&Forward"); + if (QGuiApplication::isRightToLeft()) { + iconName = QStringLiteral("go-previous"); + } + break; + + case Home: + sLabel = QCoreApplication::translate("home page", "&Home"); + break; + case Preferences: + case AboutApp: + case HelpContents: { + QString appDisplayName = QGuiApplication::applicationDisplayName(); + if (appDisplayName.isEmpty()) { + appDisplayName = QCoreApplication::applicationName(); + } + sLabel = QCoreApplication::translate("KStandardActions", pInfo->psLabel).arg(appDisplayName); + } break; + default: + sLabel = QCoreApplication::translate("KStandardActions", pInfo->psLabel); + } + + if (QGuiApplication::isRightToLeft()) { + switch (id) { + case Prior: + iconName = QStringLiteral("go-next-view-page"); + break; + case Next: + iconName = QStringLiteral("go-previous-view-page"); + break; + case FirstPage: + iconName = QStringLiteral("go-last-view-page"); + break; + case LastPage: + iconName = QStringLiteral("go-first-view-page"); + break; + case DocumentBack: + iconName = QStringLiteral("go-next"); + break; + case DocumentForward: + iconName = QStringLiteral("go-previous"); + break; + default: + break; + } + } + + if (id == Donate) { + const QString currencyCode = QLocale().currencySymbol(QLocale::CurrencyIsoCode).toLower(); + if (!currencyCode.isEmpty()) { + iconName = QStringLiteral("help-donate-%1").arg(currencyCode); + } + } + + QIcon icon = iconName.isEmpty() ? QIcon() : QIcon::fromTheme(iconName); + + if (id == AboutApp) { + icon = qGuiApp->windowIcon(); + } + + // Set the text before setting the MenuRole, as on OS X setText will do some heuristic role guessing. + // This ensures user menu items get the intended role out of the list below. + pAction->setText(sLabel); + + switch (id) { + case Quit: + pAction->setMenuRole(QAction::QuitRole); + break; + + case Preferences: + pAction->setMenuRole(QAction::PreferencesRole); + break; + + case AboutApp: + pAction->setMenuRole(QAction::AboutRole); + break; + + default: + pAction->setMenuRole(QAction::NoRole); + break; + } + + if (!QCoreApplication::translate("KStandardActions", pInfo->psToolTip).isEmpty()) { + pAction->setToolTip(QCoreApplication::translate("KStandardActions", pInfo->psToolTip)); + } + pAction->setIcon(icon); + + QList cut = KStandardShortcut::shortcut(pInfo->idAccel); + if (!cut.isEmpty()) { + // emulate KActionCollection::setDefaultShortcuts to allow the use of "configure shortcuts" + pAction->setShortcuts(cut); + pAction->setProperty("defaultShortcuts", QVariant::fromValue(cut)); + } + pAction->connect(KStandardShortcut::shortcutWatcher(), + &KStandardShortcut::StandardShortcutWatcher::shortcutChanged, + pAction, + [pAction, shortcut = pInfo->idAccel](KStandardShortcut::StandardShortcut id, const QList &newShortcut) { + if (id != shortcut) { + return; + } + pAction->setShortcuts(newShortcut); + pAction->setProperty("defaultShortcuts", QVariant::fromValue(newShortcut)); + }); + + pAction->setObjectName(pInfo->psName.toString()); + } + + if (pAction && parent && parent->inherits("KActionCollection")) { + QMetaObject::invokeMethod(parent, "addAction", Q_ARG(QString, pAction->objectName()), Q_ARG(QAction *, pAction)); + } + + return pAction; +} + +QString name(StandardAction id) +{ + const KStandardActionsInfo *pInfo = infoPtr(id); + return (pInfo) ? pInfo->psName.toString() : QString(); +} +} diff --git a/src/gui/kstandardactions.h b/src/gui/kstandardactions.h new file mode 100644 index 0000000..12fbc39 --- /dev/null +++ b/src/gui/kstandardactions.h @@ -0,0 +1,535 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 1999, 2000 Kurt Granroth + SPDX-FileCopyrightText: 2001, 2002 Ellis Whitehead + + SPDX-License-Identifier: LGPL-2.0-only +*/ +#ifndef KGUISTANDARDACTION_H +#define KGUISTANDARDACTION_H + +#include +#include +#include + +#include +#include + +#include +#include + +class QObject; +class QAction; + +/** + * Convenience methods to access all standard KDE actions. + * + * These actions should be used instead of hardcoding menubar and + * toolbar items. Using these actions helps your application easily + * conform to the KDE Human Interface Guidelines. + * + * All of the documentation for QAction holds for KStandardActions + * also. When in doubt on how things work, check the QAction + * documentation first. + * Please note that calling any of these methods automatically adds the action + * to the actionCollection() of the QObject given by the 'parent' parameter. + * + * Simple Example:\n + * + * In general, using standard actions should be a drop in replacement + * for regular actions. For example, if you previously had: + * @code + * QAction *newAct = new QAction(QIcon::fromTheme("document-new"), + * i18n("&New"), + * this); + * newAct->setShortcut(KStandardShortcut::shortcut(KStandardShortcut::New).constFirst()); + * connect(newAct, &QAction::triggered, this, &ClassFoo::fileNew); + * @endcode + * + * You can replace it with: + * @code + * QAction *newAct = KStandardActions::openNew(this, &ClassFoo::fileNew, this); + * @endcode + * + * Alternatively you can instantiate the action using the StandardAction enums + * provided. This author can't think of a reason why you would want to, but, hey, + * if you do, here's how: + * + * \code + * QAction *newAct = KStandardActions::create(KStandardActions::New, this, &ClassFoo::fileNew, this); + * \endcode + * + * Relationship with KActionCollection from KXMLGui\n + * + * If a KActionCollection is passed as the parent then the action will be + * automatically added to that collection: + * \code + * QAction *cut = KStandardActions::cut(this, &ClassFoo::editCut, actionCollection()); + * \endcode + * + * Each action has a unique internal name which can be queried using the + * name method. For example KStandardActions::name(KStandardActions::Cut) + * would return 'edit_cut'. This name can be used as a unique identifier + * for the actions. So if you wanted to add an existing standard action + * to an action collection you can do so like this: + * \code + * QAction *cut = KStandardActions::cut(this, &ClassFoo::editCut, this); + * actionCollection()->addAction(KStandardActions::name(KStandardActions::Cut), cut); + * \endcode + * + * You can then get a pointer to the action using + * \code + * QAction *cutPtr = actionCollection()->action(KStandardActions::name(KStandardActions::Cut)); + * \endcode + * + * @author Kurt Granroth + * @since 6.3 + */ +namespace KStandardActions +{ +/** + * The standard menubar and toolbar actions. + */ +enum StandardAction { + ActionNone, + // File Menu + New, ///< Create a new document or window. + Open, ///< Open an existing file. + OpenRecent, ///< Open a recently used document. + Save, ///< Save the current document. + SaveAs, ///< Save the current document under a different name. + Revert, ///< Revert the current document to the last saved version. + Close, ///< Close the current document. + Print, ///< Print the current document. + PrintPreview, ///< Show a print preview of the current document. + Mail, ///< Send the current document by mail. + Quit, ///< Quit the program. + // Edit Menu + Undo, ///< Undo the last operation. + Redo, ///< Redo the last operation. + Cut, ///< Cut selected area and store it in the clipboard. + Copy, ///< Copy selected area and store it in the clipboard. + Paste, ///< Paste the contents of clipboard at the current mouse or cursor. + SelectAll, ///< Select all elements in the current document. + Deselect, ///< Deselect any selected elements in the current document. + Find, ///< Initiate a 'find' request in the current document. + FindNext, ///< Find the next instance of a stored 'find' + FindPrev, ///< Find a previous instance of a stored 'find'. + Replace, ///< Find and replace matches. + // View Menu + ActualSize, ///< View the document at its actual size. + FitToPage, ///< Fit the document view to the size of the current window. + FitToWidth, ///< Fit the document view to the width of the current window. + FitToHeight, ///< Fit the document view to the height of the current window. + ZoomIn, ///< Zoom in the current document. + ZoomOut, ///< Zoom out the current document. + Zoom, ///< Select the current zoom level. + Redisplay, ///< Redisplay or redraw the document. + // Go Menu + Up, ///< Move up (web style menu). + Back, ///< Move back (web style menu). + Forward, ///< Move forward (web style menu). + Home, ///< Go to the "Home" position or document. + Prior, ///< Scroll up one page. + Next, ///< Scroll down one page. + Goto, ///< Jump to some specific location in the document. + GotoPage, ///< Go to a specific page. + GotoLine, ///< Go to a specific line. + FirstPage, ///< Jump to the first page. + LastPage, ///< Jump to the last page. + DocumentBack, ///< Move back (document style menu). + DocumentForward, ///< Move forward (document style menu). + // Bookmarks Menu + AddBookmark, ///< Add the current page to the bookmarks tree. + EditBookmarks, ///< Edit the application bookmarks. + // Tools Menu + Spelling, ///< Pop up the spell checker. + // Settings Menu + ShowMenubar, ///< Show/Hide the menubar. + ShowToolbar, ///< Show/Hide the toolbar. + ShowStatusbar, ///< Show/Hide the statusbar. + KeyBindings, ///< Display the configure key bindings dialog. + Preferences, ///< Display the preferences/options dialog. + ConfigureToolbars, ///< Display the toolbar configuration dialog. + // Help Menu + HelpContents, ///< Display the handbook of the application. + WhatsThis, ///< Trigger the What's This cursor. + ReportBug, ///< Open up the Report Bug dialog. + AboutApp, ///< Display the application's About box. + AboutKDE, ///< Display the About KDE dialog. + // Other standard actions + ConfigureNotifications, ///< Display the notifications configuration dialog. + FullScreen, ///< Switch to/from full screen mode. + Clear, ///< Clear the content of the focus widget. + SwitchApplicationLanguage, ///< Display the Switch Application Language dialog. + DeleteFile, ///< Permanently deletes files or folders. + RenameFile, ///< Renames files or folders. + MoveToTrash, ///< Moves files or folders to the trash. + Donate, ///< Open donation page on kde.org. + HamburgerMenu ///< Opens a menu that substitutes the menubar. + // To keep in sync with KConfigWidgets::KStandardAction +}; + +/** + * @internal + */ +KCONFIGGUI_EXPORT QAction *_kgui_createInternal(StandardAction id, QObject *parent); + +/** + * Creates an action corresponding to one of the + * KStandardActions::StandardAction actions, which is connected to the given + * object and @p slot, and is owned by @p parent. + * + * If not explicitly specified, @p connectionType will be AutoConnection for all actions + * except for ConfigureToolbars it will be QueuedConnection. + * + * @see create(StandardAction, const QObject *, const char *, QObject *) + */ +template +inline QAction *create(StandardAction id, const Receiver *recvr, Func slot, QObject *parent, std::optional connectionType = std::nullopt) +{ + QAction *action = _kgui_createInternal(id, parent); + // ConfigureToolbars is special because of bug #200815 + const Qt::ConnectionType defaultConnectionType = (id == ConfigureToolbars) ? Qt::QueuedConnection : Qt::AutoConnection; + QObject::connect(action, &QAction::triggered, recvr, slot, connectionType.value_or(defaultConnectionType)); + return action; +} + +/** + * This will return the internal name of a given standard action. + */ +KCONFIGGUI_EXPORT QString name(StandardAction id); + +/** + * Returns a list of all actionIds. + */ +KCONFIGGUI_EXPORT QList actionIds(); + +/** + * Returns the standardshortcut associated with @a actionId. + * + * @param id The identifier whose associated shortcut is wanted. + */ +KCONFIGGUI_EXPORT KStandardShortcut::StandardShortcut shortcutForActionId(StandardAction id); + +// clang-format off +#define KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(name, enumValue) \ + template \ + inline QAction *name(const Receiver *recvr, Func slot, QObject *parent) \ + { return create(enumValue, recvr, slot, parent); } +// clang-format on + +/** + * Create a new document or window. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(openNew, New) + +/** + * Open an existing file. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(open, Open) + +/** + * Save the current document. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(save, Save) + +/** + * Save the current document under a different name. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(saveAs, SaveAs) + +/** + * Revert the current document to the last saved version + * (essentially will undo all changes). + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(revert, Revert) + +/** + * Close the current document. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(close, Close) + +/** + * Print the current document. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(print, Print) + +/** + * Show a print preview of the current document. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(printPreview, PrintPreview) + +/** + * Mail this document. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(mail, Mail) + +/** + * Quit the program. + * + * Note that you probably want to connect this action to either QWidget::close() + * or QApplication::closeAllWindows(), but not QApplication::quit(), so that + * KMainWindow::queryClose() is called on any open window (to warn the user + * about unsaved changes for example). + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(quit, Quit) + +/** + * Undo the last operation. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(undo, Undo) + +/** + * Redo the last operation. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(redo, Redo) + +/** + * Cut selected area and store it in the clipboard. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(cut, Cut) + +/** + * Copy the selected area into the clipboard. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(copy, Copy) + +/** + * Paste the contents of clipboard at the current mouse or cursor + * position. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(paste, Paste) + +/** + * Clear the content of the focus widget + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(clear, Clear) + +/** + * Select all elements in the current document. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(selectAll, SelectAll) + +/** + * Deselect any selected elements in the current document. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(deselect, Deselect) + +/** + * Initiate a 'find' request in the current document. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(find, Find) + +/** + * Find the next instance of a stored 'find'. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(findNext, FindNext) + +/** + * Find a previous instance of a stored 'find'. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(findPrev, FindPrev) + +/** + * Find and replace matches. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(replace, Replace) + +/** + * View the document at its actual size. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(actualSize, ActualSize) + +/** + * Fit the document view to the size of the current window. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(fitToPage, FitToPage) + +/** + * Fit the document view to the width of the current window. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(fitToWidth, FitToWidth) + +/** + * Fit the document view to the height of the current window. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(fitToHeight, FitToHeight) + +/** + * Zoom in the current document view. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(zoomIn, ZoomIn) + +/** + * Zoom out the current document view. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(zoomOut, ZoomOut) + +/** + * Select the current zoom level. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(zoom, Zoom) + +/** + * Redisplay or redraw the document. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(redisplay, Redisplay) + +/** + * Move up (web style menu). + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(up, Up) + +/** + * Move back (web style menu). + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(back, Back) + +/** + * Move forward (web style menu). + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(forward, Forward) + +/** + * Go to the "Home" position or document. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(home, Home) + +/** + * Scroll up one page. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(prior, Prior) + +/** + * Scroll down one page. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(next, Next) + +/** + * Jump to some specific location in the document. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(goTo, Goto) + +/** + * Go to a specific page. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(gotoPage, GotoPage) + +/** + * Go to a specific line. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(gotoLine, GotoLine) + +/** + * Jump to the first page. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(firstPage, FirstPage) + +/** + * Jump to the last page. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(lastPage, LastPage) + +/** + * Move back (document style menu). + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(documentBack, DocumentBack) + +/** + * Move forward (document style menu). + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(documentForward, DocumentForward) + +/** + * Add the current page to the bookmarks tree. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(addBookmark, AddBookmark) + +/** + * Edit the application bookmarks. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(editBookmarks, EditBookmarks) + +/** + * Pop up the spell checker. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(spelling, Spelling) + +/** + * Display the configure key bindings dialog. + * + * Note that you might be able to use the pre-built KXMLGUIFactory's function: + * @code + * KStandardActions::keyBindings(guiFactory(), &KXMLGUIFactory::showConfigureShortcutsDialog, actionCollection()); + * @endcode + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(keyBindings, KeyBindings) + +/** + * Display the preferences/options dialog. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(preferences, Preferences) + +/** + * Display the toolbar configuration dialog. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(configureToolbars, ConfigureToolbars) + +/** + * Display the notifications configuration dialog. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(configureNotifications, ConfigureNotifications) + +/** + * Display the Switch Application Language dialog. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(switchApplicationLanguage, SwitchApplicationLanguage) + +/** + * Display the handbook of the application. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(helpContents, HelpContents) + +/** + * Trigger the What's This cursor. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(whatsThis, WhatsThis) + +/** + * Open up the Report Bug dialog. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(reportBug, ReportBug) + +/** + * Display the application's About box. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(aboutApp, AboutApp) + +/** + * Display the About KDE dialog. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(aboutKDE, AboutKDE) + +/** + * Permanently deletes files or folders. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(deleteFile, DeleteFile) + +/** + * Renames files or folders. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(renameFile, RenameFile) + +/** + * Moves files or folders to the trash. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(moveToTrash, MoveToTrash) + +/** + * Open donation page on kde.org. + */ +KGUISTANDARDACTION_WITH_NEW_STYLE_CONNECT(donate, Donate) +} + +#endif // KSTDACTION_H diff --git a/src/gui/kstandardactions_p.h b/src/gui/kstandardactions_p.h new file mode 100644 index 0000000..7f687d4 --- /dev/null +++ b/src/gui/kstandardactions_p.h @@ -0,0 +1,181 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 1999, 2000 Kurt Granroth + + SPDX-License-Identifier: LGPL-2.0-only +*/ + +#pragma once + +#include +#include + +#include +#include + +#include + +namespace KStandardActions +{ + +/** + * Helper class for storing raw data in static tables which can be used for QString instance + * creation at runtime without copying/converting to new memalloc'ed memory, as well as avoiding + * that way storing the strings directly as QStrings resulting in non-constexpr init code on + * library loading + * @internal + */ +struct RawStringData { + template + constexpr inline RawStringData(const char16_t (&_data)[StringSize]) + : data(_data) + , size(std::char_traits::length(_data)) + { + } + constexpr inline RawStringData(std::nullptr_t) + { + } + constexpr inline RawStringData() = default; + + inline QString toString() const + { + if (!data) { + return QString(); + } + + return Qt::Literals::StringLiterals::operator""_s(data, size); + } + +private: + const char16_t *const data = nullptr; + const std::size_t size = 0; +}; + +/** + * @internal + */ +struct KStandardActionsInfo { + KStandardActions::StandardAction id; + KStandardShortcut::StandardShortcut idAccel; + const RawStringData psName; + const char *psLabel; + const char *psToolTip; + const RawStringData psIconName; +}; +// clang-format off +static constexpr KStandardActionsInfo g_rgActionInfo[] = { + { New, KStandardShortcut::New, u"file_new", QT_TRANSLATE_NOOP("KStandardActions", "&New"), QT_TRANSLATE_NOOP("KStandardActions", "Create new document"), u"document-new" }, + { Open, KStandardShortcut::Open, u"file_open", QT_TRANSLATE_NOOP("KStandardActions", "&Open…"), QT_TRANSLATE_NOOP("KStandardActions", "Open an existing document"), u"document-open" }, + { OpenRecent, KStandardShortcut::AccelNone, u"file_open_recent", QT_TRANSLATE_NOOP("KStandardActions", "Open &Recent"), QT_TRANSLATE_NOOP("KStandardActions", "Open a document which was recently opened"), u"document-open-recent" }, + { Save, KStandardShortcut::Save, u"file_save", QT_TRANSLATE_NOOP("KStandardActions", "&Save"), QT_TRANSLATE_NOOP("KStandardActions", "Save document"), u"document-save" }, + { SaveAs, KStandardShortcut::SaveAs, u"file_save_as", QT_TRANSLATE_NOOP("KStandardActions", "Save &As…"), QT_TRANSLATE_NOOP("KStandardActions", "Save document under a new name"), u"document-save-as" }, + { Revert, KStandardShortcut::Revert, u"file_revert", QT_TRANSLATE_NOOP("KStandardActions", "Re&vert"), QT_TRANSLATE_NOOP("KStandardActions", "Revert unsaved changes made to document"), u"document-revert" }, + { Close, KStandardShortcut::Close, u"file_close", QT_TRANSLATE_NOOP("KStandardActions", "&Close"), QT_TRANSLATE_NOOP("KStandardActions", "Close document"), u"document-close" }, + { Print, KStandardShortcut::Print, u"file_print", QT_TRANSLATE_NOOP("KStandardActions", "&Print…"), QT_TRANSLATE_NOOP("KStandardActions", "Print document"), u"document-print" }, + { PrintPreview, KStandardShortcut::PrintPreview, u"file_print_preview", QT_TRANSLATE_NOOP("KStandardActions", "Print Previe&w"), QT_TRANSLATE_NOOP("KStandardActions", "Show a print preview of document"), u"document-print-preview" }, + { Mail, KStandardShortcut::Mail, u"file_mail", QT_TRANSLATE_NOOP("KStandardActions", "&Mail…"), QT_TRANSLATE_NOOP("KStandardActions", "Send document by mail"), u"mail-send" }, + { Quit, KStandardShortcut::Quit, u"file_quit", QT_TRANSLATE_NOOP("KStandardActions", "&Quit"), QT_TRANSLATE_NOOP("KStandardActions", "Quit application"), u"application-exit" }, + + { Undo, KStandardShortcut::Undo, u"edit_undo", QT_TRANSLATE_NOOP("KStandardActions", "&Undo"), QT_TRANSLATE_NOOP("KStandardActions", "Undo last action"), u"edit-undo" }, + { Redo, KStandardShortcut::Redo, u"edit_redo", QT_TRANSLATE_NOOP("KStandardActions", "Re&do"), QT_TRANSLATE_NOOP("KStandardActions", "Redo last undone action"), u"edit-redo" }, + { Cut, KStandardShortcut::Cut, u"edit_cut", QT_TRANSLATE_NOOP("KStandardActions", "Cu&t"), QT_TRANSLATE_NOOP("KStandardActions", "Cut selection to clipboard"), u"edit-cut" }, + { Copy, KStandardShortcut::Copy, u"edit_copy", QT_TRANSLATE_NOOP("KStandardActions", "&Copy"), QT_TRANSLATE_NOOP("KStandardActions", "Copy selection to clipboard"), u"edit-copy" }, + { Paste, KStandardShortcut::Paste, u"edit_paste", QT_TRANSLATE_NOOP("KStandardActions", "&Paste"), QT_TRANSLATE_NOOP("KStandardActions", "Paste clipboard content"), u"edit-paste" }, + { Clear, KStandardShortcut::Clear, u"edit_clear", QT_TRANSLATE_NOOP("KStandardActions", "C&lear"), {}, u"edit-clear" }, + { SelectAll, KStandardShortcut::SelectAll, u"edit_select_all", QT_TRANSLATE_NOOP("KStandardActions", "Select &All"), {}, u"edit-select-all" }, + { Deselect, KStandardShortcut::Deselect, u"edit_deselect", QT_TRANSLATE_NOOP("KStandardActions", "Dese&lect"), {}, u"edit-select-none" }, + { Find, KStandardShortcut::Find, u"edit_find", QT_TRANSLATE_NOOP("KStandardActions", "&Find…"), {}, u"edit-find" }, + { FindNext, KStandardShortcut::FindNext, u"edit_find_next", QT_TRANSLATE_NOOP("KStandardActions", "Find &Next"), {}, u"go-down-search" }, + { FindPrev, KStandardShortcut::FindPrev, u"edit_find_prev", QT_TRANSLATE_NOOP("KStandardActions", "Find Pre&vious"), {}, u"go-up-search" }, + { Replace, KStandardShortcut::Replace, u"edit_replace", QT_TRANSLATE_NOOP("KStandardActions", "&Replace…"), {}, u"edit-find-replace" }, + + { ActualSize, KStandardShortcut::ActualSize, u"view_actual_size", QT_TRANSLATE_NOOP("KStandardActions", "Zoom to &Actual Size"), QT_TRANSLATE_NOOP("KStandardActions", "View document at its actual size"), u"zoom-original" }, + { FitToPage, KStandardShortcut::FitToPage, u"view_fit_to_page", QT_TRANSLATE_NOOP("KStandardActions", "&Fit to Page"), QT_TRANSLATE_NOOP("KStandardActions", "Zoom to fit page in window"), u"zoom-fit-page" }, + { FitToWidth, KStandardShortcut::FitToWidth, u"view_fit_to_width", QT_TRANSLATE_NOOP("KStandardActions", "Fit to Page &Width"), QT_TRANSLATE_NOOP("KStandardActions", "Zoom to fit page width in window"), u"zoom-fit-width" }, + { FitToHeight, KStandardShortcut::FitToHeight, u"view_fit_to_height", QT_TRANSLATE_NOOP("KStandardActions", "Fit to Page &Height"), QT_TRANSLATE_NOOP("KStandardActions", "Zoom to fit page height in window"), u"zoom-fit-height" }, + { ZoomIn, KStandardShortcut::ZoomIn, u"view_zoom_in", QT_TRANSLATE_NOOP("KStandardActions", "Zoom &In"), {}, u"zoom-in" }, + { ZoomOut, KStandardShortcut::ZoomOut, u"view_zoom_out", QT_TRANSLATE_NOOP("KStandardActions", "Zoom &Out"), {}, u"zoom-out" }, + { Zoom, KStandardShortcut::Zoom, u"view_zoom", QT_TRANSLATE_NOOP("KStandardActions", "&Zoom…"), QT_TRANSLATE_NOOP("KStandardActions", "Select zoom level"), u"zoom" }, + { Redisplay, KStandardShortcut::Reload, u"view_redisplay", QT_TRANSLATE_NOOP("KStandardActions", "&Refresh"), QT_TRANSLATE_NOOP("KStandardActions", "Refresh document"), u"view-refresh" }, + + { Up, KStandardShortcut::Up, u"go_up", QT_TRANSLATE_NOOP("KStandardActions", "&Up"), QT_TRANSLATE_NOOP("KStandardActions", "Go up"), u"go-up" }, + // The following three have special i18n() needs for sLabel + { Back, KStandardShortcut::Back, u"go_back", {}, {}, u"go-previous" }, + { Forward, KStandardShortcut::Forward, u"go_forward", {}, {}, u"go-next" }, + { Home, KStandardShortcut::Home, u"go_home", {}, {}, u"go-home" }, + { Prior, KStandardShortcut::Prior, u"go_previous", QT_TRANSLATE_NOOP("KStandardActions", "&Previous Page"), QT_TRANSLATE_NOOP("KStandardActions", "Go to previous page"), u"go-previous-view-page" }, + { Next, KStandardShortcut::Next, u"go_next", QT_TRANSLATE_NOOP("KStandardActions", "&Next Page"), QT_TRANSLATE_NOOP("KStandardActions", "Go to next page"), u"go-next-view-page" }, + { Goto, KStandardShortcut::Goto, u"go_goto", QT_TRANSLATE_NOOP("KStandardActions", "&Go To…"), {}, {} }, + { GotoPage, KStandardShortcut::GotoPage, u"go_goto_page", QT_TRANSLATE_NOOP("KStandardActions", "&Go to Page…"), {}, u"go-jump" }, + { GotoLine, KStandardShortcut::GotoLine, u"go_goto_line", QT_TRANSLATE_NOOP("KStandardActions", "&Go to Line…"), {}, {} }, + { FirstPage, KStandardShortcut::Begin, u"go_first", QT_TRANSLATE_NOOP("KStandardActions", "&First Page"), QT_TRANSLATE_NOOP("KStandardActions", "Go to first page"), u"go-first-view-page" }, + { LastPage, KStandardShortcut::End, u"go_last", QT_TRANSLATE_NOOP("KStandardActions", "&Last Page"), QT_TRANSLATE_NOOP("KStandardActions", "Go to last page"), u"go-last-view-page" }, + { DocumentBack, KStandardShortcut::DocumentBack, u"go_document_back", QT_TRANSLATE_NOOP("KStandardActions", "&Back"), QT_TRANSLATE_NOOP("KStandardActions", "Go back in document"), u"go-previous" }, + { DocumentForward, KStandardShortcut::DocumentForward, u"go_document_forward", QT_TRANSLATE_NOOP("KStandardActions", "&Forward"), QT_TRANSLATE_NOOP("KStandardActions", "Go forward in document"), u"go-next" }, + + { AddBookmark, KStandardShortcut::AddBookmark, u"bookmark_add", QT_TRANSLATE_NOOP("KStandardActions", "&Add Bookmark"), {}, u"bookmark-new" }, + { EditBookmarks, KStandardShortcut::EditBookmarks, u"bookmark_edit", QT_TRANSLATE_NOOP("KStandardActions", "&Edit Bookmarks…"), {}, u"bookmarks-organize" }, + + { Spelling, KStandardShortcut::Spelling, u"tools_spelling", QT_TRANSLATE_NOOP("KStandardActions", "&Spelling…"), QT_TRANSLATE_NOOP("KStandardActions", "Check spelling in document"), u"tools-check-spelling" }, + + { ShowMenubar, KStandardShortcut::ShowMenubar, u"options_show_menubar", QT_TRANSLATE_NOOP("KStandardActions", "Show &Menubar"), QT_TRANSLATE_NOOP("KStandardActions", "Show or hide menubar"), u"show-menu" }, + { ShowToolbar, KStandardShortcut::ShowToolbar, u"options_show_toolbar", QT_TRANSLATE_NOOP("KStandardActions", "Show &Toolbar"), QT_TRANSLATE_NOOP("KStandardActions", "Show or hide toolbar"), {} }, + { ShowStatusbar, KStandardShortcut::ShowStatusbar, u"options_show_statusbar", QT_TRANSLATE_NOOP("KStandardActions", "Show St&atusbar"), QT_TRANSLATE_NOOP("KStandardActions", "Show or hide statusbar"), {} }, + { FullScreen, KStandardShortcut::FullScreen, u"fullscreen", QT_TRANSLATE_NOOP("KStandardActions", "F&ull Screen Mode"), {}, u"view-fullscreen" }, + { KeyBindings, KStandardShortcut::KeyBindings, u"options_configure_keybinding", QT_TRANSLATE_NOOP("KStandardActions", "Configure Keyboard S&hortcuts…"), {}, u"configure-shortcuts" }, + { Preferences, KStandardShortcut::Preferences, u"options_configure", QT_TRANSLATE_NOOP("KStandardActions", "&Configure %1…"), {}, u"configure" }, + { ConfigureToolbars, KStandardShortcut::ConfigureToolbars, u"options_configure_toolbars", QT_TRANSLATE_NOOP("KStandardActions", "Configure Tool&bars…"), {}, u"configure-toolbars" }, + { ConfigureNotifications, KStandardShortcut::ConfigureNotifications, u"options_configure_notifications", QT_TRANSLATE_NOOP("KStandardActions", "Configure &Notifications…"), {}, u"preferences-desktop-notification" }, + + // the idea here is that Contents is used in menus, and Help in dialogs, so both share the same + // shortcut + { HelpContents, KStandardShortcut::Help, u"help_contents", QT_TRANSLATE_NOOP("KStandardActions", "%1 &Handbook"), {}, u"help-contents" }, + { WhatsThis, KStandardShortcut::WhatsThis, u"help_whats_this", QT_TRANSLATE_NOOP("KStandardActions", "What's &This?"), {}, u"help-contextual" }, + { ReportBug, KStandardShortcut::ReportBug, u"help_report_bug", QT_TRANSLATE_NOOP("KStandardActions", "&Report Bug…"), {}, u"tools-report-bug" }, + { SwitchApplicationLanguage, KStandardShortcut::SwitchApplicationLanguage, u"switch_application_language", QT_TRANSLATE_NOOP("KStandardActions", "Configure &Language…"), {}, u"preferences-desktop-locale" }, + { AboutApp, KStandardShortcut::AccelNone, u"help_about_app", QT_TRANSLATE_NOOP("KStandardActions", "&About %1"), {}, nullptr }, + { AboutKDE, KStandardShortcut::AccelNone, u"help_about_kde", QT_TRANSLATE_NOOP("KStandardActions", "About &KDE"), {}, u"kde" }, + { DeleteFile, KStandardShortcut::DeleteFile, u"deletefile", QT_TRANSLATE_NOOP("KStandardActions", "&Delete"), {}, u"edit-delete" }, + { RenameFile, KStandardShortcut::RenameFile, u"renamefile", QT_TRANSLATE_NOOP("KStandardActions", "&Rename…"), {}, u"edit-rename" }, + { MoveToTrash, KStandardShortcut::MoveToTrash, u"movetotrash", QT_TRANSLATE_NOOP("KStandardActions", "&Move to Trash"), {}, u"trash-empty" }, + { Donate, KStandardShortcut::Donate, u"help_donate", QT_TRANSLATE_NOOP("KStandardActions", "&Donate"), {}, u"help-donate"}, + { HamburgerMenu, KStandardShortcut::OpenMainMenu, u"hamburger_menu", QT_TRANSLATE_NOOP("KStandardActions", "Open &Menu"), {}, u"application-menu" }, +}; +// clang-format on + +/** + * @internal + */ +inline const KStandardActionsInfo *infoPtr(StandardAction id) +{ + for (const auto &action : g_rgActionInfo) { + if (action.id == id) { + return &action; + } + } + + return nullptr; +} + +/** + * @internal + */ +static inline QStringList internal_stdNames() +{ + QStringList result; + + for (const auto &action : g_rgActionInfo) { + if (!QCoreApplication::translate("KStandardActions", action.psLabel).isEmpty()) { + if (QByteArrayView(action.psLabel).contains("%1")) + // Prevents KLocalizedString::toString() from complaining about unsubstituted placeholder. + { + result.append(QCoreApplication::translate("KStandardActions", action.psLabel).arg(QString())); + } else { + result.append(QCoreApplication::translate("KStandardActions", action.psLabel)); + } + } + } + + return result; +} +} diff --git a/src/gui/kstandardshortcut.cpp b/src/gui/kstandardshortcut.cpp new file mode 100644 index 0000000..4683f98 --- /dev/null +++ b/src/gui/kstandardshortcut.cpp @@ -0,0 +1,833 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 1997 Stefan Taferner + SPDX-FileCopyrightText: 2000 Nicolas Hadacek + SPDX-FileCopyrightText: 2001, 2002 Ellis Whitehead + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kstandardshortcut.h" +#include "kstandardshortcutwatcher.h" + +#include "kconfig.h" +#include "kconfigwatcher.h" +#include "ksharedconfig.h" +#include + +#include +#include +#include + +namespace KStandardShortcut +{ +struct KStandardShortcutInfo { + //! The standard shortcut id. @see StandardShortcut + StandardShortcut id; + + /** + * Unique name for the given accel. The name is used to save the user + * settings. It's not representable. Use description for that. + * @warning NEVER EVER CHANGE IT OR TRANSLATE IT! + */ + const char *name; + + //! Localized label for user-visible display, including translation context. + struct { + const char *text; + const char *context; + } description; + + //! The keys for this shortcut + int cutDefault, cutDefault2; + + //! A shortcut that is created with @a cutDefault and @cutDefault2 + QList cut; + + //! If this struct is initialized. If not initialized @cut is not valid + bool isInitialized; + + // Category of this Shortcut + Category category; +}; + +#define CTRL(x) QKeyCombination(Qt::CTRL | Qt::Key_##x).toCombined() +#define SHIFT(x) QKeyCombination(Qt::SHIFT | Qt::Key_##x).toCombined() +#define CTRLALT(x) QKeyCombination(Qt::CTRL | Qt::ALT | Qt::Key_##x).toCombined() +#define CTRLSHIFT(x) QKeyCombination(Qt::CTRL | Qt::SHIFT | Qt::Key_##x).toCombined() +#define ALT(x) QKeyCombination(Qt::ALT | Qt::Key_##x).toCombined() +#define ALTSHIFT(x) QKeyCombination(Qt::ALT | Qt::SHIFT | Qt::Key_##x).toCombined() + +/** Array of predefined KStandardShortcutInfo objects, which cover all + the "standard" accelerators. Each enum value from StandardShortcut + should appear in this table. +*/ +// STUFF WILL BREAK IF YOU DON'T READ THIS!!! +// Read the comments of the big enum in kstandardshortcut.h before you change anything! +static KStandardShortcutInfo g_infoStandardShortcut[] = { + // Group File, + {AccelNone, nullptr, {nullptr, nullptr}, 0, 0, QList(), false, Category::InvalidCategory}, + {Open, "Open", QT_TRANSLATE_NOOP3("KStandardShortcut", "Open", "@action"), CTRL(O), 0, QList(), false, Category::File}, + {New, "New", QT_TRANSLATE_NOOP3("KStandardShortcut", "New", "@action"), CTRL(N), 0, QList(), false, Category::File}, + {Close, "Close", QT_TRANSLATE_NOOP3("KStandardShortcut", "Close", "@action"), CTRL(W), CTRL(Escape), QList(), false, Category::File}, + {Save, "Save", QT_TRANSLATE_NOOP3("KStandardShortcut", "Save", "@action"), CTRL(S), 0, QList(), false, Category::File}, + {Print, "Print", QT_TRANSLATE_NOOP3("KStandardShortcut", "Print", "@action"), CTRL(P), 0, QList(), false, Category::File}, + {Quit, "Quit", QT_TRANSLATE_NOOP3("KStandardShortcut", "Quit", "@action"), CTRL(Q), 0, QList(), false, Category::Navigation}, + + // Group Edit + {Undo, "Undo", QT_TRANSLATE_NOOP3("KStandardShortcut", "Undo", "@action"), CTRL(Z), 0, QList(), false, Category::Edit}, + {Redo, "Redo", QT_TRANSLATE_NOOP3("KStandardShortcut", "Redo", "@action"), CTRLSHIFT(Z), 0, QList(), false, Category::Edit}, + // Both "Cut" and "Delete" use Shift+Delete, but this is okay; see + // https://commits.kde.org/kxmlgui/8eabbf6725386e716b7536c71a9181dfe5d959f0 + {Cut, "Cut", QT_TRANSLATE_NOOP3("KStandardShortcut", "Cut", "@action"), CTRL(X), SHIFT(Delete), QList(), false, Category::Edit}, + {Copy, "Copy", QT_TRANSLATE_NOOP3("KStandardShortcut", "Copy", "@action"), CTRL(C), CTRL(Insert), QList(), false, Category::Edit}, + {Paste, "Paste", QT_TRANSLATE_NOOP3("KStandardShortcut", "Paste", "@action"), CTRL(V), SHIFT(Insert), QList(), false, Category::Edit}, + {PasteSelection, + "Paste Selection", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Paste Selection", "@action"), + CTRLSHIFT(Insert), + 0, + QList(), + false, + Category::Edit}, + + {SelectAll, "SelectAll", QT_TRANSLATE_NOOP3("KStandardShortcut", "Select All", "@action"), CTRL(A), 0, QList(), false, Category::Edit}, + {Deselect, "Deselect", QT_TRANSLATE_NOOP3("KStandardShortcut", "Deselect", "@action"), CTRLSHIFT(A), 0, QList(), false, Category::Edit}, + {DeleteWordBack, + "DeleteWordBack", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Delete Word Backwards", "@action"), + CTRL(Backspace), + 0, + QList(), + false, + Category::Edit}, + {DeleteWordForward, + "DeleteWordForward", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Delete Word Forward", "@action"), + CTRL(Delete), + 0, + QList(), + false, + Category::Edit}, + + {Find, "Find", QT_TRANSLATE_NOOP3("KStandardShortcut", "Find", "@action"), CTRL(F), 0, QList(), false, Category::Edit}, + {FindNext, "FindNext", QT_TRANSLATE_NOOP3("KStandardShortcut", "Find Next", "@action"), Qt::Key_F3, 0, QList(), false, Category::Edit}, + {FindPrev, "FindPrev", QT_TRANSLATE_NOOP3("KStandardShortcut", "Find Prev", "@action"), SHIFT(F3), 0, QList(), false, Category::Edit}, + {Replace, "Replace", QT_TRANSLATE_NOOP3("KStandardShortcut", "Replace", "@action"), CTRL(R), 0, QList(), false, Category::Edit}, + + // Group Navigation + {Home, + "Home", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Home", "@action Go to main page"), + ALT(Home), + Qt::Key_HomePage, + QList(), + false, + Category::Navigation}, + {Begin, + "Begin", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Begin", "@action Beginning of document"), + CTRL(Home), + 0, + QList(), + false, + Category::Navigation}, + {End, "End", QT_TRANSLATE_NOOP3("KStandardShortcut", "End", "@action End of document"), CTRL(End), 0, QList(), false, Category::Navigation}, + {Prior, "Prior", QT_TRANSLATE_NOOP3("KStandardShortcut", "Prior", "@action"), Qt::Key_PageUp, 0, QList(), false, Category::Navigation}, + {Next, + "Next", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Next", "@action Opposite to Prior"), + Qt::Key_PageDown, + 0, + QList(), + false, + Category::Navigation}, + + {Up, "Up", QT_TRANSLATE_NOOP3("KStandardShortcut", "Up", "@action"), ALT(Up), 0, QList(), false, Category::Navigation}, + {Back, "Back", QT_TRANSLATE_NOOP3("KStandardShortcut", "Back", "@action"), ALT(Left), Qt::Key_Back, QList(), false, Category::Navigation}, + {Forward, + "Forward", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Forward", "@action"), + ALT(Right), + Qt::Key_Forward, + QList(), + false, + Category::Navigation}, + {Reload, + "Reload", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Reload", "@action"), + Qt::Key_F5, + Qt::Key_Refresh, + QList(), + false, + Category::Navigation}, + + {BeginningOfLine, + "BeginningOfLine", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Beginning of Line", "@action"), + Qt::Key_Home, + 0, + QList(), + false, + Category::Navigation}, + {EndOfLine, + "EndOfLine", + QT_TRANSLATE_NOOP3("KStandardShortcut", "End of Line", "@action"), + Qt::Key_End, + 0, + QList(), + false, + Category::Navigation}, + {GotoLine, "GotoLine", QT_TRANSLATE_NOOP3("KStandardShortcut", "Go to Line", "@action"), CTRL(G), 0, QList(), false, Category::Navigation}, + {BackwardWord, + "BackwardWord", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Backward Word", "@action"), + CTRL(Left), + 0, + QList(), + false, + Category::Navigation}, + {ForwardWord, + "ForwardWord", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Forward Word", "@action"), + CTRL(Right), + 0, + QList(), + false, + Category::Navigation}, + + {AddBookmark, + "AddBookmark", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Add Bookmark", "@action"), + CTRL(B), + 0, + QList(), + false, + Category::Navigation}, + {ZoomIn, "ZoomIn", QT_TRANSLATE_NOOP3("KStandardShortcut", "Zoom In", "@action"), CTRL(Plus), CTRL(Equal), QList(), false, Category::View}, + {ZoomOut, "ZoomOut", QT_TRANSLATE_NOOP3("KStandardShortcut", "Zoom Out", "@action"), CTRL(Minus), 0, QList(), false, Category::View}, + {FullScreen, + "FullScreen", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Full Screen Mode", "@action"), + CTRLSHIFT(F), + 0, + QList(), + false, + Category::View}, + + {ShowMenubar, "ShowMenubar", QT_TRANSLATE_NOOP3("KStandardShortcut", "Show Menu Bar", "@action"), CTRL(M), 0, QList(), false, Category::View}, + {TabNext, + "Activate Next Tab", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Activate Next Tab", "@action"), + CTRL(PageDown), + CTRL(BracketRight), + QList(), + false, + Category::Navigation}, + {TabPrev, + "Activate Previous Tab", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Activate Previous Tab", "@action"), + CTRL(PageUp), + CTRL(BracketLeft), + QList(), + false, + Category::Navigation}, + + // Group Help + {Help, "Help", QT_TRANSLATE_NOOP3("KStandardShortcut", "Help", "@action"), Qt::Key_F1, 0, QList(), false, Category::Help}, + {WhatsThis, "WhatsThis", QT_TRANSLATE_NOOP3("KStandardShortcut", "What's This", "@action"), SHIFT(F1), 0, QList(), false, Category::Help}, + + // Group TextCompletion + {TextCompletion, + "TextCompletion", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Text Completion", "@action"), + CTRL(E), + 0, + QList(), + false, + Category::Edit}, + {PrevCompletion, + "PrevCompletion", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Previous Completion Match", "@action"), + CTRL(Up), + 0, + QList(), + false, + Category::Edit}, + {NextCompletion, + "NextCompletion", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Next Completion Match", "@action"), + CTRL(Down), + 0, + QList(), + false, + Category::Edit}, + {SubstringCompletion, + "SubstringCompletion", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Substring Completion", "@action"), + CTRL(T), + 0, + QList(), + false, + Category::Edit}, + + {RotateUp, + "RotateUp", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Previous Item in List", "@action"), + Qt::Key_Up, + 0, + QList(), + false, + Category::Navigation}, + {RotateDown, + "RotateDown", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Next Item in List", "@action"), + Qt::Key_Down, + 0, + QList(), + false, + Category::Navigation}, + + {OpenRecent, "OpenRecent", QT_TRANSLATE_NOOP3("KStandardShortcut", "Open Recent", "@action"), 0, 0, QList(), false, Category::File}, + {SaveAs, "SaveAs", QT_TRANSLATE_NOOP3("KStandardShortcut", "Save As", "@action"), CTRLSHIFT(S), 0, QList(), false, Category::File}, + {Revert, "Revert", QT_TRANSLATE_NOOP3("KStandardShortcut", "Revert", "@action"), 0, 0, QList(), false, Category::Edit}, + {PrintPreview, "PrintPreview", QT_TRANSLATE_NOOP3("KStandardShortcut", "Print Preview", "@action"), 0, 0, QList(), false, Category::File}, + {Mail, "Mail", QT_TRANSLATE_NOOP3("KStandardShortcut", "Mail", "@action"), 0, 0, QList(), false, Category::Help}, + {Clear, "Clear", QT_TRANSLATE_NOOP3("KStandardShortcut", "Clear", "@action"), 0, 0, QList(), false, Category::Edit}, + {ActualSize, + "ActualSize", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Zoom to Actual Size", "@action"), + CTRL(0), + 0, + QList(), + false, + Category::View}, + {FitToPage, "FitToPage", QT_TRANSLATE_NOOP3("KStandardShortcut", "Fit To Page", "@action"), 0, 0, QList(), false, Category::View}, + {FitToWidth, "FitToWidth", QT_TRANSLATE_NOOP3("KStandardShortcut", "Fit To Width", "@action"), 0, 0, QList(), false, Category::View}, + {FitToHeight, "FitToHeight", QT_TRANSLATE_NOOP3("KStandardShortcut", "Fit To Height", "@action"), 0, 0, QList(), false, Category::View}, + {Zoom, "Zoom", QT_TRANSLATE_NOOP3("KStandardShortcut", "Zoom", "@action"), 0, 0, QList(), false, Category::View}, + {Goto, "Goto", QT_TRANSLATE_NOOP3("KStandardShortcut", "Goto", "@action"), 0, 0, QList(), false, Category::Navigation}, + {GotoPage, "GotoPage", QT_TRANSLATE_NOOP3("KStandardShortcut", "Goto Page", "@action"), 0, 0, QList(), false, Category::Navigation}, + {DocumentBack, + "DocumentBack", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Document Back", "@action"), + ALTSHIFT(Left), + 0, + QList(), + false, + Category::Navigation}, + {DocumentForward, + "DocumentForward", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Document Forward", "@action"), + ALTSHIFT(Right), + 0, + QList(), + false, + Category::Navigation}, + {EditBookmarks, + "EditBookmarks", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Edit Bookmarks", "@action"), + 0, + 0, + QList(), + false, + Category::Navigation}, + {Spelling, "Spelling", QT_TRANSLATE_NOOP3("KStandardShortcut", "Spelling", "@action"), 0, 0, QList(), false, Category::Edit}, + {ShowToolbar, "ShowToolbar", QT_TRANSLATE_NOOP3("KStandardShortcut", "Show Toolbar", "@action"), 0, 0, QList(), false, Category::View}, + {ShowStatusbar, "ShowStatusbar", QT_TRANSLATE_NOOP3("KStandardShortcut", "Show Statusbar", "@action"), 0, 0, QList(), false, Category::View}, + {KeyBindings, + "KeyBindings", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Key Bindings", "@action"), + CTRLALT(Comma), + 0, + QList(), + false, + Category::Settings}, + {Preferences, + "Preferences", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Configure Application", "@action"), + CTRLSHIFT(Comma), + 0, + QList(), + false, + Category::Settings}, + {ConfigureToolbars, + "ConfigureToolbars", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Configure Toolbars", "@action"), + 0, + 0, + QList(), + false, + Category::Settings}, + {ConfigureNotifications, + "ConfigureNotifications", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Configure Notifications", "@action"), + 0, + 0, + QList(), + false, + Category::Settings}, + {ReportBug, "ReportBug", QT_TRANSLATE_NOOP3("KStandardShortcut", "Report Bug", "@action"), 0, 0, QList(), false, Category::Help}, + {SwitchApplicationLanguage, + "SwitchApplicationLanguage", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Configure Language…", "@action"), + 0, + 0, + QList(), + false, + Category::Settings}, + {AboutApp, "AboutApp", QT_TRANSLATE_NOOP3("KStandardShortcut", "About Application", "@action"), 0, 0, QList(), false, Category::Help}, + {AboutKDE, "AboutKDE", QT_TRANSLATE_NOOP3("KStandardShortcut", "About KDE", "@action"), 0, 0, QList(), false, Category::Help}, + // Both "Cut" and "Delete" use Shift+Delete, but this is okay; see + // https://commits.kde.org/kxmlgui/8eabbf6725386e716b7536c71a9181dfe5d959f0 + {DeleteFile, "DeleteFile", QT_TRANSLATE_NOOP3("KStandardShortcut", "Delete", "@action"), SHIFT(Delete), 0, QList(), false, Category::File}, + {RenameFile, "RenameFile", QT_TRANSLATE_NOOP3("KStandardShortcut", "Rename", "@action"), Qt::Key_F2, 0, QList(), false, Category::File}, + {MoveToTrash, + "MoveToTrash", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Move to Trash", "@action"), + Qt::Key_Delete, + 0, + QList(), + false, + Category::File}, + {Donate, "Donate", QT_TRANSLATE_NOOP3("KStandardShortcut", "Donate", "@action"), 0, 0, QList(), false, Category::Help}, + {ShowHideHiddenFiles, + "ShowHideHiddenFiles", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Show/Hide Hidden Files", "@action"), + CTRL(H), + ALT(Period), + QList(), + false, + Category::View}, + {CreateFolder, + "CreateFolder", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Create Folder", "@action"), + CTRLSHIFT(N), + 0, + QList(), + false, + Category::File}, + {OpenMainMenu, + "OpenMainMenu", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Open Main Menu", "@action referring to the menu bar or a hamburger menu"), + Qt::Key_F10, + 0, + QList(), + false, + Category::View}, + {OpenContextMenu, + "OpenContextMenu", + QT_TRANSLATE_NOOP3("KStandardShortcut", "Open Context Menu", "@action"), + Qt::Key_Menu, + SHIFT(F10), + QList(), + false, + Category::View}, + + // dummy entry to catch simple off-by-one errors. Insert new entries before this line. + {AccelNone, nullptr, {nullptr, nullptr}, 0, 0, QList(), false, Category::InvalidCategory}}; + +/** Search for the KStandardShortcutInfo object associated with the given @p id. + Return a dummy entry with no name and an empty shortcut if @p id is invalid. +*/ +static KStandardShortcutInfo *guardedStandardShortcutInfo(StandardShortcut id) +{ + if (id >= static_cast(sizeof(g_infoStandardShortcut) / sizeof(KStandardShortcutInfo)) || id < 0) { + qWarning() << "KStandardShortcut: id not found!"; + return &g_infoStandardShortcut[AccelNone]; + } else { + return &g_infoStandardShortcut[id]; + } +} + +// Sanitize the list for duplicates. For some reason some +// people have kdeglobals entries like +// Close=Ctrl+W; Ctrl+Esc; Ctrl+W; Ctrl+Esc; +// having the same shortcut more than once in the shortcut +// declaration is clearly bogus so fix it +static void sanitizeShortcutList(QList *list) +{ + for (int i = 0; i < list->size(); ++i) { + const QKeySequence &ks = list->at(i); + int other = list->indexOf(ks, i + 1); + while (other != -1) { + list->removeAt(other); + other = list->indexOf(ks, other); + } + } +} + +/** Initialize the accelerator @p id by checking if it is overridden + in the configuration file (and if it isn't, use the default). + On X11, if QApplication was initialized with GUI disabled, + the default will always be used. +*/ +void initialize(StandardShortcut id) +{ + KStandardShortcutInfo *info = guardedStandardShortcutInfo(id); + + // All three are needed. + if (info->id != AccelNone) { + Q_ASSERT(info->description.text); + Q_ASSERT(info->description.context); + Q_ASSERT(info->name); + } + + KConfigGroup cg(KSharedConfig::openConfig(), QStringLiteral("Shortcuts")); + + if (cg.hasKey(info->name)) { + QString s = cg.readEntry(info->name); + if (s != QLatin1String("none")) { + info->cut = QKeySequence::listFromString(s); + sanitizeShortcutList(&info->cut); + } else { + info->cut = QList(); + } + } else { + info->cut = hardcodedDefaultShortcut(id); + } + + info->isInitialized = true; +} + +void saveShortcut(StandardShortcut id, const QList &newShortcut) +{ + KStandardShortcutInfo *info = guardedStandardShortcutInfo(id); + // If the action has no standard shortcut associated there is nothing to + // save + if (info->id == AccelNone) { + return; + } + + KConfigGroup cg(KSharedConfig::openConfig(), QStringLiteral("Shortcuts")); + + info->cut = newShortcut; + bool sameAsDefault = (newShortcut == hardcodedDefaultShortcut(id)); + + if (sameAsDefault) { + // If the shortcut is the equal to the hardcoded one we remove it from + // kdeglobal if necessary and return. + if (cg.hasKey(info->name)) { + cg.deleteEntry(info->name, KConfig::Global | KConfig::Persistent | KConfig::Notify); + cg.sync(); + } + + return; + } + + // Write the changed shortcut to kdeglobals + sanitizeShortcutList(&info->cut); + cg.writeEntry(info->name, QKeySequence::listToString(info->cut), KConfig::Global | KConfig::Persistent | KConfig::Notify); + cg.sync(); +} + +QString name(StandardShortcut id) +{ + return QString::fromLatin1(guardedStandardShortcutInfo(id)->name); +} + +QString label(StandardShortcut id) +{ + KStandardShortcutInfo *info = guardedStandardShortcutInfo(id); + return QCoreApplication::translate("KStandardShortcut", info->description.text, info->description.context); +} + +// TODO: Add psWhatsThis entry to KStandardShortcutInfo +QString whatsThis(StandardShortcut /*id*/) +{ + // KStandardShortcutInfo* info = guardedStandardShortcutInfo( id ); + // if( info && info->whatsThis ) + // return i18n(info->whatsThis); + // else + return QString(); +} + +const QList &shortcut(StandardShortcut id) +{ + KStandardShortcutInfo *info = guardedStandardShortcutInfo(id); + + if (!info->isInitialized) { + initialize(id); + } + + return info->cut; +} + +StandardShortcut find(const QKeySequence &seq) +{ + if (!seq.isEmpty()) { + for (const KStandardShortcutInfo &shortcutInfo : g_infoStandardShortcut) { + const StandardShortcut id = shortcutInfo.id; + if (id != AccelNone) { + if (!shortcutInfo.isInitialized) { + initialize(id); + } + if (shortcutInfo.cut.contains(seq)) { + return id; + } + } + } + } + return AccelNone; +} + +StandardShortcut findByName(const QString &name) +{ + for (const KStandardShortcutInfo &shortcutInfo : g_infoStandardShortcut) { + if (QLatin1StringView(shortcutInfo.name) == name) { + return shortcutInfo.id; + } + } + return AccelNone; +} + +QList hardcodedDefaultShortcut(StandardShortcut id) +{ + QList cut; + KStandardShortcutInfo *info = guardedStandardShortcutInfo(id); + + if (info->cutDefault != 0) { + cut << info->cutDefault; + } + + if (info->cutDefault2 != 0) { + if (cut.isEmpty()) { + cut << QKeySequence(); + } + + cut << info->cutDefault2; + } + + return cut; +} + +Category category(StandardShortcut id) +{ + return guardedStandardShortcutInfo(id)->category; +} + +const QList &open() +{ + return shortcut(Open); +} +const QList &openNew() +{ + return shortcut(New); +} +const QList &close() +{ + return shortcut(Close); +} +const QList &save() +{ + return shortcut(Save); +} +const QList &print() +{ + return shortcut(Print); +} +const QList &quit() +{ + return shortcut(Quit); +} +const QList &cut() +{ + return shortcut(Cut); +} +const QList ©() +{ + return shortcut(Copy); +} +const QList &paste() +{ + return shortcut(Paste); +} +const QList &pasteSelection() +{ + return shortcut(PasteSelection); +} +const QList &deleteWordBack() +{ + return shortcut(DeleteWordBack); +} +const QList &deleteWordForward() +{ + return shortcut(DeleteWordForward); +} +const QList &undo() +{ + return shortcut(Undo); +} +const QList &redo() +{ + return shortcut(Redo); +} +const QList &find() +{ + return shortcut(Find); +} +const QList &findNext() +{ + return shortcut(FindNext); +} +const QList &findPrev() +{ + return shortcut(FindPrev); +} +const QList &replace() +{ + return shortcut(Replace); +} +const QList &home() +{ + return shortcut(Home); +} +const QList &begin() +{ + return shortcut(Begin); +} +const QList &end() +{ + return shortcut(End); +} +const QList &beginningOfLine() +{ + return shortcut(BeginningOfLine); +} +const QList &endOfLine() +{ + return shortcut(EndOfLine); +} +const QList &prior() +{ + return shortcut(Prior); +} +const QList &next() +{ + return shortcut(Next); +} +const QList &backwardWord() +{ + return shortcut(BackwardWord); +} +const QList &forwardWord() +{ + return shortcut(ForwardWord); +} +const QList &gotoLine() +{ + return shortcut(GotoLine); +} +const QList &addBookmark() +{ + return shortcut(AddBookmark); +} +const QList &tabNext() +{ + return shortcut(TabNext); +} +const QList &tabPrev() +{ + return shortcut(TabPrev); +} +const QList &fullScreen() +{ + return shortcut(FullScreen); +} +const QList &zoomIn() +{ + return shortcut(ZoomIn); +} +const QList &zoomOut() +{ + return shortcut(ZoomOut); +} +const QList &help() +{ + return shortcut(Help); +} +const QList &completion() +{ + return shortcut(TextCompletion); +} +const QList &prevCompletion() +{ + return shortcut(PrevCompletion); +} +const QList &nextCompletion() +{ + return shortcut(NextCompletion); +} +const QList &rotateUp() +{ + return shortcut(RotateUp); +} +const QList &rotateDown() +{ + return shortcut(RotateDown); +} +const QList &substringCompletion() +{ + return shortcut(SubstringCompletion); +} +const QList &whatsThis() +{ + return shortcut(WhatsThis); +} +const QList &reload() +{ + return shortcut(Reload); +} +const QList &selectAll() +{ + return shortcut(SelectAll); +} +const QList &up() +{ + return shortcut(Up); +} +const QList &back() +{ + return shortcut(Back); +} +const QList &forward() +{ + return shortcut(Forward); +} +const QList &showMenubar() +{ + return shortcut(ShowMenubar); +} +const QList &deleteFile() +{ + return shortcut(DeleteFile); +} +const QList &renameFile() +{ + return shortcut(RenameFile); +} +const QList &createFolder() +{ + return shortcut(CreateFolder); +} +const QList &moveToTrash() +{ + return shortcut(MoveToTrash); +} +const QList &preferences() +{ + return shortcut(Preferences); +} +const QList &showHideHiddenFiles() +{ + return shortcut(ShowHideHiddenFiles); +} +const QList &openMainMenu() +{ + return shortcut(OpenMainMenu); +} +const QList &openContextMenu() +{ + return shortcut(OpenContextMenu); +} +} diff --git a/src/gui/kstandardshortcut.h b/src/gui/kstandardshortcut.h new file mode 100644 index 0000000..cd81070 --- /dev/null +++ b/src/gui/kstandardshortcut.h @@ -0,0 +1,578 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 1997 Stefan Taferner + SPDX-FileCopyrightText: 2000 Nicolas Hadacek + SPDX-FileCopyrightText: 2001, 2002 Ellis Whitehead + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ +#ifndef KSTANDARDSHORTCUT_H +#define KSTANDARDSHORTCUT_H + +#include +#include + +#include + +/** + * \namespace KStandardShortcut + * Convenient methods for access to the common accelerator keys in + * the key configuration. These are the standard keybindings that should + * be used in all KDE applications. They will be configurable, + * so do not hardcode the default behavior. + */ +namespace KStandardShortcut +{ +// STUFF WILL BREAK IF YOU DON'T READ THIS!!! +/* + *Always add new std-accels to the end of this enum, never in the middle! + *Don't forget to add the corresponding entries in g_infoStandardShortcut[] in kstandardshortcut.cpp, too. + *Values of elements here and positions of the corresponding entries in + *the big array g_infoStandardShortcut[] ABSOLUTELY MUST BE THE SAME. + * !!! !!!! !!!!! !!!! + * !!!! !!! !!!! !!!! + * + * Other Rules: + * + * - Never change the name of an existing shortcut + * - Never translate the name of a shortcut + */ + +/** + * Defines the identifier of all standard accelerators. + */ +enum StandardShortcut { + // C++ requires that the value of an enum symbol be one more than the previous one. + // This means that everything will be well-ordered from here on. + AccelNone = 0, + // File menu + Open, ///< Open file. + New, ///< Create a new document. + Close, ///< Close current document. + Save, ///< Save current document. + // The Print item + Print, ///< Print current document. + Quit, ///< Quit the program. + // Edit menu + Undo, ///< Undo last operation. + Redo, ///< Redo last operation. + Cut, ///< Cut selected area and store it in the clipboard. + Copy, ///< Copy selected area into the clipboard. + Paste, ///< Paste contents of clipboard at mouse/cursor position. + PasteSelection, ///< Paste the selection at mouse/cursor position. + SelectAll, ///< Select all. + Deselect, ///< Deselect any selected elements. + DeleteWordBack, ///< Delete a word back from mouse/cursor position. + DeleteWordForward, ///< Delete a word forward from mouse/cursor position. + Find, ///< Initiate a 'find' request in the current document. + FindNext, ///< Find the next instance of a stored 'find'. + FindPrev, ///< Find a previous instance of a stored 'find'. + Replace, ///< Find and replace matches. + // Navigation + Home, ///< Go to home page. + Begin, ///< Go to beginning of the document. + End, ///< Go to end of the document. + Prior, ///< Scroll up one page. + Next, ///< Scroll down one page. + Up, ///< Up. + Back, ///< Back. + Forward, ///< Forward. + Reload, ///< Reload. + // Text Navigation + BeginningOfLine, ///< Go to beginning of current line. + EndOfLine, ///< Go to end of current line. + GotoLine, ///< Go to line. + BackwardWord, ///< BackwardWord. + ForwardWord, ///< ForwardWord. + // View parameters + AddBookmark, ///< Add current page to bookmarks. + ZoomIn, ///< Zoom in. + ZoomOut, ///< Zoom out. + FullScreen, ///< Full Screen mode. + ShowMenubar, ///< Show Menu Bar. + // Tabular navigation + TabNext, ///< Next Tab. + TabPrev, ///< Previous Tab. + // Help menu + Help, ///< Help the user in the current situation. + WhatsThis, ///< What's This button. + // Text completion + TextCompletion, ///< Complete text in input widgets. + PrevCompletion, ///< Iterate through a list when completion returns multiple items. + NextCompletion, ///< Iterate through a list when completion returns multiple items. + SubstringCompletion, ///< Find a string within another string or list of strings. + RotateUp, ///< Help users iterate through a list of entries. + RotateDown, ///< Help users iterate through a list of entries. + OpenRecent, ///< Open a recently used document. + SaveAs, ///< Save the current document under a different name. + Revert, ///< Revert the current document to the last saved version. + PrintPreview, ///< Show a print preview of the current document. + Mail, ///< Send the current document by mail. + Clear, ///< Clear the content of the focus widget. + ActualSize, ///< View the document at its actual size. + FitToPage, ///< Fit the document view to the size of the current window. + FitToWidth, ///< Fit the document view to the width of the current window. + FitToHeight, ///< Fit the document view to the height of the current window. + Zoom, ///< Select the current zoom level. + Goto, ///< Jump to some specific location in the document. + GotoPage, ///< Go to a specific page. + DocumentBack, ///< Move back (document style menu). + DocumentForward, ///< Move forward (document style menu). + EditBookmarks, ///< Edit the application bookmarks. + Spelling, ///< Pop up the spell checker. + ShowToolbar, ///< Show/Hide the toolbar. + ShowStatusbar, ///< Show/Hide the statusbar. + KeyBindings, ///< Display the configure key bindings dialog. + Preferences, ///< Display the preferences/options dialog. + ConfigureToolbars, ///< Display the toolbar configuration dialog. + ConfigureNotifications, ///< Display the notifications configuration dialog. + ReportBug, ///< Display the Report Bug dialog. + SwitchApplicationLanguage, ///< Display the Switch Application Language dialog. + AboutApp, ///< Display the application's About dialog. + AboutKDE, ///< Display the About KDE dialog. + DeleteFile, ///< Permanently delete files or folders. @since 5.25 + RenameFile, ///< Rename files or folders. @since 5.25 + MoveToTrash, ///< Move files or folders to the trash. @since 5.25 + Donate, ///< Open donation page on kde.org. @since 5.26 + ShowHideHiddenFiles, ///< Toggle showing or hiding hidden files @since 5.70 + CreateFolder, ///< Create a folder. @since 5.74 + OpenMainMenu, ///< Open a main menu like the menu bar or a hamburger menu. Necessary for accessibility. @since 6.0 + OpenContextMenu, ///< Open a context menu for the object with keyboard focus. Necessary for accessibility. @since 6.0 + // Insert new items here! + + StandardShortcutCount, // number of standard shortcuts +}; + +/** + * Categories in which the standard shortcuts can be classified + * @since 5.74 + */ +enum class Category { + InvalidCategory = -1, + File, + Edit, + Navigation, + View, + Settings, + Help, +}; + +/** + * Returns the keybinding for @p accel. + * On X11, if QApplication was initialized with GUI disabled, the + * default keybinding will always be returned. + * @param id the id of the accelerator + */ +KCONFIGGUI_EXPORT const QList &shortcut(StandardShortcut id); + +/** + * Returns a unique name for the given accel. + * @param id the id of the accelerator + * @return the unique name of the accelerator + */ +KCONFIGGUI_EXPORT QString name(StandardShortcut id); + +/** + * Returns a localized label for user-visible display. + * @param id the id of the accelerator + * @return a localized label for the accelerator + */ +KCONFIGGUI_EXPORT QString label(StandardShortcut id); + +/** + * Returns an extended WhatsThis description for the given accelerator. + * @param id the id of the accelerator + * @return a localized description of the accelerator + */ +KCONFIGGUI_EXPORT QString whatsThis(StandardShortcut id); + +/** + * Return the StandardShortcut id of the standard accel action which + * uses this key sequence, or AccelNone if none of them do. + * This is used by class KKeyChooser. + * @param keySeq the key sequence to search + * @return the id of the standard accelerator, or AccelNone if there + * is none + */ +KCONFIGGUI_EXPORT StandardShortcut find(const QKeySequence &keySeq); + +/** + * Return the StandardShortcut id of the standard accelerator action which + * has \p name as its name, or AccelNone if none of them do. + * @param name the name as returned by name(StandardShortcut id) + * @return the id of the standard accelerator with the given name or AccelNone + * if there is no such accelerator + * @since 5.71 + */ +KCONFIGGUI_EXPORT StandardShortcut findByName(const QString &name); + +/** + * Returns the hardcoded default shortcut for @p id. + * This does not take into account the user's configuration. + * @param id the id of the accelerator + * @return the default shortcut of the accelerator + */ +KCONFIGGUI_EXPORT QList hardcodedDefaultShortcut(StandardShortcut id); + +/** + * Saves the new shortcut \a cut for standard accel \a id. + */ +KCONFIGGUI_EXPORT void saveShortcut(StandardShortcut id, const QList &newShortcut); + +/** + * Returns the appropriate category for the given StandardShortcut \p id. + * @since 5.73 + */ +KCONFIGGUI_EXPORT Category category(StandardShortcut id); + +/** + * Open file. Default: Ctrl-o + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &open(); + +/** + * Create a new document (or whatever). Default: Ctrl-n + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &openNew(); + +/** + * Close current document. Default: Ctrl-w + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &close(); + +/** + * Save current document. Default: Ctrl-s + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &save(); + +/** + * Print current document. Default: Ctrl-p + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &print(); + +/** + * Quit the program. Default: Ctrl-q + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &quit(); + +/** + * Undo last operation. Default: Ctrl-z + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &undo(); + +/** + * Redo last operation. Default: Shift-Ctrl-z + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &redo(); + +/** + * Cut selected area and store it in the clipboard. Default: Ctrl-x + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &cut(); + +/** + * Copy selected area into the clipboard. Default: Ctrl-c + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList ©(); + +/** + * Paste contents of clipboard at mouse/cursor position. Default: Ctrl-v + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &paste(); + +/** + * Paste the selection at mouse/cursor position. Default: Ctrl-Shift-Insert + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &pasteSelection(); + +/** + * Select all. Default: Ctrl-A + * @return the shortcut of the standard accelerator + **/ +KCONFIGGUI_EXPORT const QList &selectAll(); + +/** + * Delete a word back from mouse/cursor position. Default: Ctrl-Backspace + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &deleteWordBack(); + +/** + * Delete a word forward from mouse/cursor position. Default: Ctrl-Delete + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &deleteWordForward(); + +/** + * Initiate a 'find' request in the current document. Default: Ctrl-f + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &find(); + +/** + * Find the next instance of a stored 'find' Default: F3 + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &findNext(); + +/** + * Find a previous instance of a stored 'find'. Default: Shift-F3 + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &findPrev(); + +/** + * Find and replace matches. Default: Ctrl-r + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &replace(); + +/** + * Zoom in. Default: Ctrl-Plus + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &zoomIn(); + +/** + * Zoom out. Default: Ctrl-Minus + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &zoomOut(); + +/** + * Go to home page. Default: Alt-Home + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &home(); + +/** + * Go to beginning of the document. Default: Ctrl-Home + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &begin(); + +/** + * Go to end of the document. Default: Ctrl-End + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &end(); + +/** + * Go to beginning of current line. Default: Home + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &beginningOfLine(); + +/** + * Go to end of current line. Default: End + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &endOfLine(); + +/** + * Scroll up one page. Default: Prior + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &prior(); + +/** + * Scroll down one page. Default: Next + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &next(); + +/** + * Go to line. Default: Ctrl+G + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &gotoLine(); + +/** + * Add current page to bookmarks. Default: Ctrl+B + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &addBookmark(); + +/** + * Next Tab. Default: Ctrl-< + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &tabNext(); + +/** + * Previous Tab. Default: Ctrl-> + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &tabPrev(); + +/** + * Full Screen Mode. Default: Ctrl+Shift+F + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &fullScreen(); + +/** + * Help the user in the current situation. Default: F1 + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &help(); + +/** + * Complete text in input widgets. Default Ctrl+E + * @return the shortcut of the standard accelerator + **/ +KCONFIGGUI_EXPORT const QList &completion(); + +/** + * Iterate through a list when completion returns + * multiple items. Default: Ctrl+Up + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &prevCompletion(); + +/** + * Iterate through a list when completion returns + * multiple items. Default: Ctrl+Down + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &nextCompletion(); + +/** + * Find a string within another string or list of strings. + * Default: Ctrl-T + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &substringCompletion(); + +/** + * Help users iterate through a list of entries. Default: Up + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &rotateUp(); + +/** + * Help users iterate through a list of entries. Default: Down + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &rotateDown(); + +/** + * What's This button. Default: Shift+F1 + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &whatsThis(); + +/** + * Reload. Default: F5 + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &reload(); + +/** + * Up. Default: Alt+Up + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &up(); + +/** + * Back. Default: Alt+Left + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &back(); + +/** + * Forward. Default: ALT+Right + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &forward(); + +/** + * BackwardWord. Default: Ctrl+Left + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &backwardWord(); + +/** + * ForwardWord. Default: Ctrl+Right + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &forwardWord(); + +/** + * Show Menu Bar. Default: Ctrl-M + * @return the shortcut of the standard accelerator + */ +KCONFIGGUI_EXPORT const QList &showMenubar(); + +/** + * Permanently delete files or folders. Default: Shift+Delete + * @return the shortcut of the standard accelerator + * @since 5.25 + */ +KCONFIGGUI_EXPORT const QList &deleteFile(); + +/** + * Rename files or folders. Default: F2 + * @return the shortcut of the standard accelerator + * @since 5.25 + */ +KCONFIGGUI_EXPORT const QList &renameFile(); + +/** + * Create a folder. Default: Ctrl+Shift+N + * @return the shortcut of the standard accelerator + * @since 5.74 + */ +KCONFIGGUI_EXPORT const QList &createFolder(); + +/** + * Moves files or folders to the trash. Default: Delete + * @return the shortcut of the standard accelerator + * @since 5.25 + */ +KCONFIGGUI_EXPORT const QList &moveToTrash(); + +/** + * Opens the app's settings window. Default: Ctrl+Shift+Comma + * @return the shortcut of the standard accelerator + * @since 5.64 + */ +KCONFIGGUI_EXPORT const QList &preferences(); + +/** + * Shows or hides hidden files. Defaults: Ctrl+H, Alt+. + * @return the shortcut of the standard accelerator + * @since 5.70 + */ +KCONFIGGUI_EXPORT const QList &showHideHiddenFiles(); + +/** + * Open a main menu like the menu bar or a hamburger menu. + * Necessary for accessibility. Default: F10 + * @return the shortcut of the standard accelerator + * @since 6.0 + */ +KCONFIGGUI_EXPORT const QList &openMainMenu(); + +/** + * Open a context menu for the object with keyboard focus. + * Necessary for accessibility. Default: Menu, Shift+F10 + * @return the shortcut of the standard accelerator + * @since 6.0 + */ +KCONFIGGUI_EXPORT const QList &openContextMenu(); +} + +#endif // KSTANDARDSHORTCUT_H diff --git a/src/gui/kstandardshortcut_p.h b/src/gui/kstandardshortcut_p.h new file mode 100644 index 0000000..f4b0a0f --- /dev/null +++ b/src/gui/kstandardshortcut_p.h @@ -0,0 +1,20 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 1997 Stefan Taferner + SPDX-FileCopyrightText: 2000 Nicolas Hadacek + SPDX-FileCopyrightText: 2001, 2002 Ellis Whitehead + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KSTANDARDSHORTCUT_P_H +#define KSTANDARDSHORTCUT_P_H + +#include "kstandardshortcut.h" + +namespace KStandardShortcut +{ +void initialize(StandardShortcut id); +} + +#endif diff --git a/src/gui/kstandardshortcutwatcher.cpp b/src/gui/kstandardshortcutwatcher.cpp new file mode 100644 index 0000000..948842d --- /dev/null +++ b/src/gui/kstandardshortcutwatcher.cpp @@ -0,0 +1,48 @@ +/* + SPDX-FileCopyrightText: 2022 David Redondo + + SPDX-License-Identifier: LGPL-2.0-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL +*/ + +#include "kstandardshortcutwatcher.h" + +#include "kconfigwatcher.h" +#include "kstandardshortcut_p.h" + +namespace KStandardShortcut +{ +class StandardShortcutWatcherPrivate +{ +public: + KConfigWatcher::Ptr watcher = KConfigWatcher::create(KSharedConfig::openConfig()); +}; + +StandardShortcutWatcher::StandardShortcutWatcher(QObject *parent) + : QObject(parent) + , d(std::make_unique()) +{ + connect(d->watcher.get(), &KConfigWatcher::configChanged, this, [this](const KConfigGroup &group, const QByteArrayList &keys) { + if (group.name() != QStringLiteral("Shortcuts")) { + return; + } + for (const auto &key : keys) { + const StandardShortcut shortcut = KStandardShortcut::findByName(QString::fromUtf8(key)); + if (shortcut != KStandardShortcut::AccelNone) { + initialize(shortcut); + Q_EMIT shortcutChanged(shortcut, KStandardShortcut::shortcut(shortcut)); + } + } + }); +} + +StandardShortcutWatcher::~StandardShortcutWatcher() = default; + +StandardShortcutWatcher *shortcutWatcher() +{ + static StandardShortcutWatcher watcher; + return &watcher; +} + +} + +#include "moc_kstandardshortcutwatcher.cpp" diff --git a/src/gui/kstandardshortcutwatcher.h b/src/gui/kstandardshortcutwatcher.h new file mode 100644 index 0000000..a7c3d8e --- /dev/null +++ b/src/gui/kstandardshortcutwatcher.h @@ -0,0 +1,55 @@ +/* + SPDX-FileCopyrightText: 2022 David Redondo + + SPDX-License-Identifier: LGPL-2.0-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL +*/ + +#ifndef KSTANDARDSHORTCUTWATCHER_H +#define KSTANDARDSHORTCUTWATCHER_H + +#include "kstandardshortcut.h" + +#include + +#include + +#include + +namespace KStandardShortcut +{ +class StandardShortcutWatcherPrivate; + +/** + * Watches for changes made to standard shortcuts and notifies about those changes. + * @see KStandardShortcut::shortcutWatcher + * @since 5.91 + */ +class KCONFIGGUI_EXPORT StandardShortcutWatcher : public QObject +{ + Q_OBJECT +public: + ~StandardShortcutWatcher(); +Q_SIGNALS: + /** + * The standardshortcut @p id was changed to @p shortcut + */ + void shortcutChanged(KStandardShortcut::StandardShortcut id, const QList &shortcut); + +private: + KCONFIGGUI_NO_EXPORT explicit StandardShortcutWatcher(QObject *parent = nullptr); + + friend KCONFIGGUI_EXPORT StandardShortcutWatcher *shortcutWatcher(); + std::unique_ptr d; +}; + +/** + * Returns the global KStandardShortcutWatcher instance of this program. + * In addition to the notifying about changes it also keeps the information returned by the + * functions in @p KStandardShortcut up to date. + * The object is created by the first call to this function. + * @since 5.91 + */ +KCONFIGGUI_EXPORT StandardShortcutWatcher *shortcutWatcher(); +} + +#endif diff --git a/src/gui/kwindowconfig.cpp b/src/gui/kwindowconfig.cpp new file mode 100644 index 0000000..ba4149f --- /dev/null +++ b/src/gui/kwindowconfig.cpp @@ -0,0 +1,242 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2012 Benjamin Port + + SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL +*/ + +#include "kwindowconfig.h" +#include "ksharedconfig.h" + +#include +#include +#include + +static const char s_initialSizePropertyName[] = "_kconfig_initial_size"; +static const char s_initialScreenSizePropertyName[] = "_kconfig_initial_screen_size"; + +// Convenience function to get a space-separated list of all connected screens +static QString allConnectedScreens() +{ + QStringList names; + const auto screens = QGuiApplication::screens(); + names.reserve(screens.length()); + for (auto screen : screens) { + names << screen->name(); + } + // A string including the connector names is used in the config file key for + // storing per-screen-arrangement size and position data, which means we + // need this string to be consistent for the same screen arrangement. But + // connector order is non-deterministic. We need to sort the list to keep a + // consistent order and avoid losing multi-screen size and position data. + names.sort(); + return names.join(QLatin1Char(' ')); +} + +// Convenience function to return screen by its name from window screen siblings +// returns current window screen if not found +static QScreen *findScreenByName(const QWindow *window, const QString screenName) +{ + if (screenName == window->screen()->name()) { + return window->screen(); + } + for (QScreen *s : window->screen()->virtualSiblings()) { + if (s->name() == screenName) { + return s; + } + } + return window->screen(); +} + +// Convenience function to get an appropriate config file key under which to +// save window size, position, or maximization information. +static QString configFileString(const QString &key) +{ + QString returnString; + const int numberOfScreens = QGuiApplication::screens().length(); + + if (numberOfScreens == 1) { + // For single-screen setups, we save data on a per-resolution basis. + const QRect screenGeometry = QGuiApplication::primaryScreen()->geometry(); + returnString = QStringLiteral("%1x%2 screen: %3").arg(QString::number(screenGeometry.width()), QString::number(screenGeometry.height()), key); + } else { + // For multi-screen setups, we save data based on the number of screens. + // Distinguishing individual screens based on their names is unreliable + // due to name strings being inherently volatile. + returnString = QStringLiteral("%1 screens: %2").arg(QString::number(numberOfScreens), key); + } + return returnString; +} + +// Convenience function for "window is maximized" string +static QString screenMaximizedString() +{ + return configFileString(QStringLiteral("Window-Maximized")); +} +// Convenience function for window width string +static QString windowWidthString() +{ + return configFileString(QStringLiteral("Width")); +} +// Convenience function for window height string +static QString windowHeightString() +{ + return configFileString(QStringLiteral("Height")); +} +// Convenience function for window X position string +static QString windowXPositionString() +{ + return configFileString(QStringLiteral("XPosition")); +} +// Convenience function for window Y position string +static QString windowYPositionString() +{ + return configFileString(QStringLiteral("YPosition")); +} +static QString windowScreenPositionString() +{ + return QStringLiteral("%1").arg(allConnectedScreens()); +} + +void KWindowConfig::saveWindowSize(const QWindow *window, KConfigGroup &config, KConfigGroup::WriteConfigFlags options) +{ + // QWindow::screen() shouldn't return null, but it sometimes does due to bugs. + if (!window || !window->screen()) { + return; + } + const QScreen *screen = window->screen(); + + const QSize sizeToSave = window->size(); + const bool isMaximized = window->windowState() & Qt::WindowMaximized; + + // Save size only if window is not maximized + if (!isMaximized) { + const QSize defaultSize(window->property(s_initialSizePropertyName).toSize()); + const QSize defaultScreenSize(window->property(s_initialScreenSizePropertyName).toSize()); + const bool sizeValid = defaultSize.isValid() && defaultScreenSize.isValid(); + if (!sizeValid || (defaultSize != sizeToSave || defaultScreenSize != screen->geometry().size())) { + config.writeEntry(windowWidthString(), sizeToSave.width(), options); + config.writeEntry(windowHeightString(), sizeToSave.height(), options); + // Don't keep the maximized string in the file since the window is + // no longer maximized at this point + config.deleteEntry(screenMaximizedString()); + } + // Revert width and height to default if they are same as defaults + else { + config.revertToDefault(windowWidthString()); + config.revertToDefault(windowHeightString()); + } + } + if ((isMaximized == false) && !config.hasDefault(screenMaximizedString())) { + config.revertToDefault(screenMaximizedString()); + } else { + config.writeEntry(screenMaximizedString(), isMaximized, options); + } +} + +bool KWindowConfig::hasSavedWindowSize(KConfigGroup &config) +{ + return config.hasKey(windowWidthString()) || config.hasKey(windowHeightString()) || config.hasKey(screenMaximizedString()); +} + +void KWindowConfig::restoreWindowSize(QWindow *window, const KConfigGroup &config) +{ + if (!window) { + return; + } + + const QString screenName = config.readEntry(windowScreenPositionString(), window->screen()->name()); + + const int width = config.readEntry(windowWidthString(), -1); + const int height = config.readEntry(windowHeightString(), -1); + const bool isMaximized = config.readEntry(configFileString(QStringLiteral("Window-Maximized")), false); + + // Check default size + const QSize defaultSize(window->property(s_initialSizePropertyName).toSize()); + const QSize defaultScreenSize(window->property(s_initialScreenSizePropertyName).toSize()); + if (!defaultSize.isValid() || !defaultScreenSize.isValid()) { + const QScreen *screen = findScreenByName(window, screenName); + window->setProperty(s_initialSizePropertyName, window->size()); + window->setProperty(s_initialScreenSizePropertyName, screen->geometry().size()); + } + + if (width > 0 && height > 0) { + window->resize(width, height); + } + + if (isMaximized) { + window->setWindowState(Qt::WindowMaximized); + } +} + +void KWindowConfig::saveWindowPosition(const QWindow *window, KConfigGroup &config, KConfigGroup::WriteConfigFlags options) +{ + // On Wayland, the compositor is solely responsible for window positioning, + // So this needs to be a no-op + if (!window || QGuiApplication::platformName() == QLatin1String{"wayland"}) { + return; + } + + // If the window is maximized, saving the position will only serve to mis-position + // it once de-maximized, so let's not do that + if (window->windowState() & Qt::WindowMaximized) { + return; + } + + config.writeEntry(windowXPositionString(), window->x(), options); + config.writeEntry(windowYPositionString(), window->y(), options); + config.writeEntry(windowScreenPositionString(), window->screen()->name(), options); +} + +bool KWindowConfig::hasSavedWindowPosition(KConfigGroup &config) +{ + // Window position save/restore features outside of the compositor are not + // supported on Wayland + if (QGuiApplication::platformName() == QLatin1String{"wayland"}) { + return false; + } + + return config.hasKey(windowXPositionString()) || config.hasKey(windowYPositionString()) || config.hasKey(windowScreenPositionString()); +} + +void KWindowConfig::restoreWindowPosition(QWindow *window, const KConfigGroup &config) +{ + // On Wayland, the compositor is solely responsible for window positioning, + // So this needs to be a no-op + if (!window || QGuiApplication::platformName() == QLatin1String{"wayland"}) { + return; + } + + const bool isMaximized = config.readEntry(configFileString(QStringLiteral("Window-Maximized")), false); + + // Don't need to restore position if the window was maximized + if (isMaximized) { + window->setWindowState(Qt::WindowMaximized); + return; + } + + // Move window to proper screen + const QScreen *screen = window->screen(); + const QString screenName = config.readEntry(windowScreenPositionString(), screen->name()); + if (screenName != screen->name()) { + QScreen *screenConf = findScreenByName(window, screenName); + window->setScreen(screenConf); + restoreWindowScreenPosition(window, screenConf, config); + return; + } + restoreWindowScreenPosition(window, screen, config); +} + +void KWindowConfig::restoreWindowScreenPosition(QWindow *window, const QScreen *screen, const KConfigGroup &config) +{ + Q_UNUSED(screen); + const int xPos = config.readEntry(windowXPositionString(), -1); + const int yPos = config.readEntry(windowYPositionString(), -1); + + if (xPos == -1 || yPos == -1) { + return; + } + + window->setX(xPos); + window->setY(yPos); +} diff --git a/src/gui/kwindowconfig.h b/src/gui/kwindowconfig.h new file mode 100644 index 0000000..ba7f50d --- /dev/null +++ b/src/gui/kwindowconfig.h @@ -0,0 +1,119 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2012 Benjamin Port + + SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL +*/ + +#ifndef KWINDOWCONFIG_H +#define KWINDOWCONFIG_H + +#include +#include + +class QWindow; +class QScreen; + +/** + * Save and load window sizes into a config + */ +namespace KWindowConfig +{ +/** + * Saves the window's size dependent on the screen dimension either to the + * global or application config file. + * + * @note the group must be set before calling + * + * @param window The window to save size. + * @param config The config group to read from. + * @param options passed to KConfigGroup::writeEntry() + * @since 5.0 + */ +KCONFIGGUI_EXPORT void saveWindowSize(const QWindow *window, KConfigGroup &config, KConfigGroup::WriteConfigFlags options = KConfigGroup::Normal); + +/** + * Returns whether a given KConfig group has any saved window size data. + * + * @param config The config group to read from. + * @since 6.0 + */ +KCONFIGGUI_EXPORT bool hasSavedWindowSize(KConfigGroup &config); + +/** + * Restores the dialog's size from the configuration according to + * the screen size. + * + * If you're calling this from a constructor (for a mainwindow or dialog, for instance) + * you should first call winId() so that a QWindow is created, then you can call windowHandle() + * to pass to this method. + * + * Example code: + * @code + * create(); // ensure there's a window created + * const QSize availableSize = windowHandle()->screen()->availableSize(); + * windowHandle()->resize(availableSize.width() * 0.7, availableSize.height() * 0.5); // default size + * KWindowConfig::restoreWindowSize(windowHandle(), KSharedConfig::openConfig()->group("MyDialog")); + * resize(windowHandle()->size()); // workaround for QTBUG-40584 + * @endcode + * + * @note the group must be set before calling + * + * @param window The window to restore size. + * @param config The config group to read from. + * @since 5.0. + */ +KCONFIGGUI_EXPORT void restoreWindowSize(QWindow *window, const KConfigGroup &config); + +/** + * Saves the window's position either to the global or application config file. + * This function has no effect on Wayland, where the compositor is responsible + * for window positioning. + * + * @note the group must be set before calling + * + * @param window The window whose position to save. + * @param config The config group to read from. + * @param options passed to KConfigGroup::writeEntry() + * @since 5.74 + */ +KCONFIGGUI_EXPORT void saveWindowPosition(const QWindow *window, KConfigGroup &config, KConfigGroup::WriteConfigFlags options = KConfigGroup::Normal); + +/** + * Returns whether a given KConfig group has any saved window position data. + * + * @note: always returns false on Wayland where saving and restoring window + * position data is not supported. + * + * @param config The config group to read from. + * @since 6.0 + */ +KCONFIGGUI_EXPORT bool hasSavedWindowPosition(KConfigGroup &config); +/** + * Restores the window's screen position from the configuration and calls restoreWindowScreenPosition. + * This function has no effect on Wayland, where the compositor is responsible + * for window positioning. + * + * @note the group must be set before calling + * + * @param window The window whose position to restore. + * @param config The config group to read from. + * @since 5.74 + */ +KCONFIGGUI_EXPORT void restoreWindowPosition(QWindow *window, const KConfigGroup &config); + +/** + * Restores the window's position on provided screen from the configuration. + * This function has no effect on Wayland, where the compositor is responsible + * for window positioning. + * + * @note the group must be set before calling + * + * @param window The window whose position to restore. + * @param screen Screen on which window should be placed. + * @param config The config group to read from. + * @since 5.99 + */ +KCONFIGGUI_EXPORT void restoreWindowScreenPosition(QWindow *window, const QScreen *screen, const KConfigGroup &config); +} +#endif // KWINDOWCONFIG_H diff --git a/src/gui/kwindowstatesaver.cpp b/src/gui/kwindowstatesaver.cpp new file mode 100644 index 0000000..1a48afc --- /dev/null +++ b/src/gui/kwindowstatesaver.cpp @@ -0,0 +1,121 @@ +/* + SPDX-FileCopyrightText: 2022 Volker Krause + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kwindowstatesaver.h" +#include "ksharedconfig.h" +#include "kwindowconfig.h" + +#include + +class KWindowStateSaverPrivate +{ +public: + QWindow *window = nullptr; + KConfigGroup configGroup; + std::function windowHandleCallback; + int timerId = 0; + + void init(KWindowStateSaver *q); + void initWidget(QObject *widget, KWindowStateSaver *q); +}; + +void KWindowStateSaverPrivate::init(KWindowStateSaver *q) +{ + if (!window) { + return; + } + + KWindowConfig::restoreWindowSize(window, configGroup); + KWindowConfig::restoreWindowPosition(window, configGroup); + + const auto deferredSave = [q, this]() { + if (!timerId) { + timerId = q->startTimer(250); + } + }; + QObject::connect(window, &QWindow::widthChanged, q, deferredSave); + QObject::connect(window, &QWindow::heightChanged, q, deferredSave); + QObject::connect(window, &QWindow::xChanged, q, deferredSave); + QObject::connect(window, &QWindow::yChanged, q, deferredSave); +} + +void KWindowStateSaverPrivate::initWidget(QObject *widget, KWindowStateSaver *q) +{ + if (!window && windowHandleCallback) { + window = windowHandleCallback(); + } + if (window) { + init(q); + } else { + widget->installEventFilter(q); + } +} + +KWindowStateSaver::KWindowStateSaver(QWindow *window, const KConfigGroup &configGroup) + : QObject(window) + , d(new KWindowStateSaverPrivate) +{ + Q_ASSERT(window); + d->window = window; + d->configGroup = configGroup; + d->init(this); +} + +KWindowStateSaver::KWindowStateSaver(QWindow *window, const QString &configGroupName) + : QObject(window) + , d(new KWindowStateSaverPrivate) +{ + Q_ASSERT(window); + d->window = window; + d->configGroup = KConfigGroup(KSharedConfig::openStateConfig(), configGroupName); + d->init(this); +} + +KWindowStateSaver::~KWindowStateSaver() +{ + delete d; +} + +void KWindowStateSaver::timerEvent(QTimerEvent *event) +{ + killTimer(event->timerId()); + KWindowConfig::saveWindowPosition(d->window, d->configGroup); + KWindowConfig::saveWindowSize(d->window, d->configGroup); + d->configGroup.sync(); + d->timerId = 0; +} + +bool KWindowStateSaver::eventFilter(QObject *watched, QEvent *event) +{ + // QEvent::PlatformSurface would give us a valid window, but if there are + // intial resizings (explicitly or via layout constraints) those would then + // already overwrite our restored values. So wait until all that is done + // and only restore afterwards. + if (event->type() == QEvent::ShowToParent && !d->window) { + watched->removeEventFilter(this); + d->window = d->windowHandleCallback(); + d->init(this); + } + + return QObject::eventFilter(watched, event); +} + +void KWindowStateSaver::initWidget(QObject *widget, const std::function &windowHandleCallback, const KConfigGroup &configGroup) +{ + d = new KWindowStateSaverPrivate; + d->windowHandleCallback = windowHandleCallback; + d->configGroup = configGroup; + d->initWidget(widget, this); +} + +void KWindowStateSaver::initWidget(QObject *widget, const std::function &windowHandleCallback, const QString &configGroupName) +{ + d = new KWindowStateSaverPrivate; + d->windowHandleCallback = windowHandleCallback; + d->configGroup = KConfigGroup(KSharedConfig::openStateConfig(), configGroupName); + d->initWidget(widget, this); +} + +#include "moc_kwindowstatesaver.cpp" diff --git a/src/gui/kwindowstatesaver.h b/src/gui/kwindowstatesaver.h new file mode 100644 index 0000000..7801ba3 --- /dev/null +++ b/src/gui/kwindowstatesaver.h @@ -0,0 +1,117 @@ +/* + SPDX-FileCopyrightText: 2022 Volker Krause + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KWINDOWSTATESAVER_H +#define KWINDOWSTATESAVER_H + +#include +#include + +#include + +class QWindow; +class KWindowStateSaverPrivate; + +/** + * Saves and restores a window size and (when possible) position. + * + * This is useful for retrofitting persisting window geometry on existing windows or dialogs, + * without having to modify those classes themselves, or having to inherit from them. + * For this, create a new instance of KWindowStateSaver for every window that should have it's + * state persisted, and pass it the window or widget as well as the config group the state + * should be stored in. The KWindowStateSaver will restore an existing state and then monitor + * the window for subsequent changes to persist. It will delete itself once the window is + * deleted. + * + * @code + * QPrintPreviewDialog dlg = ... + * new KWindowStateSaver(&dlg, "printPreviewDialogState"); + * ... + * dlg.exec(); + * @endcode + * + * Note that freshly created top-level QWidgets (such as the dialog in the above example) + * do not have an associated QWindow yet (ie. windowHandle() return @c nullptr). KWindowStateSaver + * supports this with its QWidget constructors which will monitor the widget for having + * its associated QWindow created before continuing with that. + * + * When implementing your own windows/dialogs, using KWindowConfig directly can be an + * alternative. + * + * @see KWindowConfig + * @since 5.92 + */ +class KCONFIGGUI_EXPORT KWindowStateSaver : public QObject +{ + Q_OBJECT +public: + /** + * Create a new window state saver for @p window. + * @param configGroup A KConfigGroup that holds the window state. + */ + explicit KWindowStateSaver(QWindow *window, const KConfigGroup &configGroup); + /** + * Create a new window state saver for @p window. + * @param configGroupName The name of a KConfigGroup in the default state + * configuration (see KSharedConfig::openStateConfig) that holds the window state. + */ + explicit KWindowStateSaver(QWindow *window, const QString &configGroupName); + + /** + * Create a new window state saver for @p widget. + * Use this for widgets that aren't shown yet and would still return @c nullptr from windowHandle(). + * @param configGroup A KConfigGroup that holds the window state. + */ + template + explicit inline KWindowStateSaver(Widget *widget, const KConfigGroup &configGroup); + /** + * Create a new window state saver for @p widget. + * Use this for widgets that aren't shown yet and would still return @c nullptr from windowHandle(). + * @param configGroupName The name of a KConfigGroup in the default state + * configuration (see KSharedConfig::openStateConfig) that holds the window state. + */ + template + explicit inline KWindowStateSaver(Widget *widget, const QString &configGroupName); + + ~KWindowStateSaver(); + +private: + void timerEvent(QTimerEvent *event) override; + bool eventFilter(QObject *watched, QEvent *event) override; + + // API used by template code, so technically part of the ABI + void initWidget(QObject *widget, const std::function &windowHandleCallback, const KConfigGroup &configGroup); + void initWidget(QObject *widget, const std::function &windowHandleCallback, const QString &configGroupName); + + // cannot use std::unique_ptr due to the template ctors + // not seeing the full private class + KWindowStateSaverPrivate *d = nullptr; +}; + +template +KWindowStateSaver::KWindowStateSaver(Widget *widget, const KConfigGroup &configGroup) + : QObject(widget) +{ + initWidget( + widget, + [widget]() { + return widget->windowHandle(); + }, + configGroup); +} + +template +KWindowStateSaver::KWindowStateSaver(Widget *widget, const QString &configGroupName) + : QObject(widget) +{ + initWidget( + widget, + [widget]() { + return widget->windowHandle(); + }, + configGroupName); +} + +#endif // KWINDOWSTATESAVER_H diff --git a/src/kconf_update/CMakeLists.txt b/src/kconf_update/CMakeLists.txt new file mode 100644 index 0000000..cf0a933 --- /dev/null +++ b/src/kconf_update/CMakeLists.txt @@ -0,0 +1,20 @@ +add_executable(kconf_update kconf_update.cpp) +add_executable(KF6::kconf_update ALIAS kconf_update) + +target_compile_definitions(kconf_update PRIVATE -DCMAKE_INSTALL_FULL_LIBDIR="${CMAKE_INSTALL_FULL_LIBDIR}") +ecm_qt_declare_logging_category(kconf_update + HEADER kconf_update_debug.h + IDENTIFIER KCONF_UPDATE_LOG + CATEGORY_NAME kf.config.kconf_update + OLD_CATEGORY_NAMES kf5.kconfig.update + DESCRIPTION "kconf_update" + EXPORT KCONFIG +) + +target_link_libraries(kconf_update Qt6::Core KF6::ConfigCore) +include(ECMMarkNonGuiExecutable) +ecm_mark_nongui_executable(kconf_update) + +# Although this is mostly an internal binary (hence installing it in +# KF6_LIBEXEC_INSTALL_DIR), it is used by kded, and so we export its location +install(TARGETS kconf_update EXPORT KF6ConfigCompilerTargets DESTINATION ${KDE_INSTALL_LIBEXECDIR_KF}) diff --git a/src/kconf_update/Mainpage.dox b/src/kconf_update/Mainpage.dox new file mode 100644 index 0000000..13bc342 --- /dev/null +++ b/src/kconf_update/Mainpage.dox @@ -0,0 +1,31 @@ +/** @mainpage ./kconf_update + +kconf_update is a tool designed to update config files. Over time applications +sometimes need to rearrange the way configuration options are stored. Since +such an update shouldn't influence the configuration options that the user +has selected, the application must take care that the options stored in the +old way will still be honored. + +What used to happen is that the application looks up both the old and the +new configuration option and then decides which one to use. This method has +several drawbacks: +- The application may need to read more configuration files than strictly + needed, resulting in a slower startup. +- The application becomes bigger with code that will only be used once. + +kconf_update addresses these problems by offering a framework to update +configuration files without adding code to the application itself. + +See the README file for more information. + +@authors +Waldo Bastian \ + +@maintainers +[Unknown/None] + +@licenses +@lgpl + +*/ +// vim:ts=4:sw=4:expandtab:filetype=doxygen diff --git a/src/kconf_update/README.kconf_update b/src/kconf_update/README.kconf_update new file mode 100644 index 0000000..1a97c9e --- /dev/null +++ b/src/kconf_update/README.kconf_update @@ -0,0 +1 @@ +https://techbase.kde.org/Development/Tools/Using_kconf_update diff --git a/src/kconf_update/kconf_update.cpp b/src/kconf_update/kconf_update.cpp new file mode 100644 index 0000000..348e1c9 --- /dev/null +++ b/src/kconf_update/kconf_update.cpp @@ -0,0 +1,387 @@ +/* + This file is part of the KDE libraries + SPDX-FileCopyrightText: 2001 Waldo Bastian + + SPDX-License-Identifier: LGPL-2.0-only +*/ + +#include "kconfig_version.h" +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#include +#include +#include + +#include "kconf_update_debug.h" + +// Convenience wrapper around qCDebug to prefix the output with metadata of +// the file. +#define qCDebugFile(CATEGORY) qCDebug(CATEGORY) << m_currentFilename << ':' << m_lineCount << ":'" << m_line << "': " + +class KonfUpdate +{ +public: + KonfUpdate(QCommandLineParser *parser); + ~KonfUpdate(); + + KonfUpdate(const KonfUpdate &) = delete; + KonfUpdate &operator=(const KonfUpdate &) = delete; + + QStringList findUpdateFiles(bool dirtyOnly); + + bool updateFile(const QString &filename); + + void gotId(const QString &_id); + void gotScript(const QString &_script); + +protected: + /** kconf_updaterc */ + KConfig *m_config; + QString m_currentFilename; + bool m_skip = false; + bool m_bTestMode; + bool m_bDebugOutput; + QString m_id; + + bool m_bUseConfigInfo = false; + QStringList m_arguments; + QTextStream *m_textStream; + QFile *m_file; + QString m_line; + int m_lineCount; +}; + +KonfUpdate::KonfUpdate(QCommandLineParser *parser) + : m_textStream(nullptr) + , m_file(nullptr) + , m_lineCount(-1) +{ + bool updateAll = false; + + m_config = new KConfig(QStringLiteral("kconf_updaterc")); + KConfigGroup cg(m_config, QString()); + + QStringList updateFiles; + + m_bDebugOutput = parser->isSet(QStringLiteral("debug")); + if (m_bDebugOutput) { + // The only way to enable debug reliably is through a filter rule. + // The category itself is const, so we can't just go around changing + // its mode. This can however be overridden by the environment, so + // we'll want to have a fallback warning if debug is not enabled + // after setting the filter. + QLoggingCategory::setFilterRules(QLatin1String("%1.debug=true").arg(QLatin1String{KCONF_UPDATE_LOG().categoryName()})); + qDebug() << "Automatically enabled the debug logging category" << KCONF_UPDATE_LOG().categoryName(); + if (!KCONF_UPDATE_LOG().isDebugEnabled()) { + qWarning("The debug logging category %s needs to be enabled manually to get debug output", KCONF_UPDATE_LOG().categoryName()); + } + } + + m_bTestMode = parser->isSet(QStringLiteral("testmode")); + if (m_bTestMode) { + QStandardPaths::setTestModeEnabled(true); + } + + if (parser->isSet(QStringLiteral("check"))) { + m_bUseConfigInfo = true; + const QString file = + QStandardPaths::locate(QStandardPaths::GenericDataLocation, QLatin1String{"kconf_update/"} + parser->value(QStringLiteral("check"))); + if (file.isEmpty()) { + qWarning("File '%s' not found.", parser->value(QStringLiteral("check")).toLocal8Bit().data()); + qCDebug(KCONF_UPDATE_LOG) << "File" << parser->value(QStringLiteral("check")) << "passed on command line not found"; + return; + } + updateFiles.append(file); + } else if (!parser->positionalArguments().isEmpty()) { + updateFiles += parser->positionalArguments(); + } else if (m_bTestMode) { + qWarning("Test mode enabled, but no files given."); + return; + } else { + if (cg.readEntry("autoUpdateDisabled", false)) { + return; + } + updateFiles = findUpdateFiles(true); + updateAll = true; + } + + for (const QString &file : std::as_const(updateFiles)) { + updateFile(file); + } + + if (updateAll && !cg.readEntry("updateInfoAdded", false)) { + cg.writeEntry("updateInfoAdded", true); + updateFiles = findUpdateFiles(false); + } +} + +KonfUpdate::~KonfUpdate() +{ + delete m_config; + delete m_file; + delete m_textStream; +} + +QStringList KonfUpdate::findUpdateFiles(bool dirtyOnly) +{ + QStringList result; + + const QStringList dirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, QStringLiteral("kconf_update"), QStandardPaths::LocateDirectory); + for (const QString &d : dirs) { + const QDir dir(d); + + const QStringList fileNames = dir.entryList(QStringList(QStringLiteral("*.upd"))); + for (const QString &fileName : fileNames) { + const QString file = dir.filePath(fileName); + QFileInfo info(file); + + KConfigGroup cg(m_config, fileName); + const qint64 ctime = cg.readEntry("ctime", 0); + const qint64 mtime = cg.readEntry("mtime", 0); + const QString done = cg.readEntry("done", QString()); + if (!dirtyOnly // + || (ctime != 0 && ctime != info.birthTime().toSecsSinceEpoch()) // + || mtime != info.lastModified().toSecsSinceEpoch() // + || (mtime != 0 && done.isEmpty())) { + result.append(file); + } + } + } + return result; +} + +/** + * Syntax: + * # Comment + * Id=id + * ScriptArguments=arguments + * Script=scriptfile[,interpreter] + **/ +bool KonfUpdate::updateFile(const QString &filename) +{ + m_currentFilename = filename; + const int i = m_currentFilename.lastIndexOf(QLatin1Char{'/'}); + if (i != -1) { + m_currentFilename = m_currentFilename.mid(i + 1); + } + QFile file(filename); + if (!file.open(QIODevice::ReadOnly)) { + qWarning("Could not open update-file '%s'.", qUtf8Printable(filename)); + return false; + } + + qCDebug(KCONF_UPDATE_LOG) << "Checking update-file" << filename << "for new updates"; + + QTextStream ts(&file); + ts.setEncoding(QStringConverter::Encoding::Latin1); + m_lineCount = 0; + bool foundVersion = false; + while (!ts.atEnd()) { + m_line = ts.readLine().trimmed(); + const QLatin1String versionPrefix("Version="); + if (m_line.startsWith(versionPrefix)) { + if (m_line.mid(versionPrefix.length()) == QLatin1Char('6')) { + foundVersion = true; + continue; + } else { + qWarning(KCONF_UPDATE_LOG).noquote() << filename << "defined" << m_line << "but Version=6 was expected"; + return false; + } + } + ++m_lineCount; + if (m_line.isEmpty() || (m_line[0] == QLatin1Char('#'))) { + continue; + } + if (m_line.startsWith(QLatin1String("Id="))) { + if (!foundVersion) { + qCDebug(KCONF_UPDATE_LOG, "Missing 'Version=6', file '%s' will be skipped.", qUtf8Printable(filename)); + break; + } + gotId(m_line.mid(3)); + } else if (m_skip) { + continue; + } else if (m_line.startsWith(QLatin1String("Script="))) { + gotScript(m_line.mid(7)); + m_arguments.clear(); + } else if (m_line.startsWith(QLatin1String("ScriptArguments="))) { + const QString argLine = m_line.mid(16); + m_arguments = QProcess::splitCommand(argLine); + } else { + qCDebugFile(KCONF_UPDATE_LOG) << "Parse error"; + } + } + // Flush. + gotId(QString()); + + // Remember that this file was updated: + if (!m_bTestMode) { + QFileInfo info(filename); + KConfigGroup cg(m_config, m_currentFilename); + if (info.birthTime().isValid()) { + cg.writeEntry("ctime", info.birthTime().toSecsSinceEpoch()); + } + cg.writeEntry("mtime", info.lastModified().toSecsSinceEpoch()); + cg.sync(); + } + + return true; +} + +void KonfUpdate::gotId(const QString &_id) +{ + // Remember that the last update group has been done: + if (!m_id.isEmpty() && !m_skip && !m_bTestMode) { + KConfigGroup cg(m_config, m_currentFilename); + + QStringList ids = cg.readEntry("done", QStringList()); + if (!ids.contains(m_id)) { + ids.append(m_id); + cg.writeEntry("done", ids); + cg.sync(); + } + } + + if (_id.isEmpty()) { + return; + } + + // Check whether this update group needs to be done: + KConfigGroup cg(m_config, m_currentFilename); + QStringList ids = cg.readEntry("done", QStringList()); + if (ids.contains(_id) && !m_bUseConfigInfo) { + // qDebug("Id '%s' was already in done-list", _id.toLatin1().constData()); + m_skip = true; + return; + } + m_skip = false; + m_id = _id; + if (m_bUseConfigInfo) { + qCDebug(KCONF_UPDATE_LOG) << m_currentFilename << ": Checking update" << _id; + } else { + qCDebug(KCONF_UPDATE_LOG) << m_currentFilename << ": Found new update" << _id; + } +} + +void KonfUpdate::gotScript(const QString &_script) +{ + QString script; + QString interpreter; + const int i = _script.indexOf(QLatin1Char{','}); + if (i == -1) { + script = _script.trimmed(); + } else { + script = _script.left(i).trimmed(); + interpreter = _script.mid(i + 1).trimmed(); + } + + if (script.isEmpty()) { + qCDebugFile(KCONF_UPDATE_LOG) << "Script fails to specify filename"; + m_skip = true; + return; + } + + QString path = QStandardPaths::locate(QStandardPaths::GenericDataLocation, QLatin1String("kconf_update/") + script); + if (path.isEmpty()) { + if (interpreter.isEmpty()) { + path = QStringLiteral("%1/kconf_update_bin/%2").arg(QStringLiteral(CMAKE_INSTALL_FULL_LIBDIR), script); + if (!QFile::exists(path)) { + path = QStandardPaths::findExecutable(script); + } + } + + if (path.isEmpty()) { + qCDebugFile(KCONF_UPDATE_LOG) << "Script" << script << "not found"; + m_skip = true; + return; + } + } + + if (!m_arguments.isEmpty()) { + qCDebug(KCONF_UPDATE_LOG) << m_currentFilename << ": Running script" << script << "with arguments" << m_arguments; + } else { + qCDebug(KCONF_UPDATE_LOG) << m_currentFilename << ": Running script" << script; + } + + QStringList args; + QString cmd; + if (interpreter.isEmpty()) { + cmd = path; + } else { + QString interpreterPath = QStandardPaths::findExecutable(interpreter); + if (interpreterPath.isEmpty()) { + qCDebugFile(KCONF_UPDATE_LOG) << "Cannot find interpreter" << interpreter; + m_skip = true; + return; + } + cmd = interpreterPath; + args << path; + } + + args += m_arguments; + + int result; + qCDebug(KCONF_UPDATE_LOG) << "About to run" << cmd; + if (m_bDebugOutput) { + QFile scriptFile(path); + if (scriptFile.open(QIODevice::ReadOnly)) { + qCDebug(KCONF_UPDATE_LOG) << "Script contents is:\n" << scriptFile.readAll(); + } + } + QProcess proc; + proc.start(cmd, args); + if (!proc.waitForFinished(60000)) { + qCDebugFile(KCONF_UPDATE_LOG) << "update script did not terminate within 60 seconds:" << cmd; + m_skip = true; + return; + } + result = proc.exitCode(); + proc.close(); + + if (result != EXIT_SUCCESS) { + qCDebug(KCONF_UPDATE_LOG) << m_currentFilename << ": !! An error occurred while running" << cmd; + return; + } + + qCDebug(KCONF_UPDATE_LOG) << "Successfully ran" << cmd; +} + +int main(int argc, char **argv) +{ + QCoreApplication app(argc, argv); + app.setApplicationVersion(QStringLiteral(KCONFIG_VERSION_STRING)); + + QCommandLineParser parser; + parser.addVersionOption(); + parser.setApplicationDescription(QCoreApplication::translate("main", "KDE Tool for updating user configuration files")); + parser.addHelpOption(); + parser.addOption(QCommandLineOption(QStringList{QStringLiteral("debug")}, QCoreApplication::translate("main", "Keep output results from scripts"))); + parser.addOption(QCommandLineOption( + QStringList{QStringLiteral("testmode")}, + QCoreApplication::translate("main", "For unit tests only: do not write the done entries, so that with every re-run, the scripts are executed again"))); + parser.addOption(QCommandLineOption(QStringList{QStringLiteral("check")}, + QCoreApplication::translate("main", "Check whether config file itself requires updating"), + QStringLiteral("update-file"))); + parser.addPositionalArgument(QStringLiteral("files"), + QCoreApplication::translate("main", "File(s) to read update instructions from"), + QStringLiteral("[files...]")); + + // TODO aboutData.addAuthor(ki18n("Waldo Bastian"), KLocalizedString(), "bastian@kde.org"); + + parser.process(app); + KonfUpdate konfUpdate(&parser); + + return 0; +} diff --git a/src/kconfig_compiler/CMakeLists.txt b/src/kconfig_compiler/CMakeLists.txt new file mode 100644 index 0000000..e9cadf7 --- /dev/null +++ b/src/kconfig_compiler/CMakeLists.txt @@ -0,0 +1,28 @@ +add_executable(kconfig_compiler) + +if(CMAKE_CROSSCOMPILING) + if(BUILD_TESTING) + message(WARNING "Testing should be disabled on cross-compilation") + endif() +else() + add_executable(KF6::kconfig_compiler ALIAS kconfig_compiler) +endif() + +target_sources(kconfig_compiler PRIVATE + KConfigParameters.cpp + KConfigCodeGeneratorBase.cpp + KConfigHeaderGenerator.cpp + KConfigSourceGenerator.cpp + KConfigXmlParser.cpp + kconfig_compiler.cpp +) + +set_target_properties(kconfig_compiler PROPERTIES + OUTPUT_NAME "kconfig_compiler_kf6" +) + +target_link_libraries(kconfig_compiler Qt6::Xml) + +ecm_mark_nongui_executable(kconfig_compiler) + +install(TARGETS kconfig_compiler EXPORT KF6ConfigCompilerTargets DESTINATION ${KDE_INSTALL_LIBEXECDIR_KF}) diff --git a/src/kconfig_compiler/KConfigCodeGeneratorBase.cpp b/src/kconfig_compiler/KConfigCodeGeneratorBase.cpp new file mode 100644 index 0000000..5294b28 --- /dev/null +++ b/src/kconfig_compiler/KConfigCodeGeneratorBase.cpp @@ -0,0 +1,265 @@ +/* + This file is part of the KDE libraries. + + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + SPDX-FileCopyrightText: 2003 Zack Rusin + SPDX-FileCopyrightText: 2006 Michaël Larouche + SPDX-FileCopyrightText: 2008 Allen Winter + SPDX-FileCopyrightText: 2020 Tomaz Cananbrava + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "KConfigCodeGeneratorBase.h" + +#include +#include + +#include +#include + +#include + +KConfigCodeGeneratorBase::KConfigCodeGeneratorBase(const QString &inputFile, + const QString &baseDir, + const QString &fileName, + const KConfigParameters ¶meters, + ParseResult &parseResult) + : parseResult(parseResult) + , m_inputFile(inputFile) + , m_baseDir(baseDir) + , m_fileName(fileName) + , m_cfg(parameters) +{ + m_file.setFileName(m_fileName); + if (!m_file.open(QIODevice::WriteOnly)) { + std::cerr << "Can not open '" << qPrintable(m_fileName) << "for writing." << std::endl; + exit(1); + } + m_stream.setDevice(&m_file); + + if (m_cfg.staticAccessors) { + m_this = QStringLiteral("self()->"); + } else { + m_const = QStringLiteral(" const"); + } +} + +KConfigCodeGeneratorBase::~KConfigCodeGeneratorBase() +{ + save(); +} + +void KConfigCodeGeneratorBase::save() +{ + m_file.close(); +} + +// TODO: Remove this weird logic and adapt the testcases +void KConfigCodeGeneratorBase::indent() +{ + if (m_indentLevel >= 4) { + m_indentLevel += 2; + } else { + m_indentLevel += 4; + } +} + +void KConfigCodeGeneratorBase::unindent() +{ + if (m_indentLevel > 4) { + m_indentLevel -= 2; + } else { + m_indentLevel -= 4; + } +} + +QString KConfigCodeGeneratorBase::whitespace() const +{ + QString spaces; + for (int i = 0; i < m_indentLevel; i++) { + spaces.append(QLatin1Char(' ')); + } + return spaces; +} + +void KConfigCodeGeneratorBase::startScope() +{ + m_stream << whitespace() << QLatin1Char('{'); + m_stream << '\n'; + indent(); +} + +void KConfigCodeGeneratorBase::endScope(ScopeFinalizer finalizer) +{ + unindent(); + m_stream << whitespace() << QLatin1Char('}'); + if (finalizer == ScopeFinalizer::Semicolon) { + m_stream << ';'; + } + m_stream << '\n'; +} + +void KConfigCodeGeneratorBase::start() +{ + const QString m_fileName = QFileInfo(m_inputFile).fileName(); + m_stream << "// This file is generated by kconfig_compiler_kf6 from " << m_fileName << ".kcfg" + << ".\n"; + m_stream << "// All changes you do to this file will be lost.\n"; +} + +void KConfigCodeGeneratorBase::addHeaders(const QStringList &headerList) +{ + for (const auto &include : headerList) { + if (include.startsWith(QLatin1Char('"'))) { + m_stream << "#include " << include << '\n'; + } else { + m_stream << "#include <" << include << ">\n"; + } + } +} + +// adds as many 'namespace foo {' lines to p_out as +// there are namespaces in p_ns +void KConfigCodeGeneratorBase::beginNamespaces() +{ + if (!m_cfg.nameSpace.isEmpty()) { + const auto nameSpaceList = m_cfg.nameSpace.split(QStringLiteral("::")); + for (const QString &ns : nameSpaceList) { + m_stream << "namespace " << ns << " {\n"; + } + m_stream << '\n'; + } +} + +// adds as many '}' lines to p_out as +// there are namespaces in p_ns +void KConfigCodeGeneratorBase::endNamespaces() +{ + if (!m_cfg.nameSpace.isEmpty()) { + m_stream << '\n'; + const int namespaceCount = m_cfg.nameSpace.count(QStringLiteral("::")) + 1; + for (int i = 0; i < namespaceCount; ++i) { + m_stream << "}\n"; + } + } +} + +// returns the member accessor implementation +// which should go in the h file if inline +// or the cpp file if not inline +QString KConfigCodeGeneratorBase::memberAccessorBody(const CfgEntry *e, bool globalEnums) const +{ + QString result; + QTextStream out(&result, QIODevice::WriteOnly); + QString n = e->name; + QString t = e->type; + bool useEnumType = m_cfg.useEnumTypes && t == QLatin1String("Enum"); + + out << "return "; + if (useEnumType) { + out << "static_cast<" << enumType(e, globalEnums) << ">("; + } + out << m_this << varPath(n, m_cfg); + if (!e->param.isEmpty()) { + out << "[i]"; + } + if (useEnumType) { + out << ")"; + } + out << ";\n"; + + return result; +} + +void KConfigCodeGeneratorBase::memberImmutableBody(const CfgEntry *e, bool globalEnums) +{ + stream() << whitespace() << "return " << m_this << "isImmutable( QStringLiteral( \""; + if (!e->param.isEmpty()) { + stream() << QString(e->paramName).replace(QLatin1String("$(%1)").arg(e->param), QLatin1String("%1")) << "\" ).arg( "; + if (e->paramType == QLatin1String("Enum")) { + stream() << "QLatin1String( "; + + if (globalEnums) { + stream() << enumName(e->param) << "ToString[i]"; + } else { + stream() << enumName(e->param) << "::enumToString[i]"; + } + + stream() << " )"; + } else { + stream() << "i"; + } + stream() << " )"; + } else { + stream() << e->name << "\" )"; + } + stream() << " );\n"; +} + +void KConfigCodeGeneratorBase::createIfSetLogic(const CfgEntry *e, const QString &varExpression) +{ + const bool hasBody = !e->signalList.empty() || m_cfg.generateProperties; + + m_stream << whitespace() << "if ("; + if (hasBody) { + m_stream << "v != " << varExpression << " && "; + } + + const auto immutablefunction = immutableFunction(e->name, m_cfg.dpointer ? m_cfg.className : QString{}); + m_stream << "!" << m_this << immutablefunction << "("; + if (!e->param.isEmpty()) { + m_stream << " i "; + } + m_stream << "))"; +} + +void KConfigCodeGeneratorBase::memberMutatorBody(const CfgEntry *e) +{ + // HACK: Don't open '{' manually, use startScope / endScope to automatically handle whitespace indentation. + if (!e->min.isEmpty()) { + if (e->min != QLatin1String("0") || !isUnsigned(e->type)) { // skip writing "if uint<0" (#187579) + m_stream << whitespace() << "if (v < " << e->min << ")\n"; + m_stream << whitespace() << "{\n"; + m_stream << whitespace(); + addDebugMethod(m_stream, m_cfg, e->name); + m_stream << ": value \" << v << \" is less than the minimum value of " << e->min << "\";\n"; + m_stream << whitespace() << " v = " << e->min << ";\n"; + m_stream << whitespace() << "}\n"; + } + } + + if (!e->max.isEmpty()) { + m_stream << '\n'; + m_stream << whitespace() << "if (v > " << e->max << ")\n"; + m_stream << whitespace() << "{\n"; + m_stream << whitespace(); + addDebugMethod(m_stream, m_cfg, e->name); + m_stream << ": value \" << v << \" is greater than the maximum value of " << e->max << "\";\n"; + m_stream << whitespace() << " v = " << e->max << ";\n"; + m_stream << whitespace() << "}\n\n"; + } + + const QString varExpression = m_this + varPath(e->name, m_cfg) + (e->param.isEmpty() ? QString{} : QStringLiteral("[i]")); + + // TODO: Remove this `hasBody` logic, always use an '{' for the if. + const bool hasBody = !e->signalList.empty() || m_cfg.generateProperties; + + // m_this call creates an `if (someTest ...) that's just to long to throw over the code. + createIfSetLogic(e, varExpression); + m_stream << (hasBody ? " {" : "") << '\n'; + m_stream << whitespace() << " " << varExpression << " = v;\n"; + + const auto listSignal = e->signalList; + for (const Signal &signal : std::as_const(listSignal)) { + if (signal.modify) { + m_stream << whitespace() << " Q_EMIT " << m_this << signal.name << "();\n"; + } else { + m_stream << whitespace() << " " << m_this << varPath(QStringLiteral("settingsChanged"), m_cfg) << ".insert(" << signalEnumName(signal.name) << ");\n"; + } + } + if (hasBody) { + m_stream << whitespace() << "}\n"; + } +} diff --git a/src/kconfig_compiler/KConfigCodeGeneratorBase.h b/src/kconfig_compiler/KConfigCodeGeneratorBase.h new file mode 100644 index 0000000..69710be --- /dev/null +++ b/src/kconfig_compiler/KConfigCodeGeneratorBase.h @@ -0,0 +1,147 @@ +/* + This file is part of KDE. + + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + SPDX-FileCopyrightText: 2003 Zack Rusin + SPDX-FileCopyrightText: 2006 Michaël Larouche + SPDX-FileCopyrightText: 2008 Allen Winter + SPDX-FileCopyrightText: 2020 Tomaz Cananbrava + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGCODEGENERATORBASE_H +#define KCONFIGCODEGENERATORBASE_H + +#include +#include +#include +#include + +#include "KConfigCommonStructs.h" +#include "KConfigParameters.h" + +class CfgEntry; +struct ParseResult; + +/* This class manages the base of writing a C - Based code */ +class KConfigCodeGeneratorBase +{ +public: + enum ScopeFinalizer { + None, + Semicolon, + }; + + KConfigCodeGeneratorBase(const QString &inputFileName, // The kcfg file + const QString &baseDir, // where we should store the generated file + const QString &fileName, // the name of the generated file + const KConfigParameters ¶meters, // parameters passed to the generator + ParseResult &parseResult // The pre processed configuration entries + ); + virtual ~KConfigCodeGeneratorBase(); + + // iterates over the header list adding an #include directive. + void addHeaders(const QStringList &header); + + // Create all the namespace indentation levels based on the parsed result and parameters */ + void beginNamespaces(); + + // Closes all the namespaces adding lines with single '}' + void endNamespaces(); + + // Add the correct amount of whitespace in the code. + QString whitespace() const; + + // start a block scope `{` and increase indentation level. + void endScope(ScopeFinalizer finalizer = None); + + // end a block scope `}` and decrease indentation level. + void startScope(); + + // start writing to the output file + virtual void start(); + + // save the result on the disk + void save(); + + // Code Implementations + // Implements the `Get` methods for the CfgEntry + // TODO: write to the stream directly without returning a QString. + QString memberAccessorBody(const CfgEntry *e, bool globalEnums) const; + + // Implements the isImmutable for the CfgEntry + void memberImmutableBody(const CfgEntry *e, bool globalEnums); + + // Implements the `Set` methods for the CfgEntry + void memberMutatorBody(const CfgEntry *e); + + // This is the code that creates the logic for the Setter / Mutator. + // It *just* creates the if test, no body. The reason is that just + // the if test was more than 20 lines of code and hard to understand + // what was happening in a bigger function. + void createIfSetLogic(const CfgEntry *e, const QString &varExpression); + +protected: + /* advance the number of spaces for the indentation level */ + void indent(); + + /* reduce the number of spaces for the indentation level */ + void unindent(); + + QString inputFile() const + { + return m_inputFile; + } + QString fileName() const + { + return m_fileName; + } + QString baseDir() const + { + return m_baseDir; + } + QString This() const + { + return m_this; + } + QString Const() const + { + return m_const; + } + KConfigParameters cfg() const + { + return m_cfg; + } + + // Can't be const. + QTextStream &stream() + { + return m_stream; + } + + // HACK: This needs to be accessible because the HeaderGenerator actually modifies + // it while running. Considering that this is a the result of the xml Parse, and not + // the result of generating code, I consider this to be quite wrong - but moving the + // changes away from the header generator only created more problems and I have to + // investigate more. + ParseResult &parseResult; // the result of the parsed kcfg file + +private: + QString m_inputFile; // the base file name, input file is based on this. + + QString m_baseDir; // Where we are going to save the file + QString m_fileName; // The file name + + KConfigParameters m_cfg; // The parameters passed via the kcfgc file + QTextStream m_stream; // the stream that operates in the file to write data. + QFile m_file; // The file handler. + + // Special access to `this->` and `const` thru the code. + QString m_this; + QString m_const; + int m_indentLevel = 0; +}; + +#endif diff --git a/src/kconfig_compiler/KConfigCommonStructs.h b/src/kconfig_compiler/KConfigCommonStructs.h new file mode 100644 index 0000000..a870626 --- /dev/null +++ b/src/kconfig_compiler/KConfigCommonStructs.h @@ -0,0 +1,191 @@ +/* + This file is part of the KDE libraries. + + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + SPDX-FileCopyrightText: 2003 Zack Rusin + SPDX-FileCopyrightText: 2006 Michaël Larouche + SPDX-FileCopyrightText: 2008 Allen Winter + SPDX-FileCopyrightText: 2020 Tomaz Cananbrava + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGCOMMONSTRUCTS_H +#define KCONFIGCOMMONSTRUCTS_H + +#include +#include + +#include "KConfigParameters.h" + +struct Param { + QString name; + QString type; +}; + +struct Signal { + QString name; + QString label; + QList arguments; + bool modify = false; +}; + +class CfgEntry +{ +public: + struct Choice { + QString name; + QString context; + QString label; + QString toolTip; + QString whatsThis; + QString val; + + QString value() const + { + return !val.isEmpty() ? val : name; + } + }; + class Choices + { + public: + Choices() + { + } + Choices(const QList &d, const QString &n, const QString &p) + : prefix(p) + , choices(d) + , mName(n) + { + int i = n.indexOf(QLatin1String("::")); + if (i >= 0) { + mExternalQual = n.left(i + 2); + } + } + QString prefix; + QList choices; + const QString &name() const + { + return mName; + } + const QString &externalQualifier() const + { + return mExternalQual; + } + bool external() const + { + return !mExternalQual.isEmpty(); + } + + private: + QString mName; + QString mExternalQual; + }; + +public: + QString group; + QString parentGroup; + QString type; + QString key; + QString name; + QString labelContext; + QString label; + QString toolTipContext; + QString toolTip; + QString whatsThisContext; + QString whatsThis; + QString code; + QString defaultValue; + QString param; + QString paramName; + QString paramType; + Choices choices; + QList signalList; + QStringList paramValues; + QStringList paramDefaultValues; + int paramMax; + bool hidden; + QString min; + QString max; +}; + +struct ParseResult { + QString cfgFileName; + bool cfgFileNameArg = false; + bool cfgStateConfig = false; + QList parameters; + QList signalList; + QStringList includes; + QList entries; + bool hasNonModifySignals = false; +}; + +// TODO: Move those methods +QString enumName(const QString &n); +QString enumName(const QString &n, const CfgEntry::Choices &c); +QString param(const QString &t); +QString cppType(const QString &t); +QString itemType(const QString &type); +QString changeSignalName(const QString &n); + +QString enumType(const CfgEntry *e, bool globalEnums); + +QString getDefaultFunction(const QString &n, const QString &className = QString()); +QString setFunction(const QString &n, const QString &className = QString()); +QString getFunction(const QString &n, const QString &className = QString()); +QString immutableFunction(const QString &n, const QString &className = QString()); + +QString itemAccessorBody(const CfgEntry *e, const KConfigParameters &cfg); +QString signalEnumName(const QString &signalName); + +bool isUnsigned(const QString &type); + +// returns the name of an member variable +// use itemPath to know the full path +// like using d-> in case of dpointer +QString varName(const QString &n, const KConfigParameters &cfg); + +QString varPath(const QString &n, const KConfigParameters &cfg); + +// returns the name of an item variable +// use itemPath to know the full path +// like using d-> in case of dpointer +QString itemVar(const CfgEntry *e, const KConfigParameters &cfg); + +// returns the name of the local inner item if there is one +// (before wrapping with KConfigCompilerSignallingItem) +// Otherwise return itemVar() +QString innerItemVar(const CfgEntry *e, const KConfigParameters &cfg); + +QString itemPath(const CfgEntry *e, const KConfigParameters &cfg); + +QString filenameOnly(const QString &path); + +QString itemDeclaration(const CfgEntry *e, const KConfigParameters &cfg); + +QString translatedString(const KConfigParameters &cfg, + const QString &string, + const QString &context = QString(), + const QString ¶m = QString(), + const QString ¶mValue = QString()); + +// TODO: Sanitize those functions. +QString newItem(const CfgEntry *entry, const QString &key, const QString &defaultValue, const KConfigParameters &cfg, const QString ¶m = QString()); + +QString newInnerItem(const CfgEntry *entry, const QString &key, const QString &defaultValue, const KConfigParameters &cfg, const QString ¶m = QString()); + +QString userTextsFunctions(const CfgEntry *e, const KConfigParameters &cfg, QString itemVarStr = QString(), const QString &i = QString()); + +QString paramString(const QString &s, const CfgEntry *e, int i); +QString paramString(const QString &group, const QList ¶meters); + +QString defaultValue(const QString &t); +QString memberGetDefaultBody(const CfgEntry *e); +QString literalString(const QString &s); +QString enumTypeQualifier(const QString &n, const CfgEntry::Choices &c); + +void addQuotes(QString &s); +void addDebugMethod(QTextStream &out, const KConfigParameters &cfg, const QString &n); + +#endif diff --git a/src/kconfig_compiler/KConfigHeaderGenerator.cpp b/src/kconfig_compiler/KConfigHeaderGenerator.cpp new file mode 100644 index 0000000..15a7754 --- /dev/null +++ b/src/kconfig_compiler/KConfigHeaderGenerator.cpp @@ -0,0 +1,659 @@ +/* + This file is part of the KDE libraries. + + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + SPDX-FileCopyrightText: 2003 Zack Rusin + SPDX-FileCopyrightText: 2006 Michaël Larouche + SPDX-FileCopyrightText: 2008 Allen Winter + SPDX-FileCopyrightText: 2020 Tomaz Cananbrava + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "KConfigHeaderGenerator.h" + +#include +#include +#include + +KConfigHeaderGenerator::KConfigHeaderGenerator(const QString &inputFile, const QString &baseDir, const KConfigParameters &cfg, ParseResult &result) + : KConfigCodeGeneratorBase(inputFile, baseDir, baseDir + cfg.baseName + QLatin1Char('.') + cfg.headerExtension, cfg, result) +{ +} + +void KConfigHeaderGenerator::start() +{ + KConfigCodeGeneratorBase::start(); + startHeaderGuards(); + createHeaders(); + + beginNamespaces(); + + createForwardDeclarations(); + + doClassDefinition(); + + endNamespaces(); + endHeaderGuards(); +} + +void KConfigHeaderGenerator::doClassDefinition() +{ + stream() << "class " << cfg().visibility << cfg().className << " : public " << cfg().inherits << '\n'; + startScope(); + + // Add Q_OBJECT macro if the config need signals. + if (!parseResult.signalList.isEmpty() || cfg().generateProperties) { + stream() << " Q_OBJECT\n"; + } + + if (cfg().qmlRegistration) { + stream() << " QML_ELEMENT\n"; + + if (cfg().singleton) { + stream() << " QML_SINGLETON\n"; + } + } + stream() << " public:\n"; + implementEnums(); + createConstructor(); + createDestructor(); + + for (const auto *entry : std::as_const(parseResult.entries)) { + const QString returnType = (cfg().useEnumTypes && entry->type == QLatin1String("Enum")) ? enumType(entry, cfg().globalEnums) : cppType(entry->type); + + createSetters(entry); + createProperties(entry, returnType); + createImmutableProperty(entry); + createGetters(entry, returnType); + createImmutableGetters(entry); + createDefaultValueMember(entry); + createItemAcessors(entry, returnType); + } + + createSignals(); + stream() << " protected:\n"; + createSingleton(); + + // TODO: Move those to functions too. + if (parseResult.hasNonModifySignals) { + stream() << whitespace() << "bool usrSave() override;\n"; + } + + // Member variables + if (!cfg().memberVariables.isEmpty() // + && cfg().memberVariables != QLatin1String("private") // + && cfg().memberVariables != QLatin1String("dpointer")) { + stream() << " " << cfg().memberVariables << ":\n"; + } + + // Class Parameters + for (const auto ¶meter : std::as_const(parseResult.parameters)) { + stream() << whitespace() << "" << cppType(parameter.type) << " mParam" << parameter.name << ";\n"; + } + + createNonDPointerHelpers(); + createDPointer(); + + if (cfg().customAddons) { + stream() << whitespace() << "// Include custom additions\n"; + stream() << whitespace() << "#include \"" << cfg().baseName << "_addons." << cfg().headerExtension << "\"\n"; + } + + endScope(ScopeFinalizer::Semicolon); +} + +void KConfigHeaderGenerator::createHeaders() +{ + addHeaders(cfg().headerIncludes); + if (cfg().headerIncludes.size()) { + stream() << '\n'; + } + + if (!cfg().singleton && parseResult.parameters.isEmpty()) { + addHeaders({QStringLiteral("qglobal.h")}); + } + + if (cfg().inherits == QLatin1String("KCoreConfigSkeleton")) { + addHeaders({QStringLiteral("kcoreconfigskeleton.h")}); + } else { + addHeaders({QStringLiteral("kconfigskeleton.h")}); + } + + addHeaders({QStringLiteral("QCoreApplication"), QStringLiteral("QDebug")}); + if (!cfg().dpointer && parseResult.hasNonModifySignals) { + addHeaders({QStringLiteral("QSet")}); + } + + if (cfg().qmlRegistration) { + addHeaders({QStringLiteral("qqmlintegration.h")}); + } + + stream() << '\n'; + + addHeaders(parseResult.includes); + if (parseResult.includes.size()) { + stream() << '\n'; + } +} + +void KConfigHeaderGenerator::startHeaderGuards() +{ + const bool hasNamespace = !cfg().nameSpace.isEmpty(); + const QString namespaceName = QString(QString(cfg().nameSpace).replace(QLatin1String("::"), QLatin1String("_"))).toUpper(); + const QString namespaceStr = hasNamespace ? namespaceName + QLatin1Char('_') : QString{}; + const QString defineName = namespaceStr + cfg().className.toUpper() + QStringLiteral("_H"); + + stream() << "#ifndef " << defineName << '\n'; + stream() << "#define " << defineName << '\n'; + stream() << '\n'; +} + +void KConfigHeaderGenerator::endHeaderGuards() +{ + stream() << '\n'; + stream() << "#endif"; + stream() << '\n'; + // HACK: Original files ended with two last newlines, add them. + stream() << '\n'; +} + +void KConfigHeaderGenerator::implementChoiceEnums(const CfgEntry *entry, const CfgEntry::Choices &choices) +{ + const QList chlist = choices.choices; + + if (chlist.isEmpty()) { + return; + } + + QStringList values; + for (const auto &choice : std::as_const(chlist)) { + values.append(choices.prefix + choice.name); + } + + if (choices.name().isEmpty()) { + if (cfg().globalEnums) { + stream() << whitespace() << "enum " << enumName(entry->name, entry->choices) << " { " << values.join(QStringLiteral(", ")) << " };\n"; + if (cfg().generateProperties) { + stream() << whitespace() << "Q_ENUM(" << enumName(entry->name, entry->choices) << ")\n"; + } + } else { + // Create an automatically named enum + stream() << whitespace() << "class " << enumName(entry->name, entry->choices) << '\n'; + stream() << whitespace() << "{\n"; + stream() << whitespace() << " public:\n"; + stream() << whitespace() << " enum type { " << values.join(QStringLiteral(", ")) << ", COUNT };\n"; + stream() << whitespace() << "};\n"; + } + } else if (!choices.external()) { + // Create a named enum + stream() << whitespace() << "enum " << enumName(entry->name, entry->choices) << " { " << values.join(QStringLiteral(", ")) << " };\n"; + } +} + +void KConfigHeaderGenerator::implementValueEnums(const CfgEntry *entry, const QStringList &values) +{ + if (values.isEmpty()) { + return; + } + + if (cfg().globalEnums) { + // ### FIXME!! + // make the following string table an index-based string search! + // ### + stream() << whitespace() << "enum " << enumName(entry->param) << " { " << values.join(QStringLiteral(", ")) << " };\n"; + stream() << whitespace() << "static const char* const " << enumName(entry->param) << "ToString[];\n"; + } else { + stream() << whitespace() << "class " << enumName(entry->param) << '\n'; + stream() << whitespace() << "{\n"; + stream() << whitespace() << " public:\n"; + stream() << whitespace() << " enum type { " << values.join(QStringLiteral(", ")) << ", COUNT };\n"; + stream() << whitespace() << " static const char* const enumToString[];\n"; + stream() << whitespace() << "};\n"; + } +} + +void KConfigHeaderGenerator::implementEnums() +{ + if (!parseResult.entries.size()) { + return; + } + + for (const auto *entry : std::as_const(parseResult.entries)) { + const CfgEntry::Choices &choices = entry->choices; + const QStringList values = entry->paramValues; + + implementChoiceEnums(entry, choices); + implementValueEnums(entry, values); + } + stream() << '\n'; +} + +void KConfigHeaderGenerator::createSignals() +{ + // Signal definition. + if (parseResult.signalList.isEmpty()) { + return; + } + + stream() << "\n enum {\n"; + + // HACK: Use C-Style for add a comma in all but the last element, + // just to make the source generated code equal to the old one. + // When we are sure, revert this to a range-based-for and just add + // a last comma, as it's valid c++. + for (int i = 0, end = parseResult.signalList.size(); i < end; i++) { + auto signal = parseResult.signalList.at(i); + stream() << whitespace() << " " << signalEnumName(signal.name) << " = " << (i + 1); + if (i != end - 1) { + stream() << ",\n"; + } + } + stream() << '\n'; + stream() << whitespace() << "};\n\n"; + + stream() << " Q_SIGNALS:"; + for (const Signal &signal : std::as_const(parseResult.signalList)) { + stream() << '\n'; + if (!signal.label.isEmpty()) { + stream() << whitespace() << "/**\n"; + stream() << whitespace() << " " << signal.label << '\n'; + stream() << whitespace() << "*/\n"; + } + stream() << whitespace() << "void " << signal.name << "("; + + auto it = signal.arguments.cbegin(); + const auto itEnd = signal.arguments.cend(); + while (it != itEnd) { + Param argument = *it; + QString type = param(argument.type); + if (cfg().useEnumTypes && argument.type == QLatin1String("Enum")) { + for (const auto *entry : std::as_const(parseResult.entries)) { + if (entry->name == argument.name) { + type = enumType(entry, cfg().globalEnums); + break; + } + } + } + stream() << type << " " << argument.name; + if (++it != itEnd) { + stream() << ", "; + } + } + stream() << ");\n"; + } + stream() << '\n'; + + stream() << " private:\n"; + stream() << whitespace() << "void itemChanged(quint64 signalFlag);\n"; + stream() << '\n'; +} + +void KConfigHeaderGenerator::createDPointer() +{ + if (!cfg().dpointer) { + return; + } + + // use a private class for both member variables and items + stream() << " private:\n"; + for (const auto *entry : std::as_const(parseResult.entries)) { + if (cfg().allDefaultGetters || cfg().defaultGetters.contains(entry->name)) { + stream() << whitespace() << ""; + if (cfg().staticAccessors) { + stream() << "static "; + } + stream() << cppType(entry->type) << " " << getDefaultFunction(entry->name) << "_helper("; + if (!entry->param.isEmpty()) { + stream() << " " << cppType(entry->paramType) << " i "; + } + stream() << ")" << Const() << ";\n"; + } + } + stream() << whitespace() << "" << cfg().className << "Private *d;\n"; +} + +void KConfigHeaderGenerator::createConstructor() +{ + if (cfg().singleton) { + stream() << whitespace() << "static " << cfg().className << " *self();\n"; + + if (cfg().qmlRegistration) { + stream() << whitespace() << "static " << cfg().className << " *create(QQmlEngine *, QJSEngine *);\n"; + } + + if (parseResult.cfgFileNameArg) { + stream() << whitespace() << "static void instance(const QString& cfgfilename);\n"; + stream() << whitespace() << "static void instance(KSharedConfig::Ptr config);\n"; + } + return; + } + + stream() << whitespace() << "" << cfg().className << "("; + if (parseResult.cfgFileNameArg) { + if (cfg().forceStringFilename) { + stream() << " const QString &cfgfilename" << (parseResult.parameters.isEmpty() ? " = QString()" : ", "); + } else if (parseResult.cfgStateConfig) { + stream() << " KSharedConfig::Ptr config" << (parseResult.parameters.isEmpty() ? " = KSharedConfig::openStateConfig()" : ", "); + } else { + stream() << " KSharedConfig::Ptr config" << (parseResult.parameters.isEmpty() ? " = KSharedConfig::openConfig()" : ", "); + } + } + if (cfg().forceStringFilename && parseResult.cfgStateConfig) { + std::cerr << "One can not use ForceStringFilename and use the stateConfig attribute, consider " + "removing the ForceStringFilename kcfgc option if you want to use state data" + << std::endl; + } + + bool first = true; + for (const auto ¶meter : std::as_const(parseResult.parameters)) { + if (first) { + first = false; + } else { + stream() << ","; + } + + stream() << " " << param(parameter.type) << " " << parameter.name; + } + + if (cfg().parentInConstructor) { + if (parseResult.cfgFileNameArg || !parseResult.parameters.isEmpty()) { + stream() << ","; + } + stream() << " QObject *parent = nullptr"; + } + stream() << " );\n"; +} + +void KConfigHeaderGenerator::createDestructor() +{ + stream() << whitespace() << "~" << cfg().className << "() override;\n\n"; +} + +void KConfigHeaderGenerator::createForwardDeclarations() +{ + // Private class declaration + if (cfg().dpointer) { + stream() << "class " << cfg().className << "Private;\n\n"; + } + + if (cfg().qmlRegistration && cfg().singleton) { + stream() << "class QQmlEngine;\n"; + stream() << "class QJSEngine;\n\n"; + } +} + +void KConfigHeaderGenerator::createProperties(const CfgEntry *entry, const QString &returnType) +{ + if (!cfg().generateProperties) { + return; + } + stream() << whitespace() << "Q_PROPERTY(" << returnType << ' ' << getFunction(entry->name); + stream() << " READ " << getFunction(entry->name); + + if (cfg().allMutators || cfg().mutators.contains(entry->name)) { + const QString signal = changeSignalName(entry->name); + stream() << " WRITE " << setFunction(entry->name); + stream() << " NOTIFY " << signal; + + // If we have the modified signal, we'll also need + // the changed signal as well + Signal s; + s.name = signal; + s.modify = true; + parseResult.signalList.append(s); + } else { + stream() << " CONSTANT"; + } + stream() << ")\n"; +} + +void KConfigHeaderGenerator::createImmutableProperty(const CfgEntry *entry) +{ + if (!cfg().generateProperties) { + return; + } + stream() << whitespace(); + stream() << "Q_PROPERTY(bool " << immutableFunction(entry->name); + stream() << " READ " << immutableFunction(entry->name); + stream() << " CONSTANT)\n"; +} + +void KConfigHeaderGenerator::createSetters(const CfgEntry *entry) +{ + // Manipulator + if (!cfg().allMutators && !cfg().mutators.contains(entry->name)) { + return; + } + + stream() << whitespace() << "/**\n"; + stream() << whitespace() << " Set " << entry->label << '\n'; + stream() << whitespace() << "*/\n"; + + if (cfg().staticAccessors) { + stream() << whitespace() << "static\n"; + } + + stream() << whitespace() << "void " << setFunction(entry->name) << "( "; + if (!entry->param.isEmpty()) { + stream() << cppType(entry->paramType) << " i, "; + } + + stream() << (cfg().useEnumTypes && entry->type == QLatin1String("Enum") ? enumType(entry, cfg().globalEnums) : param(entry->type)); + + stream() << " v )"; + + // function body inline only if not using dpointer + // for BC mode + if (!cfg().dpointer) { + stream() << '\n'; + startScope(); + memberMutatorBody(entry); + endScope(); + stream() << '\n'; + } else { + stream() << ";\n\n"; + } +} + +void KConfigHeaderGenerator::createGetters(const CfgEntry *entry, const QString &returnType) +{ + // Accessor + stream() << whitespace() << "/**\n"; + stream() << whitespace() << " Get " << entry->label << '\n'; + stream() << whitespace() << "*/\n"; + if (cfg().staticAccessors) { + stream() << whitespace() << "static\n"; + } + stream() << whitespace() << ""; + stream() << returnType; + stream() << " " << getFunction(entry->name) << "("; + if (!entry->param.isEmpty()) { + stream() << " " << cppType(entry->paramType) << " i "; + } + stream() << ")" << Const(); + + // function body inline only if not using dpointer + // for BC mode + if (!cfg().dpointer) { + stream() << '\n'; + startScope(); + stream() << whitespace() << memberAccessorBody(entry, cfg().globalEnums); + endScope(); + stream() << '\n'; + } else { + stream() << ";\n\n"; + } +} + +void KConfigHeaderGenerator::createImmutableGetters(const CfgEntry *entry) +{ + stream() << whitespace() << "/**\n"; + stream() << whitespace() << " Is " << entry->label << " Immutable\n"; + stream() << whitespace() << "*/\n"; + // Immutable + if (cfg().staticAccessors) { + stream() << whitespace() << "static\n"; + } + stream() << whitespace() << ""; + stream() << "bool " << immutableFunction(entry->name) << "("; + if (!entry->param.isEmpty()) { + stream() << " " << cppType(entry->paramType) << " i "; + } + stream() << ")" << Const(); + // function body inline only if not using dpointer + // for BC mode + if (!cfg().dpointer) { + stream() << '\n'; + startScope(); + memberImmutableBody(entry, cfg().globalEnums); + endScope(); + stream() << '\n'; + } else { + stream() << ";\n\n"; + } +} + +void KConfigHeaderGenerator::createItemAcessors(const CfgEntry *entry, const QString &returnType) +{ + Q_UNUSED(returnType) + + // Item accessor + if (!cfg().itemAccessors) { + return; + } + + const QString declType = entry->signalList.isEmpty() ? QStringLiteral("Item") + itemType(entry->type) : QStringLiteral("KConfigCompilerSignallingItem"); + + stream() << whitespace() << "/**\n"; + stream() << whitespace() << " Get Item object corresponding to " << entry->name << "()" << '\n'; + stream() << whitespace() << "*/\n"; + stream() << whitespace() << declType << " *" << getFunction(entry->name) << "Item("; + if (!entry->param.isEmpty()) { + stream() << " " << cppType(entry->paramType) << " i "; + } + stream() << ")"; + if (!cfg().dpointer) { + stream() << '\n'; + startScope(); + stream() << whitespace() << itemAccessorBody(entry, cfg()); + endScope(); + } else { + stream() << ";\n"; + } + + stream() << '\n'; +} + +void KConfigHeaderGenerator::createDefaultValueMember(const CfgEntry *entry) +{ + // Default value Accessor + if (!((cfg().allDefaultGetters || cfg().defaultGetters.contains(entry->name)) && !entry->defaultValue.isEmpty())) { + return; + } + stream() << whitespace() << "/**\n"; + stream() << whitespace() << " Get " << entry->label << " default value\n"; + stream() << whitespace() << "*/\n"; + if (cfg().staticAccessors) { + stream() << whitespace() << "static\n"; + } + stream() << whitespace() << ""; + if (cfg().useEnumTypes && entry->type == QLatin1String("Enum")) { + stream() << enumType(entry, cfg().globalEnums); + } else { + stream() << cppType(entry->type); + } + stream() << " " << getDefaultFunction(entry->name) << "("; + if (!entry->param.isEmpty()) { + stream() << " " << cppType(entry->paramType) << " i "; + } + stream() << ")" << Const() << '\n'; + stream() << whitespace() << "{\n"; + stream() << whitespace() << " return "; + if (cfg().useEnumTypes && entry->type == QLatin1String("Enum")) { + stream() << "static_cast<" << enumType(entry, cfg().globalEnums) << ">("; + } + stream() << getDefaultFunction(entry->name) << "_helper("; + if (!entry->param.isEmpty()) { + stream() << " i "; + } + stream() << ")"; + if (cfg().useEnumTypes && entry->type == QLatin1String("Enum")) { + stream() << ")"; + } + stream() << ";\n"; + stream() << whitespace() << "}\n"; + stream() << '\n'; +} + +void KConfigHeaderGenerator::createSingleton() +{ + // Private constructor for singleton + if (!cfg().singleton) { + return; + } + + stream() << whitespace() << "" << cfg().className << "("; + if (parseResult.cfgFileNameArg) { + stream() << "KSharedConfig::Ptr config"; + } + if (cfg().parentInConstructor) { + if (parseResult.cfgFileNameArg) { + stream() << ", "; + } + stream() << "QObject *parent = nullptr"; + } + stream() << ");\n"; + stream() << whitespace() << "friend class " << cfg().className << "Helper;\n\n"; +} + +void KConfigHeaderGenerator::createNonDPointerHelpers() +{ + if (cfg().memberVariables == QLatin1String("dpointer")) { + return; + } + + QString group; + for (const auto *entry : std::as_const(parseResult.entries)) { + if (entry->group != group) { + group = entry->group; + stream() << '\n'; + stream() << whitespace() << "// " << group << '\n'; + } + stream() << whitespace() << "" << cppType(entry->type) << " " << varName(entry->name, cfg()); + if (!entry->param.isEmpty()) { + stream() << QStringLiteral("[%1]").arg(entry->paramMax + 1); + } + stream() << ";\n"; + + if (cfg().allDefaultGetters || cfg().defaultGetters.contains(entry->name)) { + stream() << whitespace() << ""; + if (cfg().staticAccessors) { + stream() << "static "; + } + stream() << cppType(entry->type) << " " << getDefaultFunction(entry->name) << "_helper("; + if (!entry->param.isEmpty()) { + stream() << " " << cppType(entry->paramType) << " i "; + } + stream() << ")" << Const() << ";\n"; + } + } + + stream() << "\n private:\n"; + if (cfg().itemAccessors) { + for (const auto *entry : std::as_const(parseResult.entries)) { + const QString declType = + entry->signalList.isEmpty() ? QStringLiteral("Item") + itemType(entry->type) : QStringLiteral("KConfigCompilerSignallingItem"); + stream() << whitespace() << declType << " *" << itemVar(entry, cfg()); + if (!entry->param.isEmpty()) { + stream() << QStringLiteral("[%1]").arg(entry->paramMax + 1); + } + stream() << ";\n"; + } + } + + if (parseResult.hasNonModifySignals) { + stream() << whitespace() << "QSet " << varName(QStringLiteral("settingsChanged"), cfg()) << ";\n"; + } +} diff --git a/src/kconfig_compiler/KConfigHeaderGenerator.h b/src/kconfig_compiler/KConfigHeaderGenerator.h new file mode 100644 index 0000000..4c2e456 --- /dev/null +++ b/src/kconfig_compiler/KConfigHeaderGenerator.h @@ -0,0 +1,63 @@ +/* + This file is part of KDE. + + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + SPDX-FileCopyrightText: 2003 Zack Rusin + SPDX-FileCopyrightText: 2006 Michaël Larouche + SPDX-FileCopyrightText: 2008 Allen Winter + SPDX-FileCopyrightText: 2020 Tomaz Cananbrava + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGHEADERGENERATOR_H +#define KCONFIGHEADERGENERATOR_H + +#include "KConfigCodeGeneratorBase.h" +#include "KConfigCommonStructs.h" + +#include +#include + +class KConfigParameters; +class CfgEntry; +class QTextStream; +struct ParseResult; + +class KConfigHeaderGenerator : public KConfigCodeGeneratorBase +{ +public: + KConfigHeaderGenerator(const QString &inputFile, const QString &baseDir, const KConfigParameters ¶meters, ParseResult &parseResult); + + void start() override; + +private: + void startHeaderGuards(); + void endHeaderGuards(); + + void implementEnums(); + void implementChoiceEnums(const CfgEntry *entry, const CfgEntry::Choices &choices); + void implementValueEnums(const CfgEntry *entry, const QStringList &values); + + void doClassDefinition(); + void createHeaders(); + void createDPointer(); + void createNonDPointerHelpers(); + + void createConstructor(); + void createDestructor(); + void createForwardDeclarations(); + void createSingleton(); + void createSignals(); + + void createSetters(const CfgEntry *entry); + void createItemAcessors(const CfgEntry *entry, const QString &returnType); + void createGetters(const CfgEntry *entry, const QString &returnType); + void createImmutableGetters(const CfgEntry *entry); + void createProperties(const CfgEntry *entry, const QString &returnType); + void createImmutableProperty(const CfgEntry *entry); + void createDefaultValueMember(const CfgEntry *entry); +}; + +#endif diff --git a/src/kconfig_compiler/KConfigParameters.cpp b/src/kconfig_compiler/KConfigParameters.cpp new file mode 100644 index 0000000..ae09dfa --- /dev/null +++ b/src/kconfig_compiler/KConfigParameters.cpp @@ -0,0 +1,81 @@ +/* + This file is part of the KDE libraries. + + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + SPDX-FileCopyrightText: 2003 Zack Rusin + SPDX-FileCopyrightText: 2006 Michaël Larouche + SPDX-FileCopyrightText: 2008 Allen Winter + SPDX-FileCopyrightText: 2020 Tomaz Cananbrava + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "KConfigParameters.h" + +#include +#include + +#include + +KConfigParameters::KConfigParameters(const QString &codegenFilename) +{ + if (!codegenFilename.endsWith(QLatin1String(".kcfgc"))) { + std::cerr << "Codegen options file must have extension .kcfgc" << std::endl; + exit(1); + } + + baseName = QFileInfo(codegenFilename).fileName(); + baseName = baseName.left(baseName.length() - 6); + + // Configure the compiler with some settings + QSettings codegenConfig(codegenFilename, QSettings::IniFormat); + + nameSpace = codegenConfig.value(QStringLiteral("NameSpace")).toString(); + className = codegenConfig.value(QStringLiteral("ClassName")).toString(); + if (className.isEmpty()) { + std::cerr << "Class name missing" << std::endl; + exit(1); + } + inherits = codegenConfig.value(QStringLiteral("Inherits")).toString(); + if (inherits.isEmpty()) { + inherits = QStringLiteral("KConfigSkeleton"); + } + visibility = codegenConfig.value(QStringLiteral("Visibility")).toString(); + if (!visibility.isEmpty()) { + visibility += QLatin1Char(' '); + } + parentInConstructor = codegenConfig.value(QStringLiteral("ParentInConstructor"), false).toBool(); + forceStringFilename = codegenConfig.value(QStringLiteral("ForceStringFilename"), false).toBool(); + singleton = codegenConfig.value(QStringLiteral("Singleton"), false).toBool(); + staticAccessors = singleton; + customAddons = codegenConfig.value(QStringLiteral("CustomAdditions"), false).toBool(); + memberVariables = codegenConfig.value(QStringLiteral("MemberVariables")).toString(); + dpointer = (memberVariables == QLatin1String("dpointer")); + headerIncludes = codegenConfig.value(QStringLiteral("IncludeFiles"), QStringList()).toStringList(); + sourceIncludes = codegenConfig.value(QStringLiteral("SourceIncludeFiles"), QStringList()).toStringList(); + mutators = codegenConfig.value(QStringLiteral("Mutators"), QStringList()).toStringList(); + allMutators = ((mutators.count() == 1) && (mutators.at(0).toLower() == QLatin1String("true"))); + itemAccessors = codegenConfig.value(QStringLiteral("ItemAccessors"), false).toBool(); + setUserTexts = codegenConfig.value(QStringLiteral("SetUserTexts"), false).toBool(); + defaultGetters = codegenConfig.value(QStringLiteral("DefaultValueGetters"), QStringList()).toStringList(); + allDefaultGetters = (defaultGetters.count() == 1) && (defaultGetters.at(0).toLower() == QLatin1String("true")); + notifiers = codegenConfig.value(QStringLiteral("Notifiers"), QStringList()).toStringList(); + allNotifiers = ((notifiers.count() == 1) && (notifiers.at(0).toLower() == QLatin1String("true"))); + globalEnums = codegenConfig.value(QStringLiteral("GlobalEnums"), false).toBool(); + useEnumTypes = codegenConfig.value(QStringLiteral("UseEnumTypes"), false).toBool(); + const QString trString = codegenConfig.value(QStringLiteral("TranslationSystem")).toString().toLower(); + generateProperties = codegenConfig.value(QStringLiteral("GenerateProperties"), false).toBool(); + if (trString == QLatin1String("kde")) { + translationSystem = KdeTranslation; + translationDomain = codegenConfig.value(QStringLiteral("TranslationDomain")).toString(); + } else { + if (!trString.isEmpty() && trString != QLatin1String("qt")) { + std::cerr << "Unknown translation system, falling back to Qt tr()" << std::endl; + } + translationSystem = QtTranslation; + } + qCategoryLoggingName = codegenConfig.value(QStringLiteral("CategoryLoggingName"), QString()).toString(); + headerExtension = codegenConfig.value(QStringLiteral("HeaderExtension"), QStringLiteral("h")).toString(); + qmlRegistration = codegenConfig.value(QStringLiteral("QmlRegistration")).toBool(); +} diff --git a/src/kconfig_compiler/KConfigParameters.h b/src/kconfig_compiler/KConfigParameters.h new file mode 100644 index 0000000..8537909 --- /dev/null +++ b/src/kconfig_compiler/KConfigParameters.h @@ -0,0 +1,68 @@ +/* + This file is part of KDE. + + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + SPDX-FileCopyrightText: 2003 Zack Rusin + SPDX-FileCopyrightText: 2006 Michaël Larouche + SPDX-FileCopyrightText: 2008 Allen Winter + SPDX-FileCopyrightText: 2020 Tomaz Cananbrava + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGXTPARAMETERS_H +#define KCONFIGXTPARAMETERS_H + +#include +#include +#include + +/** + Configuration Compiler Configuration +*/ +class KConfigParameters +{ +public: + KConfigParameters(const QString &codegenFilename); + +public: + enum TranslationSystem { + QtTranslation, + KdeTranslation, + }; + + // These are read from the .kcfgc configuration file + QString nameSpace; // The namespace for the class to be generated + QString className; // The class name to be generated + QString inherits; // The class the generated class inherits (if empty, from KConfigSkeleton) + QString visibility; + bool parentInConstructor; // The class has the optional parent parameter in its constructor + bool forceStringFilename; + bool singleton; // The class will be a singleton + bool staticAccessors; // provide or not static accessors + bool customAddons; + QString memberVariables; + QStringList headerIncludes; + QStringList sourceIncludes; + QStringList mutators; + QStringList defaultGetters; + QStringList notifiers; + QString qCategoryLoggingName; + QString headerExtension; + bool allMutators; + bool setUserTexts; + bool allDefaultGetters; + bool dpointer; + bool globalEnums; + bool useEnumTypes; + bool itemAccessors; + bool allNotifiers; + TranslationSystem translationSystem; + QString translationDomain; + bool generateProperties; + QString baseName; + bool qmlRegistration; +}; + +#endif diff --git a/src/kconfig_compiler/KConfigSourceGenerator.cpp b/src/kconfig_compiler/KConfigSourceGenerator.cpp new file mode 100644 index 0000000..f1e0843 --- /dev/null +++ b/src/kconfig_compiler/KConfigSourceGenerator.cpp @@ -0,0 +1,718 @@ +/* + This file is part of the KDE libraries + + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + SPDX-FileCopyrightText: 2003 Zack Rusin + SPDX-FileCopyrightText: 2006 Michaël Larouche + SPDX-FileCopyrightText: 2008 Allen Winter + SPDX-FileCopyrightText: 2020 Tomaz Cananbrava + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "KConfigSourceGenerator.h" + +#include + +KConfigSourceGenerator::KConfigSourceGenerator(const QString &inputFile, const QString &baseDir, const KConfigParameters &cfg, ParseResult &parseResult) + : KConfigCodeGeneratorBase(inputFile, baseDir, baseDir + cfg.baseName + QLatin1String(".cpp"), cfg, parseResult) +{ +} + +void KConfigSourceGenerator::start() +{ + KConfigCodeGeneratorBase::start(); + stream() << '\n'; + createHeaders(); + + if (!cfg().nameSpace.isEmpty()) { + stream() << "using namespace " << cfg().nameSpace << ";"; + stream() << "\n\n"; + } + + createPrivateDPointerImplementation(); + createSingletonImplementation(); + createPreamble(); + doConstructor(); + doGetterSetterDPointerMode(); + createDefaultValueGetterSetter(); + createDestructor(); + createNonModifyingSignalsHelper(); + createSignalFlagsHandler(); +} + +void KConfigSourceGenerator::createHeaders() +{ + QString headerName = cfg().baseName + QLatin1Char('.') + cfg().headerExtension; + + // TODO: Make addQuotes return a string instead of replacing it inplace. + addQuotes(headerName); + + addHeaders({headerName}); + stream() << '\n'; + + addHeaders(cfg().sourceIncludes); + if (cfg().setUserTexts && cfg().translationSystem == KConfigParameters::KdeTranslation) { + addHeaders({QStringLiteral("klocalizedstring.h")}); + stream() << '\n'; + } + + // Header required by singleton implementation + if (cfg().singleton) { + addHeaders({QStringLiteral("qglobal.h"), QStringLiteral("QFile")}); + + // HACK: Add single line to fix test. + if (cfg().singleton && parseResult.cfgFileNameArg) { + stream() << '\n'; + } + } + + if (cfg().singleton && parseResult.cfgFileNameArg) { + addHeaders({QStringLiteral("QDebug")}); + } + + if (cfg().dpointer && parseResult.hasNonModifySignals) { + addHeaders({QStringLiteral("QSet")}); + } + + if (cfg().qmlRegistration && cfg().singleton) { + addHeaders({QStringLiteral("QQmlEngine")}); + } + + if (cfg().singleton) { + stream() << '\n'; + } +} + +void KConfigSourceGenerator::createPrivateDPointerImplementation() +{ + // private class implementation + if (!cfg().dpointer) { + return; + } + + QString group; + beginNamespaces(); + stream() << "class " << cfg().className << "Private\n"; + stream() << "{\n"; + stream() << " public:\n"; + + // Create Members + for (const auto *entry : std::as_const(parseResult.entries)) { + if (entry->group != group) { + group = entry->group; + stream() << '\n'; + stream() << " // " << group << '\n'; + } + stream() << " " << cppType(entry->type) << " " << varName(entry->name, cfg()); + if (!entry->param.isEmpty()) { + stream() << QStringLiteral("[%1]").arg(entry->paramMax + 1); + } + stream() << ";\n"; + } + stream() << "\n // items\n"; + + // Create Items. + for (const auto *entry : std::as_const(parseResult.entries)) { + const QString declType = entry->signalList.isEmpty() ? QString(cfg().inherits + QStringLiteral("::Item") + itemType(entry->type)) + : QStringLiteral("KConfigCompilerSignallingItem"); + + stream() << " " << declType << " *" << itemVar(entry, cfg()); + if (!entry->param.isEmpty()) { + stream() << QStringLiteral("[%1]").arg(entry->paramMax + 1); + } + stream() << ";\n"; + } + + if (parseResult.hasNonModifySignals) { + stream() << " QSet " << varName(QStringLiteral("settingsChanged"), cfg()) << ";\n"; + } + + stream() << "};\n\n"; + endNamespaces(); +} + +void KConfigSourceGenerator::createSingletonImplementation() +{ + // Singleton implementation + if (!cfg().singleton) { + return; + } + + beginNamespaces(); + stream() << "class " << cfg().className << "Helper\n"; + stream() << '{' << '\n'; + stream() << " public:\n"; + stream() << " " << cfg().className << "Helper() : q(nullptr) {}\n"; + stream() << " ~" << cfg().className << "Helper() { delete q; q = nullptr; }\n"; + stream() << " " << cfg().className << "Helper(const " << cfg().className << "Helper&) = delete;\n"; + stream() << " " << cfg().className << "Helper& operator=(const " << cfg().className << "Helper&) = delete;\n"; + stream() << " " << cfg().className << " *q;\n"; + stream() << "};\n"; + endNamespaces(); + + stream() << "Q_GLOBAL_STATIC(" << cfg().className << "Helper, s_global" << cfg().className << ")\n"; + + stream() << cfg().className << " *" << cfg().className << "::self()\n"; + stream() << "{\n"; + if (parseResult.cfgFileNameArg) { + stream() << " if (!s_global" << cfg().className << "()->q)\n"; + stream() << " qFatal(\"you need to call " << cfg().className << "::instance before using\");\n"; + } else { + stream() << " if (!s_global" << cfg().className << "()->q) {\n"; + stream() << " new " << cfg().className << ';' << '\n'; + stream() << " s_global" << cfg().className << "()->q->read();\n"; + stream() << " }\n\n"; + } + stream() << " return s_global" << cfg().className << "()->q;\n"; + stream() << "}\n\n"; + + if (cfg().qmlRegistration && cfg().singleton) { + stream() << cfg().className << " *" << cfg().className << "::create(QQmlEngine *, QJSEngine *)\n"; + stream() << "{\n"; + stream() << " QQmlEngine::setObjectOwnership(self(), QQmlEngine::CppOwnership);\n"; + stream() << " return self();\n"; + stream() << "}\n\n"; + } + + if (parseResult.cfgFileNameArg) { + auto instance = [this](const QString &type, const QString &arg, bool isString) { + stream() << "void " << cfg().className << "::instance(" << type << " " << arg << ")\n"; + stream() << "{\n"; + stream() << " if (s_global" << cfg().className << "()->q) {\n"; + stream() << " qDebug() << \"" << cfg().className << "::instance called after the first use - ignoring\";\n"; + stream() << " return;\n"; + stream() << " }\n"; + stream() << " new " << cfg().className << "("; + if (parseResult.cfgStateConfig) { + stream() << "KSharedConfig::openStateConfig(" << arg << ")"; + } else if (isString) { + stream() << "KSharedConfig::openConfig(" << arg << ")"; + } else { + stream() << "std::move(" << arg << ")"; + } + stream() << ");\n"; + stream() << " s_global" << cfg().className << "()->q->read();\n"; + stream() << "}\n\n"; + }; + instance(QStringLiteral("const QString&"), QStringLiteral("cfgfilename"), true); + instance(QStringLiteral("KSharedConfig::Ptr"), QStringLiteral("config"), false); + } +} + +void KConfigSourceGenerator::createPreamble() +{ + QString cppPreamble; + for (const auto *entry : std::as_const(parseResult.entries)) { + if (entry->paramValues.isEmpty()) { + continue; + } + + cppPreamble += QStringLiteral("const char* const ") + cfg().className + QStringLiteral("::") + enumName(entry->param); + cppPreamble += cfg().globalEnums + ? QStringLiteral("ToString[] = { \"") + entry->paramValues.join(QStringLiteral("\", \"")) + QStringLiteral("\" };\n") + : QStringLiteral("::enumToString[] = { \"") + entry->paramValues.join(QStringLiteral("\", \"")) + QStringLiteral("\" };\n"); + } + + if (!cppPreamble.isEmpty()) { + stream() << cppPreamble << '\n'; + } +} + +void KConfigSourceGenerator::createConstructorParameterList() +{ + if (parseResult.cfgFileNameArg) { + if (!cfg().forceStringFilename) { + stream() << " KSharedConfig::Ptr config"; + } else { + stream() << " const QString& config"; + } + stream() << (parseResult.parameters.isEmpty() ? "" : ","); + } + + for (auto it = parseResult.parameters.cbegin(); it != parseResult.parameters.cend(); ++it) { + if (it != parseResult.parameters.cbegin()) { + stream() << ","; + } + stream() << " " << param((*it).type) << " " << (*it).name; + } + + if (cfg().parentInConstructor) { + if (parseResult.cfgFileNameArg || !parseResult.parameters.isEmpty()) { + stream() << ","; + } + stream() << " QObject *parent"; + } +} + +void KConfigSourceGenerator::createParentConstructorCall() +{ + stream() << cfg().inherits << "("; + if (parseResult.cfgStateConfig) { + stream() << " KSharedConfig::openStateConfig(QStringLiteral( \"" << parseResult.cfgFileName << "\") "; + } else if (!parseResult.cfgFileName.isEmpty()) { + stream() << " QStringLiteral( \"" << parseResult.cfgFileName << "\" "; + } + if (parseResult.cfgFileNameArg) { + if (!cfg().forceStringFilename) { + stream() << " std::move( config ) "; + } else { + stream() << " config "; + } + } + if (!parseResult.cfgFileName.isEmpty()) { + stream() << ") "; + } + stream() << ")\n"; +} + +void KConfigSourceGenerator::createInitializerList() +{ + for (const auto ¶meter : std::as_const(parseResult.parameters)) { + stream() << " , mParam" << parameter.name << "(" << parameter.name << ")\n"; + } +} + +void KConfigSourceGenerator::createEnums(const CfgEntry *entry) +{ + if (entry->type != QLatin1String("Enum")) { + return; + } + stream() << " QList<" << cfg().inherits << "::ItemEnum::Choice> values" << entry->name << ";\n"; + + for (const auto &choice : std::as_const(entry->choices.choices)) { + stream() << " {\n"; + stream() << " " << cfg().inherits << "::ItemEnum::Choice choice;\n"; + stream() << " choice.name = QStringLiteral(\"" << choice.name << "\");\n"; + if (cfg().setUserTexts) { + if (!choice.label.isEmpty()) { + stream() << " choice.label = " << translatedString(cfg(), choice.label, choice.context) << ";\n"; + } + if (!choice.toolTip.isEmpty()) { + stream() << " choice.toolTip = " << translatedString(cfg(), choice.toolTip, choice.context) << ";\n"; + } + if (!choice.whatsThis.isEmpty()) { + stream() << " choice.whatsThis = " << translatedString(cfg(), choice.whatsThis, choice.context) << ";\n"; + } + } + stream() << " values" << entry->name << ".append( choice );\n"; + stream() << " }\n"; + } +} + +void KConfigSourceGenerator::createNormalEntry(const CfgEntry *entry, const QString &key) +{ + const QString itemVarStr = itemPath(entry, cfg()); + const QString innerItemVarStr = innerItemVar(entry, cfg()); + if (!entry->signalList.isEmpty()) { + stream() << " " << innerItemVarStr << " = " << newInnerItem(entry, key, entry->defaultValue, cfg()) << '\n'; + } + + stream() << " " << itemVarStr << " = " << newItem(entry, key, entry->defaultValue, cfg()) << '\n'; + + if (!entry->min.isEmpty()) { + stream() << " " << innerItemVarStr << "->setMinValue(" << entry->min << ");\n"; + } + + if (!entry->max.isEmpty()) { + stream() << " " << innerItemVarStr << "->setMaxValue(" << entry->max << ");\n"; + } + + if (cfg().setUserTexts) { + stream() << userTextsFunctions(entry, cfg()); + } + + if (cfg().allNotifiers || cfg().notifiers.contains(entry->name)) { + stream() << " " << itemVarStr << "->setWriteFlags(KConfigBase::Notify);\n"; + } + + for (const CfgEntry::Choice &choice : std::as_const(entry->choices.choices)) { + if (!choice.val.isEmpty()) { + stream() << " " << innerItemVarStr << "->setValueForChoice(QStringLiteral( \"" << choice.name << "\" ), QStringLiteral( \"" << choice.val + << "\" ));\n"; + } + } + + if (!entry->parentGroup.isEmpty()) { + stream() << " " << itemVarStr << "->setGroup(cg" << QString(entry->group).remove(QRegularExpression(QStringLiteral("\\W"))) << ");\n"; + } + + stream() << " addItem( " << itemVarStr; + QString quotedName = entry->name; + addQuotes(quotedName); + if (quotedName != key) { + stream() << ", QStringLiteral( \"" << entry->name << "\" )"; + } + stream() << " );\n"; +} + +// TODO : Some compiler option won't work or generate bogus settings file. +// * Does not manage properly Notifiers=true kcfgc option for parameterized entries : +// ** KConfigCompilerSignallingItem generated with wrong userData parameter (4th one). +// ** setWriteFlags() is missing. +// * Q_PROPERTY signal won't work +void KConfigSourceGenerator::createIndexedEntry(const CfgEntry *entry, const QString &key) +{ + for (int i = 0; i <= entry->paramMax; i++) { + const QString argBracket = QStringLiteral("[%1]").arg(i); + const QString innerItemVarStr = innerItemVar(entry, cfg()) + argBracket; + + const QString defaultStr = !entry->paramDefaultValues[i].isEmpty() ? entry->paramDefaultValues[i] + : !entry->defaultValue.isEmpty() ? paramString(entry->defaultValue, entry, i) + : defaultValue(entry->type); + + if (!entry->signalList.isEmpty()) { + stream() << " " << innerItemVarStr << " = " << newInnerItem(entry, paramString(key, entry, i), defaultStr, cfg(), argBracket) << '\n'; + } + + const QString itemVarStr = itemPath(entry, cfg()) + argBracket; + + stream() << " " << itemVarStr << " = " << newItem(entry, paramString(key, entry, i), defaultStr, cfg(), argBracket) << '\n'; + + if (!entry->min.isEmpty()) { + stream() << " " << innerItemVarStr << "->setMinValue(" << entry->min << ");\n"; + } + if (!entry->max.isEmpty()) { + stream() << " " << innerItemVarStr << "->setMaxValue(" << entry->max << ");\n"; + } + + for (const CfgEntry::Choice &choice : std::as_const(entry->choices.choices)) { + if (!choice.val.isEmpty()) { + stream() << " " << innerItemVarStr << "->setValueForChoice(QStringLiteral( \"" << choice.name << "\" ), QStringLiteral( \"" << choice.val + << "\" ));\n"; + } + } + + if (cfg().setUserTexts) { + stream() << userTextsFunctions(entry, cfg(), itemVarStr, entry->paramName); + } + + // Make mutators for enum parameters work by adding them with $(..) replaced by the + // param name. The check for isImmutable in the set* functions doesn't have the param + // name available, just the corresponding enum value (int), so we need to store the + // param names in a separate static list!. + const bool isEnum = entry->paramType == QLatin1String("Enum"); + const QString arg = isEnum ? entry->paramValues[i] : QString::number(i); + + QString paramName = entry->paramName; + + stream() << " addItem( " << itemVarStr << ", QStringLiteral( \""; + stream() << paramName.replace(QStringLiteral("$(") + entry->param + QLatin1Char(')'), QLatin1String("%1")).arg(arg); + stream() << "\" ) );\n"; + } +} + +void KConfigSourceGenerator::handleCurrentGroupChange(const CfgEntry *entry) +{ + if (entry->group == mCurrentGroup) { + return; + } + + // HACK: This fixes one spacing line in the diff. Remove this in the future and adapt the testcases. + static bool first = true; + if (!entry->group.isEmpty()) { + if (!first) { + stream() << '\n'; + } + first = false; + } + + mCurrentGroup = entry->group; + + if (!entry->parentGroup.isEmpty()) { + QString parentGroup = QString(entry->parentGroup).remove(QRegularExpression(QStringLiteral("\\W"))); + if (!mConfigGroupList.contains(parentGroup)) { + stream() << " KConfigGroup cg" << parentGroup << "(this->config(), " << paramString(entry->parentGroup, parseResult.parameters) << ");\n"; + mConfigGroupList << parentGroup; + } + QString currentGroup = QString(mCurrentGroup).remove(QRegularExpression(QStringLiteral("\\W"))); + if (!mConfigGroupList.contains(currentGroup)) { + stream() << " KConfigGroup cg" << currentGroup << " = cg" << QString(entry->parentGroup).remove(QRegularExpression(QStringLiteral("\\W"))) + << ".group(" << paramString(mCurrentGroup, parseResult.parameters) << ");\n"; + mConfigGroupList << currentGroup; + } + } else { + stream() << " setCurrentGroup( " << paramString(mCurrentGroup, parseResult.parameters) << " );"; + stream() << "\n\n"; + } +} + +void KConfigSourceGenerator::doConstructor() +{ + // Constructor + stream() << cfg().className << "::" << cfg().className << "("; + createConstructorParameterList(); + stream() << " )\n"; + stream() << " : "; + createParentConstructorCall(); + createInitializerList(); + + stream() << "{\n"; + + if (cfg().parentInConstructor) { + stream() << " setParent(parent);\n"; + } + + if (cfg().dpointer) { + stream() << " d = new " << cfg().className << "Private;\n"; + } + + // Needed in case the singleton class is used as baseclass for + // another singleton. + if (cfg().singleton) { + stream() << " Q_ASSERT(!s_global" << cfg().className << "()->q);\n"; + stream() << " s_global" << cfg().className << "()->q = this;\n"; + } + + if (!parseResult.signalList.isEmpty()) { + // this cast to base-class pointer-to-member is valid C++ + // https://stackoverflow.com/questions/4272909/is-it-safe-to-upcast-a-method-pointer-and-use-it-with-base-class-pointer/ + stream() << " KConfigCompilerSignallingItem::NotifyFunction notifyFunction =" + << " static_cast(&" << cfg().className << "::itemChanged);\n"; + + stream() << '\n'; + } + + for (const auto *entry : std::as_const(parseResult.entries)) { + handleCurrentGroupChange(entry); + + const QString key = paramString(entry->key, parseResult.parameters); + if (!entry->code.isEmpty()) { + stream() << entry->code << '\n'; + } + createEnums(entry); + + stream() << itemDeclaration(entry, cfg()); + + if (entry->param.isEmpty()) { + createNormalEntry(entry, key); + } else { + createIndexedEntry(entry, key); + } + } + + stream() << "}\n\n"; +} + +void KConfigSourceGenerator::createGetterDPointerMode(const CfgEntry *entry) +{ + // Accessor + if (cfg().useEnumTypes && entry->type == QLatin1String("Enum")) { + stream() << enumType(entry, cfg().globalEnums); + } else { + stream() << cppType(entry->type); + } + + stream() << " " << getFunction(entry->name, cfg().className) << "("; + if (!entry->param.isEmpty()) { + stream() << " " << cppType(entry->paramType) << " i "; + } + stream() << ")" << Const() << '\n'; + + // function body inline only if not using dpointer + // for BC mode + startScope(); + // HACK: Fix memberAccessorBody + stream() << " " << memberAccessorBody(entry, cfg().globalEnums); + endScope(); + stream() << '\n'; +} + +void KConfigSourceGenerator::createImmutableGetterDPointerMode(const CfgEntry *entry) +{ + stream() << whitespace() << ""; + stream() << "bool " + << " " << immutableFunction(entry->name, cfg().className) << "("; + if (!entry->param.isEmpty()) { + stream() << " " << cppType(entry->paramType) << " i "; + } + stream() << ")" << Const() << '\n'; + startScope(); + memberImmutableBody(entry, cfg().globalEnums); + endScope(); + stream() << '\n'; +} + +void KConfigSourceGenerator::createSetterDPointerMode(const CfgEntry *entry) +{ + // Manipulator + if (!(cfg().allMutators || cfg().mutators.contains(entry->name))) { + return; + } + + stream() << "void " << setFunction(entry->name, cfg().className) << "( "; + if (!entry->param.isEmpty()) { + stream() << cppType(entry->paramType) << " i, "; + } + + if (cfg().useEnumTypes && entry->type == QLatin1String("Enum")) { + stream() << enumType(entry, cfg().globalEnums); + } else { + stream() << param(entry->type); + } + stream() << " v )\n"; + + // function body inline only if not using dpointer + // for BC mode + startScope(); + memberMutatorBody(entry); + endScope(); + stream() << '\n'; +} + +void KConfigSourceGenerator::createItemGetterDPointerMode(const CfgEntry *entry) +{ + // Item accessor + if (!cfg().itemAccessors) { + return; + } + stream() << '\n'; + stream() << cfg().inherits << "::Item" << itemType(entry->type) << " *" << getFunction(entry->name, cfg().className) << "Item("; + if (!entry->param.isEmpty()) { + stream() << " " << cppType(entry->paramType) << " i "; + } + stream() << ")\n"; + startScope(); + stream() << " " << itemAccessorBody(entry, cfg()); + endScope(); +} + +void KConfigSourceGenerator::doGetterSetterDPointerMode() +{ + if (!cfg().dpointer) { + return; + } + + // setters and getters go in Cpp if in dpointer mode + for (const auto *entry : std::as_const(parseResult.entries)) { + createSetterDPointerMode(entry); + createGetterDPointerMode(entry); + createImmutableGetterDPointerMode(entry); + createItemGetterDPointerMode(entry); + stream() << '\n'; + } +} + +void KConfigSourceGenerator::createDefaultValueGetterSetter() +{ + // default value getters always go in Cpp + for (const auto *entry : std::as_const(parseResult.entries)) { + QString n = entry->name; + QString t = entry->type; + + // Default value Accessor, as "helper" function + if ((cfg().allDefaultGetters || cfg().defaultGetters.contains(n)) && !entry->defaultValue.isEmpty()) { + stream() << cppType(t) << " " << getDefaultFunction(n, cfg().className) << "_helper("; + if (!entry->param.isEmpty()) { + stream() << " " << cppType(entry->paramType) << " i "; + } + stream() << ")" << Const() << '\n'; + startScope(); + stream() << memberGetDefaultBody(entry) << '\n'; + endScope(); + stream() << '\n'; + } + } +} + +void KConfigSourceGenerator::createDestructor() +{ + stream() << cfg().className << "::~" << cfg().className << "()\n"; + startScope(); + if (cfg().dpointer) { + stream() << " delete d;\n"; + } + if (cfg().singleton) { + const QString qgs = QLatin1String("s_global") + cfg().className; + stream() << " if (" << qgs << ".exists() && !" << qgs << ".isDestroyed()) {\n"; + stream() << " " << qgs << "()->q = nullptr;\n"; + stream() << " }\n"; + } + endScope(); + stream() << '\n'; +} + +void KConfigSourceGenerator::createNonModifyingSignalsHelper() +{ + if (!parseResult.hasNonModifySignals) { + return; + } + stream() << "bool " << cfg().className << "::" + << "usrSave()\n"; + startScope(); + stream() << " const bool res = " << cfg().inherits << "::usrSave();\n"; + stream() << " if (!res) return false;\n\n"; + for (const Signal &signal : std::as_const(parseResult.signalList)) { + if (signal.modify) { + continue; + } + + stream() << " if (" << varPath(QStringLiteral("settingsChanged"), cfg()) << ".contains(" << signalEnumName(signal.name) << "))\n"; + stream() << " Q_EMIT " << signal.name << "("; + auto it = signal.arguments.cbegin(); + const auto itEnd = signal.arguments.cend(); + while (it != itEnd) { + Param argument = *it; + bool cast = false; + if (cfg().useEnumTypes && argument.type == QLatin1String("Enum")) { + for (int i = 0, end = parseResult.entries.count(); i < end; ++i) { + if (parseResult.entries.at(i)->name == argument.name) { + stream() << "static_cast<" << enumType(parseResult.entries.at(i), cfg().globalEnums) << ">("; + cast = true; + break; + } + } + } + stream() << varPath(argument.name, cfg()); + if (cast) { + stream() << ")"; + } + if (++it != itEnd) { + stream() << ", "; + } + } + + stream() << ");\n"; + } + + stream() << " " << varPath(QStringLiteral("settingsChanged"), cfg()) << ".clear();\n"; + stream() << " return true;\n"; + endScope(); +} + +void KConfigSourceGenerator::createSignalFlagsHandler() +{ + if (parseResult.signalList.isEmpty()) { + return; + } + + stream() << '\n'; + stream() << "void " << cfg().className << "::" + << "itemChanged(quint64 signalFlag) {\n"; + if (parseResult.hasNonModifySignals) { + stream() << " " << varPath(QStringLiteral("settingsChanged"), cfg()) << ".insert(signalFlag);\n"; + } + + if (!parseResult.signalList.isEmpty()) { + stream() << '\n'; + } + + bool modifySignalsWritten = false; + for (const Signal &signal : std::as_const(parseResult.signalList)) { + if (signal.modify) { + if (!modifySignalsWritten) { + stream() << " switch (signalFlag) {\n"; + modifySignalsWritten = true; + } + stream() << " case " << signalEnumName(signal.name) << ":\n"; + stream() << " Q_EMIT " << signal.name << "();\n"; + stream() << " break;\n"; + } + } + if (modifySignalsWritten) { + stream() << " }\n"; + } + + stream() << "}\n"; +} diff --git a/src/kconfig_compiler/KConfigSourceGenerator.h b/src/kconfig_compiler/KConfigSourceGenerator.h new file mode 100644 index 0000000..9e99f3f --- /dev/null +++ b/src/kconfig_compiler/KConfigSourceGenerator.h @@ -0,0 +1,70 @@ +/* + This file is part of KDE. + + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + SPDX-FileCopyrightText: 2003 Zack Rusin + SPDX-FileCopyrightText: 2006 Michaël Larouche + SPDX-FileCopyrightText: 2008 Allen Winter + SPDX-FileCopyrightText: 2020 Tomaz Cananbrava + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGSOURCEGENERATOR_H +#define KCONFIGSOURCEGENERATOR_H + +#include "KConfigCodeGeneratorBase.h" +#include "KConfigCommonStructs.h" + +#include +#include + +class KConfigParameters; +class CfgEntry; +class QTextStream; +struct ParseResult; + +class KConfigSourceGenerator : public KConfigCodeGeneratorBase +{ +public: + KConfigSourceGenerator(const QString &inputFile, const QString &baseDir, const KConfigParameters ¶meters, ParseResult &parseResult); + + void start() override; + +private: + // Those are fairly self contained functions. + void createHeaders(); + void createPrivateDPointerImplementation(); + void createSingletonImplementation(); + void createPreamble(); + void createDestructor(); + void createConstructorParameterList(); + void createParentConstructorCall(); + void createInitializerList(); + void createDefaultValueGetterSetter(); + void createNonModifyingSignalsHelper(); + void createSignalFlagsHandler(); + + // Constructor related methods + // the `do` methods have related helper functions that are only related + // to it. So we can break the function into many smaller ones and create + // logic inside of the `do` function. + void doConstructor(); + void createEnums(const CfgEntry *entry); + void createNormalEntry(const CfgEntry *entry, const QString &key); + void createIndexedEntry(const CfgEntry *entry, const QString &key); + void handleCurrentGroupChange(const CfgEntry *entry); + + void doGetterSetterDPointerMode(); + void createGetterDPointerMode(const CfgEntry *entry); + void createImmutableGetterDPointerMode(const CfgEntry *entry); + void createSetterDPointerMode(const CfgEntry *entry); + void createItemGetterDPointerMode(const CfgEntry *entry); + +private: + QString mCurrentGroup; + QStringList mConfigGroupList; // keeps track of generated KConfigGroup; +}; + +#endif diff --git a/src/kconfig_compiler/KConfigXmlParser.cpp b/src/kconfig_compiler/KConfigXmlParser.cpp new file mode 100644 index 0000000..4a4cec7 --- /dev/null +++ b/src/kconfig_compiler/KConfigXmlParser.cpp @@ -0,0 +1,564 @@ +/* + This file is part of the KDE libraries + + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + SPDX-FileCopyrightText: 2003 Zack Rusin + SPDX-FileCopyrightText: 2006 Michaël Larouche + SPDX-FileCopyrightText: 2008 Allen Winter + SPDX-FileCopyrightText: 2020 Tomaz Cananbrava + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "KConfigXmlParser.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +// TODO: Move preprocessDefault to Header / CPP implementation. +// it makes no sense for a parser to process those values and generate code. + +static void preProcessDefault(QString &defaultValue, + const QString &name, + const QString &type, + const CfgEntry::Choices &cfgChoices, + QString &code, + const KConfigParameters &cfg) +{ + if (type == QLatin1String("String") && !defaultValue.isEmpty()) { + defaultValue = literalString(defaultValue); + + } else if (type == QLatin1String("Path") && !defaultValue.isEmpty()) { + defaultValue = literalString(defaultValue); + } else if (type == QLatin1String("Url") && !defaultValue.isEmpty()) { + // Use fromUserInput in order to support absolute paths and absolute urls, like KDE4's KUrl(QString) did. + defaultValue = QLatin1String("QUrl::fromUserInput( %1)").arg(literalString(defaultValue)); + } else if ((type == QLatin1String("UrlList") || type == QLatin1String("StringList") || type == QLatin1String("PathList")) && !defaultValue.isEmpty()) { + QTextStream cpp(&code, QIODevice::WriteOnly | QIODevice::Append); + if (!code.isEmpty()) { + cpp << '\n'; + } + + if (type == QLatin1String("UrlList")) { + cpp << " QList default" << name << ";\n"; + } else { + cpp << " QStringList default" << name << ";\n"; + } + const QStringList defaults = defaultValue.split(QLatin1Char(',')); + for (const auto &val : defaults) { + cpp << " default" << name << ".append( "; + if (type == QLatin1String("UrlList")) { + cpp << "QUrl::fromUserInput("; + } + cpp << "QString::fromUtf8( \"" << val << "\" ) "; + if (type == QLatin1String("UrlList")) { + cpp << ") "; + } + cpp << ");\n"; + } + defaultValue = QLatin1String("default") + name; + + } else if (type == QLatin1String("Color") && !defaultValue.isEmpty()) { + static const QRegularExpression colorRe(QRegularExpression::anchoredPattern(QStringLiteral("\\d+,\\s*\\d+,\\s*\\d+(,\\s*\\d+)?"))); + + if (colorRe.match(defaultValue).hasMatch()) { + defaultValue = QLatin1String("QColor( %1 )").arg(defaultValue); + } else { + defaultValue = QLatin1String("QColor( \"%1\" )").arg(defaultValue); + } + + } else if (type == QLatin1String("Enum")) { + for (const auto &choice : cfgChoices.choices) { + if (choice.name == defaultValue) { + if (cfg.globalEnums && cfgChoices.name().isEmpty()) { + defaultValue.prepend(cfgChoices.prefix); + } else { + defaultValue.prepend(enumTypeQualifier(name, cfgChoices) + cfgChoices.prefix); + } + break; + } + } + + } else if (type == QLatin1String("IntList")) { + QTextStream cpp(&code, QIODevice::WriteOnly | QIODevice::Append); + if (!code.isEmpty()) { + cpp << '\n'; + } + + cpp << " QList default" << name << ";\n"; + if (!defaultValue.isEmpty()) { + const QStringList defaults = defaultValue.split(QLatin1Char(',')); + for (const auto &defaultVal : defaults) { + cpp << " default" << name << ".append( " << defaultVal << " );\n"; + } + } + defaultValue = QLatin1String("default") + name; + } +} + +static QString dumpNode(const QDomNode &node) +{ + QString msg; + QTextStream s(&msg, QIODevice::WriteOnly); + node.save(s, 0); + + msg = msg.simplified(); + if (msg.length() > 40) { + return msg.left(37) + QLatin1String("..."); + } + return msg; +} + +void KConfigXmlParser::readParameterFromEntry(CfgEntry &readEntry, const QDomElement &e) +{ + readEntry.param = e.attribute(QStringLiteral("name")); + readEntry.paramType = e.attribute(QStringLiteral("type")); + + if (readEntry.param.isEmpty()) { + std::cerr << "Parameter must have a name: " << qPrintable(dumpNode(e)) << std::endl; + exit(1); + } + + if (readEntry.paramType.isEmpty()) { + std::cerr << "Parameter must have a type: " << qPrintable(dumpNode(e)) << std::endl; + exit(1); + } + + if ((readEntry.paramType == QLatin1String("Int")) || (readEntry.paramType == QLatin1String("UInt"))) { + bool ok; + readEntry.paramMax = e.attribute(QStringLiteral("max")).toInt(&ok); + if (!ok) { + std::cerr << "Integer parameter must have a maximum (e.g. max=\"0\"): " << qPrintable(dumpNode(e)) << std::endl; + exit(1); + } + } else if (readEntry.paramType == QLatin1String("Enum")) { + for (QDomElement e2 = e.firstChildElement(); !e2.isNull(); e2 = e2.nextSiblingElement()) { + if (e2.tagName() == QLatin1String("values")) { + for (QDomElement e3 = e2.firstChildElement(); !e3.isNull(); e3 = e3.nextSiblingElement()) { + if (e3.tagName() == QLatin1String("value")) { + readEntry.paramValues.append(e3.text()); + } + } + break; + } + } + if (readEntry.paramValues.isEmpty()) { + std::cerr << "No values specified for parameter '" << qPrintable(readEntry.param) << "'." << std::endl; + exit(1); + } + readEntry.paramMax = readEntry.paramValues.count() - 1; + } else { + std::cerr << "Parameter '" << qPrintable(readEntry.param) << "' has type " << qPrintable(readEntry.paramType) + << " but must be of type int, uint or Enum." << std::endl; + exit(1); + } +} + +bool KConfigXmlParser::hasDefaultCode(CfgEntry &readEntry, const QDomElement &element) +{ + Q_UNUSED(readEntry) + + for (QDomElement e = element.firstChildElement(); !e.isNull(); e = e.nextSiblingElement()) { + if (e.attribute(QStringLiteral("param")).isEmpty()) { + if (e.attribute(QStringLiteral("code")) == QLatin1String("true")) { + return true; + } + } + } + return false; +} + +void KConfigXmlParser::readChoicesFromEntry(CfgEntry &readEntry, const QDomElement &e) +{ + QList chlist; + const auto choiceNameRegex = QRegularExpression(QStringLiteral("\\w+")); + + for (QDomElement e2 = e.firstChildElement(); !e2.isNull(); e2 = e2.nextSiblingElement()) { + if (e2.tagName() != QLatin1String("choice")) { + continue; + } + CfgEntry::Choice choice; + choice.name = e2.attribute(QStringLiteral("name")); + if (choice.name.isEmpty()) { + std::cerr << "Tag requires attribute 'name'." << std::endl; + } else if (!choiceNameRegex.match(choice.name).hasMatch()) { + std::cerr << "Tag attribute 'name' must be compatible with Enum naming. name was '" << qPrintable(choice.name) + << "'. You can use attribute 'value' to pass any string as the choice value." << std::endl; + } + choice.val = e2.attribute(QStringLiteral("value")); + for (QDomElement e3 = e2.firstChildElement(); !e3.isNull(); e3 = e3.nextSiblingElement()) { + if (e3.tagName() == QLatin1String("label")) { + choice.label = e3.text(); + choice.context = e3.attribute(QStringLiteral("context")); + } + if (e3.tagName() == QLatin1String("tooltip")) { + choice.toolTip = e3.text(); + choice.context = e3.attribute(QStringLiteral("context")); + } + if (e3.tagName() == QLatin1String("whatsthis")) { + choice.whatsThis = e3.text(); + choice.context = e3.attribute(QStringLiteral("context")); + } + } + chlist.append(choice); + } + + QString name = e.attribute(QStringLiteral("name")); + QString prefix = e.attribute(QStringLiteral("prefix")); + + readEntry.choices = CfgEntry::Choices(chlist, name, prefix); +} + +void KConfigXmlParser::readGroupElements(CfgEntry &readEntry, const QDomElement &element) +{ + for (QDomElement e = element.firstChildElement(); !e.isNull(); e = e.nextSiblingElement()) { + QString tag = e.tagName(); + if (tag == QLatin1String("label")) { + readEntry.label = e.text(); + readEntry.labelContext = e.attribute(QStringLiteral("context")); + } else if (tag == QLatin1String("tooltip")) { + readEntry.toolTip = e.text(); + readEntry.toolTipContext = e.attribute(QStringLiteral("context")); + } else if (tag == QLatin1String("whatsthis")) { + readEntry.whatsThis = e.text(); + readEntry.whatsThisContext = e.attribute(QStringLiteral("context")); + } else if (tag == QLatin1String("min")) { + readEntry.min = e.text(); + } else if (tag == QLatin1String("max")) { + readEntry.max = e.text(); + } else if (tag == QLatin1String("code")) { + readEntry.code = e.text(); + } else if (tag == QLatin1String("parameter")) { + readParameterFromEntry(readEntry, e); + } else if (tag == QLatin1String("default")) { + if (e.attribute(QStringLiteral("param")).isEmpty()) { + readEntry.defaultValue = e.text(); + } + } else if (tag == QLatin1String("choices")) { + readChoicesFromEntry(readEntry, e); + } else if (tag == QLatin1String("emit")) { + Signal signal; + signal.name = e.attribute(QStringLiteral("signal")); + readEntry.signalList.append(signal); + } + } +} + +void KConfigXmlParser::createChangedSignal(CfgEntry &readEntry) +{ + if (cfg.generateProperties && (cfg.allMutators || cfg.mutators.contains(readEntry.name))) { + Signal s; + s.name = changeSignalName(readEntry.name); + s.modify = true; + readEntry.signalList.append(s); + } +} + +void KConfigXmlParser::validateNameAndKey(CfgEntry &readEntry, const QDomElement &element) +{ + bool nameIsEmpty = readEntry.name.isEmpty(); + if (nameIsEmpty && readEntry.key.isEmpty()) { + std::cerr << "Entry must have a name or a key: " << qPrintable(dumpNode(element)) << std::endl; + exit(1); + } + + if (readEntry.key.isEmpty()) { + readEntry.key = readEntry.name; + } + + if (nameIsEmpty) { + readEntry.name = readEntry.key; + readEntry.name.remove(QLatin1Char(' ')); + } else if (readEntry.name.contains(QLatin1Char(' '))) { + std::cout << "Entry '" << qPrintable(readEntry.name) << "' contains spaces! elements can not contain spaces!" << std::endl; + readEntry.name.remove(QLatin1Char(' ')); + } + + if (readEntry.name.contains(QStringLiteral("$("))) { + if (readEntry.param.isEmpty()) { + std::cerr << "Name may not be parameterized: " << qPrintable(readEntry.name) << std::endl; + exit(1); + } + } else { + if (!readEntry.param.isEmpty()) { + std::cerr << "Name must contain '$(" << qPrintable(readEntry.param) << ")': " << qPrintable(readEntry.name) << std::endl; + exit(1); + } + } +} + +void KConfigXmlParser::readParamDefaultValues(CfgEntry &readEntry, const QDomElement &element) +{ + if (readEntry.param.isEmpty()) { + return; + } + // Adjust name + readEntry.paramName = readEntry.name; + + readEntry.name.remove(QStringLiteral("$(") + readEntry.param + QLatin1Char(')')); + // Lookup defaults for indexed entries + for (int i = 0; i <= readEntry.paramMax; i++) { + readEntry.paramDefaultValues.append(QString()); + } + + for (QDomElement e = element.firstChildElement(); !e.isNull(); e = e.nextSiblingElement()) { + QString tag = e.tagName(); + if (tag != QLatin1String("default")) { + continue; + } + QString index = e.attribute(QStringLiteral("param")); + if (index.isEmpty()) { + continue; + } + + bool ok; + int i = index.toInt(&ok); + if (!ok) { + i = readEntry.paramValues.indexOf(index); + if (i == -1) { + std::cerr << "Index '" << qPrintable(index) << "' for default value is unknown." << std::endl; + exit(1); + } + } + + if ((i < 0) || (i > readEntry.paramMax)) { + std::cerr << "Index '" << i << "' for default value is out of range [0, " << readEntry.paramMax << "]." << std::endl; + exit(1); + } + + QString tmpDefaultValue = e.text(); + + if (e.attribute(QStringLiteral("code")) != QLatin1String("true")) { + preProcessDefault(tmpDefaultValue, readEntry.name, readEntry.type, readEntry.choices, readEntry.code, cfg); + } + + readEntry.paramDefaultValues[i] = tmpDefaultValue; + } +} + +CfgEntry *KConfigXmlParser::parseEntry(const QString &group, const QString &parentGroup, const QDomElement &element) +{ + CfgEntry readEntry; + readEntry.type = element.attribute(QStringLiteral("type")); + readEntry.name = element.attribute(QStringLiteral("name")); + readEntry.key = element.attribute(QStringLiteral("key")); + readEntry.hidden = element.attribute(QStringLiteral("hidden")) == QLatin1String("true"); + ; + readEntry.group = group; + readEntry.parentGroup = parentGroup; + + const bool nameIsEmpty = readEntry.name.isEmpty(); + + readGroupElements(readEntry, element); + + validateNameAndKey(readEntry, element); + + if (readEntry.label.isEmpty()) { + readEntry.label = readEntry.key; + } + + if (readEntry.type.isEmpty()) { + readEntry.type = QStringLiteral("String"); // XXX : implicit type might be bad + } + + readParamDefaultValues(readEntry, element); + + if (!mValidNameRegexp.match(readEntry.name).hasMatch()) { + if (nameIsEmpty) { + std::cerr << "The key '" << qPrintable(readEntry.key) + << "' can not be used as name for the entry because " + "it is not a valid name. You need to specify a valid name for this entry." + << std::endl; + } else { + std::cerr << "The name '" << qPrintable(readEntry.name) << "' is not a valid name for an entry." << std::endl; + } + exit(1); + } + + if (mAllNames.contains(readEntry.name)) { + if (nameIsEmpty) { + std::cerr << "The key '" << qPrintable(readEntry.key) + << "' can not be used as name for the entry because " + "it does not result in a unique name. You need to specify a unique name for this entry." + << std::endl; + } else { + std::cerr << "The name '" << qPrintable(readEntry.name) << "' is not unique." << std::endl; + } + exit(1); + } + + mAllNames.append(readEntry.name); + + if (!hasDefaultCode(readEntry, element)) { + // TODO: Move all the options to CfgEntry. + preProcessDefault(readEntry.defaultValue, readEntry.name, readEntry.type, readEntry.choices, readEntry.code, cfg); + } + + // TODO: Try to Just return the CfgEntry we populated instead of + // creating another one to fill the code. + CfgEntry *result = new CfgEntry(); + result->group = readEntry.group; + result->parentGroup = readEntry.parentGroup; + result->type = readEntry.type; + result->key = readEntry.key; + result->name = readEntry.name; + result->labelContext = readEntry.labelContext; + result->label = readEntry.label; + result->toolTipContext = readEntry.toolTipContext; + result->toolTip = readEntry.toolTip; + result->whatsThisContext = readEntry.whatsThisContext; + result->whatsThis = readEntry.whatsThis; + result->code = readEntry.code; + result->defaultValue = readEntry.defaultValue; + result->choices = readEntry.choices; + result->signalList = readEntry.signalList; + result->hidden = readEntry.hidden; + + if (!readEntry.param.isEmpty()) { + result->param = readEntry.param; + result->paramName = readEntry.paramName; + result->paramType = readEntry.paramType; + result->paramValues = readEntry.paramValues; + result->paramDefaultValues = readEntry.paramDefaultValues; + result->paramMax = readEntry.paramMax; + } + result->min = readEntry.min; + result->max = readEntry.max; + createChangedSignal(*result); + + return result; +} + +// TODO: Change the name of the config variable. +KConfigXmlParser::KConfigXmlParser(const KConfigParameters &cfg, const QString &inputFileName) + : cfg(cfg) + , mInputFileName(inputFileName) +{ + mValidNameRegexp.setPattern(QRegularExpression::anchoredPattern(QStringLiteral("[a-zA-Z_][a-zA-Z0-9_]*"))); +} + +void KConfigXmlParser::start() +{ + QFile input(mInputFileName); + if (!input.open(QIODevice::ReadOnly)) { + qFatal("Could not open input file: %s", qUtf8Printable(mInputFileName)); + } + QDomDocument doc; + const QDomDocument::ParseResult parseResult = doc.setContent(&input); + if (!parseResult) { + std::cerr << "Unable to load document." << std::endl; + std::cerr << "Parse error in " << qPrintable(mInputFileName) << ", line " << parseResult.errorLine << ", col " << parseResult.errorColumn << ": " + << qPrintable(parseResult.errorMessage) << std::endl; + exit(1); + } + + QDomElement cfgElement = doc.documentElement(); + if (cfgElement.isNull()) { + std::cerr << "No document in kcfg file" << std::endl; + exit(1); + } + + for (QDomElement element = cfgElement.firstChildElement(); !element.isNull(); element = element.nextSiblingElement()) { + QString tag = element.tagName(); + + if (tag == QLatin1String("include")) { + readIncludeTag(element); + } else if (tag == QLatin1String("kcfgfile")) { + readKcfgfileTag(element); + } else if (tag == QLatin1String("group")) { + readGroupTag(element); + } else if (tag == QLatin1String("signal")) { + readSignalTag(element); + } + } +} + +ParseResult KConfigXmlParser::getParseResult() const +{ + return mParseResult; +} + +void KConfigXmlParser::readIncludeTag(const QDomElement &e) +{ + QString includeFile = e.text(); + if (!includeFile.isEmpty()) { + mParseResult.includes.append(includeFile); + } +} + +void KConfigXmlParser::readGroupTag(const QDomElement &e) +{ + QString group = e.attribute(QStringLiteral("name")); + if (group.isEmpty()) { + std::cerr << "Group without name" << std::endl; + exit(1); + } + + const QString parentGroup = e.attribute(QStringLiteral("parentGroupName")); + + for (QDomElement e2 = e.firstChildElement(); !e2.isNull(); e2 = e2.nextSiblingElement()) { + if (e2.tagName() != QLatin1String("entry")) { + continue; + } + CfgEntry *entry = parseEntry(group, parentGroup, e2); + if (entry) { + mParseResult.entries.append(entry); + } else { + std::cerr << "Can not parse entry." << std::endl; + exit(1); + } + } +} + +void KConfigXmlParser::readKcfgfileTag(const QDomElement &e) +{ + mParseResult.cfgFileName = e.attribute(QStringLiteral("name")); + mParseResult.cfgStateConfig = e.attribute(QStringLiteral("stateConfig")).toLower() == QLatin1String("true"); + mParseResult.cfgFileNameArg = e.attribute(QStringLiteral("arg")).toLower() == QLatin1String("true"); + for (QDomElement e2 = e.firstChildElement(); !e2.isNull(); e2 = e2.nextSiblingElement()) { + if (e2.tagName() == QLatin1String("parameter")) { + Param p; + p.name = e2.attribute(QStringLiteral("name")); + p.type = e2.attribute(QStringLiteral("type")); + if (p.type.isEmpty()) { + p.type = QStringLiteral("String"); + } + mParseResult.parameters.append(p); + } + } +} + +void KConfigXmlParser::readSignalTag(const QDomElement &e) +{ + QString signalName = e.attribute(QStringLiteral("name")); + if (signalName.isEmpty()) { + std::cerr << "Signal without name." << std::endl; + exit(1); + } + Signal theSignal; + theSignal.name = signalName; + + for (QDomElement e2 = e.firstChildElement(); !e2.isNull(); e2 = e2.nextSiblingElement()) { + if (e2.tagName() == QLatin1String("argument")) { + Param argument; + argument.type = e2.attribute(QStringLiteral("type")); + if (argument.type.isEmpty()) { + std::cerr << "Signal argument without type." << std::endl; + exit(1); + } + argument.name = e2.text(); + theSignal.arguments.append(argument); + } else if (e2.tagName() == QLatin1String("label")) { + theSignal.label = e2.text(); + } + } + + mParseResult.signalList.append(theSignal); +} diff --git a/src/kconfig_compiler/KConfigXmlParser.h b/src/kconfig_compiler/KConfigXmlParser.h new file mode 100644 index 0000000..58c2ed5 --- /dev/null +++ b/src/kconfig_compiler/KConfigXmlParser.h @@ -0,0 +1,72 @@ +/* + This file is part of the KDE libraries + + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + SPDX-FileCopyrightText: 2003 Zack Rusin + SPDX-FileCopyrightText: 2006 Michaël Larouche + SPDX-FileCopyrightText: 2008 Allen Winter + SPDX-FileCopyrightText: 2020 Tomaz Cananbrava + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGXMLPARSER_H +#define KCONFIGXMLPARSER_H + +#include +#include +#include + +#include "KConfigCommonStructs.h" +#include "KConfigParameters.h" + +/* This parses the contents of a Xml file into a ParseResult Structure, + * It also fails hard: + * If start() succeeds, you can use the result, + * if start() fails, the program aborts with an error message so there's + * no possibility of generating incorrect code information. + */ +class KConfigXmlParser +{ +public: + KConfigXmlParser(const KConfigParameters &cfg, const QString &inputFileName); + + // Start the parser and reads the contents of the inputFileName into the ParseResult Structure + void start(); + + // Get the result of the parse + ParseResult getParseResult() const; + +private: + // creates a `somethingChanged` signal for every property + void createChangedSignal(CfgEntry &readEntry); + + void validateNameAndKey(CfgEntry &readEntry, const QDomElement &element); + + // TODO: Use std::optional and CfgEntry (without heap allocation) for this function + // *or* fail hard if the parse fails. + CfgEntry *parseEntry(const QString &group, const QString &parentGroup, const QDomElement &element); + + // Steps + void readIncludeTag(const QDomElement &element); + void readGroupTag(const QDomElement &element); + void readKcfgfileTag(const QDomElement &element); + void readSignalTag(const QDomElement &element); + + // Those are the Entries in the Xml, that represent a parameter within the tag. + void readParameterFromEntry(CfgEntry &entry, const QDomElement &element); + bool hasDefaultCode(CfgEntry &entry, const QDomElement &element); + void readChoicesFromEntry(CfgEntry &entry, const QDomElement &element); + void readGroupElements(CfgEntry &entry, const QDomElement &element); + void readParamDefaultValues(CfgEntry &entry, const QDomElement &element); + +private: + ParseResult mParseResult; + KConfigParameters cfg; + QString mInputFileName; + QStringList mAllNames; + QRegularExpression mValidNameRegexp; +}; + +#endif diff --git a/src/kconfig_compiler/README.dox b/src/kconfig_compiler/README.dox new file mode 100644 index 0000000..1081158 --- /dev/null +++ b/src/kconfig_compiler/README.dox @@ -0,0 +1,560 @@ +/** +\page kconfig_compiler The KDE Configuration Compiler + +kconfig_compiler generates C++ source code from an XML file containing +information about configuration options (.kcfg) and a file that provides +the code generation options (.kcfgc) The generated class is based on +KConfigSkeleton and provides an API for the application to access its +configuration data. + +The generated C++ source code is output to a .h and a .cpp file, whose base +name is the same as that of the .kcfgc file. + +\section kcfg_format The .kcfg XML file format: description of the configuration skeleton + +The structure of the .kcfg file is described by its DTD kcfg.xsd. + +The \ tag may contain either the "name" attribute, which should be the name +of the configuration file described, or the "arg" attribute, which, if set to +"true", will allow you to pass the KSharedConfig::Ptr object to use. + +If neither "name" nor "arg" is set, the default configuration file +("\rc") will be used. + +The \ tags are optional and may contain C++ header files that +are needed to compile the code needed to compute default values. To generate +a \#include "..." statement instead of \#include \<...\>, enclose the header +file name in double quotes (e.g. \"header.h"\). + +The remaining entries in the XML file are grouped by the tag \ +which describes the corresponding group in the configuration file. + +The individual entries must have at least a name or a key. The key is used +as the key in the config file, while the name is used to create accessor and +modifier functions. If \ is given, but not \, the name is +constructed by removing all spaces from \. If \ is given, but +not \, the key is the same as \. + +An entry must also have a type. The list of allowable types is +specified in the DTD and loosely follows the list of types supported +by the QVariant with exception of the clearly binary types +(e.g. Pixmap, Image...) which are not supported. Besides those basic +types the following special types are supported: + +
+
Path
+
+ This is a string that is specially treated as a file-path. + In particular paths in the home directory are prefixed with $HOME in + when being stored in the configuration file. +
+ +
Enum
+
+ This indicates an enumeration. The possible enum values and optional + enum name should be provided via the \ tag. Enum values are + accessed as integers by the application but stored as strings in the + configuration file. This makes it possible to add more values at a later + date without breaking compatibility. +
+ +
IntList
+
+ This indicates a list of integers. This information is provided + to the application as QList. Useful for storing QSplitter + geometries. +
+ +
Color
+
+ Isn't a special type but has special input. It is generated as QColor. + Any valid input to QColor(QString) can be used (hex or SVG keyword notation) + as well as a special format r,g,b,a where the a denotes the alpha channel and + may be omitted. +
+
+ +An entry can optionally have a default value which is used as default when +the value isn't specified in any config file. Default values are interpreted +as literal constant values. If a default value needs to be computed +or if it needs to be obtained from a function call, the \ tag +should contain the code="true" attribute. The contents of the \ +tag is then considered to be a C++ expression. Note that in this case you +might have to add an \ tag as described above, or a +SourceIncludeFiles entry in the .kcfgc file as described below, so that the +code which computes the default value can be compiled. + +Additional code for computing default values can be provided outside any +entry definition via the \ tag. The contents of the \ tag is +inserted as-is. A typical use for this is to compute a common default value +which can then be referenced by multiple entries that follow. + +\section kcfgc_format The .kcfgc file format: code generation options + +The options for generating the C++ sources are read from the file with the +extension .kcfgc. To generate a class add the corresponding kcfgc file to the +SOURCES line in the Makefile.am. + +The following options are read from the kcfgc file: + + +
+
File=\
+
+ Default: \.kcfg \n + Name of kcfg file containing the options the class is generated for + +
+ +
HeaderExtension=\
+
+ Default: h \n + Since KF 5.57 \n + Extension to use for the name of the generated C++ header files. +
+ +
NameSpace=\
+
+ Optional namespace for generated class +
+ +
ClassName=\
+
+ Name of generated class (required) +
+ +
Inherits=\
+
+ Default: KConfigSkeleton \n + Class the generated class inherits from. + + This class must inherit KConfigSkeleton and must provide a default + constructor (kcfgfile not specified), a constructor taking a + QString argument (kcfgfile with "name" attribute) and a constructor + taking a KSharedConfig::Ptr as argument (kcfgfile with "arg" attribute). + Please refer to the documentation of KConfigSkeleton. +
+ +
Visibility=\
+
+ Inserts visibility directive (for example KDE_EXPORT) between + "class" keyword and class name in header file +
+ +
Singleton=\
+
+ Default: false \n + Generated class is a singleton. +
+ +
CustomAdditions=\
+
+ +
+ +
MemberVariables=\
+
+ Values: public, protected, private, dpointer \n + Default: private \n + C++ access modifier used for member variables holding the configuration + values +
+ +
IncludeFiles=\, \ ...
+
+ Names of files to be included in the header of the generated class. + + Enclose a file name in (escaped) double quotes to generate + \#include "..." instead of \#include \<...\>. +
+ +
SourceIncludeFiles=\, \ ...
+
+ Names of files to be included in the source file of the generated class. + + Enclose a file name in (escaped) double quotes to generate + \#include "..." instead of \#include \<...\>. +
+ +
Mutators=\
+
+ Values: true, false or a comma separated list of options \n + Default: false \n + If true, mutator functions for all configuration options are generated. + If false, no mutator functions are generated. If a list is provided, + mutator functions are generated for the options that are listed. +
+ +
Notifiers=\
+
+ Values: true, false or a comma separated list of options \n + Default: false \n + If true, entries will be written with the Notify flag enabled, + so changes can be detected using KConfigWatcher. + If a list is provided, the options that are listed are written with + said flag. +
+ +
DefaultValueGetters=\
+
+ Values: true, false or a comma separated list of options \n + Default: false \n + If true, functions to return the default value of all configuration options + are generated. If false, no default value functions are generated. If a list + is provided, default value functions are generated for the options that are listed. +
+ +
ItemAccessors=\
+
+ Default: false \n + Generate accessor functions for the KConfigSkeletonItem objects + corresponding to the configuration options. If SetUserTexts is set, + ItemAccessors also has to be set. +
+ +
SetUserTexts=\
+
+ Default: false \n + Set the label and whatthis texts of the items from the kcfg file. + If SetUserTexts is set, ItemAccessors also has to be set. +
+ +
GlobalEnums=\
+
+ Default: false \n + If set to true all choices of Enum items will be created in the global + scope of the generated class. If set to false, each Enum item whose enum is not + explicitly named will get its own namespace for its choices. +
+ +
UseEnumTypes=\
+
+ Default: false \n + If set to true, all Enum items whose enums are named will use enum types for + the return value of accessor functions and for the parameter of mutator + functions. This eliminates the need to cast accessor return values to the enum + type if you want to use the enum type in your own code. If set to false, + accessor return values and mutator parameters will be of type int. +
+ +
ForceStringFilename=\
+
+ Default: false \n + If set to true, forces the first parameter of the generated class + to be a QString when using an argument for the filename. + This is useful to specify at runtime the filename of the configuration class. +
+ +
GenerateProperties=\
+
+ Default: false \n + If set to true, a Q_PROPERTY will be generated for each member variable holding a + configuration value and the Q_OBJECT macro will be added to the generated class. + Note that you will also need to pass the GENERATE_MOC option to the + kconfig_add_kcfg_files macro. +
+ + +
ParentInConstructor=\
+
+ Default: false \n + If set to true, the generated constructor will take an additional QObject* + parameter that will be used as the object's parent. + This is useful when working with KQuickAddons::ManagedConfigModule + to set it as the parent of the generated class to allow automatic + settings discovery and handle the deallocation. + Note this parameter is incompatible with Singleton set to true. +
+ +
TranslationSystem=\
+
+ Default: qt \n + Set the translation system for label, tooltip and whatsthis text in generated KConfigSkeleton. + Set the value to kde to use the KDE Framework translation system, see KI18n. +
+ +
TranslationDomain=\
+
+ When TranslationSystem=kde is set, allow to specify the domain in which to look for translations. +
+ +
QmlRegistration=\
+
+ Default: false\n + If set to true the generated code will use the QML_ELEMENT macro to register the type to QML. + If Singleton is also true it will be registered as a QML singleton using QML_SINGLETON + +
+ +
+ + +\section entry_options Advanced entry options + +There are several possibilities to parameterize entries. + +\subsection parametrized_entries Parameterized entries + +An entry can be parameterized using a fixed range parameter specified with +the \ tag. Such parameter can either be an Enum or an int. An Enum +parameter should specify the possible enumeration values with the \ +tag. An int parameter should specify its maximum value. Its minimum value +is always 0. + +A parameterized entry is expanded to a number of entries, one for each +value in the parameter range. The name and key should contain a reference +to the parameter in the form of $(parameter-name). When expanding the entries +the $(parameter-name) part is replaced with the value of the parameter. +In the case of an Enum parameter it is replaced with the name of the +enumuration value. In the case of an int parameter it is replaced with +the numeric value of the parameter. + +Parameterized entries all share the same default value unless different +default values have been specified for specific parameter values. +This can be done with the param= attribute of the \. When a +param attribute is specified the default value only applies to that +particular parameter value. + +Example 1: +\code{.xml} + + + #ff0000 + #00ff00 + #0000ff + #ffff00 + +\endcode + +The above describes 4 color configuration entries with the following defaults: + +\verbatim +color_0=#ff0000 +color_1=#00ff00 +color_2=#0000ff +color_3=#ffff00 +\endverbatim + +The configuration options will be accessible to the application via +a QColor color(int ColorIndex) and a +void setColor(int ColorIndex, const QColor &v) function. + +Example 2: +\code{.xml} + + + + Explosion + Crash + Missile + + + boom.wav + crash.wav + missile.wav + +\endcode + +The above describes 3 string configuration entries with the following defaults: + +\verbatim +sound_Explosion=boom.wav +sound_Crash=crash.wav +sound_Missile=missile.wav +\endverbatim + +The configuration options will be accessible to the application via +a QString sound(int SoundEvent) and a +void setSound(int SoundEvent, const QString &v) function. + +\subsection parametrized_groups Parameterized groups + +A group name can be parametrized using a parameter given to the KConfigSkeleton +instance (which means this feature cannot be used with singleton classes). + +Example 1: +\code{.xml} + + + + + + + +\endcode + +In this case passing "Group2" as the 'groupname' parameter to the generated class +will make it use group "Group2" for the entry "Text". + +By setting the stateConfig attribute of kcfgfile to "true", KSharedConfig::openStateConfig is used. +This should be used when one stores volatile data, like window sizes or autocompletion texts. +It is recommended to have at least two separate kcfg files for the different kinds of data. +NOTE: This option is ignored when ForceStringFilename is set. + +\subsection enums Enums + +By default, if GlobalEnums is set to false, a separate named enum will be generated +for each Enum entry. Since each enum is defined in a little enclosing class of its own, +this allows the same Enum value names to be used in different enums. For example, the +.kcfg entry + +\code{.xml} + + + + + + +\endcode + +will generate this public class containing the enum definition, inside the generated class: + +\code{.cpp} +class EnumKeepData +{ + public: + enum type { Do, Dont, COUNT }; +}; +\endcode + +Since 5.68, if present the value attribute will be used as the choice value written to the backend +instead of the name, allowing to write text incompatible with enum naming. + +Alternatively, if GlobalEnums is set to true, all Enum items are defined as +unnamed enums in the global scope of the generated class. In this case, all Enum values +must have different names to avoid clashes. However, you can use a 'prefix' argument +in \ to prevent duplicate enum member names clashing. Using this, the Enum value +names are prefixed in code with the string you specify. For example, if GlobalEnums +is set to true, the .kcfg entry + +\code{.xml} + + + + + + +\endcode + +will generate config file entries of "KeepData=Do" and "KeepData=Dont", but the enum +will be declared + +\code{.cpp} +enum { Keep_Do, Keep_Dont }; +\endcode + +It is possible to specify your own name for a generated enum, by including a +'name' parameter in \. Just like unnamed enums, this enum will be defined in +the global scope of the generated class (without any enclosing class of its own). +Therefore the names of Enum values must be unique across both unnamed enums (if +GlobalEnums is set to true) and all specifically named enums. + +An example of a specifically named enum: + +\code{.xml} + + + + + + +\endcode + +which results in the following enum declaration, inside the generated class: + +\code{.cpp} +enum Types { Do, Dont }; +\endcode + +It is also possible to specify the use of enums external to the generated class, by +including the string "::" in the enum name - just ensure that it is sufficiently +qualified to be unambiguous in use. To specify use of an unnamed enum, append a +trailing "::". For example, to use the enum 'myEnum' defined in class ClassA, use +either of + +\code{.xml} + + +\endcode + +To specify an unnamed enum in namespace ProgSpace, use + +\code{.xml} + +\endcode + +To specify a top-level unnamed enum, use + +\code{.xml} + +\endcode + +To specify the top-level enum 'anotherEnum', use + +\code{.xml} + + +\endcode + + +\subsection notify_signals Notify signals + +An entry can emit a signal when it gets changed. First of all, you must +define a list of signals for the configuration class. The signal's name may be +any legal identifier you wish. The \ tag allows you to specify arguments +for the emitted signal. It supports all types as defined in +the KConfigXT DTD. The argument value must specify the name, without spaces, of one +of the entries defined in the .kcfg file. +A signal definition can also contain a \ tag which will be +the documentation line in the generated file. + +\code{.xml} + + + + + stylePath + StyleCSSVariant + +\endcode + +After defining the signals, you must tell which signal to emit for the entry. +A signal can be emitted by multiple entries. Also, you don't need to specify the arguments +for a signal, the signal name will suffice. + +\code{.xml} + + + + +\endcode + +The signal will be emitted when save() is called. + +@warning +You must not call save() in direct response to any notify signal. +If you need to call save(), +use a QueuedConnection to listen to the notify signal. + +You can also listen to the generic configChanged() signal from KConfigSkeleton to +notify your application about configuration changes. +In that case you may also call save() in direct response. + +Note that you will also need to pass the GENERATE_MOC option to the kconfig_add_kcfg_files macro. + +\subsection translation_context Translation context + +In the kcfg file you can specify the translation's context for \, \ and \ element for an entry. + +\code{.xml} + + + Enable automatic saving of calendars to have calendars saved automatically. + false + +\endcode + +For more information on translation context and how to write good translatable text, +please refer to https://api.kde.org/frameworks/ki18n/html/prg_guide.html + +*/ diff --git a/src/kconfig_compiler/TODO b/src/kconfig_compiler/TODO new file mode 100644 index 0000000..e69de29 diff --git a/src/kconfig_compiler/checkkcfg.pl b/src/kconfig_compiler/checkkcfg.pl new file mode 100755 index 0000000..27b2833 --- /dev/null +++ b/src/kconfig_compiler/checkkcfg.pl @@ -0,0 +1,85 @@ +#!/usr/bin/perl + +if ( @ARGV < 1 ) { + print STDERR "Missing arg: filename\n"; + exit 1; +} + +$file = $ARGV[0]; + +$file =~ /^(.*)\.[^\.]*$/; +$filebase = $1; + +$header_extension = @ARGV > 1 ? $ARGV[1] : "h"; +$source_extension = @ARGV > 2 ? $ARGV[2] : "cpp"; +$file_h = "$filebase.$header_extension"; +$file_cpp = "$filebase.$source_extension"; + +$kcfgc = $file . "c"; + +$cmd = "./kconfig_compiler_kf6 $file $kcfgc"; + +#print "CMD $cmd\n"; + +if ( system( $cmd ) != 0 ) { + print STDERR "Unable to run kconfig_compiler_kf6\n"; + exit 1; +} + +checkfile( $file_h ); +checkfile( $file_cpp ); + +exit 0; + +sub checkfile() +{ + my $file = shift; + + $file =~ /\/([^\/]*)$/; + my $filename = $1; + + print "Checking '$filename':\n"; + + my @ref; + if ( !open( REF, "$file.ref" ) ) { + print STDERR "Unable to open $file.ref\n"; + exit 1; + } + while( ) { + push @ref, $_; + } + close REF; + + if ( !open( READ, $filename ) ) { + print STDERR "Unable to open $filename\n"; + exit 1; + } + + $error = 0; + $i = 0; + $line = 1; + while( ) { + $out = $_; + $ref = @ref[$i++]; + + if ( $out ne $ref ) { + $error++; + print " Line $line: Expected : $ref"; + print " Line $line: Compiler output : $out"; + } + + $line++; + } + + close READ; + + if ( $error > 0 ) { + print "\n FAILED: $error errors found.\n"; + if ( $error > 5 ) { + system( "diff -u $file.ref $filename" ); + } + exit 1; + } else { + print " OK\n"; + } +} diff --git a/src/kconfig_compiler/kcfg.xsd b/src/kconfig_compiler/kcfg.xsd new file mode 100644 index 0000000..80b1da1 --- /dev/null +++ b/src/kconfig_compiler/kcfg.xsd @@ -0,0 +1,239 @@ + + + + + + + + SPDX-FileCopyrightText: 2003 Cornelius Schumacher <schumacher@kde.org> + SPDX-FileCopyrightText: 2003 Waldo Bastian <bastian@kde.org> + SPDX-FileCopyrightText: 2003 Zack Rusin <zack@kde.org> + SPDX-FileCopyrightText: 2004 Frans Englich <frans.englich@telia.com> + SPDX-FileCopyrightText: 2006 Michaël Larouche <michael.larouche@kdemail.net> + + Permission to use, copy, modify and distribute this DTD + and its accompanying documentation for any purpose and without fee + is hereby granted in perpetuity, provided that the above copyright + notice and this paragraph appear in all copies. The copyright + holders make no representation about the suitability of the DTD for + any purpose. It is provided "as is" without expressed or implied + warranty. + + + + + + + A Schema for KDE's KConfigXT XML format. It is similar to the DTD + found at: + + http://www.kde.org/standards/kcfg/1.0/kcfg.dtd + + Documents valid against the Schema version are backwards compatible + to the DTD. Validating against the Schema instead of the DTD is + recommended, since the former provides better validation. + + A document instance of this Schema should have a declaration + looking like this: + + + + + + + ]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/kconfig_compiler/kconfig_compiler.cpp b/src/kconfig_compiler/kconfig_compiler.cpp new file mode 100644 index 0000000..01f2246 --- /dev/null +++ b/src/kconfig_compiler/kconfig_compiler.cpp @@ -0,0 +1,809 @@ +/* + This file is part of KDE. + + SPDX-FileCopyrightText: 2003 Cornelius Schumacher + SPDX-FileCopyrightText: 2003 Waldo Bastian + SPDX-FileCopyrightText: 2003 Zack Rusin + SPDX-FileCopyrightText: 2006 Michaël Larouche + SPDX-FileCopyrightText: 2008 Allen Winter + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include "../core/kconfig_version.h" +#include "KConfigCommonStructs.h" +#include "KConfigHeaderGenerator.h" +#include "KConfigParameters.h" +#include "KConfigSourceGenerator.h" +#include "KConfigXmlParser.h" + +QString varName(const QString &n, const KConfigParameters &cfg) +{ + QString result; + if (!cfg.dpointer) { + result = QChar::fromLatin1('m') + n; + result[1] = result.at(1).toUpper(); + } else { + result = n; + result[0] = result.at(0).toLower(); + } + return result; +} + +QString varPath(const QString &n, const KConfigParameters &cfg) +{ + QString result; + if (cfg.dpointer) { + result = QLatin1String{"d->"} + varName(n, cfg); + } else { + result = varName(n, cfg); + } + return result; +} + +QString enumName(const QString &n) +{ + QString result = QLatin1String("Enum") + n; + result[4] = result.at(4).toUpper(); + return result; +} + +QString enumName(const QString &n, const CfgEntry::Choices &c) +{ + QString result = c.name(); + if (result.isEmpty()) { + result = QLatin1String("Enum") + n; + result[4] = result.at(4).toUpper(); + } + return result; +} + +QString enumType(const CfgEntry *e, bool globalEnums) +{ + QString result = e->choices.name(); + if (result.isEmpty()) { + result = QLatin1String("Enum") + e->name; + if (!globalEnums) { + result += QLatin1String("::type"); + } + result[4] = result.at(4).toUpper(); + } + return result; +} + +QString enumTypeQualifier(const QString &n, const CfgEntry::Choices &c) +{ + QString result = c.name(); + if (result.isEmpty()) { + result = QLatin1String("Enum") + n + QLatin1String("::"); + result[4] = result.at(4).toUpper(); + } else if (c.external()) { + result = c.externalQualifier(); + } else { + result.clear(); + } + return result; +} + +QString setFunction(const QString &n, const QString &className) +{ + QString result = QLatin1String("set") + n; + result[3] = result.at(3).toUpper(); + + if (!className.isEmpty()) { + result = className + QLatin1String("::") + result; + } + return result; +} + +QString changeSignalName(const QString &n) +{ + return n + QLatin1String{"Changed"}; +} + +QString getDefaultFunction(const QString &n, const QString &className) +{ + QString result = QLatin1String("default%1Value").arg(n); + result[7] = result.at(7).toUpper(); + + if (!className.isEmpty()) { + result.prepend(className + QLatin1String("::")); + } + return result; +} + +QString getFunction(const QString &n, const QString &className) +{ + QString result = n; + result[0] = result.at(0).toLower(); + + if (!className.isEmpty()) { + result.prepend(className + QLatin1String("::")); + } + return result; +} + +QString immutableFunction(const QString &n, const QString &className) +{ + QString result = QLatin1String("is") + n; + result[2] = result.at(2).toUpper(); + result += QLatin1String{"Immutable"}; + + if (!className.isEmpty()) { + result.prepend(className + QLatin1String("::")); + } + return result; +} + +void addQuotes(QString &s) +{ + if (!s.startsWith(QLatin1Char('"'))) { + s.prepend(QLatin1Char('"')); + } + if (!s.endsWith(QLatin1Char('"'))) { + s.append(QLatin1Char('"')); + } +} + +static QString quoteString(const QString &s) +{ + QString r = s; + r.replace(QLatin1Char('\\'), QLatin1String("\\\\")); + r.replace(QLatin1Char('\"'), QLatin1String("\\\"")); + r.remove(QLatin1Char('\r')); + r.replace(QLatin1Char('\n'), QLatin1String("\\n\"\n\"")); + return QLatin1Char('\"') + r + QLatin1Char('\"'); +} + +QString literalString(const QString &str) +{ + const bool isAscii = std::none_of(str.cbegin(), str.cend(), [](const QChar ch) { + return ch.unicode() > 127; + }); + + if (isAscii) { + return QLatin1String("QStringLiteral( %1 )").arg(quoteString(str)); + } else { + return QLatin1String("QString::fromUtf8( %1 )").arg(quoteString(str)); + } +} + +QString signalEnumName(const QString &signalName) +{ + QString result; + result = QLatin1String("signal") + signalName; + result[6] = result.at(6).toUpper(); + + return result; +} + +bool isUnsigned(const QString &type) +{ + return type == QLatin1String("UInt") || type == QLatin1String("ULongLong"); +} + +/** + Return parameter declaration for given type. +*/ +QString param(const QString &t) +{ + const QString type = t.toLower(); + if (type == QLatin1String("string")) { + return QStringLiteral("const QString &"); + } else if (type == QLatin1String("stringlist")) { + return QStringLiteral("const QStringList &"); + } else if (type == QLatin1String("font")) { + return QStringLiteral("const QFont &"); + } else if (type == QLatin1String("rect")) { + return QStringLiteral("const QRect &"); + } else if (type == QLatin1String("rectf")) { + return QStringLiteral("const QRectF &"); + } else if (type == QLatin1String("size")) { + return QStringLiteral("const QSize &"); + } else if (type == QLatin1String("sizef")) { + return QStringLiteral("const QSizeF &"); + } else if (type == QLatin1String("color")) { + return QStringLiteral("const QColor &"); + } else if (type == QLatin1String("point")) { + return QStringLiteral("const QPoint &"); + } else if (type == QLatin1String("pointf")) { + return QStringLiteral("const QPointF &"); + } else if (type == QLatin1String("int")) { + return QStringLiteral("int"); + } else if (type == QLatin1String("uint")) { + return QStringLiteral("uint"); + } else if (type == QLatin1String("bool")) { + return QStringLiteral("bool"); + } else if (type == QLatin1String("double")) { + return QStringLiteral("double"); + } else if (type == QLatin1String("datetime")) { + return QStringLiteral("const QDateTime &"); + } else if (type == QLatin1String("longlong")) { + return QStringLiteral("qint64"); + } else if (type == QLatin1String("ulonglong")) { + return QStringLiteral("quint64"); + } else if (type == QLatin1String("intlist")) { + return QStringLiteral("const QList &"); + } else if (type == QLatin1String("enum")) { + return QStringLiteral("int"); + } else if (type == QLatin1String("path")) { + return QStringLiteral("const QString &"); + } else if (type == QLatin1String("pathlist")) { + return QStringLiteral("const QStringList &"); + } else if (type == QLatin1String("password")) { + return QStringLiteral("const QString &"); + } else if (type == QLatin1String("url")) { + return QStringLiteral("const QUrl &"); + } else if (type == QLatin1String("urllist")) { + return QStringLiteral("const QList &"); + } else { + std::cerr << "kconfig_compiler_kf6 does not support type \"" << qPrintable(type) << "\"" << std::endl; + return QStringLiteral("QString"); // For now, but an assert would be better + } +} + +/** + Actual C++ storage type for given type. +*/ +QString cppType(const QString &t) +{ + const QString type = t.toLower(); + if (type == QLatin1String("string")) { + return QStringLiteral("QString"); + } else if (type == QLatin1String("stringlist")) { + return QStringLiteral("QStringList"); + } else if (type == QLatin1String("font")) { + return QStringLiteral("QFont"); + } else if (type == QLatin1String("rect")) { + return QStringLiteral("QRect"); + } else if (type == QLatin1String("rectf")) { + return QStringLiteral("QRectF"); + } else if (type == QLatin1String("size")) { + return QStringLiteral("QSize"); + } else if (type == QLatin1String("sizef")) { + return QStringLiteral("QSizeF"); + } else if (type == QLatin1String("color")) { + return QStringLiteral("QColor"); + } else if (type == QLatin1String("point")) { + return QStringLiteral("QPoint"); + } else if (type == QLatin1String("pointf")) { + return QStringLiteral("QPointF"); + } else if (type == QLatin1String("int")) { + return QStringLiteral("int"); + } else if (type == QLatin1String("uint")) { + return QStringLiteral("uint"); + } else if (type == QLatin1String("bool")) { + return QStringLiteral("bool"); + } else if (type == QLatin1String("double")) { + return QStringLiteral("double"); + } else if (type == QLatin1String("datetime")) { + return QStringLiteral("QDateTime"); + } else if (type == QLatin1String("longlong")) { + return QStringLiteral("qint64"); + } else if (type == QLatin1String("ulonglong")) { + return QStringLiteral("quint64"); + } else if (type == QLatin1String("intlist")) { + return QStringLiteral("QList"); + } else if (type == QLatin1String("enum")) { + return QStringLiteral("int"); + } else if (type == QLatin1String("path")) { + return QStringLiteral("QString"); + } else if (type == QLatin1String("pathlist")) { + return QStringLiteral("QStringList"); + } else if (type == QLatin1String("password")) { + return QStringLiteral("QString"); + } else if (type == QLatin1String("url")) { + return QStringLiteral("QUrl"); + } else if (type == QLatin1String("urllist")) { + return QStringLiteral("QList"); + } else { + std::cerr << "kconfig_compiler_kf6 does not support type \"" << qPrintable(type) << "\"" << std::endl; + return QStringLiteral("QString"); // For now, but an assert would be better + } +} + +QString defaultValue(const QString &t) +{ + const QString type = t.toLower(); + if (type == QLatin1String("string")) { + return QStringLiteral("\"\""); // Use empty string, not null string! + } else if (type == QLatin1String("stringlist")) { + return QStringLiteral("QStringList()"); + } else if (type == QLatin1String("font")) { + return QStringLiteral("QFont()"); + } else if (type == QLatin1String("rect")) { + return QStringLiteral("QRect()"); + } else if (type == QLatin1String("rectf")) { + return QStringLiteral("QRectF()"); + } else if (type == QLatin1String("size")) { + return QStringLiteral("QSize()"); + } else if (type == QLatin1String("sizef")) { + return QStringLiteral("QSizeF()"); + } else if (type == QLatin1String("color")) { + return QStringLiteral("QColor(128, 128, 128)"); + } else if (type == QLatin1String("point")) { + return QStringLiteral("QPoint()"); + } else if (type == QLatin1String("pointf")) { + return QStringLiteral("QPointF()"); + } else if (type == QLatin1String("int")) { + return QStringLiteral("0"); + } else if (type == QLatin1String("uint")) { + return QStringLiteral("0"); + } else if (type == QLatin1String("bool")) { + return QStringLiteral("false"); + } else if (type == QLatin1String("double")) { + return QStringLiteral("0.0"); + } else if (type == QLatin1String("datetime")) { + return QStringLiteral("QDateTime()"); + } else if (type == QLatin1String("longlong")) { + return QStringLiteral("0"); + } else if (type == QLatin1String("ulonglong")) { + return QStringLiteral("0"); + } else if (type == QLatin1String("intlist")) { + return QStringLiteral("QList()"); + } else if (type == QLatin1String("enum")) { + return QStringLiteral("0"); + } else if (type == QLatin1String("path")) { + return QStringLiteral("\"\""); // Use empty string, not null string! + } else if (type == QLatin1String("pathlist")) { + return QStringLiteral("QStringList()"); + } else if (type == QLatin1String("password")) { + return QStringLiteral("\"\""); // Use empty string, not null string! + } else if (type == QLatin1String("url")) { + return QStringLiteral("QUrl()"); + } else if (type == QLatin1String("urllist")) { + return QStringLiteral("QList()"); + } else { + std::cerr << "Error, kconfig_compiler_kf6 does not support the \"" << qPrintable(type) << "\" type!" << std::endl; + return QStringLiteral("QString"); // For now, but an assert would be better + } +} + +QString itemType(const QString &type) +{ + if (type.isEmpty()) { + return QString{}; + } + + QString str = type; + str[0] = str.at(0).toUpper(); + + return str; +} + +QString itemDeclaration(const CfgEntry *e, const KConfigParameters &cfg) +{ + if (e->name.isEmpty()) { + return QString{}; + } + + const QString type = cfg.inherits + QLatin1String{"::Item"} + itemType(e->type); + + QString fCap = e->name; + fCap[0] = fCap.at(0).toUpper(); + const QString argSuffix = (!e->param.isEmpty()) ? (QStringLiteral("[%1]").arg(e->paramMax + 1)) : QString(); + QString result; + + if (!cfg.itemAccessors && !cfg.dpointer) { + result += QLatin1String{" "} + (!e->signalList.isEmpty() ? QStringLiteral("KConfigCompilerSignallingItem") : type); + result += QLatin1String(" *item%1;\n").arg(fCap + argSuffix); + } + + if (!e->signalList.isEmpty()) { + result += QLatin1String(" %1 *%2;\n").arg(type, innerItemVar(e, cfg) + argSuffix); + } + + return result; +} + +// returns the name of an item variable +// use itemPath to know the full path +// like using d-> in case of dpointer +QString itemVar(const CfgEntry *e, const KConfigParameters &cfg) +{ + QString result; + if (cfg.itemAccessors) { + if (!cfg.dpointer) { + result = QLatin1String("m%1Item").arg(e->name); + result[1] = result.at(1).toUpper(); + } else { + result = e->name + QLatin1String{"Item"}; + result[0] = result.at(0).toLower(); + } + } else { + result = QLatin1String{"item"} + e->name; + result[4] = result.at(4).toUpper(); + } + return result; +} + +// returns the name of the local inner item if there is one +// (before wrapping with KConfigCompilerSignallingItem) +// Otherwise return itemVar() +QString innerItemVar(const CfgEntry *e, const KConfigParameters &cfg) +{ + if (e->signalList.isEmpty()) { + return itemPath(e, cfg); + } + + QString result = QLatin1String{"innerItem"} + e->name; + result[9] = result.at(9).toUpper(); + return result; +} + +QString itemPath(const CfgEntry *e, const KConfigParameters &cfg) +{ + return cfg.dpointer ? QLatin1String{"d->"} + itemVar(e, cfg) : itemVar(e, cfg); +} + +QString newInnerItem(const CfgEntry *entry, const QString &key, const QString &defaultValue, const KConfigParameters &cfg, const QString ¶m) +{ + QString str = QLatin1String("new %1::Item%2").arg(cfg.inherits, itemType(entry->type)); + str += QLatin1String("( currentGroup(), %1, %2").arg(key, varPath(entry->name, cfg) + param); + + if (entry->type == QLatin1String("Enum")) { + str += QLatin1String{", values"} + entry->name; + } + if (!defaultValue.isEmpty()) { + str += QLatin1String(", ") + defaultValue; + } + str += QLatin1String(" );"); + + return str; +} + +QString newItem(const CfgEntry *entry, const QString &key, const QString &defaultValue, const KConfigParameters &cfg, const QString ¶m) +{ + const QList sigs = entry->signalList; + if (sigs.isEmpty()) { + return newInnerItem(entry, key, defaultValue, cfg, param); + } + + QString str; + str += QLatin1String("new KConfigCompilerSignallingItem(%1, this, notifyFunction, ").arg(innerItemVar(entry, cfg) + param); + // Append the signal flags + const int listSize = sigs.size(); + for (int i = 0; i < listSize; ++i) { + if (i != 0) { + str += QLatin1String(" | "); + } + str += signalEnumName(sigs[i].name); + } + str += QLatin1String(");"); + + return str; +} + +QString paramString(const QString &s, const CfgEntry *e, int i) +{ + QString result = s; + const QString needle = QLatin1String("$(%1)").arg(e->param); + if (result.contains(needle)) { + const QString tmp = e->paramType == QLatin1String{"Enum"} ? e->paramValues.at(i) : QString::number(i); + + result.replace(needle, tmp); + } + return result; +} + +QString paramString(const QString &group, const QList ¶meters) +{ + QString paramString = group; + QString arguments; + int i = 1; + bool firstArg = true; + for (const auto ¶m : parameters) { + const QString paramName = param.name; + const QString str = QLatin1String("$(%1)").arg(paramName); + if (paramString.contains(str)) { + const QString tmp = QStringLiteral("%%1").arg(i++); + paramString.replace(str, tmp); + + if (firstArg) { + arguments += QLatin1String{".arg( "}; + firstArg = false; + } + + arguments += QLatin1String("mParam%1, ").arg(paramName); + } + } + + if (!arguments.isEmpty()) { + // Remove the last ", " + arguments.chop(2); + + // Close the ".arg( " + arguments += QLatin1String{" )"}; + } else { + return QLatin1String("QStringLiteral( \"%1\" )").arg(group); + } + + return QLatin1String("QStringLiteral( \"%1\" )%2").arg(paramString, arguments); +} + +QString translatedString(const KConfigParameters &cfg, const QString &string, const QString &context, const QString ¶m, const QString ¶mValue) +{ + QString result; + + switch (cfg.translationSystem) { + case KConfigParameters::QtTranslation: + if (!context.isEmpty()) { + result += QLatin1String("/*: %1 */ QCoreApplication::translate(\"").arg(context); + } else { + result += QLatin1String{"QCoreApplication::translate(\""}; + } + result += QLatin1String("%1\", ").arg(cfg.className); + break; + + case KConfigParameters::KdeTranslation: + if (!cfg.translationDomain.isEmpty() && !context.isEmpty()) { + result += QLatin1String("i18ndc(%1, %2, ").arg(quoteString(cfg.translationDomain), quoteString(context)); + } else if (!cfg.translationDomain.isEmpty()) { + result += QLatin1String("i18nd(%1, ").arg(quoteString(cfg.translationDomain)); + } else if (!context.isEmpty()) { + result += QLatin1String("i18nc(%1, ").arg(quoteString(context)); + } else { + result += QLatin1String{"i18n("}; + } + break; + } + + if (!param.isEmpty()) { + QString resolvedString = string; + resolvedString.replace(QLatin1String("$(%1)").arg(param), paramValue); + result += quoteString(resolvedString); + } else { + result += quoteString(string); + } + + result += QLatin1Char{')'}; + + return result; +} + +/* int i is the value of the parameter */ +QString userTextsFunctions(const CfgEntry *e, const KConfigParameters &cfg, QString itemVarStr, const QString &i) +{ + QString txt; + if (itemVarStr.isNull()) { + itemVarStr = itemPath(e, cfg); + } + if (!e->label.isEmpty()) { + txt += QLatin1String(" %1->setLabel( %2 );\n").arg(itemVarStr, translatedString(cfg, e->label, e->labelContext, e->param, i)); + } + if (!e->toolTip.isEmpty()) { + txt += QLatin1String(" %1->setToolTip( %2 );\n").arg(itemVarStr, translatedString(cfg, e->toolTip, e->toolTipContext, e->param, i)); + } + if (!e->whatsThis.isEmpty()) { + txt += QLatin1String(" %1->setWhatsThis( %2 );\n").arg(itemVarStr, translatedString(cfg, e->whatsThis, e->whatsThisContext, e->param, i)); + } + return txt; +} + +// returns the member mutator implementation +// which should go in the h file if inline +// or the cpp file if not inline +// TODO: Fix add Debug Method, it should also take the debug string. +void addDebugMethod(QTextStream &out, const KConfigParameters &cfg, const QString &n) +{ + if (cfg.qCategoryLoggingName.isEmpty()) { + out << " qDebug() << \"" << setFunction(n); + } else { + out << " qCDebug(" << cfg.qCategoryLoggingName << ") << \"" << setFunction(n); + } +} + +// returns the member get default implementation +// which should go in the h file if inline +// or the cpp file if not inline +QString memberGetDefaultBody(const CfgEntry *e) +{ + QString result = e->code; + QTextStream out(&result, QIODevice::WriteOnly); + out << '\n'; + + if (!e->param.isEmpty()) { + out << " switch (i) {\n"; + for (int i = 0; i <= e->paramMax; ++i) { + if (!e->paramDefaultValues[i].isEmpty()) { + out << " case " << i << ": return " << e->paramDefaultValues[i] << ";\n"; + } + } + QString defaultValue = e->defaultValue; + + out << " default:\n"; + out << " return " << defaultValue.replace(QLatin1String("$(%1)").arg(e->param), QLatin1String("i")) << ";\n"; + out << " }\n"; + } else { + out << " return " << e->defaultValue << ';'; + } + + return result; +} + +// returns the item accessor implementation +// which should go in the h file if inline +// or the cpp file if not inline +QString itemAccessorBody(const CfgEntry *e, const KConfigParameters &cfg) +{ + QString result; + QTextStream out(&result, QIODevice::WriteOnly); + + out << "return " << itemPath(e, cfg); + if (!e->param.isEmpty()) { + out << "[i]"; + } + out << ";\n"; + + return result; +} + +// indents text adding X spaces per line +QString indent(QString text, int spaces) +{ + QString result; + QTextStream out(&result, QIODevice::WriteOnly); + QTextStream in(&text, QIODevice::ReadOnly); + QString currLine; + while (!in.atEnd()) { + currLine = in.readLine(); + if (!currLine.isEmpty()) { + for (int i = 0; i < spaces; ++i) { + out << " "; + } + } + out << currLine << '\n'; + } + return result; +} + +bool hasErrors(KConfigXmlParser &parser, const ParseResult &parseResult, const KConfigParameters &cfg) +{ + Q_UNUSED(parser) + + if (cfg.className.isEmpty()) { + std::cerr << "Class name missing" << std::endl; + return true; + } + + if (cfg.singleton && !parseResult.parameters.isEmpty()) { + std::cerr << "Singleton class can not have parameters" << std::endl; + return true; + } + + if (!parseResult.cfgFileName.isEmpty() && parseResult.cfgFileNameArg) { + std::cerr << "Having both a fixed filename and a filename as argument is not possible." << std::endl; + return true; + } + + /* TODO: For some reason some configuration files prefer to have *no* entries + * at all in it, and the generated code is mostly bogus as KConfigXT will not + * handle save / load / properties, etc, nothing. + * + * The first of those files that I came across are qmakebuilderconfig.kcfg from the KDevelop + * project. + * I think we should remove the possibility of creating configuration classes from configuration + * files that don't really have configuration in it. but I'm changing this right now to allow + * kdevelop files to pass. + * + * Remove for KDE 6 + * (to make things more interesting, it failed in a code that's never used within KDevelop... ) + */ + if (parseResult.entries.isEmpty()) { + std::cerr << "No entries." << std::endl; + return false; + } + + return false; +} + +int main(int argc, char **argv) +{ + QCoreApplication app(argc, argv); + app.setApplicationName(QStringLiteral("kconfig_compiler")); + app.setApplicationVersion(QStringLiteral(KCONFIG_VERSION_STRING)); + + QString inputFilename; + QString codegenFilename; + + QCommandLineOption targetDirectoryOption(QStringList{QStringLiteral("d"), QStringLiteral("directory")}, + QCoreApplication::translate("main", "Directory to generate files in [.]"), + QCoreApplication::translate("main", "directory"), + QStringLiteral(".")); + + QCommandLineOption licenseOption(QStringList{QStringLiteral("l"), QStringLiteral("license")}, + QCoreApplication::translate("main", "Display software license.")); + + QCommandLineParser parser; + + parser.addPositionalArgument(QStringLiteral("file.kcfg"), QStringLiteral("Input kcfg XML file")); + parser.addPositionalArgument(QStringLiteral("file.kcfgc"), QStringLiteral("Code generation options file")); + + parser.addOption(targetDirectoryOption); + parser.addOption(licenseOption); + + parser.addVersionOption(); + parser.addHelpOption(); + parser.process(app); + + if (parser.isSet(licenseOption)) { + std::cout << "Copyright 2003 Cornelius Schumacher, Waldo Bastian, Zack Rusin," << std::endl; + std::cout << " Reinhold Kainhofer, Duncan Mac-Vicar P., Harald Fernengel" << std::endl; + std::cout << "This program comes with ABSOLUTELY NO WARRANTY." << std::endl; + std::cout << "You may redistribute copies of this program" << std::endl; + std::cout << "under the terms of the GNU Library Public License." << std::endl; + std::cout << "For more information about these matters, see the file named COPYING." << std::endl; + return 0; + } + + const QStringList args = parser.positionalArguments(); + if (args.count() < 2) { + std::cerr << "Too few arguments." << std::endl; + return 1; + } + + if (args.count() > 2) { + std::cerr << "Too many arguments." << std::endl; + return 1; + } + inputFilename = args.at(0); + codegenFilename = args.at(1); + + // TODO: Transform baseDir into a helper. + QString baseDir = parser.value(targetDirectoryOption); + +#ifdef Q_OS_WIN + if (!baseDir.endsWith(QLatin1Char{'/'}) && !baseDir.endsWith(QLatin1Char{'\\'})) { +#else + if (!baseDir.endsWith(QLatin1Char{'/'})) { +#endif + baseDir.append(QLatin1Char{'/'}); + } + + KConfigParameters cfg(codegenFilename); + + KConfigXmlParser xmlParser(cfg, inputFilename); + + // The Xml Parser aborts in the case of an error, so if we get + // to parseResult, we have a working Xml file. + xmlParser.start(); + + ParseResult parseResult = xmlParser.getParseResult(); + + if (hasErrors(xmlParser, parseResult, cfg)) { + return 1; + } + + // TODO: Move this to somewhere saner. + for (const auto &signal : std::as_const(parseResult.signalList)) { + parseResult.hasNonModifySignals |= !signal.modify; + } + + // remove '.kcfg' from the name. + const QString baseName = inputFilename.mid(0, inputFilename.size() - 5); + KConfigHeaderGenerator headerGenerator(baseName, baseDir, cfg, parseResult); + headerGenerator.start(); + headerGenerator.save(); + + KConfigSourceGenerator sourceGenerator(baseName, baseDir, cfg, parseResult); + sourceGenerator.start(); + sourceGenerator.save(); + + qDeleteAll(parseResult.entries); +} diff --git a/src/kreadconfig/CMakeLists.txt b/src/kreadconfig/CMakeLists.txt new file mode 100644 index 0000000..d3bbe30 --- /dev/null +++ b/src/kreadconfig/CMakeLists.txt @@ -0,0 +1,15 @@ +add_executable(kreadconfig6 kreadconfig.cpp) +ecm_mark_nongui_executable(kreadconfig6) + +target_link_libraries(kreadconfig6 KF6::ConfigCore) + +install(TARGETS kreadconfig6 ${KF_INSTALL_TARGETS_DEFAULT_ARGS}) + +########### next target ############### + +add_executable(kwriteconfig6 kwriteconfig.cpp) +ecm_mark_nongui_executable(kwriteconfig6) + +target_link_libraries(kwriteconfig6 KF6::ConfigCore) + +install(TARGETS kwriteconfig6 ${KF_INSTALL_TARGETS_DEFAULT_ARGS}) diff --git a/src/kreadconfig/kreadconfig.cpp b/src/kreadconfig/kreadconfig.cpp new file mode 100644 index 0000000..d501093 --- /dev/null +++ b/src/kreadconfig/kreadconfig.cpp @@ -0,0 +1,121 @@ +/* Read KConfig() entries - for use in shell scripts. + + SPDX-FileCopyrightText: 2001 Red Hat, Inc. + SPDX-FileContributor: Programmed by Bernhard Rosenkraenzer + + SPDX-License-Identifier: GPL-2.0-or-later +*/ + +/* + * If --type is specified as bool, the return value is 0 if the value + * is set, 1 if it isn't set. There is no output. + * + * If --type is specified as num, the return value matches the value + * of the key. There is no output. + * + * If --type is not set, the value of the key is simply printed to stdout. + * + * Usage examples: + * if kreadconfig6 --group KDE --key macStyle --type bool; then + * echo "We're using Mac-Style menus." + * else + * echo "We're using normal menus." + * fi + * + * TRASH=`kreadconfig6 --group Paths --key Trash` + * if test -n "$TRASH"; then + * mv someFile "$TRASH" + * else + * rm someFile + * fi + */ + +#include +#include +#include +#include +#include + +int main(int argc, char **argv) +{ + QCoreApplication app(argc, argv); + + QCommandLineParser parser; + parser.addHelpOption(); + parser.addOption( + QCommandLineOption(QStringLiteral("file"), QCoreApplication::translate("main", "Use instead of global config"), QStringLiteral("file"))); + parser.addOption( + QCommandLineOption(QStringLiteral("group"), + QCoreApplication::translate("main", "Group to look in. Use \"\" for the root group, or use repeatedly for nested groups."), + QStringLiteral("group"), + QStringLiteral("KDE"))); + parser.addOption(QCommandLineOption(QStringLiteral("key"), QCoreApplication::translate("main", "Key to look for"), QStringLiteral("key"))); + parser.addOption(QCommandLineOption(QStringLiteral("default"), QCoreApplication::translate("main", "Default value"), QStringLiteral("value"))); + parser.addOption(QCommandLineOption(QStringLiteral("type"), QCoreApplication::translate("main", "Type of variable"), QStringLiteral("type"))); + + parser.process(app); + + const QStringList groups = parser.values(QStringLiteral("group")); + QString key = parser.value(QStringLiteral("key")); + QString file = parser.value(QStringLiteral("file")); + QString dflt = parser.value(QStringLiteral("default")); + QString type = parser.value(QStringLiteral("type")).toLower(); + + if (key.isNull() || !parser.positionalArguments().isEmpty()) { + parser.showHelp(1); + } + + KSharedConfig::openConfig(); + + KConfig *konfig; + bool configMustDeleted = false; + if (file.isEmpty()) { + konfig = KSharedConfig::openConfig().data(); + } else { + konfig = new KConfig(file, KConfig::NoGlobals); + configMustDeleted = true; + } + KConfigGroup cfgGroup = konfig->group(QString()); + for (const QString &grp : groups) { + if (grp.isEmpty()) { + fprintf(stderr, + "%s: %s\n", + qPrintable(QCoreApplication::applicationName()), + qPrintable(QCoreApplication::translate("main", "Group name cannot be empty, use \"\" for the root group"))); + if (configMustDeleted) { + delete konfig; + } + return 2; + } + cfgGroup = cfgGroup.group(grp); + } + + if (type == QLatin1String{"bool"}) { + dflt = dflt.toLower(); + bool def = (dflt == QLatin1String{"true"} || dflt == QLatin1String{"on"} || dflt == QLatin1String{"yes"} || dflt == QLatin1String{"1"}); + bool retValue = !cfgGroup.readEntry(key, def); + if (configMustDeleted) { + delete konfig; + } + return retValue; + } else if (type == QLatin1String{"num"} || type == QLatin1String{"int"}) { + int retValue = cfgGroup.readEntry(key, dflt.toInt()); + if (configMustDeleted) { + delete konfig; + } + return retValue; + } else if (type == QLatin1String{"path"}) { + fprintf(stdout, "%s\n", cfgGroup.readPathEntry(key, dflt).toLocal8Bit().data()); + if (configMustDeleted) { + delete konfig; + } + return 0; + } else { + /* Assume it's a string... */ + fprintf(stdout, "%s\n", cfgGroup.readEntry(key, dflt).toLocal8Bit().data()); + if (configMustDeleted) { + delete konfig; + } + return 0; + } +} diff --git a/src/kreadconfig/kwriteconfig.cpp b/src/kreadconfig/kwriteconfig.cpp new file mode 100644 index 0000000..af39325 --- /dev/null +++ b/src/kreadconfig/kwriteconfig.cpp @@ -0,0 +1,97 @@ +/* Write KConfig() entries - for use in shell scripts. + + SPDX-FileCopyrightText: 2001 Red Hat , Inc. + SPDX-FileCopyrightText: 2001 Luís Pedro Coelho + + Programmed by Luís Pedro Coelho + based on kreadconfig by Bernhard Rosenkraenzer + + SPDX-License-Identifier: GPL-2.0-or-later +*/ + +#include +#include +#include +#include +#include + +int main(int argc, char **argv) +{ + QCoreApplication app(argc, argv); + + QCommandLineParser parser; + parser.addHelpOption(); + parser.addOption( + QCommandLineOption(QStringLiteral("file"), QCoreApplication::translate("main", "Use instead of global config"), QStringLiteral("file"))); + parser.addOption( + QCommandLineOption(QStringLiteral("group"), + QCoreApplication::translate("main", "Group to look in. Use \"\" for the root group, or use repeatedly for nested groups."), + QStringLiteral("group"), + QStringLiteral("KDE"))); + parser.addOption(QCommandLineOption(QStringLiteral("key"), QCoreApplication::translate("main", "Key to look for"), QStringLiteral("key"))); + parser.addOption( + QCommandLineOption(QStringLiteral("type"), + QCoreApplication::translate("main", "Type of variable. Use \"bool\" for a boolean, otherwise it is treated as a string"), + QStringLiteral("type"))); + parser.addOption(QCommandLineOption(QStringLiteral("delete"), QCoreApplication::translate("main", "Delete the designated key if enabled"))); + parser.addPositionalArgument(QStringLiteral("value"), QCoreApplication::translate("main", "The value to write. Mandatory, on a shell use '' for empty")); + + parser.process(app); + + const QStringList groups = parser.values(QStringLiteral("group")); + QString key = parser.value(QStringLiteral("key")); + QString file = parser.value(QStringLiteral("file")); + QString type = parser.value(QStringLiteral("type")).toLower(); + bool del = parser.isSet(QStringLiteral("delete")); + + QString value; + if (del) { + value = QString{}; + } else if (parser.positionalArguments().isEmpty()) { + parser.showHelp(1); + } else { + value = parser.positionalArguments().at(0); + } + + KConfig *konfig; + if (file.isEmpty()) { + konfig = new KConfig(QStringLiteral("kdeglobals"), KConfig::NoGlobals); + } else { + konfig = new KConfig(file, KConfig::NoGlobals); + } + + KConfigGroup cfgGroup = konfig->group(QString()); + for (const QString &grp : groups) { + if (grp.isEmpty()) { + fprintf(stderr, + "%s: %s\n", + qPrintable(QCoreApplication::applicationName()), + qPrintable(QCoreApplication::translate("main", "Group name cannot be empty, use \"\" for the root group"))); + return 2; + } + cfgGroup = cfgGroup.group(grp); + } + + if (konfig->accessMode() != KConfig::ReadWrite || cfgGroup.isEntryImmutable(key)) { + return 2; + } + + if (del) { + cfgGroup.deleteEntry(key); + } else if (type == QLatin1String{"bool"}) { + // For symmetry with kreadconfig we accept a wider range of values as true than Qt + /* clang-format off */ + bool boolvalue = value == QLatin1String{"true"} + || value == QLatin1String{"on"} + || value == QLatin1String{"yes"} + || value == QLatin1String{"1"}; /* clang-format on */ + cfgGroup.writeEntry(key, boolvalue); + } else if (type == QLatin1String{"path"}) { + cfgGroup.writePathEntry(key, value); + } else { + cfgGroup.writeEntry(key, value); + } + konfig->sync(); + delete konfig; + return 0; +} diff --git a/src/qml/CMakeLists.txt b/src/qml/CMakeLists.txt new file mode 100644 index 0000000..3ded3e8 --- /dev/null +++ b/src/qml/CMakeLists.txt @@ -0,0 +1,64 @@ +# SPDX-FileCopyrightText: 2023 Alexander Lohnau +# SPDX-License-Identifier: BSD-2-Clause + +add_library(KF6ConfigQml) +add_library(KF6::ConfigQml ALIAS KF6ConfigQml) + +ecm_add_qml_module(KF6ConfigQml URI org.kde.config GENERATE_PLUGIN_SOURCE) + +set_target_properties(KF6ConfigQml PROPERTIES + VERSION ${KCONFIG_VERSION} + SOVERSION ${KCONFIG_SOVERSION} + EXPORT_NAME ConfigQml +) + +target_sources(KF6ConfigQml PRIVATE + kconfigpropertymap.cpp + kwindowstatesaverquick.cpp + types.cpp +) + +ecm_qt_declare_logging_category(KF6ConfigQml + HEADER kconfig_qml_log_settings.h + IDENTIFIER KCONFIG_QML_LOG + CATEGORY_NAME kf.config.qml + DESCRIPTION "KConfig QML" + EXPORT KCONFIG +) + +ecm_generate_export_header(KF6ConfigQml + BASE_NAME KConfigQml + GROUP_BASE_NAME KF + VERSION ${KF_VERSION} + USE_VERSION_HEADER + VERSION_BASE_NAME KConfig + DEPRECATED_BASE_VERSION 0 + EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT} +) + +target_link_libraries(KF6ConfigQml + PUBLIC + KF6::ConfigCore # KCoreConfigSkeleton, in ConfigPropertyMap + KF6::ConfigGui # KWindowStateSaver + Qt6::Qml + PRIVATE + Qt6::Quick +) + +ecm_generate_headers(KConfigQml_HEADERS + HEADER_NAMES + KConfigPropertyMap + + REQUIRED_HEADERS KConfigQml_HEADERS +) +target_include_directories(KF6ConfigQml + INTERFACE "$") + +install(TARGETS KF6ConfigQml EXPORT KF6ConfigTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS}) +install(FILES + ${CMAKE_CURRENT_BINARY_DIR}/kconfigqml_export.h + ${KConfigQml_HEADERS} + DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KConfigQml COMPONENT Devel +) + +ecm_finalize_qml_module(KF6ConfigQml DESTINATION ${KDE_INSTALL_QMLDIR} EXPORT KF6ConfigTargets) diff --git a/src/qml/kconfigpropertymap.cpp b/src/qml/kconfigpropertymap.cpp new file mode 100644 index 0000000..55826a6 --- /dev/null +++ b/src/qml/kconfigpropertymap.cpp @@ -0,0 +1,138 @@ +/* + SPDX-FileCopyrightText: 2013 Marco Martin + SPDX-FileCopyrightText: 2020 David Edmundson + SPDX-FileCopyrightText: 2021 Alexander Lohnau + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#include "kconfigpropertymap.h" + +#include +#include +#include + +#include + +class KConfigPropertyMapPrivate +{ +public: + KConfigPropertyMapPrivate(KConfigPropertyMap *map) + : q(map) + { + } + + enum LoadConfigOption { + DontEmitValueChanged, + EmitValueChanged, + }; + + void loadConfig(LoadConfigOption option); + void writeConfig(); + void writeConfigValue(const QString &key, const QVariant &value); + + KConfigPropertyMap *q; + QPointer config; + bool updatingConfigValue = false; + bool notify = false; +}; + +KConfigPropertyMap::KConfigPropertyMap(KCoreConfigSkeleton *config, QObject *parent) + : QQmlPropertyMap(this, parent) + , d(new KConfigPropertyMapPrivate(this)) +{ + Q_ASSERT(config); + d->config = config; + + // Reload the config only if the change signal has *not* been emitted by ourselves updating the config + connect(config, &KCoreConfigSkeleton::configChanged, this, [this]() { + if (!d->updatingConfigValue) { + d->loadConfig(KConfigPropertyMapPrivate::EmitValueChanged); + } + }); + connect(this, &KConfigPropertyMap::valueChanged, this, [this](const QString &key, const QVariant &value) { + d->writeConfigValue(key, value); + }); + + d->loadConfig(KConfigPropertyMapPrivate::DontEmitValueChanged); +} + +KConfigPropertyMap::~KConfigPropertyMap() = default; + +bool KConfigPropertyMap::isNotify() const +{ + return d->notify; +} + +void KConfigPropertyMap::setNotify(bool notify) +{ + d->notify = notify; +} + +void KConfigPropertyMap::writeConfig() +{ + d->writeConfig(); +} + +QVariant KConfigPropertyMap::updateValue(const QString &key, const QVariant &input) +{ + Q_UNUSED(key); + if (input.userType() == qMetaTypeId()) { + return input.value().toVariant(); + } + return input; +} + +bool KConfigPropertyMap::isImmutable(const QString &key) const +{ + KConfigSkeletonItem *item = d->config.data()->findItem(key); + if (item) { + return item->isImmutable(); + } + + return false; +} + +void KConfigPropertyMapPrivate::loadConfig(KConfigPropertyMapPrivate::LoadConfigOption option) +{ + if (!config) { + return; + } + + const auto &items = config.data()->items(); + for (KConfigSkeletonItem *item : items) { + q->insert(item->key() + QStringLiteral("Default"), item->getDefault()); + q->insert(item->key(), item->property()); + if (option == EmitValueChanged) { + Q_EMIT q->valueChanged(item->key(), item->property()); + } + } +} + +void KConfigPropertyMapPrivate::writeConfig() +{ + if (!config) { + return; + } + + const auto lstItems = config.data()->items(); + for (KConfigSkeletonItem *item : lstItems) { + item->setWriteFlags(notify ? KConfigBase::Notify : KConfigBase::Normal); + item->setProperty(q->value(item->key())); + } + // Internally sync the config. This way we ensure the config file is written, even if the process crashed + config.data()->save(); +} + +void KConfigPropertyMapPrivate::writeConfigValue(const QString &key, const QVariant &value) +{ + KConfigSkeletonItem *item = config.data()->findItem(key); + if (item) { + updatingConfigValue = true; + item->setWriteFlags(notify ? KConfigBase::Notify : KConfigBase::Normal); + item->setProperty(value); + updatingConfigValue = false; + } +} + +#include "moc_kconfigpropertymap.cpp" diff --git a/src/qml/kconfigpropertymap.h b/src/qml/kconfigpropertymap.h new file mode 100644 index 0000000..9eef455 --- /dev/null +++ b/src/qml/kconfigpropertymap.h @@ -0,0 +1,71 @@ +/* + SPDX-FileCopyrightText: 2013 Marco Martin + SPDX-FileCopyrightText: 2020 David Edmundson + SPDX-FileCopyrightText: 2021 Alexander Lohnau + + SPDX-License-Identifier: LGPL-2.0-or-later +*/ + +#ifndef KCONFIGPROPERTYMAP_H +#define KCONFIGPROPERTYMAP_H + +#include +#include +#include + +class KCoreConfigSkeleton; + +#include + +class KConfigPropertyMapPrivate; + +/** + * @class KConfigPropertyMap configpropertymap.h ConfigPropertyMap + * + * An object that (optionally) automatically saves changes in a + * property map to a configuration object (e.g. a KConfig file). + * @since 5.89 + */ +class KCONFIGQML_EXPORT KConfigPropertyMap : public QQmlPropertyMap +{ + Q_OBJECT + QML_ANONYMOUS + +public: + KConfigPropertyMap(KCoreConfigSkeleton *config, QObject *parent = nullptr); + ~KConfigPropertyMap() override; + + /** + * Whether notifications on config changes are enabled. Disabled by default. + * @see KConfigBase::Notify + * @return true if writes send (dbus) notifications + */ + bool isNotify() const; + + /** + * Enable or disable notifications on config changes. + * @see KConfigBase::Notify + * @param notify whether to send notifications + */ + void setNotify(bool notify); + + /** + * @brief Whether the value at the given key is immutable + * + * @return true if the value is immutable, false if it isn't or it doesn't exist + */ + Q_INVOKABLE bool isImmutable(const QString &key) const; + + /** + * Saves the state of the property map on disk. + */ + Q_INVOKABLE void writeConfig(); + +protected: + QVariant updateValue(const QString &key, const QVariant &input) override; + +private: + std::unique_ptr const d; +}; + +#endif diff --git a/src/qml/kwindowstatesaverquick.cpp b/src/qml/kwindowstatesaverquick.cpp new file mode 100644 index 0000000..c2d4b86 --- /dev/null +++ b/src/qml/kwindowstatesaverquick.cpp @@ -0,0 +1,46 @@ +// SPDX-FileCopyrightText: 2024 Joshua Goins +// SPDX-License-Identifier: LGPL-2.0-or-later + +#include "kwindowstatesaverquick.h" +#include "kconfig_qml_log_settings.h" + +#include +#include + +#include + +void KWindowStateSaverQuick::classBegin() +{ +} + +void KWindowStateSaverQuick::componentComplete() +{ + const auto parentItem = qobject_cast(parent()); + if (!parentItem) { + qCWarning(KCONFIG_QML_LOG) << "WindowStateSaver requires a parent item"; + return; + } + + const auto window = qobject_cast(parentItem->window()); + if (!window) { + qCWarning(KCONFIG_QML_LOG) << "WindowStateSaver requires the parent to be a type that inherits QWindow"; + return; + } + + new KWindowStateSaver(window, m_configGroupName); +} + +void KWindowStateSaverQuick::setConfigGroupName(const QString &name) +{ + if (m_configGroupName != name) { + m_configGroupName = name; + Q_EMIT configGroupNameChanged(); + } +} + +QString KWindowStateSaverQuick::configGroupName() const +{ + return m_configGroupName; +} + +#include "moc_kwindowstatesaverquick.cpp" \ No newline at end of file diff --git a/src/qml/kwindowstatesaverquick.h b/src/qml/kwindowstatesaverquick.h new file mode 100644 index 0000000..cffed86 --- /dev/null +++ b/src/qml/kwindowstatesaverquick.h @@ -0,0 +1,54 @@ +// SPDX-FileCopyrightText: 2024 Joshua Goins +// SPDX-License-Identifier: LGPL-2.0-or-later + +#ifndef KWINDOWSTATESAVER_QUICK_H +#define KWINDOWSTATESAVER_QUICK_H + +#include + +/** + * @brief Creates a @c KWindowStateSaver in QML, and assigns it to the window it's parented to. + * + * Functions exactly as KWindowStateSaver in C++, as it's a small wrapper around it. + * + * @code + * import org.kde.config as KConfig + * + * Kirigami.ApplicationWindow { + * id: root + * + * title: i18n("My Window") + * + * KConfig.WindowStateSaver { + * configGroupName: "Main" + * } + * } + * @endcode + * @since 6.5 + * + * @sa KWindowStateSaver + */ +class KWindowStateSaverQuick : public QObject, public QQmlParserStatus +{ + Q_OBJECT + QML_ELEMENT + QML_NAMED_ELEMENT(WindowStateSaver) + Q_INTERFACES(QQmlParserStatus) + + Q_PROPERTY(QString configGroupName READ configGroupName WRITE setConfigGroupName NOTIFY configGroupNameChanged REQUIRED) + +public: + void classBegin() override; + void componentComplete() override; + + void setConfigGroupName(const QString &name); + QString configGroupName() const; + +Q_SIGNALS: + void configGroupNameChanged(); + +private: + QString m_configGroupName; +}; + +#endif diff --git a/src/qml/types.cpp b/src/qml/types.cpp new file mode 100644 index 0000000..d735188 --- /dev/null +++ b/src/qml/types.cpp @@ -0,0 +1,4 @@ +// SPDX-FileCopyrightText: 2023 Nicolas Fella +// SPDX-License-Identifier: LGPL-2.0-or-later + +#include "moc_types.cpp" diff --git a/src/qml/types.h b/src/qml/types.h new file mode 100644 index 0000000..08f4c74 --- /dev/null +++ b/src/qml/types.h @@ -0,0 +1,25 @@ +// SPDX-FileCopyrightText: 2023 Nicolas Fella +// SPDX-License-Identifier: LGPL-2.0-or-later + +#ifndef KCONFIGTYPES_H +#define KCONFIGTYPES_H + +#include + +#include +#include + +struct KAuthorizedForeign { + Q_GADGET + QML_NAMED_ELEMENT(KAuthorized) + QML_SINGLETON + QML_FOREIGN(KAuthorized) +}; + +struct KCoreConfigSkeletonForeign { + Q_GADGET + QML_ANONYMOUS + QML_FOREIGN(KCoreConfigSkeleton) +}; + +#endif