Git commit 3cf369b75fb6aa9d6fa5069d4c409e90b228c1ad by Jonathan Esk-Riddell. Committed on 20/10/2022 at 10:39. Pushed by sitter into branch 'master'.
add test for manpages A +0 -0 test/data/kded/CMakeLists.txt A +269 -0 test/data/kded/po/de/docs/kded5/man-kded5.8.docbook M +26 -0 test/l10n_test.rb https://invent.kde.org/sdk/releaseme/commit/3cf369b75fb6aa9d6fa5069d4c409e90b228c1ad diff --git a/test/data/kded/CMakeLists.txt b/test/data/kded/CMakeLists.txt new file mode 100644 index 0000000..e69de29 diff --git a/test/data/kded/po/de/docs/kded5/man-kded5.8.docbook b/test/data/kded/po/de/docs/kded5/man-kded5.8.docbook new file mode 100644 index 0000000..0046743 --- /dev/null +++ b/test/data/kded/po/de/docs/kded5/man-kded5.8.docbook @@ -0,0 +1,269 @@ +<?xml version="1.0" ?> +<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [ + <!ENTITY % German "INCLUDE" +><!-- change language only here --> +]> + +<refentry lang="&language;"> + +<refentryinfo> +<title +>kded5-Benutzerhandbuch</title> +<author +><firstname +>David</firstname +> <surname +>Faure</surname +> <contrib +>Betreuer</contrib> +<affiliation> +<address +><email +>[email protected]</email +></address> +</affiliation> +</author> + +<author +><firstname +>Waldo</firstname +> <surname +>Bastian</surname +> <contrib +>Ursprünglicher Autor</contrib> +<affiliation> +<address +><email +>[email protected]</email +></address> +</affiliation> +</author> + +<date +>2014-03-22</date> +<releaseinfo +>Frameworks 5.0</releaseinfo> +<productname +>KDE Frameworks</productname> + +</refentryinfo> + +<refmeta> +<refentrytitle +><command +>kded5</command +></refentrytitle> +<manvolnum +>8</manvolnum> +</refmeta> + +<refnamediv> +<refname +><command +>kded5</command +></refname> +<refpurpose +>&kde;-Dienst: Löst Aktualisierungen der Sycoca-Datenbank aus, wenn erforderlich</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<title +>Übersicht</title> + +<cmdsynopsis +><command +>kded5</command +> <arg choice="opt" +>--check</arg +> </cmdsynopsis> +</refsynopsisdiv> + +<refsect1> +<title +>Beschreibung</title> + +<para +><command +>kded5</command +> fasst mehrere kleine Dienste in einem Prozess zusammen. Dies sind vor allem &DBus;-Dienste von KDED-Modulen, aber verwaltet auch die Sycoca-Datenbank, einen binären Zwischenspeicher von Diensttypen, &MIME;-Typen und Diensten, die von KService benutzt werden., sowie von Aktualisierungs-Skripten für KConfig, falls nötig.</para> + +<para +>Es überwacht die Ordner mit .desktop-Dateien für die Systemdatenbank mit den Einstellungen. Wenn eine neue Datei hinzugefügt oder eine vorhandene entfernt wird, wartet es 5 Sekunden (falls noch mehr Änderungen vorgenommen werden), und startet anschließend <command +>kbuildsycoca5</command +> um die Systemdatenbank mit den Einstellungen zu aktualisieren.</para> + +<para +>Es überprüft neu installierte Aktualisierungsdateien, &ie; *upd-Dateien, die verwendet werden, um bei Änderung des Formats von Einrichtungsdateien die Einrichtungsdateien der Benutzer zu aktualisieren. Es benutzt das Aktualisierungsprogramm KConfig, um diese Aktualisierungen durchzuführen.</para> + +<para +>Diese Aufgaben werden auch bei jedem Start von <command +>kded5</command +> durchgeführt, damit ist sichergestellt, dass die Benutzereinstellungen immer aktuell sind.</para> + +<para +>Normalerweise müssen Sie <command +>kded5</command +> nicht direkt ausführen. In &plasma;-Sitzungen wird es automatisch ausgeführt und immer dann gestartet, wenn eine Anwendung eine &DBus;-Schnittstelle direkt oder durch eines seiner Module benutzt.</para> + +</refsect1> + + + +<refsect1> +<title +>Optionen</title> + +<variablelist> +<varlistentry> +<term +><option +>--check</option +></term> +<listitem> +<para +>Überprüft die Sycoca-Datenbank, aktualisiert sie wenn nötig und beendet sich dann. </para> +</listitem> +</varlistentry> +</variablelist> +</refsect1> + + + +<refsect1> +<title +>Einrichtung</title> + +<para +><command +>kded5</command +> kann mit der Einrichtungsdatei <filename +>kded5rc</filename +> im „ini“-Stil eingestellt werden. Auf &UNIX;-Systemen finden Sie diese Datei in <filename +><varname +>$XDG_CONFIG_HOME</varname +>/kded5rc</filename +>, wenn <varname +>$XDG_CONFIG_HOME</varname +> nicht festgelegt ist, wird als Voreinstellung <filename +>~/.config/kded5rc</filename +> benutzt.</para> + +<para +>Einträge in der Einrichtungsdatei werden auf Anforderung gelesen, daher können Änderungen vorgenommen werden, während <command +>kded5</command +> ausgeführt wird. Alle aktuellen Einrichtungs-Optionen beeinflussen jedoch nur das Startverhalten von <command +>kded5</command +>.</para> + +<para +>Im Abschnitt <option +>[General]</option +> gibt es folgende Einstellungen: <variablelist> +<varlistentry> +<term +><option +>CheckSycoca</option +></term> +<listitem +><para +>Ob die Sycoca-Datenbank beim Start aktualisiert wird, Voreinstellung ist <constant +>true</constant +>.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><option +>CheckUpdates</option +></term> +<listitem +><para +>Ob ausstehende KConfig-Aktualisierungen beim Start durchgeführt werden. Voreinstellung ist <constant +>true</constant +>.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><option +>CheckFileStamps</option +></term> +<listitem +><para +>Ob die Zeitstempel der Dateien beim Ausführen der ursprünglichen Aktualisierung von „sycoca“ überprüft werden, Voreinstellung ist <constant +>true</constant +>, In der Dokumentation zu <command +>kbuildsycoca5</command +> finden Sie weitere Details.</para> +</listitem> +</varlistentry> +<varlistentry> +<term +><option +>DelayedCheck</option +></term> +<listitem +><para +>Ob das Ausführen der ursprünglichen Aktualisierung von „sycoca“ etwa eine Minute nach dem Start verzögert wird. Voreinstellung ist <constant +>false</constant +>.</para> +</listitem> +</varlistentry> +</variablelist> +</para> + +<para +>Jedes Modul hat einen Abschnitt <option +>[Module-<replaceable +>name</replaceable +>]</option +> in der Datei <filename +>kded5rc</filename +>, dabei ist <replaceable +>name</replaceable +> der Name der Desktop-Datei des Moduls ohne die Erweiterung <filename +>.desktop</filename +>. Dieser Abschnitt enthält eine Option <option +>autoload</option +>, die festlegt, ob das Modul automatisch beim Starten von <command +>kded5</command +> geladen wird. Voreinstellung ist <constant +>false</constant +> Beachten Sie, dass diese Einstellung über die &DBus;-Schnittstelle von <command +>kded5</command +> geändert werden kann.</para> +</refsect1> + + + +<refsect1> +<title +>Siehe auch</title> +<para +><citerefentry +><refentrytitle +>kbuildsycoca5</refentrytitle +><manvolnum +>8</manvolnum +></citerefentry +>, <citerefentry +><refentrytitle +>kdeinit5</refentrytitle +><manvolnum +>8</manvolnum +></citerefentry +> </para> +</refsect1> + + + +<refsect1> +<title +>Fehler</title> +<para +>Bitte berichten Sie Fehler im <ulink url="https://bugs.kde.org" +>Fehlerverfolgungssystem von &kde;</ulink +>.</para> +</refsect1> + +</refentry> diff --git a/test/l10n_test.rb b/test/l10n_test.rb index f5e9173..e1bb68c 100644 --- a/test/l10n_test.rb +++ b/test/l10n_test.rb @@ -435,4 +435,30 @@ class TestL10n < Testme assert(File.read("#{@dir}/CMakeLists.txt").include?('ki18n_install(po)')) end + + # kded only has manpages to translate, do not fail on this + def test_manpages_already_exists + # A select few repos already contain the po,qm,docbooks because of new tech that imports them back into + # git from svn. Make sure this doesn't blow up. + + l = create_l10n('kded', 'kded') + l.init_repo_url("file:///#{Dir.pwd}/#{@svn_template_dir}") + + FileUtils.rm_rf(@dir) + FileUtils.cp_r(data('kded'), @dir) + assert_raises ReleaseMe::TranslationUnit::InstallMissingError do + # Should raise if the cmakelists is malformed + l.get(@dir) + end + # Correct the cmakelists and it should pass + File.open("#{@dir}/CMakeLists.txt", 'a') { |f| f.write("kdoctools_install(po)\n") } + l.get(@dir) + + assert_path_exist("#{@dir}/po") + contents = Dir.chdir("#{@dir}/po/de") { Dir.glob("**/**") } + assert_equal(%w[man-kded5.8.docbook].sort, contents.sort) + # Do only expect man-kded5.8.docbook. We want nothing else! + + assert(File.read("#{@dir}/CMakeLists.txt").include?('kdoctools_install(po)')) + end end
